Moravské přístroje, a. s., zdroj: https://www.mii.cz/art?id=997&lang=405, vytištěno: 30.04.2025 11:07:29
Hlavní stránka▹Novinky | 28.8.2019 |
---|
Advantech je výrobcem plug-in IO karet, poskytující plný rozsah produktů pro sběr dat (DAQ, data acquisition) a řízení, které jsou široce používané pro průmyslové a laboratorní aplikace, monitoring, automatizaci, testování, měření atd. Každé zařízení z této série je podporováno balíkem DAQNavi, který obsahuje výkonné a spolehlivé ovladače pro daná zařízení a také programovou podporu. Tuto podporu také využívá náš ovladač AdvDAQ pro Control Web 8. |
Ovladač Advantech AdvDAQ využívá nové rozhraní ovladačů doplněné v Control Webu 8. Z tohoto důvodu nebude ovladač k dispozici pro starší verze systému Control Web. Vzhledem k jednodušším licenčním podmínkám Control Webu 8 je možné ovladač zkoušet i bez použití licence. Díky použití programové podpory DAQNavi umí ovladač komunikovat s velkou škálou zařízení. Tato zařízení jsou rozdělena do několika hlavních kategorií: PCI, PCI Express, ISA karty a USB moduly. Seznam všech podporovaných zařízení pak lze nalézt přímo na webu firmy Advantech. Pokud při instalaci ovladače není na daném počítači detekována podpora DAQNavi, spustí instalátor samostatnou instalaci potřebné části podpory. Tato instalace nainstaluje základní podpůrné prostředky spolu s programovou podporou a zařízení DemoDevice, které lze použít například k testům při vývoji aplikace a využívá ho také dodávaný příklad použití ovladače. V instalátoru stači zvolit položku Install DAQNavi a pomocí tlačitek Next projít celou instalaci. Pomocí ovladače lze realizovat synchronní čtení a zápis analogových i digitálních vstupů a výstupů. Z čítačů lze použít čtení počtu událostí na digitálním vstupu (Event Counter), popř. měřit jejich frekvenci (Frequency Measurement). Pokročilejší práce se zařízením, jako je bufferované nebo triggerované čtení vstupů/výstupů a generování pulsů/PWM, prozatím ovladač nepodporuje. Příklad aplikace pro práci s ovladačem AdvDAQ, který je součástí instalace. KonfiguracePřed konfigurací ovladače je potřeba nastavit samostatné zařízení. Konfigurační dialog každého zařízení lze nalézt ve Správci zařízení systému Windows. Po otevření dialogu s vlastnostmi zařízení lze pod záložkou Device configuration najít tlačítko Configure… pro otevření konfiguračního dialogu. Pokud máme nainstalovanou plnou podporu DAQNavi spolu se softwarem Advantech Navigator, lze konfigurovat zařízení i přímo přes tuto aplikaci. Aplikace Navigator také umožnuje generování tzv. profilů zařízení, které lze poté pomocí ovladače do zařízení automaticky načíst, viz parametr profile v sekci device. Poznámka: Plná podpora Advantech DAQNavi není součástí instalace tohoto ovladače a lze ji stáhnout z webu firmy Advantech. Konfigurace ovladače pak probíhá přes klasický konfigurační soubor '.par'. Celý soubor parametrů je rozdělen do několika sekcí. Název sekce je uveden v hranatých závorkách a musí být jedinečný. V sekci jsou uvedeny za jménem a znakem = jednotlivé parametry. Na jednom řádku může být definován jeden parametr. Pokud máme například dvě zařízení, můžeme použít následující zápis konfiguračního souboru: [device_0] … [channels_0] … [device_1] … [channels_1] … Definice zařízení pak vypadá následovně: [device_<N>] device_desc = <S> device_num = <N> module_index = <N> profile = <S> unit = <U> …
V této sekci je povinný pouze jeden z parametrů device_desc a device_num. Ostatní parametry jsou nepovinné. Příklad sekce device ovladače: [device_0] device_desc = PCI-1751,BID#0 profile = pci1751.xml unit = SCL Sekce channels pak definuje jednotlivé kanály nebo skupiny kanálů ovladače a jejich reprezentaci v zařízení. Kanály nebo skupiny kanálů jsou definovány číslem, resp. rozsahem kanálů a jejich typem. V některých případech musí následovat číslo portu, popř. číslo bitu na daném zařízení, ke kterému je kanál přiřazen. Další nepovinný parametr určuje typ reprezentace dat u analogových vstupů/výstupů. Součástí definice může být i komentář. Ten musí být uveden na samostatném řádku a musí začínat středníkem. Následuje způsob zápisu parametrů a jejich možné hodnoty. Každému kanálu nebo skupině kanálů odpovídá jeden řádek textu. V hranatých závorkách jsou uvedeny nepovinné nebo doplňující parametry: [channels_<N>] <Channel> = <Type><Port>[.<Bit>][,<Unit>] <From> - <To> = <Type>[<Port>][.<Bit>][,<Unit>] …
Pokud definujeme pouze jeden kanál, je nutné použít také parametr Port (mimo kanály typu CJC). Při definici skupiny kanálů toto nutné být nemusí (záleží na typu kanálů, konkrétním rozsahu, počtu portů na zařízení, atd.). Kanály pracující s čítačemi událostí (EC, ECS, FR, FRS) nelze zapisovat ve skupinách a na daném portu lze číst pouze jednu hodnotu, například není možné číst počet událostí a jejich frekvenci na portu 0 zároveň. Podrobné definice kanálů lze nalézt v následujících příkladech: [channels_0] ; zařízení obsahuje 8 analogových vstupů (AI0 - AI7), 8 analogových výstupů (AO0 - AO7) a 8 digitálních vstupů (DI0 - DI7): ; používáme zápis bez čísla portu 1000 - 1007 = AI ; nemusíme použít všechny porty, následující zápis použije pouze výstupy AO0 až AO4 a bude je převádět dle zadaného rozsahu v konfiguraci 1100 - 1103 = AO, SCL ; čtení 8 digitálních vstupů po jednotlivých bitech 2000 - 2007 = DI ; čtení předchozích 8 digitálních vstupů jako 1 byte, číslo portu je již vyžadováno 2008 = DIB0 ; definice analogových vstupů po jednotlivých kanálech, je potřeba také uvést port 1050 = AI0 1051 = AI1 … 1057 = AI7 [channels_1] ; zařízení obsahuje 16 digitálních vstupů (DI0 - DI15), 16 digitálních výstupů (DO0 - DO15) a cold junction kontakt (CJC): 100 = CJC ; nemusíme použít všech 8 bitů, následující zápis použije pouze bity 1, 2, 3 a 4 z portu 0 200 - 203 = DI0 ; pro jednotlivé kanály musíme u DI a DO zadat také daný bit 300 = DI1.0 301 = DI1.1 … 307 = DI1.7 ; při čtení po bajtech stačí zadat daný port na zařízení - pro výstupy DO0 až DO7 je to port 0 a DO8 až DO15 je to port 1 400 = DOB0 401 = DOB1 [channels_2] ; zařízení obsahuje 2 čítače událostí na portu 0 a portu 1: ; zápis na kanál 501, resp. 503 spustí (hodnota true) nebo zastaví (hodnota false) čítání událostí, resp. frekvence ; čtením z kanálu 500, resp. 502 získáme hodnotu čítače 500 = EC0 501 = ECS0 502 = FR1 503 = FRS1 |