1. m´ er´ es - LabView 1 M´er´est v´egezte: Bartha Andr´as M´er˝ot´ars: Dobr´anszky M´ark M´er´es d´atuma: 2015. febru´ar 18. M´er´es helye: PPKE Inform´aci´os Technol´ogiai ´es Bionikai Kar
A m´ er´ es c´ elja: Ismerked´es a Labview programmal, ´es a periodikus jelek alapszint˝ u vizsg´alat´aval.
A m´ er´ es sor´ an haszn´ alt eszk¨ oz¨ ok: LabView program
Az eredm´ eny meghat´ aroz´ as´ anak k¨ or¨ ulm´ enyei:1 A m´er´es sor´ an megismerkedt¨ unk a Labview program lehet˝os´egeivel ´es mintafeladatok megold´as´aval szeml´eltett¨ uk a programban elv´egezhet˝ o alapvet˝ o m´er´eseket. ”A LabVIEW (Laboratory Virtual Instrument Engeneering Workbench) egy olyan programcsomag, mellyel virtu´alis m˝ uszereket (virtual instruments) hozhatunk l´etre. Felhaszn´ alhat´ o ´ altal´ anos c´el´ u grafikus programoz´asi nyelvk´ent is, de legnagyobb er˝oss´ege, ´es kifejleszt´es´enek c´elja a virtu´ alis m˝ uszerek tervez´ese, kialak´ıt´asa, ´es az alkalmaz´asok m˝ uszerk´ent val´o haszn´alata.” A fizikai m´er´esek elv´egz´es´ehez sz´ amos m˝ uszert kell ig´enybevenn¨ unk. Ezek rendszerint minim´alis kezel˝ofel¨ ulettel rendelkez˝ o c´elspecifikus eszk¨ oz¨ ok. A bonyolultabb m´er´esek elv´egz´es´ehez speci´alis eszk¨oz¨okre van sz¨ uks´eg. Ezek ´ rendszerint nem olcs´ ok. Eppen ez´ert van fontos szerepe a LabView programnak, mert haszn´alat´aval sz´ amos m´er´est tudunk modellezni jelent˝ osebb p´enzforr´as ´es eszk¨ozpark n´elk¨ ul. 1 http://e-oktat.pmmf.hu/bevezetes_grafikus_programozas
(Hozz´ af´ erve: 2015. febru´ ar 18.)
1
A m´ er´ es ismertet´ ese Kapcsol´ o, LED ´ es alapszint˝ u matematikai m˝ uveletek haszn´ alata: A h´ arom r´eszes feladat els˝ o r´esz´eben, egy egyszer˝ u kapcsol´ot haszn´altunk kontrollerk´ent, aminek a kimenet´et k´et logikai ´ert´ek k¨ oz¨ ott tudunk ´ all´ıtani (igaz-hamis). Indik´atornak, egy n´egysz¨oglet˝ u LED-et v´alasztottunk, ez t¨ ok´eletesen alkalmas logikai ´ert´ekek megjelen´ıt´es´ere. A gombot u ´gy ´all´ıtottuk be, hogy minden kattint´ as alkalm´ aval v´ altson ´ at a m´ asik ´ allapot´ ara. Ha a kapcsol´o igaz-jelet ad, a LED-¨ unk feket´er˝ol k´ek-re v´alt. A m´ asodik feladatr´esz kiel´eg´ıt´ese ´erdek´eben, a kapcsol´ot r´ak¨ot¨ott¨ uk m´eg egy case strukt´ ur´ara is, ami a kapcsol´ o hamis jel´ere futtatja le a tartalm´ at. Ebben a strukt´ ur´aban helyet kapott egy flat sequence nev˝ u strukt´ ura, melynek tartalma egy kontroller, egy gauge elnevez´es˝ u indik´ator, tov´abb´a egy subVI, mely egy bementet ´es egy kimenetet tartalmaz. A kontroller¨ unk lebeg˝ opontos sz´amok (double) bevitel´ere alkalmas. Az indik´ator sk´ al´ aj´ at u ´gy ´ all´ıtottuk be, hogy nulla, ´es sz´ az k¨ oz¨ ott legyen k´epes sz´amok kijelz´es´ere. A subVI a bej¨ov˝o lebeg˝opontos ´ert´eket megszorozza egy lebeg˝ opontos konstanssal, melynek ´ert´eke 3.6, ´ıgy a kimenet is lebeg˝opontos lesz. A harmadik feladatr´esz ´erdek´eben ez a szorz´ as, egy for loop strukt´ ur´aban kapott helyet, melynek a magja 10 000 alkalommal fut le. A harmadik feladatr´eszben, a subVI fut´ asi idej´enek m´er´es´ehez k´et r´eszre osztottuk fel a flat sequence strukt´ ur´ ankat. Az els˝ o r´eszben helyezt¨ uk el a numerikus kontrollert ´es a subVI-t. Tov´abb´a elhelyezt¨ unk itt egy tick count elnevez´es˝ u elemet, mely kiolvassa a rendszerid˝ot milliszekundumban. A sequence m´asodik r´esz´eben helyezt¨ uk el a gauge indik´ atort, egy m´ asik tick count elemet, ´es egy kivon´as aritmetikai m˝ uveletet, mely a k´es˝ obbi id˝ ob˝ ol kivonja a kor´ abbit, ezzel l´enyeg´eben megkapjuk a subVI lefut´as´anak idej´et. (Ez nem teljesen pontos ´ert´ek, mert ebbe belezavar pl: a numerikus kontroller kiolvas´as´anak ideje, az adat tov´abb´ıt´as´anak ideje, a sequence k¨ ovetkez˝ o r´esz´ere v´ alt´ asnak az ideje stb. . . ,de ez annyira kev´es, milliszekundumn´al kevesebb id˝o, hogy eset¨ unkben elhanyagolhat´ o). A kapott id˝ o´ert´ek megjelen´ıt´es´ere egy m´asik numerikus indik´atort haszn´altunk, amely megjelen´ıti az id˝ ot milliszekundumban. A feladat pontos teljes´ıt´es´enek ´erdek´eben m´eg elhelyezt¨ unk itt egy oszt´ as m˝ uveletet, mely a kapott id˝ ok¨ ul¨ onbs´eget elosztja egy 10 000 ´ert´ek˝ u konstanssal. Ezzel megkapjuk a subVI-ben l´ev˝ o ciklusmagnak az egyszeri lefut´asi idej´et (Ez eset¨ unkben egy rendk´ıv¨ ul pontatlan ´ert´ek, mert a m´er´esi tartom´ anyunknak csak a legalj´ at haszn´aljuk, emiatt a kapott ´ert´ek¨ unk csak az ´ert´ektelen biteken jelenik meg)
1. a´bra. Sebess´eg ´atv´alt´as
2
Randomsz´ am gener´ ator haszn´ alata: Enn´el a feladatn´ al a m˝ uszerpanelen egy nyom´ogombbot haszn´alunk kontrollerk´ent, melyet lenyomva egy pillanatra igaz ´ert´eket ad, majd visszat´er a hamis ´allapot´aba. Megjelen´ıt´esre egy numerikus ´es egy mutat´ os indik´ atort haszn´ altunk. Elhelyezt¨ unk egy LED-et is amely z¨oldre v´alt, ha a kapott ´ert´ek 6. Annak ´erdek´eben, hogy a gener´ al´ as is ´es a megjelen´ıt´es is csak akkor t¨ort´enjen, meg amikor a gombot lenyomjuk, az eg´esz esem´enyt egy case strukt´ ur´ aba helyezt¨ uk, amely akkor fut le, ha a gomb igaz logikai ´ert´eket ad. Ebben a case strukt´ ur´ aban helyet kapott egy randomsz´ am gener´ator, amely 0 ´es 1 k¨oz¨ott ad ´ert´ekeket 64 bit pontoss´ aggal (15 sz´ amjegy), tov´ abb´ a a numerikus indik´ ator, a Meter nev˝ u mutat´os indik´ator, ´es a LED. Ezek az elemek oly m´ odon ker¨ ultek ¨ osszek¨ ot´esre, hogy a randomsz´am gener´atorb´ol kij¨ov˝o ´ert´eket egy szorz´as aritmetikai kapu ´es egy konstans seg´ıts´eg´evel megszorozzuk 6-tal, ´ıgy a kapott ´ert´ek¨ unk 0 ´es 5 k¨oz´e esik, de tov´abbra is lebeg˝opontos t´ıpus. Ahhoz, hogy eg´esz t´ıpust kapjunk, egy kerek´ıt´est v´egz˝o kaput haszn´altunk, amely elt´avol´ıtja az egyn´el kisebb tizedes t¨ ort ´ert´ekeket, ´ıgy 0 ´es 5 k¨ oz´e es˝o eg´esz sz´amot kapunk. Ahhoz hogy 1 ´es 6 k¨oz´e es˝o sz´ amot kapjunk, egy ¨ osszead´ as aritmetikai kapu ´es egy konstans seg´ıts´eg´evel hozz´aadunk 1-et, ´ıgy minden kapott ´ert´ek m´ ar 1 ´es 6 k¨ oz´e esik. Ezt az ´ert´eket megjelen´ıtj¨ uk mind a numerikus, mind a mutat´os indik´atoron. Tov´ abb´ a ezt az ´ert´eket r´ avezetj¨ uk egy egyenl˝ os´eget vizsg´al´o ¨osszehasonl´ıt´o kapura, egy 6 ´er´etk˝ u konstanssal egy¨ ut. Az ´ıgy nyert logikai ´ert´eket, amely egyenl˝ os´eg eset´eny igaz, ellenkez˝o esetben hamis, r´avezetj¨ uk a z¨old LED-¨ unkre, amely ´ıgy vil´ ag´ıtani fog, ha a gener´ alt ´ert´ek¨ unk (a m˝ uveletek elv´egz´ese ut´an) 6.
2. ´ abra. Randomsz´am gener´ator
3
Id˝ o m´ er´ ese k´ et kontroller esem´ eny k¨ oz¨ ott: Ebben a feladatr´eszben, a m˝ uszerel˝ olapon kontrollernek helyet kapott egy gomb, indik´atornak pedig egy numerikus kijelz˝ o, ´es egy z¨ old LED. A gombot u ´gy a´ll´ıtottuk be, hogy am´ıg nyomjuk, addig igaz ´ert´eket ad, ´es ha felengedj¨ uk, akkor hamisat. A blokk diagramon elhelyezt¨ unk egy tick count ´or´at, amely felveszi a rendszerid˝o ´ert´ek´et, amikor lefut. Tov´ abb´ a elhelyezt¨ unk m´eg egy event strukt´ ur´ at amely akkor indul el, amikor a nyom´ogombunk ´ert´eke megv´altozik, ´es addig fut, am´ıg ism´et meg nem v´ altozik. L´enyeg´eben addig fut a tartalma, am´ıg nyomjuk a gombot. Ebben a strukt´ ur´ aban van egy data node elnevez´es˝ u r´esz melynek elemei k¨ ul¨onb¨oz˝o adatokat tartalmaznak, pl.: hogy le fog-e futni m´eg egyszer a strukt´ ura tartalma (new value). Ezen tulajdons´againak a kihaszn´al´as´ara, elhelyezt¨ unk benne egy case strukt´ ur´ at, amely akkor fut le, ha az event strukt´ ura m´ar megkapta a m´asodik esem´enyt teh´ at utolj´ ara fut le a magja (A nev value konnektor hamis ´ert´eke eset´en). Ekkor, az event strukt´ ur´aban kiolvassuk a time konnektor ´ert´ek´et, ez az a rendszerid˝o, amikor az utols´o lefut´as t¨ort´ent, ´es kivonjuk bel˝ole az event strukt´ ur´ an k´ıv¨ ul elhelyezett tick count ´ert´ek´et. Ezzel megkaptuk a gomb lenyom´asa, ´es felenged´ese k¨oz¨otti id˝ ot. Ez az ´ert´ek eg´esz t´ıpus´ u ´es az eltelt id˝ ot milliszekundumban tartalmazza. Ahhoz hogy m´asodperck´ent jelen´ıts¨ uk meg a lebeg˝ opontos sz´ amok ´ abr´ azol´ as´ ara alkalmas indik´atoron, ezt az ´ert´eket egy oszt´as aritmetikai m˝ uvelet, ´es egy konstans seg´ıts´eg´evel elosztjuk 1000-rel. Az ´ıgy kapott ´ert´eket kivezetj¨ uk a numerikus indik´atorra. A kivezetend˝ o ´ert´eket m´eg r´ ak¨ ot¨ ott¨ uk k´et ¨ osszehasonl´ıt´o kapura, melyek k¨oz¨ ul az egyik megvizsg´alja, hogy az ´ert´ek nagyobb-e mint 0,9 a m´ asik pedig hogy kisebb-e mint 1,1. A k´et kapu ´ert´ek´et r´avezett¨ uk egy ´es” logikai ” kapura, ´ıgy akkor kapunk igaz ´ert´eket, ha a gombot tov´abb tartottuk nyomva mint 0,9 de kevesebb mint 1,1 m´ asodperc. Ezt a logikai ´ert´eket r´ ak¨ ot¨ ott¨ uk a LED-re, amely igaz ´ert´ek eset´en vil´ag´ıtani fog.
3. ´abra. Id˝om´er´es
4
Ismerked´ es a periodikus jelekkel: Ebben a feladatr´eszben h´ arom k¨ ul¨ onb¨ oz˝ o periodikus jelet vizsg´alunk meg: szinuszos jelet, h´aromsz¨og jelet, ´es n´egysz¨ og jelet. Fontos volt, hogy a jelek fesz¨ ults´eg ´ert´ek´et (amplit´ ud´o), offszet fesz¨ ults´eg´et (f¨ ugg˝oleges tengelyen val´ o eltol´ as), ´es frekvenci´ aj´ at a szimul´ aci´ o k¨ozben m´odos´ıtani tudjuk. ´Igy a m˝ uszer el˝olapon kontrollerk´ent helyet kapott mindh´ arom jel eset´eben h´ arom darab Vertical pointer slide elnevez´es˝ u cs´ uszka”. Indik´atornak ” elhelyezt¨ unk a m˝ uszer el˝ olapon egy-egy Waveform chart elnevez´es˝ u grafikont, amely alkalmas periodikus jelek megjelen´ıt´es´ere, tov´ abb´ a k´et-k´et Meter elnevez´es˝ u mutat´os elemet, melyek majd a jelek cs´ ucs, ´es effekt´ıv ´ert´ek´et fogj´ ak mutatni. A jelek el˝ o´ all´ıt´ as´ ara egy Simulate signal elnevez´es˝ u elemet haszn´altunk, melyeket a properties men¨ uben u ´gy all´ıtottunk be, hogy a megfelel˝ ´ o jelalakokat gener´alj´ak. A jelalak gener´atoron l´ev˝o Offset, Frequency, Amplitude bemenetekre r´ ak¨ ot¨ ott¨ uk cs´ uszk´ akat, ´ıgy val´os id˝oben tudjuk m´odos´ıtani ezeket az ´ert´ekeket a szimul´ aci´ o sor´ an. A jelalak gener´ ator kimenet´et r´ ak¨ ot¨ ott¨ unk a grafikonunkra, tov´abb´a egy Amplitude and level Measurment elnevez´es˝ u elemre, amely egy bej¨ ov˝ o jelnek meg tudta ´allap´ıtani bizonyos tulajdons´agait. Eset¨ unkben a Positive Peak (pozit´ıv cs´ ucs´ert´ek) ´es az RMS (effekt´ıv ´ert´ek) kimenetek voltak aktu´alisak melyeket r´ak¨ot¨ ott¨ uk a megfelel˝ o mutat´ os indik´ atorra. A szimul´ aci´ o sor´ an j´ ol megfigyelhet˝ o volt a jelek cs´ ucs ´es effekt´ıv ´ert´eke k¨oz¨otti ¨osszef¨ ugg´es. Szinusz jel eles´et U√ max max , h´ a romsz¨ o g jel eset´ e n U = , ´ e s n´ e gysz¨ o gjel eset´ e n a k´ e t ´ e rt´ e k megegyezik Uef f = Umax . Uef f = U√ ef f 2 3
4. ´abra. Periodikus jelek
5