Vishay 7000 User manual

Vishay Micro-Measurements
P. O. Box 27777, Raleigh, North Carolina, 27611, USA Phone (919) 365-3800 Fax (919) 365-3945 www.vishay.com
System 7000 Scanner
Programmer’s Reference Manual
Version 1.01
130-000197
D
ocument Number:
49897

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 2 of 142
TABLE OF CONTENTS
1 INTRODUCTION __________________________________________________________________________7
1.1 OVERVIEW _____________________________________________________________________________7
1.2 PROGRAMMING OPTIONS __________________________________________________________________7
1.2.1 StrainSmart and DCOM_______________________________________________________________7
1.3 DEFINITION OF TERMS ____________________________________________________________________8
1.4 DOCUMENT NOTATION AND CONVENTIONS ____________________________________________________8
1.4.1 Numbering Notation__________________________________________________________________8
1.4.2 Referenced VIs, Methods, and Commands_________________________________________________8
1.5 REGISTERED TRADEMARK NOTICES __________________________________________________________9
2 PROGRAMMING OVERVIEW _____________________________________________________________10
2.1 COMMUNICATING WITH THE SYSTEM 7000____________________________________________________10
2.2 ACCESSING MULTIPLE SCANNERS (SYNCHRONIZATION) _________________________________________10
2.3 SYSTEM STATES ________________________________________________________________________11
2.4 COMMAND OVERVIEW ___________________________________________________________________11
2.5 DEBUGGING TIPS _______________________________________________________________________13
3 PROGRAM LAYOUT _____________________________________________________________________14
3.1 OVERVIEW OF PROGRAM LAYOUT -SCANNING ________________________________________________15
3.2 OVERVIEW OF PROGRAM LAYOUT –SINGLE CHANNEL READS ____________________________________16
3.3 ESTABLISHING A CONNECTION TO THE SCANNER _______________________________________________17
3.4 SYSTEM VALIDATION ____________________________________________________________________18
3.5 CONFIGURATION________________________________________________________________________18
3.5.1 System Level Configuration ___________________________________________________________18
3.6 CARD-LEVEL CONFIGURATION _____________________________________________________________19
3.7 CHANNEL-LEVEL CONFIGURATION __________________________________________________________20
3.8 CONFIGURING SCAN INFORMATION _________________________________________________________21
3.9 RECORDING ___________________________________________________________________________22
3.9.1 Setting up Simple Recording __________________________________________________________22
3.9.2 Advanced Recording Options__________________________________________________________23
3.9.2.1 Recording Groups _______________________________________________________________________ 23
3.9.2.2 Configuring Time Based Recording__________________________________________________________ 24
3.9.2.3 Configuring Manual Recording _____________________________________________________________ 26
3.9.2.4 Configuring Limits Recording ______________________________________________________________ 27
3.10 ACQUIRING A SINGLE-POINT CHANNEL READING _____________________________________________35
3.11 ARMING,START SCANNING,AND STOP SCANNING_____________________________________________35
3.12 SYNCHRONIZED (NETWORKED)SCANNERS __________________________________________________35
3.13 STARTING AND STOPPING MANUAL RECORDING ______________________________________________37
3.14 ACQUIRING AND DECODING RECORDED DATA________________________________________________38
3.14.1 Identifying and Reading the Data File__________________________________________________38
3.14.2 Decoding the Data File _____________________________________________________________41
3.14.2.1 Scan ID_______________________________________________________________________________ 41
3.14.2.2 Multiple Record Rates ___________________________________________________________________ 42
3.14.2.3 Varying Data Width _____________________________________________________________________ 42
3.14.2.4 Status Information ______________________________________________________________________ 43
3.14.2.5 Status Byte ____________________________________________________________________________ 43
3.14.2.6 Examples _____________________________________________________________________________ 44
3.14.2.7 Sample Code __________________________________________________________________________ 45
3.14.3 How Data Files are Named __________________________________________________________48
3.14.4 What is a Header File? _____________________________________________________________48
3.15 ACQUIRING REAL-TIME (ONLINE)DATA ____________________________________________________49
3.15.1 Configuring the Real-time (Online) Data Transmission ____________________________________49
3.15.2 Controlling the Real-time (Online) Data Transmission _____________________________________49
3.15.3 Parsing the Real-time (Online) Data ___________________________________________________50
3.16 ZEROING AND SHUNT CALIBRATION________________________________________________________50
3.17 SCALING THE ANALOG-TO-DIGITAL CONVERTER COUNTS_______________________________________52

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 3 of 142
4 SYSTEM STATUS AND ERROR HANDLING ________________________________________________53
4.1 ERROR HANDLING ______________________________________________________________________53
4.2 DECODING THE ERROR NUMBER____________________________________________________________54
4.3 QUERYING SYSTEM STATUS _______________________________________________________________54
4.4 MONITORING THE EVENT/STATUS UDP PORT _________________________________________________54
4.4.1 Message Format____________________________________________________________________55
4.4.2 Card Status Message ________________________________________________________________55
4.4.3 Card Error Message ________________________________________________________________56
4.4.4 Control Module Error Messages _______________________________________________________56
5 LABVIEW INSTRUMENT DRIVER _________________________________________________________57
5.1 OVERVIEW ____________________________________________________________________________57
5.2 SYSTEM 7000 INSTRUMENT DRIVER _________________________________________________________57
5.2.1 System 7000 Instrument Driver Layout __________________________________________________57
5.2.2 System 7000 Instrument Driver Examples ________________________________________________58
5.2.3 System 7000 Instrument “Readme.html” _________________________________________________58
5.2.4 Supported LabVIEW Versions _________________________________________________________58
6 ACTIVEX INTERFACE ___________________________________________________________________59
6.1 ACTIVE XINTERFACES ___________________________________________________________________59
6.2 ERROR CODES__________________________________________________________________________59
6.3 CARD MASK,CHANNEL MASK,AND RECORDING GROUP MASK NOTATION __________________________60
6.4 SAMPLE PROGRAMS _____________________________________________________________________61
6.4.1 Delphi Sample Program______________________________________________________________61
6.4.2 Visual C# Sample Program ___________________________________________________________61
6.4.3 LabWindows/CVI Sample Program _____________________________________________________61
6.5 IVMM7000CONTROL INTERFACE DESCRIPTION _______________________________________________62
6.5.1 Properties_________________________________________________________________________62
6.5.1.1 IPAddress Property (Read/Write) ___________________________________________________________ 62
6.5.1.2 CommandPort Property (Read/Write) ________________________________________________________ 62
6.5.1.3 DataPort Property (Read/Write)_____________________________________________________________ 62
6.5.1.4 LastErrorCode Property (Read/Write) ________________________________________________________ 63
6.5.1.5 CommandPortTimeout Property (Read/Write)__________________________________________________ 63
6.5.1.6 DataPortTimeout Property (Read/Write) ______________________________________________________ 64
6.5.2 Connection Methods_________________________________________________________________65
6.5.2.1 Open Method ___________________________________________________________________________ 65
6.5.2.2 Close Method ___________________________________________________________________________ 65
6.5.3 Action - Status Group________________________________________________________________66
6.5.3.1 Arm Method____________________________________________________________________________ 66
6.5.3.2 Disarm Method _________________________________________________________________________ 66
6.5.3.3 StartScanning Method ____________________________________________________________________ 67
6.5.3.4 StopScanning Method ____________________________________________________________________ 67
6.5.3.5 ControlManualRecording Method ___________________________________________________________ 68
6.5.3.6 ControlOnlineDataTransfer Method _________________________________________________________ 68
6.5.3.7 GetSystemState Method___________________________________________________________________ 69
6.5.3.8 GetSyncStatus Method____________________________________________________________________ 69
6.5.3.9 SynchronizeNetworkedScanners Method______________________________________________________ 70
6.5.3.10 StartSynchronizedScanning Method ________________________________________________________ 71
6.5.4 Configuration Group ________________________________________________________________72
6.5.4.1 ConfigureTimeBasedRecording Method ______________________________________________________ 72
6.5.4.2 ConfigureTimeBasedRecordingStartandStop Method ____________________________________________ 72
6.5.4.3 ConfigureManualRecording Method _________________________________________________________ 73
6.5.4.4 SetChannelRecordingGroup Method _________________________________________________________ 74
6.5.4.5 SetLimitType Method ____________________________________________________________________ 74
6.5.4.6 SetLimitsBasedRecordingType Method_______________________________________________________ 75
6.5.4.7 ConfigureLimitsBasedRecording____________________________________________________________ 75
6.5.4.8 ConfigureLimitCondition method ___________________________________________________________ 76
6.5.4.9 SetLimitConditionCount Method____________________________________________________________ 77
6.5.4.10 AssignLimitToChannel Method____________________________________________________________ 78
6.5.4.11 ConfigureGlobalLimit Method_____________________________________________________________ 78
6.5.4.12 ConfigureScan Method __________________________________________________________________ 80
6.5.4.13 ConfigureStrainGageCardExcitation Method _________________________________________________ 81

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 4 of 142
6.5.4.14 ConfigureStrainGageChannelBridgeSettings Method ___________________________________________ 81
6.5.4.15 ConfigureHighLevelCardExcitation Method __________________________________________________ 82
6.5.4.16 ConfigureThermocoupleChannel Method ____________________________________________________ 82
6.5.4.17 ConfigureLVDTCardExcitation Method _____________________________________________________ 83
6.5.4.18 ConfigureLVDTChannelInputConnections Method ____________________________________________ 84
6.5.4.19 SetDefaultFilter Method__________________________________________________________________ 84
6.5.4.20 SetFIRFilterCoefficients Method ___________________________________________________________ 85
6.5.4.21 SetDateTimeMethod ____________________________________________________________________ 86
6.5.4.22 ConfigureOnlineDataTransfer Method_______________________________________________________ 86
6.5.4.23 SetScannerNetworkConfiguration Method ___________________________________________________ 87
6.5.4.24 SetBoxID Method ______________________________________________________________________ 88
6.5.5 Data _____________________________________________________________________________89
6.5.5.1 GetStaticADCReading Method _____________________________________________________________ 89
6.5.5.2 GetLastDataFileInformation Method _________________________________________________________ 89
6.5.6 Utilities___________________________________________________________________________91
6.5.6.1 GetControlModuleInformation Method _______________________________________________________ 91
6.5.6.2 GetFreeSpace Method ____________________________________________________________________ 92
6.5.6.3 GetCardStatusMethod ____________________________________________________________________ 92
6.5.6.4 DetectCards Method______________________________________________________________________ 93
6.5.6.5 GetCardInformation Method _______________________________________________________________ 94
6.5.6.6 Flash System LEDs Method________________________________________________________________ 95
6.5.6.7 ResetCard Method _______________________________________________________________________ 95
6.5.6.8 ShuntCalEnable Method __________________________________________________________________ 96
6.5.6.9 RemoteCalEnable Method _________________________________________________________________ 96
6.5.6.10 ClearErrors Method _____________________________________________________________________ 97
6.5.6.11 GetErrorMessage Method ________________________________________________________________ 97
6.5.6.12 RetrieveFile Method_____________________________________________________________________ 98
6.5.6.13 RetrieveLastDataFile Method _____________________________________________________________ 98
6.5.6.14 ListFiles Method _______________________________________________________________________ 99
6.5.6.15 DeleteFile Method ______________________________________________________________________ 99
6.5.6.16 DeleteLastDataFile Method ______________________________________________________________ 100
6.5.6.17 CancelFileTransferMethod_______________________________________________________________ 100
6.6 IVMM7000DATATRANSFERSTATUS INTERFACE DESCRIPTION ___________________________________101
6.6.1 Properties________________________________________________________________________101
6.6.1.1 BytesTransferred Property (Read/Write) _____________________________________________________ 101
6.6.1.2 PercentComplete Property (Read/Write) _____________________________________________________ 101
6.6.1.3 TotalBytes Property (Read/Write) __________________________________________________________ 102
6.6.1.4 ErrorStatus Property (Read/Write)__________________________________________________________ 102
6.6.1.5 TransferComplete Property (Read/Write) ____________________________________________________ 102
7 LOW-LEVEL COMMAND SET____________________________________________________________103
7.1 CARD AND CHANNEL MASK NOTATION _____________________________________________________103
7.2 COMMAND/QUERY SYNTAX ______________________________________________________________104
7.3 RESPONSE SYNTAX _____________________________________________________________________104
7.3.1 Example Responses ________________________________________________________________105
7.4 COMMAND DESCRIPTIONS _______________________________________________________________106
7.4.1 Action Group _____________________________________________________________________106
7.4.1.1 Start Scanning Command_________________________________________________________________ 106
7.4.1.2 Stop Scanning Command_________________________________________________________________ 106
7.4.1.3 Start Manual Recording Command _________________________________________________________ 106
7.4.1.4 Stop Manual Recording Command _________________________________________________________ 106
7.4.1.5 Arm Command_________________________________________________________________________ 107
7.4.1.6 Disarm Command ______________________________________________________________________ 107
7.4.1.7 Start Online Data Transfer ________________________________________________________________ 107
7.4.1.8 Stop Online Data Transfer ________________________________________________________________ 107
7.4.1.9 Synchronize Networked Scanners __________________________________________________________ 108
7.4.1.10 Start Scanning on Networked Scanners _____________________________________________________ 108
7.4.2 Recording Group __________________________________________________________________109
7.4.2.1 Manual Recording Mode _________________________________________________________________ 109
7.4.2.2 Set Pre-trigger Buffer Size for Manual Recording Command _____________________________________ 109
7.4.2.3 Set Time-Based Recording Mode Command__________________________________________________ 110
7.4.2.4 Set Time-Based Recording Count Command _________________________________________________ 110
7.4.2.5 Set Time-Based Recording Delay Command__________________________________________________ 111
7.4.2.6 Set Time-Based Recording Skip Count Command _____________________________________________ 111

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 5 of 142
7.4.2.7 Set Time-Based Recording Burst Count Command_____________________________________________ 112
7.4.2.8 Set Time-Based Recording Burst Skip Count Command_________________________________________ 112
7.4.2.9 Set Limits-Based Recording Setting ________________________________________________________ 113
7.4.2.10 Set Limits-Based Recording Mode Command________________________________________________ 113
7.4.2.11 Set Limits-Based Recording Skip Count Command ___________________________________________ 114
7.4.2.12 Set Limits-Based Recording Burst Count Command___________________________________________ 114
7.4.2.13 Set Limits-Based Recording Burst Skip Count Command_______________________________________ 115
7.4.3 Scan Group ______________________________________________________________________116
7.4.3.1 Set Scan Rate Command _________________________________________________________________ 116
7.4.3.2 Create Scan List Command _______________________________________________________________ 116
7.4.3.3 AutoStop Command_____________________________________________________________________ 117
7.4.3.4 Get Last Data File Info___________________________________________________________________ 117
7.4.3.5 Set Box ID from Scan Header Command ____________________________________________________ 118
7.4.3.6 Set Project Name to Scan Header File Command ______________________________________________ 118
7.4.3.7 Set Scan Session Descriptor to Scan Header File Command ______________________________________ 118
7.4.3.8 Set Scan Session GUID to Scan Header File Command _________________________________________ 119
7.4.3.9 Set Scan Session IP Address to Scan Header File Command _____________________________________ 119
7.4.3.10 Set the Size of the Scan Buffer____________________________________________________________ 119
7.4.4 Limits Group _____________________________________________________________________120
7.4.4.1 Set Limit Type Command ________________________________________________________________ 120
7.4.4.2 Set Number of Limit Event Conditions Command _____________________________________________ 120
7.4.4.3 Set Limit Event Condition Command _______________________________________________________ 121
7.4.4.4 Set Lower Limit Value Command __________________________________________________________ 121
7.4.4.5 Set Upper Limit Value Command __________________________________________________________ 122
7.4.4.6 Set Pre-trigger Buffer Size Command _______________________________________________________ 122
7.4.4.7 Set Post-trigger Buffer Size Command ______________________________________________________ 122
7.4.4.8 Ignore or Accept Sync (Global) Limits ______________________________________________________ 123
7.4.4.9 Set Pre-trigger Buffer Size Command for Sync (Global) Limits ___________________________________ 123
7.4.4.10 Set Post-trigger Buffer Size Command for Sync (Global) Limits _________________________________ 123
7.4.5 Card Group ______________________________________________________________________124
7.4.5.1 Get Card Information Command (AIM/Interface Card)__________________________________________ 124
7.4.5.2 Set Excitation Command _________________________________________________________________ 125
7.4.5.3 Get Free Space Command ________________________________________________________________ 125
7.4.5.4 Card Status____________________________________________________________________________ 126
7.4.5.5 Card Reset ____________________________________________________________________________ 126
7.4.5.6 Excitation Output Enable/Disable __________________________________________________________ 127
7.4.5.7 Aim Temperature Sensor Query____________________________________________________________ 127
7.4.5.8 Set LVDT Excitation Frequency ___________________________________________________________ 127
7.4.6 Channel Group____________________________________________________________________128
7.4.6.1 Asynchronous Read A/D Converter Command ________________________________________________ 128
7.4.6.2 Set Channel Recording Group Command ____________________________________________________ 128
7.4.6.3 Set FIR Filter Command _________________________________________________________________ 128
7.4.6.4 Shunt Calibration Resistor Enable / Disable __________________________________________________ 129
7.4.6.5 Dummy Resistor Selection________________________________________________________________ 129
7.4.6.6 Enable Half-Bridge _____________________________________________________________________ 129
7.4.6.7 Remote Calibration Resistor Enable Disable __________________________________________________ 130
7.4.6.8 Set / Query Thermocouple Type ___________________________________________________________ 130
7.4.6.9 Assign a Limit Event Condition to a Channel(s) _______________________________________________ 131
7.4.6.10 Set Default Filter Command______________________________________________________________ 131
7.4.6.11 Set LVDT Demodulator Source___________________________________________________________ 132
7.4.7 File Group _______________________________________________________________________133
7.4.7.1 Retrieve File___________________________________________________________________________ 133
7.4.7.2 List Files______________________________________________________________________________ 134
7.4.7.3 Delete File ____________________________________________________________________________ 134
7.4.7.4 Cancel File Transfer_____________________________________________________________________ 135
7.4.7.5 List Files in Control Module ______________________________________________________________ 135
7.4.7.6 Retrieve File from Control Module _________________________________________________________ 135
7.4.7.7 Delete File from Control Module___________________________________________________________ 136
7.4.7.8 Verify the Checksum of a Control Module File ________________________________________________ 136
7.4.8 System Group _____________________________________________________________________137
7.4.8.1 Set Date/Time _________________________________________________________________________ 137
7.4.8.2 Set IP Configuration Information___________________________________________________________ 138
7.4.8.3 Get Free Space Command ________________________________________________________________ 138
7.4.8.4 Configure Online Data ___________________________________________________________________ 139
7.4.8.5 Define Scanner’s Network Configuration ____________________________________________________ 139

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 6 of 142
7.4.8.6 Verify Sync Cable Status _________________________________________________________________ 140
7.4.8.7 Card Detect ___________________________________________________________________________ 140
7.4.8.8 Clear Errors ___________________________________________________________________________ 140
7.4.8.9 Get Control Module Information Command (Control Module) ____________________________________ 141
7.4.8.10 Display Flashing LED Sequence __________________________________________________________ 141
7.4.8.11 Clear Errors __________________________________________________________________________ 142
7.4.8.12 System Status Query ___________________________________________________________________ 142
7.4.8.13 Get Error Message from Error Code _______________________________________________________ 142
8 WARRANTY ____________________________________________________________________________143

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 7 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.
National Instruments LabVIEW instrument driver
ActiveX automation interface
Low-level TCP commands
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 8 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 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.
Scan ID 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…)
Scan Rate The rate at which scans are acquired. This can also be thought of as the sampling
rate.
I/O Card or AIM
Card
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 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,
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
Stop Manual Recording command
Decimal
Hexadecimal
Binary
10 0x0A 0b00001010

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 9 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 10 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 11 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
Command Valid State
Card
Get Card Information Idle, Armed, Scanning
Set Excitation (Strain Gage, High Level, LVDT) Idle
Excitation Output Enable/Disable (Strain Gage, High Level,
LVDT)
Idle
Get Free Space on Compact Flash Idle, Armed, Scanning
Get Card Status Idle, Armed, Scanning,
Calibrating
Card Reset Idle
Set/Query LVDT Excitation Frequency (LVDT) Idle
Query Temperature Sensor Idle
Channel Idle
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
Page 12 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 13 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 14 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 15 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.
Perform Configuration
Arm
Scanning
(Acquiring Data)
Download Recorded Data
(optional)
Monitor Real-Time Data
(optional)
UDP Data
Idle State
Armed State
Scanning State
Idle State
(Uploading State w en
Data is transferred)
Connect to System and
Validate
Idle State
Acquire More
Data?
C ange
Configuration?
Yes
Disconnect from
Scanner
No
No
Decode and Scale
Recorded Data
(optional)
Idle State
Idle State
Start Scanning
Stop Scanning
Yes
Figure 1 – Program Layout (Scanning)

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 16 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).
Perform Configuration
Idle State
Connect to System and
Validate
Idle State
Acquire More
Data?
C ange
Configuration?
Yes
Disconnect from
Scanner
No
Yes
NO
Perform a Single Reading
on One or More C annels
Idle State
Scale Reading (optional)
Figure 2 – Program Layout (Single Channel Reads)

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 17 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
resource name of the command and data ports to the
Initialize VI.
Active X Connection to the scanner is done by setting the, IPAddress
CommandPort and DataPort properties then calling the
Open() method.
Low-level Varies by language and environment

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 18 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
automatically perform a check. Or you may call the Query
System Information VI.
Active X The Open() method will automatically verify the connection
or you may call the GetSystemInformation() method.
Low-level Verify the identifier string in the Get Control Module
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
automatically set the date and time. You may also call the
Set Data and Time VI.
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
automatically clear errors. You may also call the Clear All
Errors VI.
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

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 19 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
reset all cards. You may also call the Reset VI.
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
Excitation Output Enable/Disable command
(The excitation level should be set before the excitation
output is enabled.)
High Level Cards
Configure the excitation settings.
LabVIEW Configure High Level Card VI
Active X ConfigureHighLevelCardExcitation method
Low-level Set Excitation command
Excitation Output Enable/Disable command
(The excitation level should be set before the excitation
output is enabled.)
Thermocouple Cards
No card-level configuration

Vishay Micro-Measurements System 7000 Programmer’s Reference Manual
Page 20 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
Table of contents