Title: Lesson 9 Data Acquisition and Waveforms
1Lesson 9Data Acquisition and Waveforms
- TOPICS
- Plug-in DAQ devices
- Data Acquisition in LabVIEW
- Analog Input
- Data Logging
- Analog Output
- Counters
- Digital I/O
2Overview and Configuration
- Fundamental task of a DAQ system is to measure or
generate real-world physical signals - DAQ system consists of
- Transducers
- Signal Conditioning
- Plug-in DAQ device
- Driver
- Software
3Measurement Software Framework
- NI-DAQ contains
- Traditional NI-DAQ
- NI-DAQmx
4DAQ Hardware Configuration
Measurement Automation Explorer (MAX)
5Channels and Tasks
Channel names
Sine Wave 1
ai 0
Signals
Sine Wave 2
ai 1
ai 2
Sine Wave 3
Tasks
Timing and Triggering
6The DAQ Signal Accessory
7NI-DAQmx versus Traditional NI-DAQ
Feature NI-DAQmx Traditional NI-DAQ
Test Panels ? ?
DAQ Assistant with code generation ? no
On-line diagnostics ? ?
Scaling to voltage and physical units ? ?
50 kS/s with single point I/O ? ?
Measurement multithreading ? ?
Instant calibration ? ?
Automatic selection of optimal gains ? ?
Guaranteed lossless data ? ?
650 Alliance members ? ?
Integration with LabVIEW ? ?
Developer Exchange discussion forum ? ?
Compatible with Legacy ISA Boards no ?
Productivity
Performance
Accuracy
Quality
Compatibility
8Data Acquisition in LabVIEW
- NI-DAQmx
- Next generation driver
- VIs for performing a task
- One set of VIs for all measurement types
- Traditional NI-DAQ
- Specific VIs for performing
- Analog Input
- Analog Output
- Digital I/O
- Counter operations
9NI-DAQmx Data Acquisition
Single set of VIs used to perform analog I/O,
digital I/O, and counter operations
- DAQ Assistant Express VI
- Quickly and easily program the DAQ device
- Creates a local task
- Most applications can use the DAQ Assistant
Express VI
10NI-DAQmx Data Acquisition Task Types
- Measurement type can be
- Analog Input
- Analog Output
- Counter Input
- Counter Output
- Digital I/O
11Analog Input
Analog Input task is specific to the measurement
12Analog Input Task Timing and Triggering
Configures the number of samples and sample rate
for the task
Configures the start and reference triggers for
the task
13Data Logging
- It is often necessary to permanently store data
that is acquired from the DAQ device - LabVIEW includes the ability to read and write a
LabVIEW Measurement File - LabVIEW Measurement File is an ASCII text file
14Analog Output
Analog Output task is specific to the generation
type
15Analog Output Task Timing and Triggering
Configures the number of samples and sample rate
for the task
Configures the start and reference triggers for
the task
16Counters
- A counter is a digital timing device
- Typical uses of a counter
- Event counting
- Frequency measurement
- Period measurement
- Position measurement
- Pulse generation
Gate
Output
Count Register
Source
Count register Stores the current count of the
counter Source Input that causes the counter to
increment each time it toggles Gate Input that
is used to enable or disable the function of the
counter Output Signal that generates pulses or
a series of pulses
17Digital Input and Output
- Digital I/O can read from or write to a line or
an entire digital port - A digital port is a collection of digital lines
18Summary
- MAX is the primary configuration and testing
utility that is available for the DAQ device. - The DAQ Assistant is used to configure the DAQ
device and perform data acquisition. - Most application can use the DAQ Assistant. For
applications that require advanced timing and
synchronization use the VIs that come with
NI-DAQmx. - The DAQ Assistant can perform Analog Input,
Analog Output, Digital I/O, and Counter
operations.
19Lesson 10Instrument Control
- TOPICS
- Instrument Control Overview
- GPIB Communication and Configuration
- Instrument I/O Assistant
- Virtual Instrument Software Architecture (VISA)
- Instrument Drivers
- Serial Port Communication
- Waveform Transfers
20Instrument Control Overview
- Control any instrument if you know the following
- Type of connector on the instrument - Type of
cables needed - Electrical properties involved - Communication
protocols used - Software drivers available
Instruments
Computer
21GPIB Communication
GPIB Interface
GPIB Instruments
GPIB Cable
22Standards Introduction
1965
HP designs HP-IB (Hewlett Packard Interface Bus)
HP-IB becomes IEEE 488
1975
1987
IEEE 488.2 adopted IEEE 488 becomes IEEE 488.1
1990
SCPI (Standard Commands for Programmable
Instruments) added to IEEE 488.2
1992
IEEE 488.2 revised
HS488 proposed
1993
HS488 approved
1999
23GPIB Hardware Specifications
- Max cable length between devices 4 m (2 m
average) - Max cable length 20 m
- Max number of devices 15 (2/3 powered on)
24GPIB Software Architecture Windows
Diagnostics Tools GPIB Diagnostic Tool NI-Spy
Instrument Driver VIs
Driver Software (.DLL)
NI-VISA
Interface Board (GPIB, PXI, VXI, computer based,
etc.)
LabVIEW
Configuration Tools Measurement Automation
Explorer
25Configuring GPIB Board and Instruments
- Measurement Automation Explorer (MAX)
26What is the Instrument I/O Assistant?
- Accessed through a LabVIEW Express VI
- Sets up device communication and data parsing
step by step through a configuration interface
27Communicating with an Instrument
28Virtual Instrument Software Architecture
VISA
GPIB
VXI
Serial
PXI
- Platform independent
- VISA is the backbone of the IVI and Plug Play
Instrument Drivers
- Interface independent
- Must know SCPI command set to program directly
with VISA
29VISA Terminology
- ResourceInstrument, Serial Port, or Parallel
Port - SessionConnection to a Resource
- Instrument DescriptorResource location
- Format Interface TypeAddressINSTR
- Examples
30Instrument Descriptor Syntax
- Resource Name contains interface info
- VISA Aliases also work
Interface Resource Name Grammar Serial ASRLboard
INSTR GPIB GPIBboardprimary
addressINSTR VXI VXIboardVXI logical
addressINSTR GPIB-VXI GPIB-VXIboardGPIB-
VXI primary addressVXI logical
addressINSTR
31VISA Resource Name
- Exact name and location of the instrument
- Use the VISA Resource Name control
- You can specify the full resource name of the
VISA Alias
32Instrument Drivers
- More than 1200 LabVIEW Instrument drivers
- Programming simplified to high-level API
33Installing and Finding Instrument Drivers
- Drivers available at ni.com/idnet
- Install the instrument driver VI Library into
LabVIEW 7.0\instr.lib directory - Access drivers from FunctionsInputInstrument
Drivers subpalette
34IDNET - Instrument Driver Network
- Learn about drivers
- Get help with developing drivers
- Submit your driver to the network
- Download drivers
35Instrument Driver Model
36Instrument Driver VIs
- Initialize
- Configure
- Action/Status
- Data
- Utility
- Close
37Instrument Driver Inputs and Outputs
HP34401A Initialize.vi
- Instrument Descriptor
- VISA Sessions
- A connection or link to a specific instrument
- Created after instrument is initialized
- Used throughout VI whenever you communicate with
that specific instrument - Error cluster
38Putting It All Together
- Initialize instrument
- Do operation(s)
- Close instrument
- Check error status
39Serial Communication
- Popular means of communication between computer
and peripheral device - Data sent one bit at a time across the cable
- Used for low transfer rates or long distances
- Only a cable is needed since most computers have
at least one available serial port
PC Serial Port
RS-232 Cable
RS-232 Instrument
40Serial Hardware Connection
- RS-232
- DCE or DTE configurations
- 9-pin or 25-pin
- RS-422
- DCE or DTE
- 8-pin
- RS-485
- Multidrop
Pin DTE DCE 1 DCD Input Output 2 RxD I O 3
TxD O I 4 DTR O I 5 Com - - 6 DSR I O 7
RTS O I 8 CTS I O 9 RI I O
41Serial Communication
- Terminology
- Baud rate bits per second
- Data bits inverted logic and LSB first
- Parity optional error-checking bit
- Stop bits 1, 1.5, or 2 inverted bits at data
end - Flow control hardware and software handshaking
options
42Using the Instrument I/O Assistant with Serial
- Select COMX as the instrument address
- Use the I/O Assistant as done with GPIB
43Summary
- LabVIEW can communicate with any instrument that
connects to your computer if you know the
interface type - Use the Measurement Automation Explorer (MAX)
to detect, configure, and test your GPIB
interface and instruments - Use the Instrument I/O Assistant for easy and
fast GPIB and serial programming. - An instrument driver eliminates the need for your
to have detailed knowledge of the specific
strings used by an instrument - Instrument Library more than 2000 instruments
supported - Instrument driver VIs share a common hierarchy
and come with an example to help you get started
44Lesson 11VI Customization
- TOPICS
- Configuring Appearance of Front Panel
- SubVI Front Panels
- Keyboard Shortcuts
- VI Properties
- Customizing Palettes
45Customizing VI Properties
- Access VI Properties by right-clicking the icon
pane or selecting it from the File menu - Affects every instance of that VI in all
applications
46Window Appearance
- Only affects VI panel while VI is running
47Window Size
- Set minimum and current panel size
- Adjust size of panel relative to the monitor
- Scale objects on panel as window resizes
48Creating Pop-Up Panels Every Instance
- Use Top-Level Application Window or Dialog
appearance types - Create custom window appearance
49Creating Pop-Up Panels Single Instance
- Access SubVI Node Setup by right-clicking on
subVI icon on calling VIs diagram
50Key Navigation
- Assigns keyboard strokes to front panel controls
51Preventing Editing of a VI
- Opens, runs, and closes LabVIEW without user
intervention - Remove menus, Abort button, etc
- Save with Options
52Summary
- Use VI Properties to set VI execution, window,
and documentation options - Use SubVI Node Setup to set execution options for
a single instance of a subVI - Use the Key Navigation option to assign front
panel controls to a keyboard key combination - Use the Save with Options from the file menu to
make backups of your VIs - You can often edit VIs by aborting them from the
diagram of another VI
53Technical Support Resources
- Award-Winning Website www.ni.com/support
- Drivers Updates
- Product Manuals
- KnowledgeBases
- Example Code
- Tutorials
- Application Notes
- Discussion Forums
54Info-LabVIEW Listserve
- User-sponsored Internet mailing list
- Send subscription messages to the Info-LabVIEW
list processor - listmanager_at_pica.army.mil
- Send other administrative messages to the
Info-LabVIEW list maintainer at - info-labview-REQUEST_at_pica.army.mil
- Post a message to subscribers at
- info-labview_at_pica.army.mil
55LabVIEW Publications
- LabVIEW Technical Resource quarterly newsletter
by LTR Publishing - LabVIEW Graphical Programming and LabVIEW Power
Programming by Gary W. Johnson, McGraw-Hill - LabVIEW for Everyone by Lisa K. Wells and Jeffrey
Travis, Prentice-Hall - LabVIEW Signal Processing by Mahesh Chugani,
Abhay Samant, and Michael Cerna, Prentice-Hall - LabVIEW Applications and Solutions by Rahman
Jamal and Herbert Pichlik, Prentice-Hall