Promotic

Způsoby komunikace a sdílení dat v aplikaci PROMOTIC

Každá aplikace zaměřená na monitorování a řízení technologických procesů pravděpodobně bude potřebovat získávat nebo ukládat data z(do) externích zdrojů. Zdrojem takových hodnot může být například databáze, PLC automat, soubor na disku, vstupní/výstupní karta do počítače, atd. Tato kapitola popisuje případy, které prakticky přicházejí do úvahy a ukazuje, jak tyto případy řešit v systému PROMOTIC.

1. Komunikace s PLC automaty nebo podobnými zařízeními

Viz:
U této komunikace získáva aplikace PROMOTIC data z externích zařízení - PLC automaty, inteligentní vstupy/výstupy, atd. Zařízení býva asi nejčastěji připojeno přes Ethernet nebo přes sériový port počítače (na počítači například přes port COM1, COM2, atd.). Může však být také připojeno speciální kartou, například pro Siemens PROFIBUS DP, atd.
Přes sériovou linku (rozhraní RS232/RS485/RS422) nebo přes Ethernet umí PLC automat "povídat" svým speciálním jazykem, tzv. komunikačním protokolem. Například
- PLC automat SAIA používá protokol S-BUS
- PLC automat Modicon (a jiné) používá protokol Modbus, atd.


Systém PROMOTIC má připravenu sadu tzv. komunikačních ovladačů, které umí přenášet data nejčastěji využívanými protokoly. Použití těchto PROMOTIC ovladačů je levné a velmi obecné.

Řešme nyní případ, kdy pro dané externí zařízení neexistuje PROMOTIC komunikační ovladač nebo zařízení komunikuje přes jiné rozhraní než sériová linka nebo Ethernet:

Nejstandardnější řešení je v této době použít OPC server, což je software od jiné firmy (obvykle přímo výrobce daného zařízení). Tento software může komunikovat s daným zařízením a poskytuje data (která si se zařízením umí předávat) přes standardní rozhraní OPC. Aplikace PROMOTIC pak jako OPC klient spolupracuje s tímto OPC serverem a umí tak číst (zapisovat) data do daného zařízení. Popis začlenění do PROMOTIC aplikace viz popis: Komunikace přes rozhraní OPC DA.

V této době již starším řešením pro komunikaci se zařízeními je použít DDE server. Princip je prakticky stejný jako u OPC serveru. Rozhraní DDE však není tak rychlé pro přenos balíků dat a neumožní tak obecnou konfiguraci přenosu jako OPC server. DDE je spíš rozhraní pro přenos dat určené pro kancelářské potřeby a ne pro realtime komunikaci. Popis začlenění do PROMOTIC aplikace viz Komunikace pomocí standardního rozhraní DDE.

Dalším prakticky používaným řešením je použití technologie ActiveX. Jiná firma v tom případě zase poskytuje software, který může komunikovat s daným zařízením. Tento software však neposkytuje data přes standardní rozhraní (jako bylo OPC nebo DDE) ale software představuje ActiveX objekt, který lze do PROMOTIC aplikace začlenit objektem PmaActiveX. Nad tímto ActiveX objektem lze pak volat metody (podle dokumentace toho objektu) a tak získávat data ze/do daného zařízení. Příkladem takovéto komunikace může být komunikace s PLC automaty firmy AMiT nebo Johnson Controls.

2. Komunikace mezi aplikacemi prostřednictvím počítačových sítí

Nejjednodušším způsobem jak sdílet data v síti je v systému PROMOTIC sdílení pomocí XML dat. Tento způsob je také velmi obecný a to hlavně proto, že komunikuje protokolem HTTP a lze tedy data standardně přenášet i v Internetu. Nabízená data (z aplikace PROMOTIC) lze tedy velmi jednoduše využívat buď v jiné aplikaci (např. zase PROMOTIC), zobrazovat na HTML stránkách nebo je lze přímo prohlížet ve Web prohlížeči. Popis začlenění do PROMOTIC aplikace viz: Sdílení XML dat nebo Přehled Web technologie v systému PROMOTIC.

Další standardní možností je použít Komunikační ovladače. Některé ovladače mohou komunikovat přes Ethernet. Lze tak přes instalované sítě komunikovat dokonce s PLC automaty, které mají jen komunikaci přes sériový port počítače - pomocí převodníku sériová linka/Ethernet na straně PLC automatu.
Zajímavý může být komunikační ovladač PmChar, pomocí kterého lze posílat v sítích projektantem definovaná data přes TCP nebo UDP protokol.

Starší metodou jak rychle sdílet data mezi aplikacemi PROMOTIC v lokálních sítích je přenos dat přes Sokety. Tento způsob přenosu však není tak transparentní jako přenos přes XML a slouží pouze pro komunikaci mezi aplikacemi PROMOTIC. Popis začlenění do PROMOTIC aplikace viz Přenos dat v síti přes Sokety.

Pro sdílení dat v lokálních sítích lze použít také již výše zmíněné standardní rozhraní OPC nebo DDE. Tato rozhraní umožňují přenos dat i v síti a je k tomu potřeba nainstalovat nádstavby - pro DDE je to NetDDE a pro OPC je to DCOM. Přenos dat je v tom případě sice transparentní ale náročnější na konfiguraci.

3. Komunikace se vstupně/výstupními kartami, zasunutými do počítače na kterém běží aplikace PROMOTIC

V tom případě je vstupně/výstupní karta zasunuta do počítače (např. do ISA nebo PCI slotu) a snímá například analogové nebo digitální vstupy/výstupy. Tyto informace je potřeba sdílet v aplikaci PROMOTIC.
Nejběžnějším řešením je použití DLL knihoven. Prakticky každý výrobce takových karet (např. karet AXIOM, MOXA, PCLab, Tedia, Advantech, Neovision, Elcom, National-Instruments, atd.) dodává ovladač k této kartě v podobě DLL knihovny. DLL knihovna je jednoduše řečeno soubor, ve kterém jsou "zabaleny" funkce, které lze v systému PROMOTIC volat. Volání DLL funkcí lze v systému PROMOTIC provádět objektem PmaDll. Voláním příslušných funkcí (podle dokumentace k danému ovladači) lze tak uskutečnit sdílení informací mezi kartou a aplikací PROMOTIC.
Pro některé karty (např. Neovision, National-Instruments, Advantech) existují OPC servery. Pak je řešení komunikace velmi standardní a stejné jako při komunikaci s PLC automaty.

4. Přenos dat přístupem do souborů nebo databází

Snad za "nejprimitivnější" komunikaci mezi aplikacemi lze považovat sdílení dat v souboru na disku. Dvě aplikace, které takto sdíli data musí znát přesný formát souboru. Systém PROMOTIC umožňuje čtení a zápis do binárních i textových souborů. Seznam souborových funkcí viz Sdílení dat prostřednictvím souborů. Sdílení dat tímto způsobem je však relativně pomalé a potřebuje přístup na disk. Pro skutečné sdílení realtime dat je proto nevhodné, je však vhodné pro ukládání velkých objemů dat pro pozdější použití.

Standardnějším způsobem sdílení dat je přístup do databází. V systému PROMOTIC je přístup do databází řešen objekty PmaAdo a PmaDatabase, které k databázím přistupují obecným způsobem přes standardní rozhraní ADO, ODBC nebo DAO. Tyto rozhraní umožňují přístup do jakékoli databáze, která toto rozhraní podporuje (jsou to prakticky všechny běžné databáze). K tomu, aby aplikace PROMOTIC měla přístup do dané databáze, stačí mít pouze příslušný databázový ovladač. Systém PROMOTIC již obsahuje ovladače běžných databází jako je Access, dBase, atd.
© MICROSYS, spol. s r.o.