Sunteți pe pagina 1din 104

1.

INTRODUCERE IN INSTRUMENTAIA VIRTUAL


1.1. Introducere
Prin instrumentaia virtual se nelege facilitatea / modalitatea oferit de un
computer dotat cu echipamente periferice de intrare / ieire specializate, pentru a
modela i simula caracteristicile i funcionarea unui instrument / sistem de msurare,
de testare sau de nregistrarea datelor.
La ora actual exist, la nivel mondial, o concuren acerb pentru lansarea pe
scar larg a unei game variate de produse noi (din domeniul msurrilor:
osciloscoape, multimetre digitale, voltmetre s.a.m.d.), cu calitti superioare celor de pe
pia sau cu soluii noi pentru monitorizarea unor procese automatizate. Un utilizator
i poate construi un produs virtual destinat unei anumite aplicaii cu caracteristicile
dorite. Acest produs l vom denumi n continuare instrument virtual ( Virtual
Instruments - VI).
Instrumentaia virtual a devenit inta mai multor medii de lucru specializate.
Unul dintre cele mai rspndite i care s-a impus pe plan mondial este LabVIEW
(Laboratory Virtual Instrument Engineering Workbench). Aceste este un mediu de
programare bazat pe limbajul de programare grafic G. Firma National Instruments
(NI) a introdus n anul 1986 conceptul de instrumentaie virtual i a lansat pe pia
prima versiune a mediului LabView. n [1.1] instrumentul virtual se definete ca:
program n LabView care modeleaz forma i funcia unui instrument fizic.
Pentru atingerea scopului dorit, realizarea unui instrument virtual, este necesar
o dotare minim - un sistem de calcul i un mediu de programare:
folosind mediul de programare se realizeaz, pentru instrumentul dorit, panoul
frontal (interfaa instrumentului) i funcionalitatea sa;
calculatorul devine gazda noului instrument creat de utilizator oferindu-i
totodat facilitile clasice: capacitate ridicat de prelucrare, analiz, stocare a
informaiilor, conectare la reea, imprimare a datelor etc.
Mediul de programare utilizat pentru modelarea instrumentului virtual, fr
corespondent real, permite utilizatorului s-i dezvolte n continuare proceduri proprii
de prelucrare a informaiei pe care s le poat utiliza n construirea altor VI.
Limbajele de programare de circulaie extins FORTRAN, PASCAL, C,
BASIC .a se bazeaz n construcia unui program prin scrierea unor instruciuni

2
utiliznd textul. Realizarea unui program n aceste medii poate s devin dificil pentru
un nceptor n special n perioada de depanare. Grafica este extrem de intuitiv,
potenialul graficii fiind susinut prin principalele metode de instruire existente i care
i-au dovedit rolul esenial.
Limbajul grafic G inima mediului LabVIEW se bazeaz pe existena unor
biblioteci de funcii definite care prin asamblare grafic construiesc n mod intuitiv
un program.
Instrumentele virtuale au o structur ierarhic i modular. Un instrument virtual
utilizat pentru construcia unui alt instrument virtual poart denumirea de
subinstrument virtual (subVI).

1.2. Instrumentaie virtual cu LabView


1.2.1. Introducere
n modul clasic de lucru pe un sistem de calcul cu mouse, lansarea mediului de
lucru se realizeaz fie prin alegerea pictogramei corespunztoare mediului de lucru
(fig.4.1) fie prin alegerea succesiv a opiunilor: Start / Programs / National
Instruments LabView / LabView ceea ce are ca efect dechiderea meniului de lucru.

Fig. 1.1 Pictograma LabView

n figura 4.2 se prezint meniul de lucru pentru versiunea LabVIEW 5.1 care
poate fi regsit cu schimbri nesemnificative i pentru versiunea LabView 6.0.

Fig. 1.2 Meniul principal pentru LabView 5.1

Semnificaiile din meniu sunt urmtoarele:


opiunea - New VI permite crearea unui nou VI iar opiunea Open VI
pentru deschiderea unui VI existent;
opiunea - Solution Wizards - lanseaz un utilitar care furnizeaz recomandri n
mod interactiv pentru realizarea unei aplicaii de achiziii de date sau
instrumente.
opiunea Cautare exemple - Search Examples permite consultarea unui set

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

de exemple, distribuite de firma National Instruments mpreun cu mediul de


lucru. Modul de consultare este cel clasic de lucru n sistemul Windows.
opiunea ndrumtor LabVIEW LabVIEW Tutorial lanseaz un program
demonstrativ de instruire despre LabVIEW.
pentru prsirea mediului de lucru se apeleaz la opiunea Ieire Exit .
n figura 4.3 se prezint meniul principal pentru versiunea LabView 8.2 care este
asemntor cu cel pentru versiunea LabView 7.0. Construirea unui instrument virtual
se va lansa n acest caz prin selectarea opiunii New / Blank VI.

Fig. 1.3 Meniul principal pentru LabView 8.2

1.2.2. Introducere n LabView


1.2.2.1.
Structura unui instrument virtual
Un instrument virtual (VI) are trei componente:
panoul frontal corespunde la interfaa grafic cu utilizatorul sau ceea ce va
vedea utilizatorul pe ecranul monitorului. Dac dorim s facem o comparaie a
instrumentului virtual cu un instrument fizic, panoul frontal ar corespunde prii
frontale a instrumentului fizic pe care exist butoane, chei de comand, afiaj,
display etc. Pentru exemplificare se prezint n figura 4.4 se prezint panoul
frontal al unui instrument virtual pentru vizualizarea legilor de micare a unui
element mobil: acceleraie, vitez i spaiu n funcie de timp (fig.4.5). Pentru o
lege de micare dat a acceleraiei se poate scrie simplu:
dt

( 1.0)

dt

( 1.0)

4
y

rA

Fig. 1.4 Element n micare de rotaie

Fig. 1.5 Panou frontal

Panoul frontal este o combinaie de elemente de control i indicatoare.


Elementele de control simuleaz sursele de informaii pentru instrumentul virtual.
Indicatoarele simuleaz elementele de ieire i vizualizare pentru informaiile
achiziionate.
diagrama bloc corespunde codului programului i definete funcionalitatea IV
lui pe baza operatorilor clasici, funciilor .a.m.d. n figura 4.6 se prezint
diagrama bloc pentru un element motor n micarea de rotaie, construit pe baza
bibliotecii mediului de lucru. Realizarea diagramei bloc se obine prin utilizarea
limbajului grafic. Componentele se leag ntre ele prin fire = conductoare
definind fluxul datelor din diagam. Dac comparm diagrama bloc cu
instrumentul fizic, atunci, coninutul su coincide cu componentele fizice
(rezistoare, fire de legtur, circuite logice etc.) din carcasa instrumentului.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

Fig. 1.6 Diagram bloc

pictograma i conectorul corespund semnturii programului. Pictograma


(icon-ul) este identificatorul graphic al VI. Terminalele de intrare i ieire
corespund parametrilor de intrare / ieire.

Fig. 1.7 Pictograma (icon-ul) pentru VI-ul corespunztor calculului valorii medii

1.2.2.2.

Construcia unui instrument virtual

1.2.2.2.1.
Introducere
La selectarea opiunii New VI din meniul principal (versiunea 5, 6) sau pentru
versiunea 8.2 se deschid dou ferestre de lucru suprapuse corespunztoare panoului
frontal i respectiv diagramei (fig.4.8).
Bara orizontal cu meniuri conine opiuni implementate n aplicaiile Windows
(File, Edit,) i unele specifice mediului LabView.
Pentru un lucru uor cele dou pagini se pot aranja relativ una fa de alta:
Selectnd din bara meniului orizontal Windows / Tile Left and Right cele dou
pagini se poziioneaz vizibil pe aceeai orizontal.
Selectnd din bara meniului orizontal Windows / Tile Up and Down cele dou
pagini se poziioneaz vizibil pe aceeai vertical;
Selectnd din bara meniului orizonal Windows / Full Size se obine maximizarea
paginii de lucru respective. Trecerea n cea de a doua pagin se realizeaz
selectnd din nou de ex.: Windows / Show Block Diagram sau Windows / Show

6
Front Panel.

Fig. 1.8 Ferestrele de lucru corespunztoare panoului frontal i diagramei

Prin selectarea unei opiuni din bara orizontal superioar, prin butonul stng al
mouse-lui, se deschide un submeniu derulant cu o serie de opiuni dispuse pe verical.

Fig. 1.9 Meniul derulant pentru opiunea File

Modul este specific programelor sub Windows iar opiunile sunt n general
clasice. Pentru meniul derulant corespunztor opiunii File (fig.1.9) semnificaiile sunt:
opiunea Fiier File permite utilizatorului realizarea unor operaii de

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

gestionare a fiierelor: lansarea operaiei de creare a unui nou VI (New),


deschiderea unui VI existent (Open), nchiderea ferestrei de lucru curente
(Close), salvarea modificrilor realizate asupra VI (Save), salvarea VI cu opiune
pentru numele fiierului, director etc.(Save As), lansarea n lucru a unui nou
proiect (New Project), deschiderea unui proiect existent (Open Project) opiuni
de tiprire (Print...) s.a.m.d.
Opiunea de asisten Help este de asemenea specific sistemelor de operare i
asigur faciliti de obinere a unor informaii despre elementele de lucru,
program de instruire, versiunea mediului de lucru etc.
Opiunile din a doua bar orizontal (pagina panou frontal) sunt specifice
LabView (fig.4.10):
a - Run lanseaz n execuie programul de lucru. Programul de lucru este
modulul principal al aplicaiei i apeleaz alte VI;
b - Run Continuously - programul este executat continuu;
c - Abort Execution realizeaz oprirea rulrii;
d - Pause realizeaz o oprire temporar a rulrii programului;
e - ...Font opiuni pentru selectarea fontului de text dorit;
f - Sunt patru opiuni n ordine Align Objects, Distribute Objects, Resize
Objects, Reorder care permit alinierea, distribuirea obiectelor selectate n
panoul frontal, redimensionarea sau reordonarea acestora.

b c

Fig. 1.10 Opiunile din bara a doua orizontal

Semnificaii asemntoare sunt alocate i n bara orizontal din pagina diagramei


VI (fig.4.11). Semnificaiile a - d sunt identice cu cele anterioare iar urmtoarele se
refer la:
e Highlight Execution prin selectarea opiunii execuiunea progamului este
ncetinit i se vizualizeaz ntregul transfer de date;
f Retain Wire Values reinerea valorilor pentru fluxul de date din firul
selectat.

Fig. 1.11 Opiunile din pagina diagramei

Am prezentat n cele anteriore cadrul general n care un utilizator urmeaz s


construiasc un intrument virtual. n acest scop, utilizatorul va apela la trei casete:

8
Caseta cu instrumente Tools Palette care devine vizibil prin selectarea
opiunii View / Tools Palette;
Caseta cu controale Controls Palette care devine vizibil prin selectarea n
pagina panoului frontal a opiunii View / Controls Palette;
Caseta cu funcii Functions Palette care devine vizibil prin selectarea n
pagina diagramei a opiunii View / Functions Palette.
n cazul versiunilor anterioare (5, 6) casetele de lucru se activeaz din opiunea
Windows / Controls Palette sau Windows / Functions Palette.
1.2.2.2.2.
Caseta cu instrumente (Tools Palette)
Caseta cu unelte generale (Tools Palette) cuprinde facilitile folosite de
utilizator pentru crearea, editarea sau trasarea execuiei instrumentelor virtuale. n
figura 4.12 se prezint imaginea casetei cu instrumente de lucru. Imaginea acesteia i
facilitile oferite sunt aceleai pentru versiunile LabView menionate.

Fig. 1.12 Caseta cu instrumente

Pentru a fi activ una dintre facilitile oferite de caset este necesar s fie
selectat cu ajutorul mouse-lui. n figura 4.12 este activ facilitatea a2. Semnificaia
fiecreia dintre aceste faciliti este urmtoarea:
a1 instrumentul de operare permite manipularea controalelor i
indicatoarelor pe panoul frontal;
a2 instrumentul de editare permite selectarea, deplasarea sau
redimensionarea obiectelor;
a3 - instrumentul de etichetare permite introducerea textului de la tastatur;
b1 instrumentul interconectare - se folosete n diagrama bloc, pentru a realiza
legturile ntre noduri (elementele de execuie) n conformitate cu schema logic
de lucru. Firele definesc fluxul datelor;
b2 instrument pentru afiarea meniului aparent - permite deschiderea casetei
meniu a obiectului vizat din panoul frontal prin butonul stng al mouse-lui;
b3 instrumentul de defilare - permite defilarea coninutului ecranului, fr a se

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

utiliza barele de defilare ale ferestrei de lucru;


c1 instrumentul de depanare : permite ntreruperea execuiei IV. Se folosete la
depanarea programului;
c2 instrument sond (prob) : permite vizualizarea valorii transmise pe un fir
de legtur n faza de execuie a programului. Se utilizeaz n general n faza de
depanare a programului (fig.4.13);

Fig. 1.13 Modul de utilizare al sondei

c3 instrumentul pentru culoare - permite preluarea culorii obiectului asupra


cruia se execut clic cu butonul stnga al mouse-lui;
d instrumentul de colorare: permite stabilirea culorilor pentru prim planul i
fundalul obiectelor.
Numele fiecreia dintre faciliti devine vizibil pentru un scurt timp la
poziionarea mouse-lui deasupra iconu-lui corespunztor instrumentului.
1.2.2.2.3.
Caseta cu controale (Controls Palette)
LabView dispune de controale i indicatoare pentru majoritatea categoriilor de
date: numerice, ir de caractere, boolean, tabel, tablou, grafic etc. Pentru un anumit tip
de date sunt disponibile mai multe variante de controale i indicatoare. Utilizatorul
poate s aleag din variantele disponibile pe cea mai sugestiv pentru instrumentul
vizat. Afiarea casetei cu controale dac nu este vizibil se poate realiza fie prin
selectarea din meniul principal, fie prin poziionarea cursorului mouse-lui n interiorul
panoului frontal i click cu butonul drept.
Semnificaia grupului de elemente din caset este indicat prin denumirea
fiecrui grup n mod vizibil sub icon-ul caracteristic (fig.4.14). Poziionarea mouse-lui
deasupra unuia din grupul de elemente deschide o subcaset cu toate elementele
disponibile n grupul respectiv (fig.4.15).
Plasarea elementului selectat pentru construcia VI n panoul frontal se
realizeaz prin selectarea din caset i tragerea acestuia cu mouse-ul n zona de lucru
i confirmarea poziiei n panoul frontal prin mouse. Plasarea elementului pe suprafaa
panoului frontal este nsoit de apariia n diagram a unui corespondent colorat cu o
etichet avnd acelai nume cu cel plasat n panoul frontal.
Un element oarecare al acestei casete poate ndeplini n general dou roluri: rol

10
de control adic de prescriere a unei valori sau un rol de indicator adic de vizualizare
a unei informaii. Recunoaterea uneia sau a alteia dintre stri este posibil prin
urmrirea liniei de contur exterior pentru icon-ul elementului reprezentat n diagram.
Elementele de tip control au linia exterioar a conturului groas iar indicatorul are linia
de contur subire.
Fig. 1.14 Caseta de controale (a) i elementele componente din grupul Graph (b)

Fiecrui control / indicator i este ataat un meniu contextual care permite


afiarea unor elemente suplimentare, selectarea unui anumit comportament, domeniul
valorilor posibile etc.:
Replace permite nlocuirea componentei cu alta dac aceasta este mai
convenabil n construcia VI-lui;
Representation permite selectarea formatului numeric: ntreg pe x bii cu semn
(Ix), ntreg pe x bii fr semn (Ux), virgul mobil, precizie simpl (SGL),
virgul mobil, precizie dubl (DBL), precizie extins (EXT),... ;
Data range permite selectarea valorii iniiale, incrementarea, valoarea minim
i maxim, formatul de notare a valorilor numerice, textul etichetei;
Format & Precision permite selectarea modului de notare a valorilor
numerice;
Scale permite selectarea formatului, a preciziei, grafica scalei, tipului scalei
(liniar, logaritmic).
Din acest meniu este posibil trecerea elementului din modul de lucru control n
modul de lucru indicator i invers. Pentru aceasta se selecteaz opiunea Change to...
(fig.4.15).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

11

Fig. 1.15 Controlul i meniul contextual corespunztor

Un clic cu butonul drept, pe scala ataat graficii obiectului, deschide meniul


contextual de aceeai configuraie pentru toate controalele i indicatoarele de tip
numeric (fig.4.16). n exemplul din figura 4.16 pentru opiunea Style se pot modifica
formele de prezentare ale scalei.

Fig. 1.16 Selectarea graficii pentru scal

La alegerea opiunii pentru format & precizie Format & Precision se poate
stabili formatul de lucru pentru scala prezentat i numrul de zecimale n prezentare.

Fig. 1.17 Formatul de lucru

Se prezint n figura 4.18 formatul liniar scalei pentru notaia cu virgul mobil
(VAR 1), notaia tiinific (VAR 2), notaia n inginerie (VAR 3), n format SI (VAR
4),cu trei zecimale i valoarea maxim diferit (VAR 5) i respectiv formatul
logaritmic (VAR 6).

12

Fig. 1.18 Formatul i forme de notare

n figura 4.19 se prezint modul de stabilire a domeniului valorilor posibile


pentru un control. Exist posibilitatea alegerii unui increment implicit (se selecteaz
Use Defaults) sau a unuia impus de utilizator.

Fig. 1.19 Selectarea valorii de incrementare pentru un control

Formatul de reprezentare a datelor numerice confer precizia de operare. n


figura 4.20 se prezint aceste influene n modul de adunare a dou numere A i B.
Rezultatul adunrii este redat de un indicator cu dou forme de reprezentare: ntreg fr
semn (32 bit) (I32) i respectiv real, dubl precizie (64 bit) (DBL).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

13

Fig. 1.20 Influena formatului de prezentare numeric n precizia de operare

1.2.2.2.4.
Caseta cu funcii (Functions Palette)
Dup realizarea panoului frontal al IV , trebuie implementat funcionalitatea
programului. n acest scop se construiete diagrama bloc care reprezint codul surs al
instrumentului adic arat CUM se rezolv problema. n acest scop se utilizeaz
limbajul grafic G. Dac am face o comparaie cu construcia unui instrument fizic
atunci construcia diagramei ar fi echivalent cu conectarea elementelor componente
prin fire, conectori etc.
n diagram se afl corespondentele controalelor i indicatoarelor introduse n
panoul frontal. n continuare utilizatorul selecteaz i utilizeaz componente grafice de
execuie definind astfel funcionalitatea VI.
n figura 4.21a se prezint caseta cu funcii n versiunea LabView 8.2. Aceasta
este structurat pe grupuri de funcii: programare (Programming), instrumente I / O
pentru msurtori (Measurement I / O), instrumentaie I / O (Instrument I /O),
prelucrare imagine i micare (Vision and Motion), matematic (Mathematics),
procesare semnal (Signal Processing),...., bibliotec utilizator (User Libraries),
selectarea unui VI dintr-o bibliotec (Select a VI). Fiecare dintre aceste grupuri de
funcii se deschid ntr-o subcaset de funcii care au ataat un icon sugestiv aplicaiei i
numele acestuia. Noile funcii devenite vizibile pot permite deschiderea unor alte
subcasete cu funcii particularizate. n fig.4.21b se prezint, n sensul celor prezentate
anterior, caseta pentru programare i subcaseta cu funcii pentru comparare.
Fig. 1.21 Caseta cu funcii cu subpaleta funciilor de programare (a) i sub-subpaleta
funciilor booleane (b)

1.2.2.2.5.

Editarea panoului frontal pentru un VI

14
n editarea unui VI putem considera eseniale dou aspecte:
un aspect funcional prin care se urmrete atingerea parametrilor dorii pentru
instrumentul virtual;
un aspect de design prin care se urmrete crearea unui produs cu aspecte
personalizate evideniate prin modul de dispunere a controalelor n panoul
frontal, a formelor i culorilor etc.
n figura 4.22 se prezint panoul frontal al unui instrument virtual n care au fost
selectate n scop funcional un display (Controls/Graph/Waveform Graph), controale
pentru start / stop (Controls/Boolean/Vert Rocker, ../Boolean/Vertical Toogle Switch)
instrumente pentru semnalizare (../Boolean / Round Led) i redarea numeric a
informaiei (Controls/Numeric/Numeric Indicator, ..Numeric / Gauge).

Fig. 1.22 Panou frontal al unui VI

Poziionarea i redimensionarea fiecrui control din panoul frontal s-a realizat


apelnd la facilitatea Tools Palette / Position/Size/Select. Pentru redimensionarea unui
control se selecteaz obiectul cu ajutorul mouse-lui iar apoi se modific mrimea
acestuia la valoarea dorit (pe vertical, pe orizontal sau simultan) prin tragere de
punctele aferente ale conturului.
Coninutul etichetei se modific apelnd la facilitatea Tools Palette/ Edit Text
pentru a trece n regimul de editare a textului i apelnd la Application Font /... din
bara de meniu principal pentru: modificarea stilului .../Style/..Bold, poziionarea
textului ../Style/..Center, mrimea fontului .../Style/Size/.
Particularizarea instrumentului de vizualizare a nregistrrii grafice se realizeaz
apelnd la meniul contextual al instrumentului (clic dreapta n conturul instrumentului)
(fig.4.23). Selectnd facilitatea Properties se poate modifica stilul scalei, stilul pentru
caroiaj (grid), culoarea caroiajului principal i secundar etc. Modificarea valorii
maxime a scalei se poate realiza prin trecerea n regim de text i introducerea valorii
dorite din tastatur. Dac se dorete auto-adaptarea instrumentului la valorile
nregistrate se poate selecta pentru scala dorit (X, Y sau ambele) opiunea Auto Scale.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

15

n cazul nregistrrii grafice a mai multor informaii (mai multe caracteristici) se


selecteaz modul reprezentare dorit (prin puncte, linii, culoare etc.) din Properties /
Plot.
Dac pe parcursul editrii panoului frontal se dorete tergerea unuia sau a mai
multor controale, acestea se selecteaz individual sau n grup (prin fereastr) cu
ajutorul mouse-lui i se apas tasta <Delete>. Pentru pstrarea poziiei relative a
controalelor n panoul frontal acestea se pot include ntr-un grup sau mai multe printr-o
succesiune de operaii: selectarea controalelor (fereastr)/ Reorder / Group.

Fig. 1.23 Indicator grafic i meniul contextual

Pentru a fi ct mai sugestiv, panoul frontal al instrumentului virtual se poate


personaliza prin includerea pe lng controalele specifice aplicaiei i a unor desene ale
instalaiei vizate, scheme, etc. n acest scop se poate apela la facilitatea oferit de
mediul de lucru Controls / Decorations sau se poate importa desenul respectiv dup ce
a fost realizat ntr-un alt mediu. n figura 4.24 se prezint, n sensul celor precizate
anterior, particularizarea panoului frontal pentru un divizor de tensiune.
Particularizarea const n includerea schemei electrice a divizorului i
poziionarea sugestiv a controalelor n panoul frontal. S-a utilizat pentru editarea
schemei electrice facilitatea din mediul LabView. Reprezentarea grafic se poate
realiza i n AutoCAD. Pentru un import de calitate se realizeaz n AutoCAD:
maximizarea imaginii n fereastra de vizualizare (View / Zoom / Extents), o reducere a
scalei de vizualizare (..Zoom 0.95X) i salvare *.wmf. Desenul respectiv se import n
panoul frontal Edit / Import Picture to Clipboard.

16

Fig. 1.24 Panoul frontal al instrumentului virtual

n figura 4.25 se prezint un control i meniul su contextual. Spre deosebire de


cazul indicatorului grafic, n acest caz este necesar i alegerea corect a modului de
reprezentare a informaiei: ntreg cu semn (pe 8 bit I8, pe 16 bit I16, pe 32 bit
I32), ntreg fr semn (pe 8 bit U8, pe 16 bit U16, pe 32 bit U32),...

Fig. 1.25 Control i meniul contextual

1.2.2.2.6.

Editarea diagramei bloc

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

17

Componentele casetei cu funcii se constituie n nodurile diagramei bloc fiind


elementele principale ale diagramei.
Cel de al doilea element pentru diagrama bloc sunt terminalele. Acestea
reprezint pori (tunele) prin care se realizeaz transferul datelor:
bidirecional ntre panoul frontal i diagrama bloc;
unidirecional ntre nodurile diagramei bloc.
n construcia diagamei bloc se recomand respectarea urmtorului principiu:
poziionarea nodurilor s fi fcut astfel nct circulaia informaiei s se fac de la
stnga la dreapta i de sus n jos. n acest mod este simpl i urmrirea legturilor.
Terminalele au o reprezentare grafic sugestiv i sunt terminale surs pentru
datele de intrare i respectiv terminale destinaie (ieire). n figura 4.26 se prezint
icon-ul pentru funcia numeric de adunare n care sunt vizibile terminalele. Notarea
terminalelor respect principiul precizat anterior. Aceste terminale devin vizibile la
poziionarea mouse-lui deasupra sa.

Fig. 1.26 Funcie i terminale

Ultimul element firele definesc i reprezint grafic fluxul datelor n diagrama


bloc. Fluxul datelor este de la terminalele surs spre terminalele destinaie. Prin
culoarea i tipul liniei, firele codific tipul datelor transmise (tabelul 4.1). Conectarea
corect a dou componente din diagrama bloc este sesizat prin existena unui fir de
legtur continuu de culoarea informaiei vehiculate. Dac legtura nu este corect
firul se prezint sub forma unei linii ntrerupte de culoare neagr.
Tabelul 1.1

Scalar
Numeric
Boolean
ir de caractere

Matrice 1D

Matrice 2D

Culoare
Portocaliu
(virgul mobil)
Albastru (ntreg)
Verde
Rou

Construcia diagramei se realizeaz n conformitate cu schema logic pentru


aplicaia dat. Din acest motiv este necesar o cunoatere prealabil a aspectului
funcional / teoretic al instrumentului.
Pentru exemplificarea celor menionate reconsiderm exemplul divizorului de
tensiune pentru care a fost prezentat panoul frontal n figura 4.14. Divizorul de
tensiune face parte din cadrul circuitelor de condiionarea semnalului i permite
reducerea tensiunii de ieire din circuit (fig.4.27). n conformitate cu schema electric,
tensiunea de ieire se calculeaz ca fiind:

18

Ue

Ui
R2
R1 R2

( 1.0)

Fig. 1.27 Schema electric a divizorului de tensiune

n panoul frontal au fost introduse patru elemente: un control pentru tensiunea de


intrare, dou controale pentru rezistene i un indicator pentru tensiunea de ieire. n
diagrama bloc aceste elemente trebuie s respecte succesiunea logic a operaiilor
matematice din relaia (4.3). n acest scop s-au introdus n mod suplimentar n
diagram urmtoarele funcii (Functions / Programming / Numeric):
Funcia de adunare Add pentru nsumarea valorilor rezistenelor;
Funcia de mprire Divide pentru obinerea valorii raportului ( tensiune / sum
rezistene);
Funcia de nmulire Multiply pentru nmulirea rezultatului anterior cu valoarea
rezistenei R2.
Diagrama bloc rezultat este prezentat n figura 4.28.

Fig. 1.28 Diagrama bloc pentru VI-ul divizorului de tensiune

Introducerea de controale i indicatoare suplimentare se poate realiza i din


diagrama bloc prin apelarea meniului contextual al funciei n cauz. Astfel de cerine
pot s apar pe parcursul editrii diagramei bloc iar controalele respective s-ar constitui
n elemente suplimentare care dau o claritate superioar instrumentului virtual. n
figura 4.29 este exemplificat modul de apelare al meniului contextual pentru o funcie

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

19

de comparare n scopul introducerii unui indicator pe parcursul editrii diagramei bloc.


Confirmarea posibilitii de a lega cele dou obiecte const din schimbarea
promterului pentru mouse n semnul grafic din caseta de unelte (fig.4.30). Pentru a crea
legtura ntre cele dou terminale se apeleaz la butonul stng al mouse-lui i se
deplaseaz de la un terminal la cellalt (fig.4.31)

Fig. 1.29 Introducerea unui indicator prin apelarea meniului contextual

Fig. 1.30 Mouse-ul i semnul activ aferent posibilitii de conectare a obiectelor

tergerea unui fir se realizeaz prin selectare i apsarea tastei <Delete>. Un


segment a firului este un fragment orizontal sau vertical a acestuia. Punctul de ntlnire
dintre trei sau patru segmente de fir definesc o jonciune. O ramificaie conine toate
segmentele de fir de la o jonciune la alta, de la un terminal la jonciunea urmtoare,
de la un terminal la altul dac nu este nici o jonciune ntre ele (fig.4.32).

Fig. 1.31 Conectarea a dou obiecte din diagrama bloc

20

Fig. 1.32 Segment, cot i nod n conectarea obiectelor

Un clic simplu (butonul stng al mouse-lui) selecteaz un segment al firului


(fig.4.33a). Dublu-clic selecteaz o ramificaie (fig.4.33b) iar un triplu-clic selecteaz
ntregul fir (fig.4.33c).
Fig. 1.33 Modaliti de tergere a firelor

1.2.2.3.
Tehnici de depanare n funcionarea instrumentului
virtual
Dup editarea panoului frontal i a diagramei bloc urmtorul pas pe care
utilizatorul trebuie s l fac este verificarea funcionrii instrumentului virtual.
Lansarea n lucru a programului se realizeaz prin selectarea tastei Run sau Run
Continuosly din bara de meniu orizontal.
Dac din punct de vedere tehnic instrumentul virtual este corect construit,
utilizatorul va constata c acesta funcioneaz iar acest lucru este semnalizat n a doua
bar de meniu orizontal care va avea aspectul din figura 4.34.

Fig. 1.34 Aspectul barei de meniu la funcionarea instrumentului virtual

Dac din punct de vedere tehnic exist erori de editare (fire ntrerupte,
controale neconectate sau n plus, fr rol funcional) acest lucru este semnalizat iar
programul nu poate fi lansat n execuie (fig.4.35).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

21

Fig. 1.35 Eroare de editare, list de erori

Existena erorii este semnalizat pe bara de meniu orizontal prin icon-ul haurat
al opiunii Run.Apsarea acestui buton (butonul stng al mouse-lui) deschide o caset
cu erorile din program. Detalii suplimentare privind cauzele posibile ale erorii sunt
precizate n partea inferioar a listei de erori (Error list, Details). Un dublu click n
zona erorii din lista deschis, va localiza eroarea din diagrama bloc. Dup nlturarea
cauzelor care au dus la eroarea de funcionare, icon-ul opiunii Run i recapt
aspectul normal (sgeat cu interior nehaurat).
Una din cauzele frecvente ale erorilor de funcionare const n existena unor
fragmente de fir neconectate n diagrama bloc datorit aspectului invizibil n primul
moment pentru utilizator: sunt acoperite cu alte obiecte, sunt n alt parte a spaiului de
lucru dect cel vizibil pentru utilizator etc. Eliminarea acestor fragmente ascunse este
posibil prin selectarea opiunii (bara de meniu orizontal) Edit / Remove Broken
Wires.
Pentru emiterea concluziei instrumentul virtual funcioneaz correct este
necesar o verificare a rezultatelor finale prin comparare cu valori estimate / calculate.
O astfel de verificare poate elimina n mod rapid unele din cauzele funcionrii
incorecte a instrumentului.
O atenie deosebit trebuie acordat corelrii unitilor de msur pe de o parte i
a modului de transfer a informaiilor de forme diferite de exprimare (numerice,
Boolean, ir de caractere etc.)
Se pot meniona cteva faciliti de testare a progamului editat:
execuia programului prin evideniere (diagrama bloc / bara de meniu orizonal

22
/ Highlight Execution). n cadrul fiecrui ciclu de execuie a programului este
evideniat valoarea de execuie pe fiecare obiect din diagrama bloc (fig.4.36).
n acest mod este posibil determinarea acelui punct din care programul nu
funcioneaz correct.
Fig. 1.36 Diagrama bloc la execuia programului prin evideniere

execuia programului dup selectarea opiunii Retain Wire Values permite


vizualizarea valorii informaiei pe oricare dintre firele de legtur din diagram
prin simpla plasare a mouse-lui peste firul respective. Apariia unei etichete n
care este trecut valoarea informaiei vehiculate este nsoit i de apariia
temporar a iconu-lui cu instrumental corespunztor probei din caseta de
instrumente.
pentru vizualizarea permanent a unei valori pe un anumit canal (fir) se
selecteaz din caseta cu instrumente opiunea instrumentului de prob Caseta cu
instrumente(Tools Palette) / Probe Data. Aciunea are ca rezultat nlocuirea
prompterului mouse-lui cu instrumental de prob dup care acesta este plasat pe
firul vizat. Aciunea se ncheie prin apariia n zona firului a unei eticehete care
marcheaz numrul de ordine a probei (pentru a o putea identifica dac acestea
sunt multiple), o caset cu o zon de vizualizare a valorii (fig.4.37). Dac firul
vizat este conectat pe terminalul de ieire a unui control, caseta evideniaz i
denumirea acestuia. Dac firul vizat este conectat pe terminalul de ieire a unei
funcii, se evideniaz doar valoarea informaiei.
vizualizarea execuiei programului n mod succesiv pe obiecte este posibil prin
selectarea din bara de meniu orizontal a diagramei bloc a opiunii Start Single
Stepping. La prima selectare este marcat primul obiect executat n program. La
apsarea urmtoare este evideniat urmtorul obiect s.a.m.d. n acest mod
utilizatorul poate stabili dac succesiunea operaiilor este cea corect sau nu. n
cazul progamelor complexe acest lucru ar conduce la un consum mare de timp.
Din acest motiv utilizatorul poate selecta un punct din program pe care s l
declare punct de oprire pn n care programul funcioneaz normal i dup care
se trece la o execuie pas cu pas. Marcarea punctului respectiv se face dup
selectarea opiunii din caseta de instrumente (Tools Palette)/ Set /Clear
Breakpoint. Cu ajutorul mouse-lui se identific firul iar aciunea care are ca
rezultat vizualizarea unui punct rou pe firul n cauz.
Fig. 1.37 Diagrama bloc cu utilizarea instrumentului de prob

Dup verificarea corectitudinii funcionrii instrumentului virtual acesta poate fi


salvat (LabView / ....).
1.2.2.4.
Crearea pictogramei instrumentului virtual
Dup construirea instrumentului virtual i n ideia utilizrii ulterioare ca subVI,
acestuia i se poate asocia o pictogram / icon prin care s fie reprezentat n
construciile viitoarelor instrumente care l apeleaz. Acest subVI trebuie s aib un
conector pentru transferal de date .
Pentru construcia pictogramei se parcurg urmtoarele etape:
Selectarea diagramei construite prin utilizarea uneltei Tools Palette/ Position /

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

23

Size / Select;
Selectarea opiunii pentru crearea unui subVI: ...bara de meniu orizontal
diagrama bloc / Edit / Create SubVI. Aciunea are ca rezultat nlocuirea
instrumentului virtual cu un icon de form general. Se exemplific acest lucru
pentru diagrama VI-lui corepunztor divizorului de tensiune (fig.4.38). Rmn
n afara icon-ului doar controalele i indicatoarele instrumentului virtual;
Salvarea SubVI lui creat prin procedura clasic: File/Save As (dup
ndeprtarea controalelor i indicatoarelor din afara iconu-lui);

Fig. 1.38 Crearea unui subVI

Se deschide panoul frontal al SubVI-lui creat prin apelarea meniului contextual


al icon-ului rezultat i selectarea opiunii Open Front Panel (fig.4.39);
Se selecteaz editarea icon-lui caracteristic pentru SubVI creat (fig.4.40)(click
cu butonul stng n suprafaa icon-ului). Aciunea are ca rezultat apariia casetei
de lucru din figura 4.41.

24

Fig. 1.39 Deschiderea panoului frontal

Fig. 1.40 Selectarea opiunii de editare a icon-ului

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

25

Fig. 1.41 Caseta de editare a icon-ului

Se particularizeaz icon-ul specific pentru problema dat : se utilizeaz


facilitile legate de text, culoare, linii, tergere etc. disponibile n caseta cu
unelte din figura 4.42. Semnificaia fiecreia dintre utiliti este prezentat n
tabelul 4.2. Icon-ul personalizat este prezentat n figura 4.38 iar icon-ul i
terminalele subVI-lui n figura 4.44.

Fig. 1.42 Caseta cu instrumente pentru editare

Fig. 1.43 Icon-ul personalizat

Fig. 1.44 Icon-ul personalizat i terminalele vizualizate

26
Tabelul 1.2

Simbol

Denumire
Creion

Descrierea facilitilor
Deseneaz sau terge pixel cu pixel. Prin apsarea
tastei <Shift> i tragere simultan a mouse-lui se
pot trasa linii orizontale sau verticale

Linie
Selector
culoare

Deseneaz linii. Prin folosirea tastei <Shift> i


tragerea simultan a mouse-lui se traseaz linii
orizontale sau verticale
Selecteaz culoarea de desenare prin prelevare
din pictogram

Umplere

Umple o suprafa preselectat cu culoare de fond

Dreptunghi

Deseneaz un dreptunghi cu culoarea curent

Dreptunghi
plin

Deseneaz un dreptunghi cu culoarea curent i l


coloreaz cu culoarea de fond

Selectare

Selecteaz o parte a pictogramei


repoziionare, copiere sau tergere
Permite scrierea textului n pictogram

Text

pentru

Culoare
Afieaz culoarea curent de desenare i culoarea
curent / de de fond
fond
Se salveaz construcia astfel realizat cu numele subVI-lui dorit;
Utilizarea noului subVI se realizeaz prin apelarea funciei Select SubVI
(fig.1.45)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

27

Fig. 1.45 Apelarea unui VI din caseta de funcii

1.2.2.5.

Structuri de program

1.2.2.5.1.
Introducere
Circulaia datelor n mediul LabView i prin aceasta arhitectura instrumentului
virtual are la baz funciile structurale (fig.4.46). n grupul de funcii structurale sunt
incluse i funciile legate de crearea unor variabile i o funcie grafic.
Semnificaia acestor funcii este urmtoarea:
a1 bucla For (For Loop)
b1 bucla While (While Loop)
c1 structuri dependente de timp (Timed Structures)
a2 structura Case (Case Structures)
a3 structur secvenial plat (Flat Sequence Structure)
b3 structur secvenial stivuit (Stacked Sequence Structure)
c3 structur de evaluare matematic (Formula Node)
a4 structur de dezactivare a diagramei (Diagram Disable Structure)
b4 structur de dezactivare condiionat (Conditional Disable Structure)
c4 nod feedback (Feedback Node)

28

a5 variabil partajat (Shared Variable)


b5 variabil local (Local Variable)
c5 variabil global (Global Variable)
b6 elemente de grafic (Decorations)

Fig. 1.46Funciile structurale

n variantele LabView 5, LabView 6 numrul de structuri utilizate este mai


redus: structura secvenial, bucla While, bucla For, bucla Case.
Fcnd o analogie cu instrumentele fizice, aceste funcii ar echivala cu plcile de
circuit, circuite logice s.a.m.d.
1.2.2.5.2.
Structuri secveniale
O secven structural conine una sau mai multe subdiagrame sau cadre (frame)
care se execut n ordine secvenial. n interiorul fiecrui cadru al unei structuri
secveniale, ca i n restul diagramei bloc, dependena datelor determin ordinea de
execuie a nodurilor.
Secvenele structurale sunt recomandate pentru a controla succesiunea execuiei
programului cnd nu exist o dependen natural a datelor i nu sunt disponibili
parametrii de flux de trecere (flux through).
Exist dou secvene structurale: structur secvenial plat (Flat Sequence
Structure) i structur secvenial stivuit (Stacked Sequence Structure). Acestea se
apeleaz selectnd: Functions / Programming / Structures / Flat Sequence Structure
sau Functions / Programming / Structures / Stacked Sequence Structure.
Structura secvenial plat (fig.4.47) se utilizeaz pentru a asigura execuia unei
subdiagrame nainte sau dup o alt subdiagram. Adugarea unei noi structuri
secveniale se obine prin click - dreapta pe chenarul structurii i apelarea facilitii

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

29

dorite din meniul contextual. Un clik dreapta pe bara orizontal a chenarului ofer
dou faciliti: introducerea unei structuri secveniale n fa (Add Frame Before) sau
introducerea unei structuri dup (Add Frame After). Un click dreapta pe bara
vertical a chenarului ofer doar una din cele dou posibiliti: pe bara stng permite
Add Frame Before iar pe bara dreapt permite Add Frame After. Un click-dreapta pe o
bar vertical a chenarului pentru o structur secvenial intermediar ofer facilitatea
Insert Frame.

Fig. 1.47 Structur secvenial plat

Structurile secveniale plate se execut de la stnga la dreapta cnd toate datele


legate la cadru sunt disponibile. Se recomand structura secvenial plat pentru a evita
secvenele locale i pentru o documentare mai bun a diagramei bloc. n figura 4.48 se
prezint o editare a unei structuri secveniale plate formate din trei cadre.

Fig. 1.48 Exemplu de structur secvenial plat cu 3 cadre

n primul cadru se realizeaz operaia de multiplicare a valorii controlui introdus


n panoul frontal iar rezultatul este transferat spre cadrul 2. n cadrul 2 i 3 se execut
alte dou operaii matematice care se bazeaz pe rezultatul anterior. Condiionarea
privind succesiunea operaiilor i o ordonare clar a diagramei s-a soluionat astfel prin
structura secvenial plat.
n figura 4.49 se prezint o structur secvenial stiv format din 3 cadre (0, 1,
2) cadrul activ n figura prezentat fiind cadrul 1.

Fig. 1.49 Structur secvenial cu dou cadre

30
n fiecare cadru se pot introduce nodurile existente sau edita altele noi. Diagrama care
trebuie execut prima se introduce n cadrul 0, diagrama care trebuie executat a
doua n cadrul 1 s.a.m.d.
O exemplificare a utilizrii structurii secveniale stiv este prezentat n
figura 4.50.
Fig. 1.50 Exemplu de structur secvenial stiv: a cadru 0; b cadru 1; c cadru 2

In primul cadru se realizeaz conform schemei logice impuse o operaie de


multiplicare iar rezultatul este vizualizat prin indicatorul Numeric 2 i utilizat att n
cadrul 2 ct i n cadrul 3. Acest lucru este posibil prin crearea secvenei locale apelnd
din meniul contextual pentru click dreapta pe conturul vertical al cadrului (fig.4.51).
Secvena local devine activ dup conectarea unui fir la aceasta. Starea activ
este semnalizat prin apariia unei sgei n interiorul semnului alocat secvenei.Pe
acelai principiu rezultatul operaiei matematice din cadrul 2 este posibil s fie utilizat
n cadrul 3 (dar nu i n cadrul 1, fluxul datelor fiind doar spre cadrele de ordin
superior).
Terminalul local al secvenei poate fi mutat de utilizator cu unealta de editare ori
unde pe cadrul instruciunii. Se recomand asocierea unei etichete descriptive firelor
conectate la terminalele de intrare / ieire locale ale secvenei.

Fig. 1.51 Crearea secvenei locale i semnul aferent terminalului

1.2.2.5.3.

Bucla For

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

31

Bucla For repet un fragment din codul diagramei bloc de un numr


predeterminat de ori. Aceast structur este echivalent cu ciclul For din programarea
clasic.
Structura se poate apela prin selectarea Functions / Programming / Structures/
For Loop. Rezultatul seleciei const n posibilitatea editrii n spaiul diagramei bloc a
unui cadru care se dimensioneaz scopului urmrit (fig.4.52). Sunt remarcate dou
terminale:
Contorul N care indic numrul de cicluri n de executat din operaiile
considerate. Valoarea acestuia se impune s fie un numr natural.
Indexul i care indic valoarea curent a iteraiei i ia valori n intervalul

[0 n 1]

Fig. 1.52 Bucla For

Pentru exemplificare, n figura 4.53 este prezentat diagrama bloc - bazat pe o


structur For i panoul frontal pentru construcia funciei sin. Funcia sin n
cadrul buclei For a fost apelat din caseta de funcii: Functions / Mathematics /
Elementary & Special Functions / Trigonometric Functions.

Fig. 1.53 Exemplificarea buclei For prin construcia funciei sin

Bucla For poate lucra cu regitrii de deplasare. Acetia se utilizeaz pentru


transferal datelor de la o iteraie ctre iteraia urmtoare. Acetia se pot accesa apelnd
din meniul contextual dup click - dreapta pe bara vertical a cadrului (fig.4.54).
Registru de deplasare conine dou terminale corespondente, situate n opoziie, pe cele
dou bare verticale ale cadrului. Terminalul din dreapta memoreaz valoarea la
sfritul iteraiei. Un registru de deplasare poate lucra cu orice tip de date: numeric,

32
Boolean, ir de caractere etc.
O facilitate important este aceea c regitrii de deplasare pot readuce n iteraia
curent rezultate din iteraii anterioare. Aceast facilitate este extrem de util cnd se
fac medieri ale datelor. n acest caz este necesar s se creeze terminale adiionale pe
bara din stnga a cadrului buclei apelnd Add Element dup click dreapta n terminalul
registrului (fig.4.55).

Fig. 1.54 Apelarea regitrilor de deplasare (a) i semnul aferent terminalelor (b)

Fig. 1.55 Terminale adiionale suplimentare

1.2.2.5.4.
Bucla While
Aceasta se apelezeaz prin Functions / Programming / Structures/ While Loop.
Bucla unei informa repet de mai multe ori o secven de cod din diagrama bloc atta
timp terminalul condiional (este un terminal de intrare) primete o valoare Boolean
particular. Cadrul de lucru dispune de un terminal de iteraie i i terminalul de
condiionare (fig.4.56). Dup selectare i dimensionarea cadrului la dimensiunea dorit
se pot introduce obictele necesare pentru editare. Valoarea Boolean particular se
selecteaz din meniul contextual (fig.4.56). n versiunile LabView 5, LabView 6 bucla
While avea o singur opiune: continu pn cnd valoarea este adevrat (Continue if
True).
Bucla While dispune de facilitatea lucrului cu regitrii de deplasare n mod
asemntor ca i n cazul buclei For .

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

33

Fig. 1.56 Bucla While i terminalele aferente

Exemplificm utilizarea buclei While n construcia unui instrument virtual


pentru achiziia unei informaii. n acest scop apelm la o structur secvenial n stiv
cu dou cadre.
n primul cadru se introduce bucla While iar n cadrul al doilea funcia de
generare a unui numr aleatoriu (Functions / Programming / Numeric / Random
Number (0 1)) i achiziia semnalului (Controls / Graph / Waveform Chart).
Achiziia de date demareaz prin apsarea unui alt buton i dureaz atta timp
ct acest buton nu i schimb starea logic. Butoanele se selecteaz din caseta de
controale: Controls / Modern / Boolean.

Fig. 1.57 Selectarea aciunii mecanice pentru un buton de apsare

Alegem din caset un buton de apsare (Push Button). Alegerea aciunii


mecanice a controlului Boolean se poate realiza fie selectnd Mechanical Action
(fig.4.57) fie din caseta de proprieti a acestuia (fig.4.58). A doua variant are

34
avantajul i posibilitii de vizualizare a modului de aciune (Preview Selected
Behavior).

Fig. 1.58 Caseta cu proprieti a butonului de apsare

Diagrama bloc cu structura secvenial stiv este prezentat n figura 4.59.

Fig. 1.59 Exemplificarea utilizrii structurii secveniale stiv: a cadrul 0; b cadrul 1

1.2.2.5.5.
Structura de tip caz Case
Structura Case se poate plasa n diagrama bloc dup selectarea ei din caseta de
funcii: Functions / Programming / Structures / Case. Este o structur existent i n
versiunile LabView 5, LabView 6 i echivaleaz cu instruciuni de tipul If Thendin
programarea clasic bazat pe text.
Reprezentarea grafic a structurii are la baz un cadru redimensionabil la
cerinele utilizatorului, un terminal selector i o etichet a selectorului (fig.4.60).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

35

Fig. 1.60 Structura Case

Adugarea sau tergerea unui cadru este posibil prin click dreapta pe cadru i
alegerea opiunii dorite din caseta de meniu deschis: adugarea unui caz dup( Add
Case After), adugarea unui caz nainte(Add Case Before), tergerea acestui caz
(Delete This Case), nltura cazurile goale (Remove Empty Cases), etc. Valoarea
conectat la terminalul selector determin care caz se execut. Valoarea de control
poate fi de tip Boolean (exist dou cazuri True i False), de tip numeric, de tip ir sau
de tip enumerate.
Varianta implicit a structurii Case este cu valoarea de control de tip Boolean
(fig.4.61).

Fig. 1.61 Structura Case pentru variabil de control Boolean

Pentru valoarea de control de tip ir se introduc valorile n eticheta selectorului


prin apelarea Add Case After sau Add Case Before. Funcie de informaia de pe
terminalul selector se va executa secvena de cod coninut n cadrul respectiv
(fig.4.62).

36

Fig. 1.62 Structura Case cu variabil control ir

Pentru valoare de control de enumerare se introduce n panoul frontal un control


Enum (Controls / Modern / Ring & Enum / Enum) i se conecteaz n diagrama bloc
pe terminalul selector de intrare. Printr-un clik dreapta se deschide caseta de dialog al
controlului Enum din care se selecteaz - Add Case After sau Add Case Before introducerea valorii de control. Dup introducerea tuturor valorilor dorite, actualizarea
etichetei selectorului se face selectnd opiunea Add Case for Every Value din caseta de
dialog derulant a etichetei selectorului (fig. 4.63). O astfel de structurare este util
pentru construirea unui generator de semnal virtual.

Fig. 1.63 Structura Case cu variabil control de enumerare

Varianta pentru valoare de control numeric este exemplificat n figura 4.64.


Valorile de control au fost inserate n eticheta selectorului pe principiul variantei
ir. n exemplul construit exist ase cadre cu secvene de calcul numeric iar rezultatul
este afiat pe un indicator numeric. Prin controlul numeric Dial se selecteaz care din
cele ase cazuri se execut. n figura 4.64 s-a prezentat execuia cazului al aselea.

Fig. 1.64 Exemplficarea structurii Case cu variabil de control numeric: a panoul frontal;
b diagrama bloc

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

37

Structura nodul formul / de calcul


(Formula Node )

1.2.2.5.6.

Nodul Formula realizeaz evaluarea numeric a formulelor sau expresiilor n


diagrama bloc, similar cu C.
Noua structur se apeleaz n mod asemntor cu cele anterioare. Dup apelare
i redimensionarea cadrului la dorina utilizatorului, se poate introduce n ea modelul
matematic dorit utiliznd instrumental de editare din caseta de lucru cu instrumente
(Tools Palette).
Avantajele utilizrii formulelor de calcul sunt urmtoarele:
Se uureaz scrierea, depanarea i nelegerea formulelor matematice;
Se elimin erorile, care pot aprea la transcrierea formulelor matematice
complexe n limbajul grafic (se folosesc noduri i fire);
Se reduce suprafaa ocupat n diagrama bloc fa de cazul implementrii prin
noduri i fire
Editarea instruciunilor de atribuire se realizeaz cu uneltele de etichetare sau de
operare. Finalizarea operaiilor este determinat de selectarea din bara cu unelte a
opiuni <Enter> sau prin acionarea butonuluidin tastatur. Trecerea de la un rnd la
urmtorul se realizeaz n acelai mod, prin tasta <Enter>.
Caseta pentru variabilele de intrare se adug pe conturul grafic al nodului prin
meniul contextual asociat chenarului: Add Input / Add Output (fig.4.65a). Denumirea
variabilei se editeaz n caseta vizat cu ajutorul instrumentului de editare (Tools
Palette). In general variabilele de intrare se poziioneaz n stnga iar cele de ieire n
dreapta.
Nodul Formula agreaz lucru cu o serie de funcii (tabelul 4.3) i o serie de
operatori (tabelul 4.4).

Fig. 1.65 Caseta i variabilele de intrare


Tabelul 1.3

Funcia (sintax)

abs (x )
a sin( x ) , a cos(x ) ,
a tan(x )

Semnificaie
Returneaz valoarea absolut a lui x
Returneaz inversa funciei trigonometrice n rad

38

exp(x )
int(x)
max( x, y )
min( x, y )
sqrt (x)
sin( x), cos( x), tan( x)
ln(x)
log(x)
log 2( x)

Calculeaz valoarea lui e la puterea x


Returnraz cel mai apropiat ntreg a lui x
Returneaz valoarea maxim dintre x i y
Returneaz valoarea minim dintre x i y
Calculeaz radicalul din x
Calculeaz valoarea funciei trigonometrice
pentru x n rad
Calculeaz logaritmul natural din x
Calculeaz logaritmul n baza 10 din x
Calculeaz logaritmul n baza 2 din x
Tabelul 1.4

Operator
=
+, -, *, /, **
||, &&
<, <=, >, >=, !=, ==
?:

Semnificaie
atribuire
Adunare, scdere, nmulire, mprire, ridicare la
putere
SAU logic, SI logic
Mai mic, mai mic sau egal, mai mare, mai mare sau
egal, diferit, egalitate
Dac valoarea logic a expresiei analizate este
adevrat <TRUE> atunci valoarea rezultatului este
<rezultat 1> iar n caz contrar este <rezultat 2>

Se recomand comentarea operaiilor: nceputul comentariului este cu


caracterele /* i se termin cu secvena */. n figura 4.66 se prezint starea
panoului frontal de evideniere a rezultatelor i partea de diagrama. Se poate remarca
prezena comentariilor de nceput i sfrit.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

39

Fig. 1.66 Panoul frontal si diagrama pentru formula nod

Unele variabile pot s fie declarate n interiorul structurii, obligatoriu nainte de


relaia de calcul care le apeleaz. n figura 4.67 se exemplific modul de declarare
intern a variabilelor i calculul rdcinilor pentru ecuaia de gradul 2.

Fig. 1.67 Declararea variabilelor pentru formula nod

Structura Formula Node poate fi utilizat pentru implementarea unor bucle de


calcul condiionale. Exemplificm aceast posibilitate n evaluarea expresiei y x .
n limbajul de programare clasic codul corespunztor este prezentat n figura 4.68 i
are semnificaia:
dac x 0 atunci execuia programului returneaz valoarea radicalului;
dac x 0 atunci execuia programului returneaz expresia y 1 .
Modul de implementare n LabView este ilustrat n figura 4.63. Cele dou cazuri
posibile sunt evideniate n fig. 4.68a i fig.4.68b.

Fig. 1.68 Bucl de calcul condiionat

40
Structura Formula Node permite implementarea buclelor DO.WHILE, FOR i
WHILE.
1.2.2.5.7.
Variabile locale
Structurile prezentate anterior sunt caracterizate de posibilitatea utilizrii datelor
prin citirea terminalelor din diagrama bloc. Unui element de pe panoul frontal i
corespunde un singur terminal n diagrama bloc. Exist cazuri cnd este necesar ca un
terminal s poat fi accesat simultan din mai multe locuri, n diagrama bloc. Soluia
problemei o constituie utilizarea variabilelor locale.
Variabilele locale corespund elementelor componente ale panoului frontal
controale i indicatoare - i sunt accesibile doar n diagrama bloc a VI n cauz. Prin
utilizarea lor se permite accesul din diagrama bloc la valorile controalelor/
indicatoarelor din panoul frontal n cazul n care nu este posibil o legtur prin fire.
Unui control / indicator i pot corespunde mai multe variabile din diagrama bloc.
O variabil corespunde ns unei singure componente din panoul frontal. Numrul
variabilelor locale este nelimitat. n acest mod din diverse puncte ale diagramei bloc
poate fi apelat o aceeai component din panoul frontal.
Crearea unei variabile locale presupune existena componentei n panoul frontal.
Dup deschiderea casetei de dialog a controlului se selecteaz Create / Local Variable
(fig.4.69).
Pentru varianta LabView 5 i LabView 6 crearea este indicat i inserat n
diagrama bloc n apropierea terminalului corespunztor componentei (fig.4.70). Pentru
varianta LabView 8.2 crearea este indicat prin trecerea prompterului mouse-lui sub
forma casetei variabilei iar utilizatorul o va poziiona n locul dorit n diagrama bloc.
Este exemplificat utilizarea variabilei locale n figura 4.71. Butonul de control pentru
care s-au creat dou variabile locale controleaz simultan o informaie vizualizat la
indicatoarele 1, 2, 3. Diagrama este prezentat n figura 4.72.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

41

Fig. 1.69 Selectarea opiunii Local Variable

Fig. 1.70 Crearea variabilei locale

Fig. 1.71 Utilizarea variabilei locale

Selectarea varaibilei locale se poate realize i prin apelarea din: caseta de


funcii / Programming / Structures / Local. n acest caz n diagrama bloc se insereaz o
etichet cu semnul ntrebrii.

Fig. 1.72 Diagrama corespunztoare pentru panoul frontal din figura 4.66

Deschiderea meniului contextual permite selectarea crui control / indicator i se


asociaz variabila local (fig.4.73). Exemplificarea este realizat pentru panoul frontal
din figura 4.74. n contiunare se urmeaz paii anteriori de editare a diagramei bloc.

42

Fig. 1.73 Crearea variabilei locale

Printr-un singur buton Start / Stop i respectiv un singur buton de reglaj se


controleaz cele dou secvene.

Fig. 1.74 Exemplu de utilizare a variabilei locale

Eliminarea variabilei locale se realizeaz prin selectarea ei cu ajutorul uneltei de


editare i acionarea tastei <Delete>.
Variabila locala poate aciona n dou moduri:
prin intermediul ei se poate consulta (urmri, citi) valoarea componentei n
cauz, variabila avnd un rol de indicator (to Write);
prin intermediul ei se poate actualiza (modifica) valoarea componentei, variabila
avnd un rol de control (to Read).
Selectarea unui mod de lucru sau al celuilalt se realizeaz din meniul contextual
(fig.4.75).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

43

Fig. 1.75 Selectarea modului de lucru pentru variabila local

Variabilele locale se pot utiliza pentru:


Controlul cu un singur component a mai multor secvene repetitive Do
While;
Consultarea valorilor componentelor referite la nceputul execuiei IV;
Atribuirea unor valori implicite componentelor din panoul frontal chiar la
nceputul execuiei IV;
1.2.2.5.8.
Variabila global
Apare uneori necesitatea transferrii informaiilor ntre mai multe VI-uri care
ruleaz n acelai timp. Soluia problemei n acest caz sunt variabilele globale. Acestea
se apeleaz din caseta de funcii / Programming / Structures /Glob.
Dup apelare, n diagrama bloc apare nodul variabilei locale care se poziioneaz
de ctre utilizator n spaiul diagramei bloc.

Fig. 1.76 Eticheta variabilei globale

Eticheta cu semnul ntrebrii afiat are semnificaia c nu este nc asociat nici


unei componente. Dup un dublu click n caseta variabilei globale se deschide panoul
frontal al variabilei - Global 1 Front Panel n care se pot introduce controalele /
indicatoarele dorite (fig.4.77).

44

Fig. 1.77 Exemplificarea utilizrii variabilei globale

Se apeleaz meniul contextual i se alege componenta creia i se va asocial


variabila (fig.4.78). n acest moment eticheta iniial va fi schimbat n cea a
componentei avute n vedere.

Fig. 1.78 Apelarea meniului contextual pentru alegerea componentei

Un exemplu de utilizare a variabilei globale este prezentat n figura 4.79.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

45

Fig. 1.79 Exemplificare de utilizarea variabilei globale

La fel ca i variabilele locale, variabilele globale pot fi de tipul read global


(lucreaz ca o surs de informaie) i write global (lucreaz ca un indicator pentru
informaia vehiculat). n figura observm prezena ambelor varinate. Configurarea
variabilei globale se poate realize din meniul contextual al acesteia, selectnd Change
To.. .Read / Write.Utilizarea variabilelor locale i globale trebuie fcut cu rezerve
avnd n vedere unele dezavantaje legate de greuti n urmrirea fluxului
informaional, scderea vitezei de lucru, ntrzieri n citirea informaiei dac aceasta se
face n parallel.
1.2.2.5.9.
Noduri proprietate
Crearea nodului proprietate poate fi iniiat n panoul frontal sau n diagrama
bloc prin accesarea meniului contextual: .Create / Property Node.

Fig. 1.80 Crearea nodului proprietate

46
Prin intermediul acestora se pot defini:
Atribute fizice: dimensiuni, culoare, poziie pe ecran etc;
Comportare: obiectul s fie vizibil / invizibil, activ / inactiv la un moment dat,
tipul de afiare utilizat, proprieti asociate unui instrument grafic etc.

Fig. 1.81 Definirea unei proprieti


Fig. 1.82 Exemplificarea utilizrii nodului proprietate pentru instrumentul Meter

Nodul proprietate poate fi identificat dup eticheta controlului / indicatorului


referit. Nodul proprietate afieaz iniial un singur terminal prin intermediul cruia se
permite accesul la o anumit proprietate. Aceast proprietate este afiat n caseta
corespunztoare terminalului (fig.4.81). Ex: controlului numeric i s-a asociat un nod
proprietate fiind posibil accesul la proprietatea de vizibilitate (fig.4.81a).
Apelarea meniului contextual corespunztor nodului proprietate permite
vizualizarea celorlalte proprieti ale nodului (fig.4.83). Selectarea modului de folosire
al unui terminal citire (control) sau scriere (indicator) se face din meniul
contextual: Change To Write sau Change To Read.
Valoarile proprietilor au semnificaiile:
Position - reine coordonatele obiectului relativ la colul stnga superior al
panoului frontal. Coordonatele sunt exprimate n pixeli i se rein ntr-o grupare
de date;
Disabled (inactiv) se controleaz interaciunea operatorului cu obiectul: 0
permite operarea, 1 nghea obiectul iar valoarea 2 afieaz obiectul umbrit;
Key Focus (Focus) indic proprietate unui obiect de a primi date din partea
operatorului de la tastatur. Proprietatea poate fi activat prin selectarea
obiectului cu mouse-ul, utilizarea unei taste asociate, apsarea tastei <Tab> de
parcurgere a obiectelor. Valoarea logic True a proprietii permite asocierea
acesteia la obiectul respectiv;
Blinking (afiare intermitent) permite afiarea intermitent a obiectului pentru
valoarea logic True. Valoarea boolean Fals stabilete ncheierea afirii
intermitente.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

47

Fig. 1.83 Apelarea meniului contextual pentru nodul proprietate

Unui nod proprietate i se pot asocia mai multe terminale cu acces la proprieti
diferite (fig.4.84).

Fig. 1.84 Asocierea unor proprieti diferite

Redimensionarea i ataarea de noi proprieti se poate realiza prin apelarea la


meniul contextual i opiunea Add Element.

48
1.2.2.6.
Indicatoare i controale pentru date tip ir de caractere,
liste i tabele
1.2.2.6.1.
Introducere
Un rol aparte ntre controalele / indicatoarele din mediul LabView l joac cele
pentru lucrul cu ir de caractere i tabele. Componentele din aceast categorie permit
citirea / afiarea acestui tip de date.
n versiunea LabView 5 aceste obiecte se localizeaz n paleta de controale:
Controls / String & Table (fig.4.85). ncepnd cu versiunea LabVIEW 6.01 obiectul
Strings este inclus n cadrul grupului String & Path (fig.4.86a) iar obiectul Tables este
inclus n cadrul unui grup separate denumit List & Table (fig.4.86b).

Fig. 1.85 Controale tip ir i tabele (LabView 5)

Fig. 1.86 Localizarea controalelor ir ncepnd cu varianta LabView 6

1.2.2.6.2.

ir de caractere

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

49

Un control i un indicator pentru ir de caractere sunt ilustrate n fig.4.87.


Diferena grafic const n banda vertical prezent n pictograma indicatorului.

Fig. 1.87 Control i indicator tip ir

Obiectul de interfa dispune de un meniu contextual prezentat n figura 4.88. Se


pot selecta, pe principiul clasic, diverse opiuni rezultate din aplicaia de realizat:
opiunile referitoare la display permit afiarea obinuit a irului de caractere, n
codul \ (backslash) sau hexa;
protejarea editrii este oferit de opiunea Password Display, s.a.m.d.

Fig. 1.88 Meniul contextual pentru obiectul tip ir

Un alt obiect al grupului de controale String.. este controlul Combo Box.


Selectnd din meniul contextual opiunea Edit Items se va deschide o caseta de dialog
n care se poate introduce irul de caractere dorit. n timpul execuiei programului,
utilizatorul va putea selecta irul dorit (fig.4.89).

Fig. 1.89 Caseta de dialog

Bara de defilare (scroll bar) vertical pentru indicator se selecteaz la opiunea

50
Show / Scrollbar. Opiunea este disponibil pentru ambele obiecte cu condiia ca
dimensiunea vertical a pictogramei s fie minimum de trei ori nlimea unei linii de
text.
Pe lng facilitile prezentate LabView dispune de o serie de funcii legate de
utilizarea irurilor. Acestea se apeleaz fie din caseta de funcii / String, fie din
diagrama bloc i meniul contextual al controlului respectiv (fig.4.90).

Fig. 1.90 Funcii n utilizarea irurilor

n figura 4.91 se exemplific utilizarea funciei String Length (lungimea irului)


pentru obinerea informaiei despre irul manipulat. n diagrama bloc din figura 4.92 se
prezint i posibilitatea crerii unei proprieti pentru indicatorul utilizat (Create /
Property Node).

Fig. 1.91 Exemplu de utilizarea funciei pentru lungimea irului

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

51

Fig. 1.92 Crearea unei proprieti

O nou exemplificare privind utilizarea funciei de concatenare ( Concatenate


Strings) este prezentat n figura 4.93.

a)

b)
Fig. 1.93 Panoul frontal (a) i diagrama (b) pentru exemplificarea funciei de concatenare

Conversia unui numr ntr-un ir prin utilizarea funciei Number to Decimal


String este exemplificat n figura 4.94.
Conversia unui numr ntr-un ir prin utilizarea funciei Number to Hexadecimal
String este ilustrat in figura 4.95.

52

Fig. 1.94 Conversia unui numr ntr-un ir

Fig. 1.95 O alt posibilitate de conversie numr ir

1.2.2.6.3.
Ci de fiiere (Path)
Calea fiierului (path) reprezint o posibilitate de identificare i vizualizare ale
unui fiier. Posibilitile de lucru oferite sunt de tip control sau indicator. n acelai
timp acest tip de control poate lucra cu funcii specifice apelate din caseta de funcii. n
figura 4.96 se prezint panoul frontal i diagrama aferent pentru un instrument virtual
de citire a unui fiier text a2.txt, indicarea coninutului i a lungimii irului de
caractere.

Fig. 1.96 Panoul frontal (a) i diagrama aferent (b) pentru vizualizarea unui fiier

1.2.2.6.4.
Liste i Tabele
Listele i tabelele sunt opiuni pentru panoul frontal n vederea furnizrii unor
date sub form tabelar. Coninutul informaiilor este indicat prin simbolul coninut n
fiecare celul.
n figura 4.97 se prezint utilizarea unei liste multicoloan (Multicolumn

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

53

Listbox). Instrumentul virtual creat permite simularea achiziiei a trei informaii.


Selectarea canalului de achiziie se poate realiza prin intermediul unui control list
(fig.4.97a). Instrumentul virtual este structurat n dou secvene. Prima secven
conine o bucl While Loop prin care se simuleaz pornirea i oprirea achiziiei
(fig.4.97b). Obiectului list i este asociat o proprietate nod cu o dou valori referitoare
la denumirea coloanei i numele operaiei (fig.4.97c).

a)

b)

c)
Fig. 1.97 Panoul frontal i diagrama de exemplificare a utilizrii unui control list

Utilizarea obiectului Table este ilustrat n exemplul din figura 4.98. Valorile

54
aleatoare generate prin funcia Random Number (0-1) sunt vizualizate n form
original, dup operaia de adunare cu constanta 1 i respectiv dup ridicarea la ptrat
(fig.4.98a). Vizualizarea este posibil n cadrul tabelului creat i pentru care:
S-a optat din meniul contextual pentru vizibilitatea barei verticale de defilare
Visible Items / Vertical Scrollbar i respectiv orizontale Visible Items /
Horizontal Scrollbar;
S-a optat din meniul contextual pentru barele de notare ale semnificaiei liniilor
Visible Items/Row Headers i ale coloanelor Visible Items / Column Headers;
S-au notat semnificaiile liniilor i coloanelor;
S-a construit diagrama corespunztoare (fig.4.98b). Pentru realizarea
construciei s-a apelat n mod suplimentar la funciile: construcia unei matrici
Array / Build Array, transpunerea ntr-o matrice 2D Array / Transpose 2D
Array, conversia numr ir Strig - Number Conversion Number To
Fractional String. S-a apelat de asemenea introducerea controlului limii
numrului reprezentat (width) i respectiv a controlului pentru precizia de
reprezentare (precision). Modul de introducere a acestor controale se
realizeaz prin: selectarea uneltei Tools.../ Connect Wire, clic butonul drept al
mouse-lui n zona terminalului dorit i selectarea din meniul contextual care se
deschide Create / Control.

a)

b)
Fig. 1.98 Panoul frontal (a) i diagrama bloc pentru lucru cu obiectul Table

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

55

1.2.2.7.
Controale de tip boolean
Componentele de interfa ale panoului frontal, aparinnd tipului boolean, au
dou valori posibile, corespunznd: strii de adevr True sau fals False. Valoarea
logic fals este cea implicit cu care componenta este introdus n panoul frontal.
Versiunea LabView 8.2 conine controale booleane distribuite n subpaleta Modern /
Boolean (fig.4.99a) i un numr considerabil mai mare n subpaleta Clasic / Boolean
(fig.4.99b).

Fig. 1.99 Controale de tip Boolean

Indicatoarele booleene sunt reprezentri vizuale ale valorii logice i se prezint


sub forma unor led-uri rotunde sau ptrate. n unele variante exist o suprapunere de
funcie prin existena indicatorului optic n control. n figura 4.100 se prezint varianta
grafic a dou controale care includ i indicator. n scop demonstrativ fiecare control
este conectat la un indicator suplimentar.

Fig. 1.100 Controale i indicatoare de tip Boolean

Exist mai multe realizri grafice de controale tip boolean: butoane care pot fi

56
apsate, comutatoare orizontale i verticale, ntreruptoare de tip prghie (bistabile).
Controalele / indicatoarele de tip boolean dispun de un meniu contextual
asemntor n partea superioar celor numerice dar diferit n ceea ce privete referirile
la tipul de dat reprezentat. Controalele au activ opiunea Mechanical Action
(fig.4.101) care permite selectarea modului de comutare sau zvorre funcie de
apsare sau eliberare. Prin alegerea opiunii Change to Indicator / Change to Control
rolul obiectului n panoul frontal poate fi schimbat.

Fig. 1.101 Meniul contextual i variantele pentru aciunea mecanic

Pictograma asociat opiunilor comportrii mecanice pune n eviden n mod


grafic succesiunea operaiilor prin trei diagrame: aciunea utilizatorului cu mouse-ul
asupra controlului (M), noua valoare logic a controlului (V), momentul prelurii
valorii controlului la nivelul diagramei bloc (RD).
Semnificaia comportrii mecanice a controalelor booleene este urmtoarea:
a1 controlul i modific valoarea logic la fiecare apsare a butonului mouselui. Valoarea controlului nu este afectat de preluarea n timp a n diagrama bloc (RM
lips);
a2 valoarea logic a controlului se modific dup eliberarea butonului mouselui. Controlul i pstreaz valoarea pn la urmtoarea interaciune a utilizatorului.
Valoarea controlului nu este afectat n timp de diagrama bloc.
a3 valoarea logic a controlului se modific la apsarea butonului, se reine
pn la eliberarea butonului mouse-lui dup care revine la valoarea iniial anterioar
apsrii. . Valoarea controlului nu este afectat n timp de diagrama bloc.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

57

b1 valoarea logic a controlului se modific la apsarea butonului, este reinut


la starea actual pn cnd este preluat de diagrama bloc (exist o scurt
temporizare) i revine la starea anterioar acionrii dup preluarea valorii n
diagrama bloc.
b2 valoarea logic a controlului se modific la eliberarea butonului mouse-lui,
rmne la noua stare pn cnd este preluat de diagrama bloc dup care revine la
starea iniial anterioar interaciunii.
b3 valoarea logic a controlului se modific la apsare i rmne n starea
rezultat pn cnd diagrama bloc a preluat noua valoare i a fost eliberat butonul
mouse-lui.
1.2.2.8.
Grupare de date utiliznd Matrice (Array) i Grup /
Cluster i ir / String
1.2.2.8.1.
Introducere
Obiectele menionate sunt controale / funcii care permit gruparea datelor.
Caracterele ASCII sunt grupate prin secvena String. O matrice / array are elementele
constituite din date de acelai tip. Un grup / cluster reunete date de tipuri diferite.
1.2.2.8.2.
Matrice
Matricea poate avea una sau mai multe dimensiuni i pn la 2 31 1 elemente pe
fiecare dimensiune (dependent de memoria disponibil).
Se pot constitui matrici cu elemente numerice, booleene, ci (path), ir, form de
unde (waveforms) i grup (cluster).
Matricile sunt ideale pentru stocarea datelor colectate din buclele de calcul unde
fiecare iteraie a buclei produce un element al matricii.
Exist restricii n ceea ce privete crearea matricilor:
Nu se poate crea matrice cu elemente din matrici. Dac se dorete o matrice
multidimensional, se poate apela la matrice pe baz din grupuri / cluster unde
fiecare grup / cluster conine una sau mai multe matrici;
Nu se poate crea matrice din controale panel, controale tab, controale ActiveX,
diagrame sau grafice.
Pentru a localiza un element n matrice avem nevoie de un index pe fiecare
dimensiune. Indicele este un numr ntreg, cuprins ntre 0 i N-1 unde N este numrul
de elemente ale matricii pe dimensiunea specificat.
Un exemplu de matrice 1D cu nou coloane (0...8) conine informaia privind
modul de variaie n timp a cderii de tensiune pe un element. Fiecare element al
matricii reprezint valorile tensiunii n mod succesiv, la intervale de timp egale
(fig.4.102).
Un exemplu mai complex de reprezentare a gruprii de date este ilustrat n figura
4.103.Matricea 1D conine informaia despre o reprezentare grafic X-Y. Fiecare punct
al matricii este un grup (cluster) compus dintr-o pereche de valori numerice
reprezentnd coordonatele X, Y. Pentru a ilustra corespondena valorilor cu punctele
reprezentate s-a utilizat un segment orientat de la un punct iniial spre punctul urmtor.

58
Succesiunea de reprezentare are legtur doar cu indexul general.

Index
[mV]

0
25

1
50

2
60

3
40

4
35

5
40

6
80

7
90

8
80

Fig. 1.102 Exemplificarea unui grup de date printr-o matrice 1D

Index
Coordonata
X

0
2

1
10

2
30

3
35

4
45

5
50

6
45

7
50

8
70

Index
Coordonata
Y

0
2

1
10

2
20

3
30

4
40

5
30

6
20

7
10

8
10

Fig. 1.103 Matrice 1D avnd elementele formate din grup de valori numerice

Indexul liniilor

O matrice 2D memoreaz datele elementelor ntr-o reea format din linii i


coloane. n acest caz este necesar existena unui index pentru linii i a unui index
pentru coloane (fig.4.104).
Indexul coloanelor
0
1
2
3
4
5
6
0
1
2
3
4
5
Fig. 1.104 Matrice 2D cu specificarea indexului pentru linii i coloane

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

59

Matricea din figura 4.104 are 6 linii i 7 coloane coninnd 6 7 42 de


elemente. Un exemplu sugestiv de matrice 2D este tabla de ah (8 linii, 8 coloane). La
un moment dat oricare poziie poate fi goal sau coninnd o pies.
Matricea 2D se poate obine i printr-o suplimentare a liniilor la o matrice 1D.
Considernd grup de date coninut ca diverse semnale n timp, indexul coloanelor se
ataeaz practic valorilor numerice succesive ale unui semnal. n acelai timp indexul
liniilor se ataeaz categoriei de semnal. n figura 4.105 este exemplificat aceast
abordare pentru dou forme de variaie a unor semnale i 9 puncte corespunztoare
valorilor numerice pe fiecare semnal.

0
1

0
25
75

1
50
75

2
60
90

3
40
90

4
35
75

5
40
75

6
80
90

7
90
90

8
80
75

Fig. 1.105 Reprezentarea a dou semnale ntr-o matrice 2D

Crearea unei matrici cu controale sau indicatoare presupune dou etape constnd
din combinarea unei structuri matriceale aleas din paleta Controls / Array, Matrix &
Cluster (LabView 8.2) (fig..106) cu un obiect de tip date numeric, Boolean,

Fig. 1.106 Localizarea subpaletei Array

60
Cele dou etape enunate anterior pot fi detaliate n mod suplimentar:
Etapa 1 - se selecteaz o structur matriceal din paleta Controls / Array,
Matrix & Cluster i se poziioneaz n panoul frontal (fig.4.107)

Fig. 1.107 Grafica (pictograma) structurii matriceale n panel (a) i n diagrama bloc (b)

Selectarea unui obiect - din caseta de controale - care urmeaz s devin element
al matricii i poziionarea lui n suprafaa activ a structurii matriceale
(fig.4.108), (fig.4.109)

Fig. 1.108 Matrice cu control Boolean i indicatorul echivalent asociat

Fig. 1.109 Matrice cu control numeric i indicatorul echivalent asociat

Prin apelarea meniului contextual al obiectului devenit element al matricei /


tabloului putem aduga dimensiune acesteia (fig.4.110)

Fig. 1.110 Pictogramele unei matrici cu elemente numerice: matrice control (a) i indicator (b)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

61

Cu ajutorul structurilor For Loop i While Loop se pot genera n mod automat
matrici n cadrul unui proces denumit auto-indexare.
n figura 4.111 se prezint crearea unei matrici numerice n cadrul procesului de
auto-indexare prin utilizarea structurii For Loop.

Fig. 1.111 Panoul frontal (a) i diagrama bloc (b) n procesul de auto-indexare

n cadrul procesului prezentat n figura 4.112 toate valorile generate n bucla


For, n mod succesiv, sunt transferate i memorate n matricea indicator.

Fig. 1.112 Meniul contextual al tunelului

Dac este necesar pstrarea doar a ultimei valori generat n cadrul buclei,
trebuie ca din meniul contextual al tunelului (simbolizat prin ptratul cu contur negru
de pe conturul buclei) s fie selectat opiunea Disable Indexing. n acest caz se
transfer o singur valoare i singurul lucru modificat este indicatorul conectat pe
ieirea buclei, un indicator numeric (fig.4.113). Schimbarea este semnalizat i la
nivelul simbolului tunelului.

Fig. 1.113 Transferul ultimei valori generate n cadrul buclei For Loop

62
Introducerea unei valori n cadrul unei bucle For Loop este ilustrat n figura
4.114. Se remarc valoarea introdus i faptul c n acest caz indexarea este validat.

Fig. 1.114 Procesul de auto-indexare la introducerea valorilor n cadrul buclei

Introducerea tuturor valorilor n cadrul buclei necesit validarea opiunii Disable


Indexing (fig.4.115).

Fig. 1.115 Introducerea valorilor ntr-o bucl

Crearea unei matrici bidimensionale 2D este posibil prin utilizarea a dou bucle
nseriate (una n interiorul celeilalte). Un astfel de proces este ilustrat n figura 4.116.
Bucla exterioar definete elementele de pe linii iar bucla interioar definete coloanele
matricei 2D. Matricea numeric creat conine 3 linii i 2 coloane.
Bucla interioar export spre exterior, prin tunelul aferent, o matrice 1D. Se
poate verifica acest lucru prin introducerea corpului de prob (simbolizat prin mumrul
1). Bucla exterioar export prin tunelul aferent o matrice 2D. i n acest caz se poate
verifica traficul informaiei prin corpul de prob (simbolul 2). Acest mod de lucru
reiese i din tipul firelor de legtur.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

63

Fig. 1.116 Crearea matricei 2D utiliznd bucla For Loop n cadrul procesului de auto-indexare

Cele mai multe din funciile pentru matrici sunt destinate pentru manipularea
acestora. Funciile obinuite sunt disponibile n subpaleta Array n caseta de funcii
Functions / All Functions (LabView 7) sau n subpaleta Programming / Array
(fig.4.117).

Fig. 1.117 Paleta funciilor pentru lucru cu matrici

64
Funcia Array Size returneaz numrul de elemente ale unei matrici de intrare
notat generic A. Dac matricea A este n- dimensional, mrimea de ieire returnat
este o matrice B cu n elemente. Fiecare element al matricei B contorizeaz numrul de
elemente al matricei A pe o dimensiune (fig.4.118, fig.4.119).

Fig. 1.118 Funcia Array Size i rspunsul pentru matricea de intrare A

Fig. 1.119 Funcia Array Size i rspunsul pentru matricea de intrare A de tip 2D

Funcia Initialize Array creaz o matrice n dimensional cu elementele


coninnd valorile specificate de utilizator. Dac se dorete crearea mai multor
dimensiuni, pentru matrricea de iniializat, se apeleaz la meniul contextual n care se
selecteaz Add Dimension. Un rezultat echivalent se obine dac se utilizeaz unealta
de lucru Positioning din caseta Tools. n figura 4.120 se prezint pictograma iniial a
funciei (a) i cea transformat pentru mai multe dimensiuni (b).

Fig. 1.120 Pictogram funciei de iniializare a unei matrrici

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

65

n figura 4.121 se prezint iniializarea unei matrici 1D cu 5 elemente pentru


care s-a considerat valoarea numeric 1.12. Se prezint existena celor dou posibiliti
de creare a matricii 1D.

Fig. 1.121 Utilizarea funciei de iniializare a unei matrici 1D cu elementele de valoare 1.12

Iniializarea unei matrici 2D este ilustrat n figura 4.122. n scop demostrativ


s-a supradimensionat instrumentul de vizualizare a matricii iniializate. Se vede astfel
c dimensiunea real a matricii este cea impus.

Fig. 1.122 Iniializarea unei matrici 2D

66
Funcia Buid Array concateneaz mai multe matrici sau adaug elemente unei
matrici existente. Pictograma funciei poate fi redimensionat prin adugarea de noi
intrri (ADD Input) din meniul contextual sau prin metoda clasic de redimensionare a
unui obiect.

Fig. 1.123 Pictograma funciei Build Array

Concatenarea unei matrici i a dou elemente numerice este prezentat n figura


4.124. Succesiunea elementelor n noua matrice respect ordinea de sus n jos pentru
elementele de intrare.

Fig. 1.124 Construcia unei matrici prin concatenarea a dou elemente i a unei matrici

Concatenarea a dou matrici este ilustrat n figura 4.125.

Fig. 1.125 Concatenarea a dou matrici cu opiunea Concatenate Inputs activat (a) i respectiv
dezactivat (b)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

67

Matricea rezultat va avea dimensiunea impus de utilizator prin selectarea din


meniul contextual al ieirii a opiunii de activare a concatenrii Concatenate Inputs.
Funcia Array Subset returneaz un fragment dintr-o matrice ncepnd cu
elementul nominalizat prin index (intrare a funciei) i compus dintr-un numr de
elemente specificat prin intrarea funciei length (fig.4.126).

Fig. 1.126 Extragerea unui fragment dintr-o matrice

Funcia Index Array returneaz elementul matricii specificat prin intrarea


funciei (index-ul elementului).
Funcia Array Max & Min returneaz valoarea maxim i minim dintr-o
matrice analizat. Funcia are posibilitatea vizualizrii i a index-ilor care
nominalizeaz cele dou valori.
Paleta funciei Array dispune i de alte posibiliti de lucru: descompunerea unei
matrici 1D (Split 1D Array), cutarea ntr-o matrice 1D (Search 1D Array), iniializarea
unei matrici constante (Array Constant), conversii, etc.
1.2.2.8.3.
Polimorfisme
Poliformismul reprezint capabilitile funciilor din LabView (de ex. adunare,
nmulire, mprire) de a accepta la intrare date cu dimensiuni i reprezentri diferite.
Funciile aritmetice care posed aceste proprieti se numesc funcii polimorfice.
Un exemplu clasic pentru aceast proprietate este poliformismul funciei
aduniionale scalar scalar, scalar matrice, matrice matrice de dimensiuni diferite.
n figura 4.127 se prezint exemplul de poliformism pentru adunarea scalar - matrice.

Fig. 1.127 Poliformismul funciei de adunare: scalar matrice

68
n figura 4.128 se exemplific poliformismul funciei de adunare pentru
adunarea a dou matrici de dimensiuni diferite. Dimensiunea matricii rezultate este cea
a matricii cu numrul mai mic al elementelor. Elementele noii matrici se obin prin
nsumarea clasic a elementelor corespondente, scalar scalar.

Fig. 1.128 Poliformismul n adunarea a dou matrici de dimensiuni diferite

Demonstrarea poliformismului funciei de nmulire este ilustrat n figura


4.129. Matricea de ieire are elementele nmulite cu acelai coeficient 10 (coeficient
de scalare).

a)

b)
Fig. 1.129 Poliformismul funciei de nmulire

Funciile booleane se ncadreaz


n rndul funciilor polimorfice. Se
exemplific proprietatea n figura 4.130 pentru funcia AND aplicat unui scalar
boolean i unei matrici. Se returneaz o matrice.

Fig. 1.130 Poliformismul funciei AND

Un rezultat asemntor se obine pentru funcia AND aplicat pentru dou

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

69

matrici de dimensiuni diferite (fig.4.131).

Fig. 1.131 Poliformismul funciei AND pentru dou matrici booleane de dimensiuni diferite

1.2.2.8.4.
Grupuri (Cluster)
Un grup = cluster definete o structur de date care combin unul sau mai multe
tipuri de date ntr-unul nou. Este echivalentul tipului structur struct din limbajul C
sau nregistrare record din Pascal.
Cluster-ul se regsete att n structura de controale ct i n structura de funcii
din LabView.
Localizarea n paleta Controls este ilustrat n figura 4.132.

Fig. 1.132 Localizarea controlui Cluster

Dup introducerea variabilei n panoul frontal se va ataa cluster-ului, ca i n


cazul tabloului Array, tipul de date dorit.
n figura 4.133 se prezint poziionarea n panoul frontal a variabilei de tip
grupare de date cu trei controale: un control de tip ir de caractere (Nume), un control
de tip numeric (Vrsta) i unul de tip boolean (prezena). Se prezint n paralel i
diagrama bloc constituit dup alegerea a trei indicatoare adecvate tipurilor de date
specificate.

70
n faza de editare a IV se pot realiza modificri ale ordinei elementelor n cadrul
variabilei. Prin selectarea opiunii de editare Positioning Tool i clic cu butonul stng
al mouse-lui pe conturul variabilei se deschide meniul contextual din care se alege
opiunea Modificarea ordinii n grup Cluster Order. Redimensionrile
elementelor din grupa de date se realizeaz pe principiile prezentate anterior.

Fig. 1.133 Exemplificarea utilizrii cluster-ului compus din controale

Un rol esenial al cluster-ului este regsit n cadrul funciilor pentru construcia


diagramei bloc. Localizarea n cadrul paletei de funcii este prezentat n figura 4.134.

Fig. 1.134 Funciile Cluster

Principalele funcii din subpaleta Cluster sunt (n ordinea poziionarii n paleta


de funcii): Unbundle, Bundle, Unbundle by Name, Bundle by Name, Build Cluster
Array, Index & Bundle Cluster Array, Cluster Constant etc.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

71

Funcia Bundle grupeaz mai multe componente, realiznd un grup, sau


nlocuiete una sau mai multe componente ale unui grup existent. Pictograma aferent
funciei este prezentat n figura 4.135.

Fig. 1.135 Pictograma funciei Bundle

Gruparea elementelor se realizeaz n ordinea acestora n cadrul grupului Prima


component conectat la funcia Bundle este componenta cu index-ul 0, urmeaz
componenta cu index-ul 1, s.a.m.d. Numrul de intrri poate fi modificat fie prin
selectarea Add Input din meniul contextual al intrrii fie utiliznd unealta de
poziionare / redimensionare din caseta Tools. n figura 4.136 se exemplific utilizarea
funciei Bundle.

a)
b)
Fig. 1.136 Panoul frontal (a) i diagrama bloc (b) n utilizarea funciei Bundle

O alt exemplificare a utilitii funciei Bundle este prezentat n figura 4.137.

Fig. 1.137 Utilizarea funciei Bundle

Constanta numeric (setat la valoarea 0) definete punctul de origine real iar


prin controlul numeric se impune valoarea de incrementare. Funcia Bundle reunete
datele numerice permind reprezentarea grafic.
n cazul n care funcia Bundle este utilizat pentru nlocuirea unor
componenteale unui grup deja existent, grupul trebuie conectat la intrarea cluster a
funciei (fig.4.138). n cadrul aplicaiei funcia bundle permite nlocuirea valorii
numerice corespunzatoare controlului Knob i respectiv a controlului numeric 2.

72

a)

b)
Fig. 1.138 Utilizarea funciei Bundle n nlocuirea unor componente

Funcia Bundle by Name este folosit doar pentru nlocuirea unei componente
dintr-un grup existent. Modul de lucru este asemntor cu cel prezentat anterior.
Cluster-ul existent se conecteaz la intrarea specificat a funciei (cluster). n ordinea
logic a construciei se introduce controlul care va nlocui o component. Componenta
de nlocuit se va identifica dup numele reprezentat prin eticheta asociat. Numrul
intrrilor nu este obligatoriu s fie egal cu cel al componentelor grupului. Adugarea de
noi intrri se poate realiza tot din meniul contextual prin selectare opiunii Add
Element. Numrul posibilitilor de nlocuire se pot vizualiza din meniul contextual al
intrrii funciei prin selectarea opiunii Select Item. Asocierea numelui componentei cu
intrarea se realizeaz prin selectarea numelui din lista posibilitilor vizualizate.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

73

a)

b)
Fig. 1.139 Panoul frontal (a) i diagrama bloc (b) n utilizarea funciei Bundle by Name

Descompunerea grupurilor n componente se bazeaz pe dou funcii Unbundle


i Unbundle by Name. Utilizarea primei funcii este prezentat n figura 4.140. Fiecrui
control inclus n cluster-ul construit n panoul frontal i se poate asocia un indicator,
conexiunea realizndu-se prin funcia Unbundle.

a)

b)
Fig. 1.140 Panoul frontal (a) i diagrama bloc (b) n utilizarea funciei Unbundle

74
1.2.2.9.

Controale i indicatoare pentru reprezentri grafice

1.2.2.9.1.
Introducere
Controalele i indicatoarele pentru reprezentri grafice constituie componente
pentru crearea interfeei, din panoul frontal, care permite vizualizarea reprezentrilor
grafice.
Din punctul de vedere al modului de realizare, se deosebesc dou variante de
reprezentri grafice:
Diagrama ( chart ) - reprezentare grafic a unei informaii care se modific n
timp. Acestea se reprezint practic n timp real. Pe msur ce noi valori sunt
obinute, ele sunt adugate la reprezentarea existent. Punctele de reprezentare
sunt pstrate, permind vizualizarea variaiei n timp a procesului. Diagrama
evoluiei temperaturii ntr-o perioad de timp este un exemplu clasic.
Graficul (graph) - nseamn o reprezentare a dependenei unei mrimi de o alta.
Pentru realizarea reprezentrii, valorile sunt colectate ntr-un tablou i apoi
reprezentate. Reprezentarea grafic x- y este un exemplu clasic al acestei
categorii.
LabView 8.2 dispune de mai multe faciliti pentru reprezentrile grafice
(fig.4.141):

Fig. 1.141 Subpaleta pentru reprezentri grafice

a1 diagram und (Waveform Chart);


b1 grafic und (Waveform Graph);
c1 grafic XY (XY Graph);
d1 grafic XY special (Express XY Graph);
a2 diagram intensitate (Intensity Chart);

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

75

b2 grafic intensitate (Intensity Graph);


c2 grafic und digital (Digital Waveform Graph);
d2 grafic cu semnale multiple (Mixed Signal Graph);
a3 grafic suprafa 3D (3D Surface Graph);
b3 grafic parametric 3D (3D Parametric Graph);
c3 grafic curb 3D (3D Curve Graph).
Elementele principale care intervin n reprezentarea grafic sunt evideniate n
figura 4.142. O serie dintre aceste elemente devin vizibile doar prin selectarea opiunii
respective n meniul contextual. Redimensionarea i poziionarea obiectului n panoul
frontal respect principiul clasic de lucru.

Fig. 1.142 Elementele reprezentrilor grafice

1.2.2.9.2.
Diagrama und
Diagrame
und (waveform charts) reprezint indicator grafic pentru
vizualizarea unuia sau mai multor reprezentri grafice simultan, pentru care se
urmrete variaia n timp.
Diagrama und dispune de un meniu contextual (asemntor cu cele pentru
restul controalelor / indicatoarelor) prin intermediul cruia indicatorul poate fi
particularizat funcie de problema de rezolvat (fig.4.143):
Selectarea elementelor pentru care se dorete a fi vizibile din Visible Items;
Formatarea scalei X i Y prin opiunile X Scale i respectiv Y Scale;
Vizualizarea mai multor grafice pe aceeai diagram prin selectarea opiunii
Stack Plots. Revenirea la forma iniial se realizeaz prin selectarea opiunii

76
Overlay Plots (fig.4.144);
Actualizarea diagramei prin selectarea opiunilor Advanced / Update Mode:
Diagrama tip panglic (strip chart) noile puncte se afieaz n partea
dreapt a celor existente, n timp ce punctele vechi sunt retrase spre
stnga;
Diagrama tip osciloscop (scope chart) noile puncte se afieaz n
partea dreapt a celor existente. n momentul n care reprezentarea
atinge marginea din dreapta a zonei vizibile, reprezentarea este tears
i renceput din marginea din stnga;
Diagrama tip baleiere (sweep chart) noile puncte se afieaz n
partea dreapt a celor existente. La atingerea marginii din dreapta a
zonei vizibile, noile puncte sunt afiate ncepnd din partea stng,
peste cele vechi. O linie vertical baleiaz zona de vizualizare
delimitnd zona punctelor noi i a celor vechi (din dreapta).
tergerea ferestrei de afiare prin selectarea opiunii Data Operations / Clear
Chart;
Selectarea modului de reprezentare a curbei (puncte sau linie, culoare,
grosime,..) din legenda Plot (fig.4.143).
n cazul unei singure reprezentri grafice n diagrama und, structurile de date
posibile sunt:
Scalar numeric se transmite valoarea unui singur punct (fig.4.143)

Fig. 1.143 Transmiterea unei singure valori n reprezentarea grafic prin diagram und

Tablou 1D cu elemente tip scalar numerice fiecare element al tabloului


definete un punct al reprezentrii i se transmit simultan valorile mai multor
puncte (fig.4.144).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

77

Fig. 1.144 Structura 1D n reprezentarea grafic prin diagrama und

Un exemplu edificator pentru reprezentarea grafic unei diagrame und este


ilustrat n figura 4.143. Diagrama bloc a fost construit prin simpla conectare a
generatorului de numr aleator la indicatorul grafic.

a)

b)
Fig. 1.145 Panoul frontal (a) i diagrama bloc (b) la reprezentarea unei diagrame und

Pentru reprezentarea mai multor forme de und n cadrul aceleeai diagrame se


consider 3 structuri de date permise pentru reinerea punctelor necesare reprezentrii:
Gruparea de date. n acest scop se utilizeaz gruparea de date pe baza
funcia...Cluster / Bundle. Pentru fiecare element conectat la funcia Bundle se
reine la un moment dat o singur valoare. Toate cele n valori, corespunztoare
celor n elemente de intrare ale funciei, se transmit simultan (fig.4.146). Cele trei
forme de und sunt: numrul aleator (0-1), rezultatul nmulirii numr aleator x
10, temperatura (temp ca i instrument virtual LabView8.2 / Activity / Digital
Thermometer.vi). Reprezentarea celor trei curbe este n ordinea conectrii la
funcia Bundle iar culorile sunt n aceeai succesiune din legenda Plot). Pentru
reprezentarea multipl s-a selectat opiunea Stack Plots. Pentru o vizualizare
convenabil a fost introdus funcia Time / Millisecond Multiple.
Tablou 1D cu elemente tip grupare de date (pe baz de elemente de tip scalar
numeric). Pentru fiecare grupare de date (corespunztoare unei reprezentri) sunt
transmise punctele de reprezentat. Acestea sunt colectate ntr-un tablou (array)
cu cluster avnd dimensiunea convenabil. O reprezentare sugestiv pentru acest

78
caz este ilustrat n figura 4.147.

a)

b)
Fig. 1.146 Panoul frontal (a) i diagrama bloc (b) pentru reprezentarea mai multor forme de und

a)

b)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

79

Fig. 1.147 Variant de reprezentare grafic a formelor de und multiple

Tablou 2D Datele noi de reprezentare se transfer simultan la nou actualizare


i se cumuleaz ntr-o matrice de scalari numerici. Fiecare linie coincide cu
punctele pentru o form de und de reprezentat. Un exemplu edificator este
prezentat n figura 4.148. A fost introdus funcia de transpunere a matricii de
reprezentat: Functions / Array / Transpose 2D Array.

a)

b)
Fig. 1.148 Reprezentarea mai multor forme de und

1.2.2.9.3.
Grafice tip und
Graficul de tip und reprezint o posibilitate de vizualizare uniform a unor

80
msurtori cu eantionare. Este posibil vizualizarea unui singur grafic sau a mai
multor grafice. n primul caz graficul und ploteaz o singur funcie cu puncte
uniform distribuite pe axa x. Sunt posibile dou variante:
Metoda 1 Se furnizeaz indicatorului grafic de tip und cu un singur
parametru, tablou 1D. Se presupune implicit c plotarea ncepe din origine, x = 0
i incrementarea este unitar, x = 1. Un exemplu edificator este prezentat n
figura 4.149. Pentru exemplificarea celor specificate anterior i a
corespondenei valorilor s-a preferat o vizualizare dubl (i numeric). n plus s-a
apelat la o reprezentare prin puncte conectate prin linie continu. n acest
exemplu de generare a tabloului 1D, valoarea maxim a scalei pe axa X
corespunde unei relaii simple X max N 1 unde N este dimensiunea
tabloului.

a)

b)
Fig. 1.149 Panoul frontal (a) i diagrama bloc la reprezentarea unui grafic und

Metoda 2 Reprezentarea se bazeaz pe realizarea unui grup de date compus din


valoarea iniial a abscisei x 0 , pasul de incrementare al axei dx , tabloul 1D.
Formarea grupului de date se bazeaz pe funcia Bundle. n aplicaiile de
achiziie a datelor tabloul 1D se obine prin citirea unui canal de achiziie
(realizat hard). Un exemplu edificator pentru metoda de lucru este prezentat n
figura 4.150. Generarea tabloului 1D se realizeaz n principiul clasic al unui
ciclu FOR n care a fost inclus un generator de numr aleator (0-1). Valoarea

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

81

maxim a scalei pe axa X corespunde n acest caz relaiei X max ( N 1) dx .

Fig. 1.150 Diagrama bloc n reprezentarea grafic prin metoda grupului

Reprezentarea mai multor grafice und pe baza unui singur indicator este
posibil prin mai multe metode:
Se transmit spre a fi reprezentate M puncte pentru fiecare din cele N grafice.
Structura format este un tablou 2D unde o linie este compus din punctele de
reprezentat. Reprezentarea este uniform cu originea abscisei n zero i
incrementare unitar. Numrul de puncte este acelai pentu fiecare reprezentare.
Un exemplu edificator pentru reprezentarea a dou grafice und este ilustrat n
figura figura 4.151. Formarea tabloului 2D este posibil fie prin utilizarea
funciei Functions/Programming/Array/Build Array fie prin utilizarea funciei
..../ Cluster / Build Cluster Array (reprezentat n fig.4.151).

Fig. 1.151 Diagrama bloc pentru reprezentare multipl a dou grafice und

Punctele de reprezentat se rein ntr-un tablou 1D cu elemente tip grup de date.


Cele N grupuri de date vor fi incluse ntr-un tablou 2D prin utilizarea funciei
Build Array. Reprezentarea este uniform cu incrementare unitar, numrul de
puncte poate fi diferit pe fiecare dintre cele N reprezentri (fig.4.152).

82
Fig. 1.152 Reprezentarea multipl a unor grafice und

Pe principiul anterior, se formeaz un grup de date compus din matricea 2D


coninnd punctele de reprezentat, originea pe axa X i pasul de incrementare.
Crearea grupului de date are la baz funcia Bundle (fig.4.153).

Fig. 1.153 Reprezentarea graficelor und pe baz de grup de date

O reprezentare multipl se poate baza pe un acelai grup de date ca n cazul


anterior realizndu-se o reprezentare cu incrementare impus. Tabloul 2D aplicat
pe intrarea funciei Bundle poate fi o matrice din clustere (asemntor cu figura
4.151) (fig.4.154) sau o matrice 2D (fig.4.155) (cu elemente de tip scalar
numeric corespunztor punctelor de reprezentat).

Fig. 1.154 Variant de reprezentare cu incrementare impus

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

83

Fig. 1.155 O alt variant de reprezentare cu incrementare impus unic

Reprezentarea multipl se poate realiza cu origine pe abscis i incrementare


diferit pentru fiecare form de und reprezentat. Punctele de reprezentat pentru
o form de und sunt incluse ntr-un grup de date prin utilizarea funciei Bundle.
Cele N grupuri de date sunt reunite ntr-o matrice prin funcia Build Array care
se aplica la intrarea indicatorului grafic. Un exemplu edificator este reprezentat
n figura 4.156. Doar pentru nelegerea modului de reprezentare a datelor n
construcia diagramei bloc au fost introduce indicatoare suplimentare prin care
se pot vizualiza grupul de date dup reunirea prin funcia Bundle i respectiv a
matricii aplicate pe indicatorul grafic. Se poate sesiza uor originea i
incrementarea diferit pentru cele dou grafice.

a)

84
b)
Fig. 1.156 Reprezentare grafic a formelor de und cu incrementri diferite

1.2.2.9.4.
Grafice XY
Graficul XY se gsete n subpaleta Grapf a paletei de controale. Graficul XY
este un grafic n coordonate carteziene. Pentru reprezentare este necesar specificarea
coordonatelor punctelor de reprezentat (x, y). n acelai timp prin aceast facilitate pot
fi reprezentate funcii circulare sau elipsoidale.
Realizarea unei singure reprezentri grafice se bazeaz pe dou metode:
Metoda 1 Pentru reprezentare se vor furniza iniial dou tablouri 1D: 1 tablou
1D care cuprinde valorile absciselor iar cel de-al doilea, valorile ordonatelor.
Cele dou tablouri sunt reunite ntr-un grup de date prin utilizarea funciei
Bundle (fig.4.157).

a)

b)
Fig. 1.157 Panoul frontal (a) i diagrama bloc ntr-o reprezentare grafic XY

Metoda 2 Coordonatele unui punct de reprezentat se, pot reuni ntr-un grup de
date. Cele N perechi de grupuri de date formeaz un tablou 1D care se transfer
indicatorului grafic (fig.4.158).

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

85

Fig. 1.158 Reprezentare XY prin tablou 1D

Reprezentarea grafic XY permite afiarea simultan a mai multor reprezentri.


Metodele posibile iau n considerare:
Metoda 1 Fiecare reprezentare se constituie ntr-un grup de date compus din
tabloul 1D corespunztor absciselor i tabloului 1D al ordonatelor. Cele N grupri
de date sunt reunite ntr-o matrice de clustere (pe baza funciei Build Array) care
se aplic indicatorului grafic (fig.4.159).

Fig. 1.159 Reprezentri XY multiple

Metoda 2 Perechea de valori (x,y) a unei reprezentri se constituie ntr-un grup


de date. Fiecare grup de date ale unei reprezentri se reunete ntr-un tablou 1D.
Cele N tablouri 1D se reunesc ntr-o matrice de clustere prin aplicarea funciei
Build Cluster Array (4.160).

86

Fig. 1.160 Reprezentarea multipl XY prin matrice de clustere

Reprezentrile grafice XY beneficiaz n versiunile LabView7 i LabView8 i de


facilitatea Express XY Graph. Partea de vizualizare (display) este asemntoare
indicatorului clasic XY Graph n timp ce pictograma este modificat (fig.4.161). Prin
utilizarea acestui tip de indicator se modific modul de transfer a datelor reprezentate.

Fig. 1.161 Pictograma indicatorului Express XY Graph

n figura 4.162 se prezint diagrama bloc pentru modul de reprezentare grafic a


unei singure funcii, un cerc de diametru unitar. n construcia diagramei s-au utilizat:
Funcia trigonometric dubl sine & cosine.vi localizat n paleta de funcii la
Mathematics/Elementary &Special Functions/Trigonometric Functions;
Funcia de conversie dinamic a datelor Convert to Dynamic Data localizat n
paleta de funcii la Express/Signal Manipulation/To DDT.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

87

Fig. 1.162 Reprezentarea grafic a unui cerc

Pentru reprezentarea unor funcii multiple se apeleaz n mod suplimentar la


funcia de reuniune a mai multor semnale ntr-unul singur Merge Signals localizat n
paleta de funcii la Express/Signal Manipulation. Diagrama bloc pentru reprezentarea
grafic a cercului unitar i a funciei exponeniale e 0.1x este prezentat n figura
4.163.

Fig. 1.163 Reprezentarea multimpl a graficelor XY

1.2.2.10. Funcii numerice


Funciile numerice sunt localizate n cadrul casetei de funcii ...Programming /
Numeric (fig.4.164). Caseta include operaiile uzuale (adunare, scdere, nmulire,
mprire, ridicare la ptrat, radical), conversii, constante numerice, operaii cu numere
complexe, valori pentru constanta , e etc.

Fig. 1.164 Funcii numerice

88
Dac funcia de adunare - Add, funcia de scdere Subtract,....se aplic pentru
dou valori numerice (x i y) caseta de funcii numerice dispune i de funcia
Compound Arithmetic pentru operaii multiple din aceeai categorie. Operaiile
disponibile (selectabile din meniul derulant ataat) pentru Compound Arithmetic sunt
numerice - adunare (Add), nmulire (multiply) sau logice AND, OR, XOR. n figura
4.165 se prezint utilizarea funciei Add multipl.

Fig. 1.165 Operaie de adunare multipl cu Compound Arithmetic

Caseta de funcii numerice include i operaii pe matrici numerice: adunarea i


nmulirea elementelor. n figura 4.166 se prezint modul de aplicare a funciei Add
Array Elements.
n varianta LabView 8, subpaleta Express/Arithmetic &Comparison conine un
pachet mai larg de funcii matematice (funcii trigonometrice, funcii exponeniale,
funcii pentru operaii n domeniul timp). n figura 4.167 se prezint construcia unei
diagrame bloc pentru operaia de derivare n raport cu timpul. Semnalul de intrare este
un semnal sinusoidal (Express /Signal Analysis / Simulate Signal ). Pentru operaia
matematic n domeniul timp s-a selectat Express/Arithmetic&Comparison/Time
Domain. S-a optat n final din domeniul timp pentru funcia de derivare
Derivative(dx/dt).

Fig. 1.166 Operaia de adunare a elementelor unei matrice

Fig. 1.167 Operaie de derivare n domeniul timp

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

89

1.2.2.11. Funcii de comparare


Funciile de comparare sunt localizate n caseta de funcii ...Programming /
Comparison. Sunt incluse funciile de comparare pentru: egalitate ? (Equal ?), inegal ?
(Not Equal ?), mai mare ? (Greater ?), mai mic ? (Less ?) etc. Aceste funcii compar
dou valori numerice (x i y) i returneaz la ieire valoarea TRUE sau FALSE
dependent de funcia n cauz.
Utilizarea unei funcii de comparare cu o structur de tip Case este prezentat n
figura 4.168. Funcia de compare Equal ? compar dou valori numerice (x i
constanta 4) i returneaz TRUE dac x 4 i FALSE n restul cazurilor. Dependent
de valoarea logic rezultat se va executa programul corespunztor variabilei de
control logice.

Fig. 1.168 Funcia de comparare i structura Case

Pictograma funciei de comparare Select este prezentat n figura 4.169. Funcia


returneaz valoarea conectat la intrarea t sau f dependent de valoarea care este
conectat la s. Dac s este FALSE atunci funcia va returna valoarea conectat la f.
Exemplificarea utilizrii funciei este prezentat n figura 4.170. ncadrarea unei piese
n cmpul de toleran precizat este convertit de un senzor ntr-o valoare logic TRUE
sau FALSE care se aplic la intrarea s a funciei de comparare. Rezultatul poate fi
vizualizat pe panoul frontal al instrumentului virtual.

Fig. 1.169 Funcia de selectare

Fig. 1.170 Funcia Select i rspunsul pentru un s de valoare FALSE

Un numr de funcii de comparare lucreaz cu variabile ir. Pentru detalii


suplimentare referitor la acestea se poate accesa Help-ul funciei respective.
1.2.2.12. Funcii pentru lucru cu fiire I/O
Operaiile cu fiiere de intrare / ieire (I/O) au ca scop principal stocarea datelor
pe un suport i preluarea datelor dintr-un fiier. n figura 4.171 i 4.172 se exemplific
utilizarea funciei de scriere a datelor ntr-un fiier (Write to measurement file).

90

a)

b)
Fig. 1.171 Utilizarea funciei de scriere a fiierului de date din msurtoare

Se remarc (fig.4.172) construcia fiierului de date cu precizrile referitoare la


data simulrii, numrul de eantioane etc.

a)

b)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

91

Fig. 1.172 Panoul frontal, diagrama bloc i fiierul salvat n aplicaia de simulare a unui semnal

Exemplificarea citirii unui fiier de msurtori test.lvm i vizaualizarea


informaiei acetuia este prezentat n figura 4.173. Selectarea indicatorului pentru
vizualizarea semnalului s-a realizat prin accesarea meniului derulant / Create /
Indicator.

a)

92

b)
Fig. 1.173 Exemplificarea utilizrii funciei Read From Measurement File

1.2.2.13. Achiziia datelor dintr-un experiment


Achiziia de date n urma unui experiment i salvarea datelor respective
presupune n primul rnd existena componentelor hardware necesare. n figura 4.174
este prezentat structura standului utilizat pentru achiziia informaiilor referitoare la
cinematica unui pendul (1 PC; 2 traductor rezistiv de deplasare; 3 pendul fizic; 4
surs de alimentare de c.c.).

Fig. 1.174 Stand experimental pentru achiziia de date asistat de calculator

Construcia instrumentului virtual pentru achiziia de date presupune


introducerea n diagrama bloc a subVI-lor specifice componentelor hardware. n figura
4.175 se prezint secvena 1 din diagrama bloc n care au fost incluse subVI-le pentru
configurarea plcii de achiziie ADLink 8216 (8216 Config) i configurarea conexiunii
cu PC-ul (ADLink Config).
a)

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

93

b)
Fig. 1.175 Placa de achiziie ADLink 8216 ntr-un instrument virtual cu LabView

Panoul frontal al instrumentului virtual construit este prezentat n figura 4.176.


Fig. 1.176 Panoul frontal al instrumentului virtual

Prin deschiderea casetei 8216 Config (fig.4.175b) se poate realiza configurarea plcii:
Base Address este adresa portului I / O a plcii;
A/D Channel Config configureaz modul intrare A/D. Valoarea 1 selectat
desemneaz modalitatea single-ended iar valoarea 2 desemneaz
modalitatea diferenial. Acest aspect trebuie luat n considerare n
momentul conectrii la placa de baz;
IRQ consemneaz transferul de date sau stop DMA;
DMA este utilizat pentru transferul DMA;
Error In i Error Out consemneaz printr-un cod specific existena unor erori;
Card Number intervalul de valori 0 16 indic iniializarea plcii. Valoarea
terminalului de ieire este utilizat de alte subVI-uri - ACLS LabView.
Diagrama noului VI se complecteaz cu subVI - uri necesare din setul de care se
dispune: AI Cont Config, AI Cont Read Multiple Channels, AI Cont Read Single
Channel, AI Multiple Scale, AI Read Channel Voltage, AI Read Multiple Channels, AI
Read Single Channel etc. oferite de ADLink pentru lucrul cu LabView. Mediul de lucru
LabView dispune de biblioteci de drivere pentru astfel de componente de la o serie de
firme constructoare de echipament de achiziie. n acelai timp diagrama bloc a fost
construit pe baza instrumentelor, controalelor i funciilor cu caracter general,
disponibile n LabView.
n figura 4.176 se prezint un fragment din secvena 2 a diagramei bloc pentru
cazul prezentat n care s-a introdus subVI-ul necesar ADLink Conti. AI pentru achiziia
continu a unui semnal analogic.

94

Fig. 1.177 Un nou subVI 8216 n diagrama bloc

1.2.3. Concluzii
Spaiul relativ restrns, care a putut fi oferit pentru prezentarea softwere-lui
LabVIEW, a condus la prezentarea elementelor strict necesare pentru definirea
instrumentaiei virtuale i a modului de construcie a acestuia.
Alte funcii ofer posibilitatea prelucrrii avansate a semnalelor achiziionate:
Funcii pentru lucrul cu forme de und (Functions/Programming / Waveform):
construcia unei forme de und (Build Waveform), .., conversie A / D (Analog
to Digital), conversie D / A (Digital to Analog), ..., lucru cu fiiere I / O etc.;
Funcii pentru simplificarea realizrii raportului (Functions/Programming
Report generation);
Funcii pentru controlul unei aplicaii (Functions/Programming/Application
Control);
Funcii pentru lucru cu instrumente i interfee (Functions / Instrument I/O):
drivere pentru instrumente (Instr. Drivers), interfee GPIB, Serial etc.;
Funcii pentru calculul matematic (Functions / Mathematics): algebr linear cu
matrici i determinani (Linear Algebra), calcul statistic (Probability &
Statistics), valori medii (Mean), deviaie standard i varian (StdDeviation
and Variance), histograme;
Manipularea semnalelor (Functions /Express/ Signal Manipulation):
multiplexarea semnalelor (Merge Signals), ..., selectare semnal (Select
Signals), releu (Relay), extragerea unor caracteristici (Extract Portion), ..etc.;
Funcii pentru procesarea semnalelor (Functions/Signal processing).
Exemplele introduse n coninutul capitolului permit proiectantului de
instrumentaie virtual de verifica modalitile de lucru dar i de a descoperi i dezvolta
alte variante de instrumente virtuale.
Prin domeniul abordat i capabilitile deosebite pentru modelare simulare i
achiziie de date programul LabVIEW reprezint o unealt eficient pentru un viitor
specialist n domeniul mecatronic. Acesta are posibilitatea de a verifica n mod rapid
diferena ntre un model matematic teoretic i cel real dezvoltat prin identificarea

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

95

parametrilor.

1.3. Instrumentaie virtual cu VEE-Agilent


1.3.1. Introducere
VEE Agilent este un mediu de programare grafic pentru aplicaii de msurri i
testri precum i construcia interfeelor operator.
VEE ofer multiple avantaje n dezvoltarea testelor: productivitate deosebit i
uurin n exploatare, gam larg pentru instrumentaie I / O pentru controlul
diverselor compenente ale sistemelor de achiziie: interfee seriale, GPIB, LAN, plci
plug-in, instrumente de msurare etc. n plus VEE permite lucru i cu alte limbaje
uzuale C/C++, Visual Basic, Pascal i Fortran [...], [...].
1.3.2. Elemente generale privind capabilitatea sistemului
Lansarea programului respect principiile clasice de lucru:
din icon-ul specific programului;
din Start / All Programs / Agilent VEE Pro 7.5 / VEE Pro7.5.
Interfaa utilizator a programului cuprinde (fig.4...):
bara de meniu orizontal 1 - care ofer fie facilitile clasice (File, Edit, View,
Help,..) fie facilitile specifice aplicaiei (Debug, Flow, Device, Diplay, etc..);
bara de meniu orizontal 2 care ofer de asemenea faciliti de lucru sub
Windows (Save, Print,...) i faciliti ale aplicaiei (Step Into, Step Over,...,
Show Execution Flow, ...Instrument Manager,...);
caseta 3 - pentru explorarea programului (Program Explorer) care permite
vizualizarea ierarhic a acestuia;
caseta 4 Properties permite vizualizarea obiectelor incluse n program
precum i setarea unor parametri ai acestuia;
caseta 5 destinat dezvoltrii unei aplicaii.

Fig. 1.178 Interfaa utilizator a programului VEE

96
Construcia instrumentului virtual se bazeaz pe diverse obiecte cu funcii
specifice pentru control, vizualizare, prescrire de date etc. Un obiect dorit se alege prin
deschiderea meniului derulant al clasei de obiecte din bara de meniu orizontal i
poziionarea lui n zona de lucru. Clasele de obiecte se refer la:
fluxul de date (Flow) definirea fluxului de date, condiionri, lansare, etc. :
Start, IF/Then/Else/, Conditional, Jonction, Do, Gate,...;
procedee / mijloace (Device) formule, MatlabScript, User Object, .., Shift
Register;
sistem (System) ofer posibilitatea lucrului cu directoare, fiiere, ci,
utilizatori, etc.;
intrare / ieire (I / O) ofer posibilittile de interfaare, de gestionare a
instrumentelor, etc.;
informaii / date - (Data) selecie control, caset dialog, constante: Selection
control, Dialog Box, Constant, ...;
indicatoare (Display) permit vizualizarea datelor / informaiilor alfanumerice,
grafice: AlphaNumeric, Indicator (Meter, Tank, Color Alarm,..), XY Trace, ..;
Pentru fiecare obiect selectat i inclus n pagina de lucru pot fi vizualitate
proprietile acestuia i particularizate conform utilizatorului (culoare, nume,..)(fig...).
Fig. 1.179 Obiect, icon i proprieti

Fiecrui obiect i este ataat un meniu derulant care ofer posibilitatea accesrii
unor faciliti cu aspecte generale i pentru particularizarea parametrilor de lucru ai
obiectului (fig....). Fiecare din etichetele Xname, Yname i Trace1 ascund buton de
comand pentru deschiderea casetelor de dialog aferente (fig.4....b).
n mod asemntor cu lucrul n LabView, obiectele introduse n pagina de lucru
se conecteaz prin linii care modeleaz cile de transfer a informaiilor.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

97

Fig. 1.180 nregistratorul X-Y i meniul derulant (a); caseta de dialog (b)

n figura ...se prezint un instrument virtual pentru vizualizarea rezultatului unui


calcul n coresponden cu o expresie de calcul. S-au utilizat: obiectul Int32 pentru
precizarea valorii variabilei A, obiectul Formula n care s-a tastat expresia de calculat
2 A 3 i obiectul pentru vizualizarea rezultatului numeric AlphaNumeric.

98

Fig. 1.181 Instrument virtual pentru calcul numeric

n figura ....se prezint instrumentul virtual pentru simularea unui instrument de


msurare numeric. Instrumentul virtual are n componen panoul frontal compus din
butoane, display, indicatoare (asemntor cu panoul frontal din LabView). Structura
intern a instrumentului virtual este disponibil n caseta de vizualizare Program
Explorer (fig....).

Fig. 1.182 Instrument virtual cu panou frontal

n Program Explorer este posibil i vizualizarea conexiunilor interne ale


instrumentului virtual. Acest lucru corespunde cu diagrama bloc din cazul VI-lor
construite n mediul LabVIEW. Principiul de construcie pstreaz i modul de utilizare
a etichetei cu numele obiectlui.

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

99

a)

b)
Fig. 1.183 Structura instrumentului virtual i conexiunile interne pentru nivelul Log Data

1.3.3. Concluzii
VEE este unul din programele cu licen aflate n dotarea Laboratorului de
Senzori i Actuatoare a Departamentului de Mecatronic (alturi de LabView 8.2,
ControlDesk, Matlab 7, IMAQ).
Prin facilitile oferite, VEE este extrem de util n instruirea specialitilor din
domeniu n instrumentaia virtual i achiziie de date. n cadrul laboratorului exist o
serie de instrumente Agilent astfel c este posibil analiz modului de configurare a
acestora n mediul VEE i LabView.
n plus, program VEE permite realizarea unei paralele cu celelalte medii
disponibile n cadrul laboratorului i nsuirea logic a aspectelor comune.

100

1.4. Instrumentaie virtual cu dSPACE


1.4.1. Introducre
SPACE Simulator ofer o posibilitate complet de control a unui experiment.
ControlDesk se constituie ntr-o interfa cu utilizri multiple (interfa utilizator,
generarea instrumentelor virtuale, preconfigurarea layout-uri pentru aplicaii HIL etc.).
Componenta software oferit de firma dSPACE este nsoit de ofertele
generoase hardware astfel nct s se poat atinge scopul urmrit: achiziie i control.
Componenta software a fost proiectat iniial pentru lucru n asociere cu mediul
Matlab / Simulink. n ultima perioad alte programe puternice (LabView, Dymola,
20SIM) pentru modelare / simulare au dezvoltat faciliti pentru accesarea
componentelor dSPACE
1.4.2. Instrumentaia virtual n ControlDesk
Lansarea programului ControlDesk (pe principiile clasice de lucru sub
Windows) conduce la deschiderea interfeei utilizator prezentat n figura 4...Se
remarc 4 zone:
1 zona de unealt (Tool Window). Este posibil accesarea a trei controale
ataate acestei zone: Log Viewer (vizualizare mesaje, erori, legturi);
Interpretor (permite utilizarea mediului de programare Python pentru
ControlDesk); File Selector (permite selectarea fiierului dorit)

Fig. 1.184 Interfaa utilizator

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

101

2- zona navigator ofer posibilitatea selectrii a trei domenii: parte de


experiment (Experiment); instrumentaie (Instrumentation) care deschide
layout-ul curent de lucru; platforma (Platforma) care permite selectarea
platformei de lucru (Simulink, sistemul local).
3 zona layout;
4 zona de selectare a instrumentelor de lucru. Avnd n vedere scopul propus
n acest subcapitol vom aborda doar dou categorii dintre instrumentaia
disponibil (fig.4...):
instrumentele virtuale (Virtual Instruments) i
instrumentele pentru achiziia de date (Data Acquitition)

Fig. 1.185 Caseta cu instrumentele disponibile n ControlDesk

Construcia interfeei grafice pentru utilizator presupune selectarea unei noi


pagini de lucru: File >New > Layout. n pasul urmtor (dac nu este nc vizibil) se
valideaz vizualizarea selectorului de instrumente: View > Controlbars > Instrument
Selector.
Pe principiul clasic se selecteaz din caseta instrumentelor (cu butonul stng al
mouse-lui) instrumentul dorit i se dimensioneaz la valoarea dorit n pagina de lucru.
Icon-ul rezultat conine aspectul grafic care l caracterizeaz i o zon de etichet
pentru nscrierea numelui (fig.4...). Un clic cu butonul drept al mouse-lui n zona
iconu-lui deschide meniul derulant din care se pot selecta facilitile dorite.

102
Fig. 1.186 Instrument i meniul derulant

Selectarea opiunii Properties permite deschiderea casetei de dialog cu o


multitudine de faciliti (fig.4...)

Fig. 1.187 Instrument i caseta de proprieti

Cnd se genereaz unn layout asociat unui experiment orice variabil din
simulink se poate lega modelului creat. La construcia modelului Simulink sunt
generate dou tipuri de fiiere: de descriere a variabilei Variable Description File
(*.trc) i fiier de desciere a sistemului System Description File (*.sdf). Selectarea
opiunii Highlight Variables din meniul derulant al instrrumentului permite
vizualizarea grafului variabilelor i lista acestora (fig.4...).

Fig. 1.188 Vizualizarea variabilelor

Rezultatele experimentului se pot salva pe un suport sau se pot vizualiza grafic


prin asocierea unui instrument grafic de plotare la instrumentul virtual creat.
Pentru configurarea programului ControlDesk refritor la stocarea informaiei din
experiment se selecteaz caseta Capture Settings din Data Acquisition. Aceasta caset
permite selectarea variabilelor care se vor prelua, regimul de lucru. Pe lng
instrumentele numerice introduse n panoul instrumentului virtual se poate selecta i
componenta grafic Data Acquisition / PlotterArray. La introducerea n pagina de lucru
a acestui instrument, vom avea doar un cadru gol. Deschiderea meniului derulant i

EROARE! STIL NEDEFINIT. - Eroare! Stil nedefinit.

103

apoi a opiunii Properties va conduce la deschiderea casetei de dialog asociat acestui


instrument (fig.4...). Este posibil astfel particularizarea zonei de plotare deup dorina
utilizatorului.

Fig. 1.189 Instrumentul de plotare i caseta de dialog asociat

n final se obine panoul corespunztor instrumentului virtual asociat


experiemntului vizat (fig.4...).

Fig. 1.190 Instrument virtual creat n ControlDesk /dSPACE

1.4.3. Concluzii
Construcia instrumentului virtual n ControlDesk/dSPACE are aspecte
asemntoare cu LabView dar i diferene de abordare. mportant de reinut este
disponibilitatea acestui softwere pentru controlul sistemelor pornind de la achiziia

104
realizat i modelul sistemului construit n Matlab/Simulink.