Sie sind auf Seite 1von 71

Virtualna instrumentacija

1. Osnovi rada u LabVIEW


1.1. Uvod
Glavni cilj laboratorijskih vjebi iz podruja virtualne instrumentacije je upoznavanje s nainom koritenja kompjutera za prikupljanje mjernih podataka i nakim zamkama i grekama koje se mogu dogoditi tijekom tog postupka. Dodatno je vano da uenik izvri odreene praktine radnje u prikupljanju podataka te da pokua samostalno izraditi odreene aplikacije koje su mu od interesa. Okosnica praktinog rada na laboratorijskim vjebama je koritenje paketa za grafiko programiranje virtualnih instrumenata LabVIEW. Taj je programski paket posebno izraen tako da dozvoljava brzu ugradnju kompjuterskog prikupljana podataka i sustava za njihovu analizu koji mogu biti iroko prilagoeni potrebama korisnika paketa. Taj se programski paket odlikuje velikim mogunostima ali se vjerojatno znatno razlikuje od bilo kojeg programskog paketa s kojim se neki programer mogao sresti u svom radu do sada. Zbog toga se od uenika oekuje sustavno uenje programiranja u LabVIEWu prije nego to se pone profitirati u radu s njim. Naalost je neka drugi nain rada nemogu. Da bi sam poetak savladavanja programskog paketa LabVIEW bio to lake i bre postoji nekoliko ogranienja i pretpostavki koji se postavljaju pred uenike: poznavanje koncepta kompjuterskog sustava kao to su file, pohranjivanje fileova, direktiriji, ispis itd. poznavanje GUTa (Graphical User Interface) te koritenje mia i tipkovnice naglasak je dat na tehnike prikupljanja podataka a ne na " lijepom " programiranju u LabVIEWu (vano je dobra obaviti posao prikupljanja podataka a ne elegantnost postupka)

1.2.

Pogled na LabVIEWu

LabVIEW je u potpunosti grafiki program koji izgleda poput crtea elektronike sheme s jedne strane i stila elektrikih mjernih ureaja iz pedesetih godina dvadesetog stoljea. To ini koncept blok dijagrama (blok diagram) i prednje ploe (front panel). LabVIEW je hijerarhijski program u tom smislu da se bilo koji virtualni instrument (bilo koja potpuna funkcionalna cjelina naziva se virtualni instrument te se gotovo uvijek oznaava kao VI) koji se programira moe brzo pretvoriti u modul koji moe biti potprogram drugog VI. To je u potpunosti analogno konceptu programiranja kod konvencionalnih programskih jezika. LabVIEW je dizajniran osim toga tako da se moe proirivati. Mogu se dodavati moduli pomou razliitih sredstava. Proizvoa mjerne kartice ili nekog mjernog instrumenta moe pogramirati LabVIEW driver koji se ponaa kao VI koji predatavlja mjernu karticu i njenu funkcijonalnost u LabVIEW okruenju. Korisnik moe takoer sam napisati LabVIEW modul i koristiti ga kao VI u drugim programima ili moe napisati modul koji se sueljavalju s LabVIEWom u drugim jezicima kao to su C i C++ . Oni su poznatui kap podVI (subVI) i ne razlikuju se od VI osim to je uelje odreeno za slijedeu razinu. PodVI u C ili C++ su vrlo korisni ukoliko je potrebno izvesti vrlo sloeni numeriki postupak na podacima koji nisu pokriveni u standardnoj LabVIEW rutini.

Damir Mileta rujna 2005.

1.3.

Osnovni koncepti LabVIEWa

Kao to je spomenuto ranije postoje dva izgleda bilo kojeg LabVIEW virtualnog instrumenta. To su blok dijagram (blok diagram) i prednja ploa (front panel). Prednja ploa (sl 1-1.) je ono to korisnik vidi pri radu s mjernim sistemom. Ona sadri kontrole i indikatore. LabVIEW ima vrlo bogat izbornik jednih i drugih (ak se moe dizajnirati i vlastita kontrola ili indikator) i to omoguava iroko podruje mogunosti programeru.

Slika 1-1

Kontrole mogu imati mnotvo oblika. Mnogi od tih oblika su virtualne slike realnih kontrola koje se koriste kod stvarnih instrumenata kao rotirajui gumb (knob) na primjer. Ostali imaju digitalni koncept. Sve kontrole imaju neku vrstu vizualne informacije na osnovu koje korisnik uvijek zna u kojem se stanje nalaze. To jako pomae jer se ne mora pri programiranje eksplicitno programirati i stanje pojedine kontrole. Drugo vrlo korisno svojstvo kontrola je to da se moe odrediti njihova reakcija ukoliko je postavljena ulazna vrijednost nestabilana. U specifinom sluaju, ukoliko ulazna kontrola moe poprimiti samo cjelobrojne vrijednosti u opsegu od 0 do 10 moe se specificirati to se treba dogoditi ukoliko se unese ulazna vrijednost 3,5 ili -1 ili nula (zero) kao tekstualna naredba. Programski rijeiti tu vrstu problema zahtijeva previe programerskog vremena tako da se ovom opcijom tedi na vremenu.

Virtualna instrumentacija

Slika 1-2.

Indikatori imaju mnotvo razliitih oblika. Neki od njih su preslik stvarnih indikatora (instrumenata i sl.) a neki su dizajnirani prikladnije za zaslon raunala. Koncept indikatora ukljuuje grafove (graphs) i prikaze (charts) to je druga vana uteda u vremenu jer se ti pokazivaki elementi ne moraju dizajnirati zasebno. Blok dijagram (sl. 2) predstavlja pozadinu njegove prednje ploe koji prikazuje kako su sve kontrole i indikatori povezani meusobno kao i skrivene module gdje se odvija sva programska obrada podataka. Izgleda na neki nain poput elektronikog shematskog dijagrama i barem je konceptualno oien na isti nain. Takav prikaz esto izgleda vrlo sloen kao u elektronikoj shemi stvarnog elektronikog mjernog instrumenta. Stoga je jedno od najvanijih svojstava u LabVIEW programiranju odrediti timing i redoslijed operacija. U konvencionalnom programskom jeziku to je ostvareno redoslijedom naredbi i koritenjem razliitih programskih petlji (FOR, WHILE itd.). LabVIEW radi na potpuno isti nain jedino sto je nain na koji se odreuje redoslijed izvrenja naredbi profinjeniji. Koncept koriten u LabVIEWu je dataflow radnja se na nekom elementu izvrava kad su svi njegovi ulazi na raspolaganju. To znai paralelnost u izvrenju radnje (ili barem pseudoparalelizam). Uobiajeno izvravanje radnji je s lijeva na desno jer su ulazi obino na lijevom dijelu elementa a izlazi na desnom dijelu. Meutim to nije zahtjev ve samo stvar dogovora. Programske petlje i redoslijed kojim se odvijaju naredbe odvija se pomou struktura koje izgledaju poput knjiga s brojevima stranica ili kao odsjeci filmske trake.

Damir Mileta rujna 2005.

1.4.

Sueljem LabVIEWa

Slijedi vrlo kratki pregled suelja LabVIEWa. Nee se prijei svim moguim mogunostima ve samo najeim. Dok se ita ovaj dio potrebno je sjesti uz raunalo i praktiki usvojiti i razumjeti postupak rada sa sueljem LabVIEWa. LabVIEW se poziva sa Start>> Programs>>National Instruments>> LabVIEW (ili ukoliko je ikona LabVIEWa na zaslonu kompjutera moe se pokrenuti LabVIEW dvostrukim kljocanjem na tu ikonu). Nakon otvaranja programa zaslon kompjutera izgleda poput sl. 1-3 kljocnite na padajui izbornik uz Newi izaberite Blank VI. Pojavit e se prazna prednja ploa virtualnog instrumenta (siva povrina) i u pozadini prozor blok dijagrama (bijela povrina)

Slika 1-3.

Slika 1-4.

Obratite panju najprije na prozor sa sivom pozadinom prednju plou. Prozor je prazan jer jo nije dizajnirana nikakva prednja ploa a pri vrhu se nalazi sedam ikona pri vrhu prozora i jedna velika ikona u gornjrm desnom kutu. Deset ikona pri vrhu slue za dizajniranje prednje ploe dok velika ikona u gornjem desnom kutu slui za predstavljanje itave prednje ploe kad izraujemo ili mijenjamo podVI. Devet je ikona podijeljeno u dvije skupine. Prve etiri slue za pokretanje VI

Virtualna instrumentacija

Ikona

Znaenje RUN

Objanjenje Jednom pokree VI. VI se nee izvrizi ukoliko im se ne da takova naredba. Gumb RUN mijenja izgled kad je VI stvarno pokrenut. VI se ne moe pokrenuti jer e programu postoje greke kljocom na PREKINUTI RUN pojavit e se popis greaka s objanjenjima VI se izvrava stalno. Taj nain izvrenja VI nije preporuljiv osim pri vrlo jednostavnim VI i ukoliko se ne vri provjera VI. Zaustavlja VI koji je pokrenut Jednim kljocom VI prelazi u stanje pauze dok ponovni kljoc nastavlja izvrenje VI

RUN NEPREKIDNO STOP PAUZA/ NASTAVI

Posljednjih pet slue za izgradnju prednje ploe Ikona Znaenje FONTS PORAVNJANJE RAZDIOBA PROMIJENI VELIINU PROMIJENI REDOSLIJED Objanjenje Odabir slova (veliina i oblik) koja se koriste za prednju plou Poravnava objekte i ikone prema vodeoj ikoni ili objektu Razdjeljuje objekte i ikone Mijenja veliini objekta ili ikone Mijenja redoslijed objekata (ispred/iza , gore/dolje) ili ikona

Damir Mileta rujna 2005.

Iznad linije ikona nalazi se sedam menija oznaenih tekstom FILE EDIT OPERATE TOOLS BROWSE WINDOWS HELP To je izbornik koji omoguuje operacije s fileom kao to su otvaranje, zatvaranje, pohranjivanje, ispis. VI je file Sadri kontrole za ureivanje elemenata Sadri operacije koje ukljuuju pokretanje VIa Sadri pojedinosti koje omoguuju konfiguriranje LabVIEWa, vaih projekata i vaih VIa Sadri pojedinosti koje omoguuju uvid u aspekte trenutnog VIa i njegovu hijerarhiju Odabire se koji je prozor vidljiv Jedno od najvanijih podruja programa. Postoji nekoliko naina ostvarenja pomoi za svaku pojedinost ili koncept i o tom e se dosta govoriti.

Cilj Potrebno

Uitati i pokrenuti VI. Program je standardni primjer programa LabVIEW i simulira sustav za mjerenje temperature. Cilj je vjebe pokazati nekoliko stvari koje ine LabVIEW i usvojiti jednostavne operacije u LabVIEWu.

Odaberi Help>>Find Exampleszatim odaberite Search i upiite temp. Pojavit e se dvije opcije template i temperature te dvaput kljocni na drugu opciju. U tablici e se pojaviti est primjera koji zadovoljavaju va kriterij pretraivanja. kljocnite dva puta na Temperature System Demo.vi.

Trebali bi dobiti ekran izgleda prikazanog na slici 1-5.


Slika 1-5.

Virtualna instrumentacija

U gornjem lijevom kutu prozora nalazi se skupina kontroli. Dva klizna preklopnika koja imaju dva stanja on i off predstavljaju booleove kontrole. Tu je i slijedea kontrola koja ima digitalni i analogni dio. Digitalni dio je ploa s brojem u njoj i dvije strelice za poveavanje i smanjivanje vrijednosti. Digitalne ulazne vrijednosti mogu se obino promijeniti kljocom na strelicu ili upisujui vrijednost preko ve upisane vrijednosti u displej. Analogni dio je kliza koji se moe vui miem mijenjajui pri tom vrijednost. Ispod te ploe u sredini lijevo je slijedei par kontroli koji ima slian digitalni dio sami to su kontrole rotirajue a ne klizne. Meu njima nema razlike samo to je tee miem rotirati gumb nego pomicati kliza. Meutim kako su kod nevirtualnih instrumenata puno ee rotirajue kontrole od kliznih zgodno je na taj nain stvoriti veu iluziju fizikog instrumrnta. Na sredini zaslona su dvije ploe s pokazivaima na njima. Oba pokazivaa imaju analogni i digitalni dio. Digitalni dio pokazivaa izgleda gotovo isto kao i digitalna kontrola samo bez strelica kojima se mijenja vrijednost. Analogni pokaziva ima izgled termometra. U krajnje desnom dijelu nalaze se neki od najmonijih pokazivaa u LabVIEWu grafovi i prikazi (charts). To su grafiki podaci izlaza i mogu se prikazati na mnotvo razliitih naina. Na prednjoj se ploi nalazi jo nekoliko stvari. Dolje lijevo su dvije kontrole koje su zasivljene to znai da im se momentalno ne moe pristupiti i promijeniti vrijednost. Prije no to se pokrene VI potrebno je objasniti to je njegova zadaa. VI simulira oitavanje temperature brzinom koja je odreena s update rate te izraunava srednju vrijednost i standardno odstupanje zadnjih 10 oitavanja. Prikazuje se povijest oitanih vrijednosti temperature s trenutnim vrijednostima gornje i donje granice te histogram oitanih vrijednosti. Konano, VI aktivira signalizatore prijelaza gornje i donje granine vrijednosti. Prije nego to se pokrene VI treba pokazati kako se printaju prikazi sa zaslona. Postoje dva postupka ovisno o ome to se eli printati Printanje sadraja VI 1. Odberi File>>Print 2. Pojavit e se izbornik s pitanjem to se eli printati: Printanje prikaza cijelog ekrana 1. Maksimizraj VI pritiskom gumba za maksimiziranje ukoliko je neophodno 2. Pritisni gumb PrintScreen 3. Otvori program za crtanje Start>>Programs>>Accessories>>Paint 4. Umetni sliku Edit>>Paste 5. Printaj sliku File>>Print Pritisnite Ikonu RUN gore lijevo . Uoi da je ikona promijenila oblik u i da se na prednjoj ploi prikazuju vrijednosti temperature (u ovom primjeru simulirane) . Ovaj VI se nee nikad zaustaviti jer sadri beskonanu petlju kao to e se vidjeti kasnije. Koristei radne alate mogu se kontrole prednje ploe pomicati, zakretati, stiskati i pisati preko njih. Da bi se zakrenuo gumb ili sklopka postavite radne alate na kontrolu i koristite lijevu tipku mia. Da bi se promijenila vrijednost na odreenoj digitalnoj kontroli postavite radni alat na odgovarajuu strjelicu i kljocnite (iznos koji kontrola mijenja se moe
Damir Mileta rujna 2005. 7

promijeniti kao to emo kasnije vidjeti). Da bi se napisala vrijednost preko postojee postavite alat za pisanje preko stare vrijednosti i upiite novu. Promijenite nekoliko kontrola i uoite efekte. Primijetite da kod analognih kontrola postoje gornja i donja granica vrijednosti dok kod digitalnih kontrola tih granica nema. Nakon to zavrite s radom zaustavite VI prebacivanjem sklopke za akviziciju u poloaj off. VI se moda nee odmah zaustaviti jer treba zavriti ono to je obavljao. To je mnogo bolji nain zaustavljanja VI nego pritiskom na gumb STOP na alatnoj traci jer dozvoljava ist zavretak operacija VI. Gumb STOP ostavlja operacije nezavrenom. Sad emo pogledati u zalee prednje ploe blok dijagram . Odaberi Windows>>Show Block Diagram . Pri tom uoite da blok dijagram nije zamijenio prednju plou ve su sad oba vidljiva u isto vrijeme to je korisno pri razvijanju operacija. Prvo to primjeujete na blok dijagramu je to da je on sloeniji od prednje ploe. Uostalom veina opreme ljepe izgleda izvana nego iznutra.

Slika 1-6.

Virtualna instrumentacija

Osim toga uoit ete da su se na alatnoj traci blok dijagrama pojavila slijedea etiri alata kojih na alatnoj traci prednje ploe nije bilo: Ikona Znaenje Gumba za animirano izvrenje VI Gumb za ulazak u VI Gumb za prelazak preko VIa Gumb za izlazak iz VIa Objanjenje Omoguava animorano promatranje izvravanja VIa. Prikazuje se tijek podataka blok dijagramom od jednog vora do drugog Ulazak u Izvrenje VI korak po korak. Vrlo zgodno kad se zeli vidjeti u kojem je voru VI dolo do greke. Prelazak preko VI (podVI) pri izvrenju VI korak po korak. Izlazak iz VI pri izvrenju VI korak po korak.

Slijedee su tri osjenana okvira veliki vanjski i dva unutar njega. To su okviri petlje. Vanjski okvir je WHILE petlja koja se izvrava dok booleov uvjet ne postane false. Unutranja petlja na lijevoj strani je FOR petlja koja se izvrava jednom za svaku iteraciju WHILE petlje (te su petlje su dakle ugnijedene ako to dijagram sugerira) dok pravokutnik na desnoj strani nije petlja ve CASE vor koji obavlja uvjetivanu operaciju ako-onda (ifelse). Ono sto je prikazano momentalno na blok dijagramu predstavlja true sluaj. kljocnite na strelicu uz rije true pri vrhu tog pravokutnika u sredini i tako da se prikae i false sluaj. Jo jednim kljocom se vraa stanje na prikazano. Primjeuje se da su ice koje povezuju dijelove i neke pravokutnike blok dijagrama rezliitih boja. LabVIEW naime koristi razliite obojane ice da bi oznaio razliite tipove varijabli. Zelena (tokasta) predstavlja booleovu varijablu, plava je cjelobrojna varijabla a naranasta je varijabla dvostruke preciznosti. Uoite da se naranaste ice javljaju u dvije debljine tanja linija predstavlja skalare a deblja polja (matrice). Budui se LabVIEW izvrava s lijeva na desno jasno je da se unutar svake iteracije vanjske WHILE petlje lijeva FOR petlja odvije kompletno nakon ega desni vor if-else izvrava. Vei broj malih pravokutnika oivienih jednom obojenom linijom s brojevima unutar nje predstavljaju konstante. Pravokutnici oivieni dvostrukom linijom (vanjska deblja unutarnja tanja) predstavljaju kontrole ija je pozadina odgovarajua kontrola na prednjoj ploi. Dvaput kljocnite na komandu oznaenu update period. Prikaz se prebacuje na prednju plou i moete uoiti da je kontrola update period sad oznaena na prednjoj ploi. To su prednja i stranja strana te kontrole. Vratite se na blok dijagram. Pravokutnici oivieni dvostrukom tankom linijom su indikatori. Probajte slinu akciju na onom oznaenom s DBL gore desno u FOR petlji. To odgovara termometru i njenoj digitalnoj vrijednosti u trenutnom temperaturnom podruju. Ono to je vrlo vano na blok dijagramu su kvadratini blokovi uglavnom u crnobijelom prikazu. Oni su takoer VI. Pokuaj dvostruko kljocnuti na jednog od njih (onog u sredini FOR petlje). Pojavit e se nova prednja ploa. Kontrole prednje ploe kontroliraju se pomou ulaznih ica u VI a indikatori dobivaju svoj izlaz kroz spojene ice u ostale smjerove. Uoite da postoje tri kontrole i tri indikatora. Zatvorite taj prozor i uoite da u taj
Damir Mileta rujna 2005. 9

VI postoje tri ulaza (s lijeve strane) i tri izlaza (s desne strane). To je potprogram u LabVIEWu obino zvan podVI (subVI). Svaki podVI moe biti izveden neovisno i povezan s ostalim podVi tako tvori sloeniju cjelnu. Sad zatvori prednju plou (time e se automatski zatvoriti i blok dijagram). Ukoliko su nastale neke promjene u VI ignorirajte ih (Save Changes>>No). Slijedi izgradnja vrlo jednostavnog VI. Da bi bili sigurni da emo poeti iz iste toke zatvorite LabVIEW zatvaranjem praznog prozora prednje ploe.

10

Virtualna instrumentacija

2. Jednostavni primjer
U ovom e primjeru biti pokazan nain programiranja u grafikom programskom jeziku LabVIEW na primjeru jednostavne matematike operacije mnoenja. Otvori LabVIEW i postavi prozor za formiranje prednje ploe (siva pozadina) vidljivim na ekranu kompjutera.

Slika 2-1

Da bi se realizirao ovaj primjer potrebne su dvije brojane kontrole (za varijablu a i za variablu b). Osim toga trebat e i brojani pokaziva za prikazivanje rezultata mnoenja. Da bi se pozvala neka kontrole potrebno je odabrati paletu kontrola controls pallette (Windows >>Show Controls Pallette) odnosno jednostavnije postaviti mi na sivu povrinu prednje ploe i kljocnuti desnim miem bilo gdje na sivu povrinu prozora prednje ploe. Nakon to se pojavi prozor s paletom kontrola potrebno je mi postaviti na gornje lijevu ikonu. Pri tome e se pojaviti paleta naziva Numeric Control (za razliku od Buttons, Text Control itd.) te e zaslon monitora izgledati kao na slici 2.

.
Slika 2-2

Damir Mileta rujna 2005.

11

Zatim treba kljocnuti ikonu Num Ctrl pri emu nestaju sve palete i ostaje samo iscrtkani pravokutnik koji se moe pomicati alatom za pomicanje po sivoj povrini prednje ploe je to upravo ono to smo htjeli ostvariti. Iscrtkani pravokutnik treba postaviti na eljeno mjesto na prednjoj ploi i kljocnuti jednom lijevom tipkom mia. Na prednjoj e se ploi tako smjestiti kontrole numeric u kojoj je upisama vrijednost 0 a zajedno s njom dolazi mali pravokutnik spreman za editiranje imena te kontrole. NEMOJTE STISNUTI ENTER ! ve preko trenutnog naziv kontrole Numeric (bijela slova na crnoj podlozi) upiiti novi (va) naziv te varijable (npr. Var A upiite pomou tipkovnice Var A !). Da bi to ime bilo prihvaeno i na prednjoj ploi i na blok dijagramu potrebno je u krajne lijevom dijelu alatne trake pritisnuti kvaicu koja se u meuvremenu pojavila ili to je jednostavnije kljocnuti jednom lijevom tipkom mia na sivu povrinu prozora prednje ploe. Sada odaberi samo naslov kontrole i pokuaj ga pomaknuti po prozoru prednje ploe. Uoite da se ikona kontrole ne pomie. Uinite sada isto samo s ikonom kontrole. Primjeujete da se sada pomie ne samo ikona kontrole ve i njen naslov. Vratite naslov kontrole uz komandu. Ovo je bitno znati zbog toga da bi znali kada im kako to pomiemo u programu LabVIEW.

A sad malo estetike !


Da ne bi prikaz prednje ploe virtualnog instrumenta bio sumorno sivo crno bijeli kao boje u poznu jesen potrebno je znati kako promijeniti boje kontrola i ostalih povrina prednje ploe. Nema neke praktinog razloga za to ali razvija matu, pokazuje estetske sklinosti i zabavno je. Za to su vam potrebna dva alata koja su smjetena na paleti alata. Odaberi Windows>>Show Tools Pallette i paleta alata bi se trebala pojaviti (ukoliko ve nije bila prisutna na ekranu !). Alat za kopiranje i nalazi se u treem redu desno dok je alat za odabir boje lijepljene boje i bojanje smjeten skroz na dnu alatne palete (sl. 3.) Mogu se obojiti mnogi dijelovi kontrole ali u ovom e se primjeru obojiti samo slijedea dva : Pozadinu prednje ploe Kontrole i indikator Da bi se pojavila paleta sa spektrom boja kao na slici 2-4. potrebno je kljocnuti tako se kursor mia promijeni u oblik kista i zatim kljocnuti onu na.alat za bojanje povrinu koja se eli obojiti. Treba uoiti da na paleti boja nalaze tri podpalete na kojima se mogu kontinuirano ili diskretno odabrati boja i njen ton. Gornja je paleta monokromatska od crne boje, preko nijansi sive boje do bijele boje. Prvensrveno je namijenjena za bojanje pozadine prednje ploe. Srednja je paleta takoer namijenjena za bojanje pozadine prednje ploe, boje nisu vie monokromatske ali su boje i njihovi tonovi prigueni. Donja je paleta arkih boja i tonova i namijenjena je tome da neku komandu na prednjoj posebno oznaimo.
Slika 2-3

12

Virtualna instrumentacija

Slika 2-4

Cilj

Obojiti prednju plou virtualnog instrumenta.

Najprije e se obojiti siva povrina pozadine prednje ploe. kljocnuti kistom na sivu povrinu i zatim kist pomaknuti na srednju paletu boja. Uoiti da se boja pozadine mijenja s obzirom na poloaj kista. Istovremeno se mijenja ista boja u donjem lijevom pravokutniku kao i postoci uz oznaku RBG. Kad se odabere eljena boja i nijansa kljocnuti jednom lijevom tipkom mia tako da se tom bojom oboji povrina prednje ploe. Isti postupak treba ponoviti za bojanje numerikih kontrola. kljocnuti desnom tipkom mia dok j alat u obliku kista i s donje palete boja odabrati boju kljocom na lijevu tipku mia. Boja se moe odabrati osim da se odabere s jedne od tri palete i tako da se kljocne kistom na neku od diskretno ponuenih boja. Druga e se brojana kontrole realizirati kloniranjem prve. Treba odabrati prvu komandu alatom za odabir. (srednjim u gornjem redu alatne palete ili odabrati tako da se pri postavljanju mia na odreenu komandu, tekst i ostalo vrsta alata automatski mijenja.) Treba istovremeno pritisnuti i drati lijevu tipku mia s odabranom brojanom komandom i drati pritisnutu tipku Ctrl na tipkovnici. Lagano pomaknuti miem klon numerike komade ispod originala. Otpustiti lijevu tipku mia i tipku Ctrl. Pojavio se klon prve numerike kontrole s nazivom Var A 2 koji e se ponaati kao druga nezavisna varijabla. Zgodnobi je bilo nazvati varijabla B. Postavite mi na iznad taksta A 2 kljocnite miem tako da se pojavi alat za pisanje i upiite preko A 2 B tako da je naziv druge brojane kontrole Var B. Slijedee to nam treba je indikator koji se nalazi na podpaleti Numeric Indicator palete Controls. Kao to se na toj je paleti ikona Numeric Indicator smjeten ispod ikone Numeric Control. tosa radi odabrat e se klizni tip indikatora generiran pomou klizne kontrole (Fill Slide).
Damir Mileta rujna 2005. 13

.Slijed radnji je: kljoc desnim miem na pozadinu prednje ploe postaviti mi na ikonu Num Ctrls kljoc na ikonu Fill Slide na podpaleti Num Ctrls prenijeti ikonu na prednju ploa alatom za pomicanje smjestiti ikonu u prozor prednje ploe kljocom na lijevu tipku mia odmah unijeti preko tastature naziv indikatora npr. Umnoak kljocnuti bilo gdje na povrinu prozora prednje ploe kljocnuti desnom tipkom mia na Fill Slide i odabrati Change To Indicator obojiti indikator prema vlastitom ukusu Konano se moe izgled prednje ploe dodatno urediti da ljepe izgleda. Pokuajte odabrati istovremeno obije kontrole (Koristite alat za odabir, ponite gore lijevo i pomaknite mi preko obaju kontrola do dolje desno drei pritisnutu tipku mia) te i poravnajte okomito koristei alat za poravnavanje iz gornjeg prozora. Prijeite sad na blok dijagram. Vidjet ete zalee obaju kontrola i indikatora. Za poetak ih moete pomaknuti u eljene poloaje (prisjeti se da treba pomicati komandu/indikator a ne samo njihove nazive!). Vrlo vano svojstvo programiranja u LabVIEWu je dataflow programiranje naredba se izvrava kad su podaci potrebni za njeno izvrenje na raspolaganju i po konvenciji izvravanje naredbi se odvija s lijeva na desno. Budui su u naem problemu obije ulazne varijabla na raspolaganju treba ih poravnati okomito prema lijevo tako da bi se rezultat pojavio na desnoj strani. Izmeu ulaza i izlaza potrebna je operacija mnoenja. Ista se moe dobaviti iz palete Functions (Windows>>Show Functions Pallette) odnosno jednostavnije postaviti mi na bijelu povrinu blok dijagrama i kljocnuti desnim miem bilo gdje na nju. Nakon to se pojavi prozor s paletom kontrola potrebno je mi postaviti na donju desnu ikonu (All Functions>> Numetic) te izabrati operator mnoenja. Smjestite ga na sredinu prozora blok dijagrama izmeu ulaza i izlaza. Sad je potrebno povezati kontrole s ulazima operatora mnoenja, izlaz s indikatorom alatom za povezivanje. U LabVIEWu je to pulica ice . Ona e se automatski pojaviti ukoliko se alat postavi na izlaz kontrola, ulaz indikatora, ulaz ili izlaz operatora. Krenimo od prve ulazne kontrole. Kad postavimo alat na desni kraj kontrole pojavit e se pulica ice a ikona kontrole e poeti treptati. Da bi privrstili icu za izlaz kontrole treba pritisnuti lijevu tipku mia dok ikona treperi drati je stisnutu i pomicati mi dok se ne dosegne gornji lijevi ulaz operatora mnoenja koji pri tom takoer pone treperiti i pojavi si natpis x. Tada otpustite lijevu tipku mia. Izmeu izlaza prve ulazne kontrole i ulaza x operatora pojavit e se naranasta ica. Ukoliko se pojavi crtkana ica pritisnite Ctrl-B (brie loe spojene ice) i pokuajte ponovno. Istim postupkom spojite drugu ulaznu komandu na y ulaz (lijevo dolje) operatora i njegov izlaz na indikator.

14

Virtualna instrumentacija

Slika 2-5

Konani izgled ekrana treba biti poput onog sa slike 2-6.

Slika 2-6

Damir Mileta rujna 2005.

15

Prijeite na prednju plou i pokrenite VI. Budue da su pretpostavljene vrijednosti obaju ulaza 0.0, odgovor je 0.0. Da bi se provjerila funkcionalnost VI postavite vrijednost prvog ulaza na npr. 2.0 a drugog na 3.0. Pri tom VI mora biti zaustavljen. Provjerite izgleda li . Sad upotrijebite alat za provoenje operacija i indikator za pokretanje VIa ovako promijenite vrijednost ulaznih kontrola kljocom na strjelice uz ulazne kontrole (kljocom na strjelicu usmjerenu gore poveavate vrijednost ulazne varijable u slijedu 1.0, 2.0 ) ili alatom za pisanje upiite eljene vrijednosti preko 0.0. P0krenite ponovno VI i rezultat bi trebao iznositi 6.0. Da bi spremili svoj rad odaberite iz alatne trake File>>Save As spremite file u eljeni direktorij odgovarajuim imenom. Ovo je konvencionalni nain spremanja fileova. U LabVIEWu se mogu osim toga srodni fileovi mogu spremati u biblioteke (Library).

2.1.

Ulazni podaci i nain njihova prikazivanja

Sad emo isprobati neke varijacije u gornjem primjeru. LabVIEW naime ima tu sposobnost da nadzire nain na koji je ulaznim podacima potvruje vjerodostojnost i kako e biti prikazani. Sve se to nadzire pomou padajueg menua koji se pojavi kad kljocnemo desnim miem na pojedinu komandu, indikator i ostale elemente prednje ploe i blok dijagrama. Neki od najkorisnijih stvari koje se mogu uiniti su: Promijeniti pretpostavljene vrijednosti Odaberi Data Range i promijeni Default Value

Promijeniti ispis za koji se varijabla Data Range makni kvaicu u Use Default mijenja kad se kljocne gore i dolje Range i promijeni vrijednost Increment strjelica Promijeniti dizvoljeni opseg podataka Data Range i promijeni Maximum i Minimum vrijednosti

Promijeni to se dogaa na i iznad Data Range i odaberi If value is out of granine vrijednosti range - opcije su: Ignore Ne provodi provjeru granica Coerce Ako je vrijednost izvan granice, zaokruava se na najbliu graninu vrijednost. Strjelicom za poveanje/smanjenje vrijednosti nee se premaiti opseg Suspend Ako vrijednost ode izvan opsega izvrenje VIa se prekida moe se dodati poruka greke Promijeniti nain na koji se padaci Format & Precision i uini odgovarajue prikazuju promjene Probaj promijeniti nekoliko postavki i pogledaj kako djeluje na prikazane vrijednosti. Moe se takoer promijeniti i opseg prikazivanja termometra mijenjajui maksimalnu vrijednost na pokazivau pomou alata za pisanje.

2.2.

Ukraavanje prikaza prednje ploe

Mogue je jo na prednju plou dodati naslov, boje i razne ukrase.

16

Virtualna instrumentacija

Naslovi se dodaju alatom za pisanje a izgled teksta se moe promijeniti odabirom teksta i koritenjem menua fontova na vrhu ekrana. Boje se dodaju alatom za bojanje kao to je ve objanjeno. Dekoracijama se moe pristupiti na podpaleti koje se mogu pojedinano obojiti. Veliina dekoracije se moe mijenjati ukoliko postavimo mi u njihov ugao i zatim povlaenjem poveamo ili smanjimo njenu povrinu. Moete pokuati i sa slojevitim prikazom (layer) jedna pojedinost stoji iznad druge tako da je samo gornji objekt vidljiv. Dakle ukoliko se postavi dekorativna podloga iza kontrole to je upravo ono to se eli. Layer se kontrolira iz Edit menua i odabrana pojedinost se moe postaviti iznad, ispod, ispred i iza layera. Veinom je dovoljno koristiti samo postavljane kontrole ispred ili iza layera. Konani izgled prednje ploe moe izgledati kao na slici . Pravi unikat, zar ne?

Slika 2-7

Damir Mileta rujna 2005.

17

3. Napredovanje u LabVIEWu
3.1. WHILE petlja i sklopke
Nastavit emo s LabVIEWom uei kako stvoriti petlju unutar koje e se program odvijati i zavriti kad se ta petlja zaustavi. Takav je nain zaustavljanja VI, kao to je ve objanjeno mnogo primjereniji nego zaustavljanje tipkom s alatne trake STOP. Koristit e se petlja WHILE koja se izvrava stalno iz poetka tako dok je upravljaka varijabla u stanju true. Moe se iskoristiti ve napisani VI, staviti u petlju tako da se mogu mijenjati vrijednosti ulaznih varijabli i promatrati promjene izlaza. Usvojit e se osim toga nain koritenja sklopke da bi se VI zaustavio kad to elimo. Prijeite na blok dijagram VI mnoilo, kljocnite desnom tipkom mia na povrinu prozora i nakon to se pojavi paleta Functions potraite All Functions pa Structures i u njoj While Loop. Pojavit e se oznaka petlje koju treba postaviti u lijevi gornji kut blok dijagrama i drei pritisnutu lijevu tipku mia povui petlju tako da uokviri sve elemente blok dijagrama. Uoite dva kvadratia u donjim kutovima. U lijevom kutu je varijabla I koja broji (od 0) koliko se puta petlja odvila. U desnom je kutu booleova (logika) upravljaka varijabla. Ukoliko je njen ulaz true petlja se izvrava, ukoliko je njen ulaz false petlja se zaustavlja na kraju trenutne iteracije. Nauimo sad jednu LabVIEW preicu. kljocnimo desnim miem na okvir petlje i odaberimo create indicator . Na prednjoj se ploi pojavi digitalni indikator. To je stvarno brz nain kreiranja indikatora ukoliko vam treba. Indikator moete pomicati okolo i imenovati ga odabirui indikator i birajui show>>label s padajueg izbornika (desna tipka mia). Ista se stvar moe uiniti s kontrolom petlje iskoristi padajui da kreira kontrolu. Koristei alat za provoenje operacija moe postaviti komandu na poloaj ON i pokrenuti VI. Indikator petlje e pokazivati da se petlja odvija vrlo brzo. Sad se ulazne varijable mogu mijenjati u dinamikim uvjetima a izlaz pokazuje odgovarajue rezultantne vrijednosti. Kad stisnete tipku OFF VI se zaustavlja (strjelica RUN stane a gumb STOP se zamuti). Probaj sad ponovno pokrenuti VI pritiskom na gumb RUN. Nita se ne dogaa zbog toga to je gumb ON/OFF jo uvijek u poloaju OFF. Da bi se VI pokrenuo ponovno morat ete postaviti gumb ON/OFF u poloaj ON i pokrenut VI. Prilino nespretno i neuobiajeno, zar ne ? Trebao bi nam pametniji gumb ON/OFF. Ukoliko ste, na poetku, pomislili da su booleove sklopke dosta jednostavne one to nisu jer postoji mnogo pitanja u svezi s njima: elite li da sklopka zadri novu vrijednost ili samo reagirati kad je stisnete ? elite li da se to dogodi kad stiete tipku mia ili kad je otputate ? elite li biti sigurni da LabVIEW uita sklopku u njenom novom stanju ? To vodi k est razliitih tipova sklopki:

18

Virtualna instrumentacija

Ikona Zadrati? Akcija ukljuenja


DA DA NE NE NE NE STISNI OTPUSTI STISNI/OTPUSTI STISNI OTPUSTI STISNI

Koliko puta LabVIEW uitava poloaj sklopke

Mnogo puta Mnogo puta Moda nikad (prebrzo otputanje) Moda mnogo puta (presporo otputanje) Jednom vraa se na poetni poloaj nakon to ga LabVIEW proita Jednom vraa se na poetni poloaj nakon to ga LabVIEW proita Barem jednom, a moda vie puta vraa se na poetni poloaj nakon to ga LabVIEW proita i tipka je otputena

Za na je primjer najprimjerenija sklopka koja ne zadrava poloaj i vraa se na poetnu vrijednost nakon to je LabVIEW uita (etvrta na listi). Promijeni vrstu booleove komande u taj tip pomou padajueg a izabirui Mechanical action. Takoer se treba promijeniti poetno stanje gumba na ON (runo podesite gumb na ON i postavite kao pretpostavljenu vrijednost). Sad je za pokretanje VI potrebno samo pritisnuti gumb RUN. Program se zaustavlja pritiskom na booleovu sklopku ON/OFF. Da bi osigurali da netko tko ne poznaje zakonitosti rada u LabVIEW ne bi zaustavio izvravanje VI pomou naredbe STOP iz alatne trake moete je od tamo maknuti. (File >> VI Properties >> Category >>Window Appearance>>Custom>>Customize>>Show Abort Button>>maknuti kvaicu)

3.2.

Prikaz dinamikih signala

Bilo bi interesantno vidjeti kako bi se mogao prikazati umjesto statikog ulaznog signala dinamiki koji bi se mijenjao 10 puta u sekundi ili bre. Da ne bi korisnik u ovom primjeru jednu od varijabli mijenjao na taj nain postoji u LabVIEWu, koji je vrlo bogat razliitim funkcijama, generator sluajnih brojeva (01) koji se mijenjaju vrlo brzo (ovisno o taktu raunala). Da bi se zamijenila jedna varijabla (npr. Var B) tim generatorom najprije je potrebno odabrati tu varijablu na prednjoj ploi i pritsnuti Delete na tipkovnici da bi ju izbrisali (tim postupkom nije mogue izbrisati komandu s blok dijagrama). Zatim treba prijei na blok dijagram i s Ctrl-B izbrisati loe vodove. Najbri nain dolaenja do generator sluajnih brojeva (koji izgleda kao par kockica za igru ) je taj da se na blok dijagramu umjesto na povrinu tog prozora desnom tipkom mia kljocne na neku od ikona. Pojavit e se padajui gdje treba izabrati Express Numeric Palette>>Random Num. Standardni (i sporiji) je nain odabira nakon kljoca desnom tipkom mia na povrinu prozora blok dijagrama Functions >> All Functions >> Numeric>> .

Damir Mileta rujna 2005.

19

Generator sluajnih brojeva smjestite unutar WHILE petlje i poveite pulicom na operator mnoenja. Ukoliko se pitate kako generator zna kad treba generirati novu sluajnu vrijednost odgovor je slijedei. LabVIEW pita svaku komponentu programa da li ima vrijednost na raspolaganju. Digitalna komanda kae da i proizvede vrijednost komande, generator sluajnih brojeva takoer kae da i proizvede novi sluajni broj. Ukoliko sada pokrenete VI iva u termometru e poeti drhtati ukoliko ste odabrali odgovarajue skaliranje odabirom faktora mnoenja Var A i mjerni opsega termometra. Bilo bi takoer vrlo lijepo ukoliko bi imali prikaz izlaza u vremenu grafikon ili prikaz. LabVIEW razlikuje dvije vrste grafikih prikaza, graph u kojem su svi podaci dostupni zajedno (kao u polju) i chart kad je samo jedan podatak na raspolaganju u nekom trenutku (kao prikaz na pominom papiru). Dodat emo chart VIu. Za to je potrebno najprije poveati povrinu prozora predenje ploe (povuci desnu ivicu prozora lijevom tipkom mia) dok ne dobije po prilici dvostruko veu povrinu prozora. Sad odaberi controls>>graph>>waveform chart i postavi chart u desni dio prednje ploe. Dodaj naslov prije kljoca miem na prednju plou. Chart se na blok dijagramu moe spojiti paralelno termometru tako da postavim alat miem na icu izmeu operatora mnoenja i izlaznog indikatora (pojavit e se pulica a ica e poeti treperiti). Stisnite desnu tipku mia i povucite icu do charta. Budite sigurni da je indikator unutar WHILE petlje. Nakon to pokrenete VI vidjet ete prikaz 50 posljednjih vrijednosti jer je chart u stvari pomini prozor za posljednjih 50 vrijednosti. Pomou padajueg izbornika mogue je kontrolirati veliki broj parametara. Moete odrediti broj vidljivih vrijednosti mijenjajui vrijednost horizontalne ljestvice i kako su te vrijednosti raspodijeljene mijenjajui veliinu okvira i povlaei ga horizontalno. Moete pogledati i povijest prolih vrijednosti koje nisu trenutno prikazane na chartu koritenje mogunosti spremnika te horizontalnu ljestvicu s kliznom trakom. Pretpostavljene vrijednost spremnika su 1024 vrijednosti i 50 vidljivih na prikazu. Aktiviranjem klizne trake pomoi padajueg izbornika show>>scrollbar moete prijei preko svih pohranjenih vrijednosti. Isto tako se moe promijeniti duljina skupa pohranjenih podataka pomou Chart History Length. Moda e neki od Vas uoiti da s ukljuenim chartom VI se izvrava neto sporije oito zbog toga to vie prikaza zahtjeva vie procesiranja odnosno vie vremena za izvravanje pojedine petlje a to rezultira manjim rojem izvrenih petlji u sekundi. O tome se i te kako mora voditi rauna. Izgled VI bi sad trebao biti poput ovog:

20

Virtualna instrumentacija

Slika 3-1.

3.3.

to uiniti ukoliko Vam je izvrenje VIa prebrzo !?

Sad, nakon to ste vidjeli kako se brzo VI izvrava moda ete zakljuiti da je to za Vas prebrzo. Moda bi odvijanje jedne petlje svakih 250 ms bilo sasvim lijepo. Vremensko nadziranje petlje sastoji se u tome da se u petlju ukljui vremenski element (npr. Poput metronoma koji nadzire takt svirau muzikog instrumenta). Odaberite pomou All Functions>> Functions>>Time & Dialog>>Wait Until Next ms Multiple sliicu metronoma, smjestite je unutar petlje i pomou padajueg izbornika Create>>Constant napravite na ulazu metronoma konstantu vrijednost 250 (vrijednost u ms). Sad e se petlja odvijati etiri puta u sekundi.

Slika 3-2.

Damir Mileta rujna 2005.

21

Konano moe se i runo upravljanje brzinom izvravanje WHILE petlje. Zamijeni brojanu konstantu 250 kontrolom te na prednjoj ploi zamijeni brojanu kontrolu s Horizontal Pointer Slide. Upiite preko krajne vrijednosti klizaa 10 novu vrijednost 2000. Sada ete moi kontinuirano mijenjati brzinu izvravanje WHILE petlje od 2000 ms tj. od 2 sekunde do maksimalne brzine koja ovisi procesorskoj brzini raunala. Probajte ! Konani izgled prednje ploe i blok dijagrama je za ovaj primjer prikazan na slici

Slika 3-3.

22

Virtualna instrumentacija

4. Predstavljanje podataka i pomo


4.1. Predstavljanje podataka
Naranasta/smea Plava Tokasta zelena - s DBL - s I32 - s TF Na Vaem e blok dijagramu ice bit obojene trima bojama ovisno trima vrstama podataka koji se njima prenose

LabVIEW podrava veliki broj vrsta podataka i njihove pretvorbe. Glavne vrste numerikih varijabli su: Skraenica Vrsta Duljina spremnika (Byte) Minimalna vrijednost Minimalna vrijednost

EXT DBL SGL I32 I16 I8 U32 U16 U8 CTX CDB CSG

Realni proirene tonosti Realni dvostruke tonosti Realni jednostruke tonosti Dugi cjelobrojni Cjelobrojna rije Cjelobrojni byte Pozitivni dugi cjelobrojni Pozitivna cjelobrojna rije Pozitivni cjelobrojni byte Kompleksni proirene tonosti Kompleksni dvostruke tonosti Kompleksni jednostruke tonosti 8 4 4 2 1 4 2 1 -32766 -126 0 0 0 65535 255 32767 127

Budui da se sline aritmetike operacije mogu izvesti na svakoj od tih vrsta, aritmetike se funkcije, komande i indikatori moraju nositi s tim. Za ostvarenje toga koriste se tri razliite tehnike: promjena vrste, implicitna pretvorba vrste i eksplicitna pretvorba vrste.

Damir Mileta rujna 2005.

23

Da bi se vidio primjer prve i druge upotrijebi padajui izbornik na ulaznoj komandi u operator mnoenja i promijeni nain prikazivanja podataka. Uoi da su ice naranasto/smee za lebdei a plave za neoznaeni cjelobrojni. Da bi se vidio primjer primjer eksplicitne pretvorbe promijenite vrstu predstavljanja izlaza u cjelobrojnu rije (To Word Integer). Pobriite ice s izlaza operatora mnoenja do charta i indikatora pomou alata za izbor i tipke Delete na tastaturi. Pomou Ctrl-B pobriite preostale prekinute vodove. Odaberite All functions>>Functions>>Numeric>> Conversion >>To Word Integer i namjestite pretvornik nasuprot izlazu operatora mnoenja. Kompletirajte oienje s operatora mnoenja na ulaz pretvornika a s njega na chart i indikator. Primjeujete da se chart automatski promijenio u I16 kad ste ga spojili na konverter a indikator je ostao DBL i ali ipak provodi pretvorbu to je indicirano konverzijskom tokicom. Moete promijeniti vrstu indikatora odabirui u padajuem izborniku pod Representation I16 nakon ega vrsta podataka postaje konzistentna po svim elementima i konverzijska tokica nestane. Postoje mnogi sluajevima pri programiranju u LabVIEW gdje ete morati bit svjesni vrste podataka i osigurati da se konverzija tipa podataka odvija korektno.

4.2.

Pomo !

U LabVIEWu postoje dva oblika pomoi LabVIEWeva pomo Vama, programeru, i Vaa pomo korisniku za kojeg piete program. LabVIEW prua pomo na mnogo naina. Postoji ugraeni sustav pomoi (pod Help>>VI, Functions & How To Help ili Ctrl ?) koji vam prua opirnu pomo o LabVIEWu. Pojavit e se prozor pomoi gdje se unutar opcija Contents, Index, Search i Favorites moe pronai sve od interesa u svezi
Slika 4-1.

LabVIEWom. Osim takovog, uobiajenog naina pomoi postoji u LabVIEWu puno specifiniji sustav pomoi koji govori o svakoj pojedinosti kad se na nju dovede miem alat za odabiranje. Taj je sustav dostupan pod Help>>Show Contex Help. Tako se za svaku odabranu pojedinost s prednje ploe ili blok dijagrama dobije kratki saetak pojedinosti. Kako to izgleda za izabrani metronom prikazano je na slici. Ako ne elite da vam ta vrst pomoi bude stalno ukljuena ve samo kad vi to elite zgodno je koristiti u tim sluajevima preicu Ctrl-H. Uoit ete takoer da ukoliko stavite alat za odabiranje na komandu ili indikator da e se u prozoru pokazati njen naziv i informacija No description available. Isto se moe promijeniti odabirom u padajuem izborniku Data Operations>>Description. Pojavit e se jednostavan prozor u koji moete upisati korisna informaciaj o toj poje-dinosti. Nakon toga kad Vi ili netko drugi potrai pomo za tu pojedinost pojavit e se i taj opis. Ovdje je kratka poruka koja se moe upisati uz termometar Umnoak.(Sl. 4-2.)

24

Virtualna instrumentacija

Pisanje tih opisa predstavlja veliku olakicu korisniku programa. Dokumentacija je prokletstvo i spas mnogih programa i neto vremena potroenog na pisanju tih stvari u ranoj fazi stvaranja VI moe utediti mnogo vremena u kasnijoj fazi. Konano tu je i prostor za cjelokupni opis VI. U tom se prostoru moe upisati cjelokupni opis VI i nain njegovog funkcioniranja. Ponovno je vrlo korisno kao nedjeljiva dokumentacija VI to

Slika 4-2.

Slika 4-3.

Slika 4-3.

Damir Mileta rujna 2005.

25

5. Pomini spremnici i FOR petlja


5.1. Pomini spremnici (shift register)
esto se pri mjerenju neke veliine eli obraivati podaci koji su prikupljeni u nekoliko zadnjih iteracija. Npr. eli se izraunati srednja vrijednost posljednjih etiriju vrijednosti generiranih generatorom sluajnih brojeva. Za takav izraun je neophodan pomini spremnik. On uzima podatak pri jednoj iretaciji i daje ga na izlazu pri slijedeoj iretaciji. Zbog ega se takav postupak zove pomini spremnik. Zbog toga to njegova duljina moe biti po volji velika a vrijednosti se pomiu za jedan element u nekom trenutku. Podtoji dakle jedan ulaz i mnotvo izlaza. Pretpostavimo da postoji pomini registar s etiri elementa koji sadri vrijednosti 66, 87, 54, 39. Nova vrijednost od 82 ulazi u spremnik i sve se pomie za jedan korak. U pominom j spremniku sad 82, 66, 87, 54. U slijedeoj iteraciji ulazi i u spremniku je sad 33, 82, 66, 87 itd. Pomini se spremnik moe stvoriti tako da se kljocom na desnu tipku mia na okvir WHILE petlje otvori padajui izbornik i odabere Add shift register. Pojavit e se dvije nove ikone na desnoj (ulaz) i lijevoj (izlaz) strani petlje. Otiite na izlaz (lijevo) i otvorite padajui izbornik kljocom na desnu tipku mia i odabere add element. Ponovite isto jo jednom i imat ete tri elementa kojima e se vrijednosti pomicati a nova (etvrta) vrijednost e dolaziti uvijek na vrh spremnika. Rearanirajte dosadanji VI tako da pokazuje srednju vrijednost posljednjih etiriju sluajno generiranih vrijednosti. Izgled blok dijagrama bi trebao biti kao na slici 5-1.

Slika 5-1.

Pokrenite VI i trebali bi dobiti oekivane vrijednosti. Ovakav nain izraunavanja neke vrijednosti je pregledan samo ukoliko se radi o manjem broju varijabli i manjem broju operatora jer s sluaju veeg broja istih blok dijagram postaje nepregledan. U izborniku strukture pored petlji i ostaloga postoji pojedinost zvana formula vor (formula node). Taj je vor stvoren da bi olakao mnoge stvari. Uklonite operatore mnoenja i dijeljenja za izraunavanje srednje vrijednosti i unesite formula vor u ispranjeni prostor.

26

Virtualna instrumentacija

Na okviru formula vora treba stvoriti tunele za ulaze i izlaze koji moraju imati nazive poput varijabli u algebarskom izrazu to u stvari i jesu. Formulu, zatim, treba utipkati u unutar okvira formula vora. Ukoliko se ulazne varijable nazovu x0, x1, x2i x3 a izlaz x kreiramo ih otvarajui padajui izbornik na okviru formula vora i birajui Add Input i Add Output Slika 5-2. respektivno. U okvir upiimo formulu za srednju vrijednost etiriju posljednjih generiranih sluajnih brojeva u obliku x=(x0+x1+x2+x3)/4; (nemojte zaboraviti na kraju retka toku-zatez (;), vaan je zbog sintakse). Pokrenite VI sad i sve bi se trebalo odvijati kao i prije. Iako su u ovom primjeru oba primjera jednako dobra (ili loa) kao i drugi u sluaju sloenijih matematikih izraza formula vor bi imao prednost zbog vee preglednosti i jasnoe. FOR petlja Sada e se uvesti nova petlja dostupna u programu LabVIEW i time uvesti koncept polja (array). Problem se sastoji u prezentiranju srednje vrijednosti i standardne devijacije odreenog broja prikupljenih podataka (vrijednosti) pomou VI. Isto se moe ostvariti kao sto je objanjeno u primjeru prije eksplicitno ali je to najee dosadno i zamorno pa u LabVIEWu postoji za takav sluaj bolji nain rjeavanja problema. Potrebno je najprije grupirati podatke u polje te ih nakon toga analizirati. Nastavit emo s blok dijagramom koji sadri pomini registar i da bi sve bilo jednostavnije obriite pomini registar s ruba WHILE petlje i kod za izraun srednje vrijednosti u tom primjeru. FOR petlja je tako konstruirana tako da se pokazuje vrlo zgodna za koritenje jer automatski sprema neke izlazne podatke u polje. Da bi se uvjerili u to probajte slijedee. Otvorite Functions >> All Functions >> Structures>>For Loop i povucite je preko itavog source koda VI ostavljajui brojilo petlje i sklopku za prekid programa izvan.

Damir Mileta rujna 2005.

27

Kao to se vidi FOR petlja ima dva broja koja su joj pridruena: Broj za zavravanje N
- u gornjem lijevom kutu - koji predstavlja broj koliko e se puta odviti FOR petlja prije zavretka

Broj iteracija
- u donjem lijevom kutu

Dovedite mi do ulaza N kljocnite desnom tipkom mia nakon to se je pojavila pulica i dodajte kontrolu (izvan petlje). U ovom je trenutku zgodno objasniti kako se najlake moe pronai stvorena kontrola na prednjoj ploi. kljocnite desnim miem na stvorenu kontrolu i odaberite Find Control. Otvorit e se prednja ploa s oznaenim poloajem numerike kontrole za odabir broja izvrenja FOR petlje. Da bi se mogle smjestiti ikone VI za izraun srednje vrijednosti i standardne devijacije izvan FOR petlje a unutar WHILE petlje potrebno je malo rairiti WHILE petlju. Sad naite Functions>>All Functions>>Analysis>>Probability and

Slika 5-3.

Statistics>>Standard Deviation. Taj VI uzima za ulaz polje podataka i daje srednju vrijednost i standardnu devijacija tog polja na izlazu. Sigurno e Vam trebati pomo s tim modulom stoga upotrijebite Ctrl-H. Oiite ulaz s izlazom I16 pretvornika u FOR petlji. Dok to radite uoit ete dvije stvari: 1. pojavio se crni kvadrati na granici petlje indicirajui da se neto dogaa 2. ica unutar petlje postaje tanka a izvan petlje debela Razlozi su u tome to crna toka skuplja pojedinane izlaze svake iteracije petlje u polje ija je veliina broju izvrenja petlje - Termination count. Najvanije je postaviti broj Termination count >= i tad pokrenuti VI. Pokuajte eksperimentirati s brojevima >0.

28

Virtualna instrumentacija

Zbog ega N ne moe biti 0 ? Pa, kakvo bi to bilo polje s 0 elemenata i kako b se nala srednja vrijednost i standardna devijacija. Ta situacija sigurno vodi k greci. Tu situaciju moemo izbjei na dva naina: Ograniiti opseg podataka tako da uvijek N>0 Instalirati detektor greke Prvu opciju ve moete sami izvesti a o drugoj e se jo govoriti.

Slika 5-4.

Damir Mileta rujna 2005.

29

6. Postupanje s grekom i CASE petlja


6.1. Rukovanje s grekom
Prije no to se pokae kako se spaja indikator greke u sustav vano je shvatiti da on treba neto uiniti s grekom da se ona ne ponovi. U ovom e se sluaju pronai greka da je dimenzija polja N<1 jer ukoliko ne se povea dimenzija polja ili ukoliko se ne prekine izvravanje programa greka e se ponavljati ponovno i ponovno. Zbog toga je uvijek vrlo vano razmisliti to uiniti s grekom kao i dati obavijest o nastaloj greci. Ukoliko elimo prekinuti program mora se osigurati da se izvjee o greci dogodi prije nego to se program zaustavi mora se osigurati tijek podataka kroz indikator greke.

ne

tj.

Upravo stoga na bloku standard deviation postoji izlaz greke (error output). To je cjelobrojni broj ija je Slika 6-1. vrijednost 0 dok se program odvija bez greke odnosno razliita od nule ukoliko se pojavi greka. Da bi se program zaustavio ako je na izlazu greke vrijednost razliita od nule potrebno je taj izlaz spojiti na terminal ta zaustavljane WHILE petlje preko logikog operatora Equal To 0 ? (iji je izlaz u stanju true dok mu je ulaz brojano jednak 0 a false u svim ostalim sluajevima). Ili drukije reeno: program se odvija tako dugo dok je sklopka za pokretanje programa u poloaju ukljueno (true) i izlaz greke je jednak nuli. Na taj e se nain sigurno zaustaviti VI ukoliko izlaz greke postane razliit od nule ali neete znati odnosno bolje reeno korisnik VI nee znati zbog ega se program zaustavio i o kojoj se vrsti greke radi. Ono to trebate je indikator koji e rei o kojoj se greci radi. Ukoliko se postavi obini numeriki indikator on e pokazati brojanu oznaku greke (tono 20003) ali taj broj nam ne govori to je greka. elim da se greka objasni u potpunosti. To je posao jednostavnog indikator greke (simple error handler) koji se moe nai pod Functions>>All Functions>>Time & Dialog (u donjem lijevom kutu). Nakon to ste ga smjestili na blok dijagram isti bi trebao izgledati kao na slici. Ta je funkcija dosta sloena to se moe vidjeti kad se ukljui jednostavna pomo (Ctrl-H). Sreom jedina dva prikljuka koja nam u ovom trenutku trebaju su ulaz kod

Slika 6-2.

30

Damir Mileta rujna 2005.

Virtualna instrumentacija

greke (error code input) i kod izlaz code out). Jednostavni indikator greke treba tako postaviti u blok shemu da kog greke proe njime prije nego to je VI zaustavljen. Da bi se osigurao pravilan tijek podataka potrebno je postaviti mi na icu koja izlazi iz izlaza greke bloka standard deviation i nakon to se pojavi alat za pozicijoniranje otvorite kljocom na desnu tipku mia padajui izbornik i odaberite Insert te umetnite simple error handler. Sad nakon to ste pokrenuli VI pokuajte upotrijebiti broj 0 kao broj elemenata iju srednju vrijednost elite odrediti i pogledajte to se je dogodilo. Pojavit e se lijep prozor greke koji e vam priopiti Error -20003 has occured at an unknown location i Probable cause: The number of samples for analysis is less than one. Zavrni akt ureivanja VI je dodavanje tekstualne poruke koja govori gdje je nastala greka. U nekom VI mogu postojati mnogi izvori gdje neka greaka moe nastati i ono to elite znati je to o kojoj se greci radi i na kojem je mjestu nastala. Stvar se moe urediti tako da se doda string konstanta na ulazu izvor greke (error source) i upie odgovarajui tekst o tome na kojem je mjestu u VI nastupila pogreka te e se taj tekst pojaviti u prozoru greke umjesto sentence . Uoite da je boja ice kojom je string konstanta spojena na simple error handler potpuno nova. Do sad se takova boja nije pojavljivala za ice. 6.1.1. Stvaranje odluka u LabVIEWu (CASE petlja) esto se u programima moraju obavljati razliite operacije ovisno o odluci. Takova odluka moe biti ostvarena voljom operatera (runo) koji koristi program ili automatski ukoliko se ostvare odreeni uvjeti u programu. Izbor vrste matematike operacije (zbroj, razlika, mnoidba ili djelidba npr.) nad dvije varijable ili odbacivanje izvrenja operacije drugog korijena ukoliko je broj pad korijenom negativan je primjer takvog odluivanja. U drugom bi sluaju na taj nain mogli izbjei greku koja bi se javila ukoliko bi broj bio negativan. Za rjeavanje takovih sluajeva u LabVIEWu postoji CASE petlja. Ta se petlja sastoji od odreenog broja preklopnih okvira koji svaki na odreeni nain korespondiraju s ulaznim varijablama. Najjednostavnija je CASE petlja true/false gdje se odluka moe ostvariti booleovim varijablama. Kompleksnije CASE petlje zahtijevaju vie stanja i upotrebu izbornika dogaaja. Svaki pojedini okvir unutar CASE petlja mora imati isti broj ulaza i izlaza. Izlazi moraju biti povezani sa svakim pojedinim okvirom CASE petlje dok ulazi mogu biti povezani sa svakim okvirom iako neki ulazi pojedinog okvira mogu biti ignorirani. Moe se konstruirati jednostavna CASE petlja ukoliko se ele nai korijeni kvadratne jednadbe s koeficijentima a, b i c. Osim toga treba se pojaviti obavijest u sluaju da su korijeni imaginarni. Takav se VI moe realizirati na vie naina. Na ovim je slikama prikazan moj prijedlog takvog VIa. Vi ga trebate sami napraviti i eksperimentirati njime za razliite vrijednosti koeficijenta a, b i c.

Damir Mileta rujna 2005.

31

Opaska:

Case petlja se

Slika 6-3.

nalazi

All

Functions>>Structures. Opcija True/False se mijenja strjelicama uz okvir. Brojani se indikatiri i buleov indikator realiziraju tako da se iz All Functions>>Numeric i All Functions>>Boolean odaberu odgovarajue konstante i nakon toga promijene u indikatore kljocom desnim miem na ikonu konstante i izborom Change To Indicator. Osim toga na prednjoj ploi treba Booleov indikator promijeniti da ima izglad led diode koja svijetli zeleno ako su korijeni realni a promijeni biju u crveno ukoliko su korijeni imaginarni. Neka u sluaju imaginarnih korijena kvadratne jednadbe oba indikatora pokazuju 0. tome slui drugi okvir prikazan na slici. Vidi se da svi postojei izlaz s prethodnog okvira moraju biti spojeni na konstantu 0 dok ulazi mogu biti zanemareni.
Slika 6-4.

Za vjebu moete probati slijedei jednostavno primjer koji rauna kvadratni korijen broja a u sluaju broj negativog pojavit e se kod greke

Prednja ploa
Otvorite novi VI i izradite slijedeu prednju plou koristei slijedei postupak. Napravite brojanu kontrolu i nazovite je Ulaz kvadratnog korijena i napravite brojani indikator za Kvadratni korijen. Stavite Error In 3D.ctl Controls All ControlsArrays Clusters. iz &
Slika 6-5.

32

Damir Mileta rujna 2005.

Virtualna instrumentacija

Blok dijagram
Izradite slijedei blok dijagram.

Slika 6-5.

Stavite Case strukturu iz palete All FunctionsExecution Control. Stavite Greater or Equal to 0? from the FunctionsArithmetic and ComparisonComparison i oiite je s uvjetnim prikljukom CASE strukture. Stavite u True Case: funkciju kvadratnog korijena ComparisonNumeric. iz palete FunctionsArithmetic and

Stavite u False Case:

Slika 6-5.

stavite brojanu konstantu i upiite -9999.90. Stavite Bundle By Name iz Functions All Functions Arrays & Clusters. Oiite s Error in do sredinjeg prikljuka Bundle by Name, upiite constants. Oiite s Error Out indikatora do izlaza Bundle by NameSpremite VI kao Square Root.vi. Otvorite prednju plou i pokrenite VI. Spremite i zatvorite VI.

Damir Mileta rujna 2005.

33

6.2.
Cilj

CASE petlja s viestrukim izborom


Konstruirati VI koji izvrava osnovne raunske operacija (zbroj, razlika, mnoidba i djelidba) s dva broja. Osim kontrola za promjenu vrijednosti brojeva treba napraviti i izbornik vrste operacije.

Prednja ploa Zgodno bi bilo kreirati prednju plou VI tako da njezin izgled odgovara uobiajenom izgledu raunskih operacija tipa: X [ operacije (+ ; - ; * ; / ) ] Y = Rezultat Za realizaciju takove prednje ploe potrebne su dvije brojane kontrole iz Controls>>Num Ctrls>>Num Ctrl, indikator iz Controls>>Num Inds>>Num Ind i kontrola za odabir vrste operacije koja moe biti prikazana nazivom ili simbolom operacije. U svakom sluaju je potreban prstenasti tekstualni izbornik (Text Ring) iz Controls>>Text Ctrls. Nakon primijenjene kozmetike prednja ploa moe poprimiti izgled kao na slici: Da bi se mogle birati sve etiri osnovne matematike operacije potrebno je te etiri opcije upisati u Text Ring.

Slika 6-6.

kljocnite desnom tipkom mia na Text Ring izaberite Edit Item (slika). Nakon toga upiite pod Labels to elite da vam se pojavi na prednjoj ploi unutar Text Ringa: Naziv operacije (npr. zbrajanje) ili njenu oznaku (npr. +)

Slika 6-7.

34

Damir Mileta rujna 2005.

Virtualna instrumentacija

Slika 6-8.

U ovom je primjeru odabrana druga opcija. Takoer je zgodno odabrati nain prikazivanja upisanih i izraunatih vrijednosti pomou Format & Precision (odabire se iz padajueg izbornika nakon kljoca desnom tipkom mia na svaku pojedinanu brojanu kontrolu i indikator). Postavljene su vrijednosti prikazane na slici (Automatic Formatting, 6 Significant Digits i Hide trailing zeroes) to znai da e prikaz broja biti ili decimalan ili znanstveni ovisno o pogodnosti prikaza da e se prikazati uvijek barem 6 znaajnih znamenaka i da se preostale nule na kraju broja nee prikazati. Ukoliko elimo drugaiji nain prikaza brojeva tako da se uvijek prikazuju decimalni brojevi s preciznou od 6 znamenaka onda treba odabrati Floating point i Digits of precision.

Slika 6-9.

Damir Mileta rujna 2005.

35

Uz takav odabir Format & Precision i rearanirane dimenzije brojanih komand i indikatora prednja ploa poprima slijedei izgled:

Slika 6-10.

Blok dijagram Preite sad na blok dijagram da bi kreirali kod za provedbu operacija za traeni VI. Ono to trenutno postoji na blok dijagramu su ikone dviju ulaznih kontrola X i Y, ikona indikatora Rezultat te ikona Text Ringa. Da bi mogli birati razliite osnovna matematike operacija kao to je uneseno pod Edit Items u Text Ringu potrebno je na blok dijagram donijeti CASE petlju koja inicijalno ima samo dva sluaja (0, true i 1, false). Budui da su u Ring Properties unesene matematike operacije slijedeom redoslijedom + ; - ; * ; / uz koje su vrijednosti 03 potrebno je u istobrojni sluaj postaviti pripadajuu operaciju. Dovedite operacije zbrajanja (Add) i oduzimanja () i smjestite ih u CASE petlju 0 i 1 respektivno. Poveite najprije ulazne kontrole s ulazima matematikih operacija a indikator s njihovim izlazom pazei da povezivanje tee kroz nastale tunele. Osim toga poveite Text Ring s okvirom CASE petlje tako da se dobije kod na blok dijagramu prikazan na slikama:

Slika 6-11.

Slika 6-12.

Da bi se otvorila jo dva sluaja unutar CASE petlje za operacije mnoidbe i djelidbe potrebno je pri otvorenom sluaju 1 (operacija dijeljenja) kljocnuti desnom tipkom mia na ivicu CASE petlje i iz padajueg izbornika kao to je prikazano na slici odabrati Add Case After. Zatim unijeti operator mnoidbe te povezati ulaze i izlaze s odgovarajuim tunelima tako da se dobiju kodovi prikazani na slikama.

36

Damir Mileta rujna 2005.

Virtualna instrumentacija

S prem ite VI pod imen om Moj Kalk ulator,


Slika 6-13.

Vratite se na prednju plou pokrenite VI pomou gumba za neprekidno izvravanje i eksperimentirajte s brojanim kontrolama i izbornikom operacija u text ringu.

Damir Mileta rujna 2005.

37

7. Kreiranje podVIa
7.1. Razumijevanje hijerarhije
Osnovno za izradu LabVIEW aplikacija je razumijevanje i koritenje hijerarhijske prirode VIa. Nakon izrade VI, dizajner ga moe koristiti kao podVI u blok dijagramu VIa vie razine. Zbog toga je podVI analogan podrutini u C jeziku. Isto tako kao to nema ogranienja u broju podrutina koje se mogu koristiti u C programu tako isto nema ogranienja u broju podVIa koje se mogu koristitti u LabVIEW programu. Dizajner moe takoer pozivati podVI unutar drugog podVIa. Kada se tvori aplikacija, poinje se na najvioj razini i definiraju ulazi i izlazi za aplikaciju. Nakon toga, konstruiraju se podVIevi koji izvravaju neophodne operacije nad podatcima kako one teku blok dijagramom. Ako blok dijagram ima veliki broj ikona, potrebno ih je grupirati u VIe nie razine, da bi se odrala jednostavnost blok dijagrama. Ovaj modularni pristup ini aplikaciju jednostavnom za provjeru programa (debbug), razumjevanje i odrzavanje.

7.1.1. Tvorba podVIa


CILJ Kreirati ikonu i konektor za St_U_Rad VI koji pretvara kutne stupnjeve u kutne radijane te koristiti taj VI kao podVI. Da bi se koristila VI kao podVI, mora se kreirati ikona da bi prikazivala taj VI u blok dijagramu VI kao i konektorski okvir na koji se mogu povezati ulazi i izlazi. IKONA Kreirati ikonu koja predstavlja VI u blok dijagramu druge VI. Ikona moe biti slikovna predstava namjene VI ili pak moe biti tekstualni opis VI ili njegovih terminala.

Otvorite novi prazni VI i realizirajte blok dijagram prikazanu na slici kojim se pretvaraju kutovi u stupnjevima u kutove u radijanima po formuli (kodu).

Slika 7-1.

Da bi se podVI kreirao automatski odaberite kod pretvorbe (crtkani dio na slici) potraite Edit>>Create SubVI . Umjesto odabranog koda pretvorbe pojavit e se ikona

Slika 7-2.

Slika 7-3.

38

Damir Mileta rujna 2005.

Virtualna instrumentacija

kljocom desnom tipkom mia na povrini ikone u gornjem desnom pozvati Icon Editor uglu prednje ploe birajui Edit Icon. Preac je mogu tako da se dvostruko kljocne na povrinu ikone da bi se ona uredila.

Slika 7-4.

Alati za ureivanje ikona prikazani s lijeva na desno odozgo prema dolje:

Crta i brie piksel po piksel.

Slika 7-5.

Crta ravnu liniju. Pritisnuti <Shift> a zatim vucite ovaj alat da bi se nacrtala horizontalna, vertikalna i dijagonalna linija. Kopira boju prednjeg plana iz nekog elementa u ikonu. Puni oznaenu zonu bojom prednjeg plana. Crta pravokutne granice u boji prednjeg plana (pp). Dvaput kljocnuti na ovaj alat da se uokviri ikona u boji prednjeg plana (pp).

Damir Mileta rujna 2005.

39

Crta kvadratini okvir obrubljen bojom pp i ispunjen sa bojom zadnjeg plana (zp). Ako se dvaputa kljocne, uokvirava se ikona u pp boju i puni sa zp bojom. Odabire zonu oko ikone da bi se mogla kretati, klonirati (kopirati), ili drugo. Unosi tekst u dizajn ikone. Prikazuje trenutne boje pp i zp. kljocnuti na svaku da se dobije paleta boja iz koje se onda moe izabrati nova boja ako se eli promjeniti. OK Cancel Pohranjuje crte kao VI ikonu i vraa se na prednju plou. Vraa se na prednju plou bez pohranjivanja promjena

Gumbi desno od ekrana za editiranje vre slijedee funkcije;

Prije no to nacrtate vlastitu ikonu potrebno je pretpostavljenu ikonu izbrisati. Odabtati 256 Colors jer je jedino mogue u tom okviru kreirati novu ikonu. Alat za odabiranje uokviriti pretpostavljenu ikonu (probajte ne odabrati pri tom crni vanjski obrub ikone). Pritisnuti <Delete> na tipkovnici.

Nakon toga treba nacrtati termometar alatom olovke. Kreirati tekst sa alatom za pisanje. Da bi promijenili vrst slova dvaput kljocnite na alat za pisanje Eksperimentirati s editorom da bi se nauili alati. Vaa bi ikona trebala sada izgledati otprilike kao na slijedeoj slici:

Slika 7-6.

Zatvoriti editor ikone kljocnuvi na OK kada ste zavrili s crtanjem. Nova ikona e se pojaviti na polju ikone (pane) u gornjem desnom uglu prednje ploe.

40

Damir Mileta rujna 2005.

Virtualna instrumentacija

7.1.2. Konektor
Sada se moe kreirati konektor. Definirati konektorski terminal kljocnuvi na polje ikone (pane) na prednjoj ploi birajui Show Connector , kako to pokazuje slijedea slika. Budui da LabVIEW izabire oblik terminala baziran na broju kontrolnih elemenata i indikatora na prednjoj ploi ,u ovom sluaju postoji samo jedan terminal indikator pretvornika stupnjeva u radijane. Doznaite terminal za pretvornik kutnih stupnjeva u kutne radijane. kljocnite na ulazni terminal u konektoru. Kursor se automatski mjenja u alat za oienje a terminal pocrni. kljocnite na ulazni brojanu kontrolu Kut (stupnjevi). Pojavit e se oko te kontrole crtkana linija kako to pokazuje slijedea slika: Ponovite isto i za izlazni terminal

Slika 7-7.

Ako se kljocne na otvorenu povrinu prednjeg plana, crtkana linija isezava i odabrani terminal posivi pokazujui na taj nain da ste doznaili indikator terminalu. Ako je terminal bijel niste napravili spoj korektno. Ponovite prethodne korake ako je neophodno. Pohraniti VI birajui File>>Save. VI je sada kompletan i spreman za koritenje kao podVI u drugim VIa. Ikona predstavlja VI u blok dijagramu pozivajui VI. konektor (sa jednim terminalom) daje na izlazu . Opaska: Konektor specificira ulaze i izlaze u VI kada ga koristite kao podVI. Potrebno je imati na umu da kontrolni elementi prednjeg panela mogu biti koreni samo kao ulazi: indikatori prednjeg panela mogu biti samo kao izlazi.

Zatvoriti VI birajui File>>Close. 7.2. Koritenje

VI kao podVI
41

Damir Mileta rujna 2005.

Mogue je koristiti bilo koji VI koja ima ikonu i konektor kao podVI u drugoj VI. Izbor VIa koji e se koristiti kao podVI izvrite u blok dijagramu izabravi ih u All Functions>Select aVI. Izabravi ovu opciju pojavit e se file dijalog okvir iz kojeg moete izabrati bili koji VI u sustavu. Ako otvorite VI koji nema ikonu i konektor pojavljuje se bijeli prazan kvadrat u blok dijagramu pozivajueg VI. Nije mogue oiiti ovakav vor. PodVI je analogan podprogramu. PodVI vor (ikona/konektor) je analogan pozivu podprograma. PodVI vor ne predstavlja sam podVI, kao to nije ni call statement u podprogramu (instrukcija poziva) nije sam podprogram. Blok dijagram koji sadri nekoliko identinih podVI vorova poziva istu podVI nekoliko puta. CILJ Izgraditi VI koji e koristiti kao podVI. St_U_Rad VI koji je dizajniran daje kutne radijane kao varijablu x koja moe biti ulazna varijabla bilo koje trigonometrijske funkcije npr. sin (x). Blok dijagram U ovom emo sluaju nakon otvaranja novog VI s File>>New ili kljocanjem na New VI dijalog okviru odmah prijei na blok dijagram i u njega odmah smjestiti St_U_Rad kao podVI. Na ulaznom terminalu podVIa kreirati kontrolu ije ime odmah odgovara eljenome tj. Kut (stupnjevi). Iz All Functions >>Functions >> Numeric>> Trigonometric Slika 7-8. prenijeti funkciju sin (x). Kreirati numeriki indikator na izlazu funkcije sin (x) te oiiti blok dijagram da izgleda kao na slici: Svaki put kada se kreira novi kontrolni element ili indikator, LabVIEW automatski kreira odgovarajui terminal u blok dijagramu. Simboli terminala sugeriraju tip podatka kontrolnog ili indikacijskog elementa. Na primjer DBL terminal predstavlja dvostruku preciznost, TF je Booleov terminal, I16 terminal predstavlja regularni 16-bitni integer (cijeli broj); a ABC predstavlja string (niz karaktera). Opaska: O tipu moete konstante zakljuciti po njenoj boji. Plave brojane konstante su integer (cijeli brojevi) naranaste konstante su brojevi dvostruke preciznosti. LabVIEW automatski pretvara brojeve u odgovarajui format kada je to potrebno. Opaska: Podsjetite se mogunosti da kljocnete na funkciju i izaberete Create Constant da se automatski kreira i ozii odgovarajua konstanta s funkcijom. Ukoliko se pojavi izlomljena crta izmeu ikone i terminala to pokazuje da ste doznacili podVI konektorski terminal nekorektno sa indikatorom na prednjem panelu. Nakon modifikacije podVI, mozda ce biti potrebno izabrati Relink to podVI iz pop-up menija ikone. Ako je potrebno izaberite Edit>>Remove bad Wires.

Opaska:

Prednja ploa
42 Damir Mileta rujna 2005.

Virtualna instrumentacija

Izabrati Windows>>Show Front Panel dizajnirati je po vlastitom ukusu tako da opseg kutnih stupnjeva bude od 0 do 360 a za vrst prikaza u Format & Precisionodabrati Floating point i Digits of precision 6. Vratiti se na prednji panel i kljocnuti na pokrenite VI.

Damir Mileta rujna 2005.

43

Virtualna instrumentacija

8.

Polja , klasteri i grafovi

8.1.

Polja (Arrays)

Polje se sastoji od skupa elemenata podataka koji su istog tipa. Polje ima jednu ili vie dimenzija i do 231 - 1 elemenata po jednoj dimenziji (ukoliko naravno ima dovoljno memorije). Polja u LabVIEW mogu biti bilo kojeg tipa (osim tipa polje, chart ili graf). Pristupa se svakom elementu polja preko njegovog indeksa. Indeks je u opsegu 0 do n-1, gdje n je broj elemenata u polju. Slijedee jednodimenzionalno polje brojanih vrijednosti ilustrira ovu strukturu. Primijetimo da prvi element ima indeks 0, drugi element indeks 1, i tako dalje.

Slika 8-1.

8.2. Kontrolna

polja, konstante i indikatori

Kontrolna polja, konstante i indikatore se kreiraju na prednjoj ploi ili na blok dijagramu kombiniranjem koljke polja (array shell) s brojanom, Booleovim, stringom ili klasterom (cluster - grozd, sveanj). Ve smo rekli da element polja ne moe biti drugo polje , chart ili graf.

8.3.

Graf
XY grafovi, grafovi valnog oblika (waveform graphs) i grafove intenziteta (intensity graphs).

Grafiki indikator se sastoji od dvodimenzijskog prikaza jednog ili vie polja koji se zovu plots (zapisi). LabVIEW ima tri tipa grafova:

Razlika izmeu grafa i charta je u tome da graf iscrtava podatke kao blok dok chart iscrtava podatke toka po toka ili polje po polje.
8.3.1. Kreiranje polja sa autoindeksiranjem CILJ Kreirati polje koristei autoindeksiranje FOR petlje i iscrtati polje podataka u grafu valnog oblika (waveform graph).

Izgradite VI koji generira polje koristei Generate Waveform.vi (Program files \National instruments\LabVIEW\activity) i iscrtava polje u grafu valnog oblika. VI e se tako modificirati da iscrtava viestruke ispise .

44

Damir Mileta rujna 2005.

Virtualna instrumentacija

Prednja ploa

Otvorite novu prednju plou. Postaviti koljku Functions>>Array & Cluster>>Array na prednju plou.

polja

iz

Controls>>All

Slika 8-2.

Nasloviti koljku polja kao Polje valnog oblika. Postaviti digitalni indikator iz Controls >>Numeric unutar pokazivaa elementa koljke polja, kako to pokazuje slika . Ovaj indikator prikazuje sadraj polja. Kao to je ve reeno, graf indikator je dvodimenzijski prikaz jednog ili vie polja podataka koji se nazivaju zapisima (plots). LabVIEW ima tri tipa grafova: XY grafovi, grafovi valnog oblika (waveform graphs) i grafovi intenziteta (intensity graphs). Postaviti Graph Waveform iz Controls>>Graph na prednju plou. Naslovi Graf valnog oblika.
Slika 8-3.

Graf valnog oblika iscrtava polja s ravnomjerno rasporeenim tokama, kao prikupljeni valni oblici koji se mijenjaju u vremenu.

Ako elite moete poveati graf vuenjem ugla kursorom za promjenu veliine. Pretpostavljeno je grafovi automatski podeavaju vrijednosti ljestvice (Autoscale). To jest, oni automatski podeavaju X i Y granine vrijednosti ljestvica da bi prikazali cjelokupan skup ulaznih podataka. Stoga treba onemoguiti automatsko podeavanje Y ljestvice kljocom na graf i iskljuiti kvaicu uz Scale>>Autoscale Y. Granice Y osi se mogu promijeniti tako da se dvaput kljocne na granice ljestvica kad se pojavi alat za pisanje i unosu nove vrijednosti. Upisati minimum Y osi - 0.5 a maksimum 1.5.

Damir Mileta rujna 2005.

45

Virtualna instrumentacija

Blok dijagram

Izgraditi blok dijagram prikazan na prethodnoj slici.

1D polje

Slika 8-4.

VI koji simulira valni oblika (Generate Waveform) a nalazi se u Functions>> Tutorials davat e po jednu toku valnog oblika. VI zahtjeva skalarni indeksirani ulaz tako da je potrebno oiiti terminal broja iteracija u konturi sa ovim ulazom. kljocom na VI izborom Show>>Label prikazat e rije Generiraj valni oblik u naslovu. Primijete da ica od Generiraj valni oblik VI postaje deblja kako se mijenja u polje na ivici petlje. FOR petlja automatski akumulira polja na svojoj ivici. Ovo se naziva autoindeksiranje (auto-indexing). U ovom sluaju, numerika konstanta oiena na numeriki ulaz za broja petlje FOR petlje, kreira 100 elementno polje (indeksirano 0 - 99). Funkcija uvezivanja (Bundle function) (u Functions>>Cluster) povezuje komponente iscrtavanja (plot) u klaster (sveanj - grozd). Potrebno je promijeniti ikonu Bundle funkcije prije nego to ete je oiiti na pravilan nain. Postaviti alat za pozicioniranje na donji desni ugao ikone. Alat se mijenja u kursor za izmjenu veliine (resizing), pokazan na lijevoj strani. Kada se alat promjeni, kljocnuti i vuci sve dotle dok se ne pojavi i trei terminal. Sada moete nastaviti sa oiavanjem blok dijagrama kao to je pokazano na prvoj slici ovog dijela. Klaster moe sadravati elemente podataka razliitih tipova. Klaster u blok dijagramu kojeg mi gradimo u ovom primjeru, grupira povezane elemente podataka iz razliitih mjesta na dijagramu, reducirajui broj ica i njihovo umrvanje. Kada koristite klastere, podVIi zahtijevaju manje terminala za spajanje. Klaster je inae analogan struct u C jeziku. Klaster se moe zamisliti kao sveanj ica (slino telefonskom kablu). Svaka ica u kablu bi predstavljala razliit element klastera. Komponente ukljuuju inicijalnu vrijednost za X (0), delta (inkrementnu) vrijednost za X (1), kao i Y polje (podaci valnog oblika, koje osiguravaju brojane konstante na blok dijagramu). U LabVIEW treba koristiti Bundle funkciju da se stvori klaster.
Opaska: Provjeriti da se generiraju oni tipovi podataka koje e prihvatiti grafovi i chartovi. U procesu tvorbe ovog blok dijagrama, provjeriti tipove podataka kroz slijedee korake:

Otvoriti prozor pomoi birajui Help>>Show Help Pomjeriti alat za oienje preko terminala grafa.
46 Damir Mileta rujna 2005.

Virtualna instrumentacija

Provjeriti informaciju o tipu podatka koja se pojavljuje u prozoru pomoi. Kao primjer pogledati slijedeu sliku: Tri brojane konstante postavljaju slijedee vrijednosti: broj iteracija FOR petlje, poetnu X vrijednost i inkrement (delta) X vrijednost. Primijete da se moe kljocnuti na terminal brojaa FOR petlje , prikazan na lijevoj strani , i izabrati Create Constant da automatski dodamo i oiimo brojanu konstantu za taj terminal. Svaka iteracija FOR petlje generira jednu toku u valnom obliku koju VI pohranjuje u polje za valni oblik automatski kreirano na ivici petlje. Nakon sto petlja okona svoje izvrenje, Bundle funkcija uvezuje poetnu vrijednost X (XO), delta vrijednost za X i polje za crtanje grafa. Vratite se na prednju plou i pokrenite VI. VI iscrtava autoindeksirano polje valnog oblika na grafu. Poetna vrijednost X je 0 a delta X vrijednost je 1.

Slika 8-5.

Promijenite delta X vrijednost na 0.5 a poetnu vrijednost na 20. Ponovno pokrenite VI. Primijetite da graf sada prikazuje istih 100 toaka podataka sa poetnom vrijednou od 20 s delta X = 0.5 za svaku toku (pogledati X os). U testu sa vremenskom kontrolom, ovaj graf e korespondirati sa 50 sekundi podataka, poevi sa 20 sekundi. Eksperimentirajte sa nekoliko kombinacija za poetne i delta X vrijednosti. Moete gledati bilo koji element u polju unosei indeks tog elementa u indeksni pokaziva. Ako unesete broj vei nego to je veliina polja, pokaziva blijedi (dim) pokazujui na taj nain da niste definirali vrijednost za taj indeks. Ako elite da gledate vie od jednog podatka, moete poveati indikator polja. Postaviti alat za pozicioniranje na donji desni ugao polja. Alat se mijenja u kursor za promjenu veliine (resizing), pokazan na lijevoj strani. Kada se alat promjeni, vucite na desno ili dolje. Polje sada prikazuje nekoliko elemenata u rastuem redoslijedu indeksa, poevi s elementom koji korespondira odreenom indeksu kako to pokazuje slijedea slika:

Damir Mileta rujna 2005.

47

Virtualna instrumentacija

Slika 8-6.

U prethodnom blok dijagramu, specificirali ste poetnu vrijednost X i delta X valnog oblika. esto je pak, poetna vrijednost X nula a delta X vrijednost 1. U ovim situacijama moete oiiti polje valnog oblika direktno sa terminalom grafa valnog oblika, kako je to vidljivo na slijedeoj slici: Vratite se ponovno na blok dijagram. Obrisati Bundle funkciju i brojane konstante oiene sa njom. Da bi se obrisala funkcija i konstante, izabrati funkciju i konstante sa alatom za pozicioniranje a onda pritisnuti <Delete>. Izabrati Ctrl-B. Zavriti oienje blok dijagrama kako je to pokazano na prethodnoj slici. Pokrenutiiti VI. VI sad iscrtava valni oblik sa poetnom vrijednoscu X = 0 i delta X = 1.

48

Damir Mileta rujna 2005.

Virtualna instrumentacija

9. Viestruki grafovi
Viestruki grafovi valnog oblika moete kreirati gradei VI polje od tipa podataka koji se normalno alju u jednostruki graf.

2D polje

Slika 9-1.

Nastaviti graditi blok dijagram kako je pokazano na dijagramu. Funkcija sinusa nalazi se u (Functions >> All Functions >> Numeric >>Trigonometric). U ovom se primjeru koristi ova funkciju unutar FOR petlje da se stvori polje toaka koje predstavljaju jednu periodu sinusoide. Funkcija gradnje polja (Build array u All Functions>>Array) koristiti se da kreirate tonu strukturu podataka da bi iscrtali dva polja na grafu valnog oblika koji je u ovom sluaju dvodimenzijsko polje. Poveati funkciju za gradnju polja (Build array) tako da kreirate dva ulaza vuenjem ugla sa alatom za pozicioniranje. Pi - (konstanta (All Functions>>Numeric>>Additional Numeric Constant). Podsjetimo da moete nai funkcije mnoenja i dijeljenja (Multiply & Divide) u All Functions>>Numeric. Prebacite se na prednju plou. Pokrenite VI. Primijetite da se dva valna oblika iscrtavaju na istom grafu valnog oblika. Poetna vrijednost X ju na 0 a vrijednost za delta X na 1 za oba dva skupa podataka.
Opaska: Moete promijeniti izgled ispisa na grafu kljocom na legendu za odreeni ispis. Na primjer, moete promijeniti sa crtanog grafa na stupani graf, izabirui Common Plots>>Bar Graph.

Pohranite i zatvorite VI. Nazovite je Moj graf polja valnog oblika.vi. Pohranite je u direktorij (folder) mojrad.llb.

9.1.

Koritenje VI za graf i analize

CILJ Izgradite VI koja mjeri temperaturu svakih 0.25 sekundi tijekom 10 sekundi. Za vrijeme prikupljanja podataka VI prikazuje mjerenja u realnom vremenu na strip chartu. Nakon zavretka prikupljanja podataka

Damir Mileta rujna 2005.

49

Virtualna instrumentacija

VI iscrtava podatke na grafu i izraunava srednju vrijednost, maksimalnu i minimalnu temperaturu.

Slika 9-1.

PREDNJA PLOA

Otvori novi prednju plou i izgraditi suelje kakvo je prikazano na slici. Modificirajte vrst toaka chart i graf valnog oblika, kljocom na njihove legende. Chart valnog oblika temperature prikazuje temperaturu onako kako je prikupljana. Nakon prikupljanja VI iscrtava podatke u temp Grafu. Digitalni indikatori: Srednja vrijednost (Mean), Max i Min prikazuju srednju vrijednost, maksimalnu i minimalnu temperaturu.
BLOK DIJAGRAM

Izgraditi blok dijagram pokazan na prethodnoj slici, Koristei slijedee elemente: VI termometra (All Functions>>Select a VI) se nalazi u mapi activity. Ova funkcija nakon izvrenja daje jedno mjerenje temperature .

50

Damir Mileta rujna 2005.

Virtualna instrumentacija

40

A rra y M a x & M in M ax M in

S re d v r T e m p e ra t u ra W a it U n t il N e x t m s M u lt ip le d e lt a X 0 ,2 5 XO 0 G ra f t e m p e ra t u re

250

B u n d le

Slika 9-2.

ekati dok se ne izvrsi funkcija Wait until next ms multiple function (All Functions>>Time & Dialog). U ovom primjeru ta funkcija osigurava da se FOR petlja izvri svakih 0,25 sek (250 ms). kljocnite na Wait Until next ms Multiple function i izabrati Create Constant da se automatski kreira i oii brojana konstanta te u nju upiite 250 . Funkcija maksimuma i minimuma polja Array Max&Min (All Functions>>Array) daje maksimalnu i minimalnu temperaturu izmjerenu za vrijeme prikupljanja. Funkcija srednje vrijednosti Mean (Functions>>Analysis>>Probability and Statistics) daje srednju vrijednost izmjerenih vrijednosti temperature.
Bundle funkcija (Funkcija uvezivanja iz Functions>>Cluster) povezuje komponente ispisa u klaster (grozd, sveanj). Komponente ukljuuju poetnu vrijednost za X(0), delta vrijednost za X (0.25), kao i polje Y vrijednosti (temperaturni podaci). Koristiti alat za pozicioniranje da se promjeni veliina funkcije vukui jedan od uglova.

FOR petlja se izvrava 40 puta. Funkcija Wait Until Next ms Multiple uzrokuje da svaka iteracija se dogodi poslije 250 ms. VI pohranjuje mjerenju temperaturu u polje kreirano na ivici FOR petlje (autoindeksirano). Nakon to se kompletira izvrenje FOR petlje polje prenosi podatke razliitim vorovima. Polje Max & Min funkcije daje maksimalnu i minimalnu temperaturu. Srednja VI daje prosjek vrijednosti mjerene temperature. Kompletan VI e povezati polje podataka sa poetnom vrijednou X(0) i delta X vrijednou (0.25). VI zahtjeva delta X = 0.25 tako da bi iscrtavao vrijednost temperature svakih 0.25 sekundi na grafu valnog oblika. Vratite se na prednju plou i pokrenite VI. Pohranite VI u mojrad.llb kao Moja analiza temperature.vi.

Damir Mileta rujna 2005.

51

Virtualna instrumentacija

10. Stringovi, file I/O


10.1. Stringovi
String (niz znakova) je skup ASCII znakova. Stringovi se mogu koristiti vie naina a ne samo za jednostavne tekstualne poruke. Kod formiranja instrumentalnih VIa mogu se koristiti za prijenos brojanih podatke kao niz znakova a zatim konvertirati te nizove u brojeve. Pohranjivanje brojanih podataka na disk moe takoer ukljuivati stringove. Da bi se pohranili brojevi u ASCII file, moramo prvo konvertirati brojeve u stringove prije nego to zapiemo brojeve u file na disku.

Kreiranje kontrolnih i indikacijskih elemenata stringa


Elemente za kontrolne i prikazivanje stringa mogu se nai u Controls>>String&Table. Upisivanje ili promijeniti tekst unutar string kontrole moe se izvriti alatom za pisanje. Poveati string kontrolne elemente i indikatore vukui uglove alatom za pozicioniranje.
Slika 10-1.

10.1.1.

Stringovi i file I/O

Slika 10-2.

Ako elite smanjiti prostor koji zauzima kontrolni ili indikacijski element string na prednjoj ploi, izaberite Show>> Scrollbar. Ako je ova opcija zasjenjena tj. nedostupna morate poveati vertikalnu dimenziju prozora da je uinite raspoloivom.

52

Damir Mileta rujna 2005.

Virtualna instrumentacija

10.1.2.
Cilj

Koritenje string funkcija


LabVIEW ima mnogo funkcija za manipuliranje stringovima. Nai ete ove funkcije u Functions>>String. Izgradit e seVI koji konvertira broj u string i spaja jedan string sa drugim (concatenate), da bi se formirao jedinstveni izlazni string. VI e takoer odrediti duinu izlaznog stringa. Otvoriti novu prednju plou i izgraditi suelje pokazano na slici. Modificirajte kontrolne i indikatorske elemente kako je to prikazano na slici. Dva kontrolna elementa za string i digitalni kontrolni element mogu biti kombinirani u jedinstveni izlazni string i prikazani u indikatoru stringa. Digitalni indikator prikazuje duinu stringa.
Slika 10-3.

Prednja ploa

Izlaz kombiniranog stringa u ovome primjeru ima format slian kombiniranim stringovima koji se koriste kod GPIB (IEEEE 488) i serijskih (RS-232 ili RS-422) instrumenata. Blok Dijagram

Izgraditi blok dijagram pokazan na slici 10-4.

Slika 10-4.

Funkcija formatiraj u string (Functions>>String) spaja (concatenate) i formatira lanove stringa i stringove i jedinstveni izlazni string. Koristite kursor za promjenu velicine na ikoni da dodate tri ulaza za argumente. Funkcija duine stringa (Functions>>String) daje broj znakova u spojenom stringu. Pokrenite VI. Uoite da funkcija Format Into String povezuje dva string kontrolna elementa u jedinstveni izlazni string. Pohraniti VI kao moj_string.vi . Koristit ete ovaj VI u slijedeem primjeru.

Damir Mileta rujna 2005.

53

Virtualna instrumentacija

10.2.

File I/O

LabVIEW file I/O funkcije (Functions>>File I/O) su moan i fleksibilan skup alata za rad sa fileovima. Osim itanja i pisanja podataka LabVIEW file I/O funkcije miu i mijenjaju imena fileova i direktorija (foldera), kreiraju spreadsheet (tabelarne) tipove fileova itljivog ASCII teksta, i zapisuju podatke u binarnoj formi radi brzine i kompaktnosti. Moete pohraniti, pronai i uitati podatke iz fileova u ova tri razliita formata:
ASCII byte stream (ASCII niz byteova). Trebate pohraniti podatke u ASCII formatu kada im elite pristupiti iz drugog softwareskog paketa, kao npr. Word processora ili nekog spreadsheet programa. Da bi pohranili podatke na ovaj nain, morate pretvoriti sve podatke u ASCII stringove. Datalog fileovi. Ovi fileovi su u binarnom formatu kojima samo LabVIEW moe pristupiti. Datalog fileovi su slini database fileovima jer moete pohraniti nekoliko razliitih tipova podataka u jedan zapis u file-u. Binarni byte stream. Ovi file-ovi su najkompaktniji i najbra metoda pohranjivanja podataka. Morate pretvoriti podatke u binarni string format i morate znati tono koje tipove podataka koristite da pohranite i povratite podatke u i iz file-ova.

Ovo e poglavlje analizirati ASCII byte stream fileove jer je to najei file format za podatke.

10.2.1.

File I/O funkcije

Najvei broj file I/O operacija ukljuuje tri osnovna koraka:


otvaranje postojeeg filea ili kreiranje novog file-a; pisanje u ili itanje iz filea; zatvaranje filea.

Zbog toga LabVIEW sadri mnoge korisne VIe u Functions>>File I/O. Ovo Poglavlje opisuje devet visokorazinskih korisnikih alata (utilities). Ove korisnike funkcije su izgraene nad VIima srednjeg nivoa koje utjelovljuju provjeru greaka kao i funkcije za file I/O (ulazno-izlazne manipulacije). Moemo takoer postaviti razdjelnicu (delimiter) ili string razdjelnicu, kao sto su tabovi (razdjelnica fiksne duine najee 4 prazna polja), zarezi itd. u spreadsheet-u. Ovo tedi napor razdjeljivanja spreadsheeta ako smo koristili razdjelnicu razliitu od taba, da uspostavimo polja u spreadsheetu.
VI Upisi znakove u file (Write Characters to File), upisuje string znakova u novi byte stream file ili dodaje string ve postojeem file-u. VI otvara ili kreira file, upisuje podatke i zatim zatvara file. VI itaj znakove iz filea (Read Characters from File) ita specificirani broj znakova iz byte stream file-a poevi od specificiranog znaka (offset). Ovaj VI otvara file ispred i zatvara ga nakon toga.
54 Damir Mileta rujna 2005.

Virtualna instrumentacija

VI itaj linije iz file-a (Read Lines From File), ita specificirani broj linija iz byte stream file-a poevi od specificiranog offseta (pomaka) . Ovaj VI otvara file prije toga i zatvara ga nakon toga. VI Upisi u spreadsheet file (Write To Spreadsheet File), pretvara 1D (jednodimenzijska) ili 2D (dvodomenzijska) polja brojeva jednostruke preciznosti za string tekst i upisuje tekst u novi byte stream file ili prikljuuje string postojeem file-u. Moe se takoer, kao opciju transponirati podatke (transpose). Ova VI otvara ili kreira file prije toga i zatvara ga nakon operacije. Ovaj se VI moe koristiti da kreiramo tekst fileove koje mogu itati veina spreadsheet programa. VI itaj iz spreadsheet file-a (Read from Spreadsheet File), ita specificirani broj linija ili redova iz brojanog tekst file-a, poevi od specificiranog offset znaka, i pretvarajui podatke u 2D, polje brojeva jednostruke preciznosti. Moemo opciono transponirati polje. Moemo koristiti ovu VI da itamo spreadsheet file-ove u tekst formatu.

10.2.2.

Upisivanje u Spreadsheet file

Vrlo esta aplikacija za pohranjivanje podataka u file je formatiranje tekst file tako da ga moete otvoriti u spreadsheet-u. U veini spreadsheet-ova tabovi razdjeljuju kolone a EOL (End of line, kraj linije teksta) znakovi razdjeljuju redove, kako je to pokazano na narednoj slici:

Slika 10-5.

Otvarajui file koristei spreadsheet program daje slijedeu tablicu:


CILJ

Modificirat e se postojei VI tako da se moe koristiti file I/O funkciju za pohranjivanje podatka u novi file u ASCII formatu. Kasnije, moemo pristupiti ovom file-u iz spreadsheet aplikacije.

Damir Mileta rujna 2005.

55

Virtualna instrumentacija

Slika 10-6.

Prednja ploa

Otvorite My Graph Waveform Arrays.vi koji ste izgradili u ranije. Ako se sjeate tajj VI generira dva skupa podataka u poljima i iscrtava ih na grafu. Modificirat emo ovaj VI za upisivanje dva polja podataka u file gdje svaka kolona sadri po jedno polje podataka.
Blok Dijagram

Otvorite blok dijagram od My Graph Waveforms Arrays i modificirajte VI dodajui blok dijagramu funkcije koje se nalaze unutar ovalne krunice, kako je to prikazano na slici.

Slika 10-7.

VI upii u spreadsheet file (Write To Spreadsheet File u All Functions>>File I/O) pretvara dvodimenzijsko polje u spreadsheet string i upisuje ga u file. Ako niste specificirali ime staze (path) gdje e se upisati file, tada e se pojaviti dijaloki okvir i zatraiti da upiete ime filea. VI upii u spreadsheet file upisuje bilo 1D ili 2D polje u file. Budui je polje podataka u
56 Damir Mileta rujna 2005.

Virtualna instrumentacija

ovome primjeru 2D ne mora se oiavati u 1D ulaz. S ovim se VI moe koristiti spreadsheet razdjelnica (delimiter) ili string delimiter kao to su tabovi ili zarezi u dobivenim podatcima. Booleova kontrola (Functions>>Boolean) provjerava transponira li ili ne LabVIEW 2D polje prije nego to ga upie u file. Da bi se promjenila vrijednost na TRUE kljocnite na kontrolu alatom . U ovom se sluaju podatci trebaju biti transponirani jer su polja podataka specifinih redova (tj. svaki red dvodimenzijskog polja je polje podataka). Budui da svaka kolona spreadsheet filea sadri polje podataka 2D polje se mora najprije transponirati. Vratite se na prednja plou i pokrenite VI. Nakon to se polja podataka generiraju file dijalog okvir e zatraiti ime filea za novi file kojeg kreiramo. Unesite ime filea i kljocnite na OK.
Opaska: Ne pokuavajte unijeti podatke u VI knjiice kao to je mojrad.llb. Ukoliko ovo pokuate to moe rezultirati u prepisivanju preko vae knjiice i gubitku prethodnog rada.

Pohranite VI, nazovite je My Waveform Arrays to File i zatvorite VI.

Sada moete koristiti spreadsheet program ili editor teksta da otvorite i pogledate u file koji ste upravo kreirali. Trebate vidjeti dvije kolone od po 100 elemenata. U ovome primjeru podatci nisu bili pretvoreni ili upisani u file sve dok sva polja podataka nisu bila prikupljena. Ako prikupljamo velike spremnike podataka ili bi htjeli upisati vrijednosti podataka na disk u trenutku kada su generirani tada moramo koristiti razliite VI za File I/O.

10.2.3.
CILJ

Dodavanje podataka u file


Kreirati VI u koji e dodavati podatke temperature u file u ASCII formatu. Ova VI koristi For konturu da generira temperaturne vrijednosti i pohrani ih u file. Za vrijeme svake iteracije vrit e se pretvaranje podataka u string, dodati zarez (comma) kao rezdjelnik znakova (delimiter), i pridodati (append) string fileu.

Prednja ploa

Slika 10-8.

Damir Mileta rujna 2005.

57

Virtualna instrumentacija

Otvoriti novi Prednja ploa i postaviti objekte kako je to pokazano na prethodnoj slici. Pored digitalne brojane kontrolne na prednjoj ploi je i chart valnog oblika. Izaberite Show>>Digital Display. Kontrolni element # toaka specificira koliko vrijednosti temperaturnih treba prikupiti i upisati u file. Chart prikazuje krivulju temperature. Postaviti na ljestvici y osi charta opseg 70.0 do 90.0 na x osi opseg 0 do 20. kljocnuti (pop-up) na # toaka digitalnu kontrolu i izabrati Representation>>Long.
Blok Dijagram

Otvoriti blok dijagram

Slika 10-9.

Dodati For petlju i uveati je. Ova VI generira niz temperaturnih vrijednosti specificiranih sa # toaka kontrolnim elementom. Dodati pomini registar u konturu kljocom na ivicu konture. Ovaj pomini registar sadri ime staze (path name) do filea. Zavriti oienje objekata.
VI Isprazni konstantu staze (Empty path constant ,iz Functions>>File I/O >>File Constants) . Ova funkcija inicira pomini registar tako da prvi put kada pokuate upisati vrijednost u file, staza je prazna. File dijalog okvir e traiti unos imena filea.

VI Digital Thermometer (Functions>>Tutorial) daje simuliranu vrijednost mjerene temperature iz senzora temperature. Funkcija Formatiraj u string (Functions>>String) pretvara vrijednost temperature (broj) u string i dodaje mu zarez koji ga slijedi . String konstanta (Functions>>String). Ovaj format specificira da mi zelimo pretvoriti broj u format stringa sa frakcijom u string sa zarezom. VI Upisi znakove u file (Write Characters To File , u (All Functions>>File I/O) upisuje string znakova u file. Booleova konstanta (Functions>>Boolean) postavlja append to file? ulaz od Write Characters To File Vi -a na vrijednost TRUE tako da nove vrijednosti temperature su pridodate u izabrani file svaki put kada kontura se ponovno izvrsava (iterira). kljocnite sa Operativnim alatom na konstantu da bi postavili njenu vrijednost na TRUE.
58 Damir Mileta rujna 2005.

Virtualna instrumentacija

Vratite se na Prednja ploa i izvrsite VI sa # toaka postavljeno na 20. File dijalog okvir e zatraiti da unesete ime filea. Kada unesete ime file-a, VI poinje upisivanje vrijednosti temperaturnih u taj file kako se generise svaka tacka. Pohranite VI, imenujte je My Write Temperature to File.vi, i zatvorite VI. Koristite bilo koji software za procesiranje teksta kao naprimjer Write za Windows-e da otvorite taj file podataka i posmatrate njegov sadrzaj. Treba da ste dobili file koji sadrzi 20 vrijednosti podataka (sa preciznoscu od 3 mjesta nakon decimalne tacke) razdjeljenih medjusobno sa zarezima.

10.2.4.
Cilj

itanje podataka iz File-a


Kreirati VI koji ita file podataka koje smo upisali u prethodnom primjeru i prikazati te podatke na grafu valnog oblika. Moramo citati podatke u istom formatu u kojem smo ih pohranili. Zbog toga, posto smo prvobitno pohranili podatke u ASCII formatu koristei string tip podataka, moramo ih itati u obliku stringa podataka sa jednim od VIa za file I/O. Otvoriti novi VI i izgradi prednja plou pokazan na prethodnoj slicu. Prednja ploa sadri string indikator i graf valnog oblika. Indikator String Read from File prikazuje temperaturne podatke razdijeljene sa zarezima iz file-a kojeg smo upisali u posljednjem primjeru kojeg smo uradili. Graf prikazuje krivulju temperature.
Slika 10-10.

Prednja ploa

Slika 10-11.

Damir Mileta rujna 2005.

59

Virtualna instrumentacija

Blok Dijagram Izgradite blok dijagram kakav je prikazan na prethodnoj slici.

VI itaj znakove iz filea (Read Characters From File iz Functions>>File I/O) ita podatke iz file-a daje i informacije u string. Ako ime staze (path) nije specificirano file dijalog okvir e traiti unos imena filea. U ovome primjeru ne treba odreivti broj znakova koje treba proitati jer je broj znakova u fileu od postavljene vrijednosti (512). Mora se znati kako su podatci pohranjeni u file da bi ih iitali iz filea. Ako znate koliko je dugaak file moete koristiti VI itaj znakove if file-a (Read Characters From File) odreuje poznati broj znakova koje treba proitati. VI Izvuci brojeve (Extract Numbers iz Functions>>Tutorials) uzima ASCII string koji sadri brojeve odijeljene sa zarezima LF (line feed nova linija) ili drugim nebrojanim znakovima i pretvara ih u polje brojanih vrijednosti. Vratite se na Prednja ploa i pokrenite VI. Izaberite file podataka koji ste upravo upisali na disk kada vam to zatrai file dijalog okvir. Trebate vidjeti iste vrijednosti podataka prikazane u grafu kao to ste ih vidjeli u primjeru VI My Write temperature to File . Pohranite VI, nazovite je My Temperature from File.vi , i zatvorite VI.

10.2.5.
Cilj

Jo spreadsheet primjera
Kreirajti VI koji sprema brojano polje u file u obliku takvog formata kojem se moe pristupiti spreadsheet programom.

Otvorite novi VI i izradite slijedeu prednju plou VI..

Slika 10-12.

60

Damir Mileta rujna 2005.

Virtualna instrumentacija

Sine Pattern VI je smjeten u FunctionsAnalyzeSignal Processing Signal Generation daje brojano polje od 128 elementa koji ine sinusni uzorak. Konstanta 90.0, u drugom voru odreuje fazu sineusnog ili kosinusnog uzorka. Uniform White Noise VI je smjeten u FunctionsAnalyzeSignal Processing Signal Generation daje brojano polje od 128 elementa koji ine uzorak uma Build Array funkcija smjetena u FunctionsArray gradi 2D polje sastavljeno od polja sinusnog uzorka, polja uzorka uma i polja kosinusnog uzorka. Transpose 2D Array funkcija smjetena je u FunctionsArray rearanira elemente 2D polja tako da element [i,j] postaje element [j,i].

Slika 10-13.

.
Write To Spreadsheet File VI smjetena u FunctionsFile I/O formatira 2D polje i spreadsheet string i upisuje string u file. Number To Fractional String funkcija smjetena u FunctionsString String/Number Conversion pretvara polje brojanih vrijednosti u polje stringa koji pokazuje tablica.

Pokrenite VI. VI generira 2D polje od 128 redova i 3 stupca. Prvi stupac sadri podatke sinusnog valnog oblika, drugi stupac sadri podatke valnog oblika uma a trei stupac sadri podatke kosinusnog valnog oblika. VI crta svaki stupac u graf i prikazuje podatke u tablici. Nakon to VI prikae podatke pojavit e se dijalog okvir. Utipkajte wave.txt, i kljocnite Save ili OK gumb. Otvorite file pomou word procesora ili spreadsheet aplikacije (Notepad ili WordPad) i pogledajte njegov sadeaj .

Damir Mileta rujna 2005.

61

Virtualna instrumentacija

Podaci sinusnog valnog oblika pojavljuju se u prvom stupcu, podatci valnog oblika uma pojavljuju se u drugom stupacu a podaci kosinusnog valnog oblika pojavljuju se u treem stupcu. Izaite iz word procesora ili spreadsheet aplikacije i vratite se u LabVIEW. SpremiteVI as Spreadsheet Example.vi. i zatvoriteVI.

62

Damir Mileta rujna 2005.

Virtualna instrumentacija

11. Struktura sekvence i vor svojstava

(Property Node)
11.1. Koritenje strukture sekvence

Sl. 11 -1. Stacked Sequence structure.

Sl.11 - 2. Flat Sequence Structure

Struktura sekvence koja izgleda kao okvir filma ima jedan ili vie poddijagrama ili okvira (frames) i izvrava ih slijedno. U konvencionalnim programskim jezicima, programske naredbe se izvravaju u redoslijedu u kojem se pojavljuju. U data flow programiranju vor se izvrava kada su podatci raspoloivi na svim ulazima vora iako je zbog toga potrebno izvriti jedan vor prije drugoga. LabVIEW koristi sekvencijalnu strukturu kao metodu kontrole redoslijeda kojim se vorovi izvrava Strukturu sekvence moe se u blok dijagram postaviti kao Stacked Sequence structure ili Flat Sequence Structure (Functions>>All Functions >>Structures). Kod Stacked Sequence structure prikaza naslov okvira pri vrhu strukturu sekvence je slian naslovu izbora sluaja CASE strukture. Naslovi okvira imaju broj okvira u sredini i strjelice za poveavanje i smanjivanja na svakoj strani. kljocom na te strjelice mogu se pregledati svi raspoloivi okviri. Moe se kljocnuti i na strjelicu koja pokazuje dalje i izabrati okvir iz padajueg izbornika..Za razliku od naziva izbornika sluaja na mogu se upisivati vrijednosti u naslov okvira. LabVIEW sam postavlja brojeve u naslove okvira ukoliko se okviri dodaju, briu ili rearaniraju. Sekvence struktura izvrava okvir 0, okvir 1, okvir 2 sve do poslijednjeg. Izvravanje programa i davanje podataka nee zavriti dok se i zadnji okvir ne izvri.
Damir Mileta rujna 2005. 63

Virtualna instrumentacija

Izbornik brojeva okvira pri vrhu sevence strukture pokazuje broj trenutnog okvira i opseg okvira u sredini izmeu strjelice za poveavanje i smanjivanja na svakoj strani. Npr. broj 0 broj trenutnog okvir a [0..2] je opseg okvira. Sekvence strukturu treba koristiti da bi se kontrolirao redoslijed izvravanja blok dijagrama kad prirodni slijed ovisnosti podataka ne postoji. vor koji prima podatke od drugog vora ovisi o nekom prethodnom voru i mora se izvriti poslije nego to su se svi prethodni vorovi izvrili Unutar svakog okvira sekvence strukture kao u ostatku blok dijagrama ovisnost o podatcima odreuje redoslijed izvravanja vora Tuneli sekvence strukture mogu imati samo jedan izvor podataka za razliku od CASE strukture. Izlaz moe postojati iz bilo kojeg okvira ali podatci naputaju sevence strukture samo kad svi okviri zavre izvravanje tj. ne naputaju sevence strukture kad se pojedini okvir izvri. Kao i kod CASE strukture podatci na ulaznim tunelima su na raspolaganju svim okvirima.. To bi se proslijedili podatci iz jednog okvira u bilo koji slijedei okvir treba koristiti prikljuak lokalne sekvence (sequence local terminal). Pojavit e se mali kvadratini blok a strjelica koja pokazuje prema van unutar kvadrata e se automatski pojaviti kada oiite funkciju do elementa koji predstavlja izvor podataka. Prikljuci na svim slijedeim okvirima imaju strjelicu koja pokazuje prema unutra. Pokazujui da je taj prikljuak izvor podataka za taj okvir. Ne moe se koristiti prikljuak lokalne sekvence u okvirima prethode prvom okviru gdje je oiena lokalna sekvenca.
Cilj

Izgradit e se VI koj izraunava vrijeme potrebno da se generira sluajni broj koji se podudara sa zadanim brojem.

Prednja ploa

Otvoriti novu prednju ploa i izgraditi je kao pokazan na slijedeoj slici. Modificirate kontrolne elemente i indikatore kao to je to opisano u tekstu koji slijedi nakon slike. U kontrolnom elementu Number to Match se nalazi broj s kojim se treba izvriti uparivanje (match). Indikator trenutnog broja (Current Number) prikazuje trenutno generirani sluajni broj. Indikator sa oznakom # iritacija prikazuje broj iteracija prije uparivanja (match). Indikator Time to Match pokazuje koliko je sekundi trebalo da se pronae uparujui broj.

Slika 11-3.

11.1.1.

Modifikacija formata brojane vrijednosti

Prema postavci LabVIEW prikazuje vrijednosti u brojanim kontrolnim elementima u decimalnoj notaciji s dva decimalna mjesta (npr. 3.14). Moe se koristiti Format & Precision opcija u padajuem izborniku indikatora ili kontrolnog elementa za promjenu preciznosti prikaza ili za prikaz vrijednosti u znanstvenoj, inenjerskoj ili automatskoj notaciji. Moe se takoer
64 Damir Mileta rujna 2005.

Virtualna instrumentacija

koristiti Format & Precision opciju za definiranje formata vremena i nadnevka za brojane elemente (Absolute time i Relative time). 1. Promijeniti preciznost na indikatoru Time to Match. a) kljocnuti na Time to Match digitalni indikator i izabrati Format & Precision
Mora se biti u prednjoj ploi da bi mogli pristupiti meniju.

b) Unijeti vrijednost 3 za Digits of Precision i kljocnuti na OK.

Slika 11-4.

2. Promjeniti prikazivanje digitalnog kontrolnog elementa i dva digitalna indikatora na long integer. a) kljocnite na digitalni kontrolni element Number to match i izaberite Representation>>Long. Ponoviti prethodne korake za Current Number kao i za # of iterations digitalne indikatore.
Postavljanje opsega podataka (Data range)

Opcijom Data Range moe se sprijeiti korisnika vaeg programa da postavi vrijednost kontrolnog elementa ili indikatora izvan zadanog opsega ili inkrementa promjene vrijednosti. Na raspolaganju su opcije: da ignorirate vrijednost izvan opsega prisiliti je da ostane unutar doputenog opsega
Damir Mileta rujna 2005. 65

Virtualna instrumentacija

ili da zaustavi izvrenje VI. Simbol greke opsega pojavit e se umjesto gumba za izvrenje na alatnom traku kad greka opsega zaustavi izvrenje. Takodjer e tamni okvir oznaiti kontrolni element koji je izvan opsega. 1. Postaviti opseg podataka izmeu 0 i 100 sa inkrementom 1. a) kljocnuti na Time to Match indikator i izabrati Data Range.
b) Unjeti tekst u dijalog prozor, kako je pokazano na narednoj ilustraciji i kljocnuti na OK.

Slika 11-5.

66

Damir Mileta rujna 2005.

Virtualna instrumentacija

Blok dijagram

1. Otvoriti blok dijagram

Slika 11-6.

LabVIEW postavlja blok dijagram kojeg e prvog izvriti unutar granica okvira 0 zatim postavlja dijagram kojeg izvrava drugog unutar granica okvira 1 itd. Slino kao u sluaju CASE strukture samo to je jedan okvir vidljiv u svakom trenutku vremena. 2. Poveati strukturu vuenjem jednog ugla sa kursorom za promjenu veliine. 3. Kreirati novi okvir (okvir) kljocom na granici okvira i izabirui Add Okvir After. Ponoviti ovaj korak da se kreira okvir 2. Kod Stacked Sequence structure treba na okviru 0 kreirati mali blok na ivici okvira sekvencijalne strukture unutar kojeg e se pojaviti strjelica kad se prikljui ura poetnog vremena (Initial Time). Taj blok je lokalna varijabla sekvence koja prenosi podatke izmeu okvira sekvencijalne strukture. Podaci oieni do okvira lokalne sekvence bit e na raspolaganju u narednim okvirima. Meutim ne moe se pristupiti podatcima u okvirima koji prethode okviru u kojem ste kreirali lokalnu sekvencu. 4. Kreirati lokalnu sekvencu kljocom na donjoj granici okvira 0 i birajui Add Sequence Local. Lokalna sekvenca se pojavljuje kao prazni kvadrat. Strjelica unutar kvadrata se automatski pojavljuje kada oiite funkciju do lokalne sekvence. 5. Zavriti blok dijagram koristei ove funkcije Funkcija brojaa otkucaja (Tick count (ms)) iz Functions>>Time & Dialog) daje broj milisekundi koje su prole nakon ukljuenja napajanja. Za ovaj primjer trebat e dvije funkcije Tick Count.

Damir Mileta rujna 2005.

67

Virtualna instrumentacija

Funkcija sluajnog broja (0 - 1) (Functions>>Numeric) daje sluajni broj izmeu 0 i 1. Funkcija mnoenja (Multiply iz Functions>>Numeric) mnoi sluajni broj sa 100 tj. funkcija daje sluajni broj izmeu 0.0 i 100.0. Funkcija brojane konstante (Functions>>Numeric) predstavlja maksimalni broj koji moe biti pomnoen. Funkcija Zaokrui na najbliu vrijednost (Round to nearest iz Functions>>Numeric) zaokruuje sluajni broj izmeu 0 i 100 na najblii cijeli broj. Funkcija Nije jednako? (Not equal?, iz Functions>>Comparison) usporeuje sluajni broj sa brojem upisanim na prednjoj ploi i daje TRUE ako brojevi nisu jednaki. U suprotnom sluaju ova funkcija daje FALSE. Funkcija inkrementa (Functions>>Numeric) poveava broja WHILE petlje za 1. Funkcija oduzimanja (Functions>>Numeric) daje vrijeme (u milisekundama) proteklo izmeu Okvira 2 i Okvira 0. Funkcija dijeljenja (Functions>>Numeric) dijeli broj milisekundi koji je protekao s 1000 da bi pretvorila broj u sekunde. Brojana konstanta (Functions>>Numeric) pretvara broj iz milisekundi u sekunde. U okviru 0 funkcija Broj otkucaja (Tick Count) daje trenutno vrijeme u milisekundama. Ova funkcija je oiena sa lokalnom sekvencom pa je vrijednost na raspolaganju u narednim okvirima. U okviru 1 VI izvrava WHILE petlju sve dok se upisani broj ne upari sa sluajnim brojem (0 1) koji ta funkcija daje. U okviru 2 funkcija Tick Count (ms) daje novo vrijeme u milisekundama. VI oduzima staro vrijeme (preneseno iz okvira 0 kroz lokalnu sekvencu) od novog vremena da izrauna proteklo vrijeme. 6. Vratiti se na prednja ploa i unijeti broj unutar kontrolnog elementa Number to Match i izvriti VI. 7. Pohraniti Vi i zatvoriti je. Nazvati je My time to match.vi.

68

Damir Mileta rujna 2005.

Virtualna instrumentacija

11.2.

vor svojstava (Property Nodes)

vor svojstava (Property Node) treba koristiti da se dobiju i postave razliita svojstva na

nekoj aplikaciji ili VI. vor svojstava se pojavljuje kad na ikonu nekog objekta na prednjoj ploi ili na blok dijagramu kljocnemo desnom tipkom miem i odaberemo Create >>Property Node kao to je to prikazano na slici u primjeru horizontalnog klizaa. Nakon toga e se prednja ploa automatski pojaviti vor svojstava na blok dijagramu. Na njemu je mogue odaberi svojstva nekog vora desnim kljocom na tekst nekog svojstava (obino Visible) i odabirom Properties. Na donjoj je slici prikazano otvaranje svojstava fonta oznake ljestvice u slijedu Properties>>Scale>>Marker>>Font.

.
Slika 11-6.

Moete uitati ili upisati mnoga svojstva koristei jedan vor. Pomou alata za pozicioniranje moe se poveati vor svojstava tako da se pojave novi prikljuci. Mala strjelica s desne strane vora svojstava znai da se to svojstvo uitavate. Mala strjelica s lijeve strane vora svojstava znai da se to svojstvo upisujete kljocnite desnom tipkom mia na svojstvo i odaberite Change to Read ili Change to Write iz izbornika preice da bi promijenili vrst operacije svojstva. vor se izvrava odozgo prema dolje. vor svojstava se nee izvriti ukoliko se dogodi greka prije no to se izvri. Stoga uvijek provjerite mogue greke. Ukoliko se greka pojavi unutar svojstava LabVIEW ignorira ostala svojstva i daje greku. Error out klaster sadri informaciju o tome koje je svojstvo izazvalo greku.

Damir Mileta rujna 2005.

69

Virtualna instrumentacija

11.2.1.

Implicitno povezani vor svojstava

Kad se tvori vor svojstava od objekata s prednje ploe desnim kljocomna objekt o odabirom CreateProperty Node iz izbornika preeca, LabVIEW stvara vor svojstava na blok dijagramu koji je implicitno vezan za objekt prednje ploe. Zbog toga to su ovi vorovi svojstava are implicitno vezani za objekt od kojeg je stvoren oni nemaju refnum ulaz pa netrebate oiiti vor svojstava na terminal objekta s prednje ploe ili kontrolni refnum.
Cilj

Sagraditi VI koji programski mijenja poloaj, onemoguuje mijenjanje svojstava prednje ploe i boji sadraj spremnika

Otvorite novi VI sagradite slijedeu prednju plou i blok dijagram Spremi VI kao Vjeba vor svojstava.vi. Vratite se na prednju plou i pokrenite VI..

Slika 11-7.

70

Damir Mileta rujna 2005.

Virtualna instrumentacija

Slika 11-8.

Dogaat e se nekoliko stvari. Prvo kako se generiraju i upisuju novi sluajni brojevi u spremnik (tank) boja ispune je crvena ako je generirana sluajna vrijednost vea od granine vrijednosti a boja postaje plava ako je sluajna vrijednost manja od granine. Dva klizaa mijenjaju poloaj spremnika na ploi. Pomakni te vrijednosti i pogledaj kako se spremnik pomie.
Disable sklopka upravlja time mogu li se promijeniti vrijednosti ili ne. Prebaci sklopku Disable na True i svi objekti na ploi osim te sklopke i Stop gumba posive tako da se ne mogu mijenjati njegove vrijednosti.

Zaustavite i zatvorite VI kad zavrite.

Damir Mileta rujna 2005.

71

Das könnte Ihnen auch gefallen