W dziedzinie przemysłowego Internetu rzeczy za programowalnym sterownikiem logicznym znajduje się tak wiele przemysłowych urządzeń podrzędnych, że nie mają one żadnego adresu IP ani tożsamości, jak mielibyśmy odwzorować tożsamość tych urządzeń i ich kontrolę nad poziomem aplikacji na Chmura. Na przykład zamierzam użyć rasberrypi jako bramy, ta brama jest połączona ze sterownikiem PLC. Za sterownikiem PLC połączonych jest wiele urządzeń podrzędnych, takich jak wentylatory, światła LED, czujniki CO2.
Jestem bardzo nowy w PLC i protokole modbus , nawet po przeczytaniu wstępu wciąż mam pytania, główne pytanie brzmi: w jaki sposób możemy zarejestrować i mapować urządzenia podrzędne do bramki i wreszcie do warstwy aplikacji IOT. a pod głównym pytaniem znajduje się wiele małych pytań, na które należy odpowiedzieć
- jak mogę określić adres dla każdego urządzenia, czy jest ono ustalane ręcznie, czy może zostać wykryte z urządzenia podrzędnego?
- jeśli jedno urządzenie podrzędne jest niesprawne, jak możemy je znaleźć?
źródło
modbus discover devices
Odpowiedzi:
Patrząc na kody funkcji Modbus na wikipedii
Określ adresy
Możesz zapytać o kody funkcji Zgłoś identyfikator urządzenia podrzędnego 17 i Przeczytaj identyfikator urządzenia 43.
Chociaż Twoje urządzenia mogą nie obsługiwać tej funkcji i powrócić z kodem wyjątku 1 (funkcja nielegalna). Jeśli nie otrzymasz żadnej odpowiedzi, urządzenie jest wyłączone lub identyfikator nie jest zajęty.
Możesz wymienić te urządzenia na swoim Raspberry Pi. Możesz więc utworzyć listę z wartościami: ID + identyfikacja, ID zestaw, ID nie ustawiony.
W przypadku Modbus / TCP to łącze może być przydatne.
Znalezienie urządzenia jest dysfunkcyjne
Aby dowiedzieć się, czy jest to dysfunkcyjne, możesz od czasu do czasu sondować diagnostykę i nasłuchiwać komunikatów o wyjątkach.
Jeśli nie otrzymasz wiadomości z powrotem, może to również wskazywać na problem (jeśli identyfikator był wcześniej podłączony do urządzenia).
źródło
„Mapowanie” PLC zostanie wykonane za pomocą zmiennych zmiennych.
Zmodyfikujesz zmienne, a następnie przekierujesz dane przez dowolny protokół, w tym przypadku przez Modbus. Sprawdź Advantech WISE-4060
Alternatywnie, możesz mieć OPC działający w sieci, w której ciągniesz tagi danych i ich statusy.
źródło
Spójrz na Node-Red. Działa na RPI, a jeden z zestawów węzłów obejmuje prawie wszystko, co chcesz zrobić z Modbus. Jest to oprogramowanie typu open source i możesz pobrać działający obraz i uruchomić skrypt, aby rozpocząć.
Niedawno stworzyłem z niego system kontroli wody i temperatury, który był szybki i łatwy.
Jeśli chodzi o odkrycie, obawiam się, że prawdopodobnie będzie to podobne do czyszczenia strychu babci. Wystarczy przejść przez to wszystko jedno pudełko na raz! Z RPI w sieci, otwiera świat łączności, ponieważ Node-Red może obsługiwać bazę danych, Twitter, e-mail, MQ i każdy inny protokół, jaki możesz sobie wyobrazić. Ponadto wszystkie dane mogą znajdować się na stronie internetowej, po prostu upuszczając kilka węzłów na kanwie i przeciągając przewody między nimi.
źródło