Witam.
Od kilku lat w swoich projektach wykorzystujemy komputery przemysłowe MOXA. W większości przypadków są to układy automatyki przemysłowej - sterowania. Powoli rezygnujemy ze standardowych sterowników PLC na rzecz komputerów z wbudowanych systemem Linux. Chciałbym krótko podzielić się naszymi doświadczeniami w zakresie projektowania aplikacji i programowania systemów opartych na komputerach MOXA.
Poniżej krótki opis jednego z systemów sterowania.
Automatyka zbudowana na komputerze UC-7410-LX steruje i nadzoruje pracę stacji wody oczyszczonej w zakładzie farmaceutycznym (filtrowanie, oczyszczanie - odwrócona osmoza, dejonizacja, magazynowanie).
Dodatkowo oprócz panelu operatorskiego na szafie zainstalowano komputerowy system wizualizacji (monitoringu).
Do MOXY podłączyliśmy:
- system wizualizacji zainstalowany na PC z komunikacją RS485, MODBUS RTU.
- moduły IO (3x ADAM-4051, 2x ADAM-4056, 1x ADAM-4017) - RS485, MODBUS RTU.
- panel operatorski 6.2" - RS485, MODBUS RTU.
- komunikacja z pompami GRUNDFOS - RS485, protokół GeniBus
- komunikacja z przetwornikiem przepływu SIMEX - RS485, MODBUS RTU.
- komunikacja z regulatorem PID, LIM-9300 - RS485, MODBUS RTU.
- komunikacja z systemem odwróconej osmozy - RS485, MODBUS RTU.
- komunikacja z systemem dejonizacji - RS485, MODBUS RTU.
Przez moduły ADAM-4056 zapewnione jest sterowanie zaworami pneumatycznymi, pompkami dozującymi i innymi urządzeniami. Moduły ADAM-4051 odczytują stan wejść binarnych a moduł ADAM-4017+ zapewnia pomiar wartości analogowych (4-20mA).
Aplikacja napisana w C++, na klasach, oparta o wątki. Każdy element systemu (zawór, pompa, regulator PID, RO itd.) to obiekt odpowiedniej klasy. Takie podejście do tworzenia systemu umożliwia przeniesienie rzeczywistych urządzeń i ich cech, właściwości i funkcjonalności do programu (kodu źródłowego). Dalsza obsługa takich obiektów, jest prosta, intuicyjna i bezpieczna dla procesu projektowania.
Każdy moduł komunikacyjny obsługujący swój port szeregowy pracuje w osobnym wątku, do tego wątki obsługujące lokalny wyświetlacz LCD oraz wątek głównego procesu (w sumie 10 wątków).
Z ciekawostek na wyświetlaczu LCD MOXY jest możliwość podglądu:
- statusu systemu - czasu uruchomienia, czasu pracy systemu,
- czas obiegu ramek komunikacyjnych dla poszczególnych portów szeregowych,
- statusu urządzeń podłączonych do portów szeregowych,
- statusu dostępnej pamięci operacyjnej w systemie,
Programowanie systemu, pisanie aplikacji jest bardzo elastyczne, szybkie, precyzyjne i daje ogromne możliwości nieosiągalne w sterowaniach opartych na PLC programowanych w tradycyjny sposób.
W załączniku zdjęcie szafy sterowniczej.