Documente Academic
Documente Profesional
Documente Cultură
1. Obiectivul lucrării:
2. Consideraţii teoretice
Programarea grafică
Majoritatea aplicaţiilor din natură sunt aplicaţii concurente, caracterizate prin execuţia
concurentă a mai multor operaţii. Modul de execuţie secvenţial a fost impus de modelul
computaţional von Neumann, dar el nu reflectă nici pe de parte realitatea.
Spre deosebire de majoritatea limbajelor de programare clasice, bazate pe text, LabVIEW
foloseşte un model de execuţie concurent, modelul Data Flow. Ca urmare, LabVIEW permite
execuţia concurentă a aplicaţiilor sub forma forma timeshearing, fiind un sistem multitasking,
permiţând execuţia concurentă a mai multor căi dintr-un program, a mai multor instrumente
virtuale sau a mai multor aplicaţii. Funcţiile (ce apar în diagrama BD (block Diagram) sub formă de
icoane) precum şi structurile de control ale programului ( bucle For, structura de Secvenţiere, etc.)
sunt denumite generic în LabVIEW noduri. Un nod îşi începe execuţia de îndată ce are disponibile
toate datele de intrare. El va produce date de ieşire pentru toate nodurile cu care este conectat. Acest
model de execuţie de tip data-driven, în care ordinea de execuţie a operaţiilor (de activare a
nodurilor) este determinată de disponibilitatea datelor este cunoscut sub denumirea de modelul
data flow.
Modelul data-flow declanşează execuţia tuturor operaţiilor din graful data-flow ce ar putea fi
executate la un moment dat (au toate datele de intrare disponibile).
Obs: Se poate face observaţia că s-ar putea irosi resurse şi cu paralelismul ce nu este util pentru
obţinerea rezultatului final. Modelul data-flow nu poate distinge între paralelismul util şi cel ce nu
contribuie la obţinerea mai rapidă a rezultatului (paralelismul redundant). Modelul reducţionist
lucrează numai cu paralelismul util. În schimb, apar probleme în execuţia eficientă a acestui model.
În Fig.1 se prezintã cele douã ferestre folosite în realizarea unui instrument virtual.
Fig.1. Ferestrele specifice unui instrument virtual
În meniul panoului frontal avem nişte butoane care corespund urmãtoarelor comenzi principale :
-Run –care lanseazã în execuţie programul
-Continously Run – care permite execuţia continuã a programului
-Abort – care opreşte execuţia programului
-Pause – ce opreşte temporar execuţia programului
Pentru realizarea unui IV se foloseşte paleta de unelte din Fig.2. Pentru afişarea acestei palete se
merge în meniul principal şi se alege calea : View-> Tools Palette.
"Panoul frontal" FP reprezintă interfaţa grafică cu utilizatorul GUI, prin intermediul căreia
utilizatorul furnizează datele de intrare, controlînd modul de lucru al sistemului simulat, şi
vizualizează rezultatele furnizate de sistemul de masură informatizat. Pe panoul frontal FP apar
poziţionate "controalele" şi "indicatoarele".
Controlul instrumentului virtual se face prin intermediul unor "controale" prin care se furnizează
date de intrare prin comutarea unui comutator, deplasarea unui cursor, răsucirea unui buton, sau pur
şi simplu prin intermediul tastaturii. Controalele apar poziţionate pe panoul frontal aşa cum apar
poziţionate butoanele, cursoarele, potenţiometrele sau comutatoarele pe panoul frontal al unui
instrument real. Afişarea rezultatelor se face prin intermediul "indicatoarelor". În LabVIEW, avem
o gamă largă de astfel de elemete de afişare cum ar fi: elemente de afişare grafice, analogice,
numerice,etc.
Fiecărui control sau indicator de pe panoul frontal îi corespunde în schema bloc BD câte un
terminal, ce reprezintă un punct din sistem prin care se comunică cu exteriorul (având o
semnifica_ie similară porturilor de la microsisteme).
Obs.1.Un terminal nu poate fi adăugat sau şters de pe diagramă: el apare sau dispare odată cu
adăugarea sau ştergerea unui control sau indicator de pe panoul frontal.
2.Datorită caracterului modular şi ierarhic al mediului de dezvoltare LabVIEW, avem o ierarhie
şi de panouri frontale, fiecare sub IV având propriul panou frontal. În timpul execuţiei unui
program LabVIEW se pot deschide panourile frontale ale sub IV-urilor putând astfel vizualiza o
serie de rezultate intermediare, ceea ce este foarte util în faza de testare şi depanare a sistemului
automat de test.
Panoul frontal FP al unui IV poate fi asemănator într-o masură mai mare sau mai mică cu panoul
frontal al instrumentului real emulat dar se recomandă ca modul de interacţiune cu utilizatorul să fie
similar cu cel al instrumentului real, astfel încât utilizarea instrumentului virtual să fie cel puţin la
fel de uşuară ca şi cea a instrumentului real iar utilizatorul familiarizat cu instrumentul real să-l
poată recunoaşte cu uşurinţă şi să-l poată utiliza imediat.
Obs. De obicei panourile frontale pentru IV-urile ce emulează instrumente reale se obţin prin
scanare şi procesare grafică, astfel încât acestea seamănă bine cu cele reale iar butoanele au aceeaşi
poziţie şi aceleaşi funcţii. Vor rămâne însă doar acele elemente folosite la comanda de la distanţă a
instrumentului virtual.
Diagrama (schema bloc) BD reprezintă codul sursă al unui instrument virtual IV scris cu
ajutorul elementelor specifice limbajului de programare grafică. Scrierea unui program LabVIEW
pentru un IV constă în desenarea unei astfel de schemă bloc prin conectarea nodurilor şi a
terminalelor prin intermediul unor "fire".
-terminalele, prin care se introduc sau se extrag date din program şi care sunt plasate
automat în diagrama bloc în momentul în care acestea sunt plasate pe panoul frontal
-firele, care reprezintã elementele de legãturã între elementele funcţionale si prin care
circulã datele in program. Ele definesc fluxul de date din program.
Nodurile sunt disponibile în meniul cu funcţii. Elementele meniului cu funcţii sunt prezentate
în Fig.2.
Structurile de control sunt similare celor din limbajele de programare clasice ( structuri FOR,
WHILE, CASE,etc.). Structura secvenţiala, ce impune o anumită ordine de execuţie a nodurilor)
este puţin deosebită de cea clasică în sensul ca ordinea de execuţie a nodurilor este dată de numărul
asociat acelui nod şi nu de ordinea în care apar acestea în text (care în acest caz nici nu există).
Aceste structuri apar în diagramă sub formă de chenar (border) ce încercuieşte "icoanele" nodurilor
a căror execuţie o controlează.
"Firele" ce conectează nodurile din diagramă reprezintă căile de date pe care circulă_ datele între
diversele blocuri funcţionale. Tipul(dimensiunea, culoarea) acestor fire depinde de tipul datelor ce
circul_ prin aceste "fire". Astfel, pentru scalari se folosesc "fire" subţiri iar pentru vectori şi matrici
se utilizează "fire" groase.
În editarea diagramei alte instrumente virtuale IV pot fi utilizate ca sub IV-uri. În acest caz, IV-ul va
fi reprezentat printr-o icoană ce reprezintă identificatorul IV-ului respectiv şi printr-un conector ce
este utilizat pentru conectarea terminalelor sub-IV- ului respectiv. Terminalele vor fi colorate
diferit în funcţie de tipul datei ce "circulă" prin acel terminal.
Obs. Un sub-IV corespunde unui subprogram din limbajele clasice de programare, icoana
corespunzând numelui subprogramului iar conectorulul listei de parametri, fiecare terminal(
control sau indicator) corespunzând unui parametru de intrare sau de ieşire.
Prin crearea unei icoane pentru un instrument virtual şi folosirea ei în diagrama altor IV-uri se
favorizează metoda top-down de proiectare obţinându-se programe cu structură modulară şi
ierarhică. De asemenea, prin utilizarea icoanelor pentru sub-IV-uri se pot "ascunde" o serie de
detalii referitoare la structura acestora păstrându-se însă accesul la panoul frontal al IV-ului, putând
astfel vizualiza în execuţie o serie de rezultate intermediare, ceea ce facilitează testarea şi depanarea
sistemului de măsură informatizat.
Realizarea sau simularea unui sistem deachiziţie folosind mediul integrat LabVIEW
În simularea sau realizarea unui sistem de achiziţie trebuie parcurse urmãtoarele etape:
-realizarea driverului de instrument
-construcţia instrumentelor virtuale ce simulează instrumentele reale ce intervin în sistem
-realizarea aplicaţiei ce utilizează instrumentele virtuale respective
Obs. Driverul de instrument reprezintă elementul critic şi care poate determina în mod esenţial
timpul de punere la punct şi deci şi costul unui sistem de măsură informatizat.
Instrumentele virtuale pentru controlul instrumentelor reale reprezintă aplicaţia ce permite accesul
la funcţiile respectivului instrument real. El este implementat folosind sub-IV-urile din Driverul de
Instrument ce simulează funcţiile instrumentului real. LabVIEW are o biblioteca ce conţine IV-uri
peste 260 de instrumente interfaţabile cu magistralele de instrumentaţie GPIB şi VXI sau prin
interfaţa serială RS-232. Majoritatea fabricanţilor de instrumente furnizează în prezent nu numai
plăci de interfaţa standard GPIB sau VXI ci şi drivere soft pentru instrumentele fabricate de aceştia.
3. Desfãşurarea lucrãrii