455-0505/01 – Systémy řízení v reálném čase (SRvRC)
Garantující katedra | Katedra měřicí a řídicí techniky | Kredity | 6 |
Garant předmětu | doc. RNDr. Jindřich Černohorský, CSc. | Garant verze předmětu | doc. RNDr. Jindřich Černohorský, CSc. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinný |
Ročník | 3 | Semestr | zimní |
| | Jazyk výuky | čeština |
Rok zavedení | 2003/2004 | Rok zrušení | 2003/2004 |
Určeno pro fakulty | FEI | Určeno pro typy studia | bakalářské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Definovat typické vlastnosti systémů reálného času. Definovat charakteristické vlastnosti řídicích systémů. Charakterizovat vztah systémů reálného času k systémům řízení technologických procesů. Objasnit typické problémy implementace systémů reálného času a identifikovat jejich příčiny. Aplikovat standardní postupy jejich řešení. Charakterizovat principy analýzy a návrhu a implementace software řídicích systémů.Objasnit roli modelovacího jazyka UML2 a využít jeho základních diagramů k zachycení výsledků analýzy. Objasnit principy konstrukce software pomocí paradigmatu objektově orientovaného programování a demonstrovat je na jednoduchých příkladech. Ve cvičeních zvládnout praktické základy této problematiky, tj. konstruovat jednoduché příklady tohoto typu pomocí programovacího jazyka C#. Aplikovat základní poznatky bezpečné konstrukce řídicích systémů. Charakterizovat principy konstrukce distribuovaných systémů a vyhodnotit na jednoduchých modelových příkladech přínosy jejich použití.
Vyučovací metody
Přednášky
Individuální konzultace
Cvičení (v učebně)
Projekt
Anotace
Návrh a implementace systémů reálného času a se zaměřením na specifické práoblémy implementace systémů řízení technologických procesů. Základní témata: reálný čas, souběžnost, paralelnost, synchronizace a komunikace souběžných procesů, prostředky programování na úrovni stroje, problematika bezpečnosti, modularizace, použití mechanismů OOP, řízení procesů v kritických RT systémech, úvod do softwarového inženýrství.
Povinná literatura:
Černohorský : Sylaby k předmětu Řídicí systémy s počítači I.
Doporučená literatura:
Bennet S. : Real-Time Computer Control, Prentice Hall 1988
Schiper A.: Concurrent Programming, North Oxford Academic, 1989
Buttazo, G. : Hard Real Time Computing Systems, Kluwre Academic Publishers, 1997
Forma způsobu ověření studijních výsledků a další požadavky na studenta
Průběžná kontrola studia:
Průběžné zpracování protokolů řešení tří úloh využívajících portů počítače a řešení zadané programové úlohy s využitím paralelních procesů. Konzultace ve cvičeních.
Podmínky udělení zápočtu:
Student odevzdá protokoly řešení tří úloh využívajících portů počítače ( hodnoceno po 5 bodech ) a řešení zadané programové úlohy s využitím paralelních procesů (10 bodů), celkem maximálně 25 bodů
E-learning
Další požadavky na studenta
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
Přednášky:
Řídicí systémy, Řízení v reálném čase (RT systémy), klasifikace RT systémů -"Hard", "Soft", vestavné systémy. Požadavky na technické vybavení RT-systémů. Rozhraní pro komunikaci s průmyslovým prostředím, problematika přenosu dat. Centralizované, hierarchické a distribuované systémy. Základní pojmy počítačového řízení, sekvenční řízení, DDC řízení, monitorování, interaktivní prvky řídících systémů (komunikace stroj-člověk )
Prostředky programování na úrovni stroje. Množinové typy, BITSET. Prostředky programování na úrovni stroje. WORD, BYTE, LONGWORD, ADDRESS, ADR, In, Out, InW, OutW.
Měření a řízení pomocí standardních portů PC. Sériový port paralelní port, game port. ( přednáší dr. ing.B. Horák )
Objektově orientované vlastnosti jazyka Top Speed Modula a jejich použití.Zapouzdření, dědičnost, polymorfismus.
Virtuální a statické metody. Kompatibilita ( Liskovův substituční princip ).
Souběžné procesy a jejich synchronizace.
Výpočetní proces: sekvenční proces, paralelní proces, virtu-ální procesor. Kontext, přepínaní kontextu. Časová závislost a nezávislost procesů, Bernsteinovy podmínky. Synchronizace procesů. Kritické sekce, zakázané oblasti, postupová cesta. Problém výlučného přístupu.Koncept obecného synchronizačního nástroje. Techniky pasivního a aktivního čekání a jejich realizace: maskování přerušení, uzamykání procesu, operace
delay. Semafory, signály a monitory. Synchronizace a komunikace prostřednictvím zasílání zpráv.
Realizace souběžnosti v programovacím jazyku Modula-2/1
Pseudoparalelismus v Module-2.Realizace Pseudoparalelismu v Module-2. Modul Process. Přidělování procesoru a plánování procesů, prioritní strategie, cyklické plánování. Stárnutí procesů.Quasiparalelismus v Module-2.Modul SYSTEM. Realizace korutin a zpracování přerušení. Procedury TRANSFER a IOTRANSFER.
Realizace souběžnosti v programovacím jazyku Modula-2/2
Ouasi-paralelismus a přerušení, přerušovací systém.Petriho sítě. Základní pojmy teorie, typy Petriho sítí , oblasti použití . Modelování typických synchronizačních úloh pomocí Petriho sítí. Úloha o vzájemném vyloučení, Producent-konzument, čtenáři-písaři, souběh. Techniky komunikace prostřednictvím zasílání zpráv, synchronní a asynchronní komunikace.
Bezpečnost řídicích systémů. Ošetření chyb v řídicích systémech. Chyba a Porucha. Poruch HW a SW. Principy koncepce bezpečnosti. Ukazatelé spolehlivosti systémů. Principy zálohování. Majoritní systémy.
Softwarová bezpečnost. Bezpečné programování. Klasické způsoby ošetření SW chyb. Strukturované a nestrukturované způsoby ošetření. Výjimky a ošetření výjimek. Ošetření výjimek v programovacím jazyce Modula. Modul FloatExc. Výjimky v jiných programovacích jazycích (Java ).
Systémy řízení v reálném čase
Operační systémy , Struktura a funkce operačního systému. Typy operačních systémů. Kernel ( jádro OS ), řídící systémy využívající pouze kernel, Operační systémy pro řízení RT aplikací.
Práce s pamětí. Přidělování a rozvrhování paměti. Systém ovládání souborů. Systém řízení periferií. Příklady operačních systémů pro řízení RT aplikací, Význačné charakteristiky OS NT Windows
Kritické RT-systémy. Omezení současných RT- systémů, Požadavky na vlastnosti RT- systémů, Základní pojmy : Časová omezení, Precedenční omezení, Omezení daná zdroji.Definice rozvrhovacích algoritmů, Klasifikace rozvrhovacích algoritmů,Garantované algoritmy,Algoritmy best-effort, Algoritmy založené na nepřesných výpočtech
Plánování úloh v kritických RT systémech
Plánování aperiodických úloh: Jacksonův algoritmus,Hornův
algoritmus,Nepreemptivní plánování, Plánování úloh s precedenčními omezeními, Algoritmus EDF"Poslední časová uzávěra první", EDF s precedenčními omezeními.Plánování periodických úloh: Faktor využití procesoru, Frekvenčně monotónní plánování ( RMS - Rate monotonic scheduling ), Algoritmus "Dřívější časová uzávěra první", Monotónní časová uzávěra
Sběrnice, sítě, distribuované systémy .
Sběrnice, logický a fyzický koncept sběrnice. Synchronní a asynchronní sběrnice. Architektura Master-Slave. Přidělování sběrnice.Architektura ISO OSI. Průmyslové sběrnice - Fieldbus, Profibus, CAN, FIP, sběrnice typu ASI
Softwarové inženýrství/1- Analýza
Životní cyklus systému, spirální model, vodopádový model . Návrhové koncepty - souběžné zpracování, zapouzdření, objektové koncepty, stavové diagramy. Analýza požadavků, definice požadavků-specifikace systému, systémová
specifikace
Softwarové inženýrství/2 - Návrh
Techniky návrhu, metoda postupného zjemňování, strukturování toku dat, konstrukce modulů, modularizace a výběr dat a programových řídících struktur, notace, verifikace
Návrhové techniky pro RT systémy, Metody Ward-Mellora, Mascot, DARTS
Softwarové inženýrství/3 - Implementace, testování a údržba Výběr jazyka implementace, programovací styl, příprava testování, přenositelnost. Testování a instalace - Metody testování: statické, dynamické, metoda black-box a white-box, testovaní zdola nahoru a shora dolů. Plánování testů a testování: příprava objektů pro lokalizaci chyb, výběr testovaných dat a podmínek, organizace podmínek testování, provedení testu a lokalizace chyb. Typické chyby.
Laboratoře:
Seriový port: přímé digitální vstupy, přímé digitální výstupy, jednoduché A/D převodníky, měření frekvence, seriový přenos dat
Paralelní port: paralelní výstup dat, rozšíření portu na 32 bitů, sběrnice PC
Game port : měření napětí, hlídání mezních hodnot spínací výstup, čítače
Projekty:
Projekty - student odevzdává z každé skupiny úloh jednu zpracovanou úlohu
Seriové porty: přímé digitální vstupy, přímé digitální výstupy, jednoduché A/D převodníky, měření frekvence, seriový přenos dat
Paralelní porty: paralelní výstup dat, rozšíření portu na 32 bitů, sběrnice PC
Game porty : měření napětí, hlídání mezních hodnot spínací výstup, čítače
Úloha využívající rozkladu na souběžné procesy pracující v pseudopúaralelním nebo quasiparalelním režimu
Počítačové laboratoře:
Strukturování úloh na moduly. Způsoby práce s dynamickými proměnnými pomocí procedur NEW a DISPOSE a explicitně pomocí ALLOCATE a DEALLOCATE. Srovnání obou způsobů.
Řešení úloh na úrovni low-level.
Instruktáž k řešení úloh na použití portů
OOP, Použití dědičnosti.
OOP, Použití polymorfismu.
Implementace úloh založená na pseudoparalelismu. Modul Process.
Implementace úloh založená na quasiparalelismu. Modul SYSTEM.
Implementace obsluhy přerušení - IOTRANSFER. Modul SYSTEM.
Způsob ošetření FP výjimek modulem FloatExc a ošetření výjimek v knihovně MATHLIB.
Řešení semestrálního projektu
Řešení semestrálního projektu
CASE SELECT YOURDON - seznámení s s návrhovým prostředím Tvorba DFD schémat
Schémata stavových přechodů
Dokumentace a údržba software. Uživatelská dokumentace, systémová dokumentace, projektová dokumentace. Proces údržby. Řízení projektu: Plánování, organizace, Technické řízení, ekonomické řízení. Odhad ceny projektu. Organizace vývojového
týmu.
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky
Předmět neobsahuje žádné hodnocení.