Professional Documents
Culture Documents
LP TRNH labVIEW C BN
Lp trnh LabVIEW
LabVIEW
Lp trnh LabVIEW
labVIEW
Lp trnh LabVIEW
Lp trnh
B1: Phng php pht trin phn mm
B6: Bo tr Sa cha
B7: To d n
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Ni dung
1. Thao tc trn labVIEW 2. K thut g ri (Debug) cho VI
Lp trnh LabVIEW
Phn 1
Lp trnh LabVIEW
Khi ng LabVIEW
Lp trnh LabVIEW
Tham kho
To new VI (Blank VI)
M file lu
Lp trnh LabVIEW
To mt VI mi
Lp trnh LabVIEW
Thnh phn ca mt VI
Mt VI trong labVIEW bao gm 3 thnh phn chnh:
Front panel
Block Diagram Icon/Connector pane
Lp trnh LabVIEW
Lp trnh LabVIEW
Icon/Connector pane
Icon: biu tng ca mt VI hay mt subVI Connector pane: Bn ch th cc input v output ca mt VI Icon/Connector pane rt cn thit cho mt VI cng nh subVI
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Thanh cng c
Lp trnh LabVIEW
Bng cng c
LabVIEW t ng chn nhng cng c cn thit. Hin th trn Front panel v trn biu thit lp h thng. S dng cc cng c to v chnh sa giao dn chnh v cc i tng ca biu khi Hin th bng cng c (Tools Palette), chn ViewShow Tools Palette
Lp trnh LabVIEW
Front panel
Lp trnh: 1. Thc hin to lnh chng trnh bng cch nhp chut phi (ly cc control v indicator) 2. Chn cc i tng ph hp 3. Ko v th i tng trong khung lnh
Lp trnh LabVIEW
Front panel
Lp trnh LabVIEW
Front panel
-To cc lnh trn FP -Thay i nhn, chnh text v nh dng -Thay i c tnh i tng
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Block diagram
Functions (Hm) nm trong Block Diagram Nhm to chng trnh hon chnh
Lp trnh LabVIEW
Block diagram
Lp trnh LabVIEW
Block diagram
1 Cc lin kt vi FP 2 ng lnh: Truyn d liu (Wires) 3 Cc giao im trn mi i tng (Nodes) 4. Dng d liu ca i tng
1
3
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Lp trnh LabVIEW
Block diagram
Nhn t hp Ctrl+B xa cc ng dy b t
Lp trnh LabVIEW
Lp trnh LabVIEW
Block Diagram
Function Nodes
Phn t hot ng ch yu ca labVIEW C nn mu vng nht Khng tn ti trong Front Panel
subVI Nodes:
subVI l nhng VI c to ra s dng cho nhng VI khc subVI cha Front Panel v Block Diagram ring ca n
VI Express
L kiu t bit ca subVI Nn mu xanh
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
So snh
Front panel
Cha cc biu tng iu khin v hin th (giao din ngi dng) Truy cp Control Palette (chut phi) Bao gm cc control v Indicator
Block Diagram
Chc code chng trnh (lp trnh)
Tm kim v Help
Tm Controls, Functions, Vis s dng nt Search trn Controls v Functions palette Chn Help>>Show Context Help (Ctrl+H) hoc nhp vo biu tng Help: Search the labVIEW Help, NI Example Finder, hin th cc thng tin c bn v i tng labVIEW
Lp trnh LabVIEW
Phn 2
K THUT G RI (DEBUG)
Lp trnh LabVIEW
Vn thng gp
Dy b t (ni dy b sai kiu d liu hoc kiu vo/ra) Mt terminal trn Block Diagram khng c ni dy
Lp trnh LabVIEW
DEBUG
1. Execution Highlighting c s dng xem cc lung d liu chy trn Block Diagram 2. Single Stepping Single-step: chy xuyn qua VI xem kt qu hot ng ca mi VI trn Block Diagram Tm dng thc thi mt subVI chnh sa gi tr cc Control v Indicator
Lp trnh LabVIEW
DEBUG
3. Probes quan st cc gi tr v d liu tc th kim tra li ng ra ca VI v function 4. Gi li gi tr trong cc dy c th quan st d liu trn dy sau khi thc hin xong 5. Breakpoint: VI s tm dng v nt Pause s xut hin mu ti v tr Breakpoint.
Lp trnh LabVIEW
Phn 3
Lp trnh LabVIEW
subVIs
Mt VI trong mt VI khc gi l subVI Mt subVI xem nh mt chng trnh con trong ngn ng dng text Gc bn phi ca front panel v block diagram hin th Icon ca subVI Icon xc nh cc VI khi bn t n trn s khi
Lp trnh LabVIEW
subVIs
Lp trnh LabVIEW
subVIs
Lp trnh LabVIEW
subVIs
Lp trnh LabVIEW
Icon ca subVI
Ta c th to v ty chnh Icon bng cch nhp chut phi vo biu tng gc trn bn phi ca front panel hoc block diagram v chn Edit icon Nhp chut phi vo biu tng gc trn bn phi ca front panel v chn Show connector xc nh cc terminal vo/ra cho subVI
Lp trnh LabVIEW
s dng mt VI ging nh mt subVI, ta to mt Icon v Connector pane sau thit k Front panel v Blockdiagram
Lp trnh LabVIEW
To Icon
Icon: biu tng miu t gi nh ca mt VI Click chut phi ln Icon pane (Panel hoc Diagram) gc ca s v chn Edit icon
Lp trnh LabVIEW
To Connector Pane
Connector pane : bn ch th cc input v output ca mt VI Nhp chut phi vo biu tng gc trn bn phi ca front panel v chn Show connector xc nh cc terminal vo ra
Chn im
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
S dng subVIs
t subVI trn block diagram:
Click chn mt VI trn Function palette Di chuyn n VI bn mun s dng nh mt subVI Double click ln n t trong Block diagram
Lp trnh LabVIEW
To mt subVI
Chn phn no mun a vo subVI Chn Edit>> Create SubVI
Lp trnh LabVIEW
Phn 4
LP TRNH TRONG VI
Lp trnh LabVIEW
Dataflow
LabVIEW hot ng theo kiu dataflow thc thi cc chng trnh trong VI Block diagram thc thi ph thuc vo lung d liu th Block diagram s KHNG thc thi t tri qua phi Mt nt ch c th thc hin khi d liu c sn ti tt c cc u vo ca n
Lp trnh LabVIEW
Dataflow
V d: Nt no thc thi trc?
a) Add b) Subtract c) Random Number d) Divide e) Sine
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
K THUT LP TRNH
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
System / Classic: cc dng control, indicator khc: s hc, boolean, text, button, SW, Express: numeric control, numeric indicator, tex control, text indicator, button& Swithes, led, Graph,..
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
While Loop
Lp trnh LabVIEW
While Loop
1. Chn While Loop
3. Ko th vo vong lp cc nt v sau i dy
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
While Loop
Bin m (Interation terminal): tr v s ln lp thc hin, bt u t zero-0 iu kin kt thc (conditional terminal): xc nh khi vong lp dng
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
For Loop
Lp trnh LabVIEW
For Loop
S ln lp
Bin m
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
8 bytes
4 bytes
Lp trnh LabVIEW
V d
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Shift Registers
Click chut phi vo khung vong lp v chn Add Shift Register Thanh ghi dch bn phi s lu tr kt qu sau mi ln lp Thanh ghi dch bn tri s cung cp d liu cho ln lp tip theo
Lp trnh LabVIEW
Shift Registers
Output=3
Output=5
Output=2
Output=4
Lp trnh LabVIEW
Lp trnh LabVIEW
Nt phn hi
S xut hin t ng trong vong lp For hoc While nu nh bn i dy u ra ca mt subVI, function, hoc group ca subVI v functions ti u vo ca VI tng ng, function, hoc group.
D liu lu tr khi m hon tt mt vong lp, gi d liu ti vong lp k tip v truyn i mi kiu d liu.
Lp trnh LabVIEW
Nt phn hi
i dy t u ra ti u vo c t ng to ra mt nt phn hi <Hoc> t mt nt phn hi t bng Functions Structures
Lp trnh LabVIEW
Cu trc Case
Thc hin v hin th ch c mt trng hp hoc mt s con trong mt thi im Ng vo s xc nh cho php trng hp no hay s no c thc thi Cu trc Case cng tng t nh cu trc If..then..else trong cc ngn ng lp trnh dng text
Lp trnh LabVIEW
Cu trc Case
Case Selector Label: cha tn ca trng hin ti
Lp trnh LabVIEW
Cu trc Case
u vo lun c sn cho tt c cc trng hp Phi xc nh mi u ra tunnel cho mi trng hp
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Mng (Arrays)
Mt mng (Array) c trng bi kch thc v phn t trong n
Phn t (Element): d liu nm trong mng Kch thc: chiu di v chiu rng, ct x hng y Mng c th c mt hoc nhiu chiu v c (2^31-1) phn t trn mi chiu
Mng s dng mt tp hp cng kiu d liu v cc php ton mang tnh lp li nhiu ln
Lp trnh LabVIEW
To mng
1. t mt mng trng (array shell) ln front panel 2. Ko hoc th i tng hoc phn t vo array shell
3. V d: mng hng
Lp trnh LabVIEW
Lp trnh LabVIEW
Mng 2D
Lu tr cc phn t dng li to mng a chiu: click chut phi vo index display v chn Add Dimention
To mng 2D
C th to 2 vong lp For loop lng vo nhau to mng 2D
Lp trnh LabVIEW
Array
Lp trnh LabVIEW
Lp trnh LabVIEW
To mt Cluster
to mt Cluster control hoc indicator trn front panel:
t mt cluster shell trn front panel Ko th cc i tng hoc phn t vo cluster shell nh: numeric, boolean, string, path, refnum, array,
Lp trnh LabVIEW
Error Cluster
LabVIEW s dng error cluster chc thng tin li Mt error cluster cha cc phn t sau:
Status: kiu boolean, tr v True nu khng c li v ngc li Code: kiu 32 bits Signed integer xc nh m li Source: kiu string xc nh ni b li
Lp trnh LabVIEW
So snh vi Array
Ging nhau: c control hoc indicator nhng ng thi khng cha c hai Cluster c kch thc thay i so vi kch thc c nh ca array Cluster cha nhiu kiu d liu khc nhau; con array ch cha mt kiu d liu duy nht
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
File I/O
File I/O c v ghi vo mt file Mt phng php in hnh truy xut file:
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Low-level VIs
VI ring bit cho mi bc Nu ghi file trong mt vong lp, s dng hm low-level file I/O
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Lp trnh LabVIEW
Lp trnh LabVIEW
Variable
Cannot pass data between parallel loops with a wire Variables allow you to circumvent normal dataflow by passing data from one place to another without connecting the two places with a wire
Lp trnh LabVIEW
Variable
Variables are block diagram elements that allow you to access or store data in another location Variables can be of the following types: Local: store data in front panel controls and indicators Global: store data in special repositories that can be accessed from multiple VIs Functional Global: store data in While Loop shift registers Shared: transfers data between various distributed targets connected together over a network
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Local Variable
Use local variables to pass data within a single VI
Lp trnh LabVIEW
Global Variable
Use a global variable or a single process shared variable to share data between multiple VIs Use a global variable to share data among VIs on the same computer, especially if you do not use a project file Use a single process shared variable if you may need to share the variable information among VIs on multiple computers in the future
Lp trnh LabVIEW
Property Node
Property Nodes access the properties of an object In some applications, you might want to modify the appearance of front panel objects programmatically in response to certain inputs If a user enters an invalid password, you might want a red LED to start blinking If a data point is above a certain value, you might want to show a red trace instead of a green one Property Nodes allow you to make these modifications programmatically
GV: Nguyn Thanh Tn
Lp trnh LabVIEW
Property Node
Property Nodes execute in order from top to bottom If an error occurs on a terminal, the node stops at that terminal, returns an error, and does not execute any further terminals
Lp trnh LabVIEW
Control References
A control reference is a reference to a front panel object Wire control references to generic Property Nodes Pass control references to subVI
Lp trnh LabVIEW
Control References
Lp trnh LabVIEW
Control References
Lp trnh LabVIEW
Invoke Nodes
Invoke Nodes access the methods of an object Use the Invoke Node to perform actions, or methods, on an application or VI Unlike the Property Node, a single Invoke Node executes only a single method on an application or VI
Lp trnh LabVIEW
Invoke Nodes
To create an implicitly-linked Invoke Node, rightclick the control and select CreateInvoke Node and choose a method An example of a method that is common to all controls is the Reinitialize to Default method The Waveform Graph has the method Export Image:
Lp trnh LabVIEW
Events Programming
Lp trnh LabVIEW
Events Programming
Examples of User Interface (Static) Events Pressing a button on the mouse, moves or clicks the mouse Pressing a key on the keyboard Value (Signaling) Property can generate a programmatic event
Lp trnh LabVIEW
USB 6008
Lp trnh LabVIEW
THANK YOU!
Lp trnh LabVIEW