7. példa: Grafikus megjelenítés (program4_1.llb)



Hasonló dokumentumok
LabVIEW példák és bemutatók KÉSZÍTETTE: DR. FÜVESI VIKTOR

1. Jelgenerálás, megjelenítés, jelfeldolgozás alapfunkciói

5. Példa: Olvasás szöveges fájlból (program3_1.vi)

Széchenyi István Egyetem

Mechatronika II (BMEGEFOAMM2)

Prezentáció, Prezentáció elkészítése. Diaminták

4. Példa: Másodfokú egyenlet megoldása (program2_1.vi)

Első lépések. File/New. A mentés helyét érdemes módosítani! Pl. Dokumentumok. Fájlnév: pl. Proba

Mérés és adatgyűjtés Laboratóriumi jegyzet

Diagramok/grafikonok használata a 2003-as verzióban

ContractTray program Leírás

Prezentáció, Prezentáció elkészítése. Nézetek

A Paint program használata

LabVIEW mérési jegyzőkönyv

Minta. LabVIEW TM Core 1 Feladatok. A tanfolyam szoftveranyagának verziószáma augusztus kiadás Termékkód: B-0131

Bevezetés a QGIS program használatába Összeálította dr. Siki Zoltán

Operációs rendszerek. Tanmenet

Az MS Excel táblázatkezelés modul részletes tematika listája

Easton420. Automata Telefon hangrögzítő. V 6.0 Telepítése Windows XP rendszerre

Egyszerűbb a Google keresőbe beírni a Sharepoint Designer 2007 letöltés kulcsszavakat és az első találat erre a címre mutat.

Bevezető. Mi is az a GeoGebra? Tények

ServiceTray program Leírás

Lemez 05 gyakorló feladat

1. mérés - LabView 1

Grafikus felhasználói felület (GUI) létrehozása A GUI jelentése Egy egyszerű GUI mintaalkalmazás létrehozása

LabView Academy. 4. óra párhuzamos programozás

Thermo1 Graph. Felhasználói segédlet

Diagram készítése. Diagramok formázása

LabVIEW segédlet. Készítette: Friedl Gergely Egyetemi tanársegéd

DebitTray program Leírás

Megyei tervezést támogató alkalmazás

Első egyéni feladat (Minta)

Lakóház tervezés ADT 3.3-al. Segédlet

Angol szótár V

1. A LabView működése

DuneHD.hu. Kompatibilis médialejátszók: Dune HD Center Dune BD Prime Dune HD Base 2.0 Dune HD Base 3.0 Dune BD Prime 3.0

1. A berendezés programozása

NINJA kezelői program letöltése és installálása

A Windows az összetartozó adatokat (fájlokat) mappákban (könyvtárakban) tárolja. A mappák egymásba ágyazottak.

Mechatronika II (BMEGEFOAMM2)

Készítsen négy oldalas prezentációt az E CD bolt számára! Tervezze meg az emblémáját!

Regresszió számítás. Tartalomjegyzék: GeoEasy V2.05+ Geodéziai Kommunikációs Program

Prezentáció, Diagramok, rajzolt objektumok. Szervezeti diagram

Java-s Nyomtatványkitöltő Program Súgó

Szilipet programok telepítése Hálózatos (kliens/szerver) telepítés Windows 7 operációs rendszer alatt

Területi elemzések. Budapest, április

Választó lekérdezés létrehozása

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

Microsoft Office PowerPoint 2007 fájlműveletei

Soros felépítésű folytonos PID szabályozó

Országos Területrendezési Terv térképi mellékleteinek WMS szolgáltatással történő elérése, MapInfo program alkalmazásával

Táblázatkezelés, Diagramkészítés. Egyéb műveletek

Országos Területrendezési Terv térképi mel ékleteinek WMS szolgáltatással történő elérése, MapInfo program alkalmazásával Útmutató 2010.

Órarendkészítő szoftver

Belföldi Termékosztályozás V

FEOR szám kereső V

Áramlástechnikai rendszerek Stacionárius csőhálózat számítási feladatok szeptember BME Hidrodinamikai Rendszerek Tanszék

Pénzintézetek jelentése a pénzforgalmi jelzőszám változásáról

Stacionárius csőhálózat számítási feladat augusztus 25.

EDInet Connector telepítési segédlet

Diagram formázása. A diagram címének, a tengelyek feliratainak, jelmagyarázatának, adatfeliratainak formázása

Egészségterv és edzésprogram használati utasítás

A Web Services protokoll használata hálózati szkennelésre (Windows Vista SP2 vagy újabb verzió, valamint Windows 7 és Windows 8 esetén)

Rácsvonalak parancsot. Válasszuk az Elsődleges függőleges rácsvonalak parancs Segédrácsok parancsát!

Felhasználói kézikönyv

Segédlet kriptográfiai szolgáltatást beállító szoftverhez (CSPChanger)

2014/2015. tavaszi félév

Beágyazott rendszerek fejlesztése laboratórium DSP fejlesztési technológiák

Adatintegritás ellenőrzés Felhasználói dokumentáció verzió 2.0 Budapest, 2008.

Z80TAPE FELHASZNÁLÓI ÚTMUTATÓ

CAD-ART Kft Budapest, Fehérvári út 35.

Feladat. Bemenő adatok. Bemenő adatfájlok elvárt formája. Berezvai Dániel 1. beadandó/4. feladat április 13. Például (bemenet/pelda.

EuroSymphony Térképes diagram

A Novitax ügyviteli programrendszer első telepítése

Duál Reklám weboldal Adminisztrátor kézikönyv

Telepítési útmutató a Solid Edge ST7-es verziójához Solid Edge

Rajz 02 gyakorló feladat

A program telepítése. A letöltés lépései: 1. nyissa meg a WEB-oldalt, majd válassza a Letöltés menüpontot a felső sorban:

VirtueMart bővítmény letölthető termékek eladásához

Diagram létrehozása. 1. ábra Minta a diagramkészítéshez


Navigációs GPS adatok kezelése QGIS programmal (1.4 verzió) Összeállította dr. Siki Zoltán

Gyakorlati vizsgatevékenység A

MÁTRIXFÜGGVÉNYEK, SAJÁT FÜGGVÉNYEK, GRAFIKA

A képernyő felbontásának módosítása

Felhasználói dokumentáció. a TávTagTár programhoz. Készítette: Nyíri Gábor, hdd@nc-studio.com GDF Abakusz regisztrációs kód: GDFAba43

Táblázatok. Táblázatok beszúrása. Cellák kijelölése

BioAdmin 4.1 könnyű telepítés csak Kliens használatra

A kontrolladat-szolgáltatás elkészítése

Koordináta-geometria. Fogalom. Jelölés. Tulajdonságok, definíciók

XTB TŐZSDEVERSENY 2012

A program telepítése. A letöltés lépései: 1. nyissa meg a WEB-oldalt, majd válassza a Letöltés menüpontot: 2. Kattintson a DbérWIN 2015 hivatkozásra:

Samsung GT-S7230 (Wave 723) Exchange ActiveSync beállítása Virtualoso levelezésre

QGIS szerkesztések ( verzió) Összeállította: dr. Siki Zoltán verzióra aktualizálta: Jáky András

Grafikus felhasználói felületek. Dr. Szendrei Rudolf Informatikai Kar Eötvös Loránd Tudományegyetem. Programozási technológia I. Dr.

A MATLAB alapjai. Kezdő lépések. Változók. Aktuális mappa Parancs ablak. Előzmények. Részei. Atomerőművek üzemtana

Nyomtató telepítése. 1. ábra Nyomtatók és faxok Nyomtató hozzáadása

Egyéb 2D eszközök. Kitöltés. 5. gyakorlat. Kitöltés, Szöveg, Kép

Dropbox - online fájltárolás és megosztás

Átírás:

7. példa: Grafikus megjelenítés (program4_1.llb) Ezzel a programmal a harmonikus mozgás és a hullámmozgás kapcsolatát fogjuk bemutatni. Ahhoz, hogy ezt megtehessük meg kell ismerkednünk a LabVIEW alapvető grafikus lehetőségeivel, valamint az ezekhez kapcsolódó néhány más elemmel is. A program egy ellipszispályán mozgó négyzetet, valamint a négyzet mozgásának vetületét fogja megjeleníteni. Először készítsük el a négyzetet valamint az ellipszist kirajzoló programokat, amelyeket mint 'subvi' fogunk felhasználni a főprogramban. Először is ismerkedjünk meg a LabVIEW számos diagramtípusa (ez a szám ráadásul operációs rendszertől függően lehet több vagy kevesebb) közül azzal a hárommal, amelyekkel e jegyzet keretei között foglalkozni fogunk. Ezek a 'Waveform Chart' 'Waveform Graph' 'XY Graph'. A 'Waveform Chart'-on skalár adatokat jeleníthetünk meg, például időben lezajló folyamatokat. A 'Waveform Graph'-on egy tömb adatait tudjuk kirajzolni, így például nagyon jól használható egy mérés során a mintavételezett jel adatsorozatainak megjelenítésére. Ehhez képest az 'XY Graph' képes egy tömb adatainak megjelenítésére egy másik tömb függvényében. Ezért ez utóbbi kijelzőtípust használhatjuk általános alakzatok kirajzolásához. IV.1. ábra: A LabVIEW diagramtípusai Visszatérve a feladatunkhoz, készítsük el a 'Front Panel'-jét a négyzetet kirajzoló programunknak! Helyezzünk el három numerikus kontroll elemet, kettőt a középpont koordinátáinak megadásához, egyet pedig a négyzet élhosszának. A kijelzőnk pedig az imént megismert típusok közül az 'XY Graph' lesz. Az 'XY Graph' tulajdonságait, csakúgy mint bármely más LabVIEW elemét, a hozzá tartozó legördülő menün keresztül állíthatjuk be. Figyeljünk oda arra is, hogy az egyes részegységekhez (skála, 'Legend', stb.) tartozhatnak saját menük is! Most keressük meg mind az 'X' mind az 'Y' tengely 'Autoscale' funkcióját, és 1

kapcsoljuk ki, mivel most nem lenne előnyös, ha a kijelző skálása mindig úgy kalibrálódna át, hogy a legjobb kitöltést biztosítsa (IV.2. ábra). IV.2. ábra: Az automata skálázás kikapcsolása Magának a megjelenítésnek a tulajdonságait a 'Plot Legend'-hez tartozó menün (IV.3. ábra) keresztül érjük el. Az itt található lehetőségek közül a vonalvastagságot állítsuk át nagyobbra! IV.3.ábra: A vonalszélesség átállítása 2

Most, hogy elkészültünk a 'Front Panel'-lel, térjünk át a 'Diagram Panel'-en végzendő munkára. Itt ugye ki kell számolnunk a négyzet sarokpontjainak koordinátáit, és ezek segítségével a megjelenítéshez szükséges adatokat a diagramba vezetni. A LabVIEW lehetőséget biztosít arra, hogy a egyes számításokat ne csak grafikusan programozzunk be, hanem az úgynevezett 'Formula Node'-ban (IV.4. ábra) a C/C++ nyelv szintaktikájához igen hasonló módon, szövegesen megírt programok beillesztése is megvalósítható. IV.4. ábra: A 'Formula Node' A 'Context Help'-ben látható, hogy milyen matematikai függvényeket használhatunk a 'Formula Node'-ban. Bővebb információt a szintaktikáról, használható függvényekről a részletes 'Help'-ből nyerhetünk. Ahhoz, hogy a 'Node'-ba adatot vigyünk be, illetve onnan adatot nyerjünk ki, a hozzá tartozó legördülő menü segítségével definiálnunk kell ezeket a csatornákat (IV.5. ábra). Ilyenkor a definiált változók neve nem kell hogy azonos legyen azzal a LabVIEW-beli változóval, amellyel adatokat cserél. ( : Linuxos környezetben, magyar billentyűzetbeállítás mellett, a 'Formula Node'-ba az 'Alt-Gr' billentyű lenyomásakor egy 'white-space' típusú karakter kerül, amelyet ki kell törölni, különben hibás lesz a program!) A 'Formula Node' bemenetei a három kontroll elemről érkező adat lesz. A kimenetek pedig az egyes pontok koordinátái. Célszerű ezeket úgy csoportosítani, hogy szem előtt tartjuk azt, hogy az 'X' illetve 'Y' koordinátákat egy-egy tömbbe fogjuk összefűzni. Tömböket különböző adatokból a 'Build Array' függvény (IV.6. ábra) segítségével tudunk létrehozni. Ez a LabVIEW elem átméterezhető és különböző dimenziójú adatokat képes fogadni. Ez azt jelenti, hogy képes skalár elemekből tömböt építeni, vagy egy tömbhöz egy újabb elemet hozzáfűzni, vagy beállítástól függően két tömbből mátrixot létrehozni, vagy a két tömböt összefűzni egy nagyobb tömbbe. Ha megnézzük az 'XY Graph' súgóját, akkor abban le van írva, hogy hogyan tudunk egy, illetve több különböző elemet kirajzolni a grafikonra. A négyzetünk kirajzolásához a négyzet pontjainak 'X' illetve 'Y' koordinátáit tartalmazó tömböt kell egy 'Cluster'-be kötegelnünk. Ez a 'Cluster' palettán található 'Bundle' (IV.7. ábra) valamint 'Bundle by Name' függvényekkel tehető meg. Ezek közül az elsőt fogjuk most használni, mivel most nincs is nevük a 'Cluster'-be foglalt 3

tömbjeinknek. IV.5. ábra: Bemenet hozzáadása a 'Formula Node'-hoz Az összekötegelt koordinátákat ezek után vezessük bele a grafikon termináljába, és nézzük meg, hogy a program megfelelően működik-e. (A futtatás eredménye, valamint a program 'Block Diagram'-ja a IV.8. ábrán látható.) IV.6. ábra: Tömbök építése 4

IV.7. ábra: Kötegelés Sajnos azt láthatjuk, hogy az alakzat nem zárt, de kiindulva abból, hogy a négy pont koordinátáit megadva mit rajzolt ki a program, könnyen kijavíthatjuk ezt a kis hiányosságot azzal, hogy az első pont koordinátáit ötödik elemként még egyszer hozzáfűzzük a tömbjeink végéhez. IV.8. ábra: Az négyzet program első futtatási eredménye Ha ismét lefuttatjuk a programot (IV.9. ábra), az már a megfelelő eredményt szolgáltatja. Most már csak 'subvi'-t kell készítenünk a programból, hiszen egy másik programban kívánjuk a későbbiekben felhasználni. A csatlakozók kiosztására, valamint a program rövid dokumentációjára mutat példát a IV.10. ábra. 5

IV.9. ábra: A négyzet program végleges változata IV.10. ábra: A négyzet VI 'Context Help'-je Most, hogy elkészült a program, mentsük el, de ne az eddig megszokott módon, hanem mentsük el egy LLB-be! Az LLB a LabVIEW LiBrary rövidítése, és tulajdonképpen egy speciális könyvtárformátum. IV.11. ábra: LLB létrehozása Az LLB használatának több előnye is van. Egyrészt egy fájlban tárolhatjuk a segítségével az összetartozó VI-ainkat, a fájlnevekben bármely megjeleníthető karakter szerepelhet, az így tárolt VI-ok működtetése gyorsabb, és végül de nem utolsó sorban, a fájlméret is kisebb lesz összességében. Az LLB létrehozásának folyamatát mutatja be a IV.11. ábra. ( : Amennyiben a LabVIEW 6

telepítése során felinstalláltuk a gépünkre a megfelelő komponenst, akkor az Intéző is képes lesz megnyitni az LLB kiterjesztésű fájlokat.) Készítsük el az ellipszist kirajzoló programunkat is. A 'Front Panel'-t hasonló elvek szerint tervezzük meg, mint a négyzetrajzoló alkalmazásnál. Egy lehetséges megoldást mutat a IV.12. ábra, ahol 'x' és 'y' a középpont koordinátái, 'a' és 'b' az ellipszis féltengelyhosszai, és 'N' az ellipszis pontjainak száma. IV.12. ábra: Az ellipszisrajzoló program 'Front Panel'-je Az 'N' értékre azért van szükségünk, mivel valójában egy már ellipszisnek látszó N-szöget fogunk kirajzolni. (Javaslom a IV.12. ábrán lévő értékeket alapértelmezettként beállítani!) Az ellipszis pontjait úgy határozzunk meg, hogy az 'N' pontból álló origó középpontú egységsugarú kör pontjainak koordinátáiból kiindulva a kör megnyújtjuk a féltengelyhosszoknak megfelelően, majd eltoljuk a megadott helyzetbe. Ehhez az egységkör kerületét (2π) fel kell osztanunk 'N' részre, majd az egyes 'x' illetve 'y' koordinátákat a koszinusz illetve a szinusz függvények kimeneteként kapjuk meg. (A 2π konstanst a IV.13. ábrán látható palettán találjuk meg, egyéb numerikus konstansok és állandók társaságában.) Ha visszaemlékszünk a ciklusokról tanultakra, akkor rögtön be kell ugorjon, hogy a 'For' ciklust pont az olyan esetekre találták ki, ahol megadott mennyiségszer kell egy műveletet elvégezni. Az külön jól nekünk, hogy a 'For' ciklus alapesetben a belőle kivezetett adatokat egy tömbbe rendezi. Ezt az úgynevezett indexelést az adott 'Tunnel'-hez tartozó legördülő menü első pontjával a 'Disable/Enable Indexing' ponttal tudjuk tiltani illetve engedélyezni (IV.14. ábra). A 'While' ciklusnál pedig az alapértelmezett beállítás az indexelés tiltása. A IV.14. ábrán látható állapotban a program még csak az egységsugarú kör pontjait számította ki. Ezután, az alakzat zárása végett a tömbjeink első elemeit az utolsó helyre is át kell másolni! Az ehhez szükséges tömbindexelő és tömbösszefűző elemet pedig már ismerjük. Ha az összes pont helye megvan, akkor történhet meg a kör torzítása ellipszissé és az eltolása a megadott koordinátákra. 7

IV.13. ábra: Numerikus konstansok Természetesen ebből a programból is 'subvi'-t készítünk és ezután elmentjük abba az LLB könyvtárba, amelyikbe a négyzetrajzoló alkalmazást is mentettük. IV.14. ábra: A ciklus-indexelés engedélyezése/tiltása A végleges program a IV.15. ábrán a csatlakozó pontos illetve a VI leírása pedig a IV.16. ábrán látható. 8

IV.15. ábra: Az ellipszist rajzoló program IV.16. ábra: Az ellipszis program 'Context Help'-je Most pedig lássunk neki annak a programnak, amely megvalósításához az előző két programot készítettük, a körmozgás és a hullámmozgás kapcsolatát bemutató alkalmazásnak. A 'Front Panel'-en helyezzünk el egy csúszkát ('Slider'-t), amellyel a függőleges tengely méretét állíthatja majd a felhasználó. A rajzobjektumok egyéb méreteit a programban fogjuk beállítani. Tegyünk még fel egy 'XY-Graph'-ot a körmozgás, illetve egy 'Waveform Chart'-ot a hullámmozgás megjelenítéséhez (IV.17. ábra). Igyekezzünk az egyes elemeket úgy elhelyezni, hogy azok jól mutassák az egymás közötti összefüggéseket! Ne felejtsük el kikapcsolni a mindkét diagram automatikus skálázását! A 'Waveform Chart' alapesetben száz időlépésnyi adatot jelenít meg. Amennyiben ez kevésnek bizonyul, akkor az időtengelyen lévő maximális érték átírásával változtathatunk ezen, azonban tapasztalni fogjuk, ez csak 1023-ig tehető meg. Ez azért van, mert ekkora méretűre van beállítva a diagram adatpufferje. Ennek méretét a diagram legördülő menüjében található 'Chart History Length' menüpont használatával változtathatjuk meg. Ahhoz, hogy a program folyamatosan fusson, és mutassa az ellipszis mentén köröző négyzetet, az egész programot egy 'While' ciklusba kell elhelyezni. A ciklus leállási feltétele legyen egy gomb megnyomása, amelyet a ciklusleállító elem legördülő menüjéből a 'Create Control' menüponttal egyszerűen elkészíthetünk. A programban az elkészített 'subvi'-ok felhasználásával ki kell rajzolni az ellipszist, valamint az ellipszis pontjai folyamatosan végigsétáltatni a négyzet középpontját. Ehhez a numerikus palettán található 'Quotient & Remainder' elem igen nagy segítségünkre lesz. 9

Mivel a mai számítógépek és a bennük található videókártyák igen nagy számítási sebességre képesek, ezért annak érdekében, hogy a diagramokon megjelenített információ jól látható legyen, szükséges, hogy a programunk futását lelassítsuk. Ezt a 'Time & Dialog' palettán található 'Wait Until Next ms Multiple' elemmel (IV.18. ábra) tehetjük meg, aminek a felhasználásával azt érjük el, hogy a ciklus, amelybe ezt az elemet elhelyeztük, az elem bemenetére kötött milliszekundumnyi ideig megállítja a ciklus futását. IV.17. ábra: A körmozgás és hullámmozgás kapcsolatát bemutató program felhasználói felülete IV.18. ábra: Ciklus késleltetése 10

A 'Front Panel' végleges kinézetét, egy futtatás eredményét, valamint a program 'Block Diagram'-ját a IV.19. ábrán láthatjuk. IV.19. ábra: A körmozgás és hullámmozgás kapcsolatát bemutató program 11