Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 6 of 142
1 INTRODUCTION
1.1 Overview
The System 7000 data acquisition instrument (scanner) may be remotely programmed via an Ethernet
(TCP/IP) interface. Any high-speed, modern personal computer supporting this interface may be used to
program the System 7000 and, as a result, the scanner can be a part of an automated instrumentation
system.
This manual assumes that you are familiar with the operation of the System 7000 scanner. Please refer to
the “System 7000 Instruction Manual” for information on specifications and operation. The instruction
manual also contains information on setting up the network connections and configuring TCP/IP and
UDP.
1.2 Programming Options
This manual describes three different methods of programming the System 7000 scanner.
How do I choose which method is best for my application?
The LabVIEW instrument driver should be used if you are writing software using the NI
LabVIEW graphical programming language. The driver is compliant with the National
Instruments instrument driver standards.
The ActiveX automation interface is recommended for use in most applications developed in the
Microsoft Windows environment. This includes programming environments such as Microsoft
Visual Basic, Microsoft Visual C++ and C#, National Instruments LabWindows/CVI, and
Embarcadero Delphi. The ActiveX application program interface (API) simplifies your
programming by bundling related commands into a single method, managing critical timing, and
handling low-level requirements (such as building and parsing) of the TCP commands.
The low-level TCP commands should be used if your programming environment does not support
the ActiveX automation interface or if your application requires more flexibility. It is highly
recommended that you use either the LabVIEW instrument driver or the ActiveX automation
interface. Though documented here, use of the low-level commands is not supported.
1.2.1 StrainSmart and DCOM
StrainSmart is a software application, provided by Vishay Micro-Measurements, that provides a
comprehensive user interface for configuring the System 7000 and managing data collection. StrainSmart
shares fully-scaled data with other applications via DCOM. If you wish to use StrainSmart and have a
separate, custom application for monitoring data, it is recommended that you use the DCOM interface.
Please refer to the document “Overview of StrainSmart Automation Server” for more information on
using the DCOM interface. This document is found on the “Programmer’s Reference Kit” CD.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 7 of 142
1.3 Definition of Terms
Scanning
The System 7000 is said to be scanning after it has completed an “arm/start”
sequence and it is actively acquiring data.
Scan
Scan ID
Scan Rate
I/O Card or AIM
Card
StrainSmart
A scan in the System 7000 refers to a single group of data that is acquired
simultaneously. For example, if you have 2 cards in your scanner (with 8 active
channels per card), a single scan consists of all 16 readings made at the same point
in time.
Note: Many instruments refer to a single group of simultaneously acquired data as
a “sample”, whereas, a “scan” is a collection of N samples. Notice the difference
in terminology.
The scan identifier is effectively a sequence number for each scan. The first scan
read is given a Scan ID of 1, the second scan has an ID of 2, and so forth. If you
know the scan rate, you then know the elapsed time at which the scan occurred.
(e.g. with a scan rate of 1000 scans/sec, scan 1 occurs at 0 mSec, scan 2 at 1mSec,
scan 3 at 2mSec, etc…)
The rate at which scans are acquired. This can also be thought of as the sampling
rate.
This refers to a Model 7003-8-A-I Analog Input Cards coupled with either a Model
7003-8-SG Strain Gage Input Card, Model 7003-8-HL High Level Input Card,
Model 7003-8-TC Thermocouple Input Card, or a Model 7003-8-LVDT Input
Card.
StrainSmart is a software application, provided by Vishay Micro-Measurements,
that provides a comprehensive user interface for configuring the System 7000 and
managing data collection.
1.4 Document Notation and Conventions
1.4.1 Numbering Notation
Hexadecimal values are indicated by the prefix 0x, binary values by the prefix 0b, and decimal values
have no prefix.
For example,
Decimal Hexadecimal Binary
10 0x0A 0b00001010
Table 1 – Numbering Notation
1.4.2 Referenced VIs, Methods, and Commands
Most sections in the Programming Overview section include a table similar to the one shown below. This
table shows the commands (or VIs or methods) that are relevant to the section.
LabVIEW Control Manual Recording VI
Active X ControlManualRecording method
Low-level Start Manual Recording command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Stop Manual Recording command
Page 8 of 142
1.5 Registered Trademark Notices
Windows, Windows Visual Basic, Windows Visual C++, and Windows Visual C# are registered
trademarks of Microsoft Corporation in the United States and other countries. LabVIEW and
LabWindows/CVI are registered trademarks of National Instruments, Inc (NI) in the United States and
other countries. Delphi is a registered trademark of Embarcadero Technologies, Inc.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 9 of 142
2 PROGRAMMING OVERVIEW
2.1 Communicating with the System 7000
Detailed instructions on setting up the network connections and the TCP/IP and UDP settings are found in
the “System 7000 Instruction Manual”. This document describes the network communications from a
programming standpoint.
The System 7000 uses four communication ports; two for TCP communication and two for UDP
broadcasts. The host PC (via your program) must establish a connection to one or more of these ports.
Port Description
Command Port The TCP port used to transmit commands to the scanner and
receive command responses from the scanner.
File Data Port The TCP port used by the scanner to download files.
Real-time Data Port The UDP port number used to broadcast real-time data.
Event/Status Port The UDP port number used to broadcast messages containing
status or error information.
Table 2 – Communication Ports
For additional information on the TCP/IP and UDP protocols, the Internet Engineering Task Force (IETF)
is the definitive source of information. They are located at http://www.ietf.org. Some documents of
particular interest are:
IETF RFC 791: Internet Protocol (http://www.ietf.org/rfc/rfc791.txt)
IETF RFC 768: User Datagram Protocol (http://www.ietf.org/rfc/rfc768.txt)
Note: A System 7000 scanner is capable of generating a significant amount of network traffic when
broadcasting real-time data; therefore, it is important to carefully consider the network architectural
design.
2.2 Accessing Multiple Scanners (Synchronization)
It is possible to access multiple scanners with a single application. However you must establish a unique
network connection to each scanner. Individual scanners may operate independently or be synchronized
with each other (i.e. they perform simultaneous sampling because their analog-to-digital converter clock
signal is shared via synchronization cables). Synchronization is discussed in detail in the “System 7000
Instruction Manual”.
If your application does not require simultaneous sampling, it will simplify your programming (and
physical setup), if you leave your scanners unsynchronized. If you choose to synchronize your scanners,
they are referred to as being “networked” together. This should not be confused with the Ethernet
network. One scanner in the “network” must be designated as the master scanner. There is a special
command set that deals with configuring and starting data collection on synchronized scanners.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 10 of 142
2.3 System States
The System 7000 scanner has eight states.
State Description
Idle The system is waiting for commands.
Armed The system is armed and waiting for a signal to begin scanning.
Scanning The system is collecting data
Calibrating The system is calibrating.
Uploading The system is uploading data to the host.
Downloading The system is downloading data from the host PC. (internal use only)
Updating Flag The system is updating firmware. (internal use only)
Maintenance Mode The system is performing a maintenance-level command.
Table 3 – System States
2.4 Command Overview
The following chart shows the System 7000 command list broken down by functional group. It lists the
required state for each command.
If you are using the LabVIEW instrument driver or the ActiveX interface you will find that many of these
commands have been bundled into a single “vi” or method,
Command
Group
Card
Get Card Information Idle, Armed, Scanning
Set Excitation (Strain Gage, High Level, LVDT) Idle
Excitation Output Enable/Disable (Strain Gage, High Level,
Get Free Space on Compact Flash Idle, Armed, Scanning
Get Card Status Idle, Armed, Scanning,
Card Reset Idle
Set/Query LVDT Excitation Frequency (LVDT) Idle
Query Temperature Sensor Idle
Channel
Read the A/D Converter Idle
Set Channel Recording Group Idle
Set FIR Filter Idle
Set Filter to Default Idle
Shunt Calibration Resistor Enable/Disable (Strain Gage) Idle
Remote Calibration Resistor Enable/Disable (Strain Gage) Idle
Half Bridge Enable/Disable (Strain Gage, LVDT) Idle
Select Half Bridge Dummy Resistor (Strain Gage) Idle
Set/Query Thermocouple Type Idle
Assign a Limit Event Condition to a Channel Idle
Set LVDT Demodulator Source (LVDT) Idle
Recording
Manual Recording Mode Idle
Set Pre-Trigger Buffer Size for Manual Recording Idle
Set Time-Based Recording Mode Idle
Set Time-Based Recording Count Idle
Set Time-Based Recording Delay Idle
Set Time-Based Recording Skip Count Idle
Set Time-Based Recording Burst Count Idle
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Command Valid State
Idle
LVDT)
Calibrating
Idle
Page 11 of 142
Limits-Based Recording Setting Idle
Set Limits-Based Recording Mode Idle
Set Limits-Based Recording Skip Count Idle
Set Limits-Based Recording Burst Count Idle
Set Limits-Based Recording Burst Skip Count Idle
Scan
Set Scan Rate Idle
Create Scan List Idle
Set AutoStop Idle
Get Last Data File Information Idle
Set Scanner ID in Scan Header File Idle
Set Project Name in Scan Header File Idle
Set a Descriptor in Scan Header File Idle
Set a GUID in Scan Header File Idle
Set a IP Address in Scan Header File Idle
Set the Size of the Scan Buffer Idle
Limits
(Recording)
Set Limit Type Idle
Set Number of Limit Event Conditions Idle
Set Limit Event Condition Idle
Set Lower Limit Value Idle
Set Upper Limit Value Idle
Set Pre-Limit Buffer Size Idle
Set Post-Limit Buffer Size Idle
Ignore/Accept Sync (Global) Limits Idle
Set Pre-Limit Buffer Size for Sync (Global) Limits Idle
Set Post-Limit Buffer Size for Sync (Global) Limits Idle
System
Set Date/Time Idle
Get Free Space on Compact Flash on Control Module Idle
Configure Online Data Idle, Scanning
Define Scanner’s Network Configuration Idle
Verify Sync Cable Status Idle
Card Detect Idle
Clear Errors Idle
Get Control Module Information Command Idle
Display Flashing LED Sequence Idle
System Status Query ALL
Convert System Error Code to Text Idle, Armed, Scanning
Action
Arm Idle
Disarm Armed
Start Scaning Armed
Stop Scanning Scanning
Start Manual Recording Scanning
Stop Manual Recording Scanning
Start Online Data Transfer Scanning
Stop Online Data Transfer Scanning
Synchronize Network Scanners Armed
Start Scanning on Networked Scanners Scanning
File
Retrieve File from AIM Card Idle
List Files on AIM Card Idle
Delete File on AIM Card Idle
Cancel File Transfer Uploading
List Files on Control Module Idle
Retrieve File from Control Module Idle
Delete File from Control Module Idle
Table 4 – Command List
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 12 of 142
2.5 Debugging Tips
A packet sniffer (or analyzer) program is useful for monitoring the TCP and UDP traffic to and
from your System 7000(s).
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 13 of 142
3 PROGRAM LAYOUT
This section describes common commands and techniques for programming the scanner. It does not
include all possible commands or scenarios. Refer to the documentation for your selected programming
methodology for a complete listing of capabilities.
There are two standard methods of acquiring data from channels on the scanner. You can use both
methods of data acquisition in a single application.
1 – Scanning
Scanning is the process of arming the system and starting the acquisition of multiple channels at
the same scan rate.
Why choose scanning?
You wish to sample from multiple channels simultaneously
To record the data directly onto the System 7000 scanner
Your application requires high scan rates
You wish to monitor real-time data broadcast from the scanner
2 – Single-Point Reads
Single-point reads are a direct read of the analog-to-digital converter for a single channel.
Why choose single point reads?
You have a static system (low scan rate)
There is no need to read from more than one channel simultaneously.
Simplifies programming
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 14 of 142
3.1 Overview of Program Layout - Scanning
Figure 1 shows the flow of a typical program accessing the System 7000 scanner and performing
scanning.
Idle State
Idle State
Idle State
Armed State
Connect to System and
Validate
Perform Configuration
Arm
Start Scanning
Yes
Scanning State
Idle State
(Uploading State when
No
Data is transferred)
Idle State
Scanning
(Acquiring Data)
Stop Scanning
Download Recorded Data
(optional)
Decode and Scale
Recorded Data
(optional)
Acquire More
Data?
No
UDP Data
Disconnect from
Scanner
Monitor Real-Time Data
(optional)
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Yes
Change
Configuration?
Figure 1 – Program Layout (Scanning)
Page 15 of 142
3.2 Overview of Program Layout – Single Channel Reads
Figure 2 shows the flow of a typical program accessing the System 7000 scanner and performing single
channel readings (no scanning is performed).
Idle State
Connect to System and
Validate
Idle State
Perform Configuration
Idle State
Perform a Single Reading
on One or More Channels
Yes
NO
Scale Reading (optional)
Acquire More
Data?
Yes
Change
Configuration?
Figure 2 – Program Layout (Single Channel Reads)
No
Disconnect from
Scanner
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 16 of 142
3.3 Establishing a Connection to the Scanner
The first step in programming the System 7000 scanner is connecting to one or more of its TCP and UDP
ports.
TCP Command Port
You must connect to the command port in order to send commands to and receive responses
from the scanner.
You do not need to connect to this port if you are planning on using StrainSmart to control
the scanner and you only wish to perform monitoring of the UDP data.
TCP Data Port
Connection to this port is required if you wish to download file data or directory listings from
the scanner.
If you are not recording data on the scanner (i.e. you are only monitoring real-time data) or if
you do not wish to download files you do not have to connect to this port.
UDP Real-time (Online) Data Port
You must set your program up as a listener on the multicast broadcast from the System 7000
if you wish to monitor real-time data.
If you are not monitoring real-time data, you can ignore this data port.
UDP Event Port
You must set your program up as a listener on the multicast broadcast from the System 7000
if you wish to receive event, status, and error messages from the Scanner.
If you don’t wish to receive these messages, ignore this port. It is not required to receive
status and error messages via broadcast as you may query the system for status information
via a TCP command.
Information on configuring the system network connections is contained in the “System 7000 Instruction
Manual”. You may connect to more than System 7000 scanner in a single application.
Programming tips:
1) If you cannot establish TCP connection with a scanner, verify that you can successfully “Ping”
the IP address. If you cannot communicate with the scanner with the “Ping” command, your
program will be unable to communicate as well.
2) If you still cannot establish communication, verify that no other application is currently
connected to the scanner (such as StrainSmart or the System Calibration utility).
LabVIEW Connection to the scanner is done when you pass the VISA
Active X Connection to the scanner is done by setting the, IPAddress
Low-level Varies by language and environment
resource name of the command and data ports to the
Initialize VI.
CommandPort and DataPort properties then calling the
Open() method.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 17 of 142
3.4 System Validation
After you have successfully connected with the System 7000 you may wish to confirm the connection by
validating that you are, in fact, connected to a System 7000.
LabVIEW Use the ID Query parameter to the Initialize VI to
Active X The Open() method will automatically verify the connection
Low-level Verify the identifier string in the Get Control Module
automatically perform a check. Or you may call the Query
System Information VI.
or you may call the GetSystemInformation() method.
Information command.
3.5 Configuration
3.5.1 System Level Configuration
Certain system-level commands are useful (but not required) as part of configuration.
Set the System 7000 date and time:
This should be done as part of the system startup. For closest correlation with the personal
computer clock this can also be done as part of configuration before the system is armed.
LabVIEW Use the SetDateandTime parameter to the Initialize vi to
Active X SetDateTime method
Low-level Set Date/Time command.
Clear Errors:
Clears active card and system errors. It does not delete or clear the error log files.
LabVIEW Use the ClearErrors parameter to the Initialize vi to
Active X ClearErrors method
Low-level Clear Errors command.
Detect Cards:
Provides a listing of the slot locations where an I/O card is detected.
LabVIEW Detect Cards VI
Active X DetectCards method
Low-level Card Detect command
automatically set the date and time. You may also call the
Set Data and Time VI.
automatically clear errors. You may also call the Clear All
Errors VI.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 18 of 142
3.6 Card-level Configuration
Card-level configuration commands are performed on an individual I/O card. Any settings are applied to
all channels on the card. Instructions on how to determine the appropriate values for the settings is
beyond the scope of this manual, see the “System 7000 Instruction Manual”, the StrainSmart help system,
or contact the Vishay Micro-Measurements application engineering department for assistance.
All Cards
Query Card Type: If you have a scanner with a variety of cards, you may wish to query the
system to determine which card type (strain gage, high level, thermocouple, or LVDT) is in
each slot.
LabVIEW Query Card Information VI
Active X GetCardInformation method
Low-level Get Card Information command
Reset the Card: Resets the configuration values to the default state.
LabVIEW Use the ResetAimCards parameter to the Initialize vi to
Active X ResetCard method.
Low-level Reset Card command
Programming tip: This command should be used to set a card (and its channels) back to
the default states. This can be a useful shortcut in your program.
Strain Gage Cards
Configure the excitation settings.
LabVIEW Configure Strain Gage Card Excitation VI
Active X ConfigureStrainGageCardExcitation method
Low-level Set Excitation command
High Level Cards
Configure the excitation settings.
LabVIEW Configure High Level Card VI
Active X ConfigureHighLevelCardExcitation method
Low-level Set Excitation command
Thermocouple Cards
No card-level configuration
reset all cards. You may also call the Reset VI.
Excitation Output Enable/Disable command
(The excitation level should be set before the excitation
output is enabled.)
Excitation Output Enable/Disable command
(The excitation level should be set before the excitation
output is enabled.)
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 19 of 142
LVDT Cards
Set the frequency and enable the excitation voltage.
Note: There is interdependence between the excitation state and the demodulator source input
configuration. The System 7000 automatically sets the demodulator source to Positive Reference
when the excitation is disabled.
LabVIEW Configure LVDT Card Excitation VI
Active X ConfigureLVDTCardExcitation method
Low-level Set Excitation Frequency command
Set Excitation command
Excitation Output Enable/Disable command
(The excitation frequency and level commands should be
set before the excitation output is enabled.)
Programming tip: It is common to loop through all 16 (or 4) slots in the scanner. If the slot has a card
inserted, query the type of card, and perform the appropriate card-level configuration.
3.7 Channel-level Configuration
Channel-level commands are performed on an individual channel on the card. Remember there are
typically eight channels on a card and each must be set independently. Instructions on how to determine
the appropriate configuration settings is beyond the scope of this manual, see the “System 7000
Instruction Manual”, the StrainSmart help system, or contact the Vishay Micro-Measurements application
engineering department for assistance.
All Cards
You must assign a filter to each channel. The filter is based on the scan rate (sampling rate) of
the system. It is recommended that you use the default filter for the scan rate, though it is also
possible to enter your own 252 tap filter.
LabVIEW Configure Default Filter VI
Active X SetDefaultFilter method
Low-level Set Default Filter command
Strain Gage Cards
For strain gage cards you must configure the bridge settings.
LabVIEW Configure Strain Gage Channel Bridge Settings VI
Active X ConfigureStrainGageChannelBridgeSettings method
Low-level Enable/Disable Half Bridge command
Dummy Resistor Selection command
High Level Cards
No channel-level configuration
Thermocouple Cards
Define the thermocouple type
LabVIEW Configure Thermocouple Channel VI
Active X ConfigureThermocoupleChannel method
Low-level Set Thermocouple Type command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 20 of 142
LVDT Cards
Select the demodulator input source.
LabVIEW Configure LVDT Channel Input Connections VI
Active X ConfigureLVDTChannelInputConnections method
Low-level Enable/Disable Half Bridge command
Set LVDT Demodulator Source command
Programming tip: As you are looping through each card in the system, you may embed a loop that
indexes through each channel on the card and perform the channel-level configuration.
3.8 Configuring Scan Information
You must also program the scan rate and the scan list for each scanner. Please refer to the definition of
scan and scan rate.
Scan Rate
Static systems (those whose inputs change slowly) generally use a much lower scan rate than
dynamic systems (those whose inputs change rapidly). You should always attempt to match your
scan rate with the highest rate of change of your inputs.
The System 7000 has a base-10 and a base-2 master clock and you are provided with a selection
of scan rates for both clocks.
The scan rate must be the same for every card and scanner in the network.
Scan List
The scan list defines which channels will be read during scanning. For example if you have 2
cards in your system, you may only wish to take readings from the first channel on each card.
Therefore your scan list will include card 1:channel 1 and card 2:channel 1.
Scan Buffer Size
The scan buffer size defines the number of scans that may be stored in the scan buffer before the
data is written to the card’s compact flash. This effects how many scans may be specified for
pre-triggering.
There is a tradeoff when considering how to size your scan buffer. A larger scan buffer size
allows you to have a larger pre-trigger buffer for use in recording. However, having a smaller
scan buffer reduces the amount of data that may potentially be lost in the event of a catastrophic
power outage (as more data has been offloaded to secure memory). It is recommended to always
use the smallest scan buffer size possible for your application
LabVIEW Configure Scan VI
Active X ConfigureScan method
Low-level Set Scan Rate command
Create Scan List command
Set the Size of the Scan Buffer command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 21 of 142
3.9 Recording
Each card in the system has its own compact flash card and the card may be configured to store the
sampled data on the compact flash card. This data may be retrieved at the end of the scanning session.
There are three different methods for recording data. You may choose not to record data or combine one
or more of the methods.
3.9.1 Setting up Simple Recording
The most common types of recording are
1. Continuous Time-based Recording: Record all selected channels continuously at the scan rate.
Recording starts automatically when scanning starts and ends when scanning is stopped.
2. Continuous Manual Recording: Record all channels continuously at the scan rate. Recording
starts when a “Start Recording” command is received and stops when the “Stop Recording”
command is received.
Continuous Time-based Recording
To set up the System 7000 scanner for continuous time-based recording perform the following steps.
1. Assign all channels to a single recording group (group A).
2. Configure the time-based recording mode to be “Continuous”.
3. Set the time-based skip count, burst count, and burst skip count to 0.
4. Set the time-based delay and recording count to 0.
LabVIEW Configure Channel Recording Group VI
Active X SetChannelRecordingGroup method
Low-level Set Channel Recording Group command
Continuous Manual Recording
To set up the System 7000 scanner for continuous manual recording perform the following steps.
1. Assign all channels to recording group A.
2. Configure the manual recording mode to be “Continuous”.
3. Set the manual recording “pre-trigger” buffer size to 0.
LabVIEW Configure Channel Recording Group VI
Active X SetChannelRecordingGroup() method
Low-level Set Channel Recording Group command
Configure Time Based Recording VI
Configure Time Based Recording Start and Stop VI
Set Time-Based Recording Mode command
Set Time-Based Recording Count command
Set Time-Based Recording Delay command
Set Time-Based Recording Skip Count command
Set Time-Based Recording Burst Count command
Set Time-Based Recording Burst Skip Count command
Configure Manual Recording VI
ConfigureManualRecording() method
Set Manual Recording Mode command
Set Pre-trigger Buffer Size for Manual Recording command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 22 of 142
3.9.2 Advanced Recording Options
3.9.2.1Recording Groups
The System 7000 is capable of assigning every channel on a card to one of four recording groups (A-D).
This may be used as a means to assign different recording rates and configurations to channels. In other
words, even though all channel data is being acquired at the same rate you are capable of storing the data
with a variety of different rates and methods. The default for all channels is an assignment to group A.
Card Channel Group
1 1 A
2 A
3 A
4 A
5 B
6 B
7 B
8 B
2 1 A
2 B
3 C
4 D
5 A
6 B
7 C
8 D
3 1 C
2 C
3 C
4 C
5 D
6 D
7 D
8 D
Table 5
Because your scan rate is selected based upon the inputs with the highest rate of change, you may wish to
use multiple recording groups if you have some inputs that change more slowly. This reduces the amount
of data that is stored and improves system performance. A common scenario is when a system has
thermocouple inputs used to monitor the ambient temperature in addition to strain gage inputs. Because
temperatures may only change 2-3 degrees per hour the thermocouple inputs may be recorded at a slower
rate than the strain gage inputs.
In the figure below four traces are shown, each representing a unique record rate. For simplicity,
assume that only time-based recording is selected. Each point represents a recorded scan.
As an example, a scanner has three cards with the channels assigned
to groups as shown. Each channels assigned to group A is recording
at the scan rate (for example 1000 samples/sec). You may define all
the Group B channels to have a recording rate 0f 500 samples/sec,
Group C of 100 samples/sec, and Group D of 10 samples/sec.
It is recommended that you send the recording configuration for all
groups to all cards; if a card doesn’t have any channels in that group
then the configuration information isn’t used. In this way, all
channels in Group A share the same recording rate, all channels in
Group B share a rate, and so forth, regardless of card.
It is possible, but not recommended, to have the groups configured
differently on each card. This manual assumes that each recording
group is configured identically across all cards. All examples and
discussion are based on this assumption.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 23 of 142
Figure 3 – Example of Recording Groups
LabVIEW Configure Channel Recording Group VI
Active X SetChannelRecordingGroup method
Low-level Set Channel Recording Group command
3.9.2.2 Configuring Time Based Recording
Time-based recording is the type of data recording that is performed based on a time interval.
Group-level Recoding Options
The following recording options are configured based on a recording group (A-D).
Recording Mode
Time-based recording may be disabled (off) or set up to record continuously or intermittently (i.e.
in "bursts").
Off: Time-based recording is disabled
Continuous: When recording continuously, scans are recorded at a fixed rate for the
entire duration of the scan session.
Burst: In burst mode, recording may be scheduled to occur at certain intervals
throughout the scan. For example, you may specify to record a "burst" of 100 scans
every 2 minutes.
Skip Count
The skip count is used when the recording mode is “continuous” or “burst”. The skip count
allows you to specify how many scans to skip between each recorded scan. A value of 0 means
skip none (i.e. record each scan). A value of 1 means record every other scan, a value of 9 means
record every 10th scan, etc… This value is used in both continuous and burst recording modes.
If you would like to think in terms of a recording rate (i.e. record 1 scan every N secs), you can
calculate the number of scans to skip by:
For example if your scan rate is 10 scans/sec and you would like to record a scan every 5 seconds:
Skip_Count = (10 * 5) - 1 = 49 scans
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 24 of 142
And an example in different wording, if your scan rate is 2000 scans/sec (2kHz) and you would
like to record at a rate of 10 scans/sec (10Hz):
Skip_Count = (2000 /10) - 1 = 199 scans
Burst Count
The burst count is used when recording in burst mode and allows you to specify how many
recordings to store during each recording burst. It is used in conjunction with the burst skip count.
The burst count can be considered the “number of scans to record during each burst”.
For example, if your scan rate is 100 scans/sec and you would like to record 400 scans during
each burst, the burst count is simply 400.
You may also consider the burst from the perspective of “interval of time” and calculate the
number of scans to record as follows:
Burst_Count = (Recording_Rate * Record_Time)
For example if you have a scan rate of 100 scans/sec and you would like to record data for 5
seconds
Burst_Count = 100 * 5 = 500 scans
Burst Skip Count
This value is used when recording in Burst mode. It allows you to configure the interval between
each burst.
If you would like to schedule recording to occur at a recurring rate, calculate
For example if your scan rate is 10 scans/sec and you would like to have 2 scans recorded every 5
seconds
Burst_Skip_Count = (10 * 5) – 2 - 1 = 47 scans
LabVIEW Configure Time Based Recording VI
Active X ConfigureTimeBasedRecording method
Low-level Set Time-Based Recording Mode command
Set Time-Based Recording Skip Count command
Set Time-Based Recording Burst Count command
Set Time-Based Recording Burst Skip Count command
How to set up intermittent recording
You may combine the skip count, burst count, and burst skip count to set up intermittent
recording. For example, you have a scan rate of 2 kHz and wish to record at a rate of 1 kHz.
Further you wish to only perform recording for 30 seconds every 5 minutes. In other words, you
will record a 30 second “burst” of data every 5 minutes (300 seconds). That 30 second burst will
have a recording rate of 1000 samples/second. Calculate as follows:
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 25 of 142
Card-Level Recoding Options
The following time-based recording options are configured on a per card basis.
Recording Delay before Start
The number of scans to delay before recording of the data starts. A value of 0 means that the
scanner will start recording at the first scan, likewise, a value of 100 means that the scanner will
start recording at the 100th scan.
If you would like to delay a certain amount of time before recording starts you can calculate the
number of scans required to reach the time by:
Number of Scans to Delay = Scan_Rate * Time_Delay
For example if your scan rate is 10 scans/sec and you would like to delay 5 seconds before
recording starts
Number of Scans to Delay = 10scans/sec * 5 secs = 50 scans
Number of Scans to Record
Specifies the total number of scans to record. A value of 0 indicates that recording will not stop
until scanning stops! A value of 1000 means that you will stop recording after 1000 scans have
occurred. (To clarify, recording stops after the 1000th scan, not after 1000 scans have been
recorded.)
If you would like to record for a certain amount of time, you can calculate the number of scans
required to reach the time by:
Number of Scans to Record = Scan_Rate * Amount_of_Time
For example if your scan rate is 10 scans/sec and you would like to record for 30 seconds
Number of Scans to Record = 10 * 30 = 300 scans
LabVIEW Configure Time Based Recording Start and Stop VI
Active X ConfigureTimeBasedRecordingStartStop() method
Low-level Set Time-Based Recording Delay command
Set Time-Based Recording Count command
3.9.2.3 Configuring Manual Recording
Unlike time-based recording, manual recording does not start automatically. Manual recording on the
scanner starts when a “Start Manual Recording” command is received and ends when a “Stop Manual
Recording” command is received. Your program can tie these commands to a user input, a signal read
from another device, or similar.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 26 of 142
Manual Recording Mode
You have several manual recording mode options. Notice these are performed on a card level
(not a group level).
Off- Disables manual recording on the card
SingleShot- Configures the card to record one reading when a start manual recording
command is received. (There is no need to send a Stop Manual recording command.)
Continuous - Configures the card to record continuously after the manual recording is
started until manual recording is stopped
Manual Recording “Pre-Record” Buffer Size
The System 7000 buffers a defined number of scans. You may specify that when you send
the “Start Manual Recording” command to the scanner you would also like to record some
number of scans that occurred just previously. You must specify the number of “pre-record”
scans that you would like have recorded. For example, you send the “Start Recording”
command based on some external signal. The scanner receives the command when scan N is
being processed. But you want to allow for some amount of lag time between the event that
generated the signal and the “Start Recording” command being sent, so you specify that you
would also like to record the 5 most previous scans. In this case you would also be recording
scans N-5, N-4, N-3, N-2, N-1, as well as N and so on.
If you'd like to think of acquiring XX number of seconds of "pre-trigger" data, use the
following formula to convert time into scans.
NumScans = ScanRate * Time
LabVIEW Configure Manual Recording VI
Active X ConfigureManualRecording method
Low-level Manual Recording Mode command
Set Pre-trigger Buffer Size for Manual Recording command
3.9.2.4 Configuring Limits Recording
Because of the flexibility of our limits recording, this section contains a lot of inter-dependent information.
There are examples at the end of the section that tie much of the material together.
How Limits Work
In the following two figures we will use two channels shown below as green and red traces on a
chart. A purple line through the middle of the chart will represent the threshold above which a
limit condition will satisfied for each channel. Anytime the channel’s trace is above the line that
channel can be said to have satisfied (or tripped) a limit condition.
Figure 4 – Limits
Figure 4 shows when limits are satisfied in yellow.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 27 of 142
Trip Scan
A trip scan is the scan that satisfies a limit when no other limit is active. When a trip scan occurs
it is recorded on all channels regardless of the recording rate. Trip scans are always recorded
because they indicate which scan initiated limits-based recording. Notice how when the channel
represented as a red line crossed the threshold, it satisfied a limit but it did not cause a trip scan.
This is because limits-based recording is already active.
Figure 5 – Limit Trip Scans
Figure 5 shows 'trip scans' as yellow dots.
Defining Limits
In the System 7000 scanner defining limits is a four-step process. First define the limit conditions, next
define how you want the card to respond to a limits condition, then assign a limit condition to a channel,
and, lastly, configure how you want recording to occur based on that limit.
Defining Limit Conditions
The first step is defining a limit conditions table that is sent to each card in the system. The table
can hold up to 50 defined conditions. (Though only incremental limits type use more than 1
condition.) The following parameters are used to define this limit condition table.
Index
Index of a limit condition in the limit condition table
Test Condition
The test condition defines the test that will activate a limit.
None - This condition does not have a limit assigned.
Greater Than - Trip when the input reading is greater than the upper limit value.
Less Than - Trip when the input reading is less than the lower limit value.
Equal - Trip when the input reading is equal to the upper limit value.
Between - Trip when the input reading is between the two limit values specified.
Outside - Trip when the input reading is outside the range specified by the two limit
values.
Range -This condition is valid only when the Limits Type is set to Range mode. The
limit will be tripped when the input reading is within the specified range as defined
by the increment/decrement values.
Lower Limit
The lower limit value is used in checking the test condition. The lower limit is used by the
Less Than, Between, Outside, and Range conditions. This value is entered in analog-todigital converter counts.
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 28 of 142
Upper Limit
The upper limit value is used in checking the test condition. The upper limit is used by the
Greater Than, Equal, Between, Outside, and Range conditions. This value is entered in
analog-to-digital converter counts.
The System 7000 buffers a defined number of scans. You may specify that when a limit is
tripped you would also like to record some number of scans that occurred just previously.
You must specify the number of “pre-limit” scans that you would like to have recorded. If
you'd like to think of acquiring N number of seconds of "pre-limit" data, use the following
formula to convert time into scans.
NumScans = ScanRate * Time
Number of “Post-Limit” Scans
You may also specify some number of scans that should be recorded after the limit goes
inactive. If you'd like to think of acquiring N number of seconds of "post-limit" data, use the
following formula to convert time into scans.
NumScans = ScanRate * Time
Table 7 shows that
three limits are
defined.
This table should be
passed to each card
in the scanner. Note:
the indexes must be
assigned sequentially
(i.e. do not skip an index).
Index Condition Lower
Limit
Upper
Limit
Pre-Limit
Scans
Post-Limit
Scans
0 Greater Than not used 1000 100 0
1 Less Than 50 not used 0 0
2 Outside 700 800 0 0
:
:
None not used not used 0 0
None not used not used 0 0
49 None not used not used 0 0
Table 7
LabVIEW Configure Limit Condition VI
Active X ConfigureLimitCondition method
Low-level Set Limit Event Condition command
Set Lower Limit Value command
Set Upper Limit Value command
Set Pre-trigger Buffer Size command
Set Post-trigger Buffer Size command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 29 of 142
e. This limit type
trigger buffers are valid and are
Defining the Type of Limit (how limit’s are handled by a card)
The Limit Type defines the style of limit handling performed by a card. (The limit type is the
same for all channels on a card.)
None:
Normal:
Limit conditions will not be checked.
Normal limits type allows varying methods of recording.
Examples: Record continuously when my temperature sensor indicates
greater than 100° or record while my strain gage sensor indicates a value
between 800 and 900 µStrain.
Incremental:
Allows limits to be defined with multiple sets of conditions that are
evaluated in a defined sequence. As a limit condition is met, the card
begins checking for the next limit condition in the sequenc
is often used for load or hysteresis testing. The recording type is ignored as
it is assumed to be singleshot. Pre-and postuseful in defining a fixed number of scans to be recorded at each limit.
Examples: Record 1 scan when my load cell indicates a value greater than
100 kilograms, then record 1 scan when my load cell indicates greater than
250 kgs, and finally when greater than 500 kgs.
Range:
In this mode, the card considers the first scan to trip the first limit. When
the input values shift upward or downward by the specified range, the next
limit condition is tripped. This occurs throughout the duration of scanning.
The recording type is ignored as it is assumed to be singleshot. Pre-and
post-trigger buffers are valid and are useful in defining a fixed number of
scans to be recorded at each limit.
Example: Record the first scan, then record 1 scan every time my
transducer sees another 100 kilograms added or removed.
LabVIEW Configure Limits Type VI
Active X SetLimitType method
Low-level Set Limit Type command
Assigning Limit Conditions to a Channel
Assigning the Number of Limit Conditions to a Channel
After you have defined your table of limit conditions, you should assign each limit condition to
one or more channels. The channel that is assigned the condition is the channel whose value is
monitored and compared. You may assign a single limit condition to multiple channels.
If a Normal or Range type limit is active, a channel may only have one limit condition assigned.
So the channel's limit index of 0 may be assigned to any of the 50 definable limit conditions
For Incremental limits, a channel may be associated with up to 50 limit conditions.
(i.e. channel limit indexes 0 through 49 may be assigned to any of the 50 definable limit
conditions). Note: these limits must be assigned sequentially (i.e. no channel limit indexes may
be skipped)
You must also separately define how many limit conditions are assigned to this channel ( 0
through 49).
LabVIEW Assign Limit Condition to Channel VI
Active X AssignLimitToChannel method
Low-level Assign a Limit Event Condition to a Channel command
Configure Number of Limit Conditions VI
SetLimitConditionCount method
Set Number of Limit Event Conditions command
Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 30 of 142
Loading...
+ 112 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.