יום הדרכת labview
DESCRIPTION
יום הדרכת LabVIEW. מועבר ע"י תחום הנדסה\גף אח"ת בשיתוף עם בית ספר אורט תל נוף כהכנה לתחרות FRC 2009. סגן קובי אבינו רב"ט יבגני צ'רנישב. Virtual Instrumentation With LabVIEW. Course Goals. Understand the components of a Virtual Instrument Introduce LabVIEW and common LabVIEW functions - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/1.jpg)
LabVIEWLabVIEWיום הדרכת יום הדרכת
סגן קובי אבינוסגן קובי אבינו
רב"ט יבגני צ'רנישברב"ט יבגני צ'רנישב
מועבר ע"י תחום הנדסה\גף אח"ת בשיתוף עם בית ספר אורט תל נוף מועבר ע"י תחום הנדסה\גף אח"ת בשיתוף עם בית ספר אורט תל נוף FRC 2009FRC 2009כהכנה לתחרות כהכנה לתחרות
![Page 2: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/2.jpg)
Virtual Instrumentation With LabVIEW
![Page 3: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/3.jpg)
Course Goals
• Understand the components of a Virtual Instrument• Introduce LabVIEW and common LabVIEW functions • Build a simple data acquisition application• Create a subroutine in LabVIEW
![Page 4: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/4.jpg)
Section I
• LabVIEW terms• Components of a LabVIEW application• LabVIEW programming tools• Creating an application in LabVIEW
![Page 5: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/5.jpg)
Front Panel• Controls = Inputs• Indicators = Outputs
Block Diagram• Accompanying “program”
for front panel• Components “wired”
together
LabVIEW Programs Are Called Virtual Instruments (VIs)
![Page 6: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/6.jpg)
VI Front Panel
Front Panel Toolbar
GraphLegend
BooleanControl
WaveformGraph
Icon
PlotLegend
ScaleLegend
![Page 7: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/7.jpg)
VI Block Diagram
Wire Data
GraphTerminal
SubVI
While LoopStructure
Block Diagram Toolbar Divide
Function
Numeric Constant
Timing Function
Boolean Control Terminal
![Page 8: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/8.jpg)
Express VIs, VIs and Functions• Express VIs: interactive VIs with configurable dialog page• Standard VIs: modularized VIs customized by wiring• Functions: fundamental operating elements of
LabVIEW; no front panel or block diagram
Express VIExpress VI Standard VIStandard VI
FunctionFunction
![Page 9: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/9.jpg)
Controls and Functions Palettes
Controls Palette (Front Panel Window)
Functions Palette (Block Diagram Window)
![Page 10: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/10.jpg)
Operating Tool
Positioning/Resizing Tool
Labeling Tool
Wiring Tool
Shortcut Menu Tool
• Floating Palette• Used to operate and modify
front panel and block diagram objects.
Scrolling Tool
Breakpoint Tool
Probe Tool
Color Copy Tool
Coloring Tool
Tools Palette
Automatic Selection Tool
![Page 11: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/11.jpg)
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
Status Toolbar
![Page 12: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/12.jpg)
Open and Run a Virtual Instrument
Example finder
![Page 13: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/13.jpg)
ControlTerminals
Block Diagram Window
Front Panel Window
Indicator Terminals
Creating a VI
![Page 14: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/14.jpg)
Creating a VI – Block Diagram
![Page 15: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/15.jpg)
Wiring Tips – Block DiagramWiring “Hot Spot”
Clean Up WiringUse Automatic Wire Routing
Click To Select Wires
![Page 16: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/16.jpg)
• Block diagram executes dependent on the flow of data; block diagram does NOT execute left to right
• Node executes when data is available to ALL input terminals
• Nodes supply data to all output terminals when done
Dataflow Programming
![Page 17: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/17.jpg)
Help Options
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
![Page 18: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/18.jpg)
Exercise 1 - Convert °C to °F
![Page 19: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/19.jpg)
Debugging Techniques• Finding Errors
• Execution Highlighting
• Probe
Click on broken Run buttonWindow showing error appears
Click on Execution Highlighting button; data flow is animated using bubbles. Values are displayed on wires.
Right-click on wire to display probe and it shows data as it flows through wire segment
You can also select Probe tool from Tools palette and click on wire
![Page 20: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/20.jpg)
Section II – SubVIs
• What is a subVI?• Making an icon and
connector for a subVI• Using a VI as a subVI
![Page 21: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/21.jpg)
Block Diagram Nodes
Icon Expandable Node Expanded Node
• Function Generator VI• Same VI, viewed three different ways• Yellow field designates a standard VI• Blue field designates an Express VI
![Page 22: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/22.jpg)
SubVIs• A SubVI is a VI that can be used within another VI• Similar to a subroutine• Advantages
– Modular– Easier to debug– Don’t have to recreate code– Require less memory
![Page 23: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/23.jpg)
Icon and Connector
• An icon represents a VI in other block diagrams
• A connector shows available terminals for data transfer
Icon
Connector
Terminals
![Page 24: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/24.jpg)
SubVIs Sub VIsSub VIs
![Page 25: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/25.jpg)
Steps to Create a SubVI
• Create the Icon• Create the Connector• Assign Terminals• Save the VI• Insert the VI into a Top Level VI
![Page 26: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/26.jpg)
Create the Icon
• Right-click on the icon in the block diagram or front panel
![Page 27: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/27.jpg)
Create the Connector
Right click on the icon pane (front panel only)
![Page 28: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/28.jpg)
Assign Terminals
![Page 29: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/29.jpg)
Save The VI
• Choose an Easy to Remember Location• Organize by Functionality
– Save Similar VIs into one directory (e.g. Math Utilities)
• Organize by Application– Save all VIs Used for a Specific Application into one
directory or library file (e.g. Lab 1 – Frequency Response)
• Library Files (.llbs) combine many VI’s into a single file, ideal for transferring entire applications across computers
![Page 30: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/30.jpg)
Insert the SubVI into a Top Level VI
Accessing user-made subVIsFunctions >>All Functions >> Select a VI
Or Drag icon onto target diagram
![Page 31: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/31.jpg)
Tips for Working in LabVIEW
• Keystroke Shortcuts– <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.
![Page 32: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/32.jpg)
Section III – Data Acquisition
• Data acquisition (DAQ) basics• Connecting Signals• Simple DAQ application
Computer
DAQ Device
Terminal Block
Cable
Sensors
![Page 33: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/33.jpg)
DAQ – Data Acquisition
Temperature Acquisition using the DAQ Assistant
![Page 34: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/34.jpg)
Data Acquisition Terminology
• Resolution - Determines How Many Different Voltage Changes Can Be Measured– Larger Resolution More Precise Representation of Signal
• Range - Minimum and Maximum Voltages– Smaller range More Precise Representation of Signal
• Gain - Amplifies or Attenuates Signal for Best Fit in Range
![Page 35: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/35.jpg)
Hardware Connections
BNC-2120
SCB-68
NI-ELVIS
SC-2075
![Page 36: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/36.jpg)
Exercise 2 – Simple Data Acquisition
Complete Convert C to F.vi, then create Thermometer.vi.
![Page 37: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/37.jpg)
Section IV – Loops and Charts
• For Loop• While Loop• Charts• Multiplots
![Page 38: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/38.jpg)
Loops
• While Loops– Have Iteration Terminal– Always Run at least Once– Run According to Conditional
Terminal
• For Loops– Have Iteration Terminal– Run According to input N of
Count Terminal
![Page 39: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/39.jpg)
Loops (cont.)1. Select the loop 2. Enclose code to be repeated
3. Drop or drag additional nodes and then wire
![Page 40: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/40.jpg)
Charts
Waveform chart – special numeric indicator that can display a history of values
Controls >> Graph Indicators >> Waveform Chart
![Page 41: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/41.jpg)
Wiring Data into Charts
Single Plot Charts Multiplot Charts
![Page 42: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/42.jpg)
Exercise 3 – Using loops
Students build Use a loop.vi.
![Page 43: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/43.jpg)
Section V – Arrays & File I/O
• Build arrays manually• Have LabVIEW build arrays automatically• Write to a spreadsheet file• Read from a spreadsheet file
![Page 44: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/44.jpg)
Adding an Array to the Front PanelFrom the Controls >> All Controls >> Array and Cluster subpalette, select the Array Shell
Drop it on the screen.
![Page 45: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/45.jpg)
Adding an Array (cont.)
Place data object into shell (i.e. Numeric Control)
![Page 46: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/46.jpg)
Creating an Array with a Loop
• Loops accumulate arrays at their boundaries
![Page 47: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/47.jpg)
Creating 2D Arrays
![Page 48: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/48.jpg)
File I/O
File I/O – passing data to and from files
- Files can be binary, text, or spreadsheet
- Write/Read LabVIEW Measurements file (*.lvm)
Writing to LVM fileWriting to LVM file Reading from LVM fileReading from LVM file
![Page 49: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/49.jpg)
Write LabVIEW Measurement File• Includes the open, write, close and error handling functions • Handles formatting the string with either a tab or comma
delimiter • Merge Signals function is used to combine data into the
dynamic data type
![Page 50: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/50.jpg)
Exercise 4 – Analyzing and Logging DataStudents build Temperature Logger.vi
![Page 51: יום הדרכת LabVIEW](https://reader035.vdocuments.net/reader035/viewer/2022062717/56812aad550346895d8e7200/html5/thumbnails/51.jpg)
Where Do I Go From Here?
• Example programs (Help» Find Examples…)• LabVIEW Student Edition (www.ni.com/labviewse)• Web resources (ni.com)
– NI Developer Zone (zone.ni.com)– Application Notes – Info-labview newsgroup (www.info-labview.org/)– Instrument Driver Library (www.ni.com/idnet)