Praktická teorie

Praktická teorie

Co je OPC synchronní a asynchronní čtení nebo zápis?

Ve specifikaci OPC DA jsou definovány čtyři způsoby komunikace dat:

  • synchronní čtení (zápis) I/O,
  • asynchronní čtení (zápis) I/O,
  • čtení ze zařízení nebo cache,
  • čtení parametrů OPC tagu.

1. Synchronní čtení (cache/zařízení)

Synchronní čtení I/O nutí OPC klienta čekat na hodnotu, kterou OPC server musí přečíst ze zařízení a následně poslat do OPC klienta. OPC klient čeká na tuto hodnotu a dokud ji od OPC serveru nedostane, neprovádí žádné další operace. 

Pokud je v projektu menší množství tagů, dopad na plynulost běhu OPC klienta je minimální. Praxe však bývá většinou jiná, a tak v konečném důsledku může OPC klient číst data trhaně nebo se obsluze může zdát, že se jeho chod místy zastavuje. 

Synchronní čtení je proto vhodné v menších projektech (malé množství komunikovaných hodnot) nebo v projektech, kde OPC klient čte hodnoty z cache OPC serveru nebo kde OPC server a OPC klient jsou nainstalovány na stejné PC stanici. Každopádně vám ale doporučujeme používat ve vašich OPC projektech raději asynchronní způsob čtení I/O hodnot.

Zapamatujte si:

  • Synchronní čtení může zastavit OPC klienta!
  • Čtení OPC dat v OPC klientu je zastaveno do chvíle, dokud nedostane data ze zařízení.

2. Asynchronní čtení (cache/zařízení)

OPC klient pošle dotaz OPC serveru (čti hodnotu / zapiš hodnotu...) a nečeká na provedení tohoto dotazu. Jakmile OPC server splní dotaz, informuje obratem OPC klienta. Asynchronní čtení proto umožňuje OPC klientu běžet bez přerušení, zatímco OPC server čte data ze zařízení pro OPC klienta.

Zapamatujte si:

  • Asynchronní čtení nečeká na odezvu OPC serveru.
  • OPC server čte data ze zařízení a toto čtení si navíc sám optimalizuje.
    Synchronní vs. asynchronní čtení I/O
  • Ukažme si na příkladu rozdíl mezi synchronním a asynchronním čtením. OPC klient požaduje synchronní čtení hodnoty z OPC serveru, který okamžitě zastavuje vše, co momentálně dělá, a maximálně se snaží vyhovět tomuto novému požadavku. Může se to zdát jako ideální způsob čtení dat, ale ve skutečnosti je tato metoda velmi neefektivní. Naproti tomu asynchronní čtení dat umožňuje OPC klientu posílat požadavky OPC serveru (čtení/zápis) a nečekat na jejich zpracování. OPC server přijímá více podobných požadavků od různých OPC klientů, vytvoří z nich kompaktní dotaz a na jeho základě přečte (nebo zapíše) data ze (do) zařízení. 
    Z těchto důvodů vám doporučujeme používat ve vašich projektech asynchronní způsob čtení/zápisu hodnot.

3. Asynchronní refresh (cache/zařízení)

OPC server čte data za zařízení a tyto hodnoty si uchovává ve vyrovnávací paměti – cache. Aby hodnoty pro OPC klienta byly stále aktuální, musí OPC server tyto hodnoty ze zařízení pravidelně číst a ukládat do své vyrovnávací paměti. V OPC klientu pak můžeme nastavit, jak často se mají hodnoty z OPC serveru načítat (refresh period, update rate) a zda se hodnoty mají číst z vyrovnávací paměti nebo přímo ze zařízení. 

4. Asynchronní/synchronní zápis

Ten probíhá podobně jako asynchronní nebo synchronní čtení. 

Zapamatujte si:

  • OPC server čte/zapisuje data zařízení v závislosti na požadavcích z nadřazených aplikací (OPC klient).
  • OPC klient komunikuje s OPC serverem tak, že mu posílá dotazy (čti hodnotu, zapiš hodnotu apod.) a OPC server tyto dotazy vykonává.
  • Používejte ve svých projektech raději asynchronní typ čtení/zápisu hodnot.

Související produkty

27 295.00 Kč (bez DPH)
27 295.00 Kč (bez DPH)
75 260.00 Kč (bez DPH)
60 685.00 Kč (bez DPH)

Novinky
z naší firmy

Stačí 2 e-maily měsíčně a neunikne vám nic podstatného. 
Přihlaste se a každou druhou středu čtěte přímo ve své poště.

Váš e-mail je u nás v bezpečí. Vždy ctíme Zásady zpracován osobních údajů.

Společnost FOXON je držitelem certifikátu ISO 9001:2018

Sledujte nás i na sociálních sítích.

Made by FOXON s.r.o. © 2019

Rychlý dotaz


Typ vašeho dotazu