16.06.2015 Views

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

SHOW MORE
SHOW LESS

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 ‐

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!