Systemy Czasu Rzeczywistego (SCR) Wykład 7: Systemy czasu rzeczywistego w komputerowych systemach sterowania SKiTI2017 WYDZIAŁ ELEKTROTECHNIKI I AUTOMATYKI KATEDRA INŻYNIERII SYSTEMÓW STEROWANIA Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok II, semestr IV dr inż. Tomasz Rutkowski 2017
Systemy Czasu Rzeczywistego w komputerowych systemach sterowania Przemysłowe sieci informatyczne Urządzenia sterowania cyfrowego Przemysłowe bazy danych Systemy operacyjne czasu rzeczywistego 2
Systemy Czasu Rzeczywistego w komputerowych systemach sterowania Przemysłowe sieci informatyczne 3
Systemy Czasu Rzeczywistego - przemysłowe sieci informatyczne cechy charakterystyczne Ograniczony, deterministyczny czas przekazywania komunikatów Wysoka efektywność przenoszenia dużej liczby krótkich komunikatów Łatwość dołączania urządzeń Wysoka niezawodność Zdolność tolerowania błędów i awarii Zabezpieczenie przed nieupoważnionym dostępem 4
Systemy Czasu Rzeczywistego - przemysłowe sieci informatyczne Profibus DP Profibus NET CAN (wykład łączony PSI i SCR) (wykład PSI) (wykład PSI) 5
Systemy Czasu Rzeczywistego w komputerowych systemach sterowania Urządzenia sterowania cyfrowego 6
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Podstawowe rodzaje (typy) urządzeń sterowania cyfrowego wykorzystywanych w przemysłowych systemach sterowania: sterowniki jednofunkcyjne i wielofunkcyjne specjalizowane mikrosterowniki rozwiązania oparte o procesory sygnałowe (DSP) rozwiązania oparte o układy o wysokiej skali integracji (FPGA) programowalne sterowniki logiczne (PLC) programowalne sterowniki automatyki (PAC) komputery przemysłowe (zgodne z IBM PC) 7
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Komputer jednopłytkowy http://www.evoc.com 8
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Komputer jednopłytkowy http://www.evoc.com 9
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Komputer jednopłytkowy sbrio-9627 Mikroprocesor: 667 MHz dual-core ARM Cortex-A9 Układ FPGA: Artix-7 FPGA System operacyjny: NI Linux Real-Time Pamięć: 512 MB DRAM Układy we/wy: 16 we analogowych, 4 wy analogowe, 50 we/wy dyskretnych Interfejsy: USB, CAN, RS232, RS485, Gigabit Ethernet Temperatura pracy: -40 85 C Zasilanie: 9 30 VDC http://www.ni.com 10
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Komputer przemysłowy Marka ASEM Model: WS600TE 2x Ethernet (w opcji 1 GB), 6x USB, 2x RS232, 2x PS/2, VGA, 2x SATA/150 oraz jeden ATA/100, 1x Compact Flash. http://www.logismarket.pl 11
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Regulator mikroprocesorowy RM-20 http://www.zpda.com.pl 12
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Regulator mikroprocesorowy RM-20 13
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Sterownik wielofunkcyjny PSW-166 http://www.zpda.com.pl 14
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Sterownik wielofunkcyjny PSW-166 http://www.zpda.com.pl 15
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Sterownik wielofunkcyjny PSW-166 16
System Czasu Rzeczywistego - urządzenia sterowania cyfrowego Sterowniki PLC i PAC wielu producentów Na przykład: Marka: GE Fanuc Modele: RX3i 90-30 90-70 VersaMax http://www.gefanuc.com/ 17
Czym jest PLC PLC (ang. Programmable Logic Controler) jest komputerem przemysłowym, który pod kontrolą systemu operacyjnego czasu rzeczywistego: zbiera pomiary za pomocą modułów wejściowych z cyfrowych i analogowych czujników oraz urządzeń pomiarowych na bazie zebranych danych o sterowanym procesie, wykonuje program użytkownika zawierający zakodowany algorytm sterowania, przetwarzania danych generuje sygnały sterujące odpowiednie do wyników obliczeń algorytmów sterowania i przekazuje je poprzez moduły wyjściowe do elementów i urządzeń wykonawczych dodatkowo PLC ma możliwość: transmisji danych za pomocą modułów i łączy komunikacyjnych realizacji funkcji diagnostyki programowej i sprzętowej 18
Głowni producenci PLC GE Fanuc Siemens, Allen-Bradley, Omron, Mitsubishi, Schneider SAIA
Cechy sterowników programowalnych Wysoka niezawodność Praca w warunkach przemysłowych Praca w czasie rzeczywistym Łatwość programowania Elastyczność Uniwersalność Skalowalność Możliwości komunikacyjne
Norma IEC 61131 składała się z następujących części: Sterowniki PLC a Normy -Norma IEC 61131 Część 1: Postanowienia ogólne (ang. General Information) Część 2: Wymagania i badania dotyczące sprzętu (ang. Equipment Requirements and Tests) Część 3: Języki programowania (ang. Programing Languages) Część 4: Wytyczne dla użytkownika (ang. User Guidelines) - statustr Część 5: Komunikacja (ang. Communications) Część 6: Bezpieczeństwo funkcjonalne (ang. Functional Safety) Część 7: Programowanie rozmyte (ang. Fuzzy Control Programming) Część 8: Wytyczne do implementacji języków programowania (ang. Guidelines for the Application and Implementation of Programming Languages) - status TR Część 9: Interfejs komunikacji cyfrowej punkt-punkt do małych czujników i elementów wykonawczych (SDCI) (ang. Single-drop digital communication interface for small sensors and actuators (SDCI)) 21
Czym jest PLC W normie IEC 61131 do oznaczenia sterowników programowalnych wykorzystuje się skrót: PC Programmable Controller PLC Logic w nazwie ma jedynie znaczenie historyczne, dodatkowo odróżnienie od: PC Personal Computer 22
Czym jest PLC W normie IEC 61131-1 sterownik programowalny zdefiniowano jako: cyfrowy system elektroniczny do stosowania w środowisku przemysłowym, który posługuje się pamięcią programowalną do przechowywania zorientowanych na użytkownika instrukcji w celu sterowania przez cyfrowe lub analogowe wejścia i wyjścia szeroką gamą maszyn i procesów 23
Podstawowy podział sterowników PLC Kompaktowe Modułowe
Typowe moduły sterowników PLC Komunikacyjne: RS232, RS485, CAN, Ethernet, Wejść dyskretnych: 12 VDC, 24 VDC, 110 250 VAC, szybkie liczniki Wyjść dyskretnych: przekaźnikowe, tranzystorowe, PWM (ang. Pulse Width Modulation) Wejść analogowych: napięciowe (0 10 V, -10 10 V), prądowe (0 20 ma, 4 20 ma) Wyjść analogowych: napięciowe (0 10 V, -10 10 V), prądowe (0 20 ma, 4 20 ma) Sterowniki serwonapędów Specjalizowane: np.: zawierające układy do pomiaru temperatury z wykorzystaniem termopar i czujników Pt100 i inne Symulatory wejść.
Najważniejsze elementy IEC 61131-3 Część 3 normy IEC 61131 dotyczy: sposobu pracy sterownika typowo jako cykl pracy typów danych języków programowania Określono w niej dwie podstawowe grupy języków programowania: języki tekstowe i języki graficzne Przedstawia ujednoliconą koncepcję programowania sterowników PLC tak aby użytkownik korzystając z wprowadzonych w normie reguł, był w stanie programować bez większych trudności różne systemy PLC Z punktu widzenia użytkownika, Część 3 normy IEC 61131 stanowi jej najważniejszą część 26
Najważniejsze elementy IEC 61131-3 - cykl pracy sterownika Start, inicjalizacja Obsługa wejść: zapisanie obrazu wejść sterownika do odpowiedniego obszaru pamięci wewnętrznej sterownika związanej z wejściami %I, %AI Wykonanie programu sterującego użytkownika: Obsługa wyjść: program użytkownika operuje na wartościach zapisanych w pamięci sterownika (czyta obszary pamięci wejściowej %I, %AI, czyta/modyfikuje obszary pamięci wyjściowej %Q, %AQ, czyta/modyfikuje obszary pamięci ogólnego przeznaczenia %R, %M), wyniki swojej pracy może zapisywać np. w obszarze pamięci wyjściowej %AQ przypisanie stanu zmiennych z obszaru pamięci wyjściowej %Q, %AQ fizycznym wyjściom sterownika Diagnostyka, komunikacja (opcjonalnie, nie w każdym cyklu) Stop 27
Najważniejsze elementy IEC 61131-3 - cykl pracy sterownika I obszar wejść: %I obszar pamięci powiązany z wejściami dyskretnymi %AI obszar pamięci wejściowej powiązany z wejściami analogowymi (typowo rejestry 16 bitowe) Q, - obszar wyjść, %Q obszar pamięci powiązany z wyjściami dyskretnymi %AQ obszar pamięci wejściowej powiązany z wyjściami analogowymi (typowo rejestry 16 bitowe) %M obszar pamięci bitowej ogólnego przeznaczenia %R obszar pamięci rejestrowej ogólnego przeznaczenia (wykorzystywany do zapisywania złożonych typów danych) 28
Najważniejsze elementy IEC 61131-3 - cykl pracy sterownika Praca PLC w trybie stałego czasu cyklu umożliwia zastosowanie całej gamy dyskretnych algorytmów sterowania (opisanych równiami różnicowymi czy transformatą z) gwarancja zakończenia przetwarzania danych w odpowiednim czasie mechanizm okresowego (z zadanym okresem) przetwarzania danych
Najważniejsze elementy IEC 61131-3 - cykl pracy sterownika - implementacja opóźnień Na potrzeby implementacji algorytmów dyskretnych konieczna jest znajomość przeszłych wartości sygnałów np.: e(k-1), e(k-2) u(k-1), u(k-2) y(k-1) Przy cyklicznym działaniu sterownika, aktualna wartość wybranej wielkości będzie w kolejnym cyklu wartością opóźnioną o jeden okres
Najważniejsze elementy IEC 61131-3 - cykl pracy sterownika - implementacja opóźnień Początek cyklu e := y z ; // wyliczona aktualna wartość uchybu e_opoznione := e; // w następnym cyklu pod zmienną e_opoznione // znajdzie się wartość aktualnego uchybu Koniec cyklu
Najważniejsze elementy IEC 61131-3 - Podstawowe typy danych
Najważniejsze elementy IEC 61131-3 - Podstawowe typy danych
Najważniejsze elementy IEC 61131-3 - języki programowania W część 3 normy IEC 61131 określono dwie podstawowe grupy języków programowania: języki tekstowe: lista rozkazów (IL), tekst strukturalny (ST) języki graficzne: funkcjonalny schemat blokowy (FBD), schemat drabinkowy (LD) Część 3 normy IEC 61131 przedstawia ujednoliconą koncepcję programowania sterowników PLC tak aby użytkownik korzystając z wprowadzonych w normie reguł, był w stanie programować bez większych trudności różne systemy PLC 34
Najważniejsze elementy IEC 61131-3 - języki programowania W grupie języków tekstowych zdefiniowane zostały następujące języki: Język IL (ang. Instruction List Lista rozkazów), będący odpowiednikiem języka typu asembler, którego zbiór instrukcji obejmuje operacje logiczne, arytmetyczne, operacje relacji, jak również funkcje przerzutników, czasomierzy, liczników itp. Język ST (ang. Structured Text Tekst strukturalny), który jest odpowiednikiem języka algorytmicznego wysokiego poziomu, zawierającego struktury programowe i polecenia podobne do występujących w językach typu PASCAL lub C. 35
Najważniejsze elementy IEC 61131-3 - języki programowania Lista rozkazów (IL) Tekst strukturalny (ST) LD ANDN ST A B C C:= A AND NOT B; 36
Najważniejsze elementy IEC 61131-3 - języki programowania W grupie języków graficznych zdefiniowane zostały następujące języki: Język LD (ang. Ladder Diagram Schemat drabinkowy), podobny do stykowych obwodów przekaźnikowych, w którym oprócz symboli styków, cewek i połączeń między nimi, dopuszcza się także użycie funkcji (np. arytmetycznych, logicznych, porównań, relacji) oraz bloków funkcjonalnych (np. przerzutniki, czasomierze, liczniki). Język FBD (ang. Function Block Diagram Funkcjonalny schemat blokowy), będący odpowiednikiem schematu przepływu sygnału dla obwodów logicznych przedstawionych w formie połączonych bramek logicznych oraz funkcji i bloków funkcjonalnych, takich jak w języku LD. 37
Najważniejsze elementy IEC 61131-3 - języki programowania Funkcjonalny schemat Schemat drabinkowy blokowy (FBD) (LD) A B AND C A B C - -- / ---------------( )- 38
Przykładowy system sterowania z dyskretnym obiektem sterowania (sterownik wyposażony w układ wejść i wyjść dyskretnych, program sterownika realizuje algorytm regulatora np. w języku drabinkowym - LD)
Przetwarzanie sygnałów analogowych w PLC z użyciem modułów we/wy Źródło: [4]
Przetwarzanie sygnałów analogowych w PLC z użyciem modułów we/wy Źródło: [4]
Przykładowy system sterowania z ciągłym obiektem sterowania (sterownik wyposażony w układ wejść i wyjść analogowych, program sterownika realizuje algorytm regulatora cyfrowego np. w języku tekst strukturalny - ST)
Schemat systemu sterowania z ciągłym obiektem i cyfrowym regulatorem Urządzenia wykonawcze Obiekt sterowania (w ogólności ciągły) Urządzenia pomiarowe D / A Moduł wyjść analogowych PLC A / D Moduł wejść analogowych Wartość zadana
Przetwarzanie sygnałów analogowych w PLC z użyciem modułów we/wy We analogowe PLC CPU Wy analogowe 001111100100000111001011 Sygnał analogowy np. -10V 10V 0 10V 0 20mA 4 20mA Sygnał cyfrowy %AI %R %AQ INT INT INT lub DINT lub REAL Sygnał analogowy np. -10V 10V 0 10V 0 20mA 4 20mA
Przetwarzanie sygnałów analogowych w PLC z użyciem modułów we/wy We analogowe PLC CPU Wy analogowe 001111100100000111001011 Sygnał analogowy np. V, ma Sygnał cyfrowy %AI %R %AQ Sygnał analogowy np. V, ma j.i. działki (INT) j.i. działki (INT) lub po konwersji j. procesowe np. temperatura (REAL) j.i. działki (INT)
Przetwarzanie sygnałów analogowych w PLC z użyciem modułów we/wy
Systemy Czasu Rzeczywistego w komputerowych systemach sterowania Przemysłowe bazy danych 47
System Czasu Rzeczywistego - przemysłowe bazy danych http://www.vix.com.pl
interfejs operatora na produkcji System Czasu Rzeczywistego - przemysłowe bazy danych serwer przemysłowej bazy danych kolektor danych procesowych kopia bazy danych raportowanie produkcji Sterowniki PLC na linii produkcyjnej stacja operatorska Źródło : Control Engineering - Program4 Engineering stacja obliczeniowa 49
System Czasu Rzeczywistego - przemysłowe bazy danych Kolektor danych procesowych to punkt zbiorczy dla wszystkich danych produkcyjnych. Zadania kolektora: - zbieranie danych pochodzących z systemu produkcyjnego - przechowywanie danych w czasie rzeczywistym, w wersji lite produkcyjnej bazy danych - zapewnianie transakcyjnego zarządzania zapisami dla procesowego serwera danych produkcyjna baza danych w kolektorze przechowuje wartości danych w takiej samej strukturze tabeli oraz formatach danych jak serwer danych procesowych 50
System Czasu Rzeczywistego - przemysłowe bazy danych Wonderware Historian (Industrial SQL Server InSQL) GE Historian (dawniej PROFICY Historian) 51
System Czasu Rzeczywistego - przemysłowe bazy danych Wonderware Historian Jest to oprogramowanie wykorzystujące Microsoft SQL Server do ciągłego pobierania dużej ilości szybkozmiennych danych z procesu technologicznego Dane procesowe mogą być pobierane w dwóch trybach: cyklicznym z minimalnym gwarantowanym czasem 1 s lub zdarzeniowym - w tym trybie gwarantowana rozdzielczość czasowa wynosi 3 ms Skalowalność systemu od 32 do 2 000 000 zmiennych Komunikacja w standardzie OPC, SuiteLink, DDE Udostępnianie danych przez ODBC oraz OLE-DB i zapytań SQL Wbudowane mechanizmy kompresji danych Testy IndustrialSQL Server 8.0 na komputerze PC (Pentium IV 1.4 GHz) wykazały poprawną pracę przy logowaniu 30000 zmian wartości różnych zmiennych na sekundę. Chwilowe zwiększenie prędkości napływu danych może osiągnąć na takim komputerze nawet 60000 zmian na sekundę. 52
System Czasu Rzeczywistego - przemysłowe bazy danych - IndustrialSQL Źródło : IndustrialSQL Server PRODUCT DATA SHEET 5 3
System Czasu Rzeczywistego - przemysłowe bazy danych - GE Historian GE Historian to rozproszony system archiwizacji i analizy danych procesowych, alarmów i zdarzeń w skali korporacyjnej Wykorzystuje otwarte standardy przemysłowe: OPC, OPC A&E, VBA, SQL, OLE DB, XML, rozproszona architektura Klient/Serwer Zawiera relacyjną bazę danych zorientowaną na gromadzenie alarmów, zdarzeń i podpisów elektronicznych Umożliwia zapis 20 000 000 zmiennych na serwer Prędkości zapisu/odczytu: 1 000 000 zapisów na sekundę 250 000 odczytów na sekundę Współpracuje z ponad 2000 kolektorów na serwer Maksymalny rozmiar archiwum: 256 GB 54
System Czasu Rzeczywistego - przemysłowe bazy danych - GE Historian http://www.vix.com.pl 55
Systemy Czasu Rzeczywistego w komputerowych systemach sterowania Systemy operacyjne czasu rzeczywistego 56
Czym jest System Operacyjny System operacyjny jest zbiorem modułów oprogramowania, który nadzoruje wykonywanie programów i zarządza dostępnymi zasobami System operacyjny jest pośrednikiem między użytkownikiem komputera a sprzętem komputerowym System operacyjny jest programem sterującym różnymi urządzeniami wejścia-wyjścia oraz programami użytkownika 57
Czym jest System Operacyjny System operacyjny, nazywany również jądrem, jest programem, który działa na komputerze nieustannie, pozostałe działające programy są programami (zadaniami) użytkownika System operacyjny nie wykonuje żadnej użytecznej pracy, tworzy natomiast środowisko w którym inne programy mogą ją wykonywać System operacyjny: działa jako dystrybutor zasobów przydziela zasoby poszczególnym programom i użytkownikom, pełni rolę arbitra, gdy dochodzi do konfliktowych zamówień na zasoby decyduje o przydziale zasobów mając na względzie wydajne i harmonijne działanie całego komputera 58
Systemy Operacyjne Czasu Rzeczywistego Przykładowe systemy operacyjne czasu rzeczywistego: VxWorks QNX RTLinux Windows CE OS-9 µc/os-ii ecos EtherNut - Nut/OS.. 59
Krótka charakterystyka wybranych Systemów Operacyjnych Czasu Rzeczywistego 60
Popularne systemy SOCR QNX Neutrino QNX, to zdaniem wielu (np. AMD, IBM, Cisco Systems) najlepszy i jednocześnie najbardziej zaawansowany oraz przyszłościowy, rygorystyczny (realizujący solidne wymagania czasowe) system operacyjny czasu rzeczywistego. Jest pierwszym w historii systemem wielozadaniowym i wielodostępnym przeznaczonym dla mikrokomputerów IBM PC. Wykorzystuje architekturę mikrojądra, które od wersji 6.0 systemu zajmuje 8kB (jądro systemu UNIX to co najmniej 700kB). QNX ma strukturę modułową oraz architekturę opartą o przesyłanie komunikatów (model klient serwer). Wysoko posunięta modularność i skalowalność systemu. Komunikacja pomiędzy procesami znajdującymi się na odległych węzłach sieci jest tak samo prosta, jak w obrębie jednego komputera. 61
Popularne systemy RTOS QNX Neutrino (cd.) QNX daje możliwość zdeterminowania czasu reakcji na zdarzenia występujące w systemie. QNX dzięki rozbudowanym możliwościom definiowania priorytetów, jest stosowany jako system służący do sterowania automatyką przemysłową, gdzie pewne zdarzenia są krytyczne (np. otwarcie zaworu bezpieczeństwa w zbiorniku kiedy gwałtownie wzrasta ciśnienie) i muszą być zawsze obsłużone na czas. Na bazie QNX opracowywane są również systemy SCADA. QNX jest również wykorzystywany jako platforma dla baz danych. 62
Popularne systemy RTOS VxWorks- Jeden z najbardziej profesjonalnych systemów czasu rzeczywistego firmy Wind River Systems. Należy do grupy nowoczesnych systemów operacyjnych opartych na koncepcji wielozadaniowości, komunikacji między zadaniami, mikrojądrze oraz procedurach obsługi przerwań. Posiada zaimplementowane funkcje komunikacji sieciowej. Możliwość rozwoju systemu docelowego zgodnie ze standardem ANSI C i C++ oraz POSIX. Bogaty zestaw dodatkowych pakietów oprogramowania: wykorzystanie wieloprocesorowości, biblioteki graficzne, narzędzia do testowania i uruchamiania aplikacji, wirtualne maszyny Javy, symulator środowiska docelowego. 63
Popularne systemy SOCR RTLinux Występuje w dwóch wersjach, komercyjnej RT Linux PRO i w ogólnodostępnej GPL RTLinux (darmowy i udostępniany wraz z całym kodem źródłowym). Jego cechą charakterystyczną jest to, że współistnieją w nim: jądro czasu rzeczywistego RTCore i jądro Linuksa. RTLinux szybko potrafi obsługiwać przerwania w warunkach dużego obciążenia obliczeniami, przy jednoczesnych znikomych operacjach dyskowych. Architektura RTLinux wymusza jednak pewien styl programowania (podział na dwie części: obliczeniową i operacje dyskowe, sieciowe). Typowa aplikacja składa się z zadań czasu rzeczywistego, które współpracują bezpośrednio ze sprzętem, a zadania Linuxa wykonują obliczenia nie wymagające reżimu czasu rzeczywistego. 64
Popularne systemy SOCR OS-9 To wielozadaniowy system operacyjny opracowany przez firmę Microware dla wbudowanych systemów sterujących opartych o procesory rodziny Motorola. System OS-9 ma strukturę warstwową, złożoną z jądra, niezależnej od sprzętu warstwy podprogramów zarządzającej zbiorami (plikami) oraz warstwy podprogramów sterujących pracą urządzeń zewnętrznych. Jedynym obowiązkowym elementem systemu jest jądro. Podstawowymi językami programowania aplikacji są C i asembler, dodatkowo są dostępne kompilatory Basic i Pascal. OS-9 nie można zakalikować do systemu rozproszonego ponieważ mechanizmy komunikacji i synchronizacji zadań są ograniczone do pojedynczego komputera. 65
Popularne systemy SOCR Windows CE Systemem czasu rzeczywistego Microsoftu o słabych wymaganiach czasowych. Posiada architekturę modułową. Zoptymalizowany dla urządzeń o niewielkiej ilości pamięci jądro systemu wymaga do uruchomienia około 1MB RAM. Microsoft opracował dedykowaną wersję systemu do układów elektronicznych urządzeń instalowanych w samochodach (np. zarządza sprzętem audio auta) Szerokie pole do popisu wszędzie tam, gdzie konieczne jest wykorzystanie wszelkich najnowszych technologii, a zwłaszcza tych związanych z multimediami. Można tworzyć bardzo wydajne konsole służące do gier oraz instalować w nich różne pakiety biurowe. 66
Popularne systemy SOCR Windows XP Embendded Windows XP Embedded, nie jest zasadniczo przeznaczony do przetwarzania w czasie rzeczywistym. Jego budowa jest jednak tak zorganizowana, że łatwo można go wzbogacić o takie możliwości. Służą do tego specjalne komponenty oraz rozwiązania firm trzecich. Windows XP Embedded składa się dokładnie z tych samych plików binarnych, co jego brat, przeznaczony na komputery typu desktop, tyle że niektóre zostały nieznacznie zmodyfikowane lub uproszczone. Posiada architekturę modułową. Znajduje zastosowanie u producentów bankomatów, terminale graficzne, urządzeń przenośnych, konsoli do gier oraz tych którzy wykorzystują najnowsze technologie multimedialne. 67
Popularne systemy SOCR µc/os-ii : przenośny skalowalny, z wywłaszczeniem, wielozadaniowe jądro ładowane z ROM, platforma docelowa to m.in. MS-Win, DOS, x86, 68HC11, ARM ecos : wysoce konfigurowalny, 32 lub 64 bitowy, oparty na koncepcji kodu źródłowego (nie jest to kolejny Linux), wysoce zoptymalizowany, zawiera bogatą bibliotekę matematyczną, komunikacyjną i system plików, platforma docelowa to m. in.: Windows, Sun, Linux, x86, ARM7 Przykłady darmowych SOCR dla rodziny AVR: AvrX, TinyOS, EtherNut - Nut/OS, FreeRTOS, XMK - extreme Minimal Kernel, 68
Systemy SOCR - obecnie Obecnie dostępnych jest ponad kilkadziesiąt systemów SOCR lub mających znamiona systemów operacyjnych czasu rzeczywistego. Część z nich to kompletne systemy operacyjne, w skład których wchodzą jądro, sterowniki I/O, systemy plików, usługi sieciowe... Niektóre dostępne są na licencji GPL a niektóre odpłatnie. Ceny wahają się od kilkuset do kilkuset tysięcy zł, przy czym cena zależy od dodatkowych modułów. 69
Systemy SOCR małe zestawienie QNX Neutrino 6.2 WinCE.NET VXWorks AE 1.1 RedHat Linux 1.1 Wydajność 9 7 5 2 Instalacja i konfiguracja 8 5 4 3 Architektura (RTOS) 9 7 7 3 Ilość API 7 7 8 5 Obsługa internetu 8 9 9 8 Narzędzia 8 8 8 8 Dokumentacja i wsparcie tech. 7 5 4 2 Średni wynik 8.0 6.9 6.4 4.4 Źródło: Dedicated Systems Experts, sierpień 2002 70
System Czasu Rzeczywistego producent a użytkownik sytemu sterowania Producenci: unikatowe rozwiązania dla konkretnych gałęzi przemysłu przywiązanie użytkownika do określonego producenta Użytkownicy: oczekują otwartości architektury sprzętowej umożliwiającej jego dalszą rozbudowę możliwości integracji z istniejącymi systemami sterowania możliwości współpracy z sieciami lokalnymi przy równoczesnym wykorzystaniu różnorodnych protokołów transmisji 71
Bibliografia [1] J. Brzózka (2002). Regulatory cyfrowe w automatyce. Wydawnictwo NIKOM. [2] W. Grega (2004). Metody i algorytmy sterowania cyfrowego w układach scentralizowanych i rozproszonych. Wydawnictwa AGH Kraków. [3] Norma IEC 61131-3. Programmable Controllers - Programing Languages [4] F.Petruzella (2011). Programmable Logic Controllers. Wydawnictwo McGraw-Hill Education. [5] J. Kasprzyk (2006). Programowanie sterowników przemysłowych. Wydawnictwo WNT. 72
Dziękuję za uwagę!!! 73