2011-2012_introducere in mediul de program are labview
TRANSCRIPT
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
1/97
Capitolul 1 MEDIUL DE PROGRAMARE LabVIEW
Introducere
1.1 Notiuni introductive .................................................................7
1.1.1 Lansarea mediului de programare graficaLabVIEW...71.1.2 Deschiderea unei noi aplicatii....81.1.3 Ferestrele principale ale unei aplicatii..9
1.1.4 Elemente de control si indicatoare...10
1.1.5 Paleta de controale...10
1.1.6 Dispunerea elementelor pe panou....111.1.7 Paleta de unelte....12
1.1.8 Elemente de control si indicatoare pentru valori scalare.14
1.1.9 Terminalele elementelor......151.1.10 Paleta de functii...16
1.1.11 Fereastra Help......17
1.1.12 Functii pentru valori numerice.181.1.13 Functii pentru valori booleene.19
1.1.14 Functii pentru valori alfanumerice (string)..19
1.1.15 Inserarea simbolurilor de functii in diagrama......20
1.1.16 Realizarea legaturilor in diagrama...21
1.1.17 Fluxul de date......221.1.18 Principalele moduri de rulare a unei aplicatii..........................................23
1.1.19 Salvarea unei aplicatii..24
1.2 Functii pentru valori scalare
1.2.1 Functii pentru valori numerice.271.2.2 Functii uzuale pentru valori alfanumerice....30
1.2.3 Functii aditionale pentru valori alfanumerice...311.2.4 Functii pentru comparatii..33
1.2.5 Functii pentru lucrul cu valori data-timp si de dialog...............................35
1.3 Meniuri proprii si designul elementelor1.3.1 Meniuri proprii in panou...39
1.3.2 Meniui proprii in diagrama.......................................................................40
1.3.3 Moduri de reprezentare a valorilor numerice............................................411.3.4 Meniuri proprii specifice elementelor numerice.......................................43
1.3.5 Meniuri proprii specifice elementelor cu scala.........................................45
1.3.6 Meniuri proprii specifice elementelor booleene......461.3.7 Meniuri proprii specifice elementelor alfanumerice.471.3.8 Modificarea fontului unor elemente......48
1.3.9 Ordonarea elementelor panoului si a diagramei49
1.3.10 Modificarea scalei sau cursorului unor componente.................................501.3.11 Variabile locale..51
1.3.12 Noduri de proprietati.....53
1
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
2/97
1.4 Structuri de programare1.4.1 Inserarea in diagrama a structurilor de programare
1.4.2 Structura secventiala (Sequence)
1.4.3 Structura cauzala (Case)
1.4.4 Structura repetitiva cu numar fix de iteratii (bucla For)1.4.5 Structura repetitiva cu conditie de terminare (bucla While)
1.4.6 Registri de transfer in structuri repetitive
1.5 Functii pentru valori vectoriale (Array)1.5.1 Definirea tipului de date al unui Array1.5.2 Definirea valorilor si a numarului de valori vizibile
1.5.3 Definirea numarului de dimensiuni
1.5.4 Construirea Array-urilor in diagrama
1.5.5 Functii informative1.5.6 Functii de ordonare
1.5.7 Functii de modificare1.5.8 Elementele Array si structurile repetitive1.5.9 Alte functii pentru elemente Array
1.6 Date de tip Cluster
1.6.1 Elemente de tip Cluster1.6.2 Meniul propriu al elementelor de tip Cluster1.6.3 Functii pentru elemente de tip Cluster (1)
1.6.4 Functii pentru elemente de tip Cluster (2)
1.7 Reprezentari grafice
1.7.1 Elemente pentru reprezentari grafice1.7.2 Elementul Waveform Chart1.7.3 Elementul Waveform Graph
1.7.4 Elementul XY Graph1.7.5 Optiuni specifice elementelor pentru reprezentari grafice
1.7.6 Optiuni specifice elementelor de tip Chart
1.7.7 Optiuni specifice elementelor de tip Graph si XY Graph1.7.8 Elemente si functii de tip Picture1.7.9 Utilizarea functiilor de tip Picture
1.8 Elemente ListBox, Table si Ring
1.8.1 Meniuri pentru elemente ListBox, Table si Ring1.8.2 Tipul de date
1.8.3 Definirea itemilor unui element Listbox1.8.4 Selectii multiple
2
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
3/97
1.1 Notiuni introductive
1.1.1 Lansarea mediului de programare graficaLabVIEWPentru a lansa mediul de programare grafica LabVIEW, efectuati urmatorii pasi:
LabVIEW poate fi de asemenea lansat si alegand din meniul Programs optiunea National
Instruments, apoi alegand din submeniul LabVIEW 6.1 optiunea LabVIEW.
3
apasati butonul Start,
aflat in coltul stanga-jos
al ecranului;
dupa deschiderea
meniului, prin
desfasurarea acestuia insus, deplasati cursorul
mouse-ului deasupra
optiunii Programs;
asteptati deschiderea
unui submeniu, prindesfasurare in dreapta si
in sus, deplasaticursorul mouse-ului
deasupra optiunii
National Instruments
LabVIEW 6i si apasati
butonul stang al mouse-
ului.
Figura 1
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
4/97
Figura 2
Dupa lansare, asteptati pana la aparitia ferestrei introductive.
Figura 3
1.1.2 Deschiderea unei noi aplicatiiAplicatiile (programele) realizate in LabVIEW poarta denumirea de Instrumente
Virtuale (in engleza, Virtual Instruments, prescurtat VI). Denumirea provine de la faptul ca,
in primele sale versiuni, LabVIEW a fost strict dedicat pentru realizarea unor programe de
monitorizare a proceselor. Programele respective inlocuiau o serie de aparate si instrumenteelectronice - de unde si motto-ul corporatiei National Instruments: The software is theinstrument primind astfel denumirea de Instrumente Virtuale
La aparitia ferestrei introductive LabVIEW, apasati butonul New VI pentru a deschide
o noua aplicatie (figura3). Dupa apasarea butonului New VI, se vor deschide cele doua
ferestre principale ale unei noi aplicatii LabVIEW.
4
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
5/97
Figura 4
1.1.3 Ferestrele principale ale unei aplicatiiO aplicatie (program) LabVIEW contine doua ferestre principale, fereatra panou si
fereastra diagrama.Panoul reprezinta interfata grafica cu utilizatorul, fereastra pe care utilizatorul o va vedea
atunci cand va accesa aplicatia realizata. Prin intermediulelementelorde pe panou, aplicatia primestedatele de intrare si afiseaza apoi datele de iesire ce au rezultat in urma rularii.
Figura5
Diagrama este fereastra in care programatorul descrie algoritmuldupa care aplicatia va efectua calculele si rationamentele necesare pentruprelucrarea informatiilor. In majoritatea cazurilor, dupa ce programatorul arealizat o aplicatie si a livrat-o unui utilizator, acesta din urma nu mai areacces la diagrama
5
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
6/97
Figura 6
1.1.4 Elemente de control si indicatoareElementele de control sunt acele componente ale panoului prin intermediul carora
utilizatorul poate transmite date de intrare catre program.
Elementele indicatoare sunt acele componente ale panoului prin intermediul caroraprogramul afiseaza datele de iesire calculate in urma rularii sale.
1.1.5 Paleta de controalePaleta de controale este o fereastra ce poate apare doar atunci cand se lucreaza in cadrul
panoului si contine sub-palete cu elemente de control si indicatoare de diverse tipuri.
Afisarea paletei de controale se poate efectua in doua moduri:
apasand butonul din dreapta al mouse-ului atunci cand cursorul acestuia este intr-ozona libera a panoului;
selectand, din meniul Windows, comanda Show Controls Palette
Figura 7
In primul caz, sub-paletele se deschid automat atunci cand cursorul mouse-ului trece pe
deasupra lor iar paleta ramane vizibila doar pana la selectarea unui element. In al doilea caz, o
sub-paleta se deschide (inlocuind paleta de controale) doar cand se face un click pe simbolul
sau. Paleta ramane vizibila si dupa selectarea unui element.
6
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
7/97
Figura 8
1.1.6 Dispunerea elementelor pe panou
1. Dispunerea unui element de control sau indicator pe panou incepe cu selectarea
elementului dorit din paleta de controale.
2. Dupa selectarea elementului, se deplaseaza cursorul mouse-ului pana in pozitia de pe panouin care se doreste dispunerea. Atat timp cat cursorul mouse-ului este deplasat pe panou,
elementul va fi reprezentat doar prin conturul sau si al etichetei.
Cand se ajunge in pozitia dorita, se face click cu unul dintre butoanele mouse-ului.
3. Se realizeaza astfel dispunerea elementului pe panou, cu o eticheta implicita care intra
automat in modul de editare. Se poate incepe imediat introducerea textului dorit in eticheta.
4. Daca introducerea textului dorit in eticheta nu s-a efectuat imediat dupa dispunerea
elementului pe panou si eticheta implicita a iesit din modul de editare, se poate reveni in acestmod prin selectarea uneltei de editare texte si apoi printr-un click pe eticheta respectiva.
Figura 9
EXERCITIU
Din sub-paleta Numeric a paletei de controale, dispuneti pe panou un element de tipul
Vertical Pointer Slide si un element de tipul Meter.
7
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
8/97
Figura 10
1.1.7 Paleta de uneltePaleta de unelte este o fereastra ce poate apare atat in cadrul panoului cat si al
diagramei.
Afisarea paletei de controale se poate efectua selectand, din meniul Windows, comanda ShowTools Palette.
Cele mai importante unelte din aceasta paleta sunt acelea pentru:
Figura 11
Afisarea "temporara" a paletei de unelte intr-o forma simplificata poate fi efectuatatinand apasata tasta Shift si apasand apoi butonul drept al mouse-ului.
Paleta va deveni vizibila doar pana in momentul selectarii uneia dintre uneltele sale.
8
Activarea optiunii Automatic Tool Selection (LED-ul verde al
paletei de unelte) conduce la selectarea automata a unei unelte, in
functie de contextul in care se afla aplicatia si de pozitia cursoruluimouse-ului in raport cu componentele din panou sau diagrama.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
9/97
EXERCITII
Cu unealta de selectare, deplasati cele doua elemente dispuse anterior pe panou (click pe element, apoi deplasati mouse-ul tinand butonul stang apasat)
Observati diferenta dintre a face click chiar pe element (acesta se misca impreuna cueticheta sa) si a face click pe eticheta (eticheta se deplaseaza in raport cu elementul)
Cu aceeasi unealta, modificati dimensiunile elementelor:
1. Pozitionati cursorul mouse-ului pe un colt al elementului, astfel incat in cele patrucolturi ale acestuia sa apara simboluri de forma unui echer dublu
2. Apasati butonul stang si deplasati mouse-ul tinand butonul apasat. Observati aparitia
unui indicator galben cu dimensiunile elementului.
Figura 12
Selectati ambele elemente trasand cu mouse-ul un dreptunghi imaginar care sa le
includa pe acestea (click intr-o zona libera a panoului, apoi deplasati mouse-ul tinandbutonul apasat: pe ecran va apare un dreptunghi cu linie intrerupta)
Selectati un element, apoi apasati tasta Delete: elementul va fi sters. Pentru a anula
comanda, apasati combinatia de taste Ctrl + Z (Undo)
Cu unealta de operare, modificati valorile celor doua elemente tragand cu mouse-ul
de cursorul potentiometrului sau de acul indicatorului.
Cu aceeasi unealta sau cu cea de editare a textelor, modificati valorile de la capetele
de scara ale elementelor.
Selectati unealta de deplasare a imaginii si exersati lucrul cu aceasta.
Activati optiunea Automatic Tool Selection a paletei de uneltesi observati modul in
care uneltele de selectare, de operare si de editare a textelor se activeaza atunci cand
mouse-ul este deasupra unui element, a cursorului sau acului acestuia sau deasuprascalei sau etichetei elementului.
Cu optiunea Automatic Tool Selection dezactivata, atat in panou cat si in diagrama,observati modul in care sunt selectate diverse unelte atunci cand se apasa tastele Spacesau Tab.
9
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
10/97
1.1.8 Elemente de control si indicatoare pentru valori scalare
Principalele trei tipuri de elemente de control si indicatoare pentru valori scalaresunt:
umerice
booleene(logice)
alfanumerice (texte, string, siruri de caractere)Pentru fiecare din cele trei tipuri principale, paleta de controale contine cate o
subpaleta specifica, cu diverse forme de elemente.
Figura13
10
EXERCITII
Din subpaleta pentru elemente booleene,
introduceti pe panou un element de tipul
Vertical Toggle Switch si un element detipul Round LED
Din subpaleta pentru elemente alfanumerice
(String & Path), introduceti pe panou unelement de tipul String Control si un
element de tipul String Indicator.
Deschideti o aplicatie noua selectandcomanda New VI din meniul File (sauapasand combinatia de taste Ctrl + N).
Dispuneti pe panoul acesteia diverse tipuri de
elemente de control si indicatoare pentruvalori numerice si exersati modificarea
valorilor acestora cu unealta de operare.
Inchideti noul program inchizand panoulacestuia (inchiderea diagramei nu are decat
efect de ascundere a acesteia) si raspunzand
No la intrebarea Save changes to "...." ?
Figura 14
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
11/97
1.1.9 Terminalele elementelor
Atunci cand un element de control sau indicator este dispus in panou, in diagramaeste inserat automat un simbol, numit terminal, ce va reprezenta elementul respectiv in
cadrul fluxului de date. Terminalele elementelor se diferentiaza prin culoare, in functie de tipulmarimii scalare:
portocaliu pentru valori numerice reale
verde pentru valori booleene
roz pentru valori alfanumerice (string)
De remarcat faptul ca:
terminalele elementelor de control au contur gros si o sageata neagra mica inpartea dreapta
terminalele elementelor indicatoare au contur subtire si o sageata neagra micain partea stanga
Figura 16
EXERCITII
Identificati in diagrama terminalele elementelor pe care le-ati dispus pe panou.
In diagrama, folosind unealta de selectare, deplasati terminalele elementelor ca in
figura de mai sus.
11
Figura 15
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
12/97
1.1.10 Paleta de functii
Paleta de functii este o fereastra ce poate apare doar atunci cand se lucreaza in cadrul
diagramei si contine sub-palete cu diverse categorii de functii, proceduri sau structuri
specifice de programare. Afisarea paletei de functii se poate efectua in doua moduri:
apasand butonul din dreapta al mouse-ului atunci cand cursorul acestuia este intr-ozona libera a diagramei;
selectand, din meniul Windows, comanda Show Functions Palette.
Figura 17 Figura 18
In primul caz, sub-paletele se deschid automat atunci cand cursorul mouse-ului trece pe
deasupra lor iar paleta ramane vizibila doar pana la selectarea unei functii
In al doilea caz, o sub-paleta se deschide (inlocuind paleta de functii) doar cand se face
un click pe simbolul sau. Paleta ramane vizibila si dupa selectarea unei functii.
EXERCITIU
In diagrama aplicatiei, afisati paleta de functii prin fiecare din cele doua moduri
indicate mai sus si navigati prin sub-paletele acesteia.
12
http://www.labsmn.pub.ro/Academic/labview/L1/3%20Ferestre%20principale.htm#diagramahttp://www.labsmn.pub.ro/Academic/labview/L1/3%20Ferestre%20principale.htm#diagrama -
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
13/97
1.1.11 Fereastra Help
Selectarea, in panou sau in diagrama, din meniul Help, a comenzii Show Context
Help, conduce la deschiderea unei ferestre in care sunt afisate automat informatii ajutatoare.Deschiderea sau inchiderea ferestrei Help pot fi comandate si prin apasarea combinatiei de
taste Ctrl + H
Atunci cand utilizatorul deschide paleta de functii si navigheaza prin subpaleteleacesteia, in fereastra Help apar informatii referitoare la functia corespunzatoare simbolului
deasupra caruia este pozitionat cursorul mouse-ului.
Figura 19 Figura 20
De asemenea, daca un simbol de functie a fost deja dispus in diagrama iar cursorul
mouse-ului este pozitionat deasupra sa, in fereastra Help apar informatii referitoare la functia
respectiva.
Figura 21
13
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
14/97
EXERCITIU
Exersati deschiderea si inchiderea ferestrei Help prin modurile descrise mai sus. Cufereastra Help deschisa, navigati prin paleta de functii si observati modul in care informatiile
ajutatoare se modifica atunci cand cursorul mouse-ului trece pe deasupra diverselor simboluri
de functii.
1.1.12 Functii pentru valori numerice
Functiile pentru valori numerice sunt grupate in subpaleta Numeric a paletei defunctii Se remarca o prima categorie, dedicata functiilor aritmetice simple: adunare ( Add),
scadere (Subtract), inmultire (Multiply), impartire (Divide), incrementare (Increment),
decrementare (Decrement), valoare absoluta (Absolute Value), rotunjire la cel mai apropiatintreg (Round To Nearest), rotunjire la intregul inferior (Round To -Infinity), rotunjire la
intregul superior (Round To +Infinity), radacina patrata (Square Root), schimbare de semn(Negate), produsul dintre o valoare x si o putere a lui 2 (Scale By Power Of 2), inversare
(Reciprocal).
In subpaleta Numeric se gaseste de asemenea elementul Numeric Constant
(constanta numerica). Atunci cand un astfel de element este dispus in diagrama, el capataautomat valoarea 0 si intra in modul de editare, asteptand ca utilizatorul sa introduca valoarea
numerica dorita. Daca, imediat dupa dispunerea in diagrama, in loc de a introduce o valoare in
element, utilizatorul efectueaza alta operatie, o alta valoare constanta poate fi specificata
utilizand unealta de operare sau pe cea de editare a textelor.
14
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
15/97
Figura 22
EXERCITIU
In subpaleta Numeric a paletei de functii, identificati functiile aritmetice simpleenumerate mai sus. Pe parcursul navigarii in paleta de functii, urmariti descrierea functiilor in
fereastra Help.
1.1.13 Functii pentru valori booleene
Figura23
EXERCITIU
1.1.14 Functii pentru valori alfanumerice (string)
15
Functiile pentru valori booleene sunt
grupate in subpaleta Boolean a paletei defunctii. Se remarca functiile logice simple SI
(And), SAU (Or), SAU EXCLUSIV
(Exclusive Or), NEGARE (Not), SI NEGAT(Not And), SAU NEGAT (Not Or), SAU
NEGAT EXCLUSIV (Not Exclusive Or) siIMPLICA (Implies). Subpaleta contine de
asemenea, in partea inferioara, cele doua
constante logice: ADEVARAT (True) siFALS (False).
In subpaleta Boolean a paletei de
functii, identificati functiile logice simple siconstantele logice enumerate mai sus. Pe
parcursul navigarii in paleta de functii,
urmariti descrierea functiilor in fereastra
Help. Functii pentru valori alfanumerice
(string) Functiile pentru valori alfanumericesunt grupate in subpaleta String a paletei de
functii. Printre cele mai simple se numaracele pentru transformarea caracterelor in
majuscule (To Upper Case) si pentru
transformarea caracterelor in minuscule (To
Lower Case). In partea sa inferioara,
subpaleta contine un element String
Constant pentru introducerea in diagramade valori alfanumerice constante.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
16/97
EXERCITIU
In subpaleta String a paletei de functii, identificati functiile si constanta alfanumerica
enumerate mai sus. Pe parcursul navigarii in paleta de functii, urmariti descrierea functiilor infereastra Help.
1.1.15 Inserarea simbolurilor de functii in diagrama
Daca, in timpul deplasarii, simbolul functiei este trecut suficient de aproape de unterminal sau de o zona a fluxului de date la care se poate efectua o legatura, acea legatura este
stabilita automat. Daca simbolul functiei este indepartat, in cursul deplasarii, de zona sau
terminalul respectiv, legatura stabilita automat dispare. Daca nu se doreste efectuarea automataa unei legaturi, se apasa tasta Space in timp ce butonul mouse-ului este apasat.
16
Figura 24
Dispunerea unei functii in diagrama incepe cu
selectarea simbolului corespunzator din paleta de functii.Dupa selectarea simbolului functiei, se deplaseaza cursorul
mouse-ului pana in pozitia din diagrama in care se doreste
dispunerea.Atat timp cat cursorul mouse-ului este deplasat, simbolul
functiei va fi reprezentat impreuna cu terminalele
corespunzatoare datelor proprii de intrare si de iesire
Figura 25
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
17/97
.
EXERCITIU
Din subpaleta Numeric a paletei de functii, introduceti in diagrama o functie Add si pozitionati-o ca in figura, intre terminalele celor doua elemente numerice.
Introduceti de asemenea in diagrama un element de tipul Numeric Constant si
stabiliti-i acestuia valoarea 2.
Din subpaleta Boolean, introduceti in diagrama o functie Not si pozitionati-o intreterminalele celor doua elemente booleene.
Din subpaleta String, introduceti in diagrama o functie To Upper Case si pozitionati-o
intre terminalele celor doua elemente alfanumerice.
Dupa pozitionarea simbolurilor de functii in diagrama, deschideti fereastra Help siafisati in aceasta informatiile referitoare la fiecare functie prin deplasarea mouse-ului
deasupra simbolului corespunzator.
1.1.16 Realizarea legaturilor in diagrama
Figura 26
Figura 27
Figura 28
17
Cand simbolul functiei ajunge in pozitia dorita, se face
click cu unul dintre butoanele mouse-ului. Daca in acel momentexista o legatura stabilita automat,legatura respectiva se
pastreaza.
1. Se deplaseaza cursorul mouse-ului (unealta de conectare)deasupra primei componente (aceasta va incepe sa clipeasca) si
se face click. Actiunea este echivalenta cu prinderea unui capat
al firului de componenta respectiva.Din acest moment, daca mouse-ul este deplasat, pe ecran va
apare imaginea unui fir cu un capat fixat de prima componenta
si cu un capat legat de cursorul mouse-ului.
Realizarea unei legaturi intre doua componente
ale diagramei se efectueaza cu ajutorul uneltei de
conectare. Ordinea in care se selecteaza cele douacomponente (sursa si destinatia) nu este importanta.
Legatura poate fi realizata in orice sens, deoarecemediul de programare va identifica automat sursa sidestinatia pentru a stabili sensul de circulatie al datelor.
2. Se deplaseaza cursorul mouse-ului deasupra celei de-a douacomponente (si aceasta va incepe sa clipeasca) si se face click,
fixand astfel al doilea capat al firului de aceasta componenta.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
18/97
Figura 29
Figura 30
Figura 31
Figura 32
EXERCITII
1.1.17 Fluxul de date
18
Obs. 1: Daca, la un moment dat, firul care urmeaza mouse-ul are
un sens (orar sau trigonometric) neconvenabil, sensul poate fischimbat prin apasarea tastei blanc (spatiu).
Obs. 2: Daca se doreste ca traseul unei legaturi sa fie format dinmai multe portiuni in unghi drept, un click intr-un punct din
diagrama va fi echivalent cu fixarea firului in acel punct.
Obs. 3: Daca o componenta a diagramei are rol de sursa pentruun traseu ramificat, se pot efectua legaturi care sa aiba drept
punct de pornire un segment al fluxului de date.
Obs. 4: Daca o legatura a fost efectuata corect, ea va fi afisata inculoarea corespunzatoare tipului de date ce vor circula prin zona
respectiva a fluxului de date.
Daca legatura este incorecta (conecteaza doua componente detipuri diferite), aceasta va fi afisata cu culoarea neagra si
intrerupta.
Utilizand unealta de conectare, realizati legaturile din
figura. alaturata. Observati ca, similar terminalelor,
legaturile din diagrama au culori ce semnficia tipul
datelor scalare corespunzatoare (portocaliu pentrunumere reale, albastru pentru numere intregi, verde
pentru valori booleene, roz pentru valori alfanumerice).
Astfel, atunci cand programul va rula, indicatorul
Meter va afisa suma dintre valoarea controlului Slidesi constanta 2, indicatorul Boolean 2 va afisa valoarea
logica negata a controlului Boolean, iar indicatorul
String 2 va afisa textul din controlul Stringtransformat in majuscule.
Deschideti fereastra Help, selectati unealta deconectare si pozitionati cursorul mouse-ului deasupra
unei legaturi astfel incat aceasta sa "clipeasca".Observati ca, in aceasta situatie, in fereastra Help sunt
afisate informatii referitoare la tipul de valori ce circulaprin legatura respectiva
Figura 33
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
19/97
Fluxul de date este format din totalitatea legaturilor ce conecteaza diversele terminale
de elemente, simboluri de functii sau proceduri si structuri de programare din cadrul
diagramei. Rolul fluxului de date este acela de reprezentare grafica a algoritmului dupa
care aplicatia va prelucra datele de intrare pentru a calcula valorile de iesire. Traseele ce
formeaza fluxul de date pot fi simple, cu o sursa si o destinatie, sau ramificate, cu o sursa si
mai multe destinatii.
1.1.18 Principalele moduri de rulare a unei aplicatii
Barele de butoane ale panoului si diagramei contin o serie de elemente ce permit stabilirea
modului de rulare a unui program.
Figura 35
19
Indiferent de modul sau sensul in
care traseele sunt dispuse pediagrama, "circulatia" datelor in
cadrul fluxului se efectueaza doar
de la surse catre destinatii.
Prin sursa se intelege, de
exemplu, terminalul unui element
de control, simbolul uneiconstante sau zona de iesire a
unei functii sau proceduri.
Prin destinatie se intelege, deexemplu, terminalul unui elementindicator sau zona de intrare a
unei functii sau proceduri.
Figura 34
Apasarea butonului Run va conduce la rularea o singura
data a programului. Va fi parcurs intreg fluxul de date din
diagrama, dupa care programul se va opri.
In timpul rularii programului, butonul Run isi schimba forma si seaprinde un buton Abort execution.
Apasarea acestui din urma buton in timpul rularii va determina
intreruperea acesteia.
Apasarea butonului Run Continuously va conduce la
rularea repetata, fara oprire, a programului. Pe parcursul acestui
mod de rulare, isi schimba forma atat butonul Run Continuouslycat si butonul Run, si se aprinde de asemenea butonul Abortexecution. Intreruperea rularii nu are loc decat la comanda
utilizatorului, prin apasarea butonului Abort execution.Atat pe parcursul rularii simple cat si pe cel al rularii
continui, utilizatorul are posibilitatea de a suspenda rularea prin
apasarea butonului Pause. Apasarea acestui buton ii schimbaforma si il transforma in butonul Continue, prin a carui apasare se
comanda reluarea unei rulari suspendate.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
20/97
Figura 36
Figura 37
.
Figura 38
.
Figura 39
Figura 40
EXERCITII
In panoul aplicatiei pe care ati realizat-o, cu unealta de operare, modificati valoarea
elementului de control Slide, schimbati pozitia controlului Boolean si introduceti un text
format din minuscule in controlul String. Apasati sageata Run pentru a rula programul.
Schimbati din nou pozitia controlului Boolean si apasati din nou sageata Run.
Apasati butonul Run Continuously si, in timp ce programul ruleaza in modul
continuu, modificati valoarea elementului de control Slide, schimbati pozitia
controlului Boolean si modificati textul dn controlul String.
Apasati butonul Pause. Rularea programului se va suspenda temporar, aplicatia va
trece automat in diagrama si va indica prin aprindere intermitenta locul din diagrama in
care programul s-a oprit.
20
Daca, atunci cand rularea este suspendata, se trece in
fereastra diagrama, programul semnalizeaza prin aprindereintermitenta zona ce era in curs de executie atunci cand s-a
comandat suspendarea
In diagrama, atunci cand rularea este suspendata,
utilizatorul are posibilitatea de a continua rularea pas cu pas,
utilizand setul de trei butoane din dreapta.
In orice mod de rulare, prin apasarea butonului Highlight
Execution, utilizatorul are posibilitatea de a urmari o animatie cesugereaza deplasarea valorilor prin fluxul de date.
Atunci cand o valoare paraseste o componenta a diagramei ce esteo sursa a unei legaturi, valoarea respectiva este afisata in diagrama.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
21/97
Apasati butonul Highlight Execution, apoi butonul Step Over. Observati afisarea in
diagrama a valorilor de iesire din functii.
"Stingeti" butonul Continue (cel care avea initial eticheta Pause). Observati afisarea in
diagrama a modului in care valorile circula pe fluxul de date al programului.
"Stingeti" butonul Highlight Execution si intrerupeti rularea continua prin apasarea
butonului Abort execution.
1.1.19 Salvarea unei aplicatii
Figura 42
21
Atat timp cat inca nu a fost salvat intr-unfisier, un program are numele Untitled urmat de
un numar de ordine. Pentru a specifica folder-ul in
care programul sa fie salvat, precum si numele
fisierului, se alege din meniul File optiunea Save
As...
Figura 41
In urma selectarii
comenzii Save As...,
programul deschide o fereastra
de dialog in care utilizatorulpoate selecta folder-ul in care
sa se efectueze salvarea si
numele fisierului.
PROGRAMELE
REALIZATE IN MEDIUL
DE PROGRAMARE
GRAFICA LabVIEW SE
SALVEAZA IN FISIERE
CU EXTENSIA VI !
Din momentul in care a fost salvat prima data,
programului i se afiseaza numele atat in bara superioara
a panoului cat si in cea a diagramei.
Daca, dupa salvare, programului i se aduc in continuaremodificari, langa numele acestuia apare un asterisc (*),
semnalizand astfel faptul ca versiunea ce a fost salvata
nu este cea mai recenta
Pentru a salva un program care are deja o locatie si un
nume stabilite, este suficient sa se apese combinatia de
taste Ctrl si S sau sa se selecteze comanda Save din
meniul File.
Comanda Save As... se poate folosi daca se doreste
salvarea unei noi versiuni a fisierului intr-o noua locatiesau cu un nou nume.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
22/97
EXERCITII
Pe discul D al computerului, in directorul Utilizatori, subdirectorul CCD, creati unsubdirector cu numele Dvs. Pentru informatii suplimentare despre aceasta etapa, apasati AICI(Atentie, se va deschide o noua fereastra Internet Explorer pe care o puteti inchide ulterior)
Salvati aplicatia pe care ati realizat-o in subdirectorul propriu !
TEMA
1. Realizati un program pentru calculul ariei si perimetrului unui cerc, in functie de valoarearazei introdusa de catre utilizator
2. Realizati un program pentru calculul ariei si perimetrului unei elipse, in functie de valorile
introduse de catre utilizator pentru cele doua semiaxe
3. Realizati un program care sa exemplifice utilizarea diverselor functii booleene
4. Realizati un program pentru rezolvarea ecuatiei de gradul al doilea
5. Realizati un program pentru calculul inaltimii maxime si al distantei parcurse pe orizontala
in cazul aruncarii oblice
22
Figura 43
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
23/97
1.2 Functii pentru valori scalare1.2.1 Functii pentru valori numerice
Pe langa functiile aritmetice simple descrise in lectia anterioara, subpaleta Numeric a
paletei de functii contine, in zona sa principala, si urmatoarele functii:
23
Quotient & Remainder calculeaza
catul si restul impartirii valorii conectate laintrarea X la valoarea conectata la intrarea Y
Figura 44
Compound Aritmetic (disponibila si in
subpaleta Boolean a paletei de functii) permiteefectuarea operatiilor de adunare (Add) sau inmultire(Multiply), sau a operatiilor logice SI (AND), SAU(OR) sau SAU EXCLUSIV (XOR), asupra unui
numar variabil de valori de intrare.Numarul de intrari este stabilit de catre utilizator prin
"dimensionarea" simbolului functiei astfel:
se plaseaza cursorul mouse-ului la mijloculuneia din laturile orizontale ale simbolului,
astfel incat pe laturile de sus si de jos sa apara
cate un cerculet
se apasa butonul stang al mouse-ului si sedeplaseaza mouse-ul tinand butonul apasat
pe masura ce mouse-ul este deplasat, simbolulfunctiei isi modifica dimensiunile, modificandu-
se astfel numarul de intrari
cand numarul de intrari in functie este cel dorit,
se elibereaza butonul mouse-ului.Pentru a selecta operatia efectuata de catre
functie (adunare, inmultire etc)
se apasa butonul drept al mouse-ului pentru adeschide meniul propriu al functiei
se deschide submeniul Change Mode se selecteaza operatia dorita
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
24/97
Figura 46
- subpaleta Trigonometric, continand majoritatea functiilor trigonometrice
- subpaleta Logarithmic, continand functii exponentiale si logaritmice
24
Figura 45
Random Number (0-1) este o functie ce nu poseda intrari,
rolul sau fiind de a genera o valoare reala aleatoare in intervalul (0,1)
Subpaleta Numeric a paletei de functii contine de asemenea o serie de subpalete dedicate
unor categorii particulare de functii:subpaleta Conversion, continand printre altele:
- 12 functii pentru schimbarea modului de reprezentare a unei valori numerice
functia Boolean To (0,1) (disponibila si in subpaleta
Boolean a paletei de functii), care transforma o valoare logica (True sau False) intr-ovaloare numerica (1 respectiv 0)
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
25/97
Figura 47 Figura 48
- subpaleta Complex, continand functii asociate numerelor complexe
- Subpaleta Additional Numeric Constants a paletei de functii contine valori constante
des utilizate in trigonometrie si in lucrul cu functii exponentiale sau logaritmice,precum si constante utilizate in fsica
25
Figura 49
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
26/97
Figura 50
EXERCITIU
In zona principala a paletei de functii si in subpaletele dedicate ale acesteia, identificatifunctiile si constantele enumerate mai sus.
Construiti un program care sa afiseze catul si restul impartirii a doua numere naturale
introduse de catre utilizator.
1.2.2 Functii uzuale pentru valori alfanumerice
Portiunea inlocuita incepe de la caracterul aflat pe pozitia offset inclusiv si contine lengthcaractere. Intrarea offset are valoarea implicita 0, iar intrarea length are o valoare implicita
egala cu numarul de caractere legat la intrarea substring. Daca la intrarea substring nu seleaga nici o valoare (textul de inserat este vid), functia efectueaza de fapt o stergere a unei
26
Functia String Length determina numarul de caractere dintr-
o valoare alfanumerica (text). Sunt luate in considerare si caracterele
neafisabile (spatiu, Tab, sfarsit de linie etc). Numarul de caractere de
la iesirea functiei este exprimat ca un intreg pe patru octet
Functia Concatenate Strings poseda un numar de
intrari ce poate fi modificat de catre utilizator prin
dimensionarea simbolului functiei. La iesirea sa, functia
genereaza o valoare alfanumerica obtinuta princoncatenarea textelor de la intrarile sale, in ordinea de sus
in jos.
Functia Replace Substring sterge oportiune din textul conectat la intrarea string
si introduce in locul respectiv textul conectatla intrarea substring.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
27/97
portiuni, iar daca la intrarea length se leaga valoarea 0 (textul de sters este vid) functia
efectueaza de fapt o inserare a unei portiuni.
Cautarea are loc incepand de la pozitia offset a textului string. Daca la intrarea offsetnu se conecteaza nici o valoare, cautarea are loc incepand cu prima pozitie. Daca la intrarea
replace string nu se conecteaza nici o valoare, atunci functia efectueaza de fapt o stergere(inlocuire cu text vid). Daca la intrarea replace all? nu se conecteaza nici o valoare, atunci
functia se opreste dupa prima aparitie a textului search string. Daca la aceasta intrare se
conecteaza o valoare logica True, atunci functia efectueaza inlocuiri pentru toate aparitiiletextului search string. Functia genereaza textul rezultat in urma inlocuirii la iesirea resultstring, iar la iesirea offset past replacement genereaza o valoare indicand pozitia caracterului
aflat imediat dupa ultimul caracter inlocuit.
EXERCITIU
Pentru fiecare dintre functiile prezentate mai sus, construiti cate un program care sa
exemplifice modul de utilizare a functiei. De exemplu, pentru functia String Length, panoulprogramului va contine un element de control pentru valori alfanumerice, in care utilizatorul
va introduce un text, si un element indicator pentru valori numerice, in care programul va afisa
numarul de caractere ale textului introdus.
1.2.3 Functii aditionale pentru valori alfanumerice
27
Functia Search and Replace Stringcauta textul search string in textul conectat
la intrarea string, iar atunci cand il gaseste ilinlocuieste cu textul conectat la intrarea
replace string.
Subpaleta Additional String Functions a
paletei String ( figura51) contine o serie de functii
uzuale pentru lucrul cu valori alfanumerice
Functia Search/Split String cauta textul
conectat la intrarea search string/char in textul
conectat la intrarea string. Cautarea se efectueazaincapand cu pozitia offset.
Daca textul cautat este gasit, functia divide textul
initial in doua parti:- partea dinainte de textul cautat (substring before
match)
- textul cautat urmat de restul textului in care s-a
facut cautarea (match + rest of string) Figura 51
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
28/97
Functia genereaza la iesirea offset of match pozitia in care a fost gasit textul cautat.Daca textul cautat nu a fost gasit, iesirea substring before match contine tot textul legat la
intrarea string, iar iesirea offset of match are valoarea -1.
Daca la intrarea string nu a fost conectata nici o valoare, rezultatul este chiar linia cu indicele
specificat.
In caz afirmativ, functia genereaza la iesirea output string restul textului de la intrarea string,iar la iesirea selection o valoare booleana corespunzatoare intrarii care a coincis (True pentru
true string si False pentru false string). Daca ambele texte coincid, functia considera textul
true string. Daca nici un text nu coincide, iesirea selection are valoarea False iar iesirea
output string contine intreg textul string
28
Functia Pick Line selecteaza din textulmulti-line string, ce contine mai multe linii, pe ceacu indicele line index si adauga linia respectiva la
textul conectat la intrarea string.
Functia Match True/False String verifica
daca unul din textele true string sau false string
coincide cu inceputul textului conectat la intrarea
string.
Functia Rotate String efectueaza o
permutare circulara a caracterelor textului conectat
la intrarea string, mutand primul caracter pe ultimapozitie.
Functia Reverse String inverseazaordinea caracerelor textului conectat la intrarea
string
Functia Append True/False Stringconcateneaza la textul conectat la intrarea stringunul din textele conectate la intrarile true string
sau false string, in functie de valoarea booleanaconectata la intrarea selector.
Subpaleta String/Number Conversion a
paletei String contine functii pentru conversia
valorilor alfanumerice in valori numerice saupentru efectuarea operatiei inverse. Dintre acestea,
cele mai des utilizate sunt:Functia Number To Decimal Stringtransforma numarul intreg de la intrarea numberintr-un text de cel putin width caractere. Daca
numarul de la intrarea functiei nu este intreg, eleste trunchiat. Daca intrarea width nu este legata,
numarul de caractere ale textului va fi egal cu
numarul de cifre ale intregului.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
29/97
Modul de reprezentare al valorii de la iesirea number este identic cu cel al valorii
numerice intregi conectate la intrarea default (implicit intreg pe 32 de biti).Iesirea offset past number are semnificatia pozitiei primului caracter din string dupa
portiunea care a fost transformata in valoare numerica.
Subpaleta String/Number Conversion contine de asemenea functii pentrutransformarea textelor din si in numere in baza de numeratie 16 sau 8 sau in formatul
exponential, fractional sau ingineresc.
EXERCITIU
Pentru fiecare dintre functiile prezentate mai sus, construiti cate un program care sa
exemplifice modul de utilizare a functiei. De exemplu, pentru functia Reverse String, panoulprogramului va contine un element de control pentru valori alfanumerice in care utilizatorul va
introduce un text si un element indicator, de asemenea pentru valori alfanumerice, la care
programul va afisa textul inversat.
1.2.4 Functii pentru comparatiiFunctiile pentru efectuarea comparatiilor sunt grupate in subpaleta Comparison a
paletei de functii.
29
Figura 52
Functia Decimal String To Numbertransforma intr-o valoare numerica intreaga
portiunea din textul string incepand de la pozitia
offset inclusiv (implicit de la pozitia 0)..
In cazul functiei Greater? de exemplu,
iesirea va avea valoarea True daca
valoarea de la intrarea de sus este mai maredecat valoarea de la intrarea de jos si va
avea valoarea False in caz contrar.
Caracteristic acestor functii este faptul ca, daca datelede intrare pot fi de diverse tipuri (numerice, booleene,
alfanumerice etc), datele de iesire sunt la majoritatea acestor
functii valori logice (booleene). Conteaza de asemeneaordinea in care datele de intrare sunt legate la terminalul
functiei (la intrarea de sus sau la cea de jos).
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
30/97
Figura 53
Pe langa functiile de comparare a doua marimi sau de comparare a unei marimi cu
valoarea nula, subpaleta Comparison contine urmatoarele:
Subpaleta Comparison contine de asemenea functii pentru a verifica daca un caracter
este cifra in baza de numeratie 16, cifra in baza de numeratie 8, caracter tiparibil sau caracter
netiparibil.
30
Functia Select genereaza la iesire valoarea de la
intrarea t (True) daca valoarea logica de la intrarea s
este True, respectiv valoarea de la intrarea f (False)daca valoarea logica de la intrarea s este False. Valorile
de la intrarile t si f pot fi atat numerice cat si
alfanumerice.Functia Max & Min genereaza la iesirea maxcea mai mare dintre valorile x si y, respectiv la iesirea
min pe cea mai mica dintre acestea.
Functia In Range and Coerce verifica daca
valoarea de la intrarea x este cuprinsa intre valorile de
la intrarile lower limit (limita inferioara) si upper
limit (limita superioara). Valoarea logica reprezentand
rezultatul verificarii este generata la iesirea In Range?
n mod implicit, intervalul de incadrare este inchis la
stanga si deschis la dreapta.Inchiderea sau deschiderea intervalului la extremitatile
sale poate fi configurata de catre utilizator din meniul
propriu al functiei, activand sau dezactivand optiunile
Include upper limit si Include lower limit.
Rezultatul "fortarii" valorii x in intervalul prescris este
generat la iesirea coerced(x).Figura 54
Functia Decimal Digit? genereaza o valoarelogica True in situatia in care caracterul de la intrarea sa
este o cifra intre 0 si 9 si genereaza o valoare False in
caz contrar.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
31/97
EXERCITIU
Pentru fiecare dintre functiile prezentate mai sus, construiti cate un program care saexemplifice modul de utilizare a functiei. De exemplu, pentru functia Select, panoul
programului va contine un element de control boolean, doua elemente de control alfanumerice
si un indicator alfanumeric. Programul va afisa la elementul indicator una din valorile de lacele doua controale alfanumerice, in functie de valoarea True sau False a elementuluiboolean.
1.2.5 Functii pentru lucrul cu valori data - timp si de dialog
31
Functiile pentru lcurul cu valori data
- timp si functiile de dialog se gasesc in
meniul Time & Dialog al paletei de functii.
Printre cele mai utilizate functii din aceastacategorie se numara:
Tick Count (ms): determinanumarul de milisecunde indicat de ceasulintern al computerului (considerat de la
momentul la care calculatorul a fost pornit)
Wait (ms): intrerupe executia
programului pentru intervalul de timpspecificat
Format Date/Time String:
transforma o valoare numerica reprezentandun numar de secunde intr-un text.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
32/97
Numarul de secunde este considerat a fi scurs incepand cu data de 1 ianuarie 1904, ora
12.00. La intrarea time format string a functiei se poate specifica formatul in care textul
rezultat sa fie construit.
La intrarea date format se poate lega una din valorile 0, 1 sau 2, reprezentandformatele scurt, lung sau abreviat pentru data. Daca numarul de secunde nu este conectat, se
considera numarul de secunde al ceasului intern al computerului.
Ieisrea text ce reprezinta timpul poate contine sau nu secunde, in functie de valoarea intrariibooleene want seconds?
Functia genereaza o valoare booleana True daca utilizatorul a apasat butonul din stanga sau
False daca a fost apasat butonul din dreapta.
EXERCITII
Pentru fiecare dintre functiile prezentate mai sus, construiti cate un program care saexemplifice modul de utilizare a functiei. De exemplu, pentru functia Tick Count (ms),
realizati un program care sa afiseze numarul de secunde scurse de la pornirea calculatorului.
TEMA
1. Construiti un program care sa genereze un numar aleator intr-un interval ale carui limiteminima si maxima sunt specificate de catre utilizator
32
Figura 55
Get Date/Time String: transforma o
valoare numerica reprezentand un numar desecunde in doua texte, unul reprezentand data
si celalalt timpul.
Get Date/Time In Seconds: determina
numarul de secunde scurs incepand cu data de1 ianuarie 1904, ora 12.00, pana la data sitimpul curente ale calculatorului.
One Button Dialog: determina aparitia
unei ferestre de dialog, continand un textspecificat prin program, fereastra ce asteapta
apasarea de catre utilizator a unui buton (numele
butonului poate fi de asemenea configurat).
Two Button Dialog: determina aparitia uneiferestre de dialog, continand un text specificat prin program, fereastra ce asteapta apasarea de catre
utilizator a unuia din cele doua butoane
disponibile (numele butoanelor pot fi de asemenea
configurate).
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
33/97
2. Realizati un program in care utilizatorul sa dispuna de patru elemente de control booleene
sub forma de LED-uri.Considerand ca cele patru LED-uri reprezinta cifrele binare ale unui numar in baza de
numeratie 2, programul sa afiseze numarul respectiv in baza 10.
3. Construiti un program in care utilizatorul sa introduca lungimea unui vector si unghiulacestuia cu orizontala (in grade), iar programul sa afiseze lungimile proiectiilor vectorului pecele doua axe de coordonate.
4. Construiti un program in care utilizatorul sa introduca lungimile si unghiurile cu orizontala
(in grade) pentru doi vectori, iar programul sa afiseze lungimea vectorului rezultant, unghiul
facut de acesta cu orizontala si lungimile proiectiilor sale pe cele doua axe.
5. Realizati un program pentru adunarea, scaderea, inmultirea si impartirea a doua numere
complexe.
6. Intr-un text, sa se inlocuiasca toate spatiile (blanc) cu liniuta de subliniere (underscore)
7. Fiind dat un cuvant, sa se transforme acesta astfel incat prima litera sa fie majuscula si restul
literelor sa fie minuscule.
8. Fiind dat un text, sa se verifice faptul ca toate caracterele din cadrul acestuia sunt
minuscule.
9. Sa se compare doua valori numerice a si b si sa se aprinda cate un LED pentru fiecare din
situatiile a < b, a = b si a > b.
10. Sa se verifice daca doua texte contin aceleasi caractere, in aceeasi ordine, indiferent detipul de litere (minuscule sau majuscule)
11. Fiind dat un text ce reprezinta un nume si un prenume separate printr-un spatiu, sa se
obtina din acesta un text continand cele doua intiale, fiecare urmata de cate un punct.
12. Fiind dat un text, sa se determine numarul de caractere din acesta diferite de spatiu (blanc)
13. Fiind dat un text, sa se verifice faptul ca acesta nu contine spatii libere
14. Fiind dat un text ce reprezinta un nume si un prenume separate printr-un spatiu, sa se
separe in doua texte, unul reprezentand numele si unul prenumele
15. Fiind dat un text ce nu contine spatii, sa se verifice daca acesta contine intre sase si opt
caractere.
16. Sa se realizeze un program care sa aprinda un LED atunci cand utilizatorul introduce o
valoare mai mare decat 5.
33
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
34/97
17. Sa se realizeze un program care, in functie de pozitia unui comutator boolean, sa calculeze
fie suma fie produsul a doua valori numerice introduse de catre utilizator.
18. Fiind date doua valori numerice reale a si b, sa se calculeze suma dintre dublul valorii mai
mari si triplul valorii mai mici.
19. Fiind dat un text ce reprezinta o propozitie, sa se verifice faptul ca punctul (.) apare o
singura data, la sfarsitul acesteia.
20. Sa se afiseze, in elemente indicatoare distincte, numerele de ore, minute si secunde scursede la pornirea calculatorului.
21. Sa se afiseze, in elemente indicatoare distincte, numerele de zile, ore, minute si secunde
scurse de la 1 ianuarie 1904, ora 12.00.
22. Sa se afiseze, in diverse formate, un text reprezentand data si timpul curente ale
calculatorului.
23. Sa se realizeze un program in care utilizatorul sa introduca trei valori numerice (a, b si c)
ordonate crescator.
In functie de cum valorile respective au fost introduse corect (ordonate crescator) sau nu,programul sa afiseze o fereastra de dialog cu textul RASPUNS CORECT sau RASPUNSINCORECT.
24. Sa se realizeze un program care sa aprinda sau nu un indicatorRound LED, in functie de
raspunsul DA sau NU pe care utilizatorul il da la aparitia unei ferestre de dialog cu intrebarea
Aprindem becul ?
34
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
35/97
1.3 Meniuri proprii in panou
1.3.1 Meniuri proprii in panou
Visible Items4Label - Afiseaza sau ascunde eticheta elementului. Continutul etichetei
poate fi modificat cu unealta de editare a textelor
Visible Items4Caption - Afiseaza sau ascunde eticheta suplimentara a elementului.Continutul etichetei poate fi de asemenea modificat cu unealta de editare a textelor
35
Pentru a deschide meniul propriu al unui
element de control sau indicator, se pozitioneaza
cursorul mouse-ului deasupra elementului si se apasabutonul drept. Meniul propriu al unui element poate
fi de asemenea deschis cu ajutorul uneltei de afisare
a meniurilor proprii.Un meniu propriu contine diverse optiuni prin care
pot fi configurate modurile de afisare sau de
functionare ale elementelor de control sau
indicatoare. Indiferent de tipul de valori carora lesunt dedicate (numerice, booleene sau alfanumerice),
elementele de pe panou au in meniurile proprii o
serie de optiuni comune:
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
36/97
Find Terminal - Trece in diagrama si indica terminalul elementului prin incadrarea
acestuia intr-un chenar cu linie intrerupta animata
Change to Indicator (sau Change to Control) - Schimba tipul elementului din
control in indicator sau invers
Description and Tip... Permite introducerea unei scurte descrieri referitoare la element
si a unui text ajutator (Tip) care apare atunci cand cursorul mouse-ului este pozitionatdeasupra elementului
Create4 - Creeaza in diagrama entitati suplimentare, atasate elementului de pe panou(vor fi discutate ulterior)
Replace4 - Afiseaza paleta de controale, astfel incat utilizatorul poate selecta un
element cu care sa il inlocuiasca pe cel current
Data Operations4 - Permite stabilirea valorii implicite a elementului (Make CurrentValue Default), reinitializarea unui element la valoarea sa implicita (Reinitialize to
Default Value) sau operatii de copiere a valorii elementului (Cut, Copy, Paste)
Advanced4 - Modalitati de configurare avansata a elementelor (vor fi discutate inlectii ulterioare)
EXERCITIU
Exersati activarea urmatoarelor optiuni din meniul propriu al unui element de pepanou: Visible Items4Label, Find Terminal, Change to Indicator, Change to Control,
Description and Tip..., Replace
1.3.2 Meniuri proprii in diagrama
Pe langa optiunea Change to Indicator (sau Change to Control) este adaugata sioptiunea Change to Constant, efectul acesteia fiind de inlocuire a elementului de
36
Atunci cand se deschide meniul
propriu al unui terminal din diagrama, acestacontine aproape aceleasi optiuni ca si meniul
elementului corespunzator de pe panou, cu
urmatoarele deosebiri:
Optiunea Find Terminal a elementuluide pe panou este inlocuita cu optiunea
Find Control sau Find Indicator
Apare optiunea suplimentara Hide
Control (sau Hide Indicator). Efectul
acesteia este ascunderea elementuluicorespunzator de pe panou
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
37/97
control sau indicator cu o constanta (constantele pot exista doar in diagrama, astfel
incat elementul de control sau indicator dispare de pe panou)
In submeniul Createapar optiunile suplimentare Constant, Control siIndicator, efectul acestora fiind de adaugare (in diagrama sau in panou, dupa caz)a unei constante sau a unui element de control sau indicator de acelasi tip cuelementul al carui meniu propriu a fost deschis.
EXERCITIU
Utilizati urmatoarele optiuni din meniul propriu al unui terminal din diagrama: Find
Control sau Find Indicator, Hide Control (sau Hide Indicator), Change to Constant,
Create4Constant, Create4Control si Create4Indicator.
1.3.3 Moduri de reprezentare a valorilor numerice
37
Meniurile proprii ale elementelor
de control sau indicatoare numerice contino optiune specifica, Representation, cu
ajutorul careia se specifica modul in care
valoarea numerica respectiva este stocatain memorie. In submeniul
Representation, utilizatorul are la
dispozitie 12 optiuni:
pe prima linie: optiuni pentru
numere reale
pe a doua linie: optiuni pentru
numere intregi
pe a treia linie: optiuni pentru
numere naturale
pe a patra linie: optiuni pentrunumere complexe
Intre diversele optiuni de pe o linie,
diferenta consta in numarul de octeti
(bytes) alocati in memorie pentrustocarea valorii respective:
Figura 58
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
38/97
EXT (extended) = numar real cu precizie extinsa (16 octeti)
DBL (double) = numar real cu precizie dubla (8 octeti)
SGL (single) = numar real cu precizie simpla (4 octeti)
I32 (long) = numar intreg pe 4 octet
I16 (word) = numar intreg pe 2 octeti
I8 (byte) = numar intreg pe 1 octet
U32 (unsigned long) = numar natural pe 4 octeti
U16 (unsigned word) = numar natural pe 2 octeti
U8 (unsigned byte) = numar natural pe 1 octet
CXT (complex extended) = numar complex cu precizie extinsa (32 octeti)
CDB (complex double) = numar complex cu precizie dubla (16 octeti)
CSG (complex single) = numar complex cu precizie simpla (8 octeti)
Numarul de octeti alocati pentru stocare se reflecta in intervalul de valori in care poate
exista valoarea respectiva sau in precizia acesteia:
38
Textul din interiorul
terminalului unui element de
control sau indicator numeric semodifica pentru a reflecta modul
de reprezentare ales. In cazul in
care valoarea numerica este una
intreaga sau naturala, terminalulisi modifica de asemenea
culoarea, din portocaliu in
albastru.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
39/97
EXERCITII
Exersati modificarea moduui de reprezentare a unui element de control numeric.
Observati in panou aparitia sau disparitia zecimalelor iar in diagrama modificareaculorii si textului din interiorul terminalului.
Observati ce se intampla in situatia in care, avand un element de control numeric cu
valoare reala negativa, se schimba modul de reprezentare al acestuia in numar natural.
1.3.4 Meniuri proprii specifice elementelor numerice
39
Elementele de control sau indicatoare numerice
dispun in meniul propriu de doua optiunispecifice:
>>> Data Range... pentru stabilirea unui interval
de variatie particular >>> Format & Precision... pentru specificarea
unui mod particular de afisare a valorii
Selectarea optiunii Data Range... conduce la
deschiderea unei ferestre suplimentare.Daca se dezactiveaza optiunea Use Defaults,
utilizatorul poate specifica valorile minima si
maxima pe care le poate lua elementul respectiv, precum si incrementul intre doua valori
succesive.Figura 60
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
40/97
De asemenea, prin optiunea If Value is Out of Range, utilizatorul poate dicta modul
de comportament in cazul in care se incearca introducerea unei valori in afara intervaluluistabilit: daca in locul optiunii Ignore se selecteaza optiunea Coerce, elementul va forta
ramanerea valorii intre limitele impuse. Fereastra suplimentara Data Range permite
modificarea si din acest loc a modului de reprezentare a valorii numerice (Representation).
Selectarea din meniul propriu a optiunii Format & Precision deschide o fereastra din care
utilizatorul poate dicta afisarea valorii numerice in format:
zecimal, caz in care se pot specifica numarul de zecimale si notatia (cu virgula mobila,
stiintifica, inginereasca etc.)
timp - data, situatie in care se pot selecta diverse formate de afisare.
In cazul in care se selecteaza formatul timp - data, valoarea elementului va reprezentanumarul de secunde scurse de la data de 1 ianuarie 1904, ora 3:00 AM.
In situatiile in care elementul de control sau indicator numeric are un mod de reprezentarede tipul numar intreg sau natural, optiunea Format & Precision permite suplimentar si
afisarea valorilor in sistem de numeratie hexazecimal, octal sau binar.
40
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
41/97
EXERCITII
Dispuneti pe panou un element de control numeric de tipul Horizontal Pointer Slide
si modificati valorile Minimum, Maximum si Increment din optiunea Data Range...a meniului propriu. Incercati apoi sa modificati valoarea elementului de control in afara
limitelor impuse si observati comportamentul elementului.
Dispuneti pe panou un element de control numeric de tipul Digital Control si selectatioptiunea Format & Precision din meniul propriu al acestuia. Pentru formatul zecimal,
modificati numarul de zecimale si notatia (stiintifica, inginereasca etc) si observati
consecintele. Selectati apoi formatul timp - data cu diverse formate de afisare siobservati consecintele.
1.3.5 Meniuri proprii specifice elementelor cu scala
Elementele de control sau indicatoare numerice cu scala (potentiometre liniare sau
circulare, indicatoare cu ac etc) dispun in meniul propriu de optiuni suplimentare referitoare la
modul de afisare:
41
Figura 62
Figura 63
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
42/97
optiunea Fill Options4 permite alegerea modului in care sa se coloreze portiunile
elementului aflate de o parte si de alta a cursorului (colorat deasupra, colorat dedesubt,
necolorat etc
optiunea Scale4 dispune de o serie de submeniuri proprii pentru pozitionarea uniforma
sau arbitrara a gradatiilor de pe scala (Marker Spacing 4), pentru stabilirea formatului
de afisare a valorilor de pe scala (Format & Precision...), pentru alegerea variantei dedensitate a gradatiilor (Style 4) si pentru selectarea unei scale liniare sau logaritmice
(Mapping 4)
EXERCITII
Dispuneti pe panou un element de tipul Vertical Pointer Slide, selectati din optiunea
Fill Options a meniului sau propriu diverse moduri de umplere si observati
consecintele.
Pentru acelasi element, afisati scala cu gradatii arbitrare (Marker Spacing), afisati
valorile de pe scala cu o zecimala (Format & Precision), modificati densitateagradatiilor de pe scala (Scale), apoi transformati tipul scalei in logaritmic (Mapping).
1.3.6 Meniuri proprii specifice elementelor booleene
42
Figura 64 Figura 65
Elementele de control booleene dispun in
meniul propriu de optiunea suplimentara
Mechanical Action, aceasta permitand stabilirea
modului in care elementul se comporta la apasarea
butonului mouse-ului de catre utilizator.
Switch When Pressed modifica valoarealogica a elementului atunci cand se apasa
butonul mouse-ului, iar valoarea ramane
modificata si dupa eliberarea butonului
Switch When Released modifica valoarealogica a elementului atunci cand se
elibereaza butonul mouse-ului (dupa ce inprealabil a fost apasat), iar valoarea ramane
modificata si dupa eliberare
Figura 66
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
43/97
Switch Until Released modifica valoarea logica a elementului atunci cand se apasa
butonul mouse-ului, iar dupa eliberarea butonului valoarea elementului redevine ceadinaintea apasarii
Latch When Pressed modifica valoarea logica a elementului atunci cand se apasa
butonul mouse-ului, dar aceasta modificare dureaza doar pana cand valoarea logica
este transmisa in diagrama pe fluxul de date. Imediat ce valoarea elementului a fosttransmisa, acesta revine la valoarea dinaintea apasarii, chiar daca utilizatorul continua
sa tina butonul mouse-ului apasat.
Latch When Released modifica valoarea logica a elementului atunci cand seelibereaza butonul mouse-ului (dupa ce in prealabil a fost apasat), dar aceasta
modificare dureaza doar pana cand valoarea logica este transmisa in diagrama pe fluxul
de date. Dupa ce valoarea a fost transmisa, elementul revine la valoarea initiala.
Latch Until Released modifica valoarea logica a elementului atunci cand se apasa
butonul mouse-ului, iar modificarea se pastreaza atat timp cat utilizatorul tine butonul
apasat. Dupa ce utilizatorul elibereaza butonul, elementul revine la valoarea initialadoar in momentul in care se realizeaza o transmitere a valorii pe fluxul de date.
EXERCITII
1 Dispuneti pe panou un element boolean de control de tipul Vertical Toggle Switch si
un element indicator de tipul Round LED. In diagrama, conectati intre ele terminalelecelor doua elemente. Pentru fiecare optiune Mechanical Option a elementului de
control, efectuati o rulare continua (butonul Run Continuously) si observati modul in
care se comporta comutatorul si modul in care valoarea sa logica este transmisaelementului Round LED.
2 Dati exemple de situatii in care fiecare optiune ar fi utila (de exemplu, optiunea LatchWhen Pressed este utila atunci cand, in urma apasarii butonului de catre utilizator, se
deruleaza o actiune cu un timp foarte scurt si nu se doreste ca aceasta actiune sa fierepetata chiar daca utilizatorul intarzie sa ridice degetul de pe butonul mouse-ului).
1.3.7 Meniuri proprii specifice elementelor alfanumerice
43
Elementele de control si indicatoare alfanumerice
dispun in meniul propriu de patru optiuni suplimentare
referitoare la modul de afisare:
Normal Display: afisare normala a caracterelor
"\" Codes Display: interpretarea caracterelor
care urmeaza dupa "\" drept caractere neafisabile
(\n = linie noua, \t = Tab, \s = spatiu s.a.m.d.) Password Display: afisare tip "parola", in locul
fiecarui caracter fiind afisat un asterisk
Hex Display: afisarea codurilor ASCII alecaracterelor
In mod implicit, atunci cand se introduce un text intr-
un element de control alfanumeric, elementul respectivse comporta in modul urmator:
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
44/97
daca se apasa tasta Enter "mare" (din apropierea tastelor pentru litere), elementul
considera ca se doreste trecerea la linia urmatoare daca se apasa tasta Enter "mica" (din zona cu taste numerice aflata in partea dreapta a
tastaturii) sau daca se face click cu mouse-ul in afara elementului,, acesta considera cas-a incheiat introducerea textului
textul introdus in element nu este transmis ca valoare alfanumerica in fluxul de date
decat dupa confirmarea prin apasarea tastei Enter "mici" a incheierii introducerii sale
Comportamentul implicit al elementului poate fi modificat prin selectarea optiunilor dinpartea inferioara a meniului propriu:
Limit to Single Line: confera ambelor taste Enter acelasi rol, de incheiere a
introducerii textului. In acest mod, nu se mai poate trece la o linie noua prin apasareatastei Enter "mare", astfel incat textul nu mai poate fi format decat dintr-o singura
linie.
Update Value while Typing: elementul nu mai asteapta confirmarea incheierii
introducerii textului pentru a transmite valoarea alfanumerica in fluxul de date.Valoarea alfanumerica este transmisa automat, de fiecare data cand textul introdus in
element este modificat.
EXERCITII
1 Dispuneti pe panou un element alfanumeric de control si experimentati optiunilesuplimentare referitoare la afisare
2 Activati optiunea Limit to Single Line si experimentati modul de lucru specific
acesteia3 Dispuneti pe panou si un element indicator pentru valori alfanumerice.
In diagrama, conectati terminalele celor doua elemente. Rulati programul in modul
continuu. Observati ca textul de la elementul de control este transmis elementuluiindicator doar dupa apasarea tastei Enter "mare" Opriti rularea programului, activati
optiunea Update Value while Typing a elementului de control si rulati din nou
programul in modul continuu. Observati ca de aceasta data textul din elementul de
control este transmis elementului indicator pe masura ce este modificat, fara a se maiastepta incheierea introducerii.
1.3.8 Modificarea fontului unor elemente
44
Figura 67
Pentru a modifica fontul cu care un
element este reprezentat, se selecteazaintai elementul respectiv cu ajutorul
uneltei de selectare.
Se deschide apoi meniul de configurare
a textelor, aflat in bara de butoane, si se
selecteaza din submeniurile acestuia:
dimensiunea caracterelor (Size)
stilul textului (Style)
modul de aliniere (Justify)
culoarea (Color)
tipul de litera (Arial, Times New
Roman etc)
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
45/97
EXERCITIU
Dispuneti elemente de control si indicatoare pe panoul programului si modificati apoi
fonturile cu care acestea sunt reprezentate.
1.3.9 Ordonarea elementelor panoului si a diagramei
45
Figura 68
Unui element i se poate aplica deasemenea un tip predefinit de font
(Application, System, Dialog sau
Current). Cele trei tipuri predefinitede fonturi pot fi la randul lormodificate daca se alege una din
variantele:
comanda Font Dialog... dinmeniul de configurare a
textelor
comanda Options... din meniul
Tools, apoi se alege optiunea
Fonts
Figura 69
In situatia in care se doreste alinierea mai
multor elemente de pe panou sau a mai multor
componente ale diagramei, se selecteazaobiectele respective apoi se deschide meniul
de aliniere si se alege varianta dorita:
aliniere dupa o orizontala a limitelor
superioare, centrelor sau limitelor
inferioare
aliniere dupa o verticala a limitelor din
stanga, centrelor sau limitelor din
dreapta
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
46/97
EXERCITIU
Dispuneti elemente de control si indicatoare pe panoul programului si exersati diverse
variante de aliniere si distribuire. Suprapuneti unele dintre elemente si exersati optiunile de
46
Figura 70
Distribuirea echidistanta a unor
componente se realizeaza de asemenea prin
selectarea acestora, urmata de deschidereameniului de distribuire si alegerea uneia din
variantele:
distribuire pe verticala, cu echidistantaconsiderata intre diverse limite
superioare sau inferioare ale
elementelor
distribuire pe orizontala, cuechidistanta considerata intre diverse
limite din stanga sau din dreapta ale
elementelor
Figura 71
Atunci cand mai multe elemente sunt
suprapuse, alegerea din meniul de ordonare
a unei optiuni are drept urmare schimbareapozitiei "in adancime" a elementelor selectate:
Move Forward = un pas inainte, Move
Backward = un pas inapoi, Move To Front =trecere in planul cel mai apropiat, Move ToBack= trecere in planul cel mai indepartat
Figura 72
Selectarea mai multor componente si
alegerea optiunii Group are drept efectselectarea intregului grup atunci cand una
dintre componente este selectata
("desfiintarea" grupului se realizeaza cuoptiunea Ungroup). Selectarea uneia sau
mai multor componente si alegerea optiunii
Lock nu mai permite deplasarea sau
modificarea dimensiunilor componentelor
respective (anularea efectului se realizeazacu optiunea Unlock) Figura 73
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
47/97
schimbare a pozitiei "in adancime" Exersati optiunile de grupare a mai multor elemente si de
blocare a mutarii si dimensionarii
1.3.9 Modificarea scalei sau cursorului
Atunci cand cursorul mouse-ului este pozitionat nu deasupra unei limite ci deasupra
unei gradatii intermediare de pe scala, efectul obtinut este acela de rotire a scalei in jurulcentrului elementului.
EXERCITIU
Dispuneti pe panoul programului elemente de control si indicatoare de genul celor
mentionate mai sus si exersati asupra lor modificarile de design prezentate.
47
Daca se pozitioneaza cursorul mouse-ului deasupra unei limite a scalei unui
element de control sau indicator de tipul unui
potentiometru circular (Knob sau Dial), seapasa butonul stang al mouse-ului si se
deplaseaza mouse-ul tinand butonul apasat,
efectul obtinut este acela de modificare a
unghiului la centru pe care scala estedispusa.
Figura 74
Daca se pozitioneaza cursorul mouse-
ului in apropierea mijlocului scalei unui
element de control sau indicator de tip Meter,
iar dupa aparitia la mijlocul scalei a douasimboluri + se apasa butonul stang al mouse-
ului si se deplaseaza mouse-ul tinand butonul
apasat, efectul obtinut este acela de
modificare a latimii benzii colorate (rampa)
a scalei.
Figura 75
Cursorul unui element de control sauindicator de tip potentiometru poate fi
dimensionat daca se pozitioneaza cursorul
mouse-ului deasupra unuia din colturile sale,
iar dupa aparitia la colturi a unor simboluri"echer" se apasa butonul stang al mouse-ului
si se deplaseaza mouse-ul tinand butonul
apasat.
Figura 76
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
48/97
1.3.10 Variabile locale
Variabilele locale sunt utilizate in situatia in care este complicat (sau imposibil) sa se
efectueze o legatura direct la terminalul unui element (de exemplu, atunci cand legatura ar
trebui efectuata de-a lungul unei zone intinse din diagrama, zone in care sunt deja multe
componente). Pentru un element pot fi create mai multe variabile locale.
48
Selectarea, din meniul Create al unui
element de control sau indicator, a optiunii
Local Variable, va conduce la introducerea in
diagrama a unei entitati suplimentare, numitavariabila locala.
O variabila locala reprezinta o instanta
a elementului corespunzator: o dublura aacelui element. Daca, la un moment dat, un
element isi modifica valoarea, toate variabilele
sale locale, indiferent de locul in care suntdispuse in diagrama, capata valoarea
corespunzatoare. Figura 77
Initial o variabila locala este o dublura
a elementului din al carui meniu propriu a
fost creata, numele acelui element fiindinscris in simbolul variabilei. Terminalul
variabilei locale are culoarea corespunzatoare
tipului de date pe care le manipuleaza.Elementul pe care variabila locala il
reprezinta poate fi schimbat. Pentru aceasta,
din meniul propriu al variabilei locale,optiunea Select Item, se selecteaza numele
noului element pe care variabila locala il va
reprezenta.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
49/97
Daca, din meniul propriu al variabilei locale, se selecteaza optiunea Change To Read,variabila locala devine element de control (contur ingrosat). In aceasta situatie, variabila
locala va genera valoarea elementului pe care il reprezinta.
EXERCITIU
In panoul unei aplicatii, dispuneti un element boolean de control de tipul Vertical
Toggle Switch, unul de tipul Slide Switch si un indicator boolean Round LED.Creati o variabila locala a elementului Vertical Toggle Switch.
In diagrama, conectati terminalul elementului Slide Switch atat la terminalul elementului
Round LED cat si la variabila locala a elementului Vertical Toggle Switch.Rulati programul cu optiunea Run Continuously, actionati comutatorul Slide Switch,
observati si explicati comportamentul elementului Vertical Toggle Switch.
1.3.11 Noduri de proprietati
Selectarea, din meniul Create al unui element de control sau indicator, a optiunii
Property Node, va conduce la introducerea in diagrama a unei entitati suplimentare, numita
nod de proprietati.
49
Figura 78
In mod implicit, atunci cand este
creata, indiferent ca elementul pe care ilreprezinta este unul de control sau indicator,
o variabila locala este un element indicator
(contur subtire). In aceasta situatie, valoareacare ajunge la variabila locala este automat
capatata de elementul pe care il reprezinta
(aceasta este si o modalitate de a schimba
prin program valorile elementelor decontrol).
Figura 79
Nodul de proprietati al unuielement reprezinta o componenta prin
intermediul careia, in timpul executiei
programului, pot fi determinate (insens de "citire") sau modificate
automat (scrise) anumite proprietati ale
elementului respectiv.
In mod implicit, atunci cand
este creat, un nod de proprietati
citeste starea logica (afisat sau
ascuns) a vizibilitatiielementului pe care il
reprezinta. Deschizand meniul
propriu al nodului de proprietati, optiunea
Properties, se poate selecta
proprietatea pe care nodul oreprezinta. Printre cele mai des
utilizate proprietati se numara:
Position: pozitia elementului pe
panou, exprimata in pixeli peorizontala si pe verticala
Bounds: dimensiunile
elementului, exprimate in pixeli
Visible: daca aceasta
proprietate are valoarea False,
elementul nu mai este afisat inpanou (desi continua sa existe
si are terminal in diagrama)
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
50/97
Disabled: valoarea 0 semnifica faptul ca utilizatorul poate actiona acel element,
valoarea 1 faptul ca elementul nu poate fi actionat (este dezactivat), valoarea 2 faptul
ca elementul este dezactivat si afisat in culori "sterse"
Blinking: atunci cand aceasta proprietate are valoarea True, elementul este afisat"clipind"
Label: proprietati de formatare a textului din eticheta
Un nod de proprietati poate fi trecut din starea implicita de citire in starea de scriere, prinselectarea optiunii Change To Write din meniul sau propriu. In starea de scriere, un nod de
proprietati poate primi valori care vor modifica proprietatile elementului corespunzator. Un
nod de proprietati poate fi dimensionat, pentru a gestiona mai multe proprietati ale elementului pe care il reprezinta. Atunci cand contine mai multe proprietati, acestea pot fi in mod
independent de scriere sau de citire. Elementul reprezentat de catre un nod de proprietati poate
fi schimbat prin selectarea din meniul propriu al nodului a optiunii Link To, similar optiunii
Select Item din cazul variabilelor locale. In diagrama pot exista mai multe noduri deproprietati ale aceluiasi element.
EXERCITII
1 Dispuneti in panoul unei noi aplicatii un element de control boolean de tipul Vertical
Toggle Switch si un element de control numeric. Creati un nod de proprietati alelementului numeric, treceti nodul respectiv in starea de scriere si conectati la el
50
Figura 80
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
51/97
terminalul elementului boolean. Rulati programul cu optiunea Run Continuously,
actionati comutatorul boolean, observati si explicati efectul.2 In aceeasi aplicatie, dispuneti pe panou un element de tipul String Control, creati un
nod de proprietati pentru acesta, treceti nodul respectiv in starea de scriere, selectati
pentru el proprietatea Disabled si legati la nod terminalul elementului de control
numeric. Rulati programul cu optiunea Run Continuously si actionati comutatorul boolean astfel incat elementul de control numeric sa fie vizibil. Introduceti in
elementul numeric valoarea 0 si introduceti un text in elementul String. Introduceti inelementul numeric valoarea 1 si incercati sa modificati textul din elementul String.
Introduceti in elementul numeric valoarea 2, observati si explicati efectul.
TEMA
1. Construiti un program pentru determinarea solutiilor unei ecuatii de gradul al doilea.
Pentru afisarea radacinilor, programul va dispune de doua perechi de indicatoare numerice
separate: una cu mod de reprezentare real, cealalta cu mod de reprezentare complex.Fiecare din cele doua perechi de elemente indicatoare va fi vizibila sau nu, in functie de natura
radacinilor ecuatiei.
2. Construiti un program in care utilizatorul sa poata alege, prin intermediul unui comutator
boolean, tipul de ecuatie pe care doreste sa o rezolve: de gradul I sau de gradul al II-lea.Elementul de control numeric de la care se va introduce coeficientul lui x2 va fi vizibil doar in
cazul ecuatiei de gradul al II-lea.
In cazul ecuatiei de gradul I, elementul respectiv va deveni invizibil si va capata valoarea 0.
51
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
52/97
3. In aceleasi conditii ca la tema nr. 2, atunci cand se opteaza pentru rezolvarea unei ecuatii de
gradul I, elementul de control numeric pentru coeficientul lui x2 sa capete valoarea 0, sa fiedezactivat (utilizatorul sa nu mai poata modifica valoarea) si sa fie afisat in culori sterse.
4. Sa se realizeze un program pentru determinarea solutiilor unei ecuatii de gradul al doilea in
care elementele de control pentru introducerea coeficientilor ecuatiei sa aiba valoarea implicitaNaN.In cazul in care utilizatorul nu introduce o valoare numerica in unul din elementele respective,
elementul sa clipeasca pentru a semnaliza eroarea.
5. Sa se realizeze un program in care, prin intermediul a doua elemente de control numerice
(un Vertical Pointer Slide si un Horizontal Pointer Slide), utilizatorul sa poata specificapozitia in panou a unui element indicatorRound LED.
1.4 Structuri de programare
1.4.1 Inserarea structurilor in diagrama
52
Structurile de programare suntcomponente ale diagramei ale caror simboluri se
gasesc in subpaleta Structures a paletei de
functii. In diagrama, o structura de programare
urmeaza sa contina o serie de terminale deelemente, simboluri de functii si valori constante
ce vor forma un flux de date in interiorul
structurii. Daca, in momentul in care structuraeste aleasa din subpaleta Structures, o parte din
elementele pe care urmeaza sa le contina se afla
deja dispuse in diagrama, chenarul structuriipoate fi trasat in jurul componentelor respective
(dupa selectarea din subpaleta, se apasa butonul
stang al mouse-ului in unul din colturile viitorului
chenar si se deplaseaza mouse-ul tinand butonulapasat: pe masura ce mouse-ul este deplasat, se
traseaza automat un contur cu linie intrerupta,
contur ce va fi inlocuit de catre structura in
momentul eliberarii butonului mouse-ului)
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
53/97
Dupa dispunerea in diagrama, conturul structurii poate fi deplasat sau dimensionat. Atunci
cand o structura este deplasata, toate elementele din interiorul sau se deplaseaza odata cu ea.Elemente din afara structurii pot fi mutate in interiorul acesteia, iar elemente din interior pot fi
mutate in afara structurii. Daca, prin dimensionare sau deplasare, o structura ajunge sa se
suprapuna cu alte elemente din diagrama, acestea nu vor fi incluse in structura.
EXERCITIU
Exersati inserarea unei structuri oarecare (de exemplu Sequence) indiagrama, trasand de la inceput chenarul sau in jurul unui grup deelemente. Mutati elemente din structura in afara sa si aduceti elemente dinexterior in interiorul structurii. Deplasati si dimensionati structura.
1.4.2 Structura secventiala (Sequence)
53
Figura 81
Atunci cand dispune de mai multe ferestre, fiecare
dintre acestea cu propriul flux de date, o structura
Sequence executa in ordine ferestrele respective.
De exemplu, in figurile de mai jos sunt reprezentate doua
ferestre ale unei structuri Sequence. Structura va executaintai fereastra cu indicele 0, trimitandu-se valoarea de laelementul de control Slide la elementul indicator Meter,
apoi va executa fereastra 1 ce are ca efect transmiterea
valorii booleene intre cele doua elemente.
Atunci cand este dispusa in diagrama, o structura
Sequence contine o singura fereastra, aceasta fiindtotodata si fereastra curenta (vizibila).
Deschizand meniul propriu al structurii si alegand una din
optiunile Add Frame After sau Add Frame Before, sepoate adauga o fereastra dupa sau inaintea celei curente.
Daca o structura Sequence contine mai mult de o
fereastra, atunci ferestrele primesc indici (numere de
ordine) incepand cu 0, iar pe latura superioara a conturuluistructurii apare un selector prin intermediul caruia se
poate trece de la o fereastra la alta.
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview
54/97
Daca, in una din ferestrele structurii, se conecteaza o valoare la variabila locala,
fereastra respectiva devine fereastra sursa pentru acea variabila. In acea fereastra, simbolulvariabilei locale contine o fereastra indreptata spre exteriorul structurii. In ferestrele anterioare
ferestrei sursa, simbolul variabilei locale devine hasurat, semn ca valoarea variabilei locale nu
este accesibila in acele ferestre.
54
Figura 82
Trecerea la o alta fereastra se poate realiza fie prin
intermediul celor doua sageti de la capetele selectorului,
fie apasand pe sageata din partea dreapta (indreptata injos) si selectand indicele ferestrei dorite din lista care se
desfasoara. La un moment dat, este vizibil doar fluxul din
fereastra curenta a unei structuri Sequence.
Se poate crea o dublura a ferestrei curente,
selectand din meniul propriu al structurii optiunea
Duplicate Frame. Fereastra curenta poate fi stearsa, cuoptiunea Delete This Frame. Atunci cand o structura
Sequence contine cel putin doua ferestre, ordinea
acestora poate fi schimbata: se modifica indiceleferestrei curente, selectand optiunea Make This Frame,
apoi noul indice. Atunci cand se doreste transferul unei
valori intre doua ferestre ale unei structuri Sequence,
prin selectarea optiunii Add Sequence Local se dispunepe conturul structurii o variabila locala a acesteia (sub
forma unui patrat galben).Figura 83
-
8/3/2019 2011-2012_Introducere in Mediul de Program Are Labview