Promotic

PmModbusSl - Ovladač pro komunikaci protokolem Modbus Slave

Před použitím tohoto ovladače v aplikaci PROMOTIC je vhodné shlédnout "PROMOTIC video kurz 4 - Komunikační ovladače".

Základní vlastnosti ovladače:
- Použití tohoto ovladače vyžaduje zakoupení licence PmModbus. Při vývoji aplikace ve freeware módu PmFree nebo s vývojovou licencí a při jejím testování v runtime je tato komponenta vždy funkční.
- Komunikace je pro sériovou linku (COM1, COM2 ...).
- Aplikace PROMOTIC je z hlediska této komunikace vždy Slave (tzn. podnět pro přenos dat dává druhá strana). Pro Master komunikaci viz komunikační ovladač PmModbusMr.
- Ovladač je začleněn do systému PROMOTIC pomocí objektu PmaComm.
Ovladač podporuje použití objektu PmaCommMsg. Objekt PmaCommGroup nelze použít.
Pro snadné přidání tohoto ovladače do aplikace je vhodné použít: Předkonfigurace ve skupině "Modbus"
- Ovladač podporuje pouze RTU mod v režimu Slave.


Jsou podporovány 3 Modbus datové typy:
- Bit (1Bit): V PLC automatu reprezentován 1 bitem. V aplikaci PROMOTIC jako datový typ Boolean.
- Word (2Byte Unsigned Integer): V PLC automatu reprezentován 16 bity (hodnota od 0 do 65535). V aplikaci PROMOTIC jako datový typ Long.
- Int (2Byte Signed Integer): V PLC automatu reprezentován 16 bity (hodnota od-32767 do +32767). V aplikaci PROMOTIC jako datový typ Integer.


Popis komunikace pomocí objektu PmaCommMsg

Popis funkce protokolu:
Každá z osmi zpráv smí byt spuštěna jen jednou. To znamená, že v systému PROMOTIC lze definovat dohromady pouze osm zpráv. Pokud potřebujeme vyčítat rozdílné oblasti paměti, pak komunikace probíhá následovně:
- Master vyšle dotaz na paměť.
- Komunikace naplní kartu Data-příjem.
- Vyvolá se událost onDataReceive.
- V události onDataReceive projektant zjistí z karty "Data-příjem", kterou adresu a jaký počet dat chce Master a naplní jimi kartu Data-zaslání. Pokud daná data nemá k dispozici, pak se nastaví v kartě "Data-zaslání" položku "Validity" na false (data neplatná), v jiném případě nastaví tuto položku na true (data platná).
- Komunikace zjistí zda je "Validity" jiné než false a vyšle příslušné data na Master.

Poznámka: Pokud "Validity" je nastaveno na true a karta "Data-příjem" se v události onDataReceive neplní, pak komunikace odešle na Master vždy stejná data, bez ohledu na adresu kterou žádá Master.
Upozornění! Pokud položka "Validity" je nastavena na false, pak komunikace na dotaz NEODPOVÍ !

Seznam a popis komunikačních zpráv:
01 - Read Coil Status (Read Output Bits): Tato zpráva přečte n stavů výstupů (1-bitové hodnoty)
02 - Read Input Status (Read Input Bits): Tato zpráva přečte n stavů vstupů (1-bitové hodnoty)
03 - Read Holding Registers (Read Output Registers): Tato zpráva přečte n výstupních registrů (16-bitových hodnot)
04 - Read Input Registers: Tato zpráva přečte n vstupních registrů (16-bitových hodnot)
05 - Force Single Coil (Write 1 Bit): Tato zpráva zapíše do jednoho stavu (1-bitová hodnota)
06 - Preset Single Register (Write 1 Register): Tato zpráva zapíše do jednoho registru (16-bitová hodnota)
15 - Force Multiple Coils (Write n Bits): Tato zpráva zapíše do n stavů (1-bitové hodnoty)
16 - Preset Multiple Registers (Write n Registers): Tato zpráva zapíše do n registrů (16-bitové hodnoty)
© MICROSYS, spol. s r.o.