Modbus, protokół: opis, zakres, zalety i wady

Modbus jest otwartym szeregowym protokołem komunikacyjnym. Zaprojektowany w 1979 roku do użytku z programowalnymi sterownikami PLC (PLC), jest obecnie szeroko stosowany do łączenia wielu typów przemysłowych urządzeń elektronicznych podłączonych do różnych typów sieci. Najczęściej stosowany protokół w całej automatyzacji przemysłowej. Modbus jest bardzo popularny. Jest to bardzo proste i łatwe w obsłudze urządzenie ze standardową komunikacją szeregową. W sieci Modbus każde urządzenie analizuje sieć jako zestaw cewek (bitów) i rejestrów. Kreator czyta i zapisuje te cewki i rejestry za pomocą bardzo prostego i zwięzłego zestawu poleceń. Komunikacja porusza się tylko w jednym kierunku.


Wdrożenie protokołu Modbus, ustanowionego w praktyce, jest bardzo krótkie. Chociaż istnieje dwadzieścia głównych zespołów, tylko niektóre z nich są naprawdę realizowane. Najczęstsze polecenia to odczytywane cewki, nagrywalne cewki, czytniki przypadku, instalacja rejestrów. Mały zestaw zespołów - kolejny powód popularności protokołu.

Modbus - Advanced Protocol

Konwerter protokołu jest szeroko stosowany z wielu powodów:
  • Modbus jest protokołem open source. Oznacza to, że może on być zawarty w szerokiej gamie typów urządzeń od dowolnego dostawcy sprzętu.
  • Wykorzystuje prostą strukturę wiadomości, która sprawia, że ​​wdrażanie jest mniej skomplikowane. Może wymagać wszystkiegokilka dni na wdrożenie. Jest to wyraźna przewaga konkurencyjna nad innymi protokołami, które mogą wymagać wielu miesięcy na zbadanie i wdrożenie.
  • Obsługuje połączenia szeregowe lub Ethernet.
  • Używany z dwoma typami połączeń szeregowych: RS-232 i RS-485. Niektóre wersje protokołu Modbus tcp mogą być również przesyłane przez Ethernet lub TCP /IP. Te komunikaty Modbus są pakowane jako pakiety jednobitowe lub 16-bitowe.
  • Protokół sieciowy Modbus nie jest częścią fizycznej warstwy sieci. Komunikacja jest transmitowana na poziomach fizycznych, co pozwala na wykorzystanie jej w wielu różnych typach sieci. Ta niefizyczna właściwość warstwy powoduje, że Modbus jest protokołem specyficznym dla aplikacji.



    Protokół przesyłania danych Modbus jest powszechnym sposobem gromadzenia danych z różnych źródeł w celu przeglądania operacji, archiwizacji i rozwiązywania problemów z centralnej lokalizacji zdalnej. Jest szeroko stosowany i jest dość prostą technologią. W zależności od programu nowszy protokół może przynieść więcej korzyści. Zazwyczaj komputer jest skonfigurowany do uruchamiania programów, takich jak Wonderware, Intellution lub LabVIEW w jednym miejscu, w celu gromadzenia danych z różnych procesów w przedsiębiorstwie. Inna aplikacja służy do konfigurowania zdalnych sterowników procesów produkcyjnych (PLC, Allen-Bradley, Siemens, PLCDirect i inne). Odpowiadać na różne poziomy lub tryby przesyłane z urządzenia.

    Dwa warianty protokołu

    Istnieją dwa warianty protokołu, które przechodzą przez kolejne połączenia. Jednym z nich jest protokół Modbus RTU. Opis tej opcji: jest bardziej kompaktowy,użyj łącza binarnego. W tym formacie transferowi danych zawsze towarzyszy cykliczna suma kontrolna nadmiarowości wykorzystywana do wykrywania problemów z transmisją.
    Druga opcja to Modbus ASCII. Ta wersja jest bardziej szczegółowa, wykorzystuje szesnastkowe kodowanie danych ASCII, które może odczytać operator. Modbus ASCII jest mniej bezpiecznym protokołem. Ponieważ jest on mniej wydajny niż Modbus RTU, operatorzy muszą używać ASCII tylko do przesyłania danych na urządzeniach, które nie obsługują formatu RTU. ASCII może być również przydatny, jeśli komunikat RTU nie może być poprawnie zastosowany.

    Protokół Modbus dla manekinów

    Modbus jest protokołem komunikacji szeregowej służącym do przesyłania informacji w liniach szeregowych między urządzeniami elektronicznymi. Jakie informacje o żądaniach są nazywane Master, a informacje o dostarczaniu urządzeń to Slaves. W standardowej sieci Modbus znajduje się jeden Master i do 247 Slave, z których każdy ma unikalny adres podrzędny od 1 do 247. Master może również rejestrować informacje w Slaves.

    Po co go używać?

    Modbus jest protokołem otwartym. Oznacza to, że producenci mogą umieścić go w swoim sprzęcie za darmo. Stało się standardowym protokołem komunikacyjnym w branży i jest obecnie najpowszechniejszym sposobem łączenia przemysłowych urządzeń elektronicznych. Jest szeroko stosowany przez wielu producentów w wielu branżach. Modbus jest powszechnie używany do przesyłania sygnałów z urządzeń i urządzeń sterujących z powrotem do głównego kontrolera lubSystem gromadzenia danych, na przykład system mierzący temperaturę i wilgotność, przekazuje wyniki do komputera. Modbus jest często używany do podłączenia komputera sterującego ze zdalnym terminalem (RTU) w systemach kontroli dyspozytorskiej i zbierania danych (SCADA). Istnieją wersje protokołu Modbus dla linii szeregowych (RTU i ASCII) oraz dla Ethernetu (TCP).

    Jak to działa?

    Modbus jest przesyłany szeregowo między urządzeniami. Najprostszą instalacją byłby kabel szeregowy, który łączy porty szeregowe na dwóch urządzeniach: Master i Slave. Dane są wysyłane do serii jednostek i zer, zwanych bitami. Każdy bit jest przesyłany jako napięcie, zera są dodatnie, a jednostki są napięciami ujemnymi. Nietoperze są bardzo szybkie. Typowa szybkość transferu wynosi 9600 bodów (bit na sekundę).

    Master /Slave

    Opisując protokół Modbus RTU odbywa się komunikacja między scentralizowanym urządzeniem przewodzącym, 247 podłączonymi urządzeniami elektronicznymi w tej samej sieci. Projekt jest zwykle nazywany protokołem "prowadzący /powiernik", ponieważ system główny prosi o informacje z podłączonych urządzeń zwanych "podwładnymi". Urządzenia Led wysyłają informacje tylko do wzorców w odpowiedzi na te zapytania, nie działają autonomicznie. Host może także rejestrować informacje o podległych urządzeniach, ale urządzenia podrzędne nie mogą zapisywać informacji na wiodącym urządzeniu. Kiedy zarządzane urządzenie przesyła komunikat Modbus, zaczyna generować komunikaty z unikalnym identyfikatorem adresu. Ta liczba wynosi od 1 do 247, co pozwala na wzorzecOkreśl, które konkretne urządzenie spełnia wymagane informacje.

    Komunikacja i urządzenia

    Każde urządzenie przeznaczone do komunikacji z Modbus ma przydzielony niepowtarzalny adres. W sieciach szeregowych tylko węzeł przypisany przez kreatora może zainicjować polecenie. W sieci Ethernet każde urządzenie może wysyłać polecenie Modbus, chociaż zwykle wykonuje tylko jedno połączenie przewodowe. Polecenie zawiera adres urządzenia, dla którego jest przeznaczone (od 1 do 247). Wszystkie polecenia zawierają informacje o sumach kontrolnych, aby umożliwić odbiorcy wykrycie błędów transmisji. Podstawowe polecenia Modbus wskazują RTU, aby zmienić wartość w jednym z jego rejestrów, kontrolować lub czytać port I /O, komenda jednostki wysyła jedną lub więcej wartości zawartych w swoich rejestrach z powrotem do urządzenia. Istnieje wiele modemów i bram obsługujących Modbus, ponieważ jest to bardzo prosty protokół i często jest kopiowany. Niektóre z nich zostały specjalnie zaprojektowane dla niego. Różne wdrożenia wykorzystują przewodową, bezprzewodową komunikację, na przykład, w zakresie ISM, a także usługę krótkich wiadomości tekstowych (SMS), a także usługę GPRS (General Packet Radio Service). Typowe problemy, przed którymi stoją projektanci, to problemy z dużym opóźnieniem i czasem.

    Przegląd typów rejestru Modbus

    Typy rejestrów, do których odnosi się urządzenie, obejmują: • cewkę (wyjście dyskretne);
    • wejście cyfrowe;
    • rejestr wejściowy;
    • rejestracja gospodarstwa.

    Kody funkcji

    Istnieją trzy kategorie kodów kodu Modbus:
  • Wspólne kody funkcji - od 1 do 127 dlaOprócz własnego kodu, przetestowanego przez społeczność Modbus, publicznie udokumentowane i gwarantowane unikalne.
  • Konfigurowalne kody funkcji są w dwóch pasmach od 65 do 72 od 100 do 110.
  • Zarezerwowane kody funkcji są używane przez niektóre firmy do przestarzałych produktów, które nie są publicznie dostępne.
  • Korzyści

    Niektóre zalety korzystania z protokołu Modbus:
  • Jeśli sterownik jest już zainstalowany, a użytkownik zna gniazda Ethernet i TCP /IP, sterownik może pracować i udostępniać dane z komputera w ciągu kilku godzin. Koszty rozwoju są uważane za niskie. Wymaga minimalnego sprzętu. Sterownik zgodny z dowolnym systemem operacyjnym.
  • Nie ma potrzeby stosowania "egzotycznych" zestawów chipów, więc system może wykorzystywać standardowe karty Ethernet do komunikacji z nowo wdrożonym urządzeniem. Wraz ze spadkiem kosztu sieci Ethernet koszty sprzętu maleją. Użytkownicy nie są powiązani z jednym usługodawcą, który może je wspierać, ale mogą korzystać z bieżących wydarzeń.
  • Specyfikacja jest dostępna do pobrania bezpłatnie, nie są wymagane żadne dodatkowe opłaty licencyjne wymagane do korzystania z protokołów Modbus.
  • Współdziałanie między urządzeniami różnych producentów i zgodność z zainstalowaną bazą zgodnych urządzeń.
  • Transpondery konwertera Modbus są drogie. Cena bram przemysłowych wynosi 1000 USD.

    Ograniczenia

    Ponieważ Modbus został opracowany pod koniec lat siedemdziesiątych w celu komunikacji z programowalną logikąkontrolerów, liczba typów danych jest ograniczona przez te, które były przez nią rozumiane w tym czasie. Duże obiekty binarne nie są obsługiwane. Nie ma standardowego sposobu witryny, aby znaleźć opis obiektu danych, na przykład w celu ustalenia, czy wartość rejestru jest wartością temperatury między 30 a 175 stopni.
    Ponieważ jest to protokół Modbus /zarządzany przez Modbus, urządzenie nie może "powiadamiać o wyłączeniach" (z wyjątkiem Ethernet TCP /IP, nazywanego open-mbus). Węzeł główny powinien regularnie otrzymywać dane z powiązanych urządzeń, a także szukać zmian w danych. Ładuje przepustowość, zwiększa czas połączeń sieciowych w aplikacjach, w których przepustowość może być droga, na przykład w kanałach o niskich szybkościach transmisji danych. Modbus ogranicza się do adresowania 254 urządzeń na jednej linii danych, ograniczając liczbę urządzeń, które można podłączyć do stacji roboczej (wyjątek stanowi Ethernet TCP /IP). Transmisje powinny być ciągłe, co ogranicza rodzaje zdalnych urządzeń komunikacyjnych do tych, które mogą buforować dane, aby uniknąć przerw w transmisji. Sam protokół Modbus nie zapewnia ochrony przed nieautoryzowanymi komendami lub przechwytywaniem danych. Ważne jest, aby zrozumieć, że w procesie przekazywania informacji występują błędy logiczne, a także związane z zakłóceniami w wymianie.

    Powiązane publikacje