DAQmx - Analóg bemenet mérése

A National Instruments által gyártott USB műszerek nagy része a DAQmx driver segítségével programozhatók. A LabVIEW programozásról valamint a műszerek kezelésének alapjairól a hamarosan megjelenő „Mérés és adatgyűjtés laboratóriumi jegyzet” című jegyzetben írok részletesebben. A most elkezdett post-sorozatban néhány, ott nem szereplő módszert és valamint hasznos javaslatokat mutatok be.

Műszerek egyszerű kezelésére a DAQ assistant nevű eszközt is használhatjuk, mely segítségével, egyszerűen, varázslószerűen tudjuk konfigurálni a mérési vagy vezérlési feladatot. Összetettebb mérési feladatok esetén viszont a DAQ assistant használata már nem kézenfekvő, célszerű magunknak megírni az adatgyűjtésre használható kódot.

A driver használata során a következő alapfogalmak ismeretére van szükségünk:

  • Physical channel: az eszközön lévő bemenet vagy kimenet
  • Virtual channel: a fizikai csatorna reprezentációja
  • Task: egy mérési feladat, mely több virtuális csatornát tartalmaz
  • On demand/ Software timed: a mintavételezést a PC szoftver frissítési rátája dönti el. Nem determinisztikus, alacsony sebességnél használható
  • Hardware timed: maga a hardver végzi a mintavételezés vezérlését, determinisztikus

A következő egyszerű programban egy csatorna mérését mutatom be.

DAQmx Software Timed Analog Input 1 Ch

A program elején konfiguráljuk a kiválasztott csatornát. Az input terminal configuration bemenet esetén a következő fő választási lehetőségeink vannak:

  • RSE (referenced single ended): a bemenő feszültséget a műszer földjéhez képest mérjük
  • NRSE (non referenced single ended): a bemenő feszültséget a műszer az AI-sense bemenethez képest méri
  • Differential: két (általában szomszédos) bemenet közötti feszültségkülönbséget méri
  • Default: az adott csatorna alapértelmezett beállítását használja. Ez általában differenciális beállítást takar, kivéve a magasabb sorszámú csatornák esetén amennyiben azok valamely bemenet negatív párja lennének differenciális mérés esetén.

A DAQmx Start Task.vi indítja el magát a mérést, ezt követően a DAQmx Read.vi segítségével olvashatjuk ki az adatokat. A vi alatt lévő Polymorphic VI Selector segítségével választhatjuk ki az adatok típusát, egyetlen csatorna és egyetlen mért minta esetén választhatunk DBL (egyetlen skalár) valamint a Waveform között. A Waveform a minta mellett tartalmazni fogja a csatorna időzítési értékeit is (pl. mérés ideje).

A mérés egy ciklusban történik, ennek frissítési gyakorisága 100 ms. Az adatok egy Waveform Chart-on kerülnek megjelenítésre. A ciklus a Stop gomb megnyomásakor, vagy hiba esetén leáll. A program végén az erőforrások felszabadítása zajlik.

Szükség esetén egyszerre több csatornát is mérhetünk. Ekkor a physical channels mező Browse opcióját használhatjuk egyszerre több, azonos tulajdonságokkal rendelkező bemenet kiválasztására. A DAQmx Read.vi esetén ki kell válasszuk az NChan1Samp opciót.

DAQmx Software Timed Analog Input n Ch

Amennyiben különböző beállításokkal rendelkező csatornákat szeretnénk hozzárendelni egy-egy mérési feladathoz, akkor több DAQmx Start Task.vi-t kell meghívnunk a következő ábrának megfelelően:

 DAQmx multiple physical channels

Megjegyzés: csak azonos típusú csatornákat (pl. analóg bemenet) tudunk egy feladathoz hozzárendelni.

Hozzászóllások