- What is LabVIEW?
- Why Use LabVIEW?
- Application Areas?
- How does LabVIEW work?
- LabVIEW Toolkits and Modules?
What is LabVIEW ?
Why use LabVIEW ?
NI LabVIEW is a graphical programming language designed for engineers and scientists to develop test, control, and measurement applications. The intuitive nature of LabVIEW graphical programming makes it easy for educators and researchers to incorporate the software in a range of courses and applications. With LabVIEW, educators and researchers can use a graphical system design approach to design, prototype, and deploy embedded systems. It combines the power of graphical programming with hardware to dramatically simplify and accelerate the development of designs.
Graphical system design is a modern approach to designing, prototyping, and deploying embedded systems. It combines open graphical programming with hardware to dramatically simplify development.
Software Benefits
LabVIEW provides the flexibility of a powerful programming language without the complexity of traditional development environments.
• LabVIEW – Laboratory Virtual Instrument Engineering Workbench
• Graphical programming language that allows for instrument control, data acquisition, and pre/post processing of acquired data
Graphical programming language & Data flow
• LabVIEW relies on graphical symbols rather than textual language to describe programming actions
• The principle of dataflow, in which functions execute only after receiving the necessary data, governs execution in a straightforward manner.
Why use LabVIEW ?
NI LabVIEW is a graphical programming language designed for engineers and scientists to develop test, control, and measurement applications. The intuitive nature of LabVIEW graphical programming makes it easy for educators and researchers to incorporate the software in a range of courses and applications. With LabVIEW, educators and researchers can use a graphical system design approach to design, prototype, and deploy embedded systems. It combines the power of graphical programming with hardware to dramatically simplify and accelerate the development of designs.
Graphical system design is a modern approach to designing, prototyping, and deploying embedded systems. It combines open graphical programming with hardware to dramatically simplify development.
Software Benefits
LabVIEW provides the flexibility of a powerful programming language without the complexity of traditional development environments.
- · Easy to Learn and Use
- · Complete Functionality
- · Integrated I/O Capabilities
- · Exploration of Concepts
- · Improved Learning Experience
- · Seamless Integration with Hardware to Design Experiments
- · Open Platform to Interface with Other Engineering Tools
- · Accelerated Learning
- · Industry Standard
How Can I Use LabVIEW?
Browse application areas about your specific application.
Acquiring Data and Processing Signals
Instrument Control
Automating Test and Validation Systems
Embedded Monitoring and Control Systems
Academic Teaching
Acquiring Data and Processing Signals
- Measure any sensor on any bus
- Perform advanced analysis and signal processing
- Display data on custom user interfaces
- Log data and generate reports
Instrument Control
- Automate data collection
- Control multiple instruments
- Analyze and display signals
Automating Test and Validation Systems
- Automate the validation or manufacturing test of your product
- Control multiple instruments
- Analyze and display test results with custom user interfaces
Embedded Monitoring and Control Systems
- Reuse ANSI C and HDL code
- Integrate off-the-shelf hardware
- Prototype with FPGA technology
- Access specialized tools for medical, robotics, and more
Academic Teaching
- Apply an interactive, hands-on approach to learning
- Combine algorithm design with real-world data measurements
- Increase application performance with multicore processing
How does LabVIEW work?
• LabVIEW programs are called: Virtual Instruments (VIs) because their appearence and operation imitate actual instruments.
• However, they are analogous to main programs, functions and subroutines from popular language like C, Fortran, Pascal, …
LabVIEW programs are called virtual instruments (VIs). As the name implies, you will be constructing an instrument that exists only in the computer, but otherwise similar to a tangible instrument, which will allow the user to send and receive meaningful data.
A VI has three main parts:
1. The front panel:
an interactive user interface of a VI, so named because it can simulates the front panel of a physical instrument.
This is where the user interacts directly with the VI. The front panel abstracts detail away from the user, and provides the user with as many inputs (or controls) and outputs (or indicators) required for the VI to function properly and meaningfully.
2. The block (or wiring) diagram:
It is the VI’s source code, constructed in LabVIEW’s graphical programming language, G. It is the actual executable program.
Subroutine in the block diagram of VI.
The block diagram, in several ways, represents a flowchart. It receives the input data supplied to the controls on the front panel, manipulates them in interesting ways through wires and blocks, and then displays the output data through the indicators on the front panel. As a corollary, every front panel control or indicator has a corresponding terminal on the block diagram.
3. Icon/connector
Another important part of any VI are the icons and the connectors. These allow your VI to communicate with other VIs elsewhere, and thus allows your VI to be used as a sub-VI in other VIs. This allows clean and modular block diagrams, where each sub-VI performs a certain task, and the inputs and results of each sub-VI are manipulated appropriately by the containing VI.
All of the available functions, blocks and VIs are located inside palettes.
All of the available functions, blocks and VIs are located inside palettes.
There are two main palettes:
the Controls palette on the front panel and shown in Figure 1, and
the Functions palette on the block diagram, as shown in Figure 2. Both of these palettes are accessible by right-click.
Figure 1 Controls Palette
Figure 2 Function Palette
As denoted by their names, the Controls palette contains both the controls and the indicators that are available for use on the front panel, while the Functions palette contains the blocks and the VIs that are available for use on the block diagram. Since there are so many blocks possible and available, they have been categorized, and both of the main palettes have search functionalities that allow you to find any block that you think might be useful.
Front Panels
Simply put, the front panel is the window through which the user interacts with the program.
• When you run a VI, you must have the front panel open so that you can input data to the executing program.
• The front panel is where you see your program’s output.
Components of a front panel:
The front panel is primarily a combination of controls and indicators.
Control? or Indicator?
Controls = Inputs from the user = Source Terminals (Block With Arrow)
Indicators = Outputs to the user = Destinations (Block without Arrow)
Control or Indicator Terminal?
Control terminals have thick borders.
Indicator terminals have thin borders.
Manipulating Controls and Indicators
Right click on an indicator to
– Change to control
– Change format or precision
Right click on a control to
– Change to indicator
– Change mechanical action (whether to latch open or closed, and what to use as default…)
Deleting Block Diagram Terminals
• By default, you cannot delete a block diagram terminal that belongs to a control(or indicator).
• The terminal disappears only when you delete its corresponding control(or indicator) on the FRONT PANEL.
Block Diagrams
The block diagram window holds the graphical source code of a LabVIEW VI – it is the actual executable code
• You construct the block diagram by wiring together objects that perform specific functions.
• The various components of a block diagram are terminals, nodes and wires.
Terminals
When you place a control (or indicator) on the FRONT PANEL then LabVIEW automatically creates a corresponding control (or indicator) terminal on the BLOCK DIAGRAM
Nodes
Node is just a fancy word for a program execution element – Nodes are analogous to statements, operators, functions and
subroutinesin standard programming language:
• The add and subtract functions represent one type of node.
• A structure is an other type of node. Structures can execute code repeatedly or conditionally, similar to loops and case statements in traditional programming languages.
• LabVIEW has also special nodes, called formula nodes, which are useful for evaluating mathematical formulas or expressions.
Wires
A LabVIEW VI is held together by wires connecting nodes and terminals; they deliver data from one source terminal to one or more destination terminals.
Basic wires used in block diagrams and corresponding types
Each wire has different style or color, depending on the data type that flows through the wire:
Broken wires
If you connect more than one source or no source at all to a wire,
LabVIEW DISAGREES with what you’re doing, and the wirewill appear broken
Components of a block diagram
– Review ! –
– Review ! –
• Nodes: program execution elements
• Terminals: Ports through which data passes between the block diagram and the front panel and between nodes of the block diagram
• Wires: Data paths between terminals
Dataflow Programming – Going with the flow
• Stated simply, a node executes only when data arrives at all its input terminals;
• the nodes supplies data to all of its output terminals when it finishes executing;
• and the data pass immediately from source to destination terminals.
LabVIEW uses a paradigm of programming known as dataflow programming. In the LabVIEW implementation of this paradigm, data flows fromleft to right, which passes through various blocks and modules that transform the data in interesting ways. This is analogous to a series of pipes connecting several machines together in, say, a factory; data can be imagined to be the liquid that flows through these pipes and machines. The user is provided with an interface through which to feed this data. The data is then processed and returned to the user through a similar interface.
Icons and Connectors
The icons and connectors specify the pathways for data to flow into and out of VIs.
• The icon is the graphical representation of the VI in the block diagram.
• the connector defines the inputs and outputs
Front Panel & Wiring Diagram.
• It is often helpful to view both simultaneously using the Windows-Tile Left and Right command from the pull down menu.
• A new (empty) VI is shown below with the key pull-down menu pallets visible.
Modifying a VI
• Only one of the two windows (front panel or wiring diagram) is active at any point in time. To activate one simply move the mouse over it and click a mouse button.
• To display any of the pallets (tools, controls, or functions) you can use the Windows pull down menu or simply left or right click your mouse.
• When you first pull up a pallet an image of a push pin is displayed in the upper left hand corner. Click on it to keep the pallet continuously displayed.
Tools palette . . .
Controls palette . . .
Functions palette . . .
Subpalettes . . .
Toolbar . . .
The Run Button
The Run button, which looks like an arrow, starts VI execution when you click on it
| |
It changes appearance when a VI is actually running. | |
When a VI won’t compile, the run button is broken |
LabVIEW Toolkits and Modules
LabVIEW (LV) is a graphic programming package ideal for creating automated test, measurement and control applications. The software acquires real world/real time signals and enables advanced, graphical analysis of the data. Available add-on modules and toolkits include the following:
- Embedded Design - Design, prototype and develop embedded applications including LabVIEW Real Time, Execution Trace, FPGA, Microprocessor SDK, Statechart, Mobile, DSP, ADI Blackfin Processor and ARM Microcontroller embedded modules and toolkits
- Control Design and Simulation - Algorithm development and analysis with LabVIEW Control Design and Simulation, Real-Time, Execution Trade, FPGA, Statechart, Simulation Interface and System Identification Modules and Toolkits
- Image and Signal Processing – Create unique image and signal processing applications using LabVIEW Vision Development, Advanced Signal Processing, Digital Filter Design, Adaptive Filter, Sound/Vibration, Spectral, Modulation, Vision Builder/Automation and Math Interface Toolkits, Modules and Measurement Suites
- Industrial Monitoring and Control – Utilize Labview in PACs (networked programmable automation controllers) for distributed monitoring and control systems and PLC/enterprise system integration with LabVIEW Real-Time, Execution Trace, FPGA, DataLogging/Supervisory Control, Touch Panel, Statechart, Motion Assistant and Softmotion Development Modules and Toolkits
- Software Development – Create professional applications using LabVIEW Application Builder (Windows), Analyzer, Statechart, Remote Panels and Requirements Gateway Toolkits and Modules
- Report Generation and Data Storage – Store data and generate reports with LabVIEW SignalExpress, Report Generation (Microsoft Office), Connectivity and Internet Toolkits
LabVIEW Modules
LabVIEW Application Builder
LabVIEW Datalogging and Supervisory Control Module
LabVIEW DSP Module
LabVIEW Embedded Development Module
LabVIEW Embedded Development Module for ADI Blackfin
LabVIEW FPGA
LabVIEW PDA
LabVIEW Real-Time Module
LabVIEW Simulation Module
LabVIEW Touch Panel Module
LabVIEW Vision Development Module
LabVIEW Datalogging and Supervisory Control Module
LabVIEW DSP Module
LabVIEW Embedded Development Module
LabVIEW Embedded Development Module for ADI Blackfin
LabVIEW FPGA
LabVIEW PDA
LabVIEW Real-Time Module
LabVIEW Simulation Module
LabVIEW Touch Panel Module
LabVIEW Vision Development Module
LabVIEW Toolkits
LabVIEW Advanced Signal Processing
LabVIEW Control Design
LabVIEW Digital Filter Design
LabVIEW DSP Test Integration Toolkit for TI DSPs
LabVIEW Enterprise Connectivity
LabVIEW Execution Trace Toolkit
LabVIEW Express VI Development
LabVIEW IVI Driver
LabVIEW Math Interface
LabVIEW Modulation
LabVIEW Order Analysis
LabVIEW PID Control
LabVIEW Report Generation for Microsoft Office
LabVIEW Simulation Interface
LabVIEW Sound and Vibration
LabVIEW Spectral Measurements
LabVIEW State Diagram
LabVIEW System Identification
LabVIEW VI Analyzer
LabVIEW Control Design
LabVIEW Digital Filter Design
LabVIEW DSP Test Integration Toolkit for TI DSPs
LabVIEW Enterprise Connectivity
LabVIEW Execution Trace Toolkit
LabVIEW Express VI Development
LabVIEW IVI Driver
LabVIEW Math Interface
LabVIEW Modulation
LabVIEW Order Analysis
LabVIEW PID Control
LabVIEW Report Generation for Microsoft Office
LabVIEW Simulation Interface
LabVIEW Sound and Vibration
LabVIEW Spectral Measurements
LabVIEW State Diagram
LabVIEW System Identification
LabVIEW VI Analyzer
What is Data Acquisition and Why use it?
• Traditional Experiments – signals from sensors are sent to analog or digital meters, read by the experimenter, and recorded by hand
• In automated data acquisition systems the sensors transmit a voltage or current signal directly to a computer via a data acquisition board.
• Software such as LabVIEW controls the acquisition and processing of such data
• The benefits of automated systems are many:
– Improved accuracy of recording
– Increased frequency with which measurements can be taken
– Potential to automate pre and post processing and build in quality control
0 comments:
Post a Comment