Sunteți pe pagina 1din 10

Elemente de electronică și mediu de programare pentru fluxuri - Dr. Ing.

Vlad-Cristian Georgescu

Curs 1 – Introducere în LabVIEW

1. Despre LabVIEW

LabVIEW (Laboratory Virtual Instrument Engineering Workbench) este un limbaj


de programare grafic, produs de compania americană National Instruments, care
utilizează pictograme în loc de linii de text pentru a crea aplicaţii.
Spre deosebire de limbajele de programare textuale, în cadrul cărora
instrucţiunile sunt cele care determină execuţia programului, LabVIEW foloseşte fluxul
de date, evidenţiat printr-o prezentare grafică adecvată. Acest model pentru rularea
VI‐urilor, numit Dataflow, se bazează pe ideea că modificarea volorii unei variabile
implică automat recalcularea valorii altei variabile a cărei valoare depinde de aceasta.
Pe de altă parte, în mod asemănător cu celelalte limbaje de programare,
LabVIEW conţine biblioteci extinse de funcţii şi subrutine care pot fi utilizate în
numeroase aplicaţii, precum achiziţia, prelucrarea, analiza, prezentarea şi stocarea
datelor.

Cu ajutorul unor echipamente de achiziţie de semnale de la diverse tipuri de


traductoare, LabVIEW-ul permite utilizarea performantă a calculatorului pentru
măsurarea diverselor mărimi fizice, precum şi controlul anumitor procese.

Instrumentele virtuale, VI, sunt programe LabVIEW care imită fizic instrumente
de măsură. Un instrument virtual (.vi) poate să aibă în componență unul sau mai multe
subVI‐uri, ce pot fi grupate într‐un singur proiect (.lvproj).

În LabVIEW un VI este constituit cu ajutorul următoarelor trei componente:


 Panoul frontal: serveşte ca interfaţă cu utilizatorul;
 Diagrama bloc: conţine sub formă grafică codurile sursă care realizează
funcţionarea VI- ului;
 Pictograma (icon) şi panoul conector: prin intermediul cărora este identificat
VI-ul şi se asigură posibilitatea interconectării în cadrul altui VI.
2. Panoul frontal

Panoul frontal reprezintă, la fel ca în cazul unui instrument fizic, interfața cu


utilizatorul a unui VI. Un exemplu de panoul frontal este prezentat în Figura 1.

Fig. 1 Panoul frontal al unui VI.

După cum se poate observa în Fig.1, structura ferestrei panoului frontal cuprinde
următoarele componente:
 Bara de nume, aflată la partea superioară, este destinată să afişeze numele
atribuit VI-ului;
 Bara cu meniurile principale, situată sub bara de nume, conţine meniurile
principale ale panoului frontal;
 Bara de comenzi, conţine butoanele de comandă a execuţiei programului VI-ului
şi de aranjare a obiectelor din panoul frontal;
 Spaţiul de lucru, situat sub bara de comenzi, ocupă cea mai mare parte a
panoului frontal întrucât în acest cadru vor fi plasate obiectele de lucru ale VI-
ului;
 Barele cu cursoare, dispuse în partea de jos, respectiv în partea dreaptă a
spaţiului de lucru, servesc pentru navigarea în spaţiul de lucru.

2
Bara de comenzi, conține diferite butoane, a căror semnificație, în ordinea de la
stânga la dreapta, este prezentată în cele ce urmează:
 Butonul Run (Execută) determină execuţia o singură dată a programului de
funcţionare a VI-ului.
 Butonul Run Continuously (Execuţie continuă) face ca programul să ruleze în
mod continuu, fără oprire.
 Butonul Abort Execution (Oprirea execuţiei) serveşte pentru oprirea programului
şi este activ numai pe perioada rulării programului.
 Butonul Pause (Pauză) poate fi utilizat, în ambele moduri de rulare, pentru
suspendarea execuţiei. Efectuând click asupra acestui buton i se schimbă forma
şi este transformat în butonul Continue (Continuă), prin a cărui apăsare se reia
rularea de la locul în care a fost suspendată.
 Caseta Text Settings (Setarea textului) este folosită pentru stabilirea tipului,
mărimii şi stilului caracterelor cu care se scriu textele.
 Caseta Align Objects (Aliniază Obiecte) permite anumite opţiuni de aliniere a
obiectelor selectate, de exemplu vertical, după marginea de sus, la stânga, etc.
 Caseta Distribute Objects (Distribuie obiecte) permite ca obiectele selectate să
fie distribuite în panou după anumite opţiuni, de exemplu comprimat, incluzând
goluri, etc
 Caseta Resize Objects (Redimensionează obiecte) permite ca dimensiunile
obiectelor selectate să fie modificate;
 Caseta Reorder (Reordonează) asigură ca obiectele selectate să fie reordonate
după alte preferinţe, de exemplu mutate în faţă, în spate etc.

Panoul frontal este o combinație de elemente de control și indicatoare:


 Elementele de control simulează dispozitive de intrare și furnizează date către
diagrama bloc a unui VI.
 Indicatoarele simulează instrumente de ieșire utilizate la afișarea datelor
achiziționate sau generate de către diagrama unui VI.

Elementele de control au diferite aspecte, precum: butoane, întrerupătoare,


comutatoare, cursoare, cadrane, etc (Figura 2). Indicatoarele sunt grafice, LED-uri, şi
alte dispozitive de afişare a ieşirilor.

3
Fig. 2. Exemple de elemente de control

Elementele de control și indicatoarele pot fi selectate și inserate în Panoul frontal


din paleta elementelor de control (Figura 3). Aceasta poate fi făcută vizibilă numai
atât timp cât este deschisă fereastra panoului frontal (este aferentă numai acesteia),
prin selectarea din meniul View a butonului Controls Palette.

Fig. 3 Paleta elementelor de control și indicatoare.

Această paletă conţine subpalete, în cadrul cărora se asigură accesul la


obiectele din categoria respectivă, ce pot fi de două feluri: elemente de controle şi
indicatoare. Subpaletele se accesează executând click pe butonul corespunzător

4
categoriei dorite. Unele subpalete au în partea dreapta sus butoane sub formă de vârf
de săgeată prin intermediul cărora se pot deschide, la rândul lor, alte subpalete
secundare din care se pot alege alte tipuri de controale şi indicatoare.
Obiectele necesare se selectează din subpalete cu ajutorul mouse-lui şi se trag
în spaţiul de lucru al panoului frontal, (cu tasta stângă a mouse-ului apăsată), până în
poziţia dorită.

După cum se poate observa din Fig. 3, obiectele sunt grupate în diferite
categorii: elemente numerice, elemente booleene (logice), șiruri, elemente pentru
vectori și clustere, elemente pentru liste și tabele, elemente de control pentru grafice,
elemente de intrare/ieșire, elemente pentru dialog, etc.
Aceste elemente pot fi personalizate prin modificarea formei sau a denumirii
acestora utilizând funcții ale paletei de instrumente, Figura 4. Pentru vizualizarea
acesteia se selectează din meniul View butonul Tools Palette.
Aceasta permite selecția automată sau manuală a unui instrument. În cazul
selecției manuale există un cursor pentru selectarea și modificarea poziției sau a
mărimii instrumentelor, buton pentru modificarea denumirilor elementelor și adăugarea
ferestrelor text folosite la comentarea diferitelor elemente, buton de selectare a culorilor,
etc.

Fig.4 Paleta de instrumente

Semnificaţia subpaletelor reprezentate pe Figura 4 este următoarea:

selectare automată de către program a uneltei potrivite, în funcție de poziția


mouse-ului;
operare, utilizată în panou mai ales pentru a modifica valorile unor controale;
selectare (poziţionare, dimensionare), utilizată atât în panou cât şi în diagramă;
editare a textelor (în panou şi în diagramă);

5
conectare, utilizată în special în diagramă;
afişare a meniurilor proprii;
deplasare a imaginii într-o fereastră (scroll);
inserarea de puncte de oprire a rulării (breakpoint);
inserarea de puncte de probă;
selectarea de culori;

colorare.

3. Diagrama bloc

Fiecărui element de pe Panoul frontal îi corespunde un terminal în diagrama


bloc, care constituie porturi de intrare şi de ieşire prin care se efectuează schimburile de
informaţii cu panoul frontal.
Diagrama bloc este mediul în care se introduce algoritmul, sub formă de blocuri
grafice, pentru instrumentul virtual care trebuie creat. Un exemplu de astfel de algoritm
se poate observa în Figura 5.

Fig.5 Diagrama bloc

6
Diagrama bloc cuprinde, în spaţiul de lucru, reprezentarea grafică a funcţiilor
corespunzătoare obiectelor de pe panoul frontal şi ilustrează modul în care circulă fluxul
de date şi operaţiile de prelucrare ale acestora.
Obiectele din diagrama bloc, care evidenţiază operaţiile efectuate de către
programul VI-ului, se numesc noduri (sunt asemănătoare cu operatorii / subrutinele din
programele textuale).
Transferul datelor între obiectele din diagrama bloc este asigurat prin legături de
conexiune între acestea (wires) având culori, stiluri şi grosimi diferite, în funcţie de
tipurile de date pe care le vehiculează. Orice legătură porneşte de la o singură sursă de
date, dar poate fi conectată la unul sau mai mulţi receptori.
În diagrama bloc se mai întâlnesc şi aşa-numitele structuri (structures), care
sunt reprezentări grafice ale buclelor şi instrucţiunilor de control de la limbajele de
programe textuale.

Bara de comenzi, conține butoanele din panoul frontal și alte câteva intercalate
după primele 4 butoane prezente și in panoul frontal:
 Butonul Highlight Execution (Evidenţiază execuţia) atunci când este apăsat se
aprinde becul şi se obţine prezentarea în detaliu a execuţiei programului, precum
şi urmărirea transferului datelor.
 Butonul Retain Wire Values (Reține valorile pe fir) reține pe ecran valorile
intermediare în timpul rulării programului;
 Butonul Step Into (Intră în) permite să se intre în interiorul unui ciclu VI şi astfel
poate fi urmărită execuţia programului din interior.
 Butonul Step Over (Treci peste) la o primă apăsare face ca rularea să se execute
pas cu pas. La o nouă apăsare execuţia va continua până la nodul următor dar
se trece peste un ciclu, subVI etc
 Butonul Step Out (Ieşi din) atunci când este apăsat determină ieşirea dintr-un
ciclu, subVI etc.

Labview ne pune la dispoziție un pachet larg de funcții, în cadrul paletei de


funcții (Figura 6), ce poate fi accesată prin selectarea din meniul View a butonului
Functions Palette. Aceasta poate fi afişată numai atât timp cât este deschisă fereastra
diagramei bloc (este aferentă numai acesteia).

Această paletă conţine un număr de subpalete, în cadrul cărora se asigură


accesul la funcţiile şi aplicaţiile din categoria respectivă. Paleta de funcții conține:
funcțiile pentru structuri, funcțiile numerice, funcțiile booleene (logice), funcțiile pentru
manipularea vectorilor, funcții pentru comparare, funcții pentru forme de undă, funcții
pentru temporizare, funcții pentru manipularea fișierelor de intrare și ieșire, etc.
7
Fig.6 Paleta de funcții

În Diagrama bloc, pe lângă funcțiile puse la dispoziție, există elemente de


control, elemente indicatoare și constante.
Elementele indicatoare primesc o informație. Elementele de control și
constantele se aseamană prin faptul că furnizează la ieșire o anumită informație.
Deosebirea între ele este că în timp ce informația furnizată de elementul de control
poate fi modificată în timpul rulării programului de către utilizator, pe când în cazul
constantelor acest lucru nu este posibil.
Modul implicit de apariție a reprezentării grafice a elementului de control sau
indicator (Figura 7) poate fi modificat prin accesarea meniului opțional furnizat de
utilizarea funcției click dreapta al mouse‐ului pe elementul respectiv și deselectarea
opțiunii View As Icon.

8
Fig. 7 a) element de control; b) element indicator; c) constantă.

4. Pictograma și panoul conector

Pictograma şi panoul conector (Figura 8) corespund prototipului funcţiei în


limbajele de programare bazate pe text. Fiecare VI afişează o pictogramă, cum ar fi cea
prezentată mai jos, în colţul din dreapta sus al panoului frontal şi al diagramei bloc.

Fig. 8 a) pictograma; b) panou conector

O pictogramă este o reprezentare grafică a unui VI. Acesta poate conţine text,
imagini, sau o combinaţie a celor două. Dacă utilizaţi un al VI-lea ca un subVI,
pictograma identifică subVI-ul pe schema bloc a VI-ului. Puteţi face dublu-clic pe
pictograma pentru a o particulariza sau a o edita.

Panoul conector defineşte intrări şi ieşiri pe care le puteţi cabla catre alt VI, astfel
încât să-l folosiţi ca un subVI.
Panoul conector este un set de terminale (fiecare dreptunghi din conector
reprezintă un terminal) care corespund elementelor de control şi elemementelor
indicatoare ale acelui VI, similare cu lista de parametrii ai unui apel de funcţie în limbaje
de programare bazate pe text. Puteti face click dreapta pe panoul conector pentru a îl
particulariza.

9
Un panou conector primeşte date la bornele sale de intrare, le pasează către
codul din diagrama bloc, de unde, prin elementele indicatoare, trimite date mai departe
prin terminalele de ieșire ale panoului.

Bibliografie:

 Curs ”Instrumentație Virtuală” – Facultatea Automatica si Calculatoare (UPB)


 Laborator ”Instrumentație Virtuală” – Departamentul Electronica Aplicata (UTC)
 ”Material suport pentru stagii de practică în domeniul dezvoltării software pentru
automatizări MEDIU DE DEZVOLTARE LabVIEW” (UTC)
 Manual “LabVIEW Basics 1” – National Instruments

10

S-ar putea să vă placă și