Post on 17-Feb-2016
April 22, 2023 Mircea Viorel DRĂGOI 1
Grupările de date (cluster) sunt entităţi care grupează mai multe valori, acestea, spre deosebire de cazul array-ului, putând fi de diverse tipuri. Se poate face o similitudine între tipul de dată cluster şi înregistrarea din alte limbaje de programare (Turbo Pascal, Delphi etc). Datele de tip cluster pot fi definite de către
programator, dar pot fi şi construite cu ajutorul unor funcţii specifice LabVIEW.
SADD – Funcţii LabVIEW
April 22, 2023 Mircea Viorel DRĂGOI 2
SADD – Funcţii LabVIEW
Pentru crearea unui control sau indicator cluster se procedează asemănător ca pentru array, cu deosebirea că se pot introduce în interiorul său controale/indicatori de diverse tipuri
April 22, 2023 Mircea Viorel DRĂGOI 3
SADD – Funcţii LabVIEW
Compatibilitatea datelor de tip cluster. Ordinea componentelor în structura unui cluster nu este dată de poziţia lor pe panoul frontal, ci de ordinea în care au fost ele inserate în controlul/indicatorul cluster. În cazul în care un cluster este modificat prin adăugarea sau eliminarea unor componente, structura sa devine greu de controlat. Pentru a evita astfel de neplăceri, se recomandă asamblarea datelor de tip cluster prin utilizarea unor funcţii specifice, nu prin editare directă
April 22, 2023 Mircea Viorel DRĂGOI 4
SADD – Funcţii LabVIEW
Funcţii pentru prelucrarea datelor de tip cluster
April 22, 2023 Mircea Viorel DRĂGOI 5
SADD – Funcţii LabVIEW
Funcţia Bundle este utilizată pentru construcţia datelor structurate de tip cluster. În Fig. a) se observă gruparea a două variabile indexate (vector) X şi Y. Rezultatul funcţiei Bundle este un cluster care poate fi furnizat indicatorului de grafic în vederea reprezentării.Fig. b) prezintă un alt mod de construcţie a clusterului: sunt grupate două valori întregi şi un vector; valorile întregi au semnificaţia "valoare minimă pentru abscisă", respectiv “pasul valorilor din abscisă”. Vectorul Y conţine mulţimea de valori care urmează să fie reprezentate.
April 22, 2023 Mircea Viorel DRĂGOI 6
SADD – Funcţii LabVIEW
Bundle
Bundle
a)
b)
April 22, 2023 Mircea Viorel DRĂGOI 7
SADD – Funcţii LabVIEW
Funcţia Unbundle asigură accesul la componentele unui cluster şi permite separarea oricărei componente. Prin separare nu trebuie înţeles faptul că după ce a fost prelucrat cu Unbundle un cluster pierde una sau mai multe componente, ci că se pot obţine copii ale acestora, ca entităţi distincte.
Observaţie: Utilizatorul nu are control deplin asupra modului în care LabVIEW asociază unei ieşiri din funcţie o anumită componentă a clusterului.
April 22, 2023 Mircea Viorel DRĂGOI 8
SADD – Funcţii LabVIEW
Unbundle
April 22, 2023 Mircea Viorel DRĂGOI 9
SADD – Funcţii LabVIEW Funcţia Bundle by name permite înlocuirea unei componente dintr-
un cluster cu alta. Noua componentă trebuie să fie de acelaşi tip cu cea pe care o înlocuieşte. Eetapele operării cu funcţia Bundle by name:
a) inserarea în diagramă a funcţiei, utilizând paleta de funcţii;b) conectarea la funcţie a clusterului vizat. Observaţi cu atenţie intrarea la care se
conectează clusterul. În acest moment intrarea din stânga a funcţiei indică numele primei componente a clusterului conectat;
c) dacă se doreşte înlocuirea mai multor componente ale clusterului se vor adăuga noi intrări în partea stângă a funcţiei. Pentru a adăuga noi intrări se se trage de colţul pictogramei funcţiei.
d) pentru a selecta după nume componenta care urmează să fie înlocuită se face clic pe intrarea dorită cu cursorul de operare (mâna) şi se selectează din lista primită numele vizat. Pentru a avea asigurat accesul la orice componentă a clusterului, este obligatoriu ca toate componentele acestuia să fi fost etichetate (să le fi fost completat câmpul Label, chiar dacă acesta nu e vizibil).
a) b) c) d)
April 22, 2023 Mircea Viorel DRĂGOI 10
SADD – Funcţii LabVIEW Modul de utilizare a funcţiei Bundle by name. Se observă că prin
inversarea valorilor componentelor Xmin şi Increment ale clusterului Date_grafic, valorile indicatoarelor X1 şi X2 diferă, deşi au fost calculate cu aceeaşi relaţie: X1 (X2)=Xmin+Increment*Număr componente.
April 22, 2023 Mircea Viorel DRĂGOI 11
SADD – Funcţii LabVIEW
Funcţia Unbundle by name permite "explodarea" unui clustrer în componentele sale, având prin intermediul numelor componentelor un control deplin asupra distribuirii valorilor acestora către anumite destinaţii. Pot fi extrase prin intermediul acestei funcţii fie toate componentele unui cluster, fie doar unele dintre ele. Numărul de componente care vor fi extrase este, bineînţeles, în concordanţă cu numărul de ieşiri ale funcţiei. Acesta se reglează trăgând de unul din colţurile pictogramei funcţiei. Pentru a asocia o ieşire unei anumite componente a clusterului se face clic pe ieşirea vizată cu cursorul de operare şi se alege din lista furnizată numele dorit.
April 22, 2023 Mircea Viorel DRĂGOI 12
SADD – Funcţii LabVIEW
Amintim că atunci când se operează cu indicatoare de tip cluster, ordinea componentelor în structură nu este definită prin construcţia clusterului. Din acest motiv, atunci când se doreşte reprezentarea datelor respective prin intermediul unui indicator adecvat, se recomandă dezasamblarea clusterului cu funcţia Unbundle by name şi reconstrucţia sa cu Bundle. Aceasta permite controlul ordinii componentelor prin intermediul intrărilor în funcţie, aşa cum se poate observa în figură
April 22, 2023 Mircea Viorel DRĂGOI 13
SADD – Funcţii LabVIEW
April 22, 2023 Mircea Viorel DRĂGOI 14
SADD – Funcţii LabVIEW
Controale/indicatoare de tip grafic Aceste obiecte mai sunt numite şi inregistratori şi sunt
utilizate cu precădere ca indicatori. Un indicator grafic este o formă de afişaj a datelor de tip array. Pe un astfel de indicator pot fi afişate unul sau mai multe array-uri numite grafice în acest caz. Modul de reprezentare a datelor poate fi ca grafic XY sau grafic undă. Indiferent de modul de reprezentare a datelor, aspectul indicatorului este acelaşi.
Graficul XY este un obiect cu utilitate generală, potrivit mai ales pentru reprezentarea funcţiilor care au două sau mai multe valori pentru acelaşi argument (cerc, elipsă etc. - Fig.a).
April 22, 2023 Mircea Viorel DRĂGOI 15
SADD – Funcţii LabVIEW
Graficul undă reprezintă doar funcţii bijective (unei valori a argumentului îi corespunde o valoare şi numai una a funcţiei), şi eventual la care punctele prin care e descrisă funcţia sunt egal distanţate pe axa X (un exemplu în acest sens este graficul variaţiei de temperatură la care citirea valorilor s-a făcut la intervale egale de timp - Fig. b). Pe orice tip de grafic pot fi trasate simultan mai multe curbe,Fig. c).
April 22, 2023 Mircea Viorel DRĂGOI 16
SADD – Funcţii LabVIEW
April 22, 2023 Mircea Viorel DRĂGOI 17
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 18
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 19
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 20
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 21
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 22
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 23
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 24
SADD – Funcţii LabVIEW
Înregistratoare grafice. Exemple
April 22, 2023 Mircea Viorel DRĂGOI 25
SADD – Funcţii LabVIEW
Înregistratoare grafice. Meniuri contextuale
April 22, 2023 Mircea Viorel DRĂGOI 26
SADD – Funcţii LabVIEW
Înregistratoare grafice. Meniuri contextuale