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
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 ale stále využívaný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í ně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.