Komunikacja ze sterownikiem za pomocą modemu 3G

30.09.2019 How to /
Komunikacja ze sterownikiem za pomocą modemu 3G
Wizerunek autora
Paweł Łoziński Były pracownik Elmark Automatyka S.A.

Ze względu na duże zainteresowanie, dzisiejszy wpis opisuje przykładowe zastosowanie jakim jest komunikacja ze sterownikiem za pomocą modemu 3G

Czemu warto zastosować modem 3G w projekcie?

Modem 3G pozwala nam zdalne sterowanie sterownikiem PLC w prosty sposób. Zasięg sieci jest dostępny praktycznie na całym świecie. Jedyne urządzenie, którego będzie potrzebował operator, do wprowadzenia wymaganych zmian, to telefon. Modem pozwala nie tylko na wysyłanie komend do sterownika ale również umożliwia dwustronną komunikacje. Jest to kluczowe do sprawnego uzyskiwania informacji na temat stanu urządzenia lub o problemach w procesie produkcyjnym.

Zastosowane elementy

Wsród zastosowanych elementów znajduje się modularny sterownik PLC z serii UniStream, modem 3G Cinterion EHS6 i moduł rozszerzający o port dwa porty RS232.

Program sterujący modemem 3G

Tworzenie programu sterującego zaczynamy od dodania konfiguracji modemu. Szczegółowy opis tego procesu znajdą Państwo w 24. części Akademii PLC.

Po skonfigurowaniu urządzenia, przystępujemy do tworzenia programu LD. Zależy nam na tym, aby jednym przyciskiem zainicjować pracę modemu, ustawić odbiór konkretnych wiadomości, oraz przystosować program do analizy tych wiadomości.

https://www.youtube.com/watch?v=15RgLMrcX4w

Inicjalizacja modemu

Pierwszym krokiem będzie inicjalizacja modemu. W tym celu wybieramy zestyk reagujący na narastające zbocze (P). Dzięki temu po naciśnięciu przycisku mamy pewność, że inicjalizacja nastąpi tylko raz (każda nowa inicjalizacja przerywa działanie modemu). Następnie wybieramy blok "Init Modem", do złącza A wpinamy nasz modem, z którego chcemy korzystać, a do złącza B funkcje "ModemsCommands.None".

Wykrywanie wiadomości

Sterownik musi wykryć, że modem otrzymał wiadomość SMS. Posłużymy się do tego bardzo prostym rozwiązaniem - blokiem "Greater Than". Do złącza A wpinamy tag "Modem1.SMS.RecivedQueue" (tag odpowidzialny za zapis kolejki wiadomości), a do bloku B wartość 0. Pozwoli nam to na załączanie cewki SMS Mgs Ext gdy przyjdzie wiadomość.

Odbieranie SMS

Teraz, gdy wiemy że czeka na nas wiadomość na karcie SIM, musimy zapisać ją do specjalnej sekcji pamięci sterownika. Służy do tego blok Receive SMS. Inicjujemy blok poprzez stan wysoki cewki SMS Mgs Ext. Do terminala A podpinamy modem, do wyjścia B - Buffer w którym chcemy trzymać wiadomość, C - długość wiadomości, D - Metadane wiadomości.

Analiza wiadomości

Do analizy przysłanej wiadomości wykorzystamy blok Prase Message. Zasada jego działania została opisana w wyżej linkowanym artykule. Do złącz A, B, C, wpinamy omawiane już Tagi, do złącza D - CPU Protocols.Device1 (służy nam do porównywania wiadomości, opisane w 24. części Akademii), a do wyjścia E - tag Msg index.

Ekran HMI

Na potrzeby projektu stworzyliśmy prosty ekran HMI, na którym wyświetlamy najpotrzebniejsze informacje komunikacyjne takie jak: połączenie Modemu do sterownika przez złącze szeregowe, połączenie modemu do sieci GSM oraz zasięg. Wszystkie te parametry możemy znaleźć w strukturze modemu.

Komunikacja ze sterownikiem za pomocą modemu 3G - Podsumowanie

W wyniku łatwej implementacji Modemu 3G do istniejącej już aplikacji, możemy mieć dostęp do informacji o stanie sterownika w dowolnym miejscu na ziemi. Z pewnością, jedną z największych zalet tego rozwiązania, jest jego niski koszt.

Skontaktuj się ze specjalistą Elmark

Masz pytania? Potrzebujesz porady? Zadzwoń lub napisz do nas!