Calculatoare
LabView - prezentarea generala in loboratorLUCRAREA DE LABORATOR Prezentarea generala a programului LabView Notiuni teoreticeLabView este pachetul software lider mondial in achizitia, prelucrarea, stocarea si afisarea datelor, cat si a controlului acestora. Este un mediu de dezvoltare bazat pe limbajul G, limbaj care are la baza principiul fluxului de date. Mediul de dezvoltare este grafic, fiind mult mai intuitiv decat limbajele de programare conventionale bazate pe text. Structura unui instrument virtual (vi) este urmatoarea:
Structura meniurilor ce compun un instrument virtual este:
Marimile de intrare se numesc controale, iar marimile de iesire se numesc indicatoare.
Pentru actionarea acestora aveti la dispozitie urmatoare tipuri de cursoare:
Desfasurarea lucrarii
Plasati pe panoul frontal doua controale si un indicator de tip numeric.
Pe Diagrama vor aparea echivalentele acestora. Observati diferentele intre reprezentarea indicatoarelor si controalelor. Din menul de functii numerice selectat functia de scadere si folosind cursorul indicat in figura de mai jos legati controalele de intrarile functiei si indicatorul de iesirea acestuia. Folosind combnatia de taste CTRL+H vizualizati helpul pentru functiile folosite si indicatii privind conectarea acestora.
In Labview culoarea obiectelor de pe diagrama indica tiplu datelor: . Pentru a schimba tipul unui control sau indicator numeric actionati cu butonul din dreapta al mouse-ului si din optiunea representaton selectati tipul dorit:
Schimbati tipul unui control si al indicatorului de pe diagrama curenta in intreg. Observati pe diagrama punctele aparute pe intrarea pe indicator si primitiva de diferenta. Acestea indica efectuarea unei conversii de date in punctul respectiv.
Implementati intr-un nou .vi expresia curent tensiune a unei jonctiuni:
unde I0 este de ordinul 10-10, n intre 1 si 2 si Vth 0.025V. Pentru a modifica numarul de zecimale exacte al controalelor si indicatoarelor de pe panoul frontal actionati butonul din dreapta al mouse-ului si selectati optionea Format & Precison. Creati un nou vi. Pe Diagrama din meniul de Functii->Structuri selectati structura Case si desenati aceasta structura precum in figura de mai jos:
Aceasta structura evalueaza datele de intrare in selectorul de caz si efectuaza codul din fereastra corespunzatoare cazului valid.Utilizind acesta structura realizati un .vi ce foloseste un control de tip boolean pentru a realiza suma sau diferenta a doua numere. Pentru aceasta definit doua controale si un indicator numeric si un control boolean si pe diagrama legati controlul bolean de selectorul structuri case si in cele doua ferestre ale acesteia folositi primitivele de adunare si scadere. Observati ca la legarea de date de intrare si iesire intr-un case pe marginea acestuia apar porturi. Pentru a asigura o functionarea structurii indiferent de valoarea selectorului un port de iesire dintr-o strucutra case trebuie sa aiba date valide in oricare dintre cazurile definite. Daca acest lucru nu se intampla programul va returna eroare si portul va arata precum in CAZul 1 din figura de mai jos. In CAZul 2 toate porturile sunt conecate corect si programul poate rula. (In cazul porturilor de intrare nu este necesare folosirea acestora in toate cazurile definite.)
Stergeti contolul boolean de pe panoul frontal si inlocuti-l cu unul numeric te tip natural. Observati ca numele cazurile structuri case s-a schimbat o data cu schimbarea tipului de date foosite pentru selectie. Actionand butonul din dreapta al mouse-ului adaugati mai multe cazuri pentru structura case pentru a extinde functionalitatea programului pentru alte operatii decat cea de adunare si scadere. Observati ca unul din cazuri este marcat ca Defaul. Cand tipul selectorul permite un numar mare de valori posibile, cazul marcat ca Defaul este cel executat in cazul in care valoarea pe care o ia selectorul nu este definita explicit in structura case. O asemena strucutura nu va rula daca nu este definit un caz ca fiind default si oricare dntre cazuri poate fi cazul default prin selectarea acestui caz si actionarea butonului dreapta al mouse-ului pe marginea structurii case si alegerea optiunii „Make This The Default Case”.
Pe un nou .vi pe diagrama desenati o structura de tip FOR LOOP. Aceasta bucla executa N iteratii folosind un contor de la 0 la N-1.
Pe o asemenea structura se pot definii registre cu shiftare (shft register). Aceste registre de dimensiune reglabila se comporta ca niste stive de tip First-In-First-Out si permit aceul in cadrul iteratiei curente la date introduse in registrul in cadrul iteratiilor anterioare. Pentru a definii un shift register actionati butonul dreapta al mouse-ului pe una dntre lateralele structurii FOR si alegeti optiunea „Add shift Register”. Dimesiunea registrul se poate schimba actionarea butonului din dreapta al mouse-ului pe un registru si alegea optiunii „Add Element”. Pentru a putea avea acces la datele dintr-un registru si la iteratia 0 orice registru toate elemente registrulu trebuie initializate.
Realizati un .vi ce calculeaza elementul N din sirul lui Fibonacci pentru N>1: F(N)=F(N-1)+F(N-2) si F(0)=0, F(1)=1., folosind o structura FOR LOOP cu un registru de siftare de dimensiune 2. Realizati pe acelas .vi calcului lui F(N) folosind o structura WHILE LOOP, folosind acelas control N ca si structura FOR LOOP si comparati rezultatele.
|