Instrument Drivers

advertisement
Lesson 9
Data Acquisition and Waveforms
TOPICS
Plug-in DAQ devices
Data Acquisition in LabVIEW
Analog Input
Data Logging
Analog Output
Counters
Digital I/O
1
Overview 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
2
Measurement
Software
Framework
NI-DAQ contains:
•Traditional NI-DAQ
•NI-DAQmx
3
DAQ Hardware Configuration
Measurement & Automation Explorer (MAX)
4
Channels and Tasks
Channel names
Signals
ai 0
ai 1
ai 2
Sine Wave 1
Sine Wave 2
Sine Wave 3
Tasks
Timing and Triggering
5
The DAQ Signal Accessory
NI-DAQmx versus Traditional NI-DAQ
Feature
Productivity
Performance
Accuracy
Quality
Compatibility
7
NI-DAQmx
Traditional NI-DAQ
Test Panels
»
z
DAQ Assistant with code generation
»
no
On-line diagnostics
»
»
Scaling to voltage and physical units
»
z
50 kS/s with single point I/O
»
€
Measurement multithreading
»
€
Instant calibration
»
z
Automatic selection of optimal gains
»
z
Guaranteed lossless data
»
»
650 Alliance members
»
»
Integration with LabVIEW
»
»
Developer Exchange discussion forum
»
»
Compatible with Legacy ISA Boards
no
»
» Best
zGood
€ Fair
Data Acquisition in LabVIEW
Traditional NI-DAQ
Specific VIs for
performing:
• Analog Input
• Analog Output
• Digital I/O
• Counter operations
8
NI-DAQmx
Next generation driver:
• VIs for performing a
task
• One set of VIs for all
measurement types
NI-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
9
NI-DAQmx Data Acquisition Task Types
Measurement type
can be:
•Analog Input
•Analog Output
•Counter Input
•Counter Output
•Digital I/O
10
Analog Input
Analog Input task
is specific to the
measurement
11
Analog 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
12
Data 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
13
Analog Output
Analog Output task
is specific to the
generation type
14
Analog 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
15
Counters
A counter is a digital timing device
Typical uses of a counter:
Gate
Output
• Event counting
• Frequency measurement
Count Register
• Period measurement
Source
• Position measurement
• Pulse generation
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
16
Digital 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
17
Summary
• 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.
18
Lesson 10
Instrument 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
19
Instrument Control Overview
Control any instrument if you know the following:
– Type of connector on the instrument
– Electrical properties involved
– Software drivers available
Instruments
20
− Type of cables needed
− Communication protocols used
Computer
GPIB Communication
GPIB Interface
GPIB Instruments
GPIB
Cable
Standards Introduction
22
1965
HP designs HP-IB (Hewlett Packard Interface Bus)
1975
HP-IB becomes IEEE 488
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
1993
HS488 proposed
1999
HS488 approved
GPIB Hardware Specifications
DIO1
DIO2
DIO3
DIO4
EOI
DAV
NRFD
NDAC
IFC
SRQ
ATN
SHIELD
23
1
13
12 24
DIO5
DIO6
DIO7
DIO8
REN
GND (TW PAIR W/DAV)
GND (TW PAIR W/NRFD)
GND (TW PAIR W/NDAC)
GND (TW PAIR W/IFC)
GND (TW PAIR W/SRQ)
GND (TW PAIR W/ATN)
SIGNAL GROUND
• Max cable length between
devices = 4 m (2 m average)
• Max cable length = 20 m
• Max number of devices =
15 (2/3 powered on)
GPIB Software Architecture — Windows
Diagnostics Tools:
GPIB Diagnostic Tool
NI-Spy
Interface Board
(GPIB, PXI,
VXI, computer
based, etc.)
Driver
Software
(*.DLL)
NI-VISA
Instrument
Driver VIs
LabVIEW
Configuration Tools:
Measurement &
Automation Explorer
Configuring GPIB Board and Instruments
Measurement & Automation Explorer (MAX)
25
What 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
26
Communicating with an Instrument
27
Virtual Instrument Software Architecture
VISA
Serial
GPIB
• Platform independent
• VISA is the backbone of the
IVI and Plug & Play
Instrument Drivers
28
VXI
PXI
• Interface independent
• Must know SCPI command
set to program directly with
VISA
VISA Terminology
• Resource—Instrument, Serial Port, or Parallel Port
• Session—Connection to a Resource
• Instrument Descriptor—Resource location
– Format:
– Examples:
29
Interface Type::Address::INSTR
Instrument Descriptor Syntax
• Resource Name contains interface info
• VISA Aliases also work
30
Interface
Resource Name Grammar
Serial
ASRL[board][::INSTR]
GPIB
GPIB[board]::primary address[::INSTR]
VXI
VXI[board]::VXI logical address[::INSTR]
GPIB-VXI
GPIB-VXI[board][::GPIB-VXI primary
address]::VXI logical address[::INSTR]
VISA 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
31
Instrument Drivers
• More than 1200 LabVIEW Instrument drivers
• Programming simplified to high-level API
32
Installing 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 Functions»Input»Instrument Drivers
subpalette
33
IDNET - Instrument Driver Network
• Learn about drivers
• Get help with developing drivers
• Submit your driver to the network
• Download drivers
34
Instrument Driver Model
35
Instrument Driver VIs
• Initialize • • •
• Configure • • • • • • • •
• Action/Status • • • • • • • • • • • •
• Data • • • • • • • • • • • • • • • • • • • • • • • • • •
• Utility • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
• Close • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
•
36
Instrument 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
37
Putting It All Together
•
•
•
•
38
Initialize instrument
Do operation(s)
Close instrument
Check error status
Serial 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
39
Serial Hardware Connection
• RS-232
– DCE or DTE
configurations
– 9-pin or 25-pin
• RS-422
– DCE or DTE
– 8-pin
• RS-485
– Multidrop
40
Pin
DTE DCE
1 DCD
2 RxD
3 TxD
4 DTR
5 Com
6 DSR
7 RTS
8 CTS
9 RI
Input
I
O
O
I
O
I
I
Output
O
I
I
O
I
O
O
Serial 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
41
Using the Instrument I/O Assistant with Serial
• Select COMX as
the instrument
address
• Use the I/O
Assistant as done
with GPIB
42
Summary
• 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
43
Lesson 11
VI Customization
TOPICS
Configuring Appearance of Front Panel
SubVI Front Panels
Keyboard Shortcuts
VI Properties
Customizing Palettes
44
Customizing 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
45
Window Appearance
Only affects VI panel while VI is running
46
Window Size
• Set minimum and current panel size
• Adjust size of panel relative to the monitor
• Scale objects on
panel as window
resizes
47
Creating Pop-Up Panels – Every Instance
• Use Top-Level Application Window or Dialog appearance types
• Create custom window appearance
48
Creating Pop-Up Panels – Single Instance
Access SubVI Node Setup by right-clicking on subVI icon on
calling VI’s diagram
49
Key Navigation
Assigns keyboard strokes to
front panel controls
50
Preventing Editing of a VI
• Opens, runs, and closes LabVIEW without
user intervention
• Remove menus, Abort button, etc…
• Save with Options
51
Summary
• 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
52
Technical Support Resources
Award-Winning Website www.ni.com/support
• Drivers & Updates
• Product Manuals
• KnowledgeBases
• Example Code
• Tutorials
• Application Notes
• Discussion Forums
53
Info-LabVIEW Listserve
User-sponsored Internet mailing list
• Send subscription messages to the Info-LabVIEW list processor
listmanager@pica.army.mil
• Send other administrative messages to the Info-LabVIEW list
maintainer at
info-labview-REQUEST@pica.army.mil
• Post a message to subscribers at
info-labview@pica.army.mil
54
LabVIEW 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
55
Download