197852

Modul pro připojení zařízení NI USB6009 / Program unit for connection of NI USB6009 device

Autor/Author: František Dušek

Abstrakt

"SW byl vytvořen v rámci dílčího úkolu ""Řízení, optimalizace a diagnostika složitých dynamických systémů"" VZ MŠM 0021627505 pro potřeby ověřování navržených algoritmů řízení. Vytvořený SW modul umožňuje jednoduché využívání univerzálního měřicího zařízení USB6009/6008 fy National Instruments v prostředí programu SIMULINK fy The MathWorks, Inc. pro sběr a ovládání unifikovaných signálů v reálném čase. Modul umožňuje použití sofistikovaného výpočetní prostředí SIMULINK pro měření a řízení (v reálném čase) zařízení připojených pomocí unifikovaných signálů k USB6009/8.
Programový balík je tvořen třemi soubory - souborem obsahujícím Simulink Level-2 M-file S-function (sfUSB6009.m), pomocným souborem prototypů funkcí (NIDAQprototypes.m) a příkladem použití (zUSB6009.mdl). S- funkce umožňuje vytvořit uživatelský blok, který zajišťuje přístup ke všem vstupům a výstupům měřicího zařízení USB6009 (případně USB6008) fy National Instruments z programového prostředí Simulink. Použití bloku v simulačním modelu umožňuje periodické čtení i zápis hodnot analogových a digitálních signálů připojených k vybranému zařízení. Název zařízení a perioda vzorkování jsou povinné parametry bloku. S-funkce zajišťuje také synchronizaci simulačního a reálného času (soft real-time) v intervalech vzorkování. Pro současnou práci s více zařízeními lze použit více instancí bloku. Pro různá zařízení je možné používat různé intervaly vzorkování, tj. v návrhu S-funkce je řešen i problém reentrantnosti. Pro zjištění (případně změnu) názvů aktuálně připojených zařízení je nutno použít program Measurement & Automation Explorer, který je součástí instalace ovladačů NIDAQmx dodávaných s hardware National Instruments. Pro přístup k zařízení využívá S-funkce služby sdílené knihovny nicaiu.dll, která je součástí instalace ovladačů NIDAQmx. V S-funkci je využita možnost volat přímo z prostředí MATLABu funkce sdílené knihovny původně určené pro volání z jazyka ""C"". Pro urychlení práce se sdílenou knihovnou je přiložen pomocný soubor s prototypy pouze patnácti v S-funkci použitých funkcí.
Další informace lze nalézt v článku ""DUŠEK, F. Přímé použití sdílených knihoven, In Proceedings of the 17th Annual Conference Proceedings of Technical Computing Prague 2009, Kongresové centrum ČVUT, Praha, 19. 11. 2009, ( http://dsp.vscht.cz/konference_matlab/MATLAB09/), p. 24, ISBN 978-80-7080-733-0""."

Abstract:

"This SW was developed in part ""Řízení, optimalizace a diagnostika složitých dynamických systémů""of project MŠM 0021627505 for needs of designed control algorithms verification. Created SW unit allows easy utilizing universal measuring device USB6009/6008 (National Instruments) in environment of program SIMULINK (The MathWorks, Inc.) for real time data acquisition and manipulation. The SW unit enables to use sophisticated computing environment of SIMULINK for measuring and control of a laboratory device connected by unified signals to USB6009/6008.
The programming package is composed of tree file - a Simulink Level-2 M-file S-function form (sfUSB6009.m), a file of function prototypes (NIDAQprototypes.m) and an example of S-function using (zUSB6009.mdl). S-function allows creating user block that ensure the access to all inputs and outputs of the measuring device USB6009 (USB6008) from Simulink environment. Block using in simulation model allows periodical reading and writing of values of all analog and digital signals which are connected to selected device. The device name and sampling period are required block parameters. The S-function ensures the synchronization simulation time with real time (soft real-time) in time instant of sampling period, too. More devices concurrently can be managed by using of multiple instances of block Different devices can use different sampling period i.e. the problem of the reentrance is also solved in S-function design. The S-function takes advantage of function calling from shared library nicaiu.dll for device access. This library is a standard part of NIDAQmx driver package that is supplied with National Instruments hardware. The S-function uses the direct library function call from MATLAB environment although the library functions are marked out for using from ""C"" language. Therefore the auxiliary file with prototypes of used functions is necessary. The attached file (NIDAQprototypes.m) is reduced i.e. it contains only 15 prototypes of functions that are used in S-function For device name detecting (or changing) is possible to use the program Measurement & Automation Explorer which is a part of NIDAQmx driver package installation.
Further information is available in article ""DUŠEK, F. Přímé použití sdílených knihoven, In Proceedings of the 17th Annual Conference Proceedings of Technical Computing Prague 2009, Kongresové centrum ČVUT, Praha, 19. 11. 2009, ( http://dsp.vscht.cz/konference_matlab/MATLAB09/), p. 24, ISBN 978-80-7080-733-0""."

Klíčová slova:

S-funkce; sběr dat; ovladače NIDAQmx; reálný čas; sdílené knihovny

 

Keywords:

S-function; data acquisition; NIDAQmx driver; real-time; shared libraries

Stažení / Download