455-0044/01 – Řídící systémy s počítači I. (RSP1)
Garantující katedra | Katedra měřicí a řídicí techniky | Kredity | 8 |
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í | 1992/1993 | Rok zrušení | 2008/2009 |
Určeno pro fakulty | FEI | Určeno pro typy studia | magisterské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Cílem předmětu je seznámit studenty s obecnými teoretickými paradigmaty, modely a vzory aplikovanými při implementaci programového vybavení řídicích systémů, zejména s ohledem na jejich charakter systémů reálného času a prakticky procvičit pro řídicí systémy typické a často se opakující základní návrhové a implementační postupy, zejména strukturování a implementace řešení formou souběžných procesů a základní principy použití objektově orientovaného programování.
Osvojení použití procesů (vláken) při programování řídicích aplikací, rozšíření vědomostí z programování o základy OOP, základní seznámení s problematikou programování řídicích aplikací pokud jde o úroveň stroje, osvojení zásad bezpečného programování a programování RT-kritických aplikací.
Osvojení použití procesů (vláken) při programování řídicích aplikací, rozšíření vědomostí z programování o základy OOP, základní seznámení s problematikou programování řídicích aplikací pokud jde o úroveň stroje, osvojení zásad bezpečného programování a programování RT-kritických aplikací.
Vyučovací metody
Anotace
Cílem předmětu je seznámit studenty s obecnými teoretickými paradigmaty, modely a vzory aplikovanými při implementaci programového vybavení řídicích systémů, zejména s ohledem na jejich charakter systémů reálného času a prakticky procvičit pro řídicí systémy typické a často se opakující základní návrhové a implementační postupy, zejména strukturování a implementace řešení formou souběžných procesů a základní principy použití objektově orientovaného programování.
Osvojení použití procesů (vláken) při programování řídicích aplikací, rozšíření vědomostí z programování o základy OOP, základní seznámení s problematikou programování řídicích aplikací pokud jde o úroveň stroje, osvojení zásad bezpečného programování a programování RT-kritických aplikací.
Předmět je zaměřen na problematiku implementace programového vybavení pro řídicí systémy. Jako programovací jazyk je používána implementace TopSpeed Modula-2, jehož základní znalost se předpokládá v rozsahu předmětu Programování v jazyku Modula_2, vyučovaného v I. etapě studia, případně dobrá znalost jazyka Pascal (zejména záznamů, včetně variantních, ukazatelů -dynamických proměnných, procedurálních typů a znalosti techniky zapouzdřování pomocí modulů typu Unit).
V rámci předmětu se student seznámí s obecnými principy, technikami a komunikačními prvky používanými při implementaci řídicích systémů a dále si rozšíří znalosti jazyka Modula-2 potřebné pro programování úloh řízení.
Povinná literatura:
Bennet S. : Real-Time Computer Control, Prentice Hall 1988
Schiper A.: Concurrent Programming, North Oxford Academic, 1989
Young S. : Programovací jazyky pro RT-aplikace, SNTL Praha,1984
Burns, A.-Wellings, A.: Real-Time Systems and their Programming Lanquages, Adison Wesley, 1994
Buttazo, G. : Hard Real Time Computing Systems, Kluwre Academic Publishers, 1997
Černohorský,J.: Sylaby k předmětu Řídicí systémy s počítači I.
(Vzhledem k relativní nedostupnosti uvedené literatury jsou k dispozici texty sylabů na katedrálním serveru na F414)
Doporučená literatura:
Černohorský : Sylaby k předmětu Řídicí systémy s počítači I.
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:
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 paralení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:
Systémy řízení v reálném čase (RT), klasifikace RT systémů a programů. 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. Přerušení a přerušovací systém-1. Zásobník-1.
RT jazyky, základní vlastnosti a požadavky.
-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.
Synchronizační prostředky a operace. 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.
Zasílání zpráv.
- 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ů.
Realizace Quasiparalelismu v Module-2. Modul SYSTEM. Realizace korutin a zpracování přerušení. Procedury TRANSFER a IOTRANSFER. Ouasiparalelismus a přerušení, přerušovací systém_2.
Petriho sítě. Typické synchronizační úlohy.
Specifikace 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.
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áší ing.B. Horák)
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 ( ADA, Java ).
Příklady ošetření chyb.
Objektově orientované vlastnosti jazyka Top Speed Modula a využití OOP pro implemetaci řídicích algoritmů. Zapouzdření, dědičnost, polymorfismus.
Virtuální a statické metody. Operátor IS a strážní operátor "::" Kompatibilita.Základní principy návrhu systémů využívající OOP. Konstrukce založené na dědičnosti a kompozici.
Historie řízení počítačem, prvky počítačového řídícího systému, charakteristika systémů řízení v reálném čase, klasifikace RT systémů, klasifikace řídících programů, problematika RT systémů obecně. 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 ), centralizované, hierarchické a distribuované systémy.
- Požadavky na technické vybavení RT-systémů. CPU, paměť, periferie, sběrnice. Rozhraní pro komunikaci s průmyslovým prostředím, problematika přenosu dat. Přerušení a přerušovací systém.
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.
Architekrura ISO OSI. Průmyslové sběrnice - Fieldbus, Profibus, CAN, FIP, sběrnice typu ASI.
Operační systémy 1. Struktura a funkce operačního systému. Typy operačních systémů.
Operační systémy 2. Víceúlohové operační systémy. Task, deskriptor tasku,organizace a stavy tasků v prostředí OS. Typické plánovací strategie,preemptivní plánování.
Operační systémy 3. Víceúlohové operační systémy. Task, deskriptor tasku, organizace a stavy tasků v prostředí OS.
Operační systémy 5. Práce s pamětí. Přidělování a rozvrhování paměti.
Operační systémy 7. Systém ovládání souborů.
Operační systémy 8. Systém řízení periferií.
Paralelní architektury, transputery.
- OCCAM.
Laboratoře:
C6. Řešení 1.úlohy -se sériovým portem.
Sériový port: přímé digitální vstupy, přímé digitální výstupy, jednoduché A/D převodníky, měření frekvence, sériový přenos dat
C7. Řešení 2. úlohy- s paralelním portem
Paralelní port: paralelní výstup dat, rozšíření portu na 32 bitů, sběrnice PC
C8. Řešení 3. úlohy - s game portem
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, sériový 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:
C1. Práce s prostředím TopSpeed. VID.
C2. 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ů.
C3. Implementace úloh zložená na pseudopralelismu.Modul Process.
C4. Implementace úloh zložená na quasipralelismu. Modul SYSTEM.
C5. Implementace obsluhy přerušení - IOTRANSFER. Modul SYSTEM.
C9. Způsob ošetření FP výjimek modulem FloatExc a ošetření výjimek v knihovně MATHLIB.
C10. OOP, Použití dědičnosti.
C11. OOP, Použití dědičnosti.
C12. Zpracování semestrální úlohy.
C13. Zpracování semestrální úlohy.
C14. Zpracování semestrální úlohy.
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í.