Sunteți pe pagina 1din 74

III.

Implementarea unui VI
n acest capitol este prezentat modul de
implementare a codurilor n LabVIEW. Astfel, acest
capitol cuprinde:
proiectarea interfeei utilizator (PF);
alegerea ntre diferitele tipuri de date;
utilizarea buclelor n LabVIEW (bucla While i
bucla For)
adugarea unor ntrzieri (timing) ntre iteraiile
buclelor;
luarea deciziilor ntr-un VI, utiliznd func ia Select
i structura Case;
structura secvenial (Sequence) i nodul Formul.
Topics
A. Proiectarea PF
B. Tipuri de date n LabVIEW
C. While Loops
D. For Loops
E. Controlul frecvenei iteraiilor (Time delay)
F. Regitrii de transfer (deplasare)
G. Afiarea datelor
H. Luarea deciziilor ntr-un VI.
I. Structura secvenial (Sequence)
J. Nodul Formul (Formula Node)
A. Proiectarea PF
n faza de proiectare a unui VI, trebuiesc mai nti
identificate intrarile i ieirile VI-ului respectiv.
Aceast identificare duce practic la proiectarea
ferestrei panoului frontal.
Intrrile VI-ului se numest Controale (C), iar ieirile
Indicatoare (I).
Putem afia rezultatele unei aplicaii cu ajutorul
diferitelor tipuri de indicatoare, cum ar fi grafice,
tabele, sau LED-uri. De asemenea, ie irile pot fi
salvate ntr-un fiier.
Alegerea Controalelor i Indicatoarelor

Atunci cnd alegem C i I din PF, trebuie s ne


asigurm c acestea sunt adecvate pentru
activitatea pe care dorim s o efectum.

De exemplu, atunci cnd dorim s modificm


frecvena unui semnal vom alege un C de tip
cadran (Dial), iar atunci cnd dorim s afi m
temperatura, vom alege un I de tip termometru.
Asigurai-v de etichetarea clar a controalelor
i indicatoarelor. Etichetarea ajut utilizatorii s
identifice scopul fiecrui C i I.

De asemenea, o etichetare clar a C i I din PF,


ne va ajuta la realizarea DB, deoarece
etichetele din PF vor aprea i la terminalele
corespunztoare n DB.
Eticheta i Legenda controalelor i indicatoarelor pot fi
ascunse sau pot fi vizibile. De exemplu, n figura de mai jos
sunt vizibile att Eticheta (Label) ct i Legenda (Caption).
Deseori, dorim s se vad doar Legenda (de exemplu).
Pentru a ascunde Eticheta, se d MD pe controlul respectiv
i se selecteaz Visible ItemsLabel ca n Figure 2.1.

Figure 2.1. Hiding a Front Panel Label


B. Tipuri de date n LabVIEW
Exist mai multe tipuri de date, ce se vehiculeaz n
LabVIEW. Am folosit deja n leciile anterioare: date
numerice, date Booleene sau date de tip string.
Alte tipuri de date includ date de tip enumerare, date
dinamice, date de tip forme de und, e.t.c.
Chiar i n cadrul tipurilor de date numerice, exist
diferite tipuri de date, cum ar fi numere ntregi sau
numere fracionare.
Terminalele din DB comunic vizual utilizatorului
unele informaii despre tipul de date pe care le
reprezint.
For example, in Figure 2.2, Height (cm) is a double-
precision, floating-point numeric. This is indicated by the
color of the terminal, orange, and by the text shown on
the terminal, DBL.

Figure 2.2. Terminal Data Type Example


Tipuri de date utilizate n LabVIEW
Numerice
Intreg cu semn - Signed integers (8-16-32-64 biti)
Intreg fara semn - Unsigned integers (8-16-32-64 biti)
Virgula mobila - Floating point ( single, double, extended)
Numar complex in virgula mobila - Complex floating point ( single, double,
extended)
Booleane
String-uri
Form de und - Waveform
Cale - Path
Enumerare - Enum
Cluster
Numeric
Diverse tipuri Mixed data
Matrice - Array
1D
2D
Toate tipurile de date enumerate mai sus pot fi
utilizate si plasate pe Diagrama Bloc. Fiecare
tip de data are o reprezentare grafica sub
forma de Icoan sau de Terminal.
Reprezentarea sub forma de Icoan este mai
sugestiva ns are o dimensiune mai mare, pe
cnd reprezentarea sub forma de
Terminal este mai restrns si ocupa mai putin
loc n cadrul aplicatiei schitate n Diagrama
Bloc.
Tipuri de date numerice
Tipuri de date numerice (continuare)
Moduri de
reprezentare a
valorilor numerice

Meniurile proprii ale


elementelor de tip
control sau de tip
indicatoar numeric
contin o optiune
specifica,
Representation, cu
ajutorul careia se
specifica modul in
care valoarea
numerica respectiva
este stocata in
memorie.
Figure 2.3. Numeric Representation
In submeniul Representation, utilizatorul are
la dispozitie 12 optiuni:
pe prima linie: optiuni pentru numere reale
pe a doua linie: optiuni pentru numere intregi
pe a treia linie: optiuni pentru numere naturale
pe a patra linie: optiuni pentru numere
complexe
Intre diversele optiuni de pe o linie, diferenta
consta in numarul de octeti (bytes) alocati in
memorie pentru stocarea valorii respective:
EXT (extended) = numar real cu precizie extinsa (16 octeti)
DBL (double) = numar real cu precizie dubla (8 octeti)
SGL (single) = numar real cu precizie simpla (4 octeti)
I32 (long) = numar intreg pe 4 octeti
I16 (word) = numar intreg pe 2 octeti
I8 (byte) = numar intreg pe 1 octet
U32 (unsigned long) = numar natural pe 4 octeti
U16 (unsigned word) = numar natural pe 2 octeti
U8 (unsigned byte) = numar natural pe 1 octet
CXT (complex extended) = numar complex cu precizie
extinsa (32 octeti)
CDB (complex double) = numar complex cu precizie dubla
(16 octeti)
CSG (complex single) = numar complex cu precizie simpla (8
octeti)
n calculatoare sunt utilizate dou tipuri de reprezentri
binare ale numerelor reale:
- reprezentarea n virgul fix i
- reprezentarea n virgul flotant (mobil).
Reprezentarea n virgul fix este o reprezentare care
pune n eviden semnul, partea ntreag i partea
fracionar a numrului. Dimensiunile locaiei de
memorie n care se reprezint un numr n virgul fix
este prefixat: 8, 16, 32 sau 64 de bii.
Principalul dezavantaj al reprezentrii n virgul fix
este faptul c, dac un numr nu mai ncape n spaiul
de bii rezervat, se pierd cifrele cele mai semnificative!
Reprezentarea n virgul flotant este astfel
conceput, nct, la depire, se pierd cifrele cel mai
puin semnificative!
Numarul de octeti alocati pentru stocare se reflecta in
intervalul de valori n care poate exista valoarea
respectiva sau n precizia acesteia:
Atunci cnd se leag date numerice de
reprezentri diferite la intrrile aceleiai
funcii, LabVIEW furnizeaz rezultatul de
tipul cel mai lung. Dac ambele intrri au
acelai numr de bii dar sunt de
reprezentri diferite (de ex. U32 i I32),
LabVIEW furnizeaz rezultatul fr semn.
In exemplul din figura urmtoare,
adunarea dintre un numr real n
reprezentare dubl precizie (8 octei) i un
numr ntreg cu semn pe 4 octei I32 d
un rezultat corespunztor numrului mai
lung, deci real dubl precizie. Aceast
operaie se numete constrngere, iar
operandul constrns este marcat printr-un
punct la intrarea n funcie.
Apariia operaiei de constrngere
Alte tipuri de date n LabVIEW
Functiile numerice ale mediului LabVIEW.
Functiile trigonometrice ale mediului LabVIEW.
Functiile logaritmice ale mediului LabVIEW.
Constante numerice aditionale ale mediului LabVIEW.
Variabile Locale
Variabilele Locale (VL) sunt obiecte de pe DB
care corespund unor controale sau indicatoare de
pe PF, fiind identificate dup eticheta acestora. In
fapt, variabila local este o oglind a zonei de
memorie unde se afl terminalul corespunztor.
Cu variabila local se poate citi acea zon de
memorie sau se poate scrie n ea.
Aadar, printr-o variabil local un control se
poate utilizat fie ca intrare, fie ca ieire de date.
Datele dintr-o variabil local pot fi utilizate
doar n VI-ul n care a fost creat variabila.
Putem avea oricte variabile locale pentru un
terminal. Acestea se pot utiliza n situaii n
care prezena terminalului este necesar n
mai multe locuri odat (de exemplu n
structuri).
De asemenea, VL sunt utile atunci cnd se
dorete transportul datelor pe o diagram
complicat, fr a mai fi necesar realizarea
legturii prin fir.
Sa presupunem ca dorim ca valoarea de intrare
Ui s o afim n trei indicatoare.
Variabile Globale
Variabilele globale (VG) sunt variabile stocate
n nite VI-uri care au doar panou frontal,
numite containere de variabile globale. VG sunt
stocate n nite controale de pe PF al
containerului, care pstreaz valorile
variabilelor utilizate n VI-urile care le apeleaz.
Scopul crerii acestor tipuri de variabile este de
a utiliza datele create ntr-un VI n mod global i
n alte VI-uri.
Ca i variabilele locale, cele globale sunt
apelabile pe DB prin noduri specifice, care se
gsesc n subpaleta de structuri Global
Variable. Realizarea unui dublu click pe VG
de pe DB deschide PF al containerului. Aici
se pot aduga oricte controale de pe paleta
de controale, fiecare din acestea
reprezentnd o VG.
Obligatoriu, controalele se vor eticheta,
deoarece apelarea variabilelor se va face
prin aceast etichet.
In figura de mai jos este prezentat
containerul Global1.vi care conine variabila
global VG numeric. Aceast variabil
global este apelat de ctre VI-ul alturat,
care este nscris prin controlul Numeric.
Aplicaie
1. Deschidei un nou VI.
2. Plasai pe DB o variabil global din paleta de structuri, Global Variable.
3. Deschidei PF al VG prin dublu click pe ea sau din meniul shortcut opiunea Open
Front Panel. Acesta este un container de VG. Observai c n meniul View nu este valid
deschiderea diagramei de legturi.
4. Plasai pe PF al containerului un control numeric etichetat VG numerica, unul boolean
etichetat VG booleana i unul string etichetat VG string.
5. Salvai containerul sub numele implicit (Global 1.vi) n acelai folder unde salvai i VI-
urile. Lsai PF al containerului deschis.
6. Trecei pe PF al VI-ului iniial. Plasai pe PF un control de tip numeric.
7. Deschidei meniul shortcut al variabilei globale. Selectai Select Item.
Observai c avei la dispoziie toate variabilele globale din containerul Global1.vi.
8. Selectai VG numerica.
9. Legai variabila la controlul numeric.
10. Micorai fereastra astfel nct s avei disponibile concomitent i PF al
instrumentului, i PF al containerului Global 1.vi.
11. Rulai IV-ul cu Run Continuously i dai valori controlului numeric. Observai
modificarea concomitent a valorii variabilei VG numerica de pe PF al containerului.
12. Oprii VI-ul de la butonul Abort Execution.
13. Adugai pe DL a instrumentului variabilele globale VG booleana i VG string.
Pentru aceasta avei dou posibiliti:
a. copiai variabila VG numerica, apoi selectai variabila dorit cu Select Item.
b. adugai o nou variabil din subpaleta de funcii opiunea Select a VI,
dup care selectai containerul Global1.vi i variabila dorit cu Select Item.
Adugarea unei noi VG din subpaleta de structuri nseamn crearea unui nou container,
cruia trebuie s-i adugai alte variabile globale.
14. Legai controale corespunztoare variabilelor i experimentai scrierea cu diverse
valori.
15. Deschidei un nou VI.
16. Adugai pe DL variabila global VG numerica dup procedeul de la pct. 13.
17. Schimbai variabila n citire, din meniul shortcut Change To Read.
18. Creai automat variabilei un indicator.
19. Potrivii ferestrele celor dou instrumente i a containerului astfel nct acestea s fie
afiate concomitent.
20. Pornii cele dou instrumente i modificai valoarea controlului numeric al primului
instrument, urmrind valoarea indicatorului celui de-al doilea instrument i valoarea
variabilei globale de pe PF al containerului.
21. Salvai cele dou instrumente sub numele Ex 7.2a.vi i Ex 7.2b.vi.
Meniuri proprii specifice elementelor
booleene
Elementele de control
booleene dispun in
meniul propriu de
optiunea suplimentara
Mechanical Action,
aceasta permind
stabilirea modului in
care elementul se
comporta la apasarea
butonului mouse-ului
de catre utilizator.
>>> Switch When Pressed modifica valoarea logica a
elementului atunci cand se apasa butonul mouse-ului,
iar valoarea ramane modificata si dupa eliberarea
butonului;
>>> Switch When Released modifica valoarea logica a
elementului atunci cand se elibereaza butonul mouse-
ului (dupa ce in prealabil a fost apasat), iar valoarea
ramane modificata si dupa eliberare;
>>> Switch Until Released modifica valoarea logica a
elementului atunci cand se apasa butonul mouse-ului,
iar dupa eliberarea butonului valoarea elementului
redevine cea dinaintea apasarii;
>>> Latch When Pressed modifica valoarea logica a elementului
atunci cand se apasa butonul mouse-ului, dar aceasta modificare
dureaza doar pana cand valoarea logica este transmisa in
diagrama bloc pe fluxul de date. Imediat ce valoarea
elementului a fost transmisa, acesta revine la valoarea dinaintea
apasarii, chiar daca utilizatorul continua sa tina butonul mouse-
ului apasat.
>>> Latch When Released modifica valoarea logica a elementului
atunci cand se elibereaza butonul mouse-ului (dupa ce in
prealabil a fost apasat), dar aceast modificare dureaza doar
pana cand valoarea logica este transmisa in diagrama pe fluxul
de date. Dupa ce valoarea a fost transmisa, elementul revine la
valoarea initiala.
>>> Latch Until Released modifica valoarea logica a elementului
atunci cand se apasa butonul mouse-ului, iar modificarea se
pastreaza atat timp cat utilizatorul tine butonul apasat. Dupa ce
utilizatorul elibereaza butonul, elementul revine la valoarea
initiala doar in momentul in care se realizeaza o transmitere a
valorii pe fluxul de date.
Aplicaie
Dispuneti pe panou un element boolean de control
de tipul Vertical Toggle Switch si un element
indicator de tipul Round LED. In diagrama bloc,
conectati intre ele terminalele celor doua elemente.
Pentru fiecare optiune Mechanical Option a
elementului de control, efectuati o rulare continua
(butonul Run Continuously) si observati modul in
care se comporta comutatorul si modul in care
valoarea sa logica este transmisa elementului
Round LED.
Functiile logice ale mediului LabVIEW.
Functiile pentru realizarea comparatiilor ale mediului LabVIEW.
Strings
A string is a sequence of displayable or non-
displayable ASCII characters. Strings provide a
platform-independent format for information and
data. Some of the more common applications of
strings include the following:
Creating simple text messages.
Controlling instruments by sending text commands
to the instrument and returning data values in the
form of either ASCII or binary strings which you
then convert to numeric values.
Storing numeric data to disk. To store numeric
data in an ASCII file, you must first convert
numeric data to strings before writing the data to a
disk file.
Atentionarea sau ntrebarea utilizatorului prin
intermediul unei cutii de dialog.
Funciile pentru valorile alfanumerice sunt grupate n
subpaleta String a paletei de Funcii.
Mai frecvent utilizate sunt cele pentru transformarea
caracterelor n majuscule (To Upper Case), pentru
transformarea caracterelor n minuscule (To Lower
Case), de calculare a lungimii unui ir de caractere
(String Length), de compunere a unui ir din dou
iruri distincte (Concatenate String), de identificare i
nlocuire a unui ir n cadrul altuia (Search and
Replace String) etc.
De asemenea, subpaleta String conine un element
String Constant utilizat pentru introducerea n
diagram a valorilor alfanumerice constante.
Enums
An enum (enumerated control, constant or indicator)
is a combination of data types. An enum represents a
pair of values, a string and a numeric, where the enum
can be one of a list of values.
For example, if you created an enum type called
Month, the possible value pairs for a Month variable
are January-0, February-1, and so on through
December-11. Figure 2.5 shows an example of these
data pairs in the Properties dialog box for an
enumerated control.
Enums are useful because it is easier to manipulate
numbers on the block diagram than strings. Figure 2.6
shows the Month enumerated control, the selection of
a data pair in the enumerated control, and the
corresponding block diagram terminal.
Figure 2.5. Properties
for the Month
Enumerated Control
Figure 2.6. Month Enumerated Control
Dynamic
The dynamic data type stores the information
generated or acquired by an Express VI. The dynamic
data type appears as a dark blue terminal, shown at
left. Most Express VIs accept and/or return the
dynamic data type. You can wire the dynamic data type
to any indicator or input that accepts numeric,
waveform, or Boolean data. Wire the dynamic data
type to an indicator that can best present the data.
Indicators include graphs, charts,or numeric indicators.
Most other VIs and functions in LabVIEW do not
accept the dynamic data type. To use a built-in VI or
function to analyze or process the data the dynamic
data type includes, you must convert the dynamic data
type.
Most other VIs and functions in LabVIEW do not
accept the dynamic data type. To use a built-in
VI or function to analyze or process the data the
dynamic data type includes, you must convert
the dynamic data type.

Use the Convert from Dynamic Data


Express VI to convert the dynamic data
type to numeric, Boolean, waveform, and
array data types for use with other VIs
and functions.
When you place the Convert from Dynamic Data
Express VI on the block diagram, the Configure
Convert from Dynamic Data dialog box appears.
The Configure Convert from Dynamic Data dialog
box displays options that let you specify how you
want to format the data that the Convert from
Dynamic Data Express VI returns.
When you wire a dynamic data type to an array
indicator, LabVIEW automatically adds the
Convert from Dynamic Data Express VI to the
block diagram. Double-click the Convert from
Dynamic Data Express VI to open the Configure
Convert from Dynamic Data dialog box to control
how the data appears in the array.
C. While Loops
Similar comportarii unei bucle Do sau a unei
bucle Repeat-Until (=repet pn cnd) n
cadrul limbajelor de programare bazate pe text,
o bucl While execut o subdiagram atta
timp ct este ndeplinit o condiie.
Urmtoarea figur prezint Bucla While n
LabVIEW, organigrama corespunztoare i un
exemplu de cod privind funcionarea buclei.
Figure 2.7. While Loop
The While Loop is located on the Structures
palette. Select the While Loop from the palette
then use the cursor to drag a selection rectangle
around the section of the block diagram you
want to repeat. When you release the mouse
button, a While Loop boundary encloses the
section you selected.
Add block diagram objects to the While Loop by
dragging and dropping them inside the While
Loop.
1. Selectare bucl While 2. nlnuirea codului a fi repetat

3. Adugarea de noduri suplimentare i apoi realizarea legturilor

Do

(Execut diagrama
Terminal din interiorul buclei)
iteraie
While Condition is TRUE

Terminal condiionare
A While loop repeats the sub diagram inside it until the
conditional terminal, an input terminal, receives a
particular Boolean value. The Boolean value depends
on the continuation behavior of the While Loop. Right-
click the conditional terminal and select Stop if True or
Continue if True from the shortcut menu. You also can
wire an error cluster to the conditional terminal, right-
click the terminal, and select Stop on Error or
Continue while Error from the shortcut menu.

The While Loop always


executes at least once.
Below we see an empty
While loop:
Selectarea condiiilor buclei
Clic dreapta n terminalul condiionare pentru definirea opririi buclei
Pe marginile buclei se pot crea regitri de deplasare care transfer datele de la o
iteraie la urmtoarea

Terminal iteraie Terminal condiionare


Structure Tunnels
Tunnels feed data into and out of structures.
The tunnel is a block that appears on the border; the
color of the block is related to the data type wired to
the tunnel.
When a tunnel passes data into a loop, the loop
executes
only after data arrive at the
tunnel.
Data pass out of a loop after
the loop terminates.
Exemple de bucle While

n diagrama bloc din figur,


bucla While este executat
pn cnd ieirea funciei
de multiplicare este mai
mare sau egal cu 5, iar
controlul Enable este
Adevrat (True). Funcia I
(AND) returneaz la ieire
valoarea True doar dac
cele dou intrri sunt True.
Altfel ieirea este False.
This example run until either the user clicks the stop button or
number of iterations is greater than 10.
VI-ul din figura de mai jos genereaz numere
aleatoare, pn cnd numrul generat corespunde
cu numrul specificat. Terminalul iteratie
nregistreaz numrul de numere aleatoare
generate, pn cnd apare numrul specificat.
Using While Loops for Error Handling
You can wire an error cluster to the conditional terminal
of a While Loop or a For Loop with a conditional
terminal to stop the iteration of the loop. If you wire the
error cluster to the conditional terminal, only the TRUE
or FALSE value of the status parameter of the error
cluster passes to the terminal. If an error occurs, the
loop stops. In a For Loop with a conditional terminal,
you also must wire a value to the count terminal or
auto-index an input array to set a maximum number of
iterations. The For Loop executes until an error occurs
or until the number of set iterations completes.
If you wire an error cluster to the conditional terminal,
the shortcut menu items Stop if True and Continue if
True change to Stop on Error and Continue while Error.
In Figure 2.8, the error cluster and a stop button are
used together to determine when to stop the loop. This
is the recommended method for stopping most loops.

Figure 2.8. Stopping a


While Loop
D. For Loops
A For Loop, shown as follows, executes a subdiagram a set
number of times. Figure 2.9 shows a For Loop in LabVIEW,
a flowchart equivalent of the For Loop functionality, and a
pseudo code example of the functionality of the For Loop.
The For Loop is located on the Structures palette. You also
can place a While Loop on the block diagram, right-click the
border of the While Loop, and select Replace with For Loop
from the shortcut menu to change a While Loop to a For
Loop. The count terminal is an input terminal whose value
indicates how many times to repeat the subdiagram.
Figure 2.9. For Loop
Terminalul de numrare
(terminal de intrare)

Terminal iteraie
(terminal de ieire)
Bucla For are dou terminale: terminalul de
numrare N (un terminal de intrare) i
terminalul de iteraie i (un terminal de ieire).
Terminalul de numrare arat de cte ori se se
va executa bucla.
Terminalul de iteraie arat iteraia curent.
Pe marginile buclei For, la fel ca i pe
marginile buclei While se pot crea regitri de
deplasare care transfer datele de la o iteraie
la urmtoarea.
The iteration count for the For Loop always starts at
zero.
The For Loop differs from the While Loop in that the
For Loop executes a set number of times. A While Loop
stops executing the subdiagram only if the value at the
conditional terminal exists.

The For Loop in


Figure 2.10 generates
a random number
every second for 100
seconds and displays
the random numbers
in a numeric indicator. Figure 2.10. For Loop Example
Adding a Conditional Terminal to a For Loop
If necessary, you can add a conditional terminal to
configure a For Loop to stop when a Boolean
condition or an error occurs. A For Loop with a
conditional terminal executes until the condition occurs
or until all iterations are complete, whichever happens
first. For Loops you configure for a conditional exit
have a red glyph in the count terminal as well as a
conditional terminal in the lower right corner. After you
configure the For Loop to exit conditionally, the loop
appears similar to Figure 2.11. The following For Loop
generates a random number every second until 100
seconds has passed or the user clicks the stop button.
To add a conditional
terminal to a For
Loop, right-click on
the For Loop border
and select
Conditional Terminal
from the shortcut
menu (Fig.2.12).
Then wire the Figure 2.11. For Loop
conditional terminal Configured for a
Conditional Exit
and the count
terminal.
Figure 2.12. Adding a Conditional Terminal to a For Loop
Numeric Conversion
LabVIEW can represent numeric data types as signed
or unsigned integers, floating-point numeric values, or
complex numeric values, as discussed in the
LabVIEW Data Types section of this lesson.
Normally, when you wire different representation types
to the inputs of a function, the function returns an
output in the larger or wider format. If you use a
signed integer with an unsigned integer, it will coerce
to the unsigned integer. If you use an unsigned integer
with a floating point, it will coerce to the floating point.
If you use a floating point number with a complex
number, it will coerce to the complex number.
If you use two numbers of the same type with
different bit widths, LabVIEW will coerce to the
larger of the two bit widths. For example, if you
wire a DBL and an I32 to a Multiply function,
the result is a DBL, as shown in Figure 2.13.
LabVIEW coerces the 32-bit signed integer
because it uses fewer bits than the double-
precision, floating-point numeric value. The
lower input of the Multiply function shows a red
dot, called a coercion dot, that indicates
LabVIEW coerced the data.
Figure 2.13. Numeric Conversion Example
However, the For Loop count terminal works in the
opposite manner. If you wire a double-precision, floating-
point numeric value to the 32-bit count terminal, LabVIEW
coerces the larger numeric value to a 32-bit signed integer.
Although the conversion is contrary to normal conversion
standards, it is necessary, because a For Loop can only
execute an integer number of times.
Figure 2.14. Coercion on a For Loop

For better performance, avoid coercion by using


matching data types or programmatically converting to
matching data types, as shown in Figure 2.15.
Figure 2.15. Avoiding Coercion By Using Matching Data Types