LabVIEW – Grafikus fejlesztői környezet mérési és automatizálási folyamatokhoz Az 1986-ban bemutatott LabVIEW, mely mérésekhez és automatizáláshoz kifejlesztett grafikus fejlesztői környezet, immáron több mint 20 éve az innováció és a folyamatos fejlesztések tárgya. Bár a mérőeszközökkel végzett mérések automatizálására használható eszközként mutatták be, a LabVIEW egy olyan grafikai rendszertervezési felületté fejlődött, amely tervezésre, tesztelésre és vezérlésre is használható. Az évek során a LabVIEW közössége egy nagy és aktív felhasználói bázissá fejlődött, amely az iparágak és alkalmazások széles tartományát fedi le, ezért a LabVIEW az adatgyűjtés és az eszközvezérlés területén a legnépszerűbb választás. A LabVIEW sikerei és népszerűsége ellenére sok fejlesztő és mérnök még mindig küzd a felületben rejlő összes lehetőség megértésével. Ez a cikk visszatekint az elmúlt 20 év fejlesztéseire és újításaira, hogy segítsen megválaszolni néhány, a LabVIEW-val kapcsolatos gyakori kérdést. A felmerülő kérdések közül számosra található válasz a LabVIEW korábbi verzióiban is, a LabVIEW legutóbbi verzióiban pedig ezek továbbfejlesztésére is rábukkanhatunk.
Az LabVIEW valóban egy igazi programozási nyelv?
A LabVIEW egy teljes funkcionalitású programozási nyelv, ugyanolyan programozási struktúrákkal, mint amilyenek a szövegalapú nyelvekben is megtalálhatók. Ezen felül, a LabVIEW grafikai programozási nyelve néhány egyedi lehetőséget is kínál a párhuzamos programok megjelenítésére. A LabVIEW 1.0 bevezetésétől kezdődően a LabVIEW egy párhuzamos végrehajtású programozási nyelv, amely lehetővé teszi a felhasználóknak, hogy gyorsan és egyszerűen hozzanak létre párhuzamos programokat intuitív megközelítéssel. Bár a LabVIEW már 20 éves múltra tekint vissza, a programozás ilyen megközelítése napjainkban egyre jelentősebbé válik, hiszen a LabVIEW az FPGA hardver és a többmagos processzorokat tartalmazó számítógépek programozására is használható.
A LabVIEW grafikus programozási környezet egyszerűen jeleníti meg a párhuzamos programozási megoldásokat, emellett egyszerűsíti a bonyolult mérési feladatokat
A LabVIEW 8.20 kibővíti a fejlesztői környezetet, bevezetve az objektumorientált programszerkesztést. A LabVIEW 8.20 segítségével a felhasználók objektumorientált programozási koncepciókat is használhatnak grafikai programjaikban, úgymint osztályokat, objektumokat, bezárást, öröklést és dinamikus programindítást. A LabVIEW valóban egy nyílt fejlesztői felület?
Mivel a LabVIEW egy egyedi, grafikai programozási nyelv, ezért sok felhasználóban fel sem merül, hogy könnyedén be tudják építeni a hagyományos, szövegalapú nyelvekből származó kódot is. A LabVIEW felhasználóinak már több éve lehetőségük van DLL-ekben vagy osztott könyvtárakban tárolt kód behívására, valamint külső kódok és alkalmazások integrálására különböző szoftveres technológiák segítségével, mint például az ActiveX-szel vagy a .NET-tel. A LabVIEW 8.20 új integráló varázslókat tartalmaz, amelyek automatizálják a külső kód beépítésének folyamatát. Az új DLL Import Wizard egy DLL-ben tárolt függvénykönyvtár beépítésének folyamatát automatizálja, és közvetlenül felhasználható VI-ok csoportját hozza létre a LabVIEW grafikai fejlesztői környezetben. A varázsló használatával a felhasználók a kézi kódbevitel óráit másodpercekre rövidíthetik. A varázsló automatikusan létrehozza a LabVIEW VI-okat a DLL-ben található minden függvényhez, és értelmezi a fájl fejlécét is, hogy vezetékkel tudja ellátni az egyes függvények bemeneteit és kimeneteit a VI csatlakozó panelén.
A DLL Import Wizard használatával a felhasználók automatikusan hozhatnak létre honos LabVIEW VIokat a DLL-ek importálására közvetlenül a LabVIEW-ból
A DLL-ek importálásának egyszerűsítése mellett a LabVIEW 8.20 webes szolgáltatások importálására szolgáló varázslót is tartalmaz. Ugyanazt a modellt követve, mint a DLL Import Wizard esetében, a Web Service Import Wizard automatikusan hoz létre honos LabVIEW VIokat távoli metódusok meghívására egy web szolgáltatásból, amely lehetővé teszi a LabVIEW felhasználók számára, hogy a webes szolgáltatásokba tömörített üzleti intelligencia előnyeit élvezhessék. A külső kód bevitele a LabVIEW-ba csak egyike a LabVIEW 8.20 képességeinek. A másik irány, vagyis a LabVIEW VI-ok exportálása a hagyományos programozói eszközökben való használatra, ugyancsak jelentős továbbfejlesztésen esett át az LV 8.20-ban. Az Instrument Driver Export Wizard segítségével a LabVIEW felhasználók DLL-eket hozhatnak létre a LabVIEW-ban hozzáférhető, hatalmas mennyiségű eszközmeghajtó könyvtárakból, így a C-ben programozó munkatársaik is kihasználhatják ezen könyvtárak előnyeit.
Elég gyorsan kerül végrehajtásra a LabVIEW kód? Az 1990-ben kiadott LabVIEW 2-ben jelent meg a grafikai fordítóprogram, amely lehetővé tette, hogy a felhasználók a programjaikat a fordított gépi kód sebességével hajtsák végre, a hagyományosan fordított nyelvekkel összevethető sebességgel. Még napjainkban sincs mindenki tisztában ezzel a ténnyel: a LabVIEW grafikai forráskód közvetlenül assembly-be kerül fordításra, ami az interpretált nyelvekénél sokkal gyorsabb végrehajtási sebességeket garantál.
Ugyanakkor, mivel a LabVIEW-t az évek során továbbfejlesztették, további új képességeket vezettek be az alkalmazások szükségleteinek kielégítésére. Különösen a specializált interfész és vezérlő alkalmazásokban. A LabVIEW felhasználók most a LabVIEW kódot már FPGA-kban is futtathatják a LabVIEW FPGA Module segítségével. A LabVIEW FPGA-val a felhasználók saját hardveres logikát tervezhetnek és hajthatnak végre kapu szinten, a hihetetlenül gyors teljesítmény érdekében. A LabVIEW 8.20 megjelenésével a potenciális FPGA programozók köre kibővült a LabVIEW FPGA Wizard bevezetésének köszönhetően, amely az FPGA függvények programozás nélküli megadására szolgáló interaktív eszköz. Az FPGA Wizard használatakor a felhasználók párbeszédablakok segítségével megadhatják az időzítési módokat és a be-/kimeneti csatornákat, valamint olyan függvényeket, mint az impulzusszélesség modulátorok, számlálók és inkrementális enkóderek. Az FPGA Wizard ezekből a specifikációkból automatikusan hozza létre a LabVIEW grafikus kódot, megmutatva a kezdő felhasználóknak ezen alacsony szintű
függvények helyes programszerkezetét, és segítve a felhasználókat a nagyobb sebesség elérésében az FPGA technológiával.
Az FPGA Wizard segítéségével a felhasználók a LabVIEW FPGA használatával automatizálhatják a hardveres logika meghatározásának folyamatát
Használható a LabVIEW ipari alkalmazások kiépítésére? Mivel a LabVIEW jelentése „laboratóriumi virtuális eszköztervezési munkapad” (Laboratory Virtual Instrument Engineering Workbench), sok felhasználó azt gondolja, hogy ezért csak a laboratóriumi mérések automatizálására szolgál, de ez téves gondolatmenet. Bár a LabVIEW-t eredetileg a mérések automatizálására szánták több mint 20 évvel ezelőtt, a nyelv és a felület teljesítménye és rugalmassága számos új alkalmazási területen tette azt felhasználhatóvá. Például, ahogy a PC technológia teljesítménye és megbízhatósága fejlődött, egyre népszerűbbé vált az elosztott ipari mérési és vezérlési alkalmazásokban. A LabVIEW 8.0 2005. évi kiadása az elosztott mérőrendszerek felépítésével járó kihívásokat nagymértékben leegyszerűsítette. Az új LabVIEW projekttel a felhasználók egyszerűen nyomon követhetnek több számítási célt – mint például valósidejű vezérlőket a fejlesztői gazdagépeiken –, illetve könnyedén megnyithatják és újratelepíthetik a célgépeken futó kódot. Továbbá az ugyancsak a LabVIEW 8.0-ban bevezetett megosztott változóval a felhasználók nagyon egyszerűen megoszthatják az adataikat ezen
megosztott cél gépek között. Az Etherneten való adattovábbítás részletei, a valósidejű teljesítmény biztosítása, ezen adatok rögzítése és riasztásai nagymértékben leegyszerűsödtek a megosztott változó segítségével. Ezen új technológia csoport neve Distributed Intelligence, mivel a különböző intelligens eszközök és vezérlők között futó elosztott rendszerek felépítésének és irányításának folyamatát sokkal egyszerűbbé teszi.
A LabVIEW 8.20 további értékeket ad hozzá az ipari rendszerekhez. A LabVIEW 8.20-ban bevezetésre került a Touch Panel Module, a LabVIEW új bővítménye, amellyel a felhasználók az ipari gépekben és monitorozó rendszerekben széleskörűen használt, Windows CE-alapú érintőképernyőkhöz fejleszthetnek és futtathatnak alkalmazásokat. Most a LabVIEW segítségével a felhasználók egyszerűen kifejlesztik a programot, majd ráhúzzák azt a Windows CE érintőképernyős eszközre a LabVIEW projektben.
Használható a LabVIEW tervező alkalmazásokhoz?
A LabVIEW és a National Instruments napjainkban a legismertebb nevek a tesztelési és mérési alkalmazások területén. Mivel a LabVIEW leegyszerűsíti a berendezések vezérlésének és a mérések elvégzésének folyamatát, gyakran beskatulyázzák, mint kizárólag tesztelésre és mérésre használható eszközt. Ugyanakkor a LabVIEW 8.20-szal, a LabVIEW egyetlen grafikus rendszertervezési felületbe beépített lehetőségek teljesen új csoportját vezeti be, amely leegyszerűsíti az algoritmusok fejlesztésének, a rendszerek prototipizálásának és végezetül a programok végtermékekre való feltelepítésének folyamatát. A LabVIEW tehát kiváló választás a tervezéshez,
mert
szoros
kapcsolata
van
a
mérési
és
vezérlési
feladatokat
ellátó
hardvereszközökkel. A LabVIEW-val nagyon gyorsan összekötheti az algoritmusok tervezésének elméletét a valós be- és kimeneti eszközökkel, amely lehetővé teszi a tervezők számára, hogy olyan összetett feladatokat valósítsanak meg hardveres prototípusok formájában, amelyek könnyedén válaszolnak a valós jelekre.
Alább néhány kulcsfontosságú technológia leírása található, amely a LabVIEW-t stabilan a tervezés területére helyezi: MathScript – a MathScript egy szövegalapú programozási felület, amellyel a felhasználók matematikai algoritmusokat határozhatnak meg. A MathScript-tel a felhasználók a hagyományos matematikai csomagokban, mint pl. a The MathWorks Matlab, felépített m-fájl szkripteket importálhatják és építhetik be a LabVIEW alkalmazásaikba. A MathScript egy fontos képességet nyit meg a rendszertervezők előtt, mert lehetővé teszi számukra, hogy a matematikai algoritmusaikat újra felhasználják, és „felruházzák” azokat az interaktív grafikus felhasználói felület elemeivel (gombok, mércék, mérők, grafikonok), valamint a valós jelekkel – a LabVIEW felület két legfontosabb erősségével.
Vezérléstervezés és szimuláció – a LabVIEW Simulation Module használatával a felhasználók nagyon
gyorsan
megtervezhetik,
szimulálhatják
és
prototipizálhatják
a
dinamikus
vezérlőrendszereket. Ugyancsak a LabVIEW hardveres lehetőségei révén a tervezők meghatározhatják a saját vezérlőalgoritmusaikat és elkészíthetik a valós prototípusokat. A LabVIEW 8.20-ban a Simulation Module teljesítménye több, mint 10X nagyobb, ami hatékony kereskedelmi vezérlőrendszerek tervezését és megvalósítását teszi lehetővé a LabVIEW-val. Ezenkívül a LabVIEW 8.20-ban bevezetésre került a Simulation Module és a LabVIEW Embedded
Development
Module
összekapcsolhatósága,
amellyel
a
vezérlőrendszereiket egyéni 32-bites mikroprocesszoros egységekre telepíthetik.
felhasználók
a
Kommunikációtervezés és prototipizálás – a Modulation Toolkit segítségével a LabVIEW felhasználói gyorsan megtervezhetik és prototipizálhatják egyedi kommunikációs kapcsolataikat. A Modulation Toolkit VI-okat biztosít a forrás programozásához, a csatorna programozásához és modulációjához, így a tervezők egyszerűen kísérletezhetnek új kommunikációs szabványokkal, vagy egyéni kommunikációs kapcsolatokat adhatnak meg. A LabVIEW grafikai adatáramlási nyelve természetéből adódóan jeleníti meg a jel útvonalát a kommunikációs adó-vevők között, a jelek programozásának és modulációjának különböző lépései között, ezáltal intuitív módon jelenítve meg a rendszert.
A LabVIEW játék? Néha a LabVIEW-val először találkozó, tapasztalt programozók alábecsülik a grafikus tervezési felület erejét. Miután látták az adatciklusok és -ágak grafikai megközelítését, egyes programozók kijelentették, hogy szerintük „a LabVIEW egy játék”. Igazából, a LabVIEW 8.20 kiadásával párhuzamosan a LabVIEW programozási nyelv összekapcsolódott az új Lego Mindstorms robotikai rendszerrel is – ami valamennyire alátámasztja azt az állítást, hogy a LabVIEW egy játék. A Lego Mindstorms segítségével a gyerekek robotokat építhetnek és programozhatnak Legóból, melyhez a LabVIEW egyik verzióját használják a programozható Lego építőkockákon futó programok fejlesztésére és letöltésére. Több ezer kezdő grafikai tervező köszönheti a LabVIEW-nak és a Legónak azt az erőteljes, de még így is egyszerű új felületet, amellyel már korán elkezdhetik jövőbeli mérnöki és tervezői karrierük első lépéseit.
Összegzés
A LabVIEW a felhasználók visszajelzései és a folyamatos fejlesztések hosszú ideje során a mérések és vezérlés nagyon stabil felületévé vált. Ugyanakkor a LabVIEW tovább folytatja a növekedést és fejlődést egy olyan grafikai tervezői felületté, amellyel számos különböző feladat
megoldható. Mivel a felület tovább bővül, ezért azon felhasználók számára, akiknek ismerős a LabVIEW, egyre nagyobb kihívás naprakészen ismerni az egyre bővülő képességeket. Ám amíg a tudósok és a mérnökök tovább keresik a kihívást jelentő, megoldásra váró problémákat, addig a LabVIEW grafikai rendszertervezői felület is tovább bővül, hogy segíthessen a megoldások megtalálásában.
Látogasson el a www.ni.com/labview weboldalra és tudjon meg többet a témáról! Ingyenesen hívható ügyfélszolgálat: 06 80 204 704
National Instruments Hungary Kft. H-2040 Budaörs, Puskás Tivadar utca 14. 1. emelet Telefon: 06 23 448 900, Fax: 06 23 501 589 E-mail:
[email protected] Web: hungary.ni.com