Sterowania rozproszone z wykorzystaniem standardu sieci przemysłowej Modbus TCP



Podobne dokumenty
Sterowania rozproszone z wykorzystaniem protokołu EGD (Ethernet Global Data)

Konfiguracja panelu ASTRAADA HMI z sterownikiem ASTRADA ONE

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Politechnika Śląska w Gliwicach Instytut Automatyki 2005/2006

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

Sterowania rozproszone z wykorzystaniem standardu sieci przemysłowej ProfiNet

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie

DIGA Object Dictionary opis

1. Aplikacja LOGO! App do LOGO! 8 i LOGO! 7

EC4P Pierwszy program w 6 krokach

cmt + CODESYS, oraz zdalne wejścia/ wyjścia

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

Konfigurowanie sterownika CX1000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy z sterownikiem CX1000

Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie

INFORMATOR TECHNICZNY HORNER. Konfiguracja komunikacji GPRS pomiędzy sterownikiem XLe i oprogramowaniem Proficy HMI/SCADA Cimplicity

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

Systemy Czasu Rzeczywistego (SCR)

Konfigurowanie sterownika BC8150 firmy Beckhoff wprowadzenie

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Komunikacja sterownika PLC Fatek jako master w protokole ModBus RTU

Konfiguracja programu komunikacyjnego DAServer SIDirect do komunikacji ze sterownikami Siemens S7 300 i 400 po protokole Ethernet

Przykładowa konfiguracja komunikacji pomiędzy oprogramowaniem Wonderware i Codesys z wykorzystaniem sieci LAN lub modułu GSM

Materiały dodatkowe. Konfiguracja sterownika programowalnego Siemens do obsługi protokołu MODBUS. Opracowali: mgr inż.

Kod produktu: MP-W7100A-RS485

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

Telemetria. PTIB 2 semestr. Instrukcja do ćwiczenia GPRS i licznik energii elektrycznej

Sterowniki Programowalne (SP)

POLITECHNIKA WARSZAWSKA Wydział Elektryczny Instytut Elektroenergetyki Zakład Elektrowni i Gospodarki Elektroenergetycznej

Opracował: Jan Front

Kod produktu: MP-W7100A-RS232

NX70 PLC

Konfigurowanie sterownika BX9000 firmy Beckhoff wprowadzenie. 1. Konfiguracja pakietu TwinCAT do współpracy ze sterownikiem BX9000

Komunikacja z wykorzystaniem Protokołu TCP oraz funkcji AG_SEND/AG_RECV

Gromadzenie danych. Przybliżony czas ćwiczenia. Wstęp. Przegląd ćwiczenia. Poniższe ćwiczenie ukończysz w czasie 15 minut.

Konwerter RS-485->Ethernet [TCP/IP] CN-ETH-485 INSTRUKCJA [konfiguracja urządzenia do współpracy z programem MeternetPRO]

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Konwerter RS-485->TCP/IP [ethernet] ATC-1000 SZYBKI START [konfiguracja urządzenia do współpracy z programem Meternet]

Funkcje sterownika CellBOX-UxR ModBUS RTU

Artykuł : Aktualizacja ( Cscape 9.70 )

LABORATORIUM PRZEMYSŁOWYCH SYSTEMÓW STEROWANIA

1.10 MODUŁY KOMUNIKACYJNE

Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski SYSTEMY SCADA

Autorzy. Zespół SABUR Sp. Z o.o. Wydanie Data. Sierpień SABUR Sp. Z o. o. Wszelkie prawa zastrzeżone

Protokół Modbus RTU / Sieć RS-485

OBSŁUGA I KONFIGURACJA SIECI W WINDOWS

Schemat blokowy karty

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Konwerter RS-485->TCP/IP [ethernet] ATC-1000 SZYBKI START [konfiguracja urządzenia do współpracy z programem MeternetPRO]

INFORMATOR TECHNICZNY WONDERWARE

Konfigurowanie sterownika CP6601 firmy Beckhoff wprowadzenie

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Programowalny zestaw w IP20 do prostej komunikacji I/O przez Ethernet/IP TI-BL20-PG-EN-IP-S-2

ŚRODOWISKO TWINCAT DLA STEROWNIKA CX9000 BECKHOFF

NX700 PLC

Dokumentacja Techniczna. Czytnik RFID UW-M4GM

Projekt Komputerowych Systemów Sterowania Wymiana danych pomiędzy dwoma sterownikami Siemens S7-300 po sieci Profibus DP

Konfiguracja sterowników Horner APG do pracy w trybie Modbus RTU Master

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

Spis treści. 1 Moduł Modbus TCP 4

Wymagania programowe: STEP 7 STEP 7-Micro/Win

INFORMATOR TECHNICZNY HORNER. Konfiguracja komunikacji GPRS pomiędzy sterownikiem XLe/XLt i oprogramowaniem narzędziowym Cscape

1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.

Zadania do ćwiczeń laboratoryjnych Systemy rozproszone automatyki - laboratorium

s FAQ: 24/PL Data: DD/MM/RRRR

Programowalny zestaw w IP20 dla Ethernet Modbus/TCP TI-BL20-PG-EN-8

Instrukcja do oprogramowania ENAP DEC-1

Stanowisko laboratoryjne do sterowania rozproszonego systemem zbiorników z wykorzystaniem sterowników PLC typu VersaMax firmy GE Fanuc

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych

Moduł wieloprotokołowy TBEN-S do sieci Ethernet interfejs podłączeniowy dla 2 głowic zapisująco-odczytujących BLident (HF/ UHF) TBEN-S2-2RFID-4DXP

Sterownik procesorowy S-2 Komunikacja RS485 MODBUS

UWAGA: w zależności od zamówienia od poniższych cen oferujemy atrakcyjne rabaty!

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. Sieci i sterowniki przemysłowe

Tworzenie nowego projektu w asemblerze dla mikroprocesora z rodziny 8051

Konfiguracja połączenia modułów Smart I/O. (System rozproszony)

PODSTAWOWA OBSŁUGA PROGRAMU PROGRAMU PACKET TRACER TRYB REAL TIME

Panele operatorskie PanelView Plus 6 Komunikacja

Notatka Aplikacyjna NA 03001PL Marzec 2016

Informator techniczny

ADVANCE ELECTRONIC. Instrukcja obsługi aplikacji. Modbus konfigurator. Modbus konfigurator. wersja 1.1

asix4 Podręcznik użytkownika SRTP - drajwer protokołu SRTP Podręcznik użytkownika

4.2 STEROWNIKI SERII RCC

CoDeSys 3 programowanie w języku FBD

FAQ: /PL Data: 19/11/2007 Programowanie przez Internet: Przekierowanie portu na SCALANCE S 612 w celu umo

Laboratorium - Przechwytywanie i badanie datagramów DNS w programie Wireshark

INFORMATOR TECHNICZNY WONDERWARE

Konfiguracja sterowników Horner APG do pracy w trybie Modbus RTU Master

Moduł Ethernetowy EL-ETH. Instrukcja obsługi

interfejs szeregowy wyświetlaczy do systemów PLC

Programowanie sterowników

Rozproszony system zbierania danych.

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

FAQ: /PL Data: 16/11/2007 Programowanie przez Internet: Konfiguracja modułów SCALANCE S 612 V2 do komunikacji z komputerem przez VPN

Zestaw w IP20 TI-BL20-E-EN-8

CoDeSys 3 programowanie w języku drabinkowym LD

Programowalny zestaw w IP20 dla Ethernet Modbus/TCP TI-BL20-PG-EN-2

Zestaw w IP20 do prostej komunikacji I/O przez Ethernet Modbus/TCP/ Ethernet/IP/PROFINET TI-BL20-E-EN-S-2

Zestaw w IP20 dla PROFINET IO TI-BL20-E-PN-4

Transkrypt:

Laboratorium Integracji Systemów i Sterowania Rozproszonego Sterowania rozproszone z wykorzystaniem standardu sieci przemysłowej Modbus TCP Programowalne sterowniki sieciowe i sprzęgacze sieciowe z rodziny WAGO-I/O-SYSTEM z serii 750 Katedra Automatyki i Inżynierii Biomedycznej, Wydział EAIiIB Akademia Górniczo-Hutnicza w Krakowie Maciej Rosół Kraków 2013 1

Cel Celem ćwiczenia jest praktyczne zapoznanie się z przemysłowym protokołem sieciowym Modbus TCP do budowy sieciowych i rozproszonych systemów pomiarowo-sterujących oraz do monitorowania procesów. W ramach zajęć laboratoryjnych studenci poznają metody konfiguracji sterowników umożliwiającą wymianę danych pomiędzy węzłami sieci Modbus TCP. Ponadto zapoznają się z rodziną programowalnych sterowników sieciowych WAGO-I/O-SYSTEM z serii 750 wyposażonych w cyfrowe i analogowe wejścia/wyjścia oraz środowiskiem programowym CoDeSys 2.3. Studenci będą realizować algorytmy pomiarowo sterujące, w których regulator uruchamiany jest na oddalonym sterowniku. Ponadto poznają efekty pojawiające się podczas tego typu sterowania np. opóźnienia w transmisji oraz utrata pakietów. Stanowisko laboratoryjne Schemat blokowy stanowiska laboratoryjnego przedstawiono na rysunkach xxx oraz yyy. Obiekt sterowania stanowi model fizyczny układu inercyjnego drugiego rzędu o jednym wejściu i dwóch wyjściach (SIMO). Sygnał sterujący VIn stanowi napięcie z zakresu (0 10) V. Sygnały pomiarowe VOut 1 i VOut 2 to wartości napięć z pierwszego i drugiego stopnia układu inercyjnego. System sterowania rozproszonego zbudowano z wykorzystaniem sterowników PFC (Programmable Fieldbus Controller) typu 750-841 i 750-871 oraz adaptera wejść/wyjść rozproszonych 750-341 firmy WAGO. Jako kanał komunikacyjny wykorzystano standard Ethernet 10 Base T/100 Base TX. Rysunek xxx. Stanowisko laboratoryjne sieci Ethernet z protokołem Modbus TCP UWAGA!!! Do zasilaczy impulsowych znajdujących się na stanowisku doprowadzono napięcie 230V/50Hz. Pod żadnym pozorem nie wolno ich dotykać, gdyż grozi to śmiercią lub trwałym kalectwem 2

Rysunek yyy. Uproszczony schemat blokowy stanowiska laboratoryjnego Sterowniki WAGO rodziny 750-8xx Tabela xxx. Podstawowe parametry sterowników i sprzęgaczy 750-8xx. Parametr 750-841 750-871 750-341 Pamięć programu 512 KB 1024 KB (od wersji 5) Pamięć danych 256 KB 512 KB (od wersji 5) Pamięć nieulotna (retain/flag) 24 KB (16 KB / 8 KB) 24 KB (16 KB / 8 KB) Rozmiar obrazu procesu 2 KB max 2 KB max 2 KB max (wejścia) Rozmiar obrazu procesu 2 KB max 2 KB max 2 KB max (wyjścia) Zmienne wejściowe 512 B max 512 B max Zmienne wyjściowe 512 B max 512 B max Moduły I/O 64 64 64 Zasilanie 24 V DC, 500 ma max 24 V DC, 500 ma max 24 V DC, 500 ma max Szybkość transmisji 10/100 Mb/s 10/100 Mb/s 10/100 Mb/s Dostępne języki programowania IEC 61131-3 IL, LD, FBD, ST, FC IEC 61131-3 IL, LD, FBD, ST, FC Obsługiwane protokoły sieciowe MODBUS/TCP (UDP), ETHERNET/IP, HTTP, BootP, DHCP, DNS, SNTP, FTP, SNMP MODBUS/TCP (UDP), EtherNet/IP, HTTP, BootP, DHCP, DNS, SNTP, FTP, SNMP MODBUS/TCP (UDP), EtherNet/IP, HTTP, BootP, DHCP, DNS, SNTP, FTP, SNMP Konfiguracja sterownika WAGO 750-841 w CoDeSys 3

Konfiguracja sterownika 750-841 w środowisku programowym CoDeSys polega na dodaniu w utworzonym nowym projekcie typu sterownika oraz dodatkowych modułów, w które sterownik jest wyposażony. W celu dokonania konfiguracji sprzętowej sterownika 750-841 należy: 1. Uruchomić program CoDeSys ikona. 2. W celu utworzenia nowego projektu wybrać opcję File/New z menu głównego okna programu CoDeSys (rysunek xxx). W pojawiającym się menu wyboru docelowego sterownika PLC (Target Settings) należy wybrać WAGO_750-841_(FW12 - ) a następnie nacisnąć przycisk OK. Rysunek xxx. Okno tworzenia nowego projektu w CoDeSys 3. Otworzy się okno jak na rysunku xxx, w którym należy nadać nazwę nowo tworzonej jednostki programowej (Name of the new POU:). Jako Type of POU wybrać Program. Na tym etapie należy również określić język programowania, w którym będzie realizowana tworzona jednostka programowa. Ponieważ w programie będzie wykorzystywana biblioteka z funkcjami do obsługi protokołu Modbus TCP napisana w języku FBD, dlatego też ten język należy zaznaczyć w opcji Language of the POU. Należy nadmienić, że możliwy jest wybór jakiegokolwiek z innych dostępnych języków dla głównego POU, przy czym obsługa funkcji biblioteki Modbus TCP będzie realizowana np. w Function block napisanym z użyciem FBD. Po uzupełnieniu wszystkich parametrów wybrać przycisk OK. 4

Rysunek xxx. Okno konfiguracji jednostki programowej POU 4. W utworzonym oknie projektu wybieramy zakładkę Resources (w lewej dolnej części okna dostępne są cztery zakładki: POU s, Data Types, Visualizations, Resources) i następnie wybieramy przez podwójne kliknięcie opcję PLC Configuration. Pojawi się okno jak na rysunku xxx. Rozwinąć listę Hardware Configuration (znak + ). Na pierwszym miejscu listy znajduje się wirtualna wewnętrzna magistrala K-Bus [FIX], do której na etapie konfiguracji dodaje się moduły I/O faktycznie podłączone do sterownika. Rysunek xxx. Okno konfiguracji modułów dołączonych do sterownika 750-841 5. Prawym przyciskiem myszy wybrać K-Bus [FIX] i następnie opcję Append Subelement menu kontekstowego. Pojawi się okno jak na rysunku xxx, w którym dokonujemy wyboru modułów I/O podłączonych do PLC. Moduły I/O pogrupowane są w siedem kategorii, w zależności od spełnianych funkcji w systemie. 5

Rysunek xxx. Okno I/O-Configuration do konfiguracji modułów I/O podłączonych do PLC 6. Rozwinąć kategorię Digital Input, wybrać z listy moduł 750-430 i nacisnąć przycisk Insert >>. Wybrany moduł zostanie dodany do magistrali K-Bus konfigurowanego sterownika 750-841 (patrz rysunek xxx). UWAGA!!! Na liście może pojawić się kilka modułów I/O danego typu np. 750-430. Różnice wynikają najczęściej z wersji oprogramowania modułu, co jest wyraźnie zaznaczone na tabliczce znamionowej znajdującej się na ściance bocznej plastikowego pudełka. Na laboratorium używane są moduły w standardowej wersji, dlatego też należy wybierać moduły znajdujące się na pierwszej pozycji. Rysunek xxx. Okno wyboru modułów I/O podłączonych do sterownika 750-841 6

Tabela xxx. Wybór poszczególnych modułów I/O do sterowników rodziny 750-xxx Nr pozycji PLC_1 (750-841) PLC_2 (750-871) RIO_1 (750-341) 1 750-430 (Digital Input) 750-511 (PWM Output) 750-479 (Analog Input) 2 750-556 (Analog Output) 750-430 (Digital Input) 750-479 (Analog Input) 3 750-479 (Analog Input) 750-530 (Digital Output) 750-556 (Analog Output) 4 750-600 (Terminal Block) 1) 750-556 (Analog Output) 750-600 (Terminal Block) 1) 5-750-637 (Encoder Input) - 6-750-600 (Terminal Block) 1) - 1) Uwaga modułów terminujących 750-600 nie uwzględnia się w konfiguracji sterowników PLC Rysunek yyy. Schemat rozmieszcza modułów na stanowisku 7. Krok szósty powtórzyć dla wszystkich modułów podłączonych do PLC 750-841. Wszystkie moduły podłączone do sterowników 750-841, 750-871 i zdalnego adaptera 750-341 wymienione są w tabeli xxx oraz przedstawione na rysunku yyy (kolejność modułów zgodna jest z kolejnością ich instalacji na magistrali K-Bus, licząc od lewej do prawej strony). 8. Po dołączeniu wszystkich modułów I/O do projektu sterownika 750-841 nacisnąć przycisk OK. Prawa strona okna I/O-Configuration powinna wyglądać jak na rysunku xxx. Rysunek xxx. Wybrane moduły I/O sterownika 750-841 9. W kolejnym kroku należy skonfigurować parametry komunikacji ze sterownikiem PLC. W tym celu wybrać opcję Online/Communication Parameters z menu głównego. Pojawi się okno jak na rysunku xxx. Wybrać przycisk New. 7

Rysunek xxx. Okno konfiguracji parametrów komunikacji ze sterownikiem 10. W nowo otwartym oknie wybrać sterownik Ethernet_TCP_IP i wpisać nazwę dla tworzonego kanału komunikacyjnego (pole Name). Nacisnąć przycisk OK. Rysunek xxx. Zapytanie o uruchomienie sterownika i modułów I/O 11. W kolejnym oknie należy wpisać poprawny adres IP docelowego sterownika (pole Value odpowiadające nazwie parametru IP address). Pozostałe parametry pozostają niezmienione. Listę adresów IP wszystkich urządzeń znajdujących się na stanowisku zebrano w tabelach xxx i yyy. Proces konfiguracji sprzętowej został zakończony. Rysunek xxx. Przypisanie adresu IP docelowego sterownika PLC Tabela xxx. Parametry sieciowe poszczególnych sterowników PLC PLC_1 PLC_2 RIO_1 IP Address 10.10.4. 1 10.10.4. 2 10.10.4. 3 Subnet Mask 255.255.255.0 255.255.255.0 255.255.255.0 8

Tabela yyy. Parametry sieciowe komputera PC i zarządzalnego przełącznika sieci Ethernet PC_1 SW_1 IP Address 10.10.4. 100 10.10.4. 200 Subnet Mask 255.255.255.0 255.255.255.0 Poprawność konfiguracji można sprawdzić wybierając opcję Online/Login z menu głównego. Po zakończeniu konfiguracji można przygotować i uruchomić pierwszy program testujący np. poszczególne moduły I/O. W przypadku modułów analogowych można posłużyć się analogowym zadajnikiem i multimetrem cyfrowym do pomiaru napięcia. 9

Konfiguracja funkcji do komunikacji Modbus TCP dla sterownika 750-841 Biblioteka ModbusEthernet_04.lib, z której korzysta się na laboratorium ma zastosowanie jedynie do sterownika 750-841. Zawiera dwie podstawowe funkcje, które umożliwiają wykorzystanie sterownika 750-841 jako węzła typu MASTER protokołu Modbus TCP: 1. ETHERNET_MODBUSMASTER_UDP. Wykorzystuje protokół UDP (ang. User Datagram Protocol), co wpływa na szybszą wymianę danych w sieci Ethernet niż w przypadku protokołu TCP. 2. ETHERNET_MODBUSMASTER_TCP. Zaleca się, aby była stosowana tylko w przypadku, gdy jest to konieczne ze względu na wymagania zdalnego węzła. Wadą protokołu TCP jest jego koncepcja zorientowana na połączenie. W wyniku tego, połączenie jest zestawiane dla każdej wymiany danych, co prowadzi do zwiększenia narzutu czasowego. W dalszej części tego rozdziału przedstawiono wszystkie parametry wykorzystywane przez te funkcje oraz przykład ich użycia. ETHERNET_MODBUSMASTER_UDP Tabela xxx. Parametry funkcji ETHERNET_MODBUSMASTER_UDP Parametr wejściowy Typ danych Opis strip_address STRING IP address of Modbus slave. bunit_id BYTE Fills the UnitId field in the Modbus protocol header. Use: - References the slave ID in a serial Modbus sub-network. - Buffer index of the Modbus slave on the PC in conjunction with ActiveMBTSlaveCtl. bfunction_code BYTE The following Modbus function codes are supported: FC1: (0x01) read coils FC2: (0x02) read input discretes FC3: (0x03) read multiple registers FC4: (0x04) read input registers FC5: (0x05) write coil FC6: (0x06) write single register FC7: (0x07) read exception status FC11: (0x0B) get comm event counter FC15: (0x0F) force multiple coils FC16 (0x10) write multiple registers FC23 (0x17) read write multiple registers wread_address WORD Modbus address in slave to be read. wread_quantity WORD Number of bits or words to be read. ptread_data POINTER TO BYTE Pointer to the local data range in which the read data are stored. wwrite_address WORD Modbus address in slave to be written. wwrite_quantity WORD Number of bits or words to be written. ptsend_data POINTER TO BYTE Pointer to the local data range in which the data to be written are stored. xstart BOOL Initiate Modbus telegram. xreset BOOL Reset internal data ttime_out TIME Maximum waiting time for the reply telegram from the Modbus slave. Zwracana wartość Typ danych Opis xready BOOL Data transfer is complete or the waiting time parameterised in ttime_out has expired. werror WORD Code error: 10

0x0000 Successful 0x0001 Illegal function code 0x0002 Illegal data address 0x0003 Illegal data value 0x0004 Slave device failure 0x0005 Acknowledge 0x0006 Slave device busy 0x0007 Negative acknowledge 0x0008 Memory parity error 0x000A Gateway path unavailable 0x000B Gateway target no response 0x0095 Error Socket-Close 0x0096 no valid Socket from FW 0x0097 Illegal number of points 0x0098 Internal buffer overrun 0x0099 TimeOut bresponse_unit_id BYTE Content of the UnitId field in the Modbus protocol header of the reply telegram. Deklaracja zmiennych w CoDeSys 2.3 wymaganych do prawidłowej konfiguracji funkcji ETHERNET_MODBUSMASTER_UDP jest następująca: (* -------------------------------------------------------------------------------------------------------------- *) omb1 : ETHERNET_MODBUSMASTER_UDP; (* Instance of FB*) xopensocket : BOOL; (* Open a connection *) xstart : BOOL; (* Sends and receive a modbus request on a raising edge *) xreset : BOOL; (* Reset internal data *) awreceifebuffer : ARRAY [0..99] OF WORD; (* Readed data from Modbus slave *) awtransmitbuffer : ARRAY [0..99] OF WORD; (* Data to write to Modbus slave *) xsocketisopen : BOOL; (* Status of connection with Modbus slave *) wreturncode : WORD; xready: BOOL; (* -------------------------------------------------------------------------------------------------------------- *) Rysunek xxx. Przykład użycia funkcji ETHERNET_MODBUSMASTER_UDP ETHERNET_MODBUSMASTER_TCP Tabela xxx. Parametry funkcji ETHERNET_MODBUSMASTER_TCP 11

Parametr wejściowy Typ danych Opis strip_address STRING Znaczenie identyczne jak dla funkcji bunit_id BYTE ETHERNET_MODBUSMASTER_UDP bfunction_code BYTE wread_address WORD wread_quantity WORD ptread_data POINTER TO BYTE wwrite_address WORD wwrite_quantity WORD ptsend_data POINTER TO BYTE xstart BOOL xreset BOOL ttime_out TIME Zwracana wartość Typ danych Opis xready BOOL Znaczenie identyczne jak dla funkcji werror WORD ETHERNET_MODBUSMASTER_UDP bresponse_unit_id BYTE Jednym z zadań w ramach realizacji ćwiczenia jest skonfigurowanie, oprogramowanie i przetestowanie wymiany danych między sprzęgaczem 750-341 a sterownikiem 750-841. Sterownik, pełniący rolę mastera protokołu Modbus/TCP, powinien cyklicznie żądać od sprzęgacza, realizującego zadania slave a, przesłania pewnych danych. Tutaj interesującymi danymi są wyniki pomiaru trzech sygnałów napięciowych doprowadzonych do modułów wejść analogowych, dołączonych do sprzęgacza. Pierwszy sygnał, mierzony przez pierwszy moduł 750-479, pochodzi z zadajnika analogowego (potencjometru), zaś dwa pozostałe, mierzone przez drugi moduł, są sygnałami wyjściowymi obiektu regulacji (patrz rysunek xxx). Transmisja danych jest konieczna, bo algorytm regulacji będzie zaimplementowany w sterowniku 750-841, a zadajnik i wyjścia obiektu są dołączone do sprzęgacza 750-341. W ramach transmisji należy przesłać zawartość kilku rejestrów o długości jednego słowa każdy. Do tego celu najwygodniej użyć funkcji FC3 (read multiple registers) lub FC23 (read and write multiple registers) protokołu Modbus/TCP (patrz tabela xxx). Korzystając z tej funkcji, należy w żądaniu protokołu Modbus podać adres interesujących rejestrów w sprzęgaczu. By prawidłowo zaadresować rejestry, należy znać: przyporządkowanie adresów IEC61131 (%IWnnnn, %QWnnnn, %IXnnnn, %QXnnnn) do kanałów analogowych i cyfrowych modułów wejść-wyjść dołączonych do sprzęgacza przyporządkowanie adresów Modbus do adresów IEC61131 (modbus register mapping) (tabela yyy) Tabela yyy. Przyporządkowanie adresów Modbus do adresów IEC61131 Adresy Modbus dla odczytu rejestrów (słów) funkcjami FC3, FC4 oraz FC23 Register (Word) Access Reading (with FC3 and FC4) Adres Modbus Adres IEC61131 Zakres pamięci dziesiętnie szesnastkowo 0 255 0x0000 0x00FF %IW0 %IW255 Physical Input Area (1) First 256 Words of physical input data 256 511 0x0100 0x1FF Modbus Exception: 512 767 0x0200 0x02FF %QW0 %QW255 Physical Output Area (1) 12

First 256 Words of physical output data 768 4095 0x0300 0x0FFF Modbus Exception: 4096 12287 0x1000 0x2FFF Configuration Register (see following Chapter 4.2.5.3 Configuration Functions) 12288 24575 0x3000 0x5FFF Modbus Exception: 24576 25340 0x6000 0x62FC %IW256 %IW1020 Physical Input Area (2) Additional 764 Words physical input data 25341 28671 0x62FD 6FFF Modbus Exception: 28672 29436 0x7000 0x72FC %QW256 %QW1020 Physical Output Area (2) Additional 764 Words physical output data 29437 65535 0x72FD 0xFFFF Modbus Exception: Adresy Modbus dla zapisu rejestrów (słów) funkcjami FC6, FC16 oraz FC23 Register (Word) Access Writing (with FC6 and FC16) Adres Modbus Adres IEC61131 Zakres pamięci dziesiętnie dec szesnastkowo hex Memory range 0 255 0x0000 0x00FF %QW0 %QW255 Physical Input Area (1) First 256 Words of physical output data 256 511 0x0100 0x01FF Modbus Exception: 512 767 0x0200 0x02FF %QW0 %QW255 Physical Output Area (1) First 256 Words of physical output data 768 4095 0x0300 0x0FFF Modbus Exception: 4096 12287 0x1000 0x2FFF Configuration Register (see following Chapter 4.2.5.3 Configuration Functions) 12288 24575 0x3000 0x5FFF Modbus Exception: 13

24576 25340 0x6000 0x62FC %QW256 %QW1020 Physical Output Area (2) Additional 764 Words physical output data 25341 28671 0x62FD 6FFF Modbus Exception: 28672 29436 0x7000 0x72FC %QW256 %QW1020 Physical Output Area (2) Additional 764 Words physical output data 29437 65535 0x72FD 0xFFFF Modbus Exception: Adresy Modbus dla odczytu bitów funkcjami FC1 i FC2 Bit Access Reading (with FC1 and FC2): Adres Modbus Zakres pamięci Opis dziesiętnie dec szesnastkowo hex Memory range Description 0 511 0x0000 0x01FF Physical Input Area (1) First 512 digital inputs 512 1023 0x0200 0x03FF Physical Output Area (1) First 512 digital outputs 1024 12287 0x0400 0x2FFF Modbus Exception: 12288 13815 0x3000 0x35F7 Physical Input Area (2) Starts with the 513th and ends with the 2039th digital input 13816 16383 0x35F8 0x3FFF Modbus Exception: 16384 17911 0x4000 0x45F7 Physical Output Area (2) Starts with the 513th and ends with the 2039th digital output 17912 65535 0x45F8 0xFFFF Modbus Exception: Adresy Modbus dla zapisu bitów funkcjami FC5 i FC15 Bit Access Writing (with FC5 and FC15): Adres Modbus Zakres pamięci Opis dziesiętnie dec szesnastkowo hex Memory range Description 0 511 0x0000 0x01FF Physical Output Area (1) First 512 digital outputs 512 1023 0x0200 0x03FF First 512 digital outputs 1024 12287 0x0400 0x2FFF Physical Output Area (1) Modbus Exception: 12288 13815 0x3000 0x35F7 Physical Output Area (2) Starts with the 513th and ends with the 2039th digital output 13816 16383 0x35F8 0x3FFF Modbus Exception: 14

16384 17911 0x4000 0x45F7 Physical Output Area (2) Starts with the 513th and ends with the 2039th digital output 17912 65535 0x45F8 0xFFFF Modbus Exception: Zmienne wewnętrzne Internal Variables Adres Address Dostęp Access Długość (słowa) Length (word) 0x1000 R/W 1 0x1001 R/W 1 0x1002 R/W 1 0x1003 R/W 1 0x1004 R 1 0x1005 R/W 1 0x1006 R 1 0x1007 R/W 1 0x1008 R/W 1 0x1009 R/W 1 0x100A R/W 1 0x100B W 1 Uwaga Remark 0x1020 R 1-2 0x1021 R 1 0x1022 R 1-4 0x1023 R 1-3 0x1024 R 1-2 0x1025 R 1 0x1028 R/W 1 0x1029 R 9 0x102A R 1 0x1030 R/W 1 0x1031 W 1 0x1050 R 3 0x2000 R 1 0x2001 R 1 0x2002 R 1 0x2003 R 1 0x2004 R 1 0x2005 R 1 0x2006 R 1 0x2007 R 1 0x2008 R 1 15

0x2010 R 1 0x2011 R 1 0x2012 R 1 0x2013 R 1 0x2014 R 1 0x2020 R 16 0x2021 R 8 0x2022 R 8 0x2023 R 32 0x2030 R 65 0x2031 R 64 0x2032 R 64 0x2033 R 63 0x2040 W 1 0x2041 W 1 0x2042 W 1 0x2043 W 1 Sygnał z zadajnika analogowego mierzony jest przez pierwszy kanał dwukanałowego modułu napięciowych wejść analogowych. Moduł ten zainstalowany jest jako pierwszy w kolejności (licząc od strony jednostki centralne CPU) moduł analogowy dołączony do sterownika. Stąd wnioskujemy, że wynik pomiaru będzie w obrazie procesu (process image) reprezentowany przez zmienną %IW0. Z kolei tabela yyy pozwala odczytać, iż zmiennej %IW0 odpowiada w protokole Modbus rejestr o numerze 0x0000. Taki właśnie numer należy podać łącznie z kodem funkcji FC3, FC4 lub FC23, formułując żądanie (zapytanie), które będzie przesłane do sprzęgacza, pełniącego rolę slave a protokołu Modbus. Aby odczytać w ramach jednego żądania wyniki wszystkich pomiarów, należy użyć funkcji FC3 lub FC23, podając adres 0x0000 i prosząc o odczyt czterech kolejnych rejestrów. Rejestry tę będą zawierały wyniki pomiarów z obu kanałów obu modułów wejść analogowych, a więc wartość sygnału z zadajnika (%IW0) oraz z obu wyjść obiektu (%IW2 i %IW3) (porównaj rysunek xxx). Kanał %IW1 nie jest używany w układzie. Bibliografia [1] WAGO Kontakttechnik GmbH & Co., Modbus communication between WAGO Ethernet couplers and controllers. Application note, Version 1.2.1, 2007. [2] WAGO Kontakttechnik GmbH & Co., WAGO-I/O-PRO 32 library. ModbusEthernet_04.lib, Version 1.0.0, 2011. [3] WAGO Kontakttechnik GmbH & Co., Modular I/O-System ETHERNET TCP/IP 750-841. Manual, Version 1.2.1, 2007. 16