OMC 8000 - Orbit Merret
Transkript
OMC 8000 - Orbit Merret
OMC 8000 RS DRIVER SDÍLENÁ PAMĚŤ %M3 Pro komunikaci mezi PLC, HMI a dalšími zařízeními je určena sdílená paměť %M3.0 - %M3.3071, celkem 3 kB. MULTIPROG neumí automaticky umísťovat proměnné do této paměti a nekontroluje překrývání proměnných. Toho lze s výhodou využít, pokud je měnit jen část dat v paměti. Data v této části paměti nemohou být uložena jako retain (zálohovaná data). Zápis/Čtení 1j/5j 1k/5k 1l/5l 1m/5m 1n/5n 1o/5o 1p/5p 1q/5q 1r/5r 1s/5s 1t/5t 1u/5u 1v/5v 1w/5w 1x/5x 1y/5y 1z/5z RETAIN PAMĚŤ Pro ukládání dat, která se nesmí ztratit při vypnutí je určena část paměti s označením retain (zachovávat, ukládat). MULTIPROG do tohoto prostoru automaticky umisťuje všechna data s označeným příznakem retain. Velikost této paměti je 2 kB, z toho 16 bytů používá systém. OM_RS_DRIVER Pro obsluhu RS485, která je vyvedena na vstup UNI1.4 (L-, svorka 12) a UNI1.4 (L+, svorka 12) je určen OM_RS_Driver. Pro zadání parametrů tohot driveru je potřeba vytvořit skupinu vstupů nebo výstupů o délce 1 byte. Adresa tohoto bytu není důležitá, protože OM_RS_Driver přistupuje přímo do sdílené paměti. Nastavení může vypadat takto: OM_RS_Driver umožňuje používat 6 komunikačních protokolů. Pro všechny je společné nastavení komunikační rychlosti v rozsahu 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400 Baud. Kromě univerzálního ASCII protokolu probíhá komunikace s těmito parametry: 8 bitů data, 1 stop, bez parity. Adresa 455 468 481 494 507 520 533 546 559 572 585 598 611 624 637 650 663 Zápis/Čtení 2j/6j 2k/6k 2l/6l 2m/6m 2n/6n 2o/6o 2p/6p 2q/6q 2r/6r 2s/6s 2t/6t 2u/6u 2v/6v 2w/6w 2x/6x 2y/6y 2z/6z Adresa 1131 1144 1157 1170 1183 1196 1209 1222 1235 1248 1261 1274 1287 1300 1313 1326 1339 Zápis/Čtení 3j/8j 3k/8k 3l/8l 3m/8m 3n/8n 3o/8o 3p/8p 3q/8q 3r/8r 3s/8s 3t/8t 3u/8u 3v/8v 3w/8w 3x/8x 3y/8y 3z/8z Adresa 1807 1820 1833 1846 1859 1872 1885 1898 1911 1924 1937 1950 1963 1976 1989 2002 2015 Zápis/Čtení 4j/9j 4k/9k 4l/9l 4m/9m 4n/9n 4o/9o 4p/9p 4q/9q 4r/9r 4s/9s 4t/9t 4u/9u 4v/9v 4w/9w 4x/9x 4y/9y 4z/9z Adresa 2483 2496 2509 2522 2535 2548 2561 2574 2587 2600 2613 2626 2639 2652 2665 2678 2691 2. ASCII MASTER Pro ASCII master a ASCII slave protokoly je nutné v programu definovat datový typ String8, který slouží pro ukládání a vyčítání dat. To se provede v sekci DataTypes následující definicí: TYPE String8:STRING(8); END_TYPE MULTIPROG ukládá řetězce s dalšími informacemi, takže v paměti je uloženo 5 + délka bytů, dle následujícího schématu: MLL MLH LL LH D D ... D D ... D 0 MLL/MLH maximální délka nižší/vyšší byte (maximálně 32.767 bytů) LL/LH aktuální délka nižší/vyšší byte D data 0 byte s kódem 0 - OMC 8000 zobrazuje na zobrazovačích OM xxxRS a čte data z přístrojů OM a má dva parametry: • počet dat pro výstup, data jsou uložena od začátku sdílené paměti • počet dat pro vstup, data následují za výstupními daty - výstupní se vysílají přes příkaz 9, každý parametr má 0 - 8 znaků (např. #009888.888<CR>) - vstupní se získávají příkazem 7W, do paměti se uloží postupně, kde data nejsou, tak se uloží NoData Např. pro OM 402UNI uloží dva řetěze – hodnotu z kanálu A a MF, pro OMU 408UNI to bude řetězců 9 - adresy jednotlivých řetězců odpovídají těm z předchozí tabulky 1. ASCII SLAVE 3. MODBUS RTU SLAVE - OMC 8000 se chová jako standardní slave s celou pamětí přístupnou jako HOLDING registry (adresa 40000) Registr 40000 = %MW3.0, 40001 = %MW3.2, 40002 = %MW3.4 a má jeden parametr: • adresu na MODBUS lince. Zadává se v rozsahu 1 – 247 - najednou lze odeslat nebo přijmout max. 64 registrů - POZOR System PLC použivá obráceně umisťovaní bytů v paměti, takže u více-wordových položek budou wordy v opačném pořadi. Např.: V PLC long na adrese 100 o hodnotě 0x87654321 se příkazem AA 03 00 32 00 02 CR CR vráti AA 03 04 43 21 87 65 CR CR (CR CR ... 16 bit CRC) - Implementovány jsou příkazy: - 3 pro čtení - 6 a 16 pro zápis - OMC 8000 komunikuje jako náš běžný přístroj a má tři parametry: • počet dat pro výstup, data jsou uložena od začátku sdílené paměti • počet dat pro vstup, data následují za výstupními daty • - celkem dat může být maximálně 232 - výstupní data lze vyčítat příkazy 1A..1Z, 1a..1z, ... , 4A..4Z, 4a..4z - výstupní data se lze vyčíst též přes příkaz 7W. Data jsou vysílána oddělená středníkem, mají proměnnou délku 0 – 8 bytů - výstupní data nelze po RS změnit - vstupní se zadávají příkazem 5A..5Z, 5a..5z, ... , 8A..8Z, 8a..8z, každý parametr má max. 8 znaků - ve sdílené paměti jsou uloženy dle následující tabulky Zápis/Čtení 1A/5A 1B/5B 1C/5C 1D/5D 1E/5E 1F/5F 1G/5G 1H/5H 1I/5I 1J/5J 1K/5K 1L/5L 1M/5M 1N/5N 1O/5O 1P/5P 1Q/5Q 1R/5R 1S/5S 1T/5T 1U/5U 1V/5V 1W/5W 1X/5X 1Y/5Y 1Z/5Z 1a/5a 1b/5b 1c/5c 1d/5d 1e/5e 1f/5f 1g/5g 1h/5h 1i/5i Adresa 0 13 26 39 52 65 78 91 104 117 130 143 156 169 182 195 208 221 234 247 260 273 286 299 312 325 338 351 364 377 390 403 416 429 442 Zápis/Čtení 2A/6A 2B/6B 2C/6C 2D/6D 2E/6E 2F/6F 2G/6G 2H/6H 2I/6I 2J/6J 2K/6K 2L/6L 2M/6M 2N/6N 2O/6O 2P/6P 2Q/6Q 2R/6R 2S/6S 2T/6T 2U/6U 2V/6V 2W/6W 2X/6X 2Y/6Y 2Z/6Z 2a/6a 2b/6b 2c/6c 2d/6d 2e/6e 2f/6f 2g/6g 2h/6h 2i/6i Adresa 676 689 702 715 728 741 754 767 780 793 806 819 832 845 858 871 884 897 910 923 936 949 962 975 988 1001 1014 1027 1040 1053 1066 1079 1092 1105 1118 Zápis/Čtení 3A/8A 3B/8B 3C/8C 3D/8D 3E/8E 3F/8F 3G/8G 3H/8H 3I/8I 3J/8J 3K/8K 3L/8L 3M/8M 3N/8N 3O/8O 3P/8P 3Q/8Q 3R/8R 3S/8S 3T/8T 3U/8U 3V/8V 3W/8W 3X/8X 3Y/8Y 3Z/8Z 3a/8a 3b/8b 3c/8c 3d/8d 3e/8e 3f/8f 3g/8g 3h/8h 3i/8i Adresa 1352 1365 1378 1391 1404 1417 1430 1443 1456 1469 1482 1495 1508 1521 1534 1547 1560 1573 1586 1599 1612 1625 1638 1651 1664 1677 1690 1703 1716 1729 1742 1755 1768 1781 1794 Zápis/Čtení 4A/9A 4B/9B 4C/9C 4D/9D 4E/9E 4F/9F 4G/9G 4H/9H 4I/9I 4J/9J 4K/9K 4L/9L 4M/9M 4N/9N 4O/9O 4P/9P 4Q/9Q 4R/9R 4S/9S 4T/9T 4U/9U 4V/9V 4W/9W 4X/9X 4Y/9Y 4Z/9Z 4a/9a 4b/9b 4c/9c 4d/9d 4e/9e 4f/9f 4g/9g 4h/9h 4i/9i Adresa 2028 2041 2054 2067 2080 2093 2106 2119 2132 2145 2158 2171 2184 2197 2210 2223 2236 2249 2262 2275 2288 2301 2314 2327 2340 2353 2366 2379 2392 2405 2418 2431 2444 2457 2470 4. MODBUS RTU MASTER - používá univerzální odesílací funkční blok RsSend za Count odeslaných bytů se přidá ještě CRC parametr AsString, EndChar, EC_Count jsou v tomto případě bez významu odpověď se přijme celá, VČETNĚ CRC výstupy FB se ovládají takto Done se nastaví na dobu odesílání příkazu, min jeden programový cyklus Received se nastaví, pokud přijde odpověď pokud se data nevejdou do shared memory, nebudou uložena vůbec a nastaví se Error Error se též nastaví při TO nebo chybě CRC nebo pokud je odesílaných dat moc 5. PLC BUS - speciální, binární protokol pro co nejrychlejší oživování dat mezi přístroji, tam kde není žádoucí použít UDP komunikaci přes ETHERNET a má čtyři parametry: • začátek dat ve sdílené paměti, která sdíli s ostatními • počet těhto dat • adresa na sběrnici 0 – 31. Adresy musí být od 0, následovat za sebou a být unikátní • maximální adresa na sběrnici. Tento parametr je pro všechna PLC stejný - PLC se ve vysílání cyklicky střídají - dojde k roztržení smyčky, PLC s adresou 0 po 5 s opakuje vysílání OMC 8000 RS DRIVER 6. UNI MASTER - má 3 parametry pro zadání všech parametrů komunikace pro odesílání/příjem se použije funkční blok RSSend se všemi parametry délka bufferu je max. 136 znaků. Co se nevejde se zahazuje. Přetečení tohoto bufferu se nehlásí pokud je zvoleno ukládání AsString, pak se uloží maximálně tolik znaků, kolik řetězec dovoluje. Pokud je počet přijatých znaků větší, vyhlásí se Error - pokud se data nevejdou do shared memory, nebudou uložena vůbec a vyhlásí se Error NÁSLEDUJÍCÍ FU A FB BUDOU POPSÁNY V HELPU KNIHOVNY OM_FW_LIB. ReadRSBusy - FU Vrací true, pokud je v běhu je předchozí příkaz v UNI_MASTER nebo MODBUS_MASTER režimu RsSend - FB má parametry vrací Start adresa ve sdílené paměti, kde začínají vysílaná data (MODBUS_MASTER) adresa ve sdílené paměti, kde začínají odesílaný řetězec (UNI) Count počet dat k odeslání Answer bude požadována odpověď AsString uloží se jako řetězec AnswAdr adresa ve sdílené paměti, kde začíná prostor pro přijímaná data EndChar bude čekat na ukončovací znak EC_Count ukončovací znak nebo počet znaků k přijetí TimeOut timeout pro příjem odpovědi, maximálně 65.535 s Done Received Error pokud se podařilo data odeslat Nastaví se na dobu zpracovani celeho prikazu (včetně příjmu), min. na jeden běh programu. Nenastavi se, pokud je linka obsazena zpracovanim jineho FB RSSend pokud se podařilo data přijmout. Nastaví se na jeden běh programu timeout nebo špatná velikost dat nebo jiná chyba CtrlStrToBuf - FB String na vstupu parsuje do bufferu POZOR na délku bufferu a bude umět parsovat kódy: \\ \ 0x5C %% % 0x25 \s \e \t \l \r \n STX ETX TAB LF CR CRLF 0x02 0x03 0x08 0x0A 0x0D 0x0D 0x0A ostatni neznámé kódy ignoruje a v bufferu se neobjěví nic a hlasi Error %HH ? 0xHH znak s kodem HH, pokud HH nebude hexacislo, tak se znaky % a dva za ním zahodí a v buferu nic nebude MINI-TECHDOK - OMC 8000 - RS.DRIVER - 2012 - 1v0 - cz ORBIT MERRET, spol. s r. o. Vodňanská 675/30, 198 00 Praha 9 tel.: +420 281 040 200, fax.: +420 281 040 299 e-mail: [email protected], www.orbit.merret.cz
Podobné dokumenty
OMC 8000 - Techreg s.r.o.
dat. Pro sběr dat lze použit dva režimy. FAST je určený pro rychlé ukládání (40 zápisů/s) naměřených hodnot. Druhým režimem je RTC. Záznam dat je řízený přes Real Time, s možností ukládání ve zvol...
for advertisers
umístěné světlo vždy zaujme pozornost) nebo
uspořádáním zboží (do podoby ledovce).
Zajímavé na této realizaci je ovšem to, že se
zadavatel nespokojil jen s obyčejnou promotion, ale využil příležito...