Přednášky:
• Řídicí systémy, Řízení v reálném čase (RT systémy), klasifikace RT systémů -"Hard", "Soft", vestavné systémy.
• Rozhraní pro komunikaci s průmyslovým prostředím, problematika přenosu dat. Centralizované, hierarchické a distribuované systémy. Souběžné procesy a jejich synchronizace. Kontext, přepínaní kontextu. Časová závislost a nezávislost procesů. Přerušení, kontext
• Synchronizace procesů. Kritické sekce, zakázané oblasti, 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. Přidělování procesoru a plánování procesů. Prioritní strategie, cyklické plánování. Typické synchronizační úlohy Úloha 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.
• OOP a jeho principy, data a metody, rozhraní, zapouzdření, dědičnost a polymorfismus.
• Řízení viditelnosti identifikátorů, soudržnost a spřaženost, abstraktní třídy, Metody implementace tříd, výjimky
• Specifické metody implementace a komunikace objektů
• Bezpečnost řídicích systémů. Ošetření chyb v řídicích systémech. Chyba a Porucha. Poruch HW a SW. Ošetření chyb pomocí výjimek, Principy koncepce bezpečnosti. Ukazatelé spolehlivosti systémů.
• Úvod do softwarového inženýrství - Analýza - Životní cyklus systému. 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
• Úvod do softwarového inženýrství - Návrh - Techniky návrhu, metoda postupného zjemňování, strukturování toku dat, konstrukce modulů, modularizace, a návrh dat a programových řídících struktur, notace, stavový diagram jako prostředek modelování řídicího algoritmu
• Úvod do softwarového inženýrství - Implementace, testování a údržba. 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.
• Základy jazyka UML 2.0, Diagramy pro modelování chování: Diagram případů užití, Diagramy aktivit, Diagramy stavových přechodů, Diagramy tříd
• 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.
• Úvod do databází: Relační tabulky, návrh databáze, klíče, relace. Základy jazyka SQL, tvorba aplikace s databází, využití komponent DataSet, TableAdapter, BindingSouce
Počítačové laboratoře:
• Úvod do prostředí vývojového nástroje Microsoft Visual Studio C#, základní komponenty, výjimky
• Sofistikované komponenty, využití některých komponent pro řízení
• Práce s grafikou, dialogy Windows
• Objektové programování, třída, objekt, konstruktor, destruktor, víceparametrové předávání proměnných v rozhraní metod
• Dědičnost, polymorfismus, interface, abstraktní třída, výjimky, události
• Vlákna ve Windows - úvod do použití vláken, spouštění vláken, paměť vláken, jméno, Thread.Sleep,
• Vlákna ve Windows - priorita vlákna, stav vlákna
• Vlákna ve Windows - synchronizace vláken, monitor, Lock
• Vlákna ve Windows - implementace vláken do aplikací, typické případy v řídicích systémech
• Objektové přístupy při návrhu architektury aplikací, vývojové diagramy, petriho sítě, UML 2.0
• Jazyk UML v řídicích systémech
• Práce se sériovou linkou, USB, Bluetooth
• Aplikace s databází
• Řídicí systémy, Řízení v reálném čase (RT systémy), klasifikace RT systémů -"Hard", "Soft", vestavné systémy.
• Rozhraní pro komunikaci s průmyslovým prostředím, problematika přenosu dat. Centralizované, hierarchické a distribuované systémy. Souběžné procesy a jejich synchronizace. Kontext, přepínaní kontextu. Časová závislost a nezávislost procesů. Přerušení, kontext
• Synchronizace procesů. Kritické sekce, zakázané oblasti, 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. Přidělování procesoru a plánování procesů. Prioritní strategie, cyklické plánování. Typické synchronizační úlohy Úloha 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.
• OOP a jeho principy, data a metody, rozhraní, zapouzdření, dědičnost a polymorfismus.
• Řízení viditelnosti identifikátorů, soudržnost a spřaženost, abstraktní třídy, Metody implementace tříd, výjimky
• Specifické metody implementace a komunikace objektů
• Bezpečnost řídicích systémů. Ošetření chyb v řídicích systémech. Chyba a Porucha. Poruch HW a SW. Ošetření chyb pomocí výjimek, Principy koncepce bezpečnosti. Ukazatelé spolehlivosti systémů.
• Úvod do softwarového inženýrství - Analýza - Životní cyklus systému. 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
• Úvod do softwarového inženýrství - Návrh - Techniky návrhu, metoda postupného zjemňování, strukturování toku dat, konstrukce modulů, modularizace, a návrh dat a programových řídících struktur, notace, stavový diagram jako prostředek modelování řídicího algoritmu
• Úvod do softwarového inženýrství - Implementace, testování a údržba. 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.
• Základy jazyka UML 2.0, Diagramy pro modelování chování: Diagram případů užití, Diagramy aktivit, Diagramy stavových přechodů, Diagramy tříd
• 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.
• Úvod do databází: Relační tabulky, návrh databáze, klíče, relace. Základy jazyka SQL, tvorba aplikace s databází, využití komponent DataSet, TableAdapter, BindingSouce
Počítačové laboratoře:
• Úvod do prostředí vývojového nástroje Microsoft Visual Studio C#, základní komponenty, výjimky
• Sofistikované komponenty, využití některých komponent pro řízení
• Práce s grafikou, dialogy Windows
• Objektové programování, třída, objekt, konstruktor, destruktor, víceparametrové předávání proměnných v rozhraní metod
• Dědičnost, polymorfismus, interface, abstraktní třída, výjimky, události
• Vlákna ve Windows - úvod do použití vláken, spouštění vláken, paměť vláken, jméno, Thread.Sleep,
• Vlákna ve Windows - priorita vlákna, stav vlákna
• Vlákna ve Windows - synchronizace vláken, monitor, Lock
• Vlákna ve Windows - implementace vláken do aplikací, typické případy v řídicích systémech
• Objektové přístupy při návrhu architektury aplikací, vývojové diagramy, petriho sítě, UML 2.0
• Jazyk UML v řídicích systémech
• Práce se sériovou linkou, USB, Bluetooth
• Aplikace s databází