• Nie Znaleziono Wyników

Index of /rozprawy2/10413

N/A
N/A
Protected

Academic year: 2021

Share "Index of /rozprawy2/10413"

Copied!
162
0
0

Pełen tekst

(1)AKADEMIA GÓRNICZO-HUTNICZA im. ST. STASZICA W KRAKOWIE WYDZIAŁ ELEKTROTECHNIKI, AUTOMATYKI, INFORMATYKI I ELEKTRONIKI. mgr Marcin Skuba. Inteligentne struktury sieciowe w technologii LON Rozprawa doktorska. Promotor: prof. dr hab. inż. Wiesław Wajs. Kraków 2011.

(2) Składam serdeczne podziękowania dla Pana Profesora Wiesława Wajsa za cenną pomoc, cierpliwość i zaufanie dzięki, którym ta praca mogła powstać. Chciałbym również podziękować wszystkim osobom, których wsparcie przyczyniło się do powstania niniejszej rozprawy doktorskiej, a w szczególności mojej żonie Basi. Marcin Skuba.

(3) Spis Treści Streszczenie ............................................................................................................................... 5 Rozdział 1. Wstęp .................................................................................................................... 7 1.1. Systemy automatyki budynku ......................................................................................... 7 1.2. System sterowania rozproszonego LonWorks ................................................................ 9 1.3. Uzasadnienie tematu ...................................................................................................... 14 1.4. Cel pracy ........................................................................................................................ 15 1.5. Teza pracy...................................................................................................................... 16 1.6. Struktura rozproszonego systemu sterowania OpenLon ............................................... 16 Rozdział 2. Warstwa sprzętowa ........................................................................................... 19 2.1. Transmisja danych w układzie RS485........................................................................... 20 2.2. Urządzenia kontrolno-pomiarowe i sterujące ................................................................ 22 2.3. Podsystemy .................................................................................................................... 26 2.4. Programowa obsługa pakietów w sieci RS485.............................................................. 27 2.5. Redundancja urządzeń ................................................................................................... 29 Rozdział 3. Warstwa komunikacyjno sterująca LON ....................................................... 32 3.1. Budowa węzła OpenLon ............................................................................................... 32 3.2. Konwersja przesyłu danych z równoległego na szeregowy .......................................... 33 3.3. Komunikacja w sieci LON ............................................................................................ 35 3.3.1. Wartości parametrów pakietów .............................................................................. 36 3.3.2. Kody błędów .......................................................................................................... 37 3.3.3. Instalacja urządzenia............................................................................................... 38 3.3.4. Deinstalacja urządzenia .......................................................................................... 39 3.3.5. Instalacja podsystemu ............................................................................................. 39 3.3.6. Deinstalaja podsystemu .......................................................................................... 40 3.3.7. Pobieranie listy urządzeń podrzędnych z podsystemu ........................................... 41 3.3.8. Pobieranie listy podsystemów ................................................................................ 41 3.3.9. Pobieranie listy zainstalowanych urządzeń ............................................................ 42 3.3.10. Pobieranie deskryptora urządzenia ....................................................................... 43 3.3.11. Pobieranie wartości parametrów urządzenia ........................................................ 43 3.3.12. Ustawianie parametrów urządzeń ......................................................................... 44 3.3.13. Zmiana parametrów podsystemu .......................................................................... 45 3.3.14. Pobieranie parametrów podsystemu ..................................................................... 46 3.3.15. Programowy restart węzła .................................................................................... 46 3.3.16. Dodawanie urządzenia zapasowego - redundancja .............................................. 47 3.3.17. Usuwanie urządzenia zapasowego - redundancja ................................................ 47 3.3.18. Zmienna dynamiczna nvChange .......................................................................... 48 3.3.19. Zmiana wartości wejścia/wyjścia ......................................................................... 49 3.3.20. Urządzenie odłączone lub uszkodzone ................................................................. 49 3.3.21. Urządzenie podłączono ponownie ........................................................................ 49.

(4) Rozdział 4. Warstwa lokalnego serwera komunikacyjnego .............................................. 51 4.1. Narzędzia sieci LON ..................................................................................................... 51 4.2. Organizacja danych w lokalnej bazie danych................................................................ 54 4.3. Zarządzanie zasobami z poziomu aplikacji ConfigNetRS ............................................ 57 Rozdział 5. Diagnostyczny System Ekspertowy.................................................................. 61 5.1. Przykład budowy bazy wiedzy ...................................................................................... 62 5.2. Przykład wnioskowania ................................................................................................. 69 Rozdział 6. Budowa i edycja bazy wiedzy ........................................................................... 74 6.1. Obiekt zmiennej............................................................................................................. 75 6.2. Reguły............................................................................................................................ 76 6.2.1. Konkluzja ............................................................................................................... 76 6.2.2. Warunki .................................................................................................................. 78 6.2.3. Operatory logiczne AND i OR ............................................................................... 79 6.2.4. Wizualizacja w trakcie projektowania i relacje między regułami .......................... 80 6.3. Fasety ............................................................................................................................. 82 6.3.1. Faseta faktów .......................................................................................................... 83 6.3.2. Faseta użytkownika ................................................................................................ 84 6.3.3. Faseta bazy danych ................................................................................................. 85 6.3.4. Faseta nowych faktów ............................................................................................ 86 Rozdział 7. Obiektowa struktura systemu .......................................................................... 87 7.1. Wielowątkowość ........................................................................................................... 87 7.2. Obiekt urządzenia .......................................................................................................... 88 7.3. Lokalna baza danych ..................................................................................................... 88 7.4. Organizator zadań .......................................................................................................... 89 7.5. Serializacja..................................................................................................................... 90 Rozdział 8. Wnioskowanie .................................................................................................... 92 8.1. Fakty i reguły ................................................................................................................. 92 8.2. Podsystem wnioskujący................................................................................................. 95 8.3. Wynik wnioskowania .................................................................................................. 101 8.4. Porównywanie wartości argumentów warunku ........................................................... 102 Rozdział 9. Język skryptowy dla diagnostycznego systemu ekspertowego .................... 104 9.1. Zapis wartości ustalonych oraz referencji ................................................................... 104 9.2. Funkcje ........................................................................................................................ 105 9.3. Pętla for ....................................................................................................................... 106 Rozdział 10. Analiza wybranych parametrów DSE ......................................................... 108 10.1. Wpływ opóźnienia głównej pętli wnioskowania na obciążenie procesora .............. 108 10.2. Parametry podsystemu obsługi bazy danych ............................................................. 115 Rozdział 11. Zakończenie ................................................................................................... 119 11.1. Podsumowanie ........................................................................................................... 119 11.2. Możliwości rozwoju systemu .................................................................................... 120 Spis skrótów i oznaczeń ........................................................................................................ 122 Spis tablic .............................................................................................................................. 124 Spis rysunków ....................................................................................................................... 126 Bibliografia ............................................................................................................................ 128 Dodatek A – Kod źródłowy wybranych klas DSE ..........................................................131.

(5) Streszczenie. Streszczenie Główny problem podejmowany w pracy dotyczy budowy rozproszonego sytemu sterowania według projektu opartego na oryginalnej koncepcji czterowarstwowej struktury urządzeń, wspierany licznymi, autorskimi rozwiązaniami. Dużo uwagi poświęcono zagadnieniom dotyczącym diagnostyki urządzeń mikroprocesorowych oraz tematowi bezpieczeństwa i stabilności pracy systemu sterowania[21]. W rozdziale pierwszym przedstawiono zagadnienia wprowadzające do tematu systemów automatyki budynkowej oraz opisano jeden z kluczowych systemów sterowania rozproszonego, jakim jest LonWorks. Jest to system, którego narzędzia zostały wykorzystane do zbudowania systemu OpenLon, prezentowanego w dalszej części pracy. W rozdziale drugim opisano elementy zaliczane do warstwy sprzętowej, stanowiące niezależną sieć urządzeń kontrolno pomiarowych i sterujących pracujące w standardzie RS485. Opisany został mechanizm redundancji urządzeń oraz przedstawiono logikę pracy podsystemów zaprogramowanych do realizacji zadań w nowoczesnych zautomatyzowanych budynkach. Przedstawiono również cztery wykonane na potrzeby rozproszonego systemu sterowania, urządzenia kontrolno pomiarowe i sterujące oraz część modułu węzła OpenLon, odpowiedzialną za komunikację w sieci RS485. Rozdział trzeci przedstawia problemy związane z komunikacją węzłów OpenLon w lokalnej sieci operacyjnej (LON) z komputerem lokalnego serwera ze szczegółowym omówieniem struktury pakietów. Opisano również mechanizm konwersji sygnału z równoległego na szeregowy poprzez połączenie dwóch mikroprocesorów NeuronChip i Atmel. W rozdziale czwartym zaprezentowano narzędzia programowe wspomagające zarządzanie zasobami rozproszonego systemu sterowania, w tym narzędzia do wizualizacji i konfiguracji elementów sieci RS485 oraz LON. Rozdział piąty jest wprowadzeniem do programu obsługującego diagnostyczny system ekspertowy (DSE) utworzony w środowisku JavaSE. Jest on traktowany jako system nadzorujący pracę systemu sterowania. Przedstawiony przykład ma na celu wstępne ukazanie koncepcji stosowanych rozwiązań dotyczących zarówno obiektowej struktury aplikacji, jak i sposobu prezentacji i organizacji danych. W rozdziale szóstym szczegółowo opisano najważniejsze składowe klas oraz pokazano praktyczne ich zastosowanie podczas budowy elementów bazy wiedzy. Rozdział siódmy podkreśla znaczenie wielowątkowej struktury programu, a szczególnie współbieżne wnioskowanie dla diagnozowanych urządzeń. Opisany został również sposób wykorzystania zasobów lokalnej bazy danych, jako podstawowe źródło informacji dla DSE. W rozdziale ósmym pokazano praktyczne wykorzystanie bazy wiedzy podczas wnioskowania, które ma na celu zdiagnozowanie nieprawidłowości pracy urządzeń sprzętowych, jak i programowych w całym rozproszonym systemie sterowania OpenLon.. 5.

(6) Streszczenie W dalszej części tego rozdziału przedstawiono pomysł sposobu graficznej prezentacji wiedzy w trakcie wnioskowania oraz po jego zakończeniu. Kolejny, dziewiąty rozdział opisuje zaprojektowany specjalnie dla diagnostycznego systemu ekspertowego język skryptowy, pomocny podczas zapisu warunków i konkluzji reguł. W rozdziale dziesiątym przeprowadzono wynik analizy wybranych parametrów DSE, wpływających na wydajność programu oraz obciążenie procesora w lokalnym serwerze komunikacyjnym.. 6.

(7) Rozdział 1 - Wstęp. Rozdział 1. Wstęp 1.1. Systemy automatyki budynku Wysoki standard nowoczesnych budynków, nie tylko jest określany przez ich metraż, wyposażenie czy rozwiązania architektoniczne, ale również przez zastosowane systemy sterowania: oświetleniem, ogrzewaniem, klimatyzacją, dostępem do budynku i wieloma innymi. Systemy te mają również znaczenie z punku widzenia: odpowiedniego zarządzania, a tym samym przez ograniczenie zużycia energii, możliwości zdalnego monitorowania i sterowania urządzeniami zainstalowanymi w budynku np. przez sieć Internet, dużego komfortu użytkowania. Problematyka ta jest określana jako „automatyka budynku” lub „technika systemowa budynku”. Występuje również pojęcie „inteligentnych instalacji”. Początek automatyki budynku szacuje się na lata 60-te ubiegłego stulecia. Sterowanie czujnikami zewnętrznymi odbywało się w technice przekaźnikowej. Był to początek rozwoju wyspecjalizowanych systemów sterowania np. SI, LUXOR. Przekaźniki współpracują z wieloma urządzeniami zewnętrznymi, jak mierniki temperatury, czujniki obecności, czujniki zadymienia i inne. Posiadają również możliwości ustawiania opóźnień czasowych. Są to rozwiązania, które sprawdzają się w niedużych budynkach mieszkalnych lub biurach. Wszystkie zewnętrze urządzenia podłączone są do skrzynki rozdzielczej, z której prowadzone są przewody zasilające do odbiorników oraz sterujące do sensorów. Wadą tego rozwiązania jest przede wszystkim duża liczba użytych przewodów, dająca ograniczoną przejrzystość połączeń oraz ograniczone możliwości rozbudowy. Ponieważ do zasilania obwodów sterowniczych używa się obniżonego napięcia, wpływa to pozytywnie na zwiększenie bezpieczeństwa przeciwpożarowego. Systemy sterowania oparte na technice przekaźnikowej są jeszcze w niewielkim stopniu spotykane w dzisiejszych budynkach, jednak bardzo dynamiczny rozwój układów cyfrowych spowodował, iż zastępowane są one nowoczesnymi systemami elektronicznymi, sterowane mikroprocesorami. Układy cyfrowe zapoczątkowały systemy sterowania oparte na komunikacji typu masterslave. Jednostka centralna (master) zarządza urządzeniami (slave) podłączonymi przewodami bezpośrednio do każdego z nich (Rysunek 1.1). Najważniejszą zaletą w tego typu systemach, jest duża szybkość przy wymianie danych jednostki centralnej z modułami pomiarowymi lub wykonawczymi. Idea ta sprawdza się do dnia dzisiejszego i jest wykorzystywana w automatyce przemysłowej, np. do sterowania obrabiarkami. 7.

(8) Rozdział 1 - Wstęp. 8. numerycznymi. Decyduje o tym krótki czas reakcji na nieprawidłowości pracy jednostek podrzędnych slave. Jest to czas mierzony w milisekundach, który wpływa na precyzję wytwarzanych wyrobów. Slave Slave. Slave Master. Slave. Slave. Rysunek 1.1. Schemat komunikacji typu master-slave. Zastosowanie takiego rozwiązania nie sprawdziło się w dużych budynkach, gdzie istnieje duża liczba urządzeń wymagających sterowania. Najistotniejsze problemy występujące w tego typu systemach to: duże okablowanie, zatrzymanie pracy urządzeń (slave) w czasie usterki jednostki centralnej (master), nieduża liczba możliwych do podłączenia modułów (slave). Kolejnym rozwiązaniem pozwalającym na wyeliminowanie powyższych problemów jest decentralizacja systemu sterowania. Powstały „systemy rozproszone”, w których urządzenia mają równoprawny dostęp do linii komunikacyjnej. Linia ta nazywana jest magistralą, a dołączone do niej moduły nazwano„urządzeniami magistralnymi”. Są to zarówno układy wykonawcze, jak i takie, które generują sygnały sterujące. Linie magistralową określa się również mianem BUS (Binary Unit System). Urządzenie magistralne. Urządzenie magistralne. Urządzenie magistralne. Urządzenie magistralne. Urządzenie magistralne. Urządzenie magistralne. Rysunek 1.2. Schemat sieci typu magistralowego BUS. Urządzenia pracujące w systemie rozproszonym realizują swoje funkcje samodzielnie. Komputer może być wykorzystywany na etapie programowania i konfiguracji systemu oraz w czasie ciągłej pracy do wizualizacji stanu parametrów. Systemy magistralowe w stosunku do systemów typu master-slave posiadają więcej zalet w odniesieniu do sterowania automatyką budynków [2]. Możemy wyróżnić cztery podstawowe: prostota połączeń, zapewniona ciągłość pracy urządzeń w czasie awarii innych przyłączonych do magistrali obiektów, łatwość rozbudowy systemu o kolejne elementy,.

(9) Rozdział 1 - Wstęp możliwość podłączenia dużej liczby nowych urządzeń. Obok wielu zalet, dostrzec można również wady takiego rozwiązania. Są to: stosunkowo długi czas transmisji danych oraz podatność na zakłócenia w przekazie danych. Wiele problemów automatyki, można rozwiązać, łącząc systemy scentralizowane z magistralowymi. Najczęściej wykorzystywane medium transmisyjne, to: para przewodów TP(twisted pair), sieć energetyczna PL(Power Line), sieć radiowa RF(Radio Frequency). Oferowane na rynku systemy sterowania można klasyfikować według różnych kryteriów, jednym z nich jest wielkość budynku, w którym taki system ma być instalowany. Wyróżnić można trzy kategorie: Automatyka domowe - Home Automation (HA) – są to systemy kierowane do niewielkich budynków, najczęściej domów mieszkalnych lub sklepów. Mogą być instalowane również w części dużych budowli. Charakteryzują się prostotą połączeń i konfiguracji, możliwością połączeń niedużej liczby urządzeń na stosunkowo krótkie odległości. Domowe i budynkowe systemy elektroniczne– Home and Building Electronic Systems (HBES) – Są to systemy przeznaczone dla dużych budynków z możliwością podłączenia urządzeń magistralnych w liczbie, nawet do kilkuset tysięcy. Automatyka i sterowanie budynku - Building automation and control (BAC) – kategoria ta dotyczy wyspecjalizowanych systemów automatyki, dedykowane dla dużych obiektów składających się z wielu budynków, mogą to być: porty lotnicze, centra handlowe, centra biurowe. Systemy te składają się z licznych, współpracujących podsystemów inteligentnych instalacji. Najczęściej stosowane w automatyce budynkowej technologie i protokoły sieciowe, to: LonWorks, EIB/KNX, BACnet, Profibus oraz CEBus[2].. 1.2. System sterowania rozproszonego LonWorks Technologia LonWorks została opracowana przez amerykański koncern Echelon we współpracy z firmami Motorola oraz Toshiba na początku lat 90-tych. LonWorks definiuje technologię o otwartej i rozproszonej strukturze systemów automatyki [29]. Najczęściej kojarzona z systemami automatyki budynków, jednak jej zastosowanie sięga wielu gałęzi energetyki, transportu oraz monitoringu procesów technologicznych [10]. Pełna integracja urządzeń pochodzących od różnych producentów, jako jeden z głównych celów postawionych przez twórców systemu został zrealizowany dzięki otwartości opracowanego systemu oraz odpowiedniego protokołu transmisji danych. Kompatybilność oraz standaryzację współpracujących w systemie LonWorks urządzeń zapewnia organizacja LonMark. Zrzesza ona wytwórców oraz instalatorów urządzeń wykonanych w tej technologii [17]. Elementy współpracujące z sobą w ramach systemu LonWorks, tworzą odrębną, lokalną sieć operacyjną (LON – Local Operation Network), która swoimi funkcjami oraz osiągami przypomina sieć komputerową LAN. Transportowane dane mają postać zmiennych. 9.

(10) Rozdział 1 - Wstęp sieciowych zawierające informacje o parametrach urządzeń np. wartości mierzone lub aktualne ich stany. Proces komunikacji pomiędzy współpracującymi modułami odbywa się przy udziale protokołu LonTalk, który został opracowany specjalnie dla standardu LonWorks. Jest to model pakietowy typu P2P (peer-to-peer) . Implementacja tego protokołu zapisana została jako stała część mikroprocesora NeuronChip, który jest głównym elementem każdego węzła[29]. 1.2.1. Warstwowy model protokołu LonTalk Protokół LonTalk opracowany został w oparciu o siedmiowarstwowy model odniesienia ISO/OSI (Open System Interconnection) [28]: 1. Warstwa fizyczna - odpowiedzialna za wysyłanie i odbiór bitów danych w postaci szeregowej do/z urządzeń w sieci LON. Przed wysłaniem dane pobierane są z warstwy łącza danych oraz po odebraniu nowych pakietów są tam również przekazywane. 2. Warstwa łącza danych – określa kiedy urządzenie może nadać pakiet do medium transmisyjnego. Jest również odpowiedzialna za strukturę danych w ramkce oraz za poprawność struktury pakietów. Duże znaczenie ma jej funkcja obsługi i wykrywania błędów podczas transmisji. 3. Warstwa sieci – ustala jaką drogą będą przesyłane pakiety oraz ustala adresy i nazwy urządzeń w lokalnej sieci operacyjnej. 4. Warstwa transportu – zapewnia niezawodność przesyłanych pakietów poprzez wysyłanie żądań potwierdzenia przesyłki. Gdy urządzenie, do którego kierowana jest przesyłka nie odpowiada, operacja zostaje ponowiona. 5. Warstwa sesji – nadzoruje wymianę danych z niższymi warstwami oraz odpowiada za proces autoryzacji danych. 6. Warstwa prezentacji – koduje dane do postaci zmiennych sieciowych SNVT (Standard Network Variable Types). 7. Warstwa aplikacji – inicjująca proces komunikacji. Stanowi ona interfejs pomiędzy użytkownikiem a usługami sieci. 1.2.2. Węzeł LON Podstawową jednostką sieci LON jest „inteligentne” urządzenie zwane węzłem. Może reprezentować np.: czujnik, moduł pomiarowy, kontroler, przełącznik lub rozbudowane urządzenie w postaci komputera przetwarzającego dane. Najważniejszym jego elementem jest mikroprocesor NeuronChip o unikalnej architekturze [10], [40].. 10.

(11) Rozdział 1 - Wstęp. Rysunek 1.3. Architektura mikroprocesora NeuronChip. NeuronChip w swojej strukturze zawiera trzy ośmio-bitowe jednostki CPU, z których każdy ma inne funkcje [22]: 1. Procesor MAC (Media Access Control) – Realizuje algorytm dostępu do mediów transmisyjnych. Odpowiedzialny jest zarówno za komunikację, jak również za obsługę podsystemu wykrywania i unikania kolizji. Procesor MAC zajmuje się realizacją pierwszej i drugiej warstwy modelu OSI protokołu LonTalk. Komunikuje się z procesorem sieciowym za pomocą bufora pamięci Buffer Network . 2. Procesor Sieciowy NP (Network CPU) – Odpowiedzialny jest za obsługę zadań zapisanych w warstwach od trzeciej do szóstej modelu OSI. Najważniejsze to: obsługa zmiennych sieciowych, liczników, adresowanie przesyłek, obsługa podsystemu diagnostyki oraz zarządzanie w sieci. Wymiana danych z procesorem MAC odbywa się przez bufor sieciowy oraz z procesorem AP przez bufor Aplikacji (Application Bufferes). 3. Procesor Aplikacji AP (Application Procesor) – wykonuje program użytkownika napisany w języku NeuronC. Poza trzema jednostkami CPU w strukturze mikroprocesora znajdują się jeszcze trzy rodzaje pamięci: ROM, RAM, EEPROM, jedenaście wyprowadzeń wejścia/wyjścia, licznik, zegar, szesnasto-bitowa szyna adresowa, ośmio-bitowa szyna danych, pięć pinów do komunikacji z urządzeniami w sieci sterowania. Jedenaście pinów układu wejścia/wyjścia, dzięki wbudowanemu oprogramowaniu firmowemu pozwala na sterowanie, np.: przekaźnikami, sensorami, czujnikami ciśnienia, termostatami, itd. Pięć kolejnych wyprowadzeń daje możliwość podłączenia węzła do sieci LON poprzez interfejs zwany transceiver-em. Typ interfejsu określa fizyczne parametry sieci takie jak typ medium transmisyjnego, szybkość transmisji, zakres odległości i inne. Najczęściej używanym medium. 11.

(12) Rozdział 1 - Wstęp. 12. w technologii LonWorks jest para przewodów, jej parametry opisano w tabeli 1.1. Pozostałe media to np.[10], [40], [22]: linia energetyczna - dla której maksymalna odległość współpracujących węzłów zależy od poziomu zakłóceń, wykorzystywana jest zarówno w topologii magistralowej, jak również mieszanej, światłowód – odległość do 3 kilometrów przy prędkości 1.25 Mbps fale radiowe – odległość od 5 do 30 km, przy częstotliwości 900MHz prędkość transmisji do 78kbps. Para przewodów z zasilaniem – urządzenie jest dodatkowo zasilane poprzez przewód magistralny. Prędkość transmisji wynosi do 78 kbps. Tabela 1.1. Parametry sieci dla medium transmisyjnego w postaci pary przewodów. Typ transceiver-a TPT/XF-1250 FTT-10A FTT-10A LPT-10 LPT-10. Szybkość transmisji 1.25 Mbps 78 kbps 78 kbps 78 kbps 78 kbps. Rodzaj topologii. Odległość. Magistrala Magistrala Dowolna Magistrala Dowolna. 500m 2700m 500m 2200m 500m. Różne typy interesów sieciowych pozwalają na budowę sieci o różnej topologii, jak: magistralowa, pierścieniowa, gwiazda oraz topologia mieszana.. 1.2.3. Typ komunikacji w sieci LON Wymiana pakietów danych pomiędzy modułami mikroprocesorowymi w standardzie LonWorks realizowana wg kilku typów rozkazów: Przesyłanie danych z potwierdzeniem – dane kierowane są do pojedynczych węzłów lub do całej grupy liczącej maksymalnie 64 urządzenia. Potwierdzenie wymagane jest od każdego odbiorcy. Jeśli potwierdzenie nie zostanie odnotowane, nadawca ponownie wysyła pakiet. Wysyłanie sygnału potwierdzenia nie spoczywa na programie użytkownika, lecz jest obsługiwane przez procesor. Przesyłanie z powtórzeniem – jest to rodzaj przesyłki zastępujący przesyłanie z potwierdzeniem i polega na wysyłaniu wielu pakietów, nie oczekując potwierdzenia. Takie rozwiązanie sprawdza się w sytuacji, gdy dane wysyłane są do dużej grupy urządzeń, potwierdzenie od każdego z nich może powodować znaczne obciążenie sieci. Przesyłanie bez potwierdzenie – ten tryb wykorzystywany jest najczęściej, ponieważ najmniej obciąża sieć. Polega ona na wysłaniu jednorazowo pakietu, nie oczekując na potwierdzenie. Należy pamiętać, iż wysyłane widomości mogą zostać utracone lub przekłamane, dlatego ten sposób transmisji wykorzystywany jest w sytuacjach, gdy brak niektórych pakietów nie wpływa na pracę urządzeń, a tym samym na stan danego podsystemu. Przesyłanie z autoryzacją – pozwala na weryfikację nadawcy przesyłki na podstawie 48-bitowego klucza, przypisanego do urządzenia w czasie jego instalacji. Każdy pakiet przesyłany w sieci LON zawiera w sobie zarówno adres odbiorcy, jak i nadawcy. Adres może być związany z pojedynczym węzłem lub wybraną grupą węzłów..

(13) Rozdział 1 - Wstęp. 13. Podsieć Podsieć. Router Kanał. Router Podsieć. Grupa. Podsieć. Repeator. Domena. Domena. Rysunek 1.4. Podział urządzeń na grupy, podsieci i domeny. W technologii LonWorks stosowane są następujące rodzaje adresów: Adres fizyczny - jest to 48-bitowy ciąg znaków identyfikujący urządzenie, jest zapisywany jednorazowo w mikroprocesorze NeuronChip podczas jego produkcji. Adres logiczny - stosowany jest zamiast adresu fizycznego, nadawany podczas instalacji i konfiguracji sieci. Stosowanie tego typu adresowania jest przydatne podczas wymiany uszkodzonego węzła, ponieważ daje możliwość przypisania obowiązującego adresu do nowego urządzenia. Składowymi adresu logicznego są identyfikatory domeny, podsieci oraz węzła. Identyfikator domeny grupuje węzły, które mogą się ze sobą komunikować, ich maksymalna liczba wynosi 32 385. Identyfikator podsieci ogranicza się do grupy 127 urządzeń, które są podłączone do jednego kanału lub kilku kanałów połączonych ze sobą przez repeatory. Ostatni element adresu logicznego identyfikuje urządzenie w podsieci. Liczba podsieci w domenie liczy do 255. Adres grupy – łączy urządzenia w grupy logiczne, niezależnie od ich położenia w jednej domenie. W przeciwieństwie do identyfikatora podsieci, urządzenia mogą należeć do grup bez względu na medium transmisyjne. Liczba węzłów w grupie zależy od typu transmisji. Jeśli obowiązuje komunikacja z potwierdzeniem przesyłki, liczba urządzeń ogranicza się do 64. Komunikacja bez potwierdzenia nie ogranicza liczby węzłów w grupie. Jedna domena może zawierać aż 255 grup. Adres komunikacyjny (broadcast) - identyfikuje wszystkie urządzenia należące do domeny lub grupy. Jest stosowany w sytuacjach gdy wysyłany pakiet adresowany jest do dużej grupy odbiorców zamiast adresów grup. 1.2.4. Środowisko programistyczne Organizację pracy urządzeń oraz logikę opisującą wymianę danych między węzłami umożliwia program użytkownika napisany w specjalnie opracowanym języku programowanie o nazwie NeuronC. Jego implementacja bazuje na ANSI C, jednak dla poprawy wydajności wprowadzono znaczne modyfikacje, z których najważniejsze to: bezpośrednia obsługa timerów,.

(14) Rozdział 1 - Wstęp mechanizm komunikacji wykorzystujący zmienne sieciowe (SNVT) oraz bloki funkcyjne, obsługa zdarzeń – wykonywanie funkcji w chwili np. zmiany stanu urządzenia, standaryzacja typów zmiennych sieciowych – pozwala na używanie zmiennych sieciowych należących do węzłów różnych producentów. Definicję typów przechowują pliki źródłowe dostarczane przez producenta urządzenia, mechanizmy ułatwiające szeregowanie i zarządzanie zadaniami, pomagający programiście prawidłowo organizować równoległe zadania sterowania. Dopasowując środowisko programistyczne do potrzeb aplikacji systemu sterowania LonWorks, zrezygnowano z wielu funkcji bibliotecznych w stosunku do ANSI C [25]. Język NeuronC jest optymalizowany dla programów napisanej w technologii ośmiobitowej. Wykorzystanie np. zmiennych typu rzeczywistego float lub operacji 32-bitowych wymaga zastosowania funkcji bibliotecznych. Każdą deklarowaną zmienną sieciową musi poprzedzać specyfikator network oraz specyfikator nadający kierunek strumienia danych output (zmienna wyjściowa) lub input (zmienna wejściowa). Duży wpływ na wydajność aplikacji podczas obsługi zmian stanów parametrów urządzeń ma obsługa zdarzeń. Polecenie when może inicjować akcję zdefiniowaną w grupie instrukcji, odnotowując zmianę np. wartości zmiennej pochodzącą z odległych węzłów (np. przełącznika, czujnika itd). Użycie obiektu timera jako argumentu instrukcji when pozwala na wywoływanie zdarzenia w określonym cyklu czasowym. Implementacja języka NeuronC zapisana została jako część oprogramowania firmowego stałej pamięci ROM mikroprocesora NeuronChip. Pomoc w zarządzanie zasobami sieci LON z poziomu komputera klasy PC otrzymujemy w postaci środowisk programistycznego NodeBuilder Development Tool. Jest to zbiór narzędzi wspomagający pisanie (edytor NeuronC), testowanie (Debugger), przesyłanie programy do pamięci węzła, przeglądanie zmiennych sieciowych (Browser). Drugim ważnym narzędziem, przydatnym podczas konfiguracji węzłów, monitoringu oraz projektowania całej rozległej sieci LON jest LonMaker for Windows Integration Tool. Można w nim tworzyć logiczne połączenia poprzez bloki funkcyjne oraz rozmieszczenie wszystkich węzłów tworzących daną sieć sterowania. Bloki funkcyjne – to grupa ustawień konfiguracyjnych oraz zmiennych sieciowych, które definiują i opisują rodzaj zadań do wykonania dla grupy obiektów. Opisują parametry wejścia/wyjścia, sposób współpracy urządzeń oraz rodzaj realizowanych funkcji [10].. 1.3. Uzasadnienie tematu Dzisiejsze możliwości techniczne i technologiczne sprawiają, iż na rynku systemów sterowania możemy spotkać ogromną ofertę firm. Zawężając oferty nawet do systemów automatyki budynku, oferowanych jest niezwykle dużo rozwiązań, często różniących się sposobem zarządzania zasobami, typem i liczbą mediów transmisyjnych, protokołami komunikacyjnymi, sposobami połączeń i wartością napięcia zasilającego oraz wieloma innymi cechami. Istnieją również cechy wspólne łączące największe i najlepsze systemy sterowania na świecie. Są to najczęściej wysokie koszty wdrożenia, instalacji, konfiguracji i rekonfiguracji zasobów, zarówno w odniesieniu do sprzętu, jak i oprogramowania. Systemy te obsługiwane są przez wykwalifikowane osoby, których wiedza pozwala. 14.

(15) Rozdział 1 - Wstęp. 15. sprawnie rozbudowywać i rekonfigurować działające już podsystemy. Korzystanie z takiej usługi nie jest tanie, również z powodu specjalistycznych narzędzi programowych, które nie są w zasięgu użytkownika. Przykładem może być system LonWorks. Dodanie nowego urządzenia do już istniejącej sieci LON wymaga zastosowania np. programu LonMaker, który najczęściej jest w posiadaniu wyspecjalizowanych serwisów. Również koszt instalowanych urządzeń jest wysoki z powodu mikroprocesora NeuronChip, który jest ich głównym elementem. Wychodząc naprzeciw powyższym spostrzeżeniom, opisany w pracy projekt systemu sterowania OpenLon, dzięki zastosowanym rozwiązaniom sprzętowym, jak i programowym w dużym stopniu rozwiązuje powyższe problemy. Zastosowana struktura urządzeń pozwala tworzyć od podstaw nowe niezależne podsystemy sterowania lub łączyć je z już istniejącymi węzłami sieci LonWorks. Tak, więc elementy OpenLon mogą być uzupełnieniem dla sieci LonWorks, bazując na rozwiązaniach firmy Echelon. Sieć węzłów można również wykorzystać jako rozwinięcie czterowarstwowej struktury systemu sterowania rozproszonego OpenLon. Wyróżniając własne, od podstaw zaprojektowane i wykonane urządzenia mikroprocesorowe pracujące w oparciu o niezależne oprogramowanie można stwierdzić, iż system jest zdolny do samodzielnej pracy w różnych dziedzinach. Jednak na potrzeby obecnej pracy zawężono wykorzystanie systemu OpenLon do obszaru zagadnień dotyczących systemu automatyki budynku. W szeroko rozumianych Inteligentnych Budynkach większość awarii w systemach BASM (Building Automation Management System) oraz SMS (Security Management System) może doprowadzić do poczucia dyskomfortu użytkowników lub utrudnień w zarządzaniu budynkami [19]. Prezentowane w pracy rozwiązania dotyczące diagnozowania stanu urządzeń należy traktować, jako element wpływający na zwiększenie stabilności pracy systemów sterowania.. 1.4. Cel pracy Celem pracy jest zaprojektowanie i wykonanie systemu sterowania o rozproszonej strukturze urządzeń, bazującej na sprawdzonych rozwiązaniach z technologii LON. Jego ostateczny kształt, wymuszony został przez zastosowane mechanizmy, wpływające pozytywnie na zwiększenie niezawodności i ciągłości pracy systemu sterowania. Jednym z nich jest diagnostyczny system ekspertowy (DSE) pracujący w oparciu o zgromadzoną w bazie wiedzy informacje. Do głównych jego zadań należy analizowanie przepływających pomiędzy urządzeniami pakietów danych, gromadzenie wiedzy o aktualnym stanie systemu oraz jego wizualizacja i komunikacja z operatorem. Dla lepszego zilustrowania współpracy systemów diagnostycznego i sterowania, posłużono się schematem jak na rysunku 1.5.. System 1 In. System 2. Out. Rysunek 1.5 Schemat relacji systemów starowania (System2) i diagnostycznego (System1).

(16) Rozdział 1 - Wstęp System 2 - jest to układ diagnozowanych urządzeń, o którym wiadomo, że dostępne są jego sygnały wejścia In oraz wyjścia Out. Wiadomo również, które sygnały In oraz Out, a także ich kombinacja są poprawne z punktu widzenia działania programu, a które są niepoprawne. System 1 – to zbiór narzędzi nadzorujących pracę Systemu 2. Posiada on dostęp do sygnałów In oraz Out, ma również zdolność klasyfikowania i rozpoznawania znaczenia sygnałów wejścia i wyjścia oraz ich kombinacji. Na tej podstawie wykrywane są nieprawidłowości w pracy urządzeń. W sytuacjach alarmowych system wspomaga lub zastępuje człowieka przy podejmowaniu decyzji. Na zapewnienie ciągłości pracy systemu wpływają również inne niezależne rozwiązania, jak redundancja urządzeń kontrolno-pomiarowych i sterujących oraz specjalne algorytmy diagnostyczne. Dodatkowe oprogramowanie odwzorowujące rzeczywisty stan urządzeń, dające możliwość zdalnej wizualizacji i łatwej konfiguracji przy jednocześnie niskiej cenie urządzeń kontrolno pomiarowych i sterujących, sprawiają że rozproszony system sterowania będzie kierowany ku użytkownikom, nie posiadającej precyzyjnej wiedzy eksperta. Takie czynności, jak fizyczne usuwanie i wymiana istniejących urządzeń, dodawanie nowych, łączenie w grupy współpracujących ze sobą, szybka zmiana parametrów pracy, powinny być łatwe, szybkie, bez dodatkowych kosztów, w zasięgu niespecjalisty.. 1.5. Teza pracy Istnieje możliwość utworzenia inteligentnego, rozproszonego systemu diagnostycznego opartego na systemach ekspertowych oraz przeniesienie tego systemu na fizyczne struktury sieciowe w technologii LON. Technika sterowania zdarzeniami (ang. Event Driven) stosowana w technologii LON powinna być uzupełniona techniką stałego przełączania w czasie (ang. Time Triggered) w celu zapewnienia ciągłego diagnozowania urządzeń w sieci Local Operating Network.. 1.6. Struktura rozproszonego systemu sterowania OpenLon Liczne urządzenia mikroprocesorowe pracujące w rozproszonym systemie sterowania, zaprogramowane do realizacji indywidualnych zadań, podzielone zostały na cztery grupy opisane jako kolejno występujące po sobie warstwy. Podział ten wynika z realizacji postawionych na wstępie celów. Pierwszą grupę narzędzi stanowi warstwa sprzętowa, do której zaliczamy najbardziej rozproszone w całym systemie urządzenia odpowiedzialne za realizację zadań kontrolnopomiarowych i sterujących. Są to oddzielne układy mikroprocesorowe przeznaczone do wykonywania dedykowanych zadań. Każde urządzenie posiada przypisaną na stałe wartość określającą typ zadania do wykonania oraz określa stały zestaw wejść i wyjść. Każde urządzenie tego samego typu działające w obrębie jednej sieci RS485 posiada przypisany na stałe niepowtarzalny identyfikator [33], [38], [39].. 16.

(17) Rozdział 1 - Wstęp. 17. Klient. Centralna baza danych. Warstwa decyzyjna. Oprogramowanie decyzyjne Zdalny klient XMPP. Oprogramowanie komunikacyjne Internet Lokalna baza danych. Oprogramowanie sterujące Oprogramowanie weryfikujące poprawność działania. Warstwa lokalnego serwera komunikacyjnego. Oprogramowanie komunikacyjne Sieć LON. Węzeł LON. Sieć RS485. Węzeł LON. Urządzenie kontrolno – pomiarowe. Urządzenie kontrolno – pomiarowe. Urządzenie kontrolno – pomiarowe. Urządzenie kontrolno – pomiarowe. Urządzenie kontrolno – pomiarowe. Sieć RS485. Warstwa komunikacyjno – sterująca LON. Warstwa sprzętowa. Urządzenie kontrolno – pomiarowe. Rysunek 1.6. Warstwowa budowa rozproszonego systemu sterowania. Podstawowym członem rozproszonego systemu sterowania jest węzeł sieci LON zaliczany do warstwy komunikacyjno sterującej. Węzeł LON jest układem zapewniającym komunikację pomiędzy urządzeniami kontrolno – pomiarowymi warstwy sprzętowej, a wyższymi warstwami systemu odpowiedzialnymi za szeroko pojęty nadzór nad pracą wspomnianych wcześniej urządzeń. Dwie opisane powyżej warstwy mogą już stanowić odrębny system sterowania, jednak pełne jego możliwości osiągnie poprzez narzędzia z warstwy lokalnego serwera komunikacyjnego oraz decyzyjnej. Mikroprocesor NeuronChip oraz obsługiwany przez niego protokół LonTalk, jako główny moduł węzła może być dołączany do już istniejących sieci urządzeń z technologii LonWorks i może współpracować w tej sieci z innymi węzłami LON [30]. Warstwa trzecia opisuje narzędzia sprzętowe, jak i programowe reprezentowane przez komputer klasy PC, do którego zadań należy między innymi: buforowanie informacji w lokalnej bazie danych, zapewnienie komunikacji pomiędzy sąsiednimi warstwami urządzeń, analizowanie przepływających przez bazę danych informacji, weryfikacja poprawności działania systemu oraz podejmuje decyzje w sytuacjach wyjątkowych, ułatwianie konfiguracji i wizualizacji parametrów zdalnych urządzeń, poprzez program odwzorowujący rzeczywisty obraz sieci RS485 oraz LON, pośrednicznenie w wymianie danych w obszarze sieci Internet z klientami w postaci aplikacji, apletów lub midletów, poprzez protokół XMPP w celu zdalnego sterowania i wizualizacji [27]..

(18) Rozdział 1 - Wstęp Najwyższa w hierarchii opisywanej struktury, jest warstwa decyzyjna, reprezentowana przez serwer o dużej mocy obliczeniowej, który inicjuje połączenie z rozproszonymi w sieci Internet komputerami zaliczanymi do warstwy trzeciej. Najważniejszym zadaniem serwera jest gromadzenie danych historycznych, pochodzących z odległych urządzeń. Ich analizą mogą zajmować się specjalne algorytmy sztucznej inteligencji, które dostarczą nowej wiedzy, pozwalającej optymalizować pracę całego systemu. Istotną funkcją warstwy czwartej jest również obsługa wymiany informacji pomiędzy lokalnym serwerem komunikacyjnym, a klientem w obszarze sieci Internet. Klient jest traktowany jako program uruchamiany na komputerach osobistych lub urządzeniach mobilnych, jak telefony komórkowe czy palmptopy. W skład tej warstwy należą: centralna baza danych, w której przechowywane są informacje o wszystkich obsługiwanych podsystemach, oprogramowanie komunikacyjne, które obsługuje wymianę danych pomiędzy lokalną bazą danych serwera komunikacyjnego, a centralną bazą danych, oprogramowanie decyzyjne optymalizujące algorytmy sterowania, zdalny klient, który w czasie rzeczywistym poprzez sieć internet wymienia informacje z wybranym lokalnym serwerem komunikacyjnym, klient z uprawnieniami dostępu do globalnych zasobów historycznych.. 18.

(19) Rozdział 2 – Warstwa sprzętowa. 19. Rozdział 2. Warstwa sprzętowa Wspólna praca urządzeń w systemie LonWorks oparta jest o sprawdzone rozwiązania techniczne, w których kluczowa jest komunikacja węzłów w lokalnej sieci operacyjnej (LON). Niezwykle istotną rolę przy obsłudze transmisji danych odgrywa procesor NeuronChip, który jako jedno ze swoich zadań realizuje obsługę protokołu LonTalk. Każdy moduł sieci LON wymaga pracy tego procesora co zwiększa koszt urządzenia. Również instalacja programowa jest niemożliwa bez narzędzi, które trzeba użyć za każdym razem gdy pojawia się potrzeba dodania nowego, lub wymienia już istniejącego urządzenie. Zaproponowane w pracy rozwiązanie systemu sterowania OpenLon, polega na dodaniu do wspomnianej struktury sieci LON, niższej warstwy urządzeń kontrolno pomiarowych i sterujących [26], [39]. Elementem wymagającym jednorazowej instalacji w komercyjnym środowisku jest tylko węzeł OpenLon zarządzający zasobami oddzielnej struktury sieci z własnym protokołem komunikacyjnym oraz programem obsługującym podsystemy. Zadania kontrolo-pomiarowe i sterujące w rozproszonym systemie sterowania OpenLon realizowane są przez samodzielne, nieskomplikowane i niedrogie urządzenia mikroprocesorowe. Każde z nich ma swój niepowtarzalny adres zapisany w dwóch zmiennych całkowitych jako identyfikator oraz typ. Komunikacja pomiędzy urządzeniami odbywa się w standardzie transmisji szeregowej RS485, co daje możliwość podłączenia aż 32 urządzeń na znaczną odległość do 1200 metrów.. 2. 1. 5. 3 1. 2. 4. Rysunek 2.1. Przykładowa sieć RS485, 1- mierniki temperatury, 2 –nastawniki, 3- łączniki, 4 – węzeł OpenLON, 5 – Interfejs SLTA-10.

(20) Rozdział 2 – Warstwa sprzętowa Jako warstwę sprzętową w opisie niniejszej pracy rozumiemy urządzenia mikroprocesorowe z oprogramowaniem oraz część węzła OpenLon z układem obsługi szeregowej transmisji danych. Ważnym elementem tej warstwy po stronie węzła jest część programu głównego mikroprocesora NeuronChip obsługującego wymianę pakietów, układu konwersji danych z równoległego do szeregowego standardu przesyłu sieci RS485 oraz gniazdo sieciowe. Rysunek 2.1 przedstawia utworzoną na potrzeby laboratoryjne przykładową sieć RS485 z ośmioma urządzeniami, z których wyróżnić możemy dwa typy: miernik temperatury oraz nastawnik. Za komunikację w tej sieci odpowiada węzeł OpenLon, który jest również pośrednikiem komunikacyjnym w sieci LON. Dostęp do parametrów urządzeń kontrolno pomiarowych oraz zmiennych sieciowych węzła z poziomu komputera zapewnia interfejs SLTA-10 podłączony złączem szeregowym RS232[6].. 2.1. Transmisja danych w układzie RS485 Układ RS485 wykorzystany do komunikacji w warstwie sprzętowej, umożliwia przesyłanie danych z prędkością transmisji 9600 bitów na sekundę, na stosunkowo duże odległości. Urządzeniem inicjującym komunikację jest węzeł OpenLon, który zgodnie ze specyfikacją sieci RS485 traktowany jest jako urządzenie nadrzędne określające kierunek transmisji. Dane przesyłane są jedną parą przewodów jako sygnały różnicowe, pomiędzy układami pracującymi domyślnie w trybie odbioru, a węzłem [23].. Rysunek 2.2. Układ modułu komunikacji w sieci RS485. Wszystkie urządzenia kontrolno-pomiarowe i sterujące utworzone dla systemu sterowania OpenLon, posiadają wspólny moduł komunikacyjny, którego schemat przedstawia rysunek 2.2. W ostatecznej wersji rozmieszczenia przewodów złącza P1, zasilanie o napięciu 12V doprowadzają dwa skrajnie rozmieszczone piny 1,8 oraz masę - piny 2 i 7. Wcześniejsze wersje modułu komunikacyjnego dopuszczały oprócz napięcia 12V dodatkowe, dla zasilania własnego układu, napięcie o wartości 5V przesyłane z węzła. Jednak duże spadki tego napięcia powodowały błędy w transmisji danych. Ostatecznie. 20.

(21) Rozdział 2 – Warstwa sprzętowa napięcie 5V uzyskiwane jest przez układ z tranzystorem będący częścią urządzenia kontrolno pomiarowego, a nie węzła. Również piny 3 i 6 traktowane jako opcjonalne mogą służą do zasilania dodatkowych, oddzielnych układów urządzeń podrzędnych podłączonych do systemu. Sygnał danych dostarczany przez piny 4 i 5 jest sygnałem różnicowym, co sprawia, że jest bardziej odporny na zakłócenia. Rezystor R1 oraz zwora W3 używane są jako terminator sieci wymagany przez standard RS485, umieszczone na końcach przewodów sygnałowych [6]. Celem takiego rozwiązania jest utworzenie pętli prądowej. Przewody danych zabezpieczone są przed przepięciami za pomocą dwóch diod: D1 i D2 typu Transil. Układem realizującym transmisję danych jest dwukierunkowy transceiver U1 SN75176. Zarówno zasilanie układu, jak i sygnał, przesyłane są jedną skrętką przewodów należącą do grupy kategorii siódmej. Szybkie podłączenie przewodów to zasługa złącza P1 typu RJ45, najczęściej kojarzonego w siecią Ethernet. Poniższy rysunek oraz tabela prezentują sposób rozmieszczenia przewodów zasilających oraz sygnałowych w złączu RJ45.. Rysunek 2.3. Złącze RJ45 Tabela 2.1. Opis złącza RJ45 Nr linii 1 2 3 4 5 6 7 8. Kolor przewodu brązowy brązowo-biały zielony niebiesko-biały niebieski zielono-biały pomarańczowo-biały pomarańczowy. Znaczenie sygnału +12 V DC GND RS485 – B RS485 – A GND +12 V DC. Fizyczne łączenie urządzeń w warstwie sprzętowej jest czynnością bardzo łatwą dla każdego użytkownika systemu. Rozdzielacze sygnału w formie trójników, pokazane na zdjęciu 2.4 pozwalają łączyć kolejne, nowe urządzenia do już istniejącej sieci lub od podstaw tworzyć nową strukturę według własnych potrzeb. Trójniki w odróżnieniu od urządzeń kontrolno-pomiarowych nie są instalowane programowo i mogą być zamieniane bez powiadamiania systemu. Wszystkie pozostałe moduły mikroprocesorowe, aby móc pracować poprawnie muszą być zarejestrowane w głównym programie węzła, ponieważ każdy z nich jest identyfikowany własną wartością stałej ID. Instalacja urządzeń kontrolno pomiarowych wspierana jest przez program w warstwie lokalnego serwera komunikacyjnego. Graficzny interfejs dokładnie opisany w rozdziale 4.3, ułatwia proces odwzorowania fizycznej struktury urządzeń w sieci RS485 oraz ich zarządzania.. 21.

(22) Rozdział 2 – Warstwa sprzętowa. Rysunek 2.4. Rozdzielacz sygnału łączący urządzenia w sieci RS485. 2.2. Urządzenia kontrolno-pomiarowe i sterujące Koncepcja czterowarstwowej struktury systemu sterowania może być stosowana w wielu dziedzinach życia człowieka, jednak funkcje opisywanych w pracy urządzeń ograniczone zostały do sterowania automatyką i elektroniką budynków. Dla celów badawczych zaprojektowano i wykonano grupę urządzeń częściowo rozwiązujące problemy użytkowników budynków mieszkalnych, użyteczności publicznej (urzędy, biura, szpitale) oraz zakładów pracy. Zastosowane oryginalne rozwiązania w działaniu rozproszonego systemu sterowania opisane zostały na przykładzie czterech zaprojektowanych, wykonanych i zaprogramowanych urządzeń kontrolno-pomiarowych i sterujących. Są to: miernik temperatury, nastawnik, urządzenie wejść cyfrowych oraz zintegrowane urządzenie testowe. Do konstrukcji wszystkich modułów wykorzystano tanie i popularne układy scalone, które mogą być łatwo i szybko wdrożone do produkcji seryjnej. Miernik temperatury - ma możliwość cyfrowego pomiaru temperatury oraz ustawiania wartości temperatury zadanej dla urządzenia wykonawczego, np. modułu sterownika współpracującego z elektrozaworem, wiatrakiem lub innym urządzeniem dodatkowo zasilanym napięciem 230V. Układ ten oparty jest na mikrokontrolerze AT90S2313 firmy ATMEL. Pomiar temperatury dokonywany jest przy użyciu układu DS1820 firmy DALLAS, który jest cyfrowym scalonym miernikiem temperatury. Zmierzona wartość jest przesyłana do układu mikrokontrolera za pomocą magistrali jednoprzewodowej 1-Wire. DS1820 mierzy temperaturę z dokładnością do 0,5 stopnia Celsjusza i transmituje ją jako siedmiobitową informację w kodzie U2. Aby układ działał poprawnie zasilany jest dokładnym napięciem o wartości 5V. Napięcie to pochodzi ze źródła odniesienia LM 385. Takie rozwiązanie uniezależnia działanie układu DS1820 od wahań napięcia Ucc. Urządzenie komunikuje się z pozostałymi elementami sieci przy wykorzystaniu DS75176. Miernik wyposażony jest w dwa klawisze służące do nastawiania temperatury zadawanej. Temperatura mierzona i zadawana podawana jest na wyświetlaczu LCD 3,5 cyfry. Sterowanie wyświetlacza odbywa się przy użyciu specjalistycznego drivera wyświetlaczy LCD. Wspomniany driver to układ PCF8577 firmy Philips. Komunikacja poprzez sterownik LCD – Atmel odbywa się przy wykorzystaniu standardu magistrali I2C sprzętowo zaimplementowanej w układzie PCF8577 [24].. 22.

(23) Rozdział 2 – Warstwa sprzętowa. 1. 2. 3. 23. 4. Rysunek 2.5. Miernik temperatury. Elementy elektroniczne urządzenia do pomiaru temperatury rozmieszczone zostały na dwóch płytkach drukowanych. Pierwszą stanowi płytka uniwersalna, używana również w innych urządzeniach kontrolno pomiarowych i sterujących. Jest to moduł z mikrokontrolerem, elementami odpowiedzialnymi za komunikację, układ zasilający oraz złącze RJ45. Na płytce drugiej zgrupowano akcesoria typowe dla miernika temperatury, jak wyświetlacz LCD, układ Dallas do pomiaru temperatury aktualnej oraz przyciski. Realizacją wszystkich funkcji miernika temperatury wymienionych powyżej połączonych układów elektronicznych zajmuje się program główny napisany w niskopoziomowym środowisku assembler. Dwa kilobajty pamięci FLASH mikrokontrolera AT90S2313 zostały optymalnie wykorzystane dzięki temu środowisku. Dużą część programu oprócz kodu opisującego komunikację w sieci RS485 i wyświetlacza LCD przez magistralę I2C, zajmują algorytmy do pomiaru temperatury aktualnej[24]. Napięcie zasilające doprowadzane jest z sieci. Wejściowe napięcie 12V jest stabilizowane przez układ 7805, na którego wyjściu dostajemy napięcie 5V do zasilania układów scalonych. Głównym elementem miernika temperatury oraz nastawnika jest procesor ATMEL AT90S2313. Nastawnik - jest często używanym modułem sieci RS485 umożliwiającym obsługę zadajników. Bezpośrednio do wyjścia procesora dołączony jest tranzystor, który w swym obwodzie kolektorowym zawiera wejściowe uzwojenie przekaźnika. Obwód przekaźnika zabezpieczony został diodą, która w przypadku nagłej zmiany prądu chroni układ przed zniszczeniem.. Rysunek 2.6. Nastawnik.

(24) Rozdział 2 – Warstwa sprzętowa Wysterowane wyjście przekaźnika dostarcza napięcie, które umożliwia włączanie urządzeń typu głowice cieplne, zamki elektromagnetyczne oraz inne urządzenia elektroniczne. Dzięki niewielkim wymiarom nastawnika możliwe jest wbudowanie go w urządzenie, którym on sam steruje. Dodatkowy przekaźnik może sterować urządzeniami zasilanymi napięciem 230V. Jako przykład wymienić możemy: grzejnik elektryczny, wiatrak, listwę zasilającą, syrenę alarmową oraz przedstawioną na zdjęciu poniżej lampę elektryczną. Idea integrowania nastawnika w urządzenia elektryczne codziennego użytku, możliwa jest do realizacji dzięki dwóm wspominanym już wcześniej czynnikom. Są to nieduże koszty wyprodukowania oraz prostota przy podłączaniu i konfiguracji. Nastawnik wykorzystywany jest we wszystkich opisanych w pracy podsystemach, w zależności od jego rodzaju załączane są inne urządzenia zewnętrzne. W podsystemie sterowania centralnym ogrzewaniem załączany jest elektrozawór kaloryfera, w podsystemie alarmowym jest to syrena dźwiękowa oraz w podsystemie sterowania oświetleniem są to lampy elektryczne.. Rysunek 2.7. Lampka z wbudowanym nastawnikiem - sieć RS485. Urządzenie wejść cyfrowych – pozwala sprawdzać stan podłączonych obwodów, które mogą przyjmować dwie wartości: 1- zamknięty oraz 0 - otwarty. Każdy taki stan jest odnotowywany i przesyłany w sieci RS485 do węzła. Podłączane obiekty to takie, które generują wartości dyskretne, dla przykładu możemy wymienić: przełączniki, wyłączniki, czujki ruchu, czujniki otwartych drzwi i okien, dymu, światła oraz wiele innych. Najczęściej urządzenia wejść cyfrowych działają w połączeniu z nastawnikami w ramach podsystemu antywłamaniowego lub sterowania oświetleniem. Różne urządzenia podłączone do jednego modułu cyfrowego mogą być kojarzone programowo z wieloma nastawnikami realizującymi odmienne zadania. Urządzenie wejść cyfrowych to moduł składający się z dwóch płytek drukowanych oraz pomocniczego wyświetlacza LCD. Płytka główna wyposażona została w mikrokontroler o lepszych parametrach w stosunku do urządzeń opisanych wcześniej, jest to ATMega32. Oprócz zespołu elementów odpowiedzialnych za transmisję danych w sieci RS485 jest również zastosowany ośmiokrotny przełącznik, dzięki któremu możemy ustawić ręcznie identyfikator urządzenia. W innych urządzeniach wartość identyfikatora była ustawiana jednorazowo na etapie programowania mikrokontrolera.. 24.

(25) Rozdział 2 – Warstwa sprzętowa. Rysunek 2.8. Urządzenie wejść cyfrowych. Płytka rozszerzająca grupuje podzespoły odpowiadające za podłączanie urządzeń zewnętrznych oraz konwersje danych dyskretnych i przesłanie ich do mikrokontrolera ATMega. Wejścia urządzenia odseparowane zostały od reszty układu przez cztery transoptory LTV847, które zabezpieczają go od przepięć pochodzących z zewnątrz. Zintegrowane urządzenie testowe - to zespół układów elektronicznych grupujących w sobie kilka modułów występujące również w systemie jako oddzielne urządzenia, są to: nadajnik podczerwieni, moduł przekaźników, moduł termometru, moduł wejść cyfrowych, moduł klawiatury i wyświetlacza. Głównym zadaniem całego układu jest szybkie prototypowanie urządzeń kontrolno-pomiarowych, ponieważ tworzenie prototypów dla każdego urządzenia oddzielnie jest czynnością czasochłonną jak i kosztowną. Do zestawu dołączona została bogata biblioteka funkcji umożliwiających tworzenie interfejsów użytkownika, obsługę timerów, tworzenie wątków, notyfikacji i wiele innych. Fizyczne urządzenie zaprojektowane zostało w dwóch częściach, jako płytka bazowa oraz płytka rozszerzająca. Głównym elementem płytki bazowej jest popularny mikrokontroler ATMega128. Udostępnia on bogate zasoby pamięciowe oraz obliczeniowe. Poprzez porty wejściawyjścia możliwe jest podłączenie czujników i elementów wykonawczych. Najistotniejsze elementy tego modułu to: - Statyczna pamięć operacyjna SRAM (32 KB) [5], [24], - Pamięć nieulotna DateFlash firmy Atmel, - Transceiver RS485, - Złącza: sygnałowe oraz ISP [24]. Płytka bazowa jest modułem uniwersalnym, który może być wykorzystany do budowy innych urządzeń. Elementem uzupełniającym jest płytka rozszerzająca, na której rozmieszczono podzespoły, dzięki którym możliwa jest realizacja funkcji kontrolno pomiarowych i sterujących. Najważniejsze to: - wyświetlacz LCD, - wejścia cyfrowe wykorzystywane np. do podłączenia czujek ruchu, - przyciski sterujące, - diody na podczerwień, - czujniki do pomiaru temperatury. Przyciski oraz wyświetlacz LCD służą do przeglądania i konfiguracji aktualnych parametrów urządzeń. Większość elementów na płytce rozszerzającej zasilanych jest. 25.

(26) Rozdział 2 – Warstwa sprzętowa bezpośrednio z sieci RS485. Wyjątkiem jest obsługa przekaźników, która wymaga podłączenia napięcia sieciowego 230V. Dodatkowe zasilanie pozwala wyeliminować nadmierne obciążenie układów zasilających moduł bazowego co zwiększa stabilność pracy urządzenia. Niezwykle istotną częścią zintegrowanego urządzenia testowego jest oprogramowanie dla mikrokontrolera ATMega128. Dołączona biblioteka funkcji ułatwia tworzenie oprogramowania dedykowanego dla urządzeń wbudowanych. Są to funkcje do obsługi timerów, procesów, wyświetlacza LCD, sensorów, przycisków, przesyłania zdarzeń oraz interfejsu użytkownika. Dzięki temu możemy implementować nowe sterowniki urządzeń zewnętrznych bez potrzeby pisania od podstaw własnych procedur. Zintegrowane urządzenie testowe pozwala implementować wiele urządzeń wirtualnych w jednym fizycznym module dzięki znacznym rozmiarom pamięci operacyjnej [23].. Rysunek 2.9. Zintegrowane urządzenie testowe. 2.3. Podsystemy Zadania rozproszonego systemu sterowania mogą być realizowane przez pojedyncze urządzenia kontrolno pomiarowe i sterujące, jednak najlepsze efekty pracy otrzymamy, łącząc je w grupy. Każda taka grupa współpracujących urządzeń może działać, wykonując zadania przypisane dla konkretnego podsystemu. Aby pokazać współdziałanie modułów przy wymianie informacji oraz całą koncepcje programowych połączeń między nimi, utworzono trzy podsystemy działające w ramach systemu automatyki budynku. Są to: - podsystem sterowania centralnym ogrzewaniem, - podsystem sterowania oświetleniem, - oraz podsystem antywłamaniowy. Pierwszą grupę stanowią dwa urządzenia: miernik temperatury oraz nastawnik sterujący elektrozaworem kaloryfera. Stan nastawnika uzależniony jest od wartości temperatury aktualnej oraz zadanej. Gdy temperatura aktualna jest wyższa od zadanej, nastawnik przechodzi w stan niski i wyłącza zawór. Gdy temperatura aktualna jest niższa od zadanej o wartość histerezy, nastawnik przechodzi w stan wysoki i załącza zawór. Domyślną wartością histerezy jest jeden stopień Celsjusza. Podsystem sterowania centralnym ogrzewaniem pozwala sterować pracą pojedynczych kaloryferów, dzięki czemu możliwe jest dostosowanie temperatury powietrza w poszczególnych pomieszczeniach do indywidualnych wymagań użytkowników.. 26.

(27) Rozdział 2 – Warstwa sprzętowa Dodatkowe, zanegowane wyjście nastawnika pozwala podłączyć urządzenie, które działa odwrotnie jak opisane powyżej. Na przykład, wiatrak lub klimatyzator będzie załączany w sytuacji gdy mierzona temperatura aktualna przekroczy wartość zadaną oraz wyłączony gdy zostanie obniżona poniżej ustalonej wartości. Kolejny podsystem steruje oświetleniem na podstawie danych o obecności osób w pomieszczeniu. W tym przypadku nastawnik zarządzający oświetleniem jest programowo skojarzony z urządzeniem wejść cyfrowych. Jak sama nazwa wskazuje, podłączone urządzenia to takie, które zamykają lub otwierają obwód. Daje to duże możliwości wykorzystania np. wyłączników, przełączników, czujek ruchu i wielu innych. Konfiguracja podsystemu polega na wybraniu konkretnych czujek oraz skojarzeniu ich z urządzeniem nadrzędnym, sterującym jedną lampą lub całą grupą. Dodatkowe bardzo przydatne parametry to opóźnienie czasowe załączanych i wyłączanych lamp lub innych urządzeń zasilanych napięciem 230V. Rola tego podsystemu w funkcjonowaniu nowoczesnego budynku to przede wszystkim zwiększenie oszczędności energii elektrycznej bez obniżenia jakości życia użytkowników. Załączanie oświetlenia lub wybranych urządzeń np. w domowym salonie, może odbywać się na podstawie danych o obecności domowników w przylegających pomieszczeniach np. w przedpokoju lub na klatce schodowej. Informacje o obecności osób w pomieszczeniu służą również do sterowania urządzeniami nadrzędnymi wysyłającymi dane w paśmie podczerwieni. W efekcie zapobiega to nieuzasadnionemu używaniu np. sprzętu RTV jak telewizory, radioodtwarzacze i inne. Działanie tego podsystemu oparte jest na prostej logice mówiącej, jeśli w pomieszczeniu lub jego pobliżu niema ludzi, należy wyłączyć wybrane urządzenia, odcinając dopływ energii lub wyłączając wiązką podczerwieni. Podsystem antywłamaniowy to ta sama grupa narzędzi sprzętowych co opisany powyżej. Nastawnik załącza syrenę alarmową, gdy urządzenie wejść cyfrowych odnotuje sygnał od podłączonych i skojarzonych w podsystemie czujek ruchu, czujników w drzwiach lub oknach. Źródłem danych może być nowy zaprojektowany system czujek i czujników lub istniejący wykorzystywany w innych równolegle działających systemach antywłamaniowych używany wcześniej, jeszcze przed instalacją systemu OpenLon. Opisany powyżej przykład praktycznego wykorzystania narzędzi warstwy sprzętowej nie jest ostateczną propozycją i może być rozwijana i używana z wieloma innymi układami elektronicznymi, jeśli zaproponowana logika zaprogramowanych podsystemów pozwala na jego podłączenie. Łączenie działających podsystemów z narzędziami warstw wyższych, pozwala w pełni wykorzystać ich możliwości np. do: zdalnej wizualizacji, harmonogramowania zadań, konfiguracji.. 2.4. Programowa obsługa pakietów w sieci RS485 We wszystkich urządzeniach kontrolno pomiarowych, obsługą transmisji danych zajmują się funkcje uruchamiane z poziomu mikrokontrolera Atmel2313 lub ATMega128. Jednym z ich zadań jest ustalanie kierunku transmisji danych w sieci RS485. Domyślnym trybem układu SN75176 po włączaniu urządzenia jest tryb odbioru, w którym oczekuje na pakiet wysłany z węzła. Po zmianie trybu na nadawanie, tylko jedno urządzenie w danej chwili może wysłać pakiet do układu nadrzędnego jakim jest węzeł.. 27.

(28) Rozdział 2 – Warstwa sprzętowa. 28. Format ramki danych w sieci RS485 ma następującą postać: 2. ID. LEN. CMD. DANE 0 .... n. CHKSUM. Pierwszy bajt przesyłanego pakietu ma wartość 2 i jest traktowany jako bajt startowy. Jeżeli w analizowanym pakiecie pojawi się inny bajt o wartości 2, wówczas jako kolejny musi pojawić się bajt o wartości 0. W przeciwnym razie pakiet potraktowany zostanie jako błędny i wyszukiwanie początkowej sekwencji startowej rozpocznie się od początku. Drugim w kolejności bajtem jest ośmiobitowy identyfikator urządzenia kontrolopomiarowego, który może przyjmować wartości z zakresu od 3 do 255. Informacje o pełnej długości pakietu przechowuje następny bajt nazwany jako LEN. Minimalna jego wartość wynosi 5 bajtów, a maksymalna to 16 bajtów. Wliczane są tutaj zarówno dane, jak i meta dane. Po bajcie opisującym długość pakietu następuje znacznik komendy CMD wysyłanego do urządzenia. Komendą może być polecenie wykonania czynności lub zapytanie o stan wejść lub wyjść urządzenia. Kolejne pole danych traktowane jako opcjonalne, może przechowywać dodatkowe informacje, np. wartości parametrów ustalonych lub zmierzonych. Na końcu pakietu występuje jeden bajt oznaczający sumę kontrolna danych. Jego wartość jest porównywana z wartością obliczaną po odczytaniu danych w module docelowym. Suma kontrolna obliczana jest jako suma wszystkim bajtów pakietu modulo 256. Obsługa protokołu transmisji danych realizowana jest jako maszyna stanów skończonych (ang. Finite State Machine). Zaraz po inicjalizacji portu RS485, urządzenie przechodzi w tryb odbioru i oczekuje na nadchodzący bajt danych. Gdy bajt pojawi się na porcie, zerowany jest timer odliczający maksymalny czas oczekiwania na pakiet oraz realizowana jest następująca procedura obsługi pakietu: Stan 0 - Urządzenie oczekuje na bajt startowy. Gdy bajt ten będzie odebrany urządzenie przejdzie do stanu 1. W przypadku gdy bajt startowy nie zostanie odnotowany inkrementowany jest licznik błędnych pakietów. Rozpoczyna się oczekiwanie na odbiór kolejnego bajtu. Stan 1 - Sprawdzany jest identyfikator urządzenia. Gdy identyfikator mieści się w zakresie wartości zarezerwowanych dla fizycznych i wirtualnych urządzeń, następuje zmiana stanu do nr 1. W sytuacji gdy identyfikator jest nieznany, cały pakiet zostaje potraktowany jako błędny i procedura obsługi pakietu powraca do stanu 0. Stan 2 – Kolejną czynnością jest odczytanie długości pakiety. Jeśli wartość bajtu z informacją od długości pakietu jest mniejszy od minimalnej długości równej 5 lub jest większa od wartości maksymalnej równej 16, pakiet jest traktowany jako nieprawidłowy i jest odrzucany. Urządzenie powraca do stanu 0. Gdy długość pakietu jest prawidłowa następuje przejście do stanu 3. Stan 3 - W tym stanie znajduje się mechanizm obsługi bloku komendy oraz danych. Jeśli odebrana wartości jest równa 2 urządzenie przechodzi do stanu 4. W przeciwnym razie kolejno odebrane bajty danych zostaną dodane na koniec bufora wejściowego, wykorzystywanego przez późniejszą procedurę obsługi pakietu. Gdy liczba odczytanych bajtów jest równa wartości długości pakietu,.

(29) Rozdział 2 – Warstwa sprzętowa sprawdzana jest suma kontrolna danych. Nieprawidłowa wartość sumy kontrolnej powoduje, iż pakiet traktowany jest jako błędny i procedura powraca do stanu 0. Pozytywny wynik weryfikacji poprawności pakiety pozwala na przejście do stanu 5. W tym czasie blokowane zostaje przerwanie odbioru danych, alby zapobiec generowaniu kolejnych przerwań po odbiorze danych przez USART. Stan 4 – Gdy wartość odebranego bajtu będzie równa 2, sprawdzane jest czy kolejną wartością jest 0. Jeśli wynik jest pozytywny wartość 2 dodana zostanie na koniec wejściowego bufora danych oraz nastąpi skok do stanu 3. Stan 5 – Stan ten działa na bazie oddzielnego procesu i jest odpowiedzialny za obsługę odebranych pakietów oraz monitorowanie maksymalnego czasu ich nadejścia. Timer uruchamiany jest co 1ms, jednak na ostateczny czas wpływa opóźnienie spowodowane zajętością procesora obsługującego inne procedury. Następnym krokiem jest uruchomienie mechanizmu przekazującego obsługę pakietu do procedur zarządzających właściwymi urządzeniami fizycznymi. Każdy poprawnie obsłużony pakiet, odebrany przez urządzenie kontrolno pomiarowe, musi być potwierdzony odpowiedzią do węzła sieci OpenLon – stan 6. W przypadku braku odpowiedzi następuje retransmisja pakietu ze strony węzła. Stan 6 – Wysyłanie danych zostaje zainicjowane przez przełączenie drivera RS485 w tryb nadawania, odblokowany zostaje nadajnik RS485 oraz przerwanie gotowości do nadania następnego znaku, które przejmuje dalszą kontrolę nad transmisją. Podczas wysyłania danych używane jest dwa przerwania SIG UART1 DATA oraz SIG UART1 TRANS. Gdy nadawany jest ostatni bajt danych blokowane zostaje przerwanie SIG UART1 DATA sygnalizujące gotowość do nadania następnego znaku i włączane jest przerwanie SIG UART1 TRANS uruchamiane po zakończeniu transmisji znaku. Jest to niezbędne, gdyż mikrokontroler musi poczekać na zakończenie transmisji przed przełączeniem układu w stan odbioru [5], [24]. Stan 7 – Gdy procedura wysyłania danych napotka na bajt o wartości 2, dodany zostanie następny bajt o wartości 0. Po tej operacji urządzenie przechodzi z powrotem w stan 6. W przypadku gdy urządzenie znajduje się w stanie niższym niż 5, zwiększany jest licznik timera. Gdy timer zostanie uruchomiony cztery razy po minimalnym czasie czterech milisekund, następuje zresetowanie stanów i powrót do stanu 0. Timer ten jest również resetowany przy każdym odbiorze bajtu danych oraz przy resetowaniu sterownika RS485[23].. 2.5. Redundancja urządzeń Jednym z głównych celów, jaki przyświecał podczas tworzenia omawianego systemu było zwiększenie niezawodności pracy urządzeń z minimalnym udziałem człowieka oraz rozwiązywanie zaistniałych problemów bez potrzeby korzystania z pomocy wykwalifikowanych specjalistów. Duży wpływ na realizację tego celu miało zaprojektowanie i zastosowanie mechanizmu redundancji na poziomie warstwy sprzętowej.. 29.

(30) Rozdział 2 – Warstwa sprzętowa W razie wystąpienia awarii jednego urządzenia jego funkcję przejmuje inne pełniące role pomocniczego. Odbywa się to w sposób ciągły bez utraty danych, również wtedy gdy uszkodzony obiekt jest częścią podsystemu połączony relacjami z innymi urządzeniami. Podczas, gdy urządzenie główne nie odpowiada na przesyłane pakiety lub wysyła informacje o jego błędnej pracy, kopiowane są wartości parametrów ustalonych do urządzenia zapasowego. Szybkie przejęcie do roli urządzenia głównego to zasługa użytego rozwiązania zamiany deskryptorów tych obiektów w głównym programie komunikacyjnym węzła OpenLon [26], [30], [39]. Działanie mechanizmu redundancji przedstawia opisany poniżej przykład trzech urządzeń kontrolno pomiarowych podłączonych do węzła LON. Użyte obiekty to dwa mierniki temperatury o identyfikatorach: 3 i 4 oraz nastawnik id: 24, skonfigurowane do pracy w podsystemie sterowania centralnym ogrzewaniem.. ID: 3. ID: 4. ID: 24. Rysunek 2.10. Sieć RS485 z podłączonymi trzema urządzeniami (dwa mierniki temperatury i jeden nastawnik). Łatwy i szybki dostęp do zasobów sieci RS485 z aktualnymi wartościami parametrów możliwy jest z poziomu warstwy lokalnego serwera komunikacyjnego. Jest to aplikacja napisana na potrzeby rozproszonego systemu sterowania, ułatwiająca konfigurację warstwy sprzętowej poprzez graficzny interfejs użytkownika. Odwzorowanie rzeczywistej struktury sieci RS485 przedstawia rysunek 2.11.. a).. b).. Rysunek 2.11. Redundancja urządzeń przedstawiona w projekcie sieci RS485 – ConfinNetRs, a) praca urządzenia głównego ID-3, b) praca urządzenia zapasowego ID-4. Podczas normalnej pracy podsystemu, nastawnik id:24 zmienia swój stan w zależności od temperatury zarejestrowanej przez miernik id:3. Obiekt id:4 skojarzony został jako zastępczy miernika id:3. Graficznie przedstawia to czerwona linia łącząca redundantne urządzenia w górnej ich części. Zapis „1-4” oznacza: 1- urządzenie pierwsze (główne) 4-to identyfikator urządzenia zastępczego oraz zapis 2-3 analogicznie oznacza: 2-miernik pomocniczy (drugi) oraz 3-identyfikator urządzenia głównego.. 30.

(31) Rozdział 2 – Warstwa sprzętowa Podczas awarii miernika temperatury id:3 jego funkcję przejmuje obiekt id:4. W tym czasie kopiowane są wartości ustalone do urządzenia zastępczego. W omawianym przykładzie jest to wartość temperatury zadanej 28oC. Awaria urządzenia lub jego odłączenie od sieci sygnalizowane jest kolorem czerwonym. Po usunięciu awarii lub zamianie i ponownym podłączeniu obiektu do sieci urządzenie zaczyna pracować jako główne. W sytuacjach wymagających zwiększenia niezawodności, konfiguracja programowa pozwala zwiększyć liczbę urządzeń zapasowych do czterech. Każde z nich może być podłączone do węzła niezależnymi przewodami co zmniejszy ryzyko rozłączenia wszystkich urządzeń naraz [30], [39].. 31.

Cytaty

Powiązane dokumenty

• Zasada działania elektrycznych czujników wilgotności oparta jest na zastosowaniu substancji lub złożonych układów, które absorbują lub tracą wilgoć przy

• W klimatyzacji i ciepłownictwie znalazły szerokie zastosowanie jako urządzenia zabezpieczające przed niedopuszczalnym spadkiem lub wzrostem temperatury (termostaty) oraz

• Zasada działania elektrycznych czujników wilgotności oparta jest na zastosowaniu substancji lub złożonych układów, które absorbują lub tracą wilgoć przy zmianie

Uczestnicy przedsięwzięcia – dzieci, młodzież i ich ro- dzice i opiekunowie – będą mogli wziąć udział w krót- kich wykładach, warsztatach praktycznych, zajęciach

Ufam, że wyniki naszych badań choć w niewielkim stopniu przyczynią się do poznania wspaniałego daru języka, który dany jest człowiekowi i wspólnocie dla realizacji

Strzelczyk), fenom en kulturowo-językowej tożsamości i jego ewo­ lucja na przykładzie j, czeskiego (G, P, Neścimenko), zw iązek tożsam ości osobowej z akwizycją

Nr albumu Kolokwium Zaliczenie Uwagi !!. Nr albumu Kolokwium Zaliczenie

według [5], która posłuży do określenia odpowiedniej liczby personelu obsługi, niezbędnej do utrzymania systemu stero- wania w stanie gotowości oraz liczby elementów