Než se pustíme do vlastního popisu aplikace, zrekapitulujme si, o čem přesně hovoříme.
Řada multimetrů, ať již ručních, či stolních je vybavena sériovým rozhraním
RS-232, a to buď přímo, nebo galvanicky (opticky) odděleného, které jim umožňuje komunikovat s
PC pomocí programu zpravidla dodávaného s měřicím přístrojem.
Přístroj po sériové lince poskytuje informace o zvolené měřené veličině,
její hodnotě, měřícím rozsahu a další údaje, které má
zobrazeny na displeji. Místo počítače však lze použít jakékoliv jiné
zařízení, které bude zvládat komunikační protokol multimetru. To je
užitečné především, pokud je třeba data dlouhodobě zaznamávat a vyhodnocovat..
Pokud chceme data z multimetru dostat do Ethernetu, je třeba data ze sériového rozhraní
RS-232 nějak převést do počítačovou sítě. V našem případě je použit
ethernetový modul Charon I, osazený do vývojové desky Charon I DK
(Development Kit) a s nahraným firmwarem METEX. Modul zde slouží jako konvertor mezi multimetrem
připojeným přes RS-232 a ethernetem nebo internetem.
Charon zajišťuje komunikaci s multimetrem a současně měřící přístroj pravidelnými
žádostmi o data udržuje v aktivním stavu, resp. zabraňuje jeho automatickému vypnutí i v
případě, že nejsou požadovány naměřené hodnoty. Získané údaje jsou v
modulu kdykoliv k dispozici po ethernetové lince.
Aplikace METEX PHP Control
Zatímco METEX Control Software je software pro PC, který pod Windows naměřená data zpracovává, je zde popisovaný balík METEX PHP Control je soubor PHP scriptů, které běží na obecném Internetovém serveru a pokud server potřebuje platná data, skript naváže socketové spojení s modulem Charon, načte aktuální údaje z multimetru a uloží je do databáze. Druhý script pak naměřené hodnoty zobrazí formou HTML stránky ve webovém prohlížeči.
U socketového spojení se při komunikaci po síti používá model klient-server a k přenosu dat paksíťových socketů (TCP/IP). Modul Charon se svým firmware funguje jako server, který poslouchá na zvoleném portu, zatímco PHP script funguje jako klient, který zasílá modulu své požadavky. Přestože práce se sockety je v PHP zatím implementována jen jako experimentální, funguje zcela bez problémů.
Data získaná ze socketu jsou dále pomocí PHP upravena (odstraněním přebytečných nul a mezer), dekódována a vložena do proměnných a ty následně dosazeny do HTML kódu tvořícího výslednou WWW stránku. Ta kromě získaných údajů zobrazuje nejen získanou hodnotu, ale též adresu serveru, ze kterého byly údaje získány, datum a čas jejich obdržení.
Ačkoli zkušební demo je schopné měnit parametry připojení, není na stránce možné tyto hodnoty měnit, aby se zachovala její jednoduchost.. . V obecném demu lze aktivovat automatické obnovování stránky (Reload every 30 seconds). V případě problémů s komunikací lze funkci scriptu ověřit vrácením připojovacích hodnot na výchozí úroveň stiskem tlačítka HW Demo, které nastaví adresu a port modulu nacházejícímu se v redakci HW serveru.
V naší demonstrační aplikaci nakonec ještě dojde k vykreslení grafu průběhu naměřených hodnot pomocí GD knihovny PHP. Aby nedošlo k zahlcení modulu Charon, jsou data ukládána do externího souboru a načítána pouze jednou za několik sekund (v případě HW Dema je minimální interval 60 s).
Závěr
Ačkoli je tonto konkrétní veřejné HW demo pouze jedoduchý PHP script s ukázkou možností bez praktického využití (neboť téhož lze snadněji dosáhnout použitím aplikace METEX Control Software), ukazuje široké možnosti uplatnění zejména při potřebě sledování údajů z více měřicích přístrojů. Bylo by například velmi snadné upravit script HTML šablonu tak, aby současně sledovala a zobrazovala údaje z více míst, kontrolovala rozsah měřených hodnot a v případě jejich vybočení z nastaveného rozmezí nebo přerušení komunikace zaslala například upozorňující e-mail obsahující adresu (název) sledovaného místa a naměřenou hodnotu. Možnosti využití jsou takřka neomezené.
Obrovské možnosti otevírá také fakt, že při tomto principu lze na veřený script přistupovat najednou z mnoha míst, velký WWW server lze snadněji zabezpečit a data lze zpracovávat jako standardní databázi.
Nevýhodou tohoto scriptu je však potřeba www serveru s nainstalovaným PHP ve verzi 4.1 nebo novějším a povolenými sockety. Protože HW server tuto možnost nemá, je zkušební DEMO umístěno na stránkách serveru www.MCU.cz na adrese http://www.c51.info/metex/index.php
PHP scripty METEX PHP Control si můžete stáhnout ze stránek www.HWgroup.cz (viz odkazy pod článkem), ale tyto neobsahují funkci pro dekódování dat z multimetru Metex. Pro získání této externí funkce kontaktujte HW group.
mrazek@ HW.cz
DOWNLOAD & Odkazy
- Metex PHP Control - archiv .php scriptů s popsanou aplikací...
- Charon I – http://www.hwgroup.cz/products/charon1/
- www.HWgroup.cz - Dokumentace k finálním produktů a řešením
Komentáře
dotaz
Dobry den mate sowtver na metex m 3890d usb pod dos dekuji Jesko