Jste zde

TEST - IO Controller – ovládání a RS-232 přes Ethernet

Pod názvem I/O Controller se v nabídce HW serveru nachází zajímavá krabička umožňující přes Ethernet či internet dálkové ovládání zařízení nebo prodloužení klasické RS-232 komunikace. K dispozici je 8 binárních vstupů a 8 spínaných výstupů, které se ovládají pomocí NVT příkazů. IO Controller tak lze provozovat i pod Linuxem nebo jinými OS a začlenit jej do libovolného softwaru.

V nabídce společnosti HW server, resp. HW group, naleznete mnoho různých zařízení pro dálkové ovládání, řízení a tunelování sériové komunikace přes internet. Jedním z nich je i krabička jmenující se IO Controller. Ta umožňuje v zásadě tři zajímavé funkce:

  • dálkové spouštění, vypínání, ovládání zařízení přes Ethernet

  • dálkové čtení binárních (dvoustavových) hodnot přes Ethernet

  • přenos dat sériové komunikace RS-232 a RS-485 přes Ethernet

To vše v jednom zařízení zapouzdřené v pěkné a odolné černé plastové krabičce vyrobeno v ČR (Made in Czech Republic).

Krabičku IO Controller lze použít pro dálkové řízení, zapínání a vypínání strojů a zařízení
nebo prodloužení RS-232 komunikace přes Ethernet.

Bližší popis IO Controlleru

Krabička s lichoběžníkovým tvarem o rozměrech 130 x 100 x 40 mm je na obou čelních stranách vybavena konektory. Zatímco na jedné straně najdeme klasický ethernetový konektor RJ-45, klasický 9pinový D-SUB male konektor pro sériovou komunikaci a koaxiální konektor 5V napájení, na druhé straně se nachází celkem 8 spínaných výstupů O.0 až O.7 doplněné o vztažnou svorku O.COM a zemnící GND a také 8 vstupních binárních vstupů I.0 až I.7 doplněné o napájecí svorku I.PWR a zemnící svorku I.GND. Všechny tyto svorky jsou v provedení zásuvných konektorů pro šroubovací svorkovnice.

Výstupy jsou pak v provedení spínacích darlingtonových tranzistorů se společnou zemí oddělených od vnitřní elektroniky optočleny podobně, jako jsou odděleny vstupy. Výstupy lze spínat stejnosměrné napětí max. 50 VDC při zatěžování proudem max. 500 mA.

Vstupy pak reagují na změnu napětí hodnoty 0-3 VDC (stav log. 0) na napětí 5 – 40 VDC (stav log. 1) a obráceně při rychlosti vzorkování 10 ms. Pulsní či obdélníkový napěťový signál tak může mít frekvenci až 5 kHz.Samozřejmě lze detekovat i rozepnutí/sepnutí beznapěťového kontaktu, kterým „proženeme“ napětí například ze svorky I.PWR.

Napájení krabičky IO Controller je pak nutné napájet ze síťového zdroje poskytující stabilizované napětí 8 – 24 V DC. Nejlepší je tedy použít napětí 12 VDC.

 

Fotografie vnitřního provedení I/O Controlleru (vlevo) a schéma zapojení I/O vstupů a výstupů (vpravo)

Možnosti ovládání IO Controlleru

U zařízení umožňujícím vzdálené řízení pro ethernetu, resp. internetu, je samozřejmě velmi důležité, jakým způsobem s krabičkou komunikovat, resp. jak ji ovládat.

K nalezení krabičky na ethernetové komunikační síti i pro nastavení jejích základních vlastností, se využívá tzv. UDP komunikace, tedy jednoduchý obousměrný přenos dat přes Ethernet. Jeho pomocí lze nastavit nebo změnit ethernetové parametry (zvolit zda pro běžnou komunikaci využívat TCP nebo UDP protokol, nastavit IP adresu, TCP kanál, Masku, komunikační bránu), IP filtr umožňující definovat ke komunikaci povolená vzdálená zařízení, parametry sériové komunikace RS-232/RS-485 (rychlost, bity, handshake apod.), některé parametry možnosti filtrace a úpravy chování vstupů a výstupů nebo možnost nastavit přístupové heslo pro přístup do těchto parametrů. Pro navázání komunikace s krabičkou pak stačí jen terminál podporující UDP setup a UDP komunikaci, jako například prográmek „Hercules“ z dílen HW severu. Zamozřejmě je možné všechny uvedené parametry změnit i lokálně přes RS-232 rozhraní a libovolný terminál pro sériovou komunikaci (např. ve Window standardní utilita Hyperlink).

 

Prográmek UDP Config umí nalézt všechna zařízení připojená na Ethernet a umožňuje změnit jejich základní nastavení.

Z pohledu vzdáleného řízení se využívá komunikační standard NVT (Network Virtual Terminal) ve spojení s protokolem M2M (Machine-to-Machine), který umožňuje vzdálené ovládání výstupů a čtení stavů vstupů prostřednictvím jednoduchých „kódových příkazů“, jako například „FF FA 2C 32 16 FF F0“.

K jejich zasílání a čtení není potřeba žádný zvláštní software. Stačí pouze nějaký TCP terminál, s jehož pomocí se prostřednictvím IP adresy a TCP kanálu připojíte ke konkrétnímu IO Controlleru a zašlete mu konkrétní ovládací NVT M2M sekvenci hexa znaků definující stavy výstupů. Při změně vstupů pak obdržíte jinou podobnou sekvenci popisující stav vstupů. Nezasvěceným však samotná posloupnost znaků asi nic neřekne a je nutné buď se je naučit z manuálu nebo použít nějaký PC prográmek, který pracuje jako převodník hexa kódů a pro uživatele představuje jednoduché a srozumitelné textové nebo grafické ovládací rozhraní.

Testování praktické funkce

IO Controller se dodává v krabici společně s CD-ROM, na kterém se nachází mnoho zajímavých podpůrných prográmků nejen pro OS Windows usnadňující používání všech funkcí začátečníkům. Všechny však snadno najdete i na stránkách HW severu či HW group. V pdf manuálu k zařízení, též se nacházející na CD-ROM, najdete i jednoduchý návod a přehled jak se přímo snadno vyznat v NVT příkazech a jak je používat. I absolutní začátečník, který je dostatečně zvídavý, si vše může snadno nastudovat.

Po vybalení a lokálním připojení na počítač pomocí ethernetového kabelu s konektory RJ-45 stačí například použít utilitu / prográmek Hercules nebo UDP Config (obě z dílen HW serveru) a vyhledat připojenou krabičku na základě její jedinečné MAC adresy. Po kliknutí na MAC adresu nalezeného zařízení se objeví aktuální parametry „ethernetové nastavení“, které je možné změnit. Lze tady tak změnit IP adresu na vámi požadovanou. Zde lze také zapnout / vypnout podporu NVT. Aby však bylo možné používat dále popisované ovládání výstupů, je nutné NVT zapnout (NVT Enable).

Když známe IP adresu, je pak možné se TCP terminálem na IO Controller připojit a podrobněji nastavit / změnit další pametry nebo začít využívat virtuální sériový port umožňující tunelovat RS-232 komunikaci přes Ethernet. K tomu ale později.

Jak se pracuje s NVT

Kouzlo NVT M2M hexa příkazů je v tom, že k dálkovému čtení vstupů a ovládání výstupů prakticky nepotřebujete vůbec nic speciálního, stačí pouze mít jakýkoliv TCP nebo UDP terminál. Nejsou tedy limitováni ani uživatelé jiných operačních systémů než Windows, tedy i Linuxáři nebo uživatelé Appel MacIntosh. Uživatelé Windowsů, kteří nechtějí nic programovat ani se učit kódy příkazů, pak mohou využít některou ze 3 utilit vypálených na CD. Jsou to:

  • IO Controller Example – prográmek umožňující myší nastavit výstupy a zobrazit stav vstupů

  • IPRC_cmd – terminálový (DOSovský) program pro nastavení výstupů.

  • HW VSP 2.2 – Virtuální sériový port pro RS-232 přenos po Ethernetu, který v sobě však obsahuje i jednoduché zobrazení stavů vstupů pomocí indikačních „světýlek“ a ovládání výstup vložením „puntíku“ na pozici ON (zapnuto) či OFF (vypnuto).

  • Hercules – univerzální ovládací program, který obsahuje i záložku „Test Mode“ umožňující zobrazit stav vstupů „obrazovými světýlky“ nebo změnit výstupy zaškrtnutím položky ON nebo OFF u konkrétního vývodu.
 

Univerzální terminálový a testovací program Hercules z dílen HW serveru umožňuje zároveň zasílat a číst NVT příkazy, tak nastavovat výstupy myší.

Pokud jste uživatelé PC již odkojení MS DOSem (stejně jako já) doporučuji se nespokojit s okny, a rozhodně vyzkoušet utilitu IPRC_cmd.exe. Pokud ji spustíte v terminálu (cmd.exe) jen tak bez dalších parametrů, zobrazí se vám nápověda. Zde zjistíte, že výstupy lze snadno změnit spuštěním souboru s následujícími parametry: „IPR_cmd -d IOC -o O1=ON 192.168.1.41“. Toto spuštění konkrétně nastaví výstup O1 IO Controlleru s IP danou adresou do stavu ON. Zkušení uživatelé si tak snadno mohou vytvořit dávkový BAT soubor s možnostmi volby.

Příklady změny stavů výstupů O0 až O7 pomocí programu IPRC_cmd

V případě Windowsovských utilit se pak vše snadno ovládá myší a po navázání TCP připojení na konkrétní IP adresu krabičky se všechny změny vstupů hned on-line objeví na obrazovce a naopak všechny změny stavů výstupů projeví i fyzicky na výstupech IO Controlleru. Prográmek IO Controller Example pak umožňuje i vložit dekadické číslo, které dle jeho binární 8bitové hodnoty příslušně nastaví i stavy výstupů (např. zadáním čísla 3 se sepnou vývody 0 a 1 do stavu log.1).

Pro programátory všeho druhu je pak možné si vytvořit i vlastní ovládací program, protože jsou k dispozici zdrojové kódy pro ovládání krabičky ve všech obvyklých programovacích jazycích (C, Delphi, PHP, Java). Zvláště díky PHP zdrojáku lze snadno NVT ovládání snadno vestavět do webových stránek.

 

Na přiloženém CD-ROMu najdete dvě utility vhodné pro vzdálené ovládání a čtení vstupů a výstupů klikáním myší - programy: I/O Controller Example (vlevo) a záložka Binary I/O v programu HW VSP 2.2 (vpravo).

Využití sériového rozhraní

Mimo uvedené binární vstupy a spínané výstupy tu však je ještě RS-232/RS-485 rozhraní v podobě klasického 9pinového konektoru. Ten je ideální využít pro aplikace tunelování sériové komunikace přes Ethernet. A to jak mezi IO Controllerem a PC, tak i přímo jen mezi dvěma krabičkami. V případě spojení s PC je asi nejlepší využít na CD-ROM přítomný HW VSP software, který po nainstalování umožní vytvořit tzv. virtuální sériový port, který se pro programy v PC tváří jako klasický COM port, i když jde o ethernetové připojení. A právě HW VSP realizuje onen převodník, ve kterém nastavením přiřadíte nějakému číslu COM portu IP adresu a TCP kanál požadovaného převodníku (např. na obrázku jsem přiřadil COM 5 připojené krabičce s IP adresou 192.168.1.41 s kanálem 23).

V PC pak v každém programu využívajícím RS-232 komunikaci lze vybrat vytvořený COM port (u mě COM 5), který se nejen tváří, ale pro program pracuje jako by šlo opravdu přímo o RS-232 konektor. Prakticky však může být vzdálen i stovky km prostřednictvím internetu. Prostě jako bychom měli RS-232 na hodně dlouhé šňůře. V případě IO Controlleru vše funguje na jedničku a po nainstalování HW VSP 2.2, připojení krabičky do ethernetového portu počítače a provedení nastavení již komunikace bez problémů probíhala oběma směry, tedy do i z počítače.

   

Ukázky použití programu HW VSP (Virtuální Sériový Port) - zleva: nalezení IO Controlleru na síti, přiřazení IP adresy COM portu, navázání komunikace s IO Controllerem a plná funkce VSP.

V případě vzájemného propojení dvou IO Controllerů ethernetovým kabelem je možné realizovat i tunelování RS-232 přes ethernet mezi dvěma krabičkami na dvou různých místech. V tomto případě se například hodí využívat UDP komunikační ethernetový režim, kdy se mimo vlastní IP adresy do každé krabičky nastaví i IP adresa vzdálené krabičky, která se má tunelování zůčastnit. Takto propojené krabičky jsou si rovnocené a jakmile jedna začne vysílat, druhá hned přímá a převádí data zpět na svůj RS-232 konektor.

Testování funkce HW VSP a vzdáleného RS-232 v IO Controlleru: Hyperterminál (zadní okno) je připojen na virtuální sériový port COM5 a komunikuje s terminálem Hercules (okno více vpředu), který je přes COM10 hardwarově napojen přímo na RS-232 port na krabičce IO Contoller.

Závěr

IO Controller může díky přiloženým ovládacím prográmkům využívat jak laik, tak i profesionální technici a konstruktéři díky širokým možnostem přizpůsobení a vytvoření svého ovládádání, třeba jako součást vyvíjeného řídícího softwaru. Pokud tedy potřebuje dálkové snímání stavů, řízení zařízení nebo prodloužit RS-232 či RS-485 komunikaci je IO Controller dobrou volbou.

IO Controller si může v libovolném počtu kusů zakoupit v internetovém obchodě HW serveru – obchod.hw.cz.

Více podrobných informací a pdf návody ke stažení naleznete na stránkách produktu - www.hw-group.com/products/io_controller/index_cz.html.

Antonín Vojáček

DOWNLOAD & Odkazy

Hodnocení článku: