laborator instrumentatie virtuala_opt

45
Îndrumar LabVIEW 1 1 LUCRAREA NR. 1 INTRODUCERE ÎN LabVIEW 1.Obiectivele lucrării : Însuşirea modului de utilizare a celor mai importante componente ale mediului de programare grafic LabVIEW. 2.Aparatura şi suporturile utilizate: a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW. 3.Breviar 3.1. Definiţie. Caracteristici LabVIEW este un mediu de programare grafic bazat pe nucleul de limbaj G (limbaj grafic), destinat în special construirii de aplicaţii pentru controlul şi achiziţia de date, analiza acestora şi prezentarea rezultatelor. Menţionam câteva dintre cele mai importante caracteristici ale acestui mediu: - rezolvă automat majoritatea problemelor legate de gestionarea resurselor hardware şi comunicaţia cu sistemul de operare, iar în acest fel utilizatorul se poate concentra asupra problemei concrete pe care o are de rezolvat şi nu asupra funcţionării calculatorului. Ca de exemplu, aproape toate nodurile (funcţiile), precum şi graficele, sunt polimorfice, adică se adaptează la orice tip de date, fie că sunt valori reale simple sau structuri de date; - limbajul grafic este mult mai compact, diagrama conţinută într-o fereastră conţine mai multă informaţie decât un text şi este mai uşor de citit şi de înţeles, iar desenarea unei diagrame este mai rapidă decât scrierea unui text echivalent; - în limbajul grafic paralelismul este natural, astfel încât scrierea de programe care efectuează procesarea paralelă a datelor este la fel de simplă ca şi pentru procesarea secvenţială; - permite lucrul în reţea, pe mai multe calculatoare, prin intermediul TCP/IP şi UDP, dispunând de numeroase funcţii pentru lucrul în reţele locale (de arie mare) sau prin Internet; - conţine multe aplicaţii prefabricate, din diverse domenii, împreună cu codul G corespunzător, care pot fi folosite direct, pot fi luate ca exemple didactice de programare sau pot fi modificate de utilizator pentru a satisface cât mai bine necesităţile concrete de lucru. Toate soluţiile LabVIEW lucrează implicit în regim multithreading, fără a necesita o programare suplimentară. În acest fel, se poate reduce semnificativ timpul necesar punerii la punct a aplicaţiilor. LabVIEW este disponibil pentru o gamă largă de sisteme de operare: Windows 2000/NT/XP/Me/9x, Mac OS, Sun Solaris, Linux.

Upload: vlad-flavius

Post on 18-Jan-2016

71 views

Category:

Documents


0 download

DESCRIPTION

a

TRANSCRIPT

Page 1: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

1

1

LUCRAREA NR. 1

INTRODUCERE ÎN LabVIEW

1.Obiectivele lucrării :

Însuşirea modului de utilizare a celor mai importante componente ale mediului de programare grafic LabVIEW.

2.Aparatura şi suporturile utilizate:

a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW. 3.Breviar

3.1. Definiţie. Caracteristici LabVIEW este un mediu de programare grafic bazat pe nucleul de limbaj G (limbaj

grafic), destinat în special construirii de aplicaţii pentru controlul şi achiziţia de date, analiza acestora şi prezentarea rezultatelor. Menţionam câteva dintre cele mai importante caracteristici ale acestui mediu: - rezolvă automat majoritatea problemelor legate de gestionarea resurselor hardware şi comunicaţia cu sistemul de operare, iar în acest fel utilizatorul se poate concentra asupra problemei concrete pe care o are de rezolvat şi nu asupra funcţionării calculatorului. Ca de exemplu, aproape toate nodurile (funcţiile), precum şi graficele, sunt polimorfice, adică se adaptează la orice tip de date, fie că sunt valori reale simple sau structuri de date; - limbajul grafic este mult mai compact, diagrama conţinută într-o fereastră conţine mai multă informaţie decât un text şi este mai uşor de citit şi de înţeles, iar desenarea unei diagrame este mai rapidă decât scrierea unui text echivalent; - în limbajul grafic paralelismul este natural, astfel încât scrierea de programe care efectuează procesarea paralelă a datelor este la fel de simplă ca şi pentru procesarea secvenţială; - permite lucrul în reţea, pe mai multe calculatoare, prin intermediul TCP/IP şi UDP, dispunând de numeroase funcţii pentru lucrul în reţele locale (de arie mare) sau prin Internet; - conţine multe aplicaţii prefabricate, din diverse domenii, împreună cu codul G corespunzător, care pot fi folosite direct, pot fi luate ca exemple didactice de programare sau pot fi modificate de utilizator pentru a satisface cât mai bine necesităţile concrete de lucru.

Toate soluţiile LabVIEW lucrează implicit în regim multithreading, fără a necesita o programare suplimentară. În acest fel, se poate reduce semnificativ timpul necesar punerii la punct a aplicaţiilor.

LabVIEW este disponibil pentru o gamă largă de sisteme de operare: Windows 2000/NT/XP/Me/9x, Mac OS, Sun Solaris, Linux.

Page 2: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

2

2

3.2. Lansarea mediului de programare grafică LabVIEW

Deschiderea unei noi aplicaţii

Pentru a lansa mediul de programare grafica LabVIEW se apasă butonul START şi se apelează opţiunea Programs\ National Instruments LabVIEW 7.0. După apelarea programului va apărea fereastra din figura 1.

Figura 1. Fereastra principală LabView.

Aplicaţiile (programele) realizate în LabVIEW poartă denumirea de Instrumente

Virtuale (în engleză, Virtual Instruments, prescurtat VI). Denumirea provine de la faptul că, în primele sale versiuni, LabVIEW a fost strict dedicat pentru realizarea unor programe de monitorizare a proceselor. Programele respective înlocuiau o serie de aparate şi instrumente electronice - de unde şi motto-ul corporaţiei National Instruments: The software is the instrument – primind astfel denumirea de Instrumente Virtuale.

3.3. Ferestrele principale ale unei aplicaţii

După apelarea opţiunii File\New VI sau a opţiunii New\Blank VI vor apărea

ferestrele din figura 2.

Figura 2. Panoul şi diagrama din LabVIEW.

Page 3: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

3

3

• Panoul (Front Panel) reprezintă interfaţa grafică cu utilizatorul, fereastra pe care utilizatorul o va vedea atunci când va accesa aplicaţia realizată. Prin intermediul elementelor de pe panou, aplicaţia primeşte datele de intrare şi afişează apoi datele de ieşire ce au rezultat în urma rulării .

• Diagrama (Block Diagram) este fereastra în care programatorul descrie algoritmul după care aplicaţia va efectua calculele şi raţionamentele necesare pentru prelucrarea informaţiilor. În majoritatea cazurilor, după ce programatorul a realizat o aplicaţie şi a livrat-o unui utilizator, acesta din urmă nu mai are acces la diagramă .

Elementele de control sunt acele componente ale panoului prin intermediul cărora utilizatorul poate transmite date de intrare către program .

Elementele indicatoare sunt acele componente ale panoului prin intermediul cărora programul afişează datele de ieşire calculate în urma rulării sale .

Paleta de controale este o fereastră ce poate apare doar atunci când se lucrează în cadrul panoului şi conţine sub-palete cu elemente de control şi indicatoare de diverse tipuri . Afişarea paletei de controale se poate efectua în două moduri: • apăsând butonul din dreapta al mouse-ului atunci când cursorul acestuia este într-o zonă liberă a panoului; • selectând, din meniul Windows, comanda Show Controls Palette.

În primul caz, sub-paletele se deschid automat atunci când cursorul mouse-ului trece pe deasupra lor iar paleta ramâne vizibilă doar până la selectarea unui element .

În al doilea caz, o sub-paleta se deschide (înlocuind paleta de controale) doar când se face un clic pe simbolul său. Paleta ramâne vizibilă şi după selectarea unui element.

Figura 3. Paleta de controale.

Dispunerea elementelor pe panou :

a) Se selectează elementul dorit din paleta de controale; b) După selectarea elementului, se deplasează cursorul mouse-ului până în poziţia de pe panou în care se doreşte dispunerea .

Atât timp cât cursorul mouse-ului este deplasat pe panou, elementul va fi reprezentat doar prin conturul său şi al etichetei .

Când se ajunge în poziţia dorită, se face clic cu unul dintre butoanele mouse-ului; c) Se realizează astfel dispunerea elementului pe panou, cu o etichetă implicită care intră automat în modul de editare .

Page 4: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

4

4

Se poate începe imediat introducerea textului dorit în etichetă; d) Dacă introducerea textului dorit în eticheta nu s-a efectuat imediat după dispunerea elementului pe panou şi eticheta implicită a ieşit din modul de editare, se poate reveni în acest mod prin selectarea uneltei de editare texte din cadrul paletei de unelte şi apoi printr-un clic pe eticheta respectivă;

Paleta de unelte este o fereastră care poate apare atât în cadrul panoului cât şi al diagramei .

Afişarea paletei de unelte se poate efectua selectând, din meniul Windows, comanda Show Tools Pallete .

Figura 4. Paleta de unelte.

Paleta de funcţii este o fereastră ce poate apare doar atunci când se lucrează în cadrul diagramei şi conţine sub-palete cu diverse categorii de funcţii, proceduri sau structuri specifice de programare .

Afişarea paletei de funcţii se poate efectua în două moduri: • apăsând butonul din dreapta al mouse-ului atunci când cursorul acestuia este într-o zonă liberă a diagramei; • selectând, din meniul Windows, comanda Show Functions Palette.

În primul caz, sub-paletele se deschid automat atunci când cursorul mouse-ului trece pe deasupra lor iar paleta ramâne vizibilă doar până la selectarea unei funcţii.

În al doilea caz, o sub-paletă se deschide (înlocuind paleta de funcţii) doar când se face un clic pe simbolul său. Paleta ramâne vizibilă şi după selectarea unei funcţii.

Inserarea simbolurilor de funcţii în diagramă : a) Dispunerea unei funcţii în diagramă începe cu selectarea simbolului corespunzător din paleta de funcţii ; b) După selectarea simbolului funcţiei, se deplasează cursorul mouse-ului până în poziţia din diagrama în care se doreşte dispunerea.

Atât timp cât cursorul mouse-ului este deplasat, simbolul funcţiei va fi reprezentat împreună cu terminalele corespunzătoare datelor proprii de intrare şi de ieşire; c) Dacă, în timpul deplasării, simbolul funcţiei este trecut suficient de aproape de un terminal sau de o zonă a fluxului de date la care se poate efectua o legatură, acea legatură este stabilită automat.

Dacă simbolul funcţiei este îndepărtat, în cursul deplasării, de zona sau terminalul respectiv, legatura stabilită automat dispare.

Dacă nu se doreşte efectuarea automată a unei legături, se apasă tasta Space în timp ce butonul mouse-ului este apăsat;

Page 5: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

5

5

d) Când simbolul funcţiei ajunge în poziţia dorită, se face clic cu unul dintre butoanele mouse-ului.

Dacă în acel moment există o legatură stabilită automat, legatura respectivă se păstrează.

Figura 5. Paleta de funcţii.

3.4. Principalele moduri de rulare a unei aplicaţii

Barele de butoane ale panoului şi diagramei conţin o serie de elemente ce permit

stabilirea modului de rulare a unui program .

Figura 6. Bara de butoane a panoului şi a diagramei.

3.5. Fereastra Help Atunci când utilizatorul deschide paleta de funcţii şi navighează prin subpaletele

acesteia, în fereastra Help apar informaţii referitoare la funcţia corespunzătoare simbolului deasupra căruia este poziţionat cursorul mouse-ului .

De asemenea, dacă un simbol de funcţie a fost deja dispus în diagramă iar cursorul mouse-ului este poziţionat deasupra sa, în fereastra Help apar informaţii referitoare la funcţia respectivă .

Page 6: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

6

6

Figura 7. Help-ul mediului LabVIEW.

4. Mod de lucru

a) Se alimentează sistemul cu tensiune; b) Se lansează mediul LabVIEW; c) Se identifică principalele elemente componente ale mediului de programare grafic LabVIEW utilizând breviarul prezentat anterior.

Page 7: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

7

7

LUCRAREA NR. 1

INTRODUCERE ÎN LabVIEW

1.Obiectivele lucrării :

Însuşirea modului de utilizare a celor mai importante componente ale mediului de programare grafic LabVIEW.

2.Aparatura şi suporturile utilizate:

a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW. 3.Breviar

3.1. Definiţie. Caracteristici LabVIEW este un mediu de programare grafic bazat pe nucleul de limbaj G (limbaj

grafic), destinat în special construirii de aplicaţii pentru controlul şi achiziţia de date, analiza acestora şi prezentarea rezultatelor. Menţionam câteva dintre cele mai importante caracteristici ale acestui mediu: - rezolvă automat majoritatea problemelor legate de gestionarea resurselor hardware şi comunicaţia cu sistemul de operare, iar în acest fel utilizatorul se poate concentra asupra problemei concrete pe care o are de rezolvat şi nu asupra funcţionării calculatorului. Ca de exemplu, aproape toate nodurile (funcţiile), precum şi graficele, sunt polimorfice, adică se adaptează la orice tip de date, fie că sunt valori reale simple sau structuri de date; - limbajul grafic este mult mai compact, diagrama conţinută într-o fereastră conţine mai multă informaţie decât un text şi este mai uşor de citit şi de înţeles, iar desenarea unei diagrame este mai rapidă decât scrierea unui text echivalent; - în limbajul grafic paralelismul este natural, astfel încât scrierea de programe care efectuează procesarea paralelă a datelor este la fel de simplă ca şi pentru procesarea secvenţială; - permite lucrul în reţea, pe mai multe calculatoare, prin intermediul TCP/IP şi UDP, dispunând de numeroase funcţii pentru lucrul în reţele locale (de arie mare) sau prin Internet; - conţine multe aplicaţii prefabricate, din diverse domenii, împreună cu codul G corespunzător, care pot fi folosite direct, pot fi luate ca exemple didactice de programare sau pot fi modificate de utilizator pentru a satisface cât mai bine necesităţile concrete de lucru.

Toate soluţiile LabVIEW lucrează implicit în regim multithreading, fără a necesita o programare suplimentară. În acest fel, se poate reduce semnificativ timpul necesar punerii la punct a aplicaţiilor.

LabVIEW este disponibil pentru o gamă largă de sisteme de operare: Windows 2000/NT/XP/Me/9x, Mac OS, Sun Solaris, Linux.

Page 8: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

8

8

3.2. Lansarea mediului de programare grafică LabVIEW

Deschiderea unei noi aplicaţii

Pentru a lansa mediul de programare grafica LabVIEW se apasă butonul START şi se apelează opţiunea Programs\ National Instruments LabVIEW 7.0. După apelarea programului va apărea fereastra din figura 1.

Figura 1. Fereastra principală LabView.

Aplicaţiile (programele) realizate în LabVIEW poartă denumirea de Instrumente

Virtuale (în engleză, Virtual Instruments, prescurtat VI). Denumirea provine de la faptul că, în primele sale versiuni, LabVIEW a fost strict dedicat pentru realizarea unor programe de monitorizare a proceselor. Programele respective înlocuiau o serie de aparate şi instrumente electronice - de unde şi motto-ul corporaţiei National Instruments: The software is the instrument – primind astfel denumirea de Instrumente Virtuale.

3.3. Ferestrele principale ale unei aplicaţii

După apelarea opţiunii File\New VI sau a opţiunii New\Blank VI vor apărea

ferestrele din figura 2.

Figura 2. Panoul şi diagrama din LabVIEW.

Page 9: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

9

9

• Panoul (Front Panel) reprezintă interfaţa grafică cu utilizatorul, fereastra pe care utilizatorul o va vedea atunci când va accesa aplicaţia realizată. Prin intermediul elementelor de pe panou, aplicaţia primeşte datele de intrare şi afişează apoi datele de ieşire ce au rezultat în urma rulării .

• Diagrama (Block Diagram) este fereastra în care programatorul descrie algoritmul după care aplicaţia va efectua calculele şi raţionamentele necesare pentru prelucrarea informaţiilor. În majoritatea cazurilor, după ce programatorul a realizat o aplicaţie şi a livrat-o unui utilizator, acesta din urmă nu mai are acces la diagramă .

Elementele de control sunt acele componente ale panoului prin intermediul cărora utilizatorul poate transmite date de intrare către program .

Elementele indicatoare sunt acele componente ale panoului prin intermediul cărora programul afişează datele de ieşire calculate în urma rulării sale .

Paleta de controale este o fereastră ce poate apare doar atunci când se lucrează în cadrul panoului şi conţine sub-palete cu elemente de control şi indicatoare de diverse tipuri . Afişarea paletei de controale se poate efectua în două moduri: • apăsând butonul din dreapta al mouse-ului atunci când cursorul acestuia este într-o zonă liberă a panoului; • selectând, din meniul Windows, comanda Show Controls Palette.

În primul caz, sub-paletele se deschid automat atunci când cursorul mouse-ului trece pe deasupra lor iar paleta ramâne vizibilă doar până la selectarea unui element .

În al doilea caz, o sub-paleta se deschide (înlocuind paleta de controale) doar când se face un clic pe simbolul său. Paleta ramâne vizibilă şi după selectarea unui element.

Figura 3. Paleta de controale.

Dispunerea elementelor pe panou :

a) Se selectează elementul dorit din paleta de controale; b) După selectarea elementului, se deplasează cursorul mouse-ului până în poziţia de pe panou în care se doreşte dispunerea .

Atât timp cât cursorul mouse-ului este deplasat pe panou, elementul va fi reprezentat doar prin conturul său şi al etichetei .

Când se ajunge în poziţia dorită, se face clic cu unul dintre butoanele mouse-ului; c) Se realizează astfel dispunerea elementului pe panou, cu o etichetă implicită care intră automat în modul de editare .

Page 10: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

10

10

Se poate începe imediat introducerea textului dorit în etichetă; d) Dacă introducerea textului dorit în eticheta nu s-a efectuat imediat după dispunerea elementului pe panou şi eticheta implicită a ieşit din modul de editare, se poate reveni în acest mod prin selectarea uneltei de editare texte din cadrul paletei de unelte şi apoi printr-un clic pe eticheta respectivă;

Paleta de unelte este o fereastră care poate apare atât în cadrul panoului cât şi al diagramei .

Afişarea paletei de unelte se poate efectua selectând, din meniul Windows, comanda Show Tools Pallete .

Figura 4. Paleta de unelte.

Paleta de funcţii este o fereastră ce poate apare doar atunci când se lucrează în cadrul diagramei şi conţine sub-palete cu diverse categorii de funcţii, proceduri sau structuri specifice de programare .

Afişarea paletei de funcţii se poate efectua în două moduri: • apăsând butonul din dreapta al mouse-ului atunci când cursorul acestuia este într-o zonă liberă a diagramei; • selectând, din meniul Windows, comanda Show Functions Palette.

În primul caz, sub-paletele se deschid automat atunci când cursorul mouse-ului trece pe deasupra lor iar paleta ramâne vizibilă doar până la selectarea unei funcţii.

În al doilea caz, o sub-paletă se deschide (înlocuind paleta de funcţii) doar când se face un clic pe simbolul său. Paleta ramâne vizibilă şi după selectarea unei funcţii.

Inserarea simbolurilor de funcţii în diagramă : a) Dispunerea unei funcţii în diagramă începe cu selectarea simbolului corespunzător din paleta de funcţii ; b) După selectarea simbolului funcţiei, se deplasează cursorul mouse-ului până în poziţia din diagrama în care se doreşte dispunerea.

Atât timp cât cursorul mouse-ului este deplasat, simbolul funcţiei va fi reprezentat împreună cu terminalele corespunzătoare datelor proprii de intrare şi de ieşire; c) Dacă, în timpul deplasării, simbolul funcţiei este trecut suficient de aproape de un terminal sau de o zonă a fluxului de date la care se poate efectua o legatură, acea legatură este stabilită automat.

Dacă simbolul funcţiei este îndepărtat, în cursul deplasării, de zona sau terminalul respectiv, legatura stabilită automat dispare.

Dacă nu se doreşte efectuarea automată a unei legături, se apasă tasta Space în timp ce butonul mouse-ului este apăsat;

Page 11: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

11

11

d) Când simbolul funcţiei ajunge în poziţia dorită, se face clic cu unul dintre butoanele mouse-ului.

Dacă în acel moment există o legatură stabilită automat, legatura respectivă se păstrează.

Figura 5. Paleta de funcţii.

3.4. Principalele moduri de rulare a unei aplicaţii

Barele de butoane ale panoului şi diagramei conţin o serie de elemente ce permit

stabilirea modului de rulare a unui program .

Figura 6. Bara de butoane a panoului şi a diagramei.

3.5. Fereastra Help Atunci când utilizatorul deschide paleta de funcţii şi navighează prin subpaletele

acesteia, în fereastra Help apar informaţii referitoare la funcţia corespunzătoare simbolului deasupra căruia este poziţionat cursorul mouse-ului .

De asemenea, dacă un simbol de funcţie a fost deja dispus în diagramă iar cursorul mouse-ului este poziţionat deasupra sa, în fereastra Help apar informaţii referitoare la funcţia respectivă .

Page 12: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

12

12

Figura 7. Help-ul mediului LabVIEW.

4. Mod de lucru

a) Se alimentează sistemul cu tensiune; b) Se lansează mediul LabVIEW; c) Se identifică principalele elemente componente ale mediului de programare grafic LabVIEW utilizând breviarul prezentat anterior.

Page 13: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

13

13

LUCRAREA NR.2

FUNCŢII NUMERICE ÎN LabVIEW

1. Obiectivele lucrării

a) Însuşirea modului de utilizare a funcţiilor numerice ale mediului de programare graphicLabVIEW.

b) Realizarea pricipalelor operaţii aritmetice,trigonometrice,logaritmice,complexe şi logice.

2.Aparatura şi suporturile utilizate:

a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW.

3.Breviar

Funcţiile numerice se găsesc în paleta de funcţii ale diagramei conform figurii 1.

Figura 1. Locaţiile funcţiilor numerice în paleta de funcţii.

La trecerea mouse-ului deasupra pictogramei încercuite cu roşu va apărea o paletă cu

funcţii numerice ca în figura 2.

Page 14: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

14

14

Figura 2. Funcţiile numerice ale mediului LabVIEW.

Prezentăm în continuare unele din cele mai utilizate funcţii ale acestei palete şi a subpaletelor incluse: - adunare - înmulţire

- scădere - împărţire

Acestea sunt funcţii polimorfice, acceptând la intrare valorile x şi y care pot aparţine mai multor tipuri de date (scalari, matrici, şiruri) rezultatul aparţinând aceleaşi clase.

Rezultatul operaţiei x/y este exprimat de un număr cu punct flotant dublă precizie dacă x şi y sunt întregi, sau cea mai cuprinzătoare reprezentare pentru x şi y când acestea nu sunt întregi sau sunt de tipuri diferite. - incrementare - decrementare

Acestea sunt funcţii polimorfice care adună respectiv scad 1 la valoarea de intrare.

- adunare matriceală - înmulţire matriceală

Acestea realizează suma, respectiv produsul tuturor elementelor din matricea numerică de la intrare. - valoarea absolută - signum

Funcţia polimorfică valoare absolută returnează la ieşire valoarea absolută a intrării x

care poate fi atât scalar cât şi matrice , şir, etc, pe când funcţia signum ne va da la ieşire 1 când valoarea de intrare este mai mare decât 0, 0 pentru o intrare egală cu 0, -1 pentru o intrare mai mică ca 0.

Page 15: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

15

15

- rotunjire la întreg - rotunjire la +∞

- rotunjire la -∞

În cadrul programului LabVIEW se poate face rotunjirea unei valori fie la cel mai apropiat număr întreg (atât 1.5 cât şi 2.5 se rotunjesc la 2) cât şi la infinit cu + sau – (3.8 rotunjit la +INF va fi 4, iar rotunjit la –INF va fi 3). - radical - reciprocă

Funcţia radical (sqrt) calculează rădăcina pătrată a valorii de la intrare. Dacă x este

negativ, rezultatul afişat va fi “NaN” cu excepţia cazului în care x este număr complex. În cazul în care x este un întreg, ieşirea va fi de tipul număr cu punct flotant dublă precizie.

Reciproca îl divide pe 1 cu intrarea x. Dacă x=0, 1/x va fi infinit. - generator de numere aleatoare

Produce la ieşire un număr, exclusiv între 0 şi 1, în format număr cu punct flotant

dublă precizie. Distribuţia este uniformă. - constantă numerică - negaţia

Funcţia negaţie este o funcţie polimorfică care neagă valoarea intrării. Funcţia constantă se utilizează la introducerea valorilor numerice necesare în diagrama

bloc. Valoarea se setează dând dublu clic în câmpul respectiv şi introducând cifrele de la tastatură. Dacă se introduce o valoare tip număr cu punct flotant, automat acesta va fi reprezentat ca fiind şi dublă precizie. Dacă se introduce un întreg, acesta va fi considerat tip întreg lung. Constantelor li se pot adăuga etichete dar nu pot fi modificate în timpul funcţionării instrumentelor virtuale. - funcţia aritmetică compusă - expresia compusă

După cum sugerează şi numele, funcţia aritmetică compusă execută diverse operaţii aritmetice (adunare, înmulţire,ŞI,SAU) asupra a două sau mai multe numere (scalari, şiruri, expresii booleene). Operaţiile se aleg executând clic dreapta pe funcţie şi selectând “Change Mode”. De asemenea se poate seta fiecare intrare în parte să fie normală sau inversată (echivalentul negării pentru operaţiile logice).

Expresia compusă se utilizează la calculul expresiilor sau a ecuaţiilor care deşi conţin o singură variabilă (x) sunt stufoase sau complicate. Intrarea x poate fi teoretic de orice tip.

Page 16: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

16

16

În cadrul paletei cu funcţii numerice există mai multe subpalete : paleta cu funcţii de conversie, paleta cu funcţii trigonometrice, paleta cu funcţii logaritmice, paleta cu funcţii pentru numere complexe şi paleta cu constante numerice adiţionale. Paleta cu funcţii trigonometrice este prezentată în figura 3.

Figura 3. Funcţiile trigonometrice ale mediului LabVIEW.

şi conţine următoarele funcţii : sinus, cosinus, tangentă, sinus hiperbolic, cosinus hiperbolic, tangantă hiperbolică, cosecantă, secantă, cotangentă, arcsinus, arccosinus, arctangentă etc. Paleta cu funcţii logaritmice este prezentată în figura 4.

Figura 4. Funcţiile logaritmice ale mediului LabVIEW.

şi conţine următoarele funcţii : ex, 10x, 2x, xy, ln(x), log(x), log2(x), logx(y) etc. Paleta cu funcţii pentru numere complexe este prezentată în figura 5.

Page 17: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

17

17

Figura 5. Funcţiile pentru numere complexe ale mediului LabVIEW.

şi conţine următoarele funcţii : o funcţie pentru obţinerea conjugatei, o funcţie pentru transformarea din polar în complex, o funcţie pentru transformarea din complex în polar, o funcţie pentru crearea unui număr complex din partea reală şi cea imaginară şi o funcţie pentru extragerea părţii reale şi a celei imaginare dintr-un număr complex.

Paleta cu constante numerice adiţionale este cea din figura 6.

Figura 6. Constante numerice adiţionale ale mediului LabVIEW.

Aceasta conţine o serie de constante uzuale predefinite din care amintim : pi cu

multipli şi submultipli uzuali, numărul e, +/-∞, logaritmul natural al lui pi, 2, 10, etc.

La trecerea mouse-ului deasupra pictogramei încercuite cu negru din figura 1 va apărea o paletă cu funcţiile logice din figura 7.

Page 18: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

18

18

Figura 7. Funcţiile logice ale mediului LabVIEW.

Aceasta conţine următoarele funcţii logice : ŞI, SAU, SAU EXCLUSIV, NEGAŢIE,

ŞI NEGAT, SAU NEGAT, SAU EXCLUSIV NEGAT etc. La trecerea mouse-ului deasupra pictogramei încercuite cu albastru din figura 1 va

apărea o paletă cu funcţii pentru realizarea comparaţiilor ca în figura 8.

Figura 8. Funcţiile pentru realizarea comparaţiilor ale mediului LabVIEW.

Aceasta conţine funcţii pentru realizarea următoarelor comparaţii : egalitate,

inegalitate, mai mare, mai mic, mai mare sau egal, mai mic sau egal, egal cu 0, diferit de 0, mai mare ca 0, mai mic ca 0, mai mare sau egal cu 0, mai mic sau egal cu 0 etc. 4. Modul de lucru

a) Se alimentează sistemul cu tensiune; b) Se lansează mediul LabVIEW; c) Se implementează programul P1 descris în prezenta lucrare.

Programul P1 rezolvă o ecuaţie de gradul al II-lea. Pe panou se vor pune următoarele elemente evidenţiate în figura 9 :

- trei obiecte Num Ctrl pentru introducerea celor trei coeficienţi ai ecuaţiei: a, b, c; - şapte obicte Num Ind pentru afişarea lui ∆, a soluţiilor reale ale ecuaţiei, respectiv a

părţilor reale şi imaginare ale soluţiilor complexe ele ecuaţiei; - patru obiecte String Ind pentru afişarea tipului soluţiei, pentru a permite afişarea

soluţiilor complexe şi a unui mesaj care să indice existenţa/inexistenţa unei ecuaţii de gradul al II-lea; - trei leduri care ajută la indicarea tipului soluţiei şi a tipului mesajului.

Page 19: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

19

19

Figura 9. Elementele de pe panou corespunzătoare programului P1.

În diagramă se vor introduce următoarele funcţii evidenţiate în figura 10 :

- funcţiile Negate, Add, Substract, Multiply, Divide, Square Root, Greater Or Equal To 0?, Greater Then 0?, Not Equal To 0?, Not, Select utilizate pentru calculul soluţiilor ecuaţiei; - constante numerice şi de tip şir de caractere utilizate la calculul soluţiilor şi la

reprezentarea acestora.

Figura 10. Diagrama programului P1.

Page 20: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

20

20

Figura 11. Rezultatele execuţiei programului P1.

5. Exerciţii

1) Să se realizeze un program în LabVIEW care să calculeze expresia

x

xx

e

xxE

)12ln()(

sin+⋅

= .

2) Să se realizeze un program care să simuleze numeric aruncarea a două zaruri.

Page 21: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

21

21

LUCRAREA NR. 3

TABLOURI ÎN LabVIEW

1. Obiectivele lucrării

a) Însuşirea modului de operare cu tablouri în mediul de programare grafic LabVIEW. b) Cunoaşterea principalelor funcţii utilizate în lucrul cu tablouri.

2. Aparatura şi suporturile utilizate:

a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW.

3.Breviar

3.1. Definirea tipului tablou Spre deosebire de elementele scalare, care reprezentau o singură valoare, de un anumit

tip (numeric, boolean, alfanumeric), elementele vectoriale (Array) pot conţine, într-o manieră ordonată, mai multe valori de acelaşi tip.

Pentru a fi dispus în panou, un element de tipul tablou se selectează din meniul Array & Cluster al paletei de controale.

Atunci când un element de tipul tablou se dispune pe panou, tipul datelor pe care acesta le va conţine nu este încă definit. Se spune că elementul de tip tablou este vid.

Figura 1. Tipul tablou în LabVIEW.

Terminalul din diagramă al elementului este de culoare neagră. Săgeata Run este

spartă, semn că programul este incomplet şi nu poate fi rulat. Pentru a defini tipul de date, în elementul de tip tablou trebuie introdus un element de

control sau indicator scalar de tipul dorit (numeric, boolean sau alfanumeric). Elementul scalar ce urmează a fi introdus în tablou poate exista deja pe panou sau

poate fi selectat la momentul respectiv din paleta de elemente. Când elementul scalar este adus deasupra elementului tablou, înainte de a se elibera

butonul stâng al mouse-ului, conturul elementului tablou este marcat cu o linie întreruptă (tabloul sesizează că i se va introduce un element scalar).

Page 22: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

22

22

Figura 2. Introducerea unui element scalar în elementul tablou.

La eliberarea butonului mouse-ului, elementul scalar apare în interiorul elementului

tablou, acesta din urmă modificându-şi corespunzător dimensiunile. În diagramă, terminalul elementului scalar dispare, iar terminalul elementului tablou capătă culoarea, textul şi grosimea de chenar corespunzătoare datelor pe care le va manipula.

Figura 3.Elementul tablou după introducerea unui element scalar.

3.2. Definirea valorilor şi a numărului de valori vizibile Atunci când este dispus în panou şi îi este definit tipul de date, un element de tip

tablou afişează la un moment dat o singură valoare. Pentru a modifica numărul de valori afişate, se poziţionează întâi cursorul mouse-ului

pe un colţ al elementului tablou, astfel încât pe colţurile acestuia să apară patru simboluri "echer" .

La apariţia celor patru simboluri "echer", se apasă butonul stâng al mouse-ului şi, ţinându-l apăsat, se deplasează mouse-ul astfel încât să se redimensioneze conturul elementului tablou.

Pe măsură ce mouse-ul este deplasat, conturul redimensionat al elementului tablou este marcat cu linie întreruptă.

Atunci când conturul a fost redimensionat astfel încât să poată cuprinde numărul dorit de valori, se eliberează butonul mouse-ului şi elementul tablou este afişat redimensionat. Redimensionarea conturului se poate efectua atât pe verticală cât şi pe orizontală.

În partea sa stangă, un element de tip tablou dispune de un index. Indexul unui element tablou indică numărul de ordine al valorii afişate în poziţia superioară (indicele valorii). Indicele primei valori dintr-un tablou este 0.

Imediat după ce i se defineşte tipul de date, un tablou nu conţine nici o valoare (este vid). Faptul este semnalizat prin afişarea "opacă a elementelor pe care tabloul le conţine. Atunci când se defineşte o valoare din tablou, aceasta este afişată normal.

Page 23: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

23

23

Dacă, la un moment dat, utilizatorul defineşte o valoare şi există valori cu indici mai mici încă nedefinite, acestea vor căpăta automat o valoare implicită, în funcţie de tip.

Figura 4. Modificarea numărului de valori afişate de elementul tablou.

Când se modifică valoarea indexului unui tablou, valorile acestuia se deplasează astfel încât în poziţia superioară să fie afişată valoarea cu indexul selectat.

Dacă, în urma acestei deplasări, unele valori nu mai sunt vizibile, faptul nu echivalează cu ştergerea acestora: valorile continuă să existe în cadrul tabloului şi pot fi vizualizate prin modificarea corespunzătoare a indexului.

Figura 5. Introducerea şi vizualizarea valorilor din elementul tablou.

3.3. Definirea numărului de dimensiuni În mod implicit, atunci când este creat, un tablou are o singură dimensiune, putând fi

descris drept o matrice coloană. Numărul de dimensiuni ale unui tablou poate fi modificat prin dimensionarea

indexului acestuia: se poziţionează cursorul mouse-ului pe un colţ al indexului, astfel încât pe colţurile acestuia să apară patru simboluri "echer", se apasă butonul mouse-ului şi se deplasează mouse-ul ţinând butonul apăsat, până când indexul capătă dimensiunea dorită.

Dacă un tablou are mai mult de o dimensiune, se poate stabili afişarea mai multor linii şi mai multor coloane.

Figura 6. Mărirea numărului de dimensiuni ale elementului tablou.

Terminalul unui element tablou se caracterizează prin prezenţa unor paranteze drepte a căror grosime este proporţională cu numărul de dimensiuni.

Atunci când se realizează legături în diagramă, conexiunile pe care circulă un tablou cu o dimensiune sunt mai groase decât cele pe care circulă valori scalare.

Page 24: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

24

24

Pentru tablourile cu două sau mai multe dimensiuni, conexiunile sunt reprezentate cu linie dublă. Spaţiul intermediar al liniei duble este cu atât mai mare cu cât numărul de dimensiuni ale tabloului este mai mare.

Figura 7. Reprezentarea conexiunilor pentru elementul tablou.

3.4. Funcţii utilizate pentru lucrul cu tablouri Aceste funcţii se găsesc în paleta de funcţii ale diagramei ca în figura 8.

Figura 8. Funcţii utilizate pentru lucrul cu tablouri în LabVIEW.

În continuare se vor prezenta principalele funcţii de lucru cu tablouri.

- Funcţia Array Size determină numărul de valori dintr-un element de tip tablou cu una sau mai multe dimensiuni.

Daca tabloul de intrare are o singura dimensiune, ieşirea funcţiei va fi o valoare scalară. Dacă tabloul de intrare are N dimensiuni (N>1), ieşirea funcţiei este un tablou cu o dimensiune, conţinând N elemente.

De exemplu, dacă la intrarea funcţiei se conectează o matrice, ieşirea funcţiei va fi un tablou cu două elemente, primul reprezentând numărul de linii şi al doilea numărul de coloane ale intrării.

- Funcţia Index Array extrage una sau mai multe valori ai căror indici sunt specificaţi.

ATENŢIE: prima valoare dintr-un şir are indexul 0 !

Page 25: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

25

25

Atunci când este dispusă în diagramă, funcţia Index Array are un singur terminal pentru specificarea indicelui. Simbolul funcţiei poate fi dimensionat astfel încât să dispună de mai multe astfel de terminale.

Dacă la terminalele pentru indici nu se conectează valori, funcţia va lua în considerare valori implicite, începând cu 0.

- Funcţia Replace Array Subset înlocuieşte valori dintr-un tablou, începând de la un indice specificat.

Simbolul funcţiei poate fi dimensionat pentru a permite înlocuiri simultane în mai multe porţiuni.

Atunci când la intrarea funcţiei se conectează un tablou cu mai multe dimensiuni, terminalele pentru indici capătă intrări pentru linii şi coloane ce pot fi activate sau dezactivate independent.

- Funcţia Insert Into Array inserează valori într-un tablou, începând de la un indice specificat. Numărul de valori din Array creşte.

Funcţia poate mări numărul de valori din tablou doar de-a lungul unei singure dimensiuni, astfel încât, dacă inserarea urmează a se efectua într-un tablou cu N dimensiuni, se vor putea insera în acesta doar elemente cu N sau cu N-1 dimensiuni (de exemplu, nu se poate insera un element scalar într-o matrice).

- Funcţia Delete From Array şterge dintr-un tablou o porţiune de mărime specificată (intrarea length, cu valoare implicită 1), începând de la un indice specificat (implicit ultimul element).

Ştergerea se efectuează doar de-a lungul unei singure dimensiuni: se şterg elemente dintr-un tablou cu o dimensiune, linii sau coloane dintr-o matrice etc (nu se poate şterge doar o valoare dintr-o matrice).

Funcţia dispune atât de o ieşire pentru tabloul din care s-a realizat ştergerea, cât şi de o ieşire pentru porţiunea ce a fost ştearşa.

Numărul de dimensiuni ale celei de a doua ieşiri variază: este egal cu numărul de dimensiuni ale tabloului de intrare dacă a fost conectată o valoare la intrarea length şi este cu o unitate mai mic decât numărul respectiv dacă intrarea length a fost lăsată neconectată.

- Atunci când este dispusă în diagramă, funcţia are o singură intrare dimension size, generând astfel un tablou cu o singură dimensiune. Dacă se doreşte generarea unui tablou cu mai multe dimensiuni, simbolul funcţiei poate fi dimensionat.

Page 26: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

26

26

Dacă la una dintre intrările dimension size se conectează valoarea 0, sau dacă toate intrările respective sunt neconectate, funcţia va genera un tablou vid.

- Funcţia Build Array concatenează la un tablou una sau mai multe elemente cu un număr de dimensiuni imediat inferior (adaugă valori scalare la un tablou cu o dimensiune, adaugă linii la matrici ş.a.m.d.).

Atunci când este dispusă în diagramă, funcţia are o singură intrăre. Numărul dorit de intrări se obţine prin dimensionarea simbolului funcţiei.

- Funcţia Array Subset extrage o porţiune dintr-un tablou.

Pentru fiecare dimensiune a tabloului de intrare, funcţia dispune de o intrare index (poziţia din care va începe extracţia) şi de o intrare length (numărul de valori extrase de-a lungul dimensiunii respective).

- Funcţia Rotate 1D Array efectuează n permutări circulare ale valorilor dintr-un tablou cu o singură dimensiune.

Sensul permutărilor este determinat de semnul valorii n: a. dacă n>0, la fiecare permutare ultima valoare din tablou trece pe prima poziţie; b. dacă n<0, la fiecare permutare prima valoare din tablou trece în ultima poziţie.

- Funcţia Reverse 1D Array inversează ordinea valorilor dintr-un tablou unidimensional

- Funcţia Search 1D Array caută o valoare într-un tablou unidimensional, începând de la un indice de start specificat, şi returnează indicele elementului găsit. Dacă elementul căutat nu se află în tablou, atunci funcţia returnează valoarea -1.

- Funcţia Split 1D Array divide un tablou unidimensional în două tablouri, locul în care se efectuează divizarea fiind determinat de valoarea conectată la intrarea index a funcţiei.

Tabloul rezultat la ieşirea first subarray va conţine valorile ce se aflau în tabloul iniţial pe poziţiile 0, 1, ..., index-1.

Page 27: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

27

27

- Funcţia Sort 1D Array sortează valorile dintr-un tablou unidimensional: crescător dacă valorile sunt numerice sau în ordine alfabetică dacă valorile sunt de tip alfanumeric (String).

- Funcţia Array Max & Min determină valorile maximă şi minimă dintr-un tablou de valori numerice, precum şi indicii acestor valori extreme.

Dacă tabloul de intrare are mai multe dimensiuni, indicii valorilor extreme nu vor mai fi valori scalare, ci vor fi la rândul lor tablouri cu un număr de valori egal cu numărul de dimensiuni ale tabloului de intrare.

- Funcţia Transpose 2D Array transpune o matrice.

- Funcţia Interpolate 1D Array realizează o interpolare pe valorile tabloului de la intrarea array of numbers or points.

Dacă, de exemplu, tabloul de intrare conţine valorile 1, 2, 4 şi 6, iar la intrarea fractional index or x este conectată valoarea 1.7, funcţia va genera rezultatul 3.4 (după valoarea cu indicele 1, la 70 % din distanţa dintre aceasta şi următoarea).

- Funcţia Threshold 1D Array realizează o operaţie inversa interpolării: dispunând de un tablou de valori numerice şi de un prag (intrarea threshold y), începând de la un indice specificat, funcţia caută două valori consecutive din tablou astfel încât prima să fie mai mică decât pragul şi a doua mai mare sau egală cu acesta.

- Funcţia Interleave 1D Array construieşte un tablou cu o singură dimensiune prin întreţeserea mai multor tablouri având de asemenea o singură dimensiune.

- Funcţia Decimate 1D Array împarte un tablou iniţial într-un număr de tablouri egal cu numărul de ieşiri.

Iniţial, funcţia are două ieşiri, dar numărul acestora poate fi modificat prin dimensionarea simbolului funcţiei.

Page 28: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

28

28

Valorile din tabloul iniţial sunt repartizate alternativ tablourilor de ieşire. De exemplu, dacă funcţia are trei ieşiri, valoarea cu indicele 0 este repartizată la prima ieşire, cea cu indicele 1 la a doua, cea cu indicele 2 la a treia, cea cu indicele 3 din nou la prima ieşire, cea cu indicele 4 la a doua ş.a.m.d.

- Funcţia Reshape Array modifică numărul de dimensiuni ale unui element de tip tablou. De exemplu, un tablou unidimensional cu şase valori poate fi transformat într-o matrice cu trei linii şi două coloane, sau invers.

Numărul de dimensiuni ale rezultatului va fi egal cu numărul de terminale dimension size ale simbolului funcţiei.

4. Mod de lucru

a) Se alimentează sistemul cu tensiune; b) Se lansează mediul LabVIEW; c) Se implementează programele P1 şi P2 descrise în prezenta lucrare.

Programul P1 are ca scop realizarea sumei elementelor de pe diagonala principală a unei matrici pătratice.

Pe panou se vor pune următoarele elemente evidenţiate în figura 9 : - un tablou în care se va introduce un obiect Num Ctrl, urmând ca apoi să se creeze o

matrice pătratică; - un indicator numeric (Num Ind) în care se va afişa suma elementelor de pe diagonala

principală a matricei.

Figura 9. Elementele de pe panou corespunzătoare programului P1.

În diagramă se vor introduce următoarele funcţii evidenţiate în figura 10 :

- funcţia Array Size, funcţia Index Array şi constanta 1 pentru determinarea dimensiunii matricei pătratice; - un structură repetitivă FOR pentru realizarea iteraţiilor în care se calculează suma

elementelor de pe diagonala principală. În interiorul acestui ciclu se va introduce o funcţie Index Array pentru extragerea câte unui element de pe diagonala principală şi o funcţie Add

Page 29: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

29

29

pentru realizarea sumei elementului curent cu elementul anterior extras de pe diagonala principală. Pentru a putea realiza suma elementului curent cu elementul anterior extras din matrice, ciclul FOR va fi prevăzut cu un set de registre de deplasare, iar primul element extras se va aduna cu constanta 0.

Figura 10. Diagrama programului P1.

Pentru exemplul de figura 11 s-a considerat matricea de dimensiuni 3 x 3.

Figura 11. Rezultatul execuţiei programului P1.

Programul P2 realizează înmulţirea unei matrici A de dimensiuni n x m cu o matrice B

de dimensiuni m x p. Pe panou se vor pune următoarele elemente evidenţiate în figura 12 :

- două tablouri în care se vor introduce câte un obiect Num Ctrl, urmând ca apoi să se creeze matricile de dimensiuni n x m, respective m x p; - un tablou tablou în care se va introduce un obiect Num Ctrl, urmând ca apoi să se creeze o matrice C de dimensiuni n x p. Această matrice va reprezenta rezultatul înmulţirii.

Figura 12. Elementele de pe panou corespunzătoare programului P2.

În diagramă se vor introduce următoarele funcţii evidenţiate în figura 13 :

- funcţia Array Size, funcţia Index Array şi constanta 0 pentru determinarea numărului de linii al matricei A (numărul n);

Page 30: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

30

30

- funcţia Array Size, funcţia Index Array şi constanta 1 pentru determinarea numărului de coloane al matricei A (numărul m); - funcţia Array Size, funcţia Index Array şi constanta 1 pentru determinarea numărului de

coloane al matricei B (numărul p); - un ciclu FOR care conţine un alt ciclu FOR în care se află un al treilea ciclu FOR.

Aceste cicluri se utilizează pentru realizarea calculului

=

=

⋅=∑−

=pj

nibac

m

k

kjikij ,..,1

,..,11

0

.

Pentru realizarea acestui calcul se vor utiliza în interiorul acestor cicluri două funcţii Index Array, o funcţie Add pentru realizarea sumei, o funcţie Multiply pentru realizarea înmulţirii şi o funcţie Replace Array Subset pentru înlocuirea unui element din tabloul de ieşire cu valoarea calculată a acestuia. De asemenea, pentru a se putea realiza o operaţie cu o valoare calculată într-o etapă anterioară se vor folosi trei seturi de registre de deplasare. - Pentru a se putea iniţializa tabloul de ieşire cu o matrice n x p de zerouri se va folosi

funcţia Initialize Array.

Figura 13. Diagrama programului P2.

Pentru exemplul de figura 14 s-au considerat matricile A de dimensiuni 2 x 3,

respectiv B de dimensiuni 3 x 4.

Figura 14. Rezultatul execuţiei programului P2.

Page 31: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

31

31

5. Exerciţii

1) Să se realizeze un program în LabVIEW care să calculeze suma elementelor de pe diagonala secundară a unei matrici pătratice.

2) Să se realizeze un program în LabVIEW care să calculeze inversa unei matrici. 3) Să se realizeze un program în LabVIEW care să returneze valoarea maximă şi minimă

de pe fiecare linie, respectiv coloană a unei matrici date.

Page 32: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

32

32

LUCRAREA NR. 4

STRUCTURI DE CONTROL ÎN LabVIEW

1. Obiectivele lucrării

a) Cunoaşterea principalelor structuri de control din mediul de programare grafic LabVIEW.

b) Însuşirea modului de utilizare a structurilor în mediul de programare grafic LabVIEW.

2.Aparatura şi suporturile utilizate:

a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW.

3.Breviar

Structurile din LabView sunt echivalentul grafic al instrucţiunilor de ciclare(for, while) şi de decizie(if,case) din limbajele de programare clasice.

O structură este reprezentată printr-un dreptunghi a cărui dimensiune poate fi modificată . Partea din diagramă care se găseşte în interiorul dreptunghiului se numeşte “subdiagramă” iar terminalele prin care datele sunt introduse în subdiagramă şi sunt preluate rezultatele prelucrării se numesc “tuneluri”.

Structurile de control se găsesc în paleta de funcţii ale diagramei în subpaleta Structures ca în figura 1.

Figura 1. Structurile de control ale mediului LabVIEW.

3.1. Secvenţa

O secvenţă este o succesiune de subdiagrame ce se execută consecutiv. Este posibilă

trecerea de rezultate dintr-o subdiagramă în subdiagramele următoare folosind terminale locale(reprezentate de săgeţile roşii).

Page 33: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

33

33

Exemplu:

Figura 2. Exemplu de secvenţă în LabVIEW.

Secvenţa anterioară cuprinde trei subdiagrame : prima calculează dublul unei valori

introduse de la tastatură, a doua calculează pătratul aceleiaşi valori iar ultima calculează suma celor două rezultate anterioare. Se observă folosirea de terminale locale (Meniu contextual ���� “Add Sequence Local”) pentru a trece rezultatele primelor două subdiagrame în cea de-a treia. Adăugarea de noi subdiagrame în secvenţă se face folosind meniul contextual ( “Add Frame Before”, “Add Frame After”).

Trecerea dintr-o subdiagramă în alta se face folosind săgeţile din partea de sus a simbolului pentru secvenţă.

Rezultatul execuţiei diagramei anterioare este următorul :

Page 34: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

34

34

Figura 3. Rezultatul execuţiei programului.

3.2. Bucla “FOR” Bucla “FOR” permite execuţia unui bloc de un număr dat de ori.

Exemplu:

Figura 4. Exemplu pentru bucla “FOR”.

Terminalul notat cu “N” se iniţializează cu valoarea numărului de repetări ale ciclului.

“i” reprezintă contorul ciclului. Dacă se doreşte o temporizare ( o întârziere între iteraţii consecutive ale ciclului – utilă de exemplu în cazul în care se achiziţionează o mărime dintr-un proces la interval de o secundă ) se introduce în subdiagramă o funcţie de tip “Wait” (întârzierea se specifică în milisecunde prin conectarea unei constante la blocul de temporizare).

Figura 5. Rezultatul execuţiei programului.

Prin execuţia diagramei anterioare indicaţia termometrului (care este legat la contorul

ciclului) creşte până la valoarea introdusă în controlul numeric (legat la numărul de iteraţii ) .

Page 35: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

35

35

3.3. Bucla “WHILE”

Bucla “WHILE” permite execuţia unui bloc atât timp cât o condiţie dată este adevărată ( sau falsă ). Exemplu:

Figura 6. Exemplu pentru bucla “WHILE”.

Ca şi la bucla “FOR”, “i” are semnificaţia de contor al ciclului în vreme ce terminalul

din dreapta jos reprezintă condiţia de execuţie a ciclului (se execută atât timp cât variabila conectată la acest terminal are valoarea “TRUE”).

Este necesar deseori să se treacă valori dintr-o iteraţie în iteraţia următoare . În acest scop se folosesc “registre de deplasare” (“shift registers” ce se introduc din meniul contextual asociat blocului ). Acestea nu au un tip de date asociat preluând tipul de date de la constantele la care sunt legate.

În exemplul nostru am dorit ca în fiecare iteraţie să facem o operaţie de tipul “n=n+1” cu n=0 la început. Pentru iniţializarea la intrarea în ciclu registrul de deplasare se conectează la constanta “0” aflată în afara subdiagramei.

Efectul execuţiei diagramei anterioare este următorul :

Figura 7. Rezultatul execuţiei programului.

Cât timp maneta este în poziţia “ON” indicaţia termometrului creşte cu 1ºC/secundă

(se execută ciclul “WHILE”).

3.4. Structura “CASE”

Structura “CASE” permite execuţia uneia din mai multe subdiagrame funcţie de valoarea unei variabile de selecţie ce poate fi de tip boolean, întreg, string.

În cazul unui bloc de tip “CASE” este posibil să avem mai multe tuneluri de intrare şi de ieşire. Este necesar ca tunelurilor de ieşire să le fie asignată câte o valoare în fiecare subdiagramă a structurii “CASE”.

Page 36: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

36

36

Exemplu:

Figura 8. Exemplu pentru structura “CASE”.

Valoarea legată la terminalul marcat cu “?” reprezintă selectorul structurii. În funcţie

de tipul selectorului se schimbă şi constantele de selecţie din partea de sus a subdiagramei. În exemplul nostru am ales un selector de tip boolean deci identificatorii de selecţie sunt “TRUE” şi “FALSE”. Se trece prin fiecare identificator folosind săgeţile şi se construiesc subdiagramele asociate.

În cazul în care am fi avut mai multe valori posibile pentru identificatorii de selecţie (dacă de exemplu selectorul ar fi fost de tip întreg) aceştia s-ar fi adăugat folosind meniul contextual asociat structurii “CASE”. De remarcat ca în acest caz este necesar şi un identificator de selecţie de tip “default” care să prelucreze valorile nespecificate.

Efectul execuţiei diagramei anterioare este de a da indicatorului numeric valorile “5” sau “100” funcţie de starea selectorului boolean.

Figura 9. Rezultatul execuţiei programului.

4. Mod de lucru

a) Se alimentează sistemul cu tensiune;

b) Se lansează mediul LabVIEW; c) Se implementează programele descrise în breviarul prezentei lucrări.

5. Exerciţii

1) Să se realizeze un program în LabVIEW care să calculeze n! utilizând structura FOR sau structura WHILE.

2) Să se realizeze un program în LabVIEW care să calculeze sinusul sau cosinusul unei valori introduse, în funcţie de starea unui buton (pornit/oprit). Se va utiliza structura CASE.

Page 37: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

37

37

LUCRAREA NR. 5

INSTRUMENTE GRAFICE ÎN LabVIEW

1. Obiectivele lucrării

a) Cunoaşterea principalelor instrumente grafice în mediul de programare grafic LabVIEW.

b) Însuşirea modului de utilizare a instrumentelor grafice.

2.Aparatura şi suporturile utilizate: a) PC în configuraţia unitate centrală,monitor, tastatură; b) Precizările din prezentul îndrumar; c) Manual de prezentare a mediului de programare grafic LabVIEW.

3.Breviar

Mediul de programare grafic LabVIEW permite utilizatorului crearea unei interfeţe care să realizeze comunicarea cu calculatorul într-un mod simplificat şi uşor de utilizat. Interfaţa grafică este mai compactă, mai uşor de citit şi de înţeles şi permite utilizatorului operarea mai rapidă.

Pentru realizarea de interfeţe grafice mediul LabVIEW oferă mai multe tipuri de obiecte grafice care se găsesc pe paleta de controale ale panoului.

3.1. Obiecte grafice pentru introducerea numerelor

Acestea se găsesc în paleta de controale ca în figura următoare:

Figura 1. Obiecte grafice pentru introducerea numerelor în LabVIEW.

- Obiectul Num Ctrl permite introducerea de numere prin apăsarea cu mouse-ul pe săgeţile laterale. reprezentarea pe panou reprezentarea pe diagramă

Page 38: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

38

38

- Obiectele Fill Slide şi Pointer Slide permite introducerea unei valori prin umplerea unei zone pe orizontală cu o culoare distinctă de cea de bază prin intermediul mouse-ului. reprezentarea pe panou reprezentarea pe diagramă - Obiectele Fill Slide şi Pointer Slide permite introducerea unei valori prin umplerea unei zone pe verticală cu o culoare distinctă de cea de bază prin intermediul mouse-ului. reprezentarea pe panou reprezentarea pe diagramă - Obiectele Knob şi Dial permit introducerea unui număr prin rotirea cu ajutorul mouse-ului a unui indicator care poate fi ca în figurile următoare. reprezentarea pe panou reprezentarea pe diagramă - Obiectul Color Box permite introducerea unei culori de către utilizator. reprezentarea pe panou reprezentarea pe diagramă

Page 39: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

39

39

3.2. Obiecte grafice pentru afişarea numerelor

Acestea se găsesc în paleta de controale ca în figura următoare:

Figura 2. Obiecte grafice pentru afişarea numerelor în LabVIEW.

- Obiectul Num Ind permite afişarea unei valori numerice. reprezentarea pe panou reprezentarea pe diagramă - Obiectele Progress Bar şi Grad Bar permit afişarea unei valori prin umplerea unei zone pe orizontală cu o culoare distinctă de cea de bază. reprezentarea pe panou reprezentarea pe diagramă - Obiectele Progress Bar şi Grad Bar permit afişarea unei valori prin umplerea unei zone pe verticală cu o culoare distinctă de cea de bază. reprezentarea pe panou reprezentarea pe diagramă

Page 40: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

40

40

- Obiectele Meter şi Gauge permit afişarea unei valori prin rotirea unui ac indicator. reprezentarea pe panou reprezentarea pe diagramă - Obiectele Tank şi Thermometer permit afişarea unei valori prin umplerea unei zone pe verticală cu o culoare distinctă de cea de bază. reprezentarea pe panou reprezentarea pe diagramă 3.3. Butoane

Acestea se găsesc în paleta de controale ca în figura următoare:

Figura 3. Butoane în LabVIEW.

Page 41: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

41

41

- Butoanele Rocker au două poziţii între care se poate comuta prin apăsarea cu mouse-ul pe poziţia dorită. reprezentarea pe panou reprezentarea pe diagramă - Butoanele Slide Switch au două poziţii între care se poate comuta prin tragerea cu mouse-ul pe poziţia dorită. reprezentarea pe panou reprezentarea pe diagramă - Butoanele Toggle Switch au două poziţii între care se poate comuta prin tragerea cu mouse-ul pe poziţia dorită. reprezentarea pe panou reprezentarea pe diagramă - Butoanul Push Button are două poziţii între care se poate comuta prin apăsarea cu mouse-ul. reprezentarea pe panou reprezentarea pe diagramă - Butoanele de tip Text, OK, Cancel şi Stop permit utilizatorului să introducă anumite comenzi. reprezentarea pe panou reprezentarea pe diagramă

Page 42: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

42

42

3.4. Leduri

Acestea se găsesc în paleta de controale ca în figura următoare:

Figura 4. Leduri în LabVIEW.

Ledurile sunt de două feluri Round LED şi Square LED şi au următoarele reprezentări. reprezentarea pe panou reprezentarea pe diagramă 4. Modul de lucru

a) Se alimentează sistemul cu tensiune; b) Se lansează mediul LabVIEW; c) Se implementează programul P1 descris în prezenta lucrare.

Programul P1 reprezintă grafic funcţiile treaptă, fierăstrău şi sinus, precum şi indicarea presiunii din rezervor.

Pe panou se vor pune următoarele elemente evidenţiate în figura 5 : - trei butoane de tip Push Button pentru alegerea funcţiei dorite; - un obiect grafic de tip Tank pentru reprezentarea grafică a valorii curente a funcţiei; - un obiect de tip Waveform Graph pentru reprezentarea evoluţiei în timp a funcţiei; - un obiect de tip Gauge şi unul de tip Num Ind pentru indicarea valorii curente a presiunii

sub formă grafică respectiv numerică; - un obiect de tip Num Ind pentru afişarea valorii curente a funcţiei; - un obiect de tip String Ind pentru afişarea funcţiei alese.

Page 43: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

43

43

Figura 5. Elementele de pe panou corespunzătoare programului P1.

În diagramă se vor introduce următoarele funcţii evidenţiate în figura 6 :

- patru funcţii de tip Simulate Signal care realizează funcţiile constantă (când nu este apăsat nici un buton), treaptă, fierăstrău şi sinus; - douăsprezece funcţii de tip Select prin care se selectează funcţia dorită şi se numele

acesteia; - funcţiile numerice Multiply şi Divide utilizate la calculul presiunii în rezervor; - constante de tip numeric şi de tip şir de caractere utilizate la calculul presiunii, respectiv

afişarea funcţiei alese; - funcţia Time Delay care introduce o întârziere în execuţia programului; - bucla While care permite execuţia programului până la apăsarea butonului Exit.

Page 44: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

44

44

Figura 6. Diagrama programului P1.

Figura 7. Rezultatul execuţiei programului P1.

Page 45: Laborator Instrumentatie Virtuala_opt

Îndrumar LabVIEW

45

45

5. Exerciţii Să se realizeze un program în LabVIEW care la introducerea unei valori numerice să se realizeze următoarele cerinţe: - valoarea numerică va fi introdusă prin intermediul unui obiect de tip Dial; - dacă valoarea numerică este strict pozitivă atunci aceasta se va afişa utilizând obiectul Meter; - dacă valoarea numerică este nulă atunci se va aprinde un led de tip Square Led; - dacă valoarea numerică este strict negativă atunci aceasta se va afişa utilizând obiectul Grad Bar.