Jste zde

ILC150 - PLC s webovým serverem a GSM komunikací

Před nedávnem jsme se seznámili s tímto PLC od společnosti Phoenix Contact, které je mimo jiné je vybaveno vestavěným webovým serverem a modulem pro GSM komunikaci. Nyní si tyto nadstardandní funkce vyzkoušíme, jak opravdu fungují.

Připomeneme si přesné označení PLC a sice ILC150 GSM/GPRS a podíváme se na tyto dvě v úvodu zmiňované funkce. Pro správné zobrazení dat z webového serveru, je nezbytné mít nainstalovánu podporu javy, jak uvidíme dále. Jak to opravdu vypadá, když to funguje, si ukážeme i na video ukázkách na konci článku.

Logo automaty Webový server znamená, že se v internetovém prohlížeči zobrazují proměnné z PLC, které jsou uloženy přímo v PLC. To je připojeno do sítě a třeba také do internetu. Tyto soubory je nutno odněkud vygenerovat, zajistit jejich správnost a uložit do PLC. Zde k tomu slouží softwarový nástroj WebVisit, jehož instalace byla součástí celého balíku programů pro PLC Phoenix Contact.

ILC150 GSM/GPRS - Phoenix Contact 

Tyto nástroje většinou připomínají jednoduché vizualizačni software a ani zde tomu není jinak.

V levém okně máme vygenerované soubory pro přenos do PLC včetně java appletu (to je ten s příponou jar), vpravo pak ikony pro vložení jednotlivých objektů na obrazovku. Dole už zbývají jen ikony vlastností objektů.

Je to celkem jednoduché, přijdete na to během několika minut. Tyhle webové servery totiž většinou žádné extrémní složitosti neumožňují, není to ani jejich cílem. Důležité je zobrazit obrazovky s daty z PLC na kterémkoliv počítači v síti, nebo dokonce na internetu.

I když pokud propátráte všechny vlastnosti jednotlivých komponent, najdete možností nastavení dost a dost.

ILC150 GSM/GPRS - Phoenix Contact 

V každém novém, nebo už vytvořeném projektu se v první řadě musí nastavit vlastnosti projektu. Prozaicky nejdříve velikosti okna, barvu pozadí atd. 

ILC150 GSM/GPRS - Phoenix Contact 

Samozřejmě ale požadujeme vidět, jak proměnné na obrazovce žijí, takže vše musíme potvrdit ve vlastnostech java appletu, který tuto funkci zajišťuje. Záměrně píši potvrdit, neboť téměř vše je přednastaveno tak, aby uživatel pro začátek nemusel nic moc měnit a server ihned fungoval.

ILC150 GSM/GPRS - Phoenix Contact 

Důležitá věc, nezapomenout v další záložce konfigurace nastavit cesty k aktuálnímu PC WORX projektu, který běží v PLC.

ILC150 GSM/GPRS - Phoenix Contact 

Pak už si můžeme vytvořit několik obrazovek a na ně umístit požadované prvky. Pro náš test stačí dvě a basta.

ILC150 GSM/GPRS - Phoenix Contact 

Ukážeme si jen nastavení přepínacího buttonu obrazovek, vše je totiž dost intuitivní a stačí projít vždy záložky u vlastností objektů, abychom našli funkci, kterou potřebujeme.

ILC150 GSM/GPRS - Phoenix Contact 

Samozřejmě nejdůležitější věc, a sice formát zápisu proměnných z PLC do pole pro zobrazování dat. Naše proměnná jsou zrovna sekundy ze systémového času v PLC, abychom nemuseli nic zdlouhavě vymýšlet a viděli ihned, jestli nám spojení žije nebo ne.

Všechny dosažitelné proměnné jsou vidět po výběru tlačítkem "Select" a dají se načíst ze souboru projektu.

ILC150 GSM/GPRS - Phoenix Contact 

Tady už máme všechny proměnné z testovacího prográmku v PLC, ani jsem jich tolik nepotřeboval.

Pro zajímavost v proměnné "*mob_provider" je uložen název operátora ze SIM karty v modulu, jak uvidíme dále v testu GSM komunikace.

ILC150 GSM/GPRS - Phoenix Contact 

Všechno nezapomeneme přes patřičné ikony v menu uložit, zkompilovat a hlavně nasypat do PLC. K tomu slouží funkce s trochu zavádějícím názvem FTP download. Po připojení k PLC vybereme soubory, které do něj chceme přenést.

Obrázky už nepotřebujeme, ty se nemění a stačí je tam proto nakopírovat jednou. Celý proces připojení a přenesení souborů do PLC je také na video ukázce.

ILC150 GSM/GPRS - Phoenix Contact 

Chvilku to trvá, ale nakonec jsme se dočkali potvrzujícího okna o úspěšnosti celé akce. Takže to je celé a jdeme vyzkoušet, jestli se všechno správně zobrazí a ožije v internetovém prohlížeči.

ILC150 GSM/GPRS - Phoenix Contact 

Přes jakéhokoliv ftp klienta se dá mimo jiné do PLC a jeho webového prostoru také připojit. Uvidíme tam třeba pokusy předcházejících kolegů, prostě vše co tam kdo před námi nahrnul a nesmazal.

Ale to jen pro zajímavost, je totiž dobré si zkontrolovat strukturu souborů web serveru PLC.

ILC150 GSM/GPRS - Phoenix Contact 

Při zadání jen IP adresy v prohlížeči PLC spouští nejprve entry.html, zatímco zkušební projekt používal index.html, proto ten název za adresou. Spouštěcí soubor si můžeme ovšem pojmenovat jak potřebujeme, třeba podle typu stroje.

Samotnému zobrazení předchází spuštění java appletu, které pár sekund trvá, je to vidět i na video ukázce na konci článku.

ILC150 GSM/GPRS - Phoenix Contact 

Ještě přepnutí na další obrazovku, abychom viděli, že nám vše žije jak má. Na skutečnou funkci obrazovek tohoto projektu se můžete podívat i na videu.

Ovšem při prvním pokusu určitě čísla neožijí a budete marně hledat chybu v nastavení projektu ve WebVisit.

ILC150 GSM/GPRS - Phoenix Contact 

Proto si otevřeme nápovědu, která je mimochodem perfektní a musíme si v PC změnit nastavení vlastnosti javy.

ILC150 GSM/GPRS - Phoenix Contact 

A sice vymazat temporary soubory a zakázat jejich používání na PC. Tohle nastavení v počítači musíme samozřejmě změnit u každého PC, na kterém chceme naše PLC obrazovky vidět.

V nápovědě je tohle vysvětleno přesně krok za krokem ihned na začátku, jen já jsem ji četl od konce, takže jsem na to přišel asi až za hodinu.

ILC150 GSM/GPRS - Phoenix Contact 

Nedá mě to nezmínit se o nápovědě, ta je naprosto detailní, perfektně členěná a hlavně plná obrázků, takže stačí jít podle ní krok za krokem a nastavení se zprovozněním dokáže téměř každý uživatel. O některých detailech v nastavení si je totiž dobré přečíst, co vůbec dělají a na co se dají použít.

ILC150 GSM/GPRS - Phoenix Contact 

Logo automaty Další možnost komunikace našeho PLC je přes GSM operátora, tedy prostřednictvím SMS zpráv. Umístění SIM karty a antény bylo zmíněno v předchozím článku, takže si jen vyzkoušíme, jak se vše v PLC naprogramuje, abychom mohli eventuálně příjmat či vydávat povely PLC přes SMS mobilního telefonu. Tohle není běžná funkce u PLC, takže bude zajímavé vidět, jak se s tím Phoenix Contact vyrovnal.

 

Přeneseme se zpět do PC WORX, tedy nástroje pro programování PLC Phoenix Contact a k našemu minulému testovacímu prográmku si kousek připíšeme.

Celá GSM komunikace je totiž vyřešena jen přes tři firemní funkční bloky, které stačí vložit do programu a patřičně parametrizovat. Dále si je ukážeme přímo v on-line režimu, aby bylo vidět co a jak.

ILC150 GSM/GPRS - Phoenix Contact 

První blok obslouží SIM kartu, zajistí její kontrolu připojení do GSM sítě a nastavení parametrů, jako číslo SMS brány, PIN a podobně. Myslím, že je vše jasné z on-line zobrazení, detaily jsou v helpu.

Třeba sílu signálu a operátora můžeme jednoduše přenést třeba na nějakou vizualizační obrazovku.

ILC150 GSM/GPRS - Phoenix Contact 

Příjem SMS zprávy je vždy složitější z hlediska jejího vyhodnocení. K tomu účelu slouží v PLC programu další blok, který po uvolnění příjmu (můžeme si v programu stanovit kdy a za jakých podmínek chceme vůbec zprávy přijmout) čeká na SMS. Její přijetí oznámí bitem a do patřičných standardních proměnných "nasype" číslo od koho zpráva přišla a její obsah.

Parametr "Return address" vloží do proměnné číslo odesílatele, tedy to moje.

ILC150 GSM/GPRS - Phoenix Contact 

Jen globální proměnné "GL_SMS_data" pro příjem dat jsou parametrizovány jako "array" pole.

ILC150 GSM/GPRS - Phoenix Contact 

Data přijatých zpráv si už musíme ve skutečné aplikaci programu obsloužit sami. Většinou se jedná o proměnné typu "String". Takže vyhodnotit například od koho SMS je, její obsah porovnat s nějakou databází a podle skutečné situace vyzvednout z nějakého datového bloku patřičnou odpověď a tu poslat na definované číslo, nebo vykonat nějakou funkci, sepnout výstup atd. Variant využití a vyhodnocení se nabízí bezpočet.

ILC150 GSM/GPRS - Phoenix Contact 

V on-line stavovém okně PLC programu jsou na ukázku vidět přijatá data z SMS, včetně textového obsahu zprávy.

ILC150 GSM/GPRS - Phoenix Contact 

Řetězec přijatých znaků je ještě nutné ošetřit na jejich správnost, jinak nám PLC vyhlásí chybku. Pro naše pokusy to ale nemusíme řešit.

ILC150 GSM/GPRS - Phoenix Contact 

Odeslání zprávy je ještě jednodušší, jen jsem rychle doklepl segment PLC programu, abych trochu zabránil nechtěnému a nekontrolovatelnému odesíláni SMS jedné za druhou. Program neodešle další zprávu dříve než za určitý čas. Dopsal jsem si ještě i čítač zpráv, je vidět že jsem v této fázi odeslal dvě, viz stav čítače CTU_1.

Pro ty co se tímto programováním živí je tohle jistě primitivní, my to ale tady máme jen na ukázku.

ILC150 GSM/GPRS - Phoenix Contact 

Funkční blok pro odeslání zprávy vyžaduje jen telefonní číslo "komu" a v "string" proměnné na vstupu DATA text odesílané zprávy. To je vše, úspěšné odeslání blok oznámí výstupním bitem DONE, průběh odesílání je pak ve stavovém slově STATUS.

Detailní popis funkčních bloků a význam stavu proměnných je samozřejmě v helpu PC WORX.

ILC150 GSM/GPRS - Phoenix Contact 

Ukázka prostředí PC WORX a kompilace programu, download do PLC a spuštění v on-line režimu.  

Z PC WORX do webserveru PLC živě: http://www.youtube.com/watch?v=ve_49goY_28

PLC webserver živě: http://www.youtube.com/watch?v=Nrwc102lVcU 

 

Závěr: 

Komunikační funkce ICL150 GSM/GPRS v PLC jsou už to "pravé ořechové". Webserver nepotřebuje žádné nadstandardní vybavení a GSM modul přímo v PLC je opravdu dobrý nápad. Takže pokud PLC Phoenix Contact používáte, jistě najdete využití pro tento typ, pokud ne tak se můžete aspoň nechat inspirovat.

Jaroslav Blažek


 

Doplňující odkazy k článku: 

PHOENIX CONTACT Česká republika, kontaktní informace, podpora: http://www.phoenixcontact.cz/contact/109.htm

Manuál, parametry, popis ILC150 GSM/GPRS: http://eshop.phoenixcontact.net/phoenix/treeViewClick.do?general=enproc&UID=2916545

Software PC WORX: http://www.phoenixcontact.cz/automation/187_27075.htm

Hodnocení článku: