ForthLogic inst prog H P.1.2 120113.pdf - F&F
ForthLogic inst prog H P.1.2 120113.pdf - F&F
ForthLogic inst prog H P.1.2 120113.pdf - F&F
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Sterowniki <strong>prog</strong>ramowalne MAX Logic<br />
Sterownik MAX Logic zapewnia obsługę następujących poleceń:<br />
- 01 (0x01) Read Coils – Odczyt stanów jednego lub wielu kolejnych wyjść binarnych<br />
- 02 (0x02) Read Discrete Inputs – Odczyt wartości jednego lub wielu kolejnych wejść binarnych<br />
- 03 (0x03) Read Holding Registers – Odczyt wartości z jednego lub wielu kolejnych rejestrów 16‐bitowych<br />
- 04 (0x04) Read Input Registers – Odczyt wartości z jednego lub wielu kolejnych rejestrów 16‐bitowych<br />
- 05 (0x05) Write Single Coil – Ustawienie wartości pojedynczego wyjścia binarnego<br />
- 06 (0x06) Write Single Register – Ustawienie wartości pojedynczego rejestru 16‐bitowego<br />
- 15 (0x0F) Write Multiple Coils – Ustawienie wartości wielu kolejnych wyjść binarnych<br />
- 16 (0x10) Write Multiple registers – Ustawienie wartości wielu kolejnych rejestrów<br />
Protokół Modbus umożliwia operowanie na dwóch typach danych:<br />
‐ dane bitowe wykorzystywane do przedstawiania stanów wejść i wyjść cyfrowych. Dane bitowe przyjmować mogą<br />
wartości 1 lub 0.<br />
‐ dane rejestrowe – przedstawiane w postaci zmiennych 16‐bitowych, mogących przyjmować wartości od 0 do 65535.<br />
Każde wykorzystanie polecenia komunikacyjnego związane jest z wymianą danych pomiędzy urządzeniem Master i Slave.<br />
W związku z tym dla każdego z poleceń rezerwowany jest bufor danych znajdujący się w obszarze zmiennych bitowych<br />
(FLAG) sterownika – dla danych bitowych, lub w obszarze zmiennych globalnych (VAR) – dla zmiennych rejestrowych.<br />
Polecenia komunikacyjne w sterowniku realizowane mogą być w dwóch trybach – cyklicznie, gdzie polecenia powtarzane<br />
zostają automatycznie, co zadany okres czasu, oraz w trybie pojedynczego wywołania. Możliwe jest jednoczesne<br />
zdefiniowanie do 4 pakietów cyklicznych oraz dowolną liczbę poleceń pojedynczych ( o tym samym numerze pakietu).<br />
Do inicjowania poleceń komunikacyjnych służy słowo MODBUSSTART, przy czym zgodnie z konwencją języka <strong>ForthLogic</strong> w<br />
pierwszej kolejności określane są parametry połączenia, a dopiero na końcu wprowadzane jest słowo MODBUSSTART. Dla<br />
polecenia cyklicznego przekazywana jest do funkcji stała systemowa CYCLIC_ACCESS, natomiast dla polecenia<br />
pojedynczego jest to stała SINGLE_ACCESS.<br />
Pełna składnia polecenia przedstawiona jest poniżej (wszystkie parametry są obowiązkowe).<br />
Dla wywołania cyklicznego:<br />
CYCLIC_ACCESS MODBUSSTART<br />
Dla wywołania pojedynczego:<br />
SINGLE_ACCESS < func> MODBUSSTART<br />
Parametry:<br />
<br />
<br />
<br />
<br />
<br />
<br />
Określa czas (w sekundach) po którym zostanie powtórzone wywołanie cykliczne.<br />
Parametr ten może przyjmować wartości od 0,1 sek. do 600 sek., ze skokiem 0,01 sek.<br />
Adres urządzenia Slave do którego adresowane jest polecenie. Parametr ten może<br />
przyjmować wartości z przedziału od 1 do 247<br />
Adres komórki pamięci (rejestru) urządzenia Slave, od którego rozpocznie się<br />
wysyłanie / odbieranie danych. Parametr ten może przyjmować wartości z przedziału<br />
od 0 do 65535.<br />
Ilość kolejnych danych bitowych lub rejestrowych, które mają zostać odebrane lub<br />
wysłane z urządzenia Slave począwszy od numeru adresu komórki pamięci urządzenia<br />
Slave (). Parametr ten może przyjmować wartości z przedziału od 1 do 64.<br />
Numer pierwszej zmiennej globalnej całkowitej (VAR) lub bitowej (FLAG) sterownika,<br />
od której rozpoczyna się przypisanie wartości rejestrów odczytanych z urządzenia<br />
Slave lub, od której rozpoczyna się zapisywania wartości rejestrów w urządzeniu Slave<br />
(rozmiar tablicy jest zgodny z wartością określoną parametrem ).<br />
Kod polecenia, które ma zostać wykonane. Polecenia te mogą przyjmować<br />
następującą postać:<br />
READ_COILS ‐ Odczyt stanów jednego lub wielu kolejnych wyjść binarnych (kod<br />
polecenia 0x01).<br />
READ_INPUTS ‐ Odczyt wartości jednego lub wielu kolejnych wejść binarnych (kod<br />
polecenia 0x02).<br />
READ_HOLDREGS ‐ Odczyt wartości z jednego lub wielu kolejnych rejestrów 16‐<br />
‐ 30 ‐