Co to je OPC

OPC Foundation je nezisková organizace, která na základě OLE/COM standartu stanovila protokol pro rychlejší a bezpečnější přenos technologických dat. OPC (OLE for process control) je množina OLE/COM rozhraní které zpostředkovávají výměnu informací mezi klientem a serverem.

Klient

Prostřednictvím OPC klienta jsou aplikace schopny komunikovat s libovolným OPC serverem. Nikde naní stanoveno, jakým způsobem bude klient komunikovat s aplikací. Rovněž není nikde stanoveno, jakým spůsobem bude server komunikovat s v/v zařízením. Avšak způsob komunikace server — client je pevně stanoven OPC protokolem. Proto existuje-li pro danou aplikaci OPC klient, je možno v ní spracovávat data z libovolného v/v zařízení pro které existuje OPC server (OPC servery dnes existují pro drtivou většinu všech v/v zařízení).

Server

Server je program, který získává data z konkrétního v/v zařízení. Klientovi je poskytuje ve formě tzv. položek. To znamená, že mapuje paměťové místo v/v zařízení na položku ke které má přístup klient. Položka je tedy symbolické jméno, proměnná, která ukazuje na konkrétní místo v paměti v/v zařízení. Správu položek, to znamená jejich přidávání, odebírání a editaci má na starosti server.

Struktura OPC

Jak bylo uvedeno výše, data jsou v OPC předávána pomocí položek. Položky jsou združovány do skupin. Každá skupina má tři základní parametry.

Ke každé položce jsou kromě její hodnoty poskytovány doprovodné informace. Ty jsou:

Schéma propojení plikace v systému Control Web a v/v zařízení prostřenictvím OPC.

Schéma propojení aplikace a v/v zařízení

Schéma propojení aplikace a v/v zařízení

Komunikace klient-server

Každý OPC server má datové rozhraní pomocí kterého klient uplatňuje požadavky na čtení nebo zápis. Čtení nebo zápis dat může vůči klientovi probíhat buď synchronně, nebo asynchronně. 'Požadavek na čtení nebo zápis' znamená v podstatě volání procedury serveru. Pokud je tedy použita komunikace synchronní, zavolá klient proceduru serveru a program nebude pokračovat do té doby, dokud server nezíská požadovaná data. To můžou být řádově sekundy. Při použití asynchronní komunikace po zavolání procedury serveru program pokračuje bez přestávky dál. Až server získá požadovaná data, informuje o tom klienta pomocí návratového volání.

Rozdíl mezi použitím synchronní
a asynchronní komunikace

Rozdíl mezi použitím synchronní a asynchronní komunikace

Synchronní komunikace

  1. Požadavek na čtení dat
  2. Vyslání požadavku do klienta
  3. Zpracování požadavku klientem
  4. Zaslání požadavku serveru a čekání na odpověď
  5. Zpracování odpovědi serveru a poslání do aplikace
Asynchronní komunikace

  1. Požadavek na čtení dat
  2. Vyslání požadavku do klienta
  3. Zpracování požadavku klientem
  4. Zaslání požadavku serveru, program pokračuje v činnosti
  5. Server poslal odpověď — zpracování odpovědi a poslání do aplikace

Komunikace se vzdáleným serverem

OPC umožňuje klientovi komunikovat se serverem na vzdáleném počítači prostřednictvím rozhraní DCOM (distributed COM). Pro přenos dat pomocí OPC mezi dvěma počítači musí být splněny tyto podmínky:

  1. Na obou dvou počítačích musí být nainstalovaný DCOM. Ve WinNT4.0 je součástí systému, u Win95 se musí nainstalovat dodatečně.
  2. Uživatel se musí z počítače, na kterém je klient přihlásit na počítač, na kterém je server jako ADMINISTRÁTOR (mít administrátorská práva, to znamená mimo jiné přístup do systémového registru). Tohoto přihlášení lze dosáhnout například z Exploreru.
  3. DCOM u serveru musí být nastavený tak aby ho směl spouštět daný vzdálený uživatel. Nejjednodušší cesta je nastavit Every One u všech práv. Toto nastavení lze provést aplikací 'dcomcnfg.exe', která je součástí systému. Kromě obecných musí být nastavena i práva u aplikace, která obsahuje samotný server.

Popis OPC rozhraní

Na straně serveru musí být implementovány 3 základní objekty, obsahující příslušná rozhraní. Jsou to:

Na straně klienta musi být implementováno jedno rozhraní sloužící pro asynchronní komunikaci.

Poznámka : Metody rozhraní jsou zapsané v jazyce C++.

Potřebná podpora

Aby na vašem počítači mohla probíhat OPC komunikace, musí být zaregistrovány tyto knihovny 'opccomn_ps.dll' a 'opcproxy.dll'. Jejich instalace je většinou součástí instalace serveru. Pokud tomu tak není, jsou k dispozici ke stažení u OPC Foundation na adrese http://www.opcfoundation.org kde je popsán i postup jejich instalace.