Studenți: Grigore Maria-Alexandra Pătrașcu Florentina-Eugenia Grupa:1425, Seria 2 Anul: II Facultatea de Inginerie Medicală Universitatea Politehnica… [308405]
[anonimizat] 2-
Studenți: [anonimizat]-Eugenia
Grupa:1425, Seria 2
Anul: II
Facultatea de Inginerie Medicală
Universitatea Politehnica din București
LabView (Laboratory Virtual Instrument Engineering Workbench) este un limbaj de programare graphic care utilizează pictograme în loc de linii de text pentru a crea aplicații. Acesta este un soft dedicat proiectării/[anonimizat], [anonimizat] a controlului acestora în conjuncție cu plăci de achiziție și control dedicate. Structura unui instrument virtual este următoarea:
Fereastra grafică numită ‘panou frontal’(front panel). Această fereastră conține interfața cu utilizatorul.
Fereastra grafică numită ‘diagrama bloc’(block diagram). Aceasta conține sursa programului.
[anonimizat], [anonimizat], [anonimizat]. Mediul de dezvoltare LabVIEW a evoluat rapid și în prezent noțiunea de VI s-a extins, astfel că acoperă o [anonimizat], [anonimizat], până la simularea sau controlul unor procese industriale complexe.
În spatele panoului frontal este diagrama bloc cu programul executabil. Componentele diagramei bloc reprezintă subnivelul instrumentelor și structura de control a programului. Se atașează conexiunile între obiecte pentru a se pune în evidență cauzalitatea sistemului reprezentat și a permite compilatorului să ia cunoștință de interconectarea sistemului.
Nodurile sunt elemente de execuție program. [anonimizat].
Elementele din panoul frontal sunt de două tipuri: de control și de afișare (indicatoare). În cadrul diagramei bloc regăsim “motorul” aplicației, [anonimizat]. [anonimizat], care să reprezinte cele două numere și unul sau mai multe indicatoare.
[anonimizat]. Așadar, [anonimizat] o funcție cu ajutorul căreia se convertesc variabilele.
While Loop (bucla while): Repetă codul din cadrul subdiagramei sale până la apariția unei anumite condiții. [anonimizat] o dată. IV-ul verifică starea mărimii de intrare în terminalul condițional la fiecare
terminare a executării unui ciclu complet al buclei.
Astfel, bucla While va fi executată cel puțin o dată, chiar dacă valoarea transmisă terminalului condițional are valoarea FALS chiar de la început. Terminalul iterativ reprezintă o mărime care furnizează numărul iterației
curente.
Valoarea inițială a terminalului iterativ este zero ([anonimizat]).
Componentele unei While Loop:
Subdiagrama – Conține codul pe care aceasta îl execute o singură data pentru o anumită iterație.
Iterația Terminală (i) – Arată importanța numărului de iterații ale buclei. Numărul buclei începe întotdeauna la zero pentru prima iterație. În cazul în care numărul de iterații depășește 2147483647, terminalul iterare rămâne la 2147483647 pentru toate iterațiile ulterioare. Dacă aveți nevoie pentru a păstra numărul de mai mult de 2147483647 iterații, puteți utiliza registre de deplasare cu un interval mai mare număr întreg.
Condițional Terminal – Estimează o valoare de intrare booleană pentru a determina dacă să continue executarea buclei While. Pentru a specifica dacă bucla se oprește pentru o valoare booleană TRUE sau FALSE, configurați comportamentul de continuare a ciclului. De asemenea, se poate determina momentul în care bucla se oprește prin conectarea unui cluster de eroare la terminalul condiționată.
Simplificând, se poate spune că:
– Terminalul numără iterațiile
– Întotdeauna bucla este executată cel puțin o data
– Bucla este executată până când este îndeplinită condiția de stop
Bucla While este echivalentă cu următoarea secvență de program:
Do
Execută diagrama din interiorul buclei.
While
Condiția este adevarată.
Metoda de programare liniară Simplex VI (Linear programming simplex method vi) Stabilește soluția unei probleme de programare liniară.
C este un vector care descrie funcționarea lineară pentru a putea maximiza.
M este o matrice care descrie diferitele limitări.
B este un vector care descrie laturile drepte ale inegalităților de limitare.
maximum este valoarea maximă, în cazul în care există, X fiind limitat.
X este vectorul soluție.
ticks este timpul în milisecunde pentru întregul calcul.
eroarea returnează orice condiție de eroare sau de avertisment de la VI. Nonexistența unei soluții X conduce la o eroare.
Următoarea ecuație definește problema optimizării acestui VI:
cx = max! cu limitările x ≥ 0 și mx ≥ b. Pentru problema de optimizare cx = max!, folosesc următoarele definiții: X = (x1, …, xn) C = (c1, …, cn) B = (b1, …, bk) Pentru a rezolva problema de optimizare, trebuie să se decidă dacă un vector X optim există. Dacă există vectorul optim, apoi se determină acest vector X. Soluția unei probleme de programare liniară este un proces în două etape. Parcurgerea pașilor pentru a rezolva o problemă de programare liniară sunt:
Transformarea problemei inițiale într-o problemă în formă normală restrânsă, în esență, fără inegalități în formulare.
Rezolvarea problemei în formă normală restrânsă.
Soluțiile pe care această unealtă le oferă sunt matrici formate din o linie și trei coloane:
For Loop (bucla for): Execută subdiagrama de n ori, atunci când n are valoare la terminalul (N). Iterația de la terminalul (i) furnizează curent iterațiilor contorului, care variază de la 0 la n-1.
Terminalul count specifică numărul de execuții ale codului de intrare din bucla for. Dacă are valoarea 0 sau un număr negativ la terminalul count, bucla nu se execută. Acest terminal este afișat în mod implicit.
Așadar, comparând bucla for cu bucla de tip while, se poate spune că aceasta este caracterizată următoarele:
– Terminalul numără iterațiile
– Bucla rulează până la epuizarea iterațiilor
Bucla For este echivalentă cu următoarea secvență de program:
For I = 0 to N1
Execută diagrama din interiorul buclei
Ecuațiile parsing pentru optimizare liniară sunt caracterizate de faptul că acestea pot calcula anumite funcții introducând expresia ecuației si variabilele respective. Fiind introdusă într-o bucla de tip for (for loop), bucla rulează până la epuizarea iterațiilor, adică găsirea soluțiilor ecuației introduse.
Trim Whitespace VI: Elimină toate ,,spațiile albe” ASCII (spații, tab-uri, încărcături și linefeeds) de la început sau sfârșit sau ambele capete ale șirului. Această unealtă nu elimină caracterele de pe doi octeți. Valoarea implicită este de a elimina spațiul alb de la ambele capete ale șirului.
Locul de amplasare (location) determină dacă această funcție elimină spațiul alb de la început, sfârșit sau ambele capete ale șirului.
0 Both – Îndepărtează spațiul alb din ambele capete ale șirului de intrare.
1 Start of string – Îndepărtează spațiul alb de la începutul șirului de intrare.
2 End of string – Elimină spațiu alb de la capătul șirului de intrare.
-string – este șirul de intrare.
-trimmed string – conține șirul cu spațiul alb îndepărtat.
În acest caz, datele terminale sunt amplasate în locații de tip ,,Both”, ceea ce înseamnă că programul va șterge spațiile goale de la ambele capete ale șirului.
Array To Spreadsheet String Function: Transformă o matrice de orice dimensiune la una sub formă de șir, care conține file ce separă elementele din coloană, un caracter dependent de platforma EOL separă rândurile, și, pentru rețele de trei sau mai multe dimensiuni, antete separă paginile.
Delimitatorul (delimiter) este valoarea utilizată pentru a separa câmpurile din fișierul de calcul tabelar. Implicit este un singur caracter filă.
Șir de caractere format (format string) specifică modul de a converti matricea de intrare într-un șir de caractere. Se utilizează %s pentru a converti o matrice de siruri de caractere. Se folosește %d sau %f pentru a converti matrice de numere.
Această funcție (array to spreadsheet string function) permite utilizarea doar unui singur specificator pentru a formata toate elementele unui tablou. Nu puteți folosi mai mulți specificatorilori la această funcție pentru a formata unele elemente de matrice conform unui specificator și alte elemente unui specificator diferit.
Specificatorul (array) specifică probele de intrare.
Șir de calcul tabelar (spreadsheet string) este separat în coloane prin delimitare, cum ar fi file, și un capăt de linie (EOL), caractere care separă rândurile.
Pentru matrici de trei sau mai multe dimensiuni, fiecare pagină este precedată de o serie de indici de următorul format. [n, m, …, 0,0] unde n este cel mai mare indice dimensiune, m este următorul cel mai mare indice dimensiune, o virgulă (,) care separă indici, 0,0 se referă la primul rând și elementele coloană ale paginii n, m, …
Aceasta este o matrice alcătuită dintr-o linie și trei coloane, fiind unul dintre rezultatele pe care programul le oferă.
Funcția de așteptare(ms): așteaptă numărul specificat în milisecunde și returnează valoarea timer-ul milisecundă. Setând o valoare de intrare de la 0 la milisecunde să aștepte forțează firul curent pentru a se obține un control al procesorului. Această funcție face apeluri de sistem asincrone, dar nodurile ei funcționează sincron. Prin urmare, nu se completează execuția până la scurgerea timpului specificat.
Miliseconds to wait specifică câte milisecunde să aștepte. Această funcție nu așteaptă mai mult de 0x7ffffff sau 2147483647 ms. În cazul în care așteaptă o perioadă mai lungă, funcția se execută de două ori. Setarea la valoarea 0 pentru acest parametru forțează firul curent pentru a se obține un control al procesorului.
Miliseconds timer value returnează valoarea timer-ul în milisecunde după așteptare.
Neagă valoarea de intrare. Panoul conector afișează tipurile de date implicite pentru această funcție polimorfă.
x poate fi un număr scalar, un număr de punct fix, o matrice sau un șir de numere, o serie de grupuri de numere, etc. x nu poate fi un număr întreg fără semn, deoarece numere întregi fără semn reprezintă numai numere întregi non-negative.
-x este valoarea negativă a lui x.
Structura Case: are una sau mai multe subdiagrame,sau cazuri, exact una dintre care execută atunci când structura este executată. Valoarea la terminalul selector determină cazul în care să se execute și poate fi de tip boolean, string, integer, tip enumerat, sau cluster eroare. Se utilizează instrumentul de etichetare pentru a introduce o valoare (e) în eticheta de selectare de caz și se configurează valoarea (valorile) manipulate de către fiecare caz.
Structura Case este echivalentă cu următoarea secvență de program:
If (conditie)
Then
Execută diagrama din interiorul structurii True
Else
Execută diagrama din interiorul structurii False
String Controls and Indicators sunt utilizate pentru a introduce sau a afișa un anumit text. Utilizarea controalelor de tipul string și indicatorilor constă în introducerea sau afișarea unor fișiere sau a unor dosare. Se trec valori noi sau modificate în diagrama bloc dintr-un șir de caractere de control, făcând click în afara câmpului de text. În mod implicit, LabVIEW așteaptă până când se efectuează această acțiune pentru a interpreta noile valori. Se poate actualiza valoarea șir făcând click dreapta pe un control șir și selectând Actualizare valoare în timp ce se poate scrie din meniul de comenzi rapide.
Disponibilitatea comenzilor și a indicatorilor poate varia în funcție de stilul subpaletei alese.
LabViewul nu elimină valorile înregistrate în registrii pâna când nu se închide VIul și se elimină din memorie. Cu alte cuvinte, dacă se pornește un VI cu regiștrii neinițializați, valoarea inițială pentru secvența care rulează va fi aceeași ca și a VIului care a rulat înainte.
Bibliografie:
http://www.scritub.com/stiinta/informatica/LabView-manual-de-utilizare134511123.php
http://www.science.upm.ro/~traian/web_curs/LabVIEW/start.html (poza)
https://www.google.ro/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&uact=8&ved=0ahUKEwjd7-aVu_nTAhXHAcAKHbgSAtoQFgg2MAM&url=http%3A%2F%2Fwww.automation.ro%2FInvata_Automatica%2Fpdf%2FNI_Labview.pdf&usg=AFQjCNGMFHrSRfbs6VUi2ZZpEeCFSzPxPA
http://romania.ni.com/academic/labview-in-academie
http://zone.ni.com/reference/en-XX/help/371361N-01/lvhelp/labview_help/
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Studenți: Grigore Maria-Alexandra Pătrașcu Florentina-Eugenia Grupa:1425, Seria 2 Anul: II Facultatea de Inginerie Medicală Universitatea Politehnica… [308405] (ID: 308405)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
