- 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
subroutines
in 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 wire
will 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
No comments:
Post a Comment