curs_8+9+10_monitorizare_2016
DESCRIPTION
MISSTRANSCRIPT
CURS 8+9M.I.S.S.
NOTIUNI DE BAZA LABVIEW
INTRODUCERE
LABVIEW -PROGRAMUL STANDARD PENTRU INSTRUMENTATIA VIRTUALA
Programare Grafica pentru Instrumentatia Virtuala
Panoul frontal – interfata grafica cu utilizatorul
Diagrama bloc grafica – codul sursa
Compilatorul – pentru executia optimizata
Programe executabile stand-alone pentru usurinta distribuirii
NATIONAL INSTRUMENTS
Elemente importante ale instrumentatiei virtuale
Achizitie
controllers
Plug-in data
acquisition boards
VXI controllers
Software for
RS-232 instruments
IEEE 488.2
Analiza
Signal generation
Digital filters
Statistics
DSP hardware
Prezentare
GUI
Strip charts
Graphs
Hardcopy
File I/O
LabVIEW, LabWindows/CVI si ComponentWorks
HiQ (Post analysis and report generation)
Achizitia PrezentareaAnaliza
Conditionarea
semnalelor
INSTRUMENT
DAQ Boards
IEEE488 (GPIB)
VXI
RS-232
Trigger Control
Formatare
Calcul
User Interface
Hard Copy
File I/O
Interprocess Communication
Networking
Program C++
#include<stdio.h>
main()
{
int a, b, c;
printf("Se introduc doua numere/n");
scanf("%d%d",&a,&b);
c = a + b;
printf("Suma numerelor este = %d/n",c);
return 0;
}
Program LabVIEW
Interfata / Output
Se introduc doua numere
4
5
Suma numerelor este = 9
Interfata / Output
furnizează instrumente familiare şi uşor de utilizat atât de începători, cât şi de programatori avansaţi, precum: structuri de programare, structuri de date, funcţii aritmetice, logice, biblioteci de diverse funcţii, exemple, tutoriale, etc.
permite folosirea regulilor avansate ale ingineriei programării, prin: modularitate, specificaţii integrate, încapsulare, biblioteci de programare, programare orientată pe obiect, etc.
aplicaţiile pot fi construite pentru mediul LabVIEW, şi pot deveni rulabile sub formǎ de executabil pe calculatorul utilizatorului, fǎrǎ a necesita licenţǎ National Instruments.
LabVIEW
poate folosi resursele hard şi soft ale calculatoarelor (porturi universale şi speciale, reţele, baze de date, sisteme distribuite, etc.), fiind prevăzut cu facilităţi speciale de interacţiune cu sistemele de achiziţie şi control, precum: plăci de sunet ale PC-urilor, instrumente inteligente de laborator, sisteme evoluate de prelucrare a imaginilor, sau de prelucrare digitală a semnalelor şi chiar sisteme complexe robotice.
suportǎ conectare sau mijloace de interacţiune cu alte medii de dezvoltare /programare, precum: The MathWorks – Inc. MATLAB , C, Maplesoft Maple, Wolfram Mathematica, ITTIDL, MathSoft MathCad, Electronic Workbench - MultiSim, Texas Instruments - Code Composer Studio, etc.
LabVIEW
Pintre modulele şi librăriile adiţionale LabVIEW este utilă amintirea următoarelor:
Digital Filter Design,
Biomedical,
Signal Processing,
Spectral Measurements,
Adaptiv Filters,
Time Frequency Analaysis,
Vision,
Simulation,
Datalogging and Supervisory Control,
Report Generation,
FPGA, etc.
LANSARE LABVIEW
LV Basics I 9
3D Image ReconstructorView DICOMDIR, IMGDIR, and multi-frame DICOM files
File Format ConverterConvert Plexon data filesChange conversion properties, such as sampling rate, when exporting to other file formats
Biosignal Logger and PlayerLog with improved long-term stabilityPlay back biosignals from saved comment positions
Bessel design methodUse the new Bessel design method to create virtual channels in the Biosignal Logger and Player and the Biosignal ViewerBiosignal File Manager
Preview supported biosignal files and manage biosignal files in virtual libraries. The Biosignal File Manager supports more than 20 file types, including TDMS, Physiobank, and EDF.
Biosignal CalibratorCalibrate third-party biosignal sensors for use with the Biomedical Workbench and the Biomedical Toolkit VIs in LabVIEW 2013.
Module Biomedicale ale mediului LabVIEW
Biosignal ViewerDisplay large biosignal filesAdd, search, edit, and delete comments/annotations for existing filesUse virtual channel options, including filtering, math, integral, and differentiation
ECG Feature ExtractorExtract ST segmentsManually modify the automatic extraction parametersExtract features with improved efficiency and accuracy
BIOSIGNAL LOGGER AND PLAYER
REMOVING WIDEBAND NOISE
EX.
NOTIUNI DE PROGRAMARE LABVIEW
LIMBAJ DE PROGRAMARE GRAFICA
Numele programelor realizate în mediul LabVIEW este
Instrument Virtual (eng. Virtual Instruments – VIs). Dacă
în limbajele de programare bazate pe text, cum este spre exemplu
C, Pascal - limbaje de generaţia a 3-a, pentru a se realiza un
program trebuiesc scrise linii de instrucţiuni, în mediul LabVIEW se
utilizează limbajul grafic G, de generaţia a 5-a, prin care se
asamblează vizual elementele componente sub formă de diagramă,
în locul editării prin linii de text de cod într-o sintaxă strictă.
Programele LabVIEW sunt denumite instrumentevirtuale - IV (în limba engleză „virtual instruments”,prescurtat VIs).
Instrumentele virtuale au trei părţi principale: ➢ panoul frontal ➢ diagrama bloc ➢ pictograma / conectorul.
Sunt analoage cu programele si functiile limbajelor clasice: C, Pascal, Fortran,…
Panoul frontal este mediul prin intermediul căruiautilizatorul setează mărimile de intrare şi vizualizeazăieşirile din diagrama bloc a instrumentului virtual.
Deoarece panoul frontal este analog unui panou frontal alunui instrument real, intrările sunt denumite comenzi iarieşirile sunt denumite indicatoare .
Se pot utiliza o mare varietate de comenzi şi indicatoarecum ar fi de exemplu: butoane rotative, întrerupătoare,comutatoare, diagrame, grafice ş.a.m.d. pentru a face capanoul frontal să fie uşor identificabil şi de înţeles.
Fereastra Panou Frontal Controale Indicatoare Reprezentare grafică
Fiecare panou frontal are o diagramă bloc care îlînsoţeşte, care este de fapt programul instrumentului virtual.
Diagrama bloc se construieşte utilizând limbajul deprogramare grafic, G. Diagrama bloc poate fi privită ca şicodul sursă al aplicaţiei.
Componentele diagramei bloc reprezintă nodurileprogramului.
FEREASTRA LABVIEW “FRONT PANEL”
Componente de baza• Controls = Inputs• Indicators = Outputs
Defineşte interfaţa grafică cu utilizatorul, adicǎ componenta pe care o vede
utilizator pe ecranul calculatorului. Altfel spus, la execuţia instrumentului virtual
(adică a programului), pe monitorul calculatorului se vede panoul frontal.
FEREASTRA LABVIEW “FRONT PANEL”
Interfata utilizator
Poate fi costumizata
FEREASTRA LABVIEW “BLOCK DIAGRAM”
Program actual
Poate deveni invisibila utilizatorului final
Parcurgere stanga->dreapta
TERMINALE
La plasarea unui element de control (sau a unuiindicator) in fereastra
FRONT PANEL
LabVIEW in mod automat creaza un corespondent
control (sau indicator) ca terminal in ferastra
BLOCK DIAGRAM
CONTROL? SAU INDICATOR?
Controls = Inputs from the user = Source Terminals
Indicators = Outputs to the user = Destinations
INTRODUCERE ÎN LabVIEW
VI FRONT PANEL
Front Panel Toolbar
GraphLegend
BooleanControl
WaveformGraph
Icon
PlotLegend
ScaleLegend
VI BLOCK DIAGRAM
Wire Data
GraphTerminal
SubVI
While LoopStructure
Block Diagram Toolbar Divide
Function
Numeric Constant
Timing Function
Boolean Control Terminal
CONVENTII LABVIEW
Front Panel controale si indicatori
Block Diagram Structura programului (loops, case structures, math, etc.)
Controls vs. Indicators Conexiunile atasate in dreapta elementelor de control
furnizeaza valorile Conexiunile atasate in stanga elementelor indicator
primesc valori
Wiring colors Conexiunile indica prin culoare tipul de date
Diagrama bloc
Diagrama bloc este compusă din noduri, terminale şi legături.Nodurile sunt elementele de execuţie ale programului. Nodurile sunt analoage cudeclaraţiile, funcţiile şi subrutinele din limbajele de programare clasice. Există patrutipuri principale de noduri:
funcţiile; subIV-urile; structurile; nodurile de interfaţă cod (Code Interface Nodes CINs).
Funcţiile sunt noduri prefabricate pentru executarea operaţiilor elementare, cum ar fide exemplu adunarea numerelor, operaţii cu fişiere de intrare / ieşire sau formatareaşirurilor de caractere. SubIV-urile sunt de fapt IV-uri proiectate şi create anterior şi apelate din diagramaaltui IV. Structurile ca de exemplu buclele For, While controlează executarea programului. Nodurile de interfaţă cod sunt interfeţe între diagrama bloc şi codul în C scris deutilizator. Terminalele sunt porturile prin care datele trec între diagrama bloc şi panoul frontalpe de-o parte, şi între nodurile diagramei bloc pe de altă parte. Terminalele suntanaloage cu parametrii şi constantele din programarea în limbaj clasic.
Funcţia Tip strip uşurează identificarea funcţiilor şi terminalelor nodurilor pentruinterconectare. Când se poziţionează cursorul în zona unui terminal, apare o micăfereastră galbenă în care se furnizează informaţii asupra nodului respectiv.
Vizualizarea terminalelor. Pentru u urarea execut rii conexiunilor, se pot vizualiza terminalele cu
op iunea Visible Items > > Terminals. Revenirea se face cu Visible Items > > Icon.
Selectarea conexiunilor între obiecte de face cu mouse-ul, executând un clic pe legătură, înfelul următor:
1 clic: se selectează segmentul dintre două puncte de întoarcere; 2 clicuri: se selectează o ramură; 3 clicuri: se selectează întreaga conexiune.
Conexiuni eronate
CONEXIUNI
Conexiunile transporta datele (fluxul informational) in interiorului programului din fereastra “Block Diagram”
Culoarea conexiunilor indica tipul de date
O conexiune marcata rosu prin “X” semnifica eroare
CONECTORI (FIRE) FOLOSITE IN
CONSTRUIREA DIAGRAMELOR BLOC SI
TIPOLOGIA ACESTORA
Scalar 1D array 2D array Color
Floating-point number orange
Integer number blue
Boolean green
String pink
CONEXIUNI INTRERUPTE
La connectarea mai multor elemente de
tip sursa sau cand nu exista surse
LabVIEW Semnaleaza prin linie
intrerupta
SCHEME SI CONEXIUNI INCALCITE VS. SCHEME CLARE
MANIPULAREA ELEMENTELOR CONTROL SI INDICATOR
Click-dreapta pe indicator pentru a
il schimba in control
ii schimba formatul sau reprezentarea
Click-dreapta pe control pentru a
il schimba in indicator
ii schimba actiunea
Run Button
Continuous Run Button
Abort Execution
Pause/Continue Button
Text Settings
Align Objects
Distribute Objects
Reorder
Resize front panel objects
Execution Highlighting Button
Step Into Button
Step Over Button
Step Out Button
Additional Buttons on the Diagram Toolbar
TOOLBAR
Reorder objects
RunContinuous run
PauseStop Font ringAlignment ring
Distribution ring
Debugging features more on this later…
Butonul de EXECUŢIE (RUN). Prin apăsarea acestui buton se lansează în execuţie instrumentul
virtual.
dacă instrumentul virtual este programul principal
dacă IV-ul este o subrutină
Când un IV este în execuţie, apare butonul de STOP . Prin apăsarea acestui buton, se opreşte
imediat execuţia instrumentului virtual curent.Notă: Este de dorit evitarea utilizării butonului de STOP pentru oprirea execuţiei unei aplicaţii şise preferă prevederea în aplicaţie a unor condiţii care să controleze oprirea acesteia. Dacă seprocedează la oprirea controlată a aplicaţiei, se va şti în orice moment care e starea aplicaţiei. Deexemplu se poate programa oprirea aplicaţiei prin plasarea unui buton de STOP pe panoul frontalal acesteia.
Butonul de EXECUŢIE cu eroare. Acest buton înlocuieşte butonul de EXECUŢIE şi indică faptul
că instrumentul virtual nu poate fi compilat deoarece conţine erori. Pentru a se cunoaşte erorile, seapasă pe acest buton şi va apare o fereastră cu acestea.
Butonul de EXECUŢIE continuu . Prin apăsarea acestui buton, se comandă execuţia continuă a
instrumentului respectiv. În timpul execuţiei, butonul se înlocuieşte cu acesta: Prin apăsarea
acestui buton, se revine la starea iniţială.
Butonul de Pauză / continuare: Acest buton stopează pt. moment execuţia aplicaţiei. Prin
apăsarea sa încă o dată, se continuă execuţia.
STARI ALE BUTONULUI RUN
Inainte de rularea programului, stare pasiva
In timpul rularii programului
Situatia cand programului nu poate fi compilat
Butonul de execuţie cu evidenţiere. Prin apăsarea acestui buton se acti-vează execuţia cu evidenţiere. În
acest mod, butonul se schimbă în acesta: şi execuţia este încetinită cu vizualizarea întregului transfer de
date între noduri.
Butonul de salt peste: Prin apăsarea acestui buton se activează modul de execuţie pas-cu-pas care
execută IV-ul nod cu nod. El este afişat interminet la întâlnirea fiecărui nod, ceea ce denotă care nod urmeazăsă fie executat. Prin apăsarea încă o dată a acestui buton, se sare peste o buclă sau un subIV. Prin salt pestenodul respectiv, se execută acel nod, fără a se trece cu execuţia prin acel nod care poate conţine alteelemente (exemplu Temperature.iv).
Butonul de salt în: Asemănător cu cel precedent. Prin apăsarea aces-tuia însă, se intră în respectivul
nod şi se execută buclele sau subIV-urile pas-cu-pas.
Butonul de salt afară: Asemănător, cu deosebirea că acesta sare în afara nodului respectiv. Prin
apăsarea acestuia, se termină rapid (nu pas-cu-pas) execuţia nodului respectiv şi se sare în afara acestuia,trecându-se la nodul următor.
Indicatorul de atenţionare: Acesta există când apare o problemă care însă nu face ca IV-ul să nu fie
executabil. Acesta poate fi activat sau dezactivat din meniul Edit.
Tehnici de depanare• Gasirea erorilor
• Executia cu evidentiere
• Sonde
Clic pe butonul de RUN.Apare fereastra cu erori.
Click pe butonul de executie cu evidentiere; fluxul de date este animat folosind buline. Valorile sunt afisate.
Clic dreapta pe fir pentru a afisa sonda care afiseaza datele care circula prin legatura respectiva.
Se poate selecta de asemenea sonda din paleta de unelte.
2.3 Tehnici de depanare
Găsirea erorilor
În cazul în care butonul de execuţie (Run) arată astfel: înseamnă că instrumentul virtual nu poate fi executat din cauza existenţei unor
erori. Prin apăsarea acestui buton va apare o listă a erorilor care vor trebui înlăturate.
Executarea programului cu evidenţiere
O tehnică de depanare a programelor în LabVIEW este execuţia cu evidenţiere (Execution Highlight ). Aceasta permite o execuţie multîncetinită a instrumentului, cu evidenţierea valorilor care circulă între două obiecte.
Executarea cu evidenţiere se face apăsând butonul din meniul diagramei bloc, acesta preschimbându-se în ceea ce semnifică faptul
că a fost activată executarea cu evidenţiere. Prin apăsarea încă o dată pe acest buton, se revine la modul de executare normal.
Executarea pas-cu-pas a unui IV
În scopul executării pas cu pas a unui instrument virtual, există trei comenzi distincte: Salt în (Step Into) salt peste (Step Over)
şi salt afară (Step Out) . Pentru a porni execuţia în mod pas-cu-pas se apasă unul din butoanele Salt în sau Salt peste. Primul
obiect care va fi executat va fi astfel marcat. Prin apăsarea încă o dată a unuia din cele două butoane se va executa obiectul respectiv, iarurmătorul obiect va fi marcat ş.a.m.d. Dacă la un moment dat obiectul marcat este un subinstrument virtual, prin apăsarea butonului Salt înse va intra în interiorul acestuia, şi subIV-ul respectiv va fi executat tot pas-cu-pas. Dacă se apasă Salt peste se va executa normal subIV-ulrespectiv şi se va continua execuţia pas-cu-pas în programul principal.
Probe
Opţiunea Probe este utilizată pentru a vedea o anumită valoarea care circulă între două obiecte, fără a fi necesară plasarea unui indicator
pe panoul frontal. Plasarea unei probe se face pe conexiunea dintre două obiecte cu unealta cores-punzătoare din paleta de unelte.
Puncte de oprire
Ca şi în cazul celorlalte limbaje de programare, şi în LabVIEW se pot preciza puncte de oprire ( Breakpoints). Instrumentul va fi executatnormal până la întâlnirea unui punct de oprire. De aici încolo se poate continua execuţia în mod pas-cu-pas. Marcarea punctelor de oprire
se va face cu unealta corespunzătoare din paleta ce unelte .
Executia unei diagrame bloc
– Depinde de circulatia datelor
– Diagrama bloc nu este executata de la
dreapta la stanga
• Nodurile sunt executate atunci cand datele
sunt disponibile la TOATE terminalele de
intrare
• Nodurile furnizeaza datele la toate
terminalele de iesire dupa ce a fost
executat
Programarea bazata pe fluxul de date
• Recomandat: Selectie automata
• Unelte pentru modificarea obiectelor de pe panoul frontal si
diagrama bloc
Operating Tool
Positioning/Resizing Tool
Labeling Tool
Wiring Tool
Paleta de unelte (Tools Palette)
Automatic Selection Tool
Se selecteaza automat dintre urmatoarele unelte:
Shortcut Menu Tool
Scrolling Tool
Breakpoint Tool
Probe Tool
Color Copy Tool
Coloring Tool
Alte elemente existente in Paleta de unelte (Tools Palette)
Add/edit text
Wire features together to
control flow of data
Select a feature toedit or move
Operate a control
Probe Data(troubleshoot)
Unealta de operare – utilizată pentru manipularea comenzilor şi indicatoarelor pe panoul frontal.
Unealta de poziţionare – utilizată pentru selectarea, deplasarea sau redimensionarea obiectelor.
Unealta de etichetare – utilizată pentru introducere text şi etichetare.
Unealta pt. executarea de conexiuni – utilizată pentru a conecta obiectele din diagrama bloc.
Unealta de afişare a meniului aparent – utilizată pentru afişarea meniului specific utilizând butonul din
stânga al mouse-ului. În general acelaşi rezultat se obţine cu butonul din dreapta al mouse-ului.
Unealta de deplasare – utilizată pentru deplasarea în cadrul ferestrei curente fără a utiliza bara de
defilare.
Unealta de marcare a punctelor de oprire – marchează punctele de oprire pentru depanare.
Unealta de testare – Plasează un instrument de test pe panoul frontal. Utilizat în special la depanare.
Unealta de copiere a culorilor – copiază culoarea pentru a o folosi în executarea desenelor.
Unealta de colorare – colorează fundalul sau textul cu culorile curente.
LIBRARII CU ELEMENTE DE CONTROL SI
FUNCTII
Controls Palette(Front Panel Window)
Functions Palette(Block Diagram Window)
Insert a digital indicator or control
Insert a boolean control (button or switch)
Add a structure such as for, while, and case statements
Add a numericoperator (+,-,…)
File I/O
Add a booleanoperator (and, or…)
Data Acquisition
Signal analysis
Comparison
Mathematical Functions
Timing/dialog
RUNNING LABVIEW PROGRAMS
ALMOST ALWAYS put your program in some sort of loop that can be stopped with a control
AVOID using the red “x” to stop your program
DESCHIDEREA SI RULAREA UNUI INSTRUMENT
VIRTUAL EXISTENT IN MENIUL HELP
CREAREA UNUI VI – BLOCK DIAGRAM
CREAREA UNUI VI – BLOCK DIAGRAM
TRASAREA CONEXIUNILOR – BLOCK DIAGRAM
Wiring “Hot Spot”
Clean Up Wiring
Use Automatic Wire Routing
Click To Select Wires
ControlTerminals
Block Diagram Window
Front Panel Window
Indicator Terminals
CREAREA VI
OPTIUNEA HELP
Context Help• Online help
• Lock help
• Simple/Complex Diagram help
• Ctrl + H
Online reference• All menus online
• Pop up on functions in diagram to access online info directly
Salvarea unui IVSalvarea unui instrument virtual se face din meniul acestuia, având la dispoziţiepatru comenzi: Save, Save As, Save All şi Save with Options.
Prin utilizarea comenzii Save, instrumentul virtual este salvat sub acelaşi numeşi în acelaşi loc unde el există deja. Dacă se utilizează comanda Save la primasalvare a instrumentului, LabVIEW va deschide o fereastră de dialog pentruprecizarea numelui fişierului şi a locului unde va fi salvat.
Prin utilizarea comenzii Save As, se deschide automat fereastra de dialog,indiferent dacă fişierul a mai fost salvat sau nu.
Comanda Save All (identică cu comanda Save) va salva toate instrumentelevirtuale deschise în acel moment.
Comanda Save with Options permite specificarea unor opţiuni suplimentare desalvare, de nivel mai avansat, cum ar fi de exemplu salvarea unui instrumentvirtual pentru a putea fi utilizat sub o versiune anterioară de LabVIEW (5.0)
Din acelaşi meniu se poate crea o nouă bibliotecă, cu comanda New VILibrary.
Fereastra de salvare cu opţiuni Save with Options
SUBVISub VIs
Elemente utile
<Ctrl-H> – Activate/Deactivate Context Help Window
<Ctrl-B> – Remove Broken Wires From Block Diagram
<Ctrl-E> – Toggle Between Front Panel and Block Diagram
<Ctrl-Z> – Undo (Also in Edit Menu)
Tools » Options… – Set Preferences in LabVIEW
VI Properties – Configure VI Appearance, Documentation, etc.
M.I.S.S.
Curs 10
BUCLE
• Bucla While– terminalul numara iteratiile
– Intotdeauna bucla esteexecutata cel putin o data
– Bucla este executata pana candeste indeplinita conditia de stop
•Bucla For– terminalul numara iteratiile
– Bucla ruleaza pana la epuizarea iteratiilor
Bucla While
Bucla For
Bucle şi d iagram e
1 Bucla w hile
Bucla While repetă codul din interiorul ei până când valoarea booleanătransmisă terminalului condiţional ia valoarea FALS.
IV-ul verifică starea mărimii de intrare în terminalul condiţional la fiecareterminare a executării unui ciclu complet al buclei.
Astfel, bucla While va fi executată cel puţin o dată, chiar dacă valoareatransmisă terminalului condiţional are valoarea FALS chiar de la început.
Terminalul iterativ reprezintă o mărime care furnizează numărul iteraţieicurente.
Valoarea iniţială a terminalului iterativ este zero (în timpul executării primeiiteraţii, terminalul iterativ are valoarea zero).
ExecutăExecută diagrama din interiorul buclei
Atât timp cât condiţia este adevărată
Exemplu de buclă While
Bucle şi d iagram e
2 Bucla FOR
For i=0 to N-1Executa diagrama din interiorul buclei
Regiştrii de deplasare sunt disponibili atât pentru buclele Whilecât şi pentru buclele For.
Regiştrii de deplasare se utilizează pentru transferul datelor de lao iteraţie către iteraţia următoare.
Regiştri de deplasare
Iniţializarea regiştrilor de deplasare
Acţiunea mecanică a comutatoarelor booleene
Com u tă la a păsa re
Com u tă la e lib e ra re
Com u tă până când e e libe ra t
Bloche az ă la apăsa re
Bloch ea ză la e lib era re
Bloch ea ză până la e lib era re
Conversia numerică
MATRICEO matrice este o colecţie de date care sunt toate de acelaşi tip.
O matrice poate avea una sau mai multe dimensiuni, până la 231 elemente pefiecare dimensiune, valoare care este dată de dimensiunea memoriei.
Matricele în LabVIEW pot fi de orice tip. Totuşi, nu poate exista o matrice dematrice, de diagrame sau de grafice.
0 1 2 3 4 5 6 7 8 9
0.6 1.3 5.2 8.3 6.2 4.2 7.3 9.4 1.8 7.6
Polimorfisme
GRUPURI
Elemente generale. Crearea grupurilor
Un grup (cluster) este o structură de date care combină unul sau mai multe tipuri de date într-un nou tip.
Componentele care formează un grup pot avea tipuri diferite, de exemplu se pot combina în acelaşi grup omărime de tip boolean, cu o mărime de tip şir de caractere şi cu o mărime de tip întreg. Rezultatul va fi un nou tipde date care va putea fi manipulat în continuare ca un tot unitar.
Un grup în LabVIEW este asemănător cu datele de tip înregistrare ( record) din Pascal sau cu structurile din C.
Ordinea elementelor într-un grup
Componentele unui grup au o anumită ordine logică, ordine care nu depinde de poziţia acestora în cadrul grupului. Prima componentă plasată în cadru poartă indicele 0 (zero), următoarea componentă adăugată va avea indicele 1, ... ş.a.m.d.
În cazul în care se şterge o componentă dintr-un grup, numerotarea acestora se adaptează automat. Schimbarea ordinii componentelor într-un grup se face selectând din meniul aparent al acestuia opţiunea Reorder Controls In Cluster
În acest moment meniul ferestrei curent se va schimba
iar pe panoul frontal al grupului va fi afişată ordinea componentelorPe fond alb este afişată poziţia curentă a componentei în cadrul grupului iar pe fond negru este afişată noua poziţie, după efectuarea reordonării
Utilizarea grupurilor pentru transferul datelor între două subIV-uri
Un conector poate avea maxim 28 de terminale. Când se utilizează un conector cu un numărmare de terminale, datorită dimensiunii mici a acestora există riscul efectuării unor conexiunieronate.
De asemenea în unele cazuri este necesar un număr mai mare de terminale.
Toate aceste aspecte se pot rezolva utilizând grupurile. Se pot grupa astfel mai multecomponente, iar un grup va utiliza doar un singur terminal.
Astfel, printr-un singur terminal pot fi transmise mai multe tipuri de date
Funcţii referitoare la grupuri
Realizarea grupurilorFuncţia de grupare a componentelor (Bundle) ) se găseşte în subpaleta Cluster
Funcţia Bundle by Name
se foloseşte doar pentru înlocuirea unor componente ale unui grup existent.
Exemplu de înlocuire a unui obiect dintr-un grup folosind funcţia Bundle By Name
Descompunerea grupurilor
Pentru descompunerea grupurilor în componente se folosesc două funcţii: Unbundle şi Unbundle by Name.
Funcţia Unbundle
descompune grupul ţinând cont de ordinea componentelor în cadrul acestuia.
Exemplu de extragere a trei obiecte dintr-un grup folosind funcţia Unbundle
Funcţia Unbundle by Name
realizează descompunerea unui grup ţinând cont de etichetele componentelor. La fel ca şi la funcţia pereche Bundle by Name, numărul de terminale de ieşire nu trebuie să fie identic cu numărul componentelor grupului. Pot fi extrase doar acele componente care sunt necesare.
Exemplu de extragere a două obiecte dintr-un grup folosind funcţia Unbundle By Name
DIAGRAME ALE FORMELOR DE UNDĂ
ŞI GRAFICE
Graficele şi diagramele diferă între ele prin modul în careafişează şi reactua-lizează datele.
Graficele colectează de obicei toate valorile într-o matrice,pe care apoi o reprezintă grafic. Acest lucru esteasemănător unui tabel de valori, care întâi stochează toatevalorile, pe care apoi le reprezintă grafic.
Diagramele în schimb trasează graficul în timp real. Pemăsură ce noi puncte sunt calculate, ele sunt adăugate lagraficul deja existent. Deci în acest caz, trasarea graficuluipoate începe deja de la primul punct calculat.
Pictograma Denumirea Explicaţii
Waveform ChartDiagramă care reprezintă valorile cu o rată
constantă
Waveform GraphGrafic care reprezintă valorile cu o rată
constantă
XY GraphGrafic care reprezintă valorile cu o rată care
nu este constantă
Intensity ChartDiagramă 3D pe un sistem 2D, pentru cea de-
a treia dimensiune utilizând culorile
Intensity GraphGrafic 3D pe un sistem 2D, pentru cea de-a
treia dimensiune utilizând culorile
Digital WaveformGraph
Reprezintă valorile în pulsuri
3D Surface Graph Grafic 3D tip suprafaţă
3D Parametric Graph Grafic 3D parametric
3D Curve Graph Grafic 3D tip curbă
Figura 7.2.Elementele unui
grafic
1. Legenda (Plot legend)2. Cursorul ( Cursor) – doar pt. grafic3. Marcarea grilei ( Grid Mark)4. Marcarea sub-grilei ( Mini-grid mark)5. Paleta de comenzi a graficului ( Graph palette)6. Mişcarea cursorului (Cursor mover)
7. Legenda cursorului (Cursor legend)– doar pt. grafic
8. Legenda axelor (Scale legend)9. Axa X (X-scale)
10. Axa Y (Y-scale)11. Et icheta ( Label )
Diagrame ale formelor de undă
a b c Moduri de actualizare a diagramei:
a. strip chart; b. scope chart; c. sweep chart
Realizarea unei diagrame cu un singur grafic
Realizarea unei diagrame cu mai multe grafice
Reprezentarea a trei grafice pe aceeaşi diagramă, utilizând comanda Stack Plots
Grafice 2D
Grafice cu o singură înregistrarePentru graficele de bază cu o singură înregistrare, matricea care conţine valorileordonatei Y este conectată direct la intrarea funcţiei grafic în diagrama bloc.Această metodă presupune că valoarea iniţială a abscisei X este 0 şi că valoareapasului pe abscisă X este 1. Pictograma graficului de tip formă de undă apare înacest caz, în diagrama bloc, ca şi un indicator al unei matrice
Funcţia Bundle (fascicul), din subpaleta Array asamblează componentele graficuluiîntr-un singur grup. Pentru graficul tip formă de undă, componentele includ valoareainiţială a abscisei X, valoarea pasului pe abscisă X şi matricea de pe ordonată, Y.
Grafice cu mai multe înregistrări
Grafice de tip XYGrafice numerice
STRUCTURI DE TIP CAZ ŞI SECVENŢĂ
a b cStructuri de tip caz: a. numeric; b. boolean; c. şir de caractere
Structura de tip secvenţă
SIRURI Un şir este o succesiune de caractere care pot
fi afişabile sau neafişabile
Comenzile şi indicatoarele se găsesc în subpaletaString&Table a paletei Controls.
Meniul comenzii tip şir de caractere
SIRURI
Afişarea în mod cod: panoul frontal şi diagrama bloc
Codul Interpretarea LabVIEW
\ b Backspace (ASCII BS, echivalent cu \08)
\ s Space (ASCII SP, echivalent cu \20)
\ r Return (ASCII CR, echivalent cu \0D)
\ n Newline (ASCII LF, echivalent cu \0A)
\ t Tab (ASCII HT, echivalent cu \09)
SIRURISe prezintă utilizarea interfeţei Edit Format String pentru a creaun şir în virgulă mobilă, cu o precizie de două cifre, cu o lungimetotală de 6 caractere, cu completare cu zerouri.
SIRURI
Stabilirea formatului numeric
Conversia unui număr într-un şir formatat în virgulă mobilă
Conversia unui şir într-un număr în virgulă mobilă
Formula de calcul (Formula Node)
102
12
my
xxm
FIŞIERE DE INTRARE / IEŞIRE. TABELE
Funcţia Format Into String converteşte mai întâi numărul iteraţiei şi numărul aleator generat într-un şir de caractere. De asemenea funcţia include un tab şi un end of line înainte de scriereaacestora în fişier.
IV-uri referitoare la fişiere binare
IV-urile referitoare la fişiere binare sunt IV-uri de nivel înalt care citesc din şiscriu în fişiere în format binar. Datele pot fi de tip întreg ([I16])sau în virgulămobilă ( [SGL] ). Salvarea datelor în format binar poate fi benefică dacă vitezade acces şi compactarea sunt necesare.
VARIABILE LOCALE ŞI GLOBALE
Dacă obiectul de pe panoul frontal a fost deja creat, variabila locală sepoate crea prin utilizarea meniului aparent al acestuia şi selectareacomenzii Create » Local Variable
Prin selectarea blocului Local Variable din paleta Structures
VARIABILE LOCALE ŞI GLOBALE
Selectarea unei variabile locale: a-panoul frontal; b-utilitând meniul aparent; c-utilizând unealta de operare
a b c
VARIABILE LOCALE ŞI GLOBALE
Schimbarea tipului unei variabile locale
Variabile locale de tip read local (a) şi write local (b)
a b
VARIABILE LOCALE ŞI GLOBALE
Crearea şi utilizarea variabilelor globale
1. Din subpaleta Structures a paletei de funcţii se selectează opţiuneaGlobal Variable
VARIABILE LOCALE ŞI GLOBALE
2. Se deschide panoul frontal al variabilei globale, prin executarea unuidublu clic pe pictograma plasată în diagrama bloc.
3. Se adaugă pe panoul frontal al variabilei globale comenzi şiindicatoare, în mod identic cum se procedează în cazul unui IVobişnuit. Trebuie atenţie ca fiecare comandă sau indicator adăugat săaibă ataşată o etichetă, deoarece prin aceasta se va referi în continuare
4. Se salvează variabila globală sub un nume oarecare şi se revine ladiagrama bloc a IV-ului iniţial.5. Se selectează apoi obiectul din variabila globală care se doreşte a fiaccesat. Pentru selectarea obiectului, se poate proceda în două moduri,la fel ca şi în cazul variabilelor locale:a. Din meniul aparent al variabilei globale se alege meniul
Select Item şi se selectează obiectul care se doreşte a fi accesat
b. Utilizând unealta de operare, se execută un clic pe pictogramavariabilei globale şi se selectează apoi obiectul dorit
EX. - LABVIEW FRONT PANEL
EX. - LABVIEW FRONT PANEL