Page 1
VT1422A Remote Channel Multi-Function DAC Module with VT1529A/B 32 Ch Remote Strain Conditioning Unit and VT1539A Remote Channel Signal Conditioning Plug-On User’s and SCPI Programming Manual Where to Find it - Online and Printed Information Module configuration and wiring....... This Manual SCPI programming..........
FITNESS FOR A PARTICULAR PURPOSE. 8. VXI Technology will be liable for damage to tangible property per incident up to the greater of $300,000 or the actual amount paid for the product that is the subject of the claim and for damages for bodily injury or death, to the extent that all such damages are determined by a court of competent jurisdiction to have been directly caused by a defective VXI Technology product.
DO NOT substitute parts or modify equipment: Because of the danger of introducing additional hazards, do not install substitute parts or perform any unauthorized modification to the product. Return the product to VXI Technology for service and repair to ensure that safety features are maintained.
Dips: 30% 10ms; 60% 100 ms Interrupt > 95%@5000 ms Canada: ICES-001:1998 Australia/New Zealand: AS/NZS 2064.1 The product was tested in a typical configuration with VXI Technology test systems. Safety IEC 61010-1:1990+A1:1992+A2:1995 / EN 61010-1:1993+A2:1995 Canada: CSA C22.2 No. 1010.1:1992...
Page 6
Canada ICES-001 Australia AS/NZS/2064 Russia GOST 23450-79 Czech Republic CSN EN55011 Hungary MSZ EN55011 The product was tested in a typical configuration with VXI Technology test systems. Safety IEC 61010-1:1990+A1:1992+A2:1995 / EN 61010-1:1993+A2:1995 Canada: CSA C22.2 No. 1010.1:1992 UL 3111-1...
Page 7
Australia/New Zealand AS/NZS/2064.1 Russia GOST 23450-79 Czech Republic CSN EN 55011 Hungary MSZ EN 55011 The product was tested in a typical configuration with VXI Technology test systems. Safety IEC 61010-1:1990+A1:1992+A2:1995 / EN 61010-1:1993+A2:1995 Canada: CSA C22.2 No. 1010.1:1992 UL 3111-1: 1994...
Page 10
Attaching and Removing the VT1422A RJ-45 Module ....53 Adding Components to the Terminal Module ......54 Spring and Screw Terminal Module Wiring Maps .
Page 11
Performing Channel Calibration (Important!)......122 Calibrating the VT1422A ........122 Calibrating Remote Signal Conditioning Units .
Page 12
Chapter 5 Advanced Programming with the VT1529B ......161 About This Chapter ..........161 Additional Capabilities of the VT1529B .
Page 13
Defining Algorithms (ALG:DEF)........196 ALG:DEFINE in the Programming Sequence .
Support Resources Support resources for this product are available on the Internet and at VXI Technology customer support centers. VXI Technology World Headquarters VXI Technology, Inc. 2031 Main Street Irvine, CA 92614-6509 Phone: (949) 955-1894 Fax: (949) 955-3041 VXI Technology Cleveland Instrument Division VXI Technology, Inc.
Chapter 1 Getting Started About this Chapter This chapter will explain hardware configuration before installation in a VXIbus mainframe. By attending to each of these configuration items, the VT1422A won't have to be removed from its mainframe later. Chapter contents include: •...
Page 24
Setting the Logical Follow the next figure and ignore any switch numbering printed on the Address Switch Logical Address switch. When installing more than one VT1422A in a single VXIbus Mainframe, set each instrument to a different Logical Address. Setting the Logical Address Switch Default Switch Setting Logical Address = 208 24 Getting Started...
Installing Signal The following illustrations show the steps used to install Signal Conditioning Conditioning Plug-ons (SCPs). Before installing an SCPs, reading the "Separating Digital and Analog SCP Signals" in Appendix E page 483 is Plug-Ons recommended. Caution Use approved Static Discharge Safe handling procedures anytime the covers are removed from the VT1422A or when handling the SCPs.
Page 26
Installing SCPs: Step 2, Mounting an SCP CAUTION Use approved Static Discharge handling procedures when handling the VT1422A Multifunction DAC Modules and the SCPs Tighten the SCP Retaining Screws Align the SCP connectors with the Module connectors and then push in 26 Getting Started Chapter 1...
Page 27
Installing SCPs: Step 3, Reinstalling the Cover VT1422A Line up the 3 Tabs with the 3 Slots; then lower cover onto the Module Tighten 2 Screws Chapter 1 Getting Started...
Page 28
Installing SCPs: Step 4, Labeling Peel off correct Label from Card and Stick on the appropriate place on the Cover Terminal Module (Connect to A/D Module Later) Stick-on Label furnished with the SCP (Part Number: 43-0133-xxx) Peel off Label from Card and Stick on the Terminal Module to be...
Page 29
Disabling the Disabling the Input Protect feature voids the VT1422A's warranty. The Input Input Protect Protect feature allows the VT1422A to open all channel input relays if any input's voltage exceeds ±19 volts (±6 volts for digital I/O SCPs). This feature will help to Feature protect the card's Signal Conditioning Plug-ons, input multiplexer, ranging (Optional)
Page 30
Accessing and Locating JM2201 and JM2202 VT1422A Flash Memory Protect Jumper Default = PROG (recommended) JM2201 JM2202 1 Locate 2 Cut 3 Bend Input Protect Jumper Warning: Cutting this Jumper Voids Your Warranty! 30 Getting Started Chapter 1...
Installing the Module Installation of the VT1422A VXI module is covered in the mainframe manual. WARNING All instruments within the VXI mainframe are grounded through the mainframe chassis. During installation, tighten the instrument's retaining screws to secure the instrument to the mainframe and to make the ground connection.
#include <stdlib.h> #include <string.h> #include <hpe1422.h> /* include the driver header file */ /* GPIB-VXI addressing (0 is the interface number, 208 is the */ /* instrument logical address, INSTR is a VISA resource type) */ #define INSTR_ADDRESS "GPIB-VXI0::208::INSTR" ViSession addr;...
return; rst_inst(); /* Resets the instrument and sends a device clear */ reads_instrument_id(); /* Reads instrument software revision */ /* close the device session */ hpe1422_close(addr); /****************************************************************************/ void rst_inst(void) /* Function to set the interface timeout period, resets the instrument, */ /* waits for completion of reset and sends a device clear to enable */ /* the instrument to receive a new command */ ViInt32 result;...
Chapter 2 Field Wiring About This Chapter This chapter shows how to plan and connect field wiring to the VT1422A's Terminal Module. The chapter explains proper connection of analog signals to the VT1422A, both two-wire voltage type and four-wire resistance type measurements.
Terminal Module Position 0 (on-board addresses 00-07) Position 1 (on-board addresses 08-15) Note: Each channel line represents Position 2 Both a Hi and Lo signal line. (on-board addresses 16-23) Position 3 (on-board addresses 24-31) Range Amp 16-Bits Converter Position 4 (on-board addresses 32-39) Position 5 (on-board addresses 40-47)
Sense SCPs and Some SCPs provide input signal conditioning (sense SCPs such as filters Output SCPs and amplifiers) while others provide stimulus to the measurement circuit (output SCPs such as current sources and strain bridge completion). In general, channels at output SCP positions are not used for external signal sensing but are paired with channels of a sense SCP.
Page 38
Planning for Using either the Screw Terminal or Spring Terminal Modules, Thermocouple thermocouples and the thermocouple reference temperature sensor can be wired to any of the VT1422A's channels. When the scan list is executed, one Measurements must ensure that the reference temperature sensor is specified in the channel sequence before any of the associated thermocouple channels.
Page 39
Faceplate Connector Pin-Signal Lists Figure 2-3 shows the Faceplate Connector Pin Signal List for the VT1422A. Count Count From From Bottom HOHM LOHM HCAL LCAL HCAL HCAL LCAL LCAL HOHM HOHM LOHM LOHM TST-A SYSF VT1422A Figure 2-3. VT1422A Faceplate Connector Pin Signals Chapter 2 Field Wiring...
Optional Terminal and Connector Modules The VT1422A is comprised of the main A/D module and optionally, a Connector or Terminal Module. The Option 001 Connector Module provides sixteen RJ-45 jacks to allow easy connection of the VT1422A to Remote Signal Conditioning Units (RSCUs) like the VT1529A/B Remote Strain Conditioning Unit.
Page 41
The RJ-45 Figure 2-4 shows the VT1422A Option 001 RJ-45 Connector Module with Connector Module connector pin numbering. RJ-45 Connector Module Pinout for Std SCP I/O (even chs 0,2,4,6) + = Hi - = Lo SCP position 0, chs 0-6 and 1-7 SCP position 1, chs 8-14 and 9-15 1 2 3 4 5 6 7 8 Shield Gnd...
Page 42
Sockets for Guard to Ground Connections Terminal Block for Input Connections Jumper to select for On-board or Remote Temperature Sensing TRIG LCAL HCAL LOHM HDHM Terminal Block with Remote Temperature Sensing, On-board Thermistor Trigger, and other Connections for Temperature Sensing Figure 2-5.
Page 43
Screw Terminal Figure 2-6 shows the VT1422A Option 011 Screw Terminal Module Module Layout features and jumper locations. On-Board Reference Temperature Sensing Jumper Detail Remote Reference Temperature Sensing Figure 2-6. VT1422A Screw Terminal Module Chapter 2 Field Wiring...
Reference Temperature Sensing with the VT1422A The Screw Terminal and Spring Terminal Modules provide an on-board thermistor for sensing isothermal reference temperature of the terminal blocks. Also provided is a jumper set (J1 in Figures 2-7 and 2-8) to route the VT1422A's on-board current source to a thermistor or RTD on a remote isothermal reference block.
Page 45
VT1422A module and the Terminal Module. 4. The VXI mainframe cooling fan filters must be clean and there should be as much clear space in front of the fan intakes as possible.
Preferred Measurement Connections For any A/D Module to scan channels at high speeds, it must use a very short sample μ period (< 10 s for the VT1422A). If significant normal mode noise is presented to IMPORTANT! its inputs, that noise will be part of the measurement. To make quiet, accurate measurements in electrically noisy environments, use properly connected shielded wiring between the A/D and the device under test.
Page 47
+ power Device Shield Under Test pressure Remove Jumper to Guard - power break Ground Loop Example for (shield connected to ground at transducer) Powered Transducers + power Shield Device Under Test pressure Guard Leave Jumper in Place - power Example for (transducer floating) Powered...
Page 48
Terminal Module External Connections 1 kΩ GND to GRD Jumper 10 kΩ 0.1 F µ (removable) For each SCP Position 1 kΩ GND to GRD Jumper 0.1 F µ 10 kΩ (removable) Figure 2-10. GRD/GND Circuitry on Terminal Module R em oving G uard to G round on C hannel 00 Figure 2-11.
Connecting the On-Board Thermistor The following figures show how to use the VT1422A to make temperature measurements using the on-board Thermistor or a remote reference sensor. The Thermistor is used for reference junction temperature sensing for thermocouple measurements. Figure 2-12 shows the configuration for the VT1422A’s Spring Terminal Module, Figure 2-6 shows the configuration for the Screw Terminal Module.
Wiring and Attaching the Terminal Module Figures 2-13 and 2-14 show how to open, wire and attach the terminal module to a VT1422A. Remove Clear Cover. Remove and Retain Wiring Exit Panel A. Release screws. Remove 1 of the 3 B.
Page 51
Replace Wiring Exit Panel Replace Clear Cover A. Hook in the top cover tabs onto the fixture B. Press down and tighten screws Cut required Keep wiring exit panel holes in panels hole as small as for wire exit possible Push in the Extraction Levers to Lock the Install the Terminal Terminal Module onto the VT1422A...
Removing the VT1422A Terminal Modules Figure 2-15 shows how to remove the Spring Terminal and Screw Terminal Modules from the VT1422A. Release the two extraction levers and push both levers out simultaneously Extraction Lever Use a small screwdriver to pry and release the two extraction levers Free and remove the Terminal Module from the A/D Module...
Attaching and Removing the VT1422A RJ-45 Module Figure 2-16 shows how to remove the RJ-45 Terminal Module. Install on VT1422A Push in the Extraction Levers to Lock the Terminal Module onto the VT1422A Extraction Levers Releasing the Extraction Levers to Remove the Terminal Module Screwdriver With 1/8"...
Adding Components to the Terminal Module The back of the terminal module PCB (printed circuit board) provides surface mount pads which can be used to add serial and parallel components to any channel's signal path. Figure 2-17 shows additional component locator information (see the schematic and pad layout information on the back of the terminal module PCB).
Spring and Screw Terminal Module Wiring Maps Figure 2-19 shows the Spring Terminal Module wiring map. All wiring entering Terminal Module passes under this TRIG strain relief bar LCAL HCAL LOHM HOHM Heavy line indicates the side of the terminal block that the wire enters Figure 2-19.
VXI Technology Remote Strain Measuring System (VT1422A, VT1539A, and VT1529A/B). The chapter will cover: • Instrument Setup for Remote Strain Measurements ..page 58 -- Preparing the VT1422A for Installation .
Instrument Setup for Remote Strain Measurements This section involves: • Preparing the VT1422A for installation into a VXIbus Mainframe • Preparing the VT1529A/B for use • Connecting the VT1422A to VT1529A/B Remote Strain Completion units. • Connecting Excitation power supplies to the VT1529A/B •...
Preparing the For most applications, the VT1529A/B is ready for installation as delivered. VT1529A/B for Use It is designed to be easily rack mounted in a system cabinet by its built-in front panel extensions. All user connection are accessible on the front panel with the exception of the line-cord jack which is on the rear of the unit.
Page 62
Loosen Top Cover Screw Remove Top Cover PC Board Unlatch Cover from Bottom Cover Tab on Each Side See Detail "A" Detail "A" Figure 3-2. Removing the VT1529A/B Top Cover 60 Programming the VT1422A & VT1529A/B for Remote Strain Measurement Chapter 3...
Page 63
Locating Resistors Figure 3-3 provides the relationship between P.C. board location and bridge resistor channel number. The surface mount pads nearest the through-hole locations are in parallel with them. "Rxx" Indicates the Channel Number Through-Hole Resistor Positions Surface-Mount Resistor Positions P401 P402 Figure 3-3.
Connecting The cable between a VT1422A and each VT1529A/B (connection "A" in VT1529A/Bs to the Figure 3-1) is a standard type of cable used in computer Local Area Networks (LANs). The VT1529A/B can be any distance up to 1000 feet VT1422A (304.8 m) from the VT1422A and the interconnect cable can be easily custom made to fit the installation.
Two Interconnect Depending on the Terminal Module ordered with the VT1422A, there are Methods two methods of interconnecting a VT1529A/B to the VT1422A (connection "A" in Figure 3-1). The Option 001 RJ-45 The RJ-45 Connector Module is used when most or all of VT1422A SCP Connector Module positions contain a VT1539A Remote Channel SCP.
Page 66
Spring and Screw For mixed on-board SCP channels and RSCU operation, spring or screw Terminal Modules type terminal modules can be used. For standard SCP channel connections, see Chapter 2 “Field Wiring” on page 35. For remote channels, connect the individual wires from each VT1529A/B’s data interface cable to the appropriate terminals for remote channel operation.
Page 67
Table 3-3. VT1539A Signal Names SCP Signal Names - to - Terminal Names SCP Position Plug VT1539A Signal Name Terminal Name on Terminal Name on Pin# (with EIA/TIA-568A Terminal Module Terminal Module wire color-code) (SCP’s low channel) (SCP’s High Channel) SCP Position 3 Analog+ (wht-green) HI 24...
Page 68
Example Terminal Figure 3-6 shows a typical connection to a VT1529A/B through one of Module to VT1529A/B the optional terminal modules. In this case, the connection is to the low channel on the VT1539A in SCP position number 6 (channels 14800 - Connection 14831).
Connecting This connection is shown as "B" in Figure 3-1. The VT1529A/B uses Excitation Supplies external excitation supplies. There are four pairs of input pins (and Gnd) at the "Bridge Excitation" connector for up to four individual excitation supplies. Each of these four inputs power eight channels through a programmable switch.
Page 70
Power Supplies Inside VT1529A/B and Cabling Power Chs 0-7 Supply 1 Power Chs 24-31 Supply 4 Ch 0-7 Ch 8-15 Ch 16-23 Ch 24-31 Figure 3-7. Excitation Supply Connections 68 Programming the VT1422A & VT1529A/B for Remote Strain Measurement Chapter 3...
Connecting the VT1529A/B to Strain Gages The following discussion relates to the connection marked "C" in Figure 3-1 on page 58. Connecting the strain gages to the RJ-45 telecom connectors is illustrated below. These connections can be made with the same type of cable and crimp-on connectors used for Data Interface connection (connection "A"...
VT1529A/B Bridge Configurations The Quarter Bridge Figure 3-10 shows the connections to the 8-pin telecom connector for a configuration quarter bridge configuration. It also shows a simplified schematic of the bridge completion settings for a quarter bridge channel. Quarter Bridge (channel 0 shown) 8-pin telcom SENS:STR:EXC:STATE...
Page 73
The Half Bridge Figure 3-11 shows the connections to the 8-pin telecom connector for a half configuration bridge configuration. It also shows a simplified schematic of the bridge completion settings for a half bridge channel. Half Bridge (channel 0 shown) 8-pin telcom Excitation SENS:STR:EXC:STATE...
Page 74
The Full Bridge Figure 3-12 shows the connections to the 8-pin telecom connector for a full configuration bridge configuration. It also shows a simplified schematic of the bridge completion settings for a full bridge channel. Full Bridge (channel 0 shown) 8-pin telcom Excitation SENS:STR:EXC:STATE...
Connecting to the VT1529A/Bs Dynamic Strain Ports The VT1529A/B has two, 37-pin connectors that provide wideband amplified outputs from each strain bridge signal. This allows for connection to a high-speed ADC-per-channel instrument like the VT1432A or VT1433B to capture dynamic strain events. While an instrument like the VT1432A or VT1433B can measure signals from the VT1529A/B, a VT1422A is still required to control the VT1529A/B’s bridge configuration, calibration and self-test functions.
Dynamic Strain Port Each buffered dynamic strain channel includes an offset adjusting DAC Offset Control controlled by the command SOURce:VOLTage[:AMPLitude] <-offset_v>,(@<ch_list>) Reducing the unstrained bridge offset voltage at the dynamic strain port channel can allow the VT1432A to measure the channel using a more sensitive range.
Remote Strain Channel Addressing Figure 3-15 shows the relationship between SCP positions and Remote Channel Addressing through the VT1539A SCP (see Figure 2-1 on page 36 to compare with On-Board Channel Addressing). Not all SCP positions need to contain VT1539As. If needed, VT1539As can be mixed with other analog sense, source, and digital I/O SCPs.
Programming for Remote Strain Measurement This programming section is focused exclusively on programming the VT1422A and VT1529A/B for remote strain measurement. For more general VT1422A programing see Chapter 4 “Programming the VT1422A for Data Acquisition and Control”. Power-on and *RST Some of the programming operations that follow may already be set after Configuration Power-on or after an *RST command.
Measure Strain Using This method lets the VT1422A convert the strain bridge readings to units of Built-in Strain EU strain (∈) before they are stored in the CVT and/or FIFO or accessed by algorithms. There is no speed penalty and there is significant convenience in Conversion allowing the VT1422A to make the Engineering Unit conversion to strain.
Page 82
Note If an algorithm is loaded while method "b" is used, the FIFO may contain more than just the unstrained voltage readings. It is up to the user to obtain the correct data and input it into the VT1422A. 3. The power-on and *RST excitation voltage value is 1.0E6; this value was chosen purposely so that obviously bad readings would result if this value was not changed to the true excitation voltage.
*CAL? and CALibration:REMote? Periodic Calibration SENSe:FUNCtion:STRain: <bridge_type> . Also sets To convert readings to bridge config switches and turns on excitation V Engineering Units of strain INPut:FILTer:FREQuency and INPut:FILTer:STATe Set Input Filter on VT1529A/B Send gage factors to SENSe:STRain:GFACtor channel EU routines Measure bridge excitation MEASure:VOLTage:EXCitation? voltages and send to EU routines...
Page 84
Built-in EU Conversion Below is an example VXIplug&play command sequence. Note that this is Command Sequence not executable; it has been simplified for easier reading. The C++ example source file (euseq.cpp) is on the CD supplied with the instrument. View the readme.txt file provided with the VXIplug&play driver for example program file location.
Measure Strain Using The VT1422A measures voltage and then applies a conversion routine User Specified EU (linear) supplied by the user. The user must supply the slope (M) and offset (B) of a linear M*volt + B conversion. Conversion The DIAGnostic:CUSTom:MXB <slope>,<offset>,(@<ch_list>) command is used to supply the slope and offset for the strain conversion.
Page 86
SENSe:STRain:BRIDge[:TYPE] Set bridge configuration switches Set Input Filter on VT1529A/B INPut:FILTer:FREQuency and INPut:FILTer:STATe Enable excitation voltage SENSe:STRain:EXCitation:STATe to the strain bridges Measure bridge excitation MEASure:VOLTage:EXCitation? voltages and retrieve from FIFO SENS:DATA:FIFO:PART? Measure unstrained bridge output MEASure:VOLTage:UNSTrained? voltages and retrieve from FIFO SENSE:DATA:FIFO:PART? solve your equation for M and B as a function of M(slope)=<your equation>...
Custom EU Conversion Below is an example VXIplug&play command sequence. Note that this is Command Sequence not executable; it has been simplified for easier reading. The C++ example source file (mxbseq.cpp) is on the CD supplied with the instrument. View the readme.txt file provided with the VXIplug&play driver for example program file location.
/* set up the sample timer. This controls the channel to channel scan rate and can be important when channels need more than the default 40 microsecond sample time. */ errStatus=hpe1422_cmd(sessn,"sample:timer 40E-6"); /* *RST default */ /* INITiate the trigger system to execute a measurement scan */ errStatus=hpe1422_cmd(sessn,"INIT:IMMediate");...
Page 89
6. Turn on excitation voltage to the strain bridges with the SENSe:STRain:EXCitation:STATe ON,(@<ch_list>) command. 7. Use the ROUTe:SEQuence:DEFine (@<ch_list>) command to define the scan list to measure the output voltage at each strain bridge. The <ch_list> specified here must match the <ch_list> specified in the two previous steps (measuring unstrained and excitation voltages).
Page 90
Readings returned in voltage SENSe:FUNCtion:VOLTage SENSe:STRain:BRIDge[:TYPE] Set bridge configuration switches Set Input Filter on VT1529A/B INPut:FILTer:FREQuency and INPut:FILTer:STATe Enable excitation voltage SENSe:STRain:EXCitation:STATe to the strain bridges Measure bridge excitation MEASure:VOLTage:EXCitation? voltages and retrieve from FIFO SENS:DATA:FIFO:PART? Measure unstrained bridge output MEASure:VOLTage:UNSTrained? voltages and retrieve from FIFO SENSE:DATA:FIFO:PART?
Page 91
/* set channel function for voltage readings (autorange) */ errStatus=hpe1422_cmd(sessn,"sens:func:voltage auto,(@10000:10007)"); /* set bridge configuration switches */ errStatus=hpe1422_cmd(sessn,"sens:str:bridge fben,(@10000:10007)"); /* optionally set VT1529A/B input filters (2, 10 or 100 Hz) */ errStatus = hpe1422_cmd(sessn,"input:filter:frequency 10,(@10000:10007)"); /* optionally enable VT1529A/B input filters (approx 100 kHz when OFF) */ errStatus = hpe1422_cmd(sessn,"input:filter:state ON,(@10000:10007)");...
Verifying Correct Bridge Completion (Shunt Cal) Verifying bridge configurations and connections is accomplished by inserting a known resistance (shunt cal resistor) in parallel with one leg of the bridge to imbalance it by a predictable amount. The VT1529A/B provides a single, internal 50 kΩ shunt cal resistor that can be programmatically connected to each of the 32 channels, one channel at a time.
Page 93
Measure bridge excitation MEASure:VOLTage:EXCitation?/SENSe:DATA:FIFO? voltages and get from FIFO Measure unstrained bridge output MEASure:VOLTage:UNSTrained?/SENSe:DATA:FIFO? voltages and get from FIFO Send gage factors to SENSe:STRain:GFACtor channel EU routines SENSe:FUNCtion:STRain:<bridge_type>. Also sets To convert readings to bridge config switches and turns on excitation V Engineering Units of strain Measure unstrained bridge output MEASure:VOLTage:UNSTrained?
Built-in Strain Conversion Equations When using the VT1422A’s built-in strain conversion (SENSe:FUNCtion:STRain:<bridge_type> <range>,(@<ch_list>)), the following equations are used to convert voltage to strain. Full Bridge Equation This equation is used by the VT1422A to convert bridge measurements to (bridge_type=FBEN) Engineering Units of Strain for channels specified in the command SENSe:FUNCtion:STRain:FBEN <range>,(@<ch_list>).
Page 95
Error Analysis Figure 3-21 compares the non-linear quarter bridge equation used for strain SCPs with the linear approximation used with the VT1529A/B. Notice that while the error is independent of excitation voltage and unstrained voltage, error is quite sensitive to gage factor. GF=1 Error vs Delta Strain GF=2...
Page 96
94 Programming the VT1422A & VT1529A/B for Remote Strain Measurement Chapter 3...
Chapter 4 Programming the VT1422A for Data Acquisition and Control About This Chapter The focus in this chapter is to show the VT1422A’s general programming model. The programming model is basically the sequence of SCPI commands the application program will send to the VT1422A to configure it to execute the defined Scan List and/or algorithms.
Multifunction DAC? The VT1422A is a complete data acquisition and control system on a single VXI card. It is multifunction because it uses the Signal Conditioning Plug-on (SCP) concept whereby analog input/output and digital input/output channels can be mixed and matched to meet various application needs. It can...
Programmable Signal The input and output SCPs are configured with the SCPI and/or VXIplug&play Conditioning and EU programming. Analog SCPs are measured with the VT1422A’s A/D. Configuring the analog SCPs include specifying what type of Engineering Conversion Unit (EU) conversions are desired for each analog input channel. For example, one channel may require a type T thermocouple conversion and another may be a resistance measurement.
Approximately 2000 lines of user-written 'C' code can be downloaded into the VT1422A's memory and can be split among up to 32 algorithms. VXI Technology refers to these as algorithms because an algorithm is a step-by-step procedure for solving some problem or accomplishing some end.
Detailed Instrument Figure 4-2 illustrates the timing of all these operations and describes the Operation Cycle VT1422A's input-update-execute algorithms-output phases. This cycle-based design is desirable because it results in deterministic operation of the VT1422A. That is, the input channels are always scanned and the output channels are always written at pre-defined intervals.
Page 103
A limited and simplified version of C was created since most applications need only basic operations: add, subtract, multiply, divide, scalar variables, arrays, and programming constructs. The programming constructs are limited to if-then-else to allow conditional evaluation and response to input changes.
Programming Model SCPI commands and/or VXIplug&play driver functions are used to configure, start, stop, and communicate with the VT1422A. The module can be in one of two states: either the "idle" state or the "running" state. The INITiate[:IMMediate] command moves the module from the "idle" state to the "running"...
Page 105
Power-On Before INIT Commands Accepted: All commands exept: *TRG, TRIGGER, and ALG:UPD:CHAN Trigger Idle State INITiate[:IMM] After INIT Commands Accepted: Waiting for Trig Count *RST Trigger State Exhausted? ABORT Most of ALG subsystem ARM[:IMM] TIMer or other FETCH? trigger event FORMAT SENSe:DATA ...
Executing the Programming Model This section shows the sequence of programming steps that should be used for the VT1422A. Within each step, most of the available choices are shown using command sequence examples, with further details available in the Command Reference Chapter 7. IMPORTANT! It is very important that, while developing an application, the SYSTem:ERRor? query be executed after each programming command.
Power On or *RST Set up SCP & RSCU Amps, Filters, and Step 1 INP: ..., OUTP: ... commands Measurement Excitation Sources Link Engineering Units (Functions) Step 2 [SENSe:]FUNC: ... commands to Analog Input Channels INP: ..., OUTP: ..., [SENSe:] ...,SOUR: ... Set up Digital I/O Channels Step 3 Calibrate Channel Set-up...
Programming Overview Diagram Arm Source Selector Trigger Source Selector (trigger signal) (load list) (load list) 64 Channel FET Multiplexer Cal Relays Select Calibration Source or Input Signal CALibration:TARE CALibration:TARE? 106 Programming the VT1422A for Data Acquisition and Control Chapter 4...
Setting up Analog Input and Output Channels This section covers configuring input and output channels to provide the measurement values and output characteristics that the algorithms need to operate. Configuring This step applies only to programmable Signal Conditioning Plug-ons such Programmable as the VT1503A Programmable Amplifier/Filter SCP, the VT1505A Current Source SCP, the VT1510A Sample and Hold SCP, the VT1511A...
Page 110
Setting Filter The commands for programmable filters are: Cutoff Frequency INPut:FILTer[:LPASs]:FREQuency <cutoff_freq>,(@<ch_list>) to select cutoff frequency INPut:FILTer[:LPASs][:STATe] ON | OFF,(@<ch_list>) to enable or disable input filtering Note: For the VT1529A/B, these commands affect an 8-channel bank. The cutoff frequency selections provided by the SCP can be assigned to any channel individually or in groups.
To set channels 0 through 9 to output 30 µA and channels 10 through 19 to output 488 µA: OUTP:CURR 30e-6,(@100:109) OUTP:CURR 488e-6,(@110:119) separate command per output level or combine into a single command message: OUTP:CURR 30e-6,(@100:109);CURR 488e-6,(@110:119) NOTE The OUTPut:CURRent:AMPLitude command is only for programming excitation current used in resistance measurement configurations.
Page 112
[SENSe:]FUNCtion:TEMPerature <type>,<sub_type>,[<range>,] (@<ch_list>) for temperature measurements with thermocouples, thermistors or RTDs [SENSe:]FUNCtion:VOLTage <range>,(@<ch_list>) for voltage measurements [SENSe:]FUNCtion:CUSTom <range>,(@<ch_list>) for custom EU conversions. NOTE At power-on and after *RST, the default EU Conversion is autorange voltage for all 64 channels. Linking Voltage To link channels to the voltage conversion send the Measurements [SENSe:]FUNCtion:VOLTage [<range>,] (@<ch_list>) command.
Page 113
Linking Resistance To link channels to the resistance EU conversion send the Measurements [SENSe:]FUNCtion:RESistance <excite_current>,[<range>,](@<ch_list>) command. Resistance measurements assume that there is at least one Current Source SCP installed (eight current sources per SCP). See Figure 4-5. Two-Wire Measurement Four-Wire Measurement (not recommended **) Current Source SCP Current Source SCP...
Page 114
To set channels 0 through 15 to measure resistances greater than 8,000 Ω and set channels 16, 20, and 24 through 31 to measure resistances less than 8k (in this case paired to current source SCP channels 32 through 57): OUTP:CURR:AMPL 30e-6, (@132:147) set 16 channels to output 30 μA for 8 kΩ...
Page 115
NOTES 1. Resistance temperature measurements (RTDs and THERmistors) require the use of Current Source Signal Conditioning Plug-Ons. The following table shows the Current Source setting that must be used for the following RTDs and Thermistors: Required Current Temperature Sensor Types Amplitude and Subtypes MAX (488 µA)
Page 116
Thermocouple Measurements Thermocouple measurements are voltage measurements that the EU conversion changes into temperature values based on the <sub_type> parameter and latest reference temperature value. • For Thermocouples the <sub_type> parameter can specify CUSTom, E, EEXT, J, K, N, R, S, T (CUSTom is pre-defined as Type K, no reference junction compensation;...
Page 117
• The <sub_type> parameter must specify: -- For RTDs; "85" or "92" (for 100 ohm RTDs with 0.00385 or 0.00392 ohms/ohm/°C temperature coefficients respectively) -- For Thermistors; only "5000" (See previous note on page 113) -- For CUSTom; only "1" •...
Page 118
Supplying a Fixed Reference Temperature The [SENse:]REFerence:TEMPerature <degrees_c> command immediately stores the temperature of a controlled temperature reference junction panel in the Reference Temperature Register. The value is applied to all subsequent thermocouple channel measurements until another reference temperature value is specified or measured. There is no need to use SENS:REF:CHANNELS.
• VT1529A/B channels provide both strain bridge completion and bridge output sense so <ch_list> links strain EU conversion directly to those channels. Note When the SENS:FUNC:STR:<bridge_type> command is used with VT1529A/B channels, the bridge configuration switches for those channels are set to actually configure the bridge type specified. There is no need to send the configuration only SENSe:STRain:BRIDge:TYPE command for channels that use the SENSe:FUNCtion:STRain:<bridge_type>...
Setting Up Digital Input and Output Channels Setting Up Digital Digital inputs can be configured for polarity and, depending on the SCP Inputs model, a selection of input functions as well. The following discussion will explain which functions are available with a particular Digital I/O SCP model. Setting a digital channel’s input function is what defines it as an input channel.
Frequency Function The frequency function uses two commands. For more on this VT1534A and VT1538A capability, see the appropriate SCP’s User’s Manual. To set the frequency counting gate time execute [SENSe:]FREQuency:APERture <gate_time>,(@<ch_list>) To set the digital channel function to frequency [SENSe:]FUNCtion:FREQuency (@<ch_list>) Totalizer Function The totalizer function uses two commands also.
Page 122
Setting Output The VT1533A and VT1534A use output drivers that can be configured as Drive Type either active or passive pull-up. To configure this, use the command OUTPut:TYPE <mode>,(@<ch_list>). This setting is valid even while the specified channel in not an output channel. If and when the channel is configured for output (an output FUNCtion command), the setting will be in effect.
Page 123
Variable Width Pulses at Fixed Frequency (PWM) This function sets up one or more VT1534A/38A channels to output a train of pulses. A companion command sets the period for the complete pulse ↑ ↑ edge to edge). This of course fixes the frequency of the pulse train. The width of the pulses from these channels is controlled by Algorithm Language statements.
Performing Channel Calibration (Important!) Calibrating the The *CAL? (also performed using CAL:SETup then CAL:SETup?) is a VT1422A very important step. *CAL? generates calibration correction constants for all analog input and output channels on-board the VT1422A. *CAL? must be performed in order for the VT1422A to deliver its specified accuracy. Operation and *CAL? generates calibration correction constants for each analog input Restrictions...
Re-Execute • When channel gain and/or filter cut-off frequency on programmable *CAL? When: SCPs are changed (using INPut:GAIN or INPut:FILTer...). • When SCPs are re-configured to different locations. This is true even if an SCP is replaced with an identical model SCP because the calibration constants are specific to each SCP channel’s individual performance.
Page 126
ROUTe:SEQuence:DEFine accepts both on-board channels from conventional SCPs as well as remote channels from Remote Signal Conditioning Units (RSCUs). For details about syntax see “Channel List (Standard Form)” starting on page 231 and “ROUTe:SEQuence:DEFine” on page 323. Note Certain analog input SCPs display higher than normal offset and noise figures if their channels are scanned just before channels on a Remote Signal Conditioning Unit.
Defining C Language Algorithms This section is an overview of how to write and download C algorithms into the VT1422A's memory. It is assumed that the user has some programming experience in C, but since the VT1422A's version of C is limited, just about any experience with a programming language will suffice.
Global Variable Global variables are used when it is necessary to communicate information Definition from one algorithm to another. Globals are initialized to 0 unless specifically assigned a value at define time. The initial value is only valid at the time of definition.
ALG:SCAL 'alg1','start',1.2345 ALG:ARR 'alg1','some_array',#232..LF/EOI ALG:UPD The ALG:SCAL command designates the name of an algorithm, indicates where to find the local variable start, and assigns that variable the value of 1.2345. Likewise, the ALG:ARRAY command designates the name of an algorithm, the name of the local array, and a definite length block for assigning the four real number values.
To specify that values are to remain in IEEE 32-bit Floating Point format for fastest transfer rate: FORMAT REAL,32 To specify that values are to be converted to 7-bit ASCII and returned as a fifteen character per value comma separated list: FORMAT ASC,7 The *RST, *TST?, and power-on default format...
Setting up the Trigger System Arm and Trigger Figure 4-6 shows the trigger and arm model for the VT1422A. Note that Sources when the Trigger Source selected is TIMer (the default), the remaining sources become Arm Sources. Using ARM:SOUR allows an event to be specified that must occur in order to start the Trigger Timer.
Page 132
NOTES 1. When TRIGger:SOURce is not TIMer, ARM:SOURce must be set to IMMediate (the *RST condition). If not, the INIT command will generate an error -221,"Settings conflict." 2. When TRIGger:SOURce is TIMer, the trigger timer interval (TRIG:TIM <interval>) must allow enough time to scan all channels, execute all algorithms and update all outputs or a +3012, "Trigger Too Fast"...
Programming the When the VT1422A is triggered, it begins its instrument operation cycle. Trigger Timer The time it takes to complete a cycle is the minimum interval setting for the Trigger Timer. If programmed to a shorter time, the module will generate a "Trigger too fast"...
INITiating the Module/Starting Scanning and Algorithms When the INITiate[:IMMediate] command is sent, the VT1422A builds the input Scan List from the input channels referenced when an algorithm is defined with the ALG:DEF command above and from the channels referenced with the ROUTe:SEQuence:DEFine command. The module also enters the Waiting For Trigger State.
The Operating The VT1422A has four major operating phases plus one optional phase. Sequence Figure 4-7 shows these phases. A trigger event starts the sequence: 1. (INPUT): the state of all digital inputs are captured and each analog input channel that is in the scan list and/or referenced by an algorithm variable is scanned.
Reading Running Algorithm Values The most efficient means of acquiring algorithm derived data from the VT1422A is to have its algorithms store real-number results in the FIFO or CVT. The algorithms use the writefifo(), writecvt(), and writeboth() intrinsic functions to perform this operation as shown below. Note: CVT 0 - 9 unavailable CVT 10 CVT 11...
Note After *RST/Power-on, each element in the CVT contains the IEEE-754 value "Not-a Number" (NaN). Channel values which are a positive overvoltage return IEEE +INF and negative overvoltage return IEEE -INF. Refer to the FORMat command in on page 293 for the NaN, +INF, and -INF values for each data format.
Page 138
Begin Data Retrieval STAT:OPER:COND? (bit 4 "measuring") Algorithm Stopped? Enough Values Any Values in FIFO? DATA:FIFO:COUNT? in FIFO? Execute Bulk Transfer Execute Final Transfer DATA:FIFO:PART? <n_values> Command Command Exit Data Retrieval Figure 4-8. Controlling Reading Count Below is an example command sequence for Figure 4-8. It assumes that the FIFO mode was set to BLOCK and that at least one algorithm is sending values to the FIFO.
Reading the Latest FIFO Values (FIFO mode OVER) In this mode, the FIFO always contains the latest values (up to the FIFO’s capacity of 65,024 values) from running algorithms. In order to read these values, the algorithms must be stopped (use ABORT). This forms a record of the algorithm’s latest performance.
Modifying Running Algorithm Variables Updating The values sent with the ALG:SCALAR and ALG:ARRAY command are Algorithm Variables kept in the Update Queue until an ALGorithm:UPDate command is received. and Coefficients ALG:UPD cause changes to take place Updates are performed during phase 2 of the instrument operation cycle (see Figure 4-7 on page 132).
To enable ALG1 and ALG2 and disable ALG3 and ALG4: ALG:STATE ’ALG1’,ON enable algorithm ALG1 ALG:STATE ’ALG2’,ON enable algorithm ALG2 ALG:STATE ’ALG3’,OFF disable algorithm ALG3 ALG:STATE ’ALG4’,OFF disable algorithm ALG4 ALG:UPDATE changes take effect at next update phase VXIplug&play Users: See the function hpe1422_cmd to send ALG:STATE. Setting Algorithm The ALGorithm:SCAN:RATio ’<alg_name>’,<num_trigs>...
TRIGGER:SOURCE TIMER (*RST default) Set the channel-to-channel measurement pacing (channel settling time) SAMPle:TIMer 4E-5 (*RST default) specify data format FORMAT ASC,7 (*RST default) select FIFO mode SENSE:DATA:FIFO:MODE BLOCK may read FIFO while running Define algorithm ALG:DEFINE 'ALG1','static float a,b,c, div, mult, sub; if ( First_loop ) a = 1;...
Page 143
configure digital output channel for "alarm channel" hpe1422_cmd(vi, ’SOURCE:FUNCTION:CONDITION (@132)’) execute On-board channel calibration (can take several minutes) hpe1422_cmdInt16_Q(vi, ’*CAL?’, ViPInt16 result) test "result" for success execute Remote channel calibration on RSCUs hpe1422_cmdInt16_Q(vi, ’CAL:REMOTE? (@14000:14931)’, ViPInt16 &result) test "result" for success Direct data acquisition channels placed in Scan List.
Using the Status System The VT1422A’s Status System allows for the quick polling a single register (the Status Byte) to see if any internal conditions require attention. Figure 4-9 shows that the three Status Groups (Operation Status, Questionable Data and the Standard Event Groups) and the Output Queue all send summary information to the Status Byte.
Q U E STIO N A BLE D ATA G R O U P STATus:Q UEStionable:CO NDition? (read only) STATus:Q UEStionable:NT R and STATus:Q UEStionable:PTR (set filters) STATus:Q UEStionable:EVENt? (reads/clears register) STATus:Q UEStionable:ENABle (sets m ask) O utput Q ueue Em pty Lost Calibration Trigger Too Fast...
Page 146
Status Bit Descriptions Questionable Data Group Bit Value Event Name Description Lost Calibration At *RST or Power-on Control Processor has found a checksum error in the Calibration Constants. Read error(s) with SYST:ERR? query and re-calibrate areas that lost constants. Trigger Too Fast Scan not complete when another trigger event received.
Enabling Events to There are two sets of registers that individual status conditions must pass be Reported in the through before that condition can be reported in the instrument’s Status Byte. These are the Transition Filter Registers and the Enable registers. Status Byte They provide selectivity in recording and reporting module status conditions.
Configuring the In Figure 4-10, note that each Status Group has an Enable Register. These Enable Registers control whether or not the occurrence of an individual status condition will be reported by the group’s summary bit in the Status Byte. Questionable Data Group Examples To have only the "FIFO Overflowed"...
Bit 3 (QUE) bit value 8 Read the Questionable Data Group’s Event Register using the STAT:QUES:EVENT? query. This will return bit values for events which have occurred in this group. After reading, the Event Register is cleared. Note that bits in this group indicate error conditions. If bit 8, 9, or 10 is set, error messages will be found in the Error Queue.
Reading Status It may be desirable to directly poll status groups for instrument status rather Groups Directly than poll the Status Byte for summary information. Reading Event Registers The Questionable Data, Operation Status and Standard Event Groups all have Event Registers. These Registers log the occurrence of even temporary status conditions.
When it is desired to have the status system bits updated closer in time to when the condition changes on the VT1422A, the VT1422A interrupts can be used. The VT1422A can send VXI interrupts upon the following conditions: • Trigger too Fast condition is detected. Trigger comes prior to trigger system being ready to receive trigger.
The previous description is always true for a downloaded driver. In the C-SCPI driver, however, the interrupts will only be enabled if cscpi_overlap mode is ON when the enable command is given. If cscpi_overlap is OFF, the user is indicating they do not want interrupts to be enabled. Any subsequent changes to cscpi_overlap will not change which interrupts are enabled.
This command uses the custom EU conversion to generate the reference junction temperature as explained in the section “Thermocouple Reference Temperature Compensation” on page 114. Creating Conversion Contact a VXI Technology System Engineer for more information on Tables creating Custom Engineering Unit Conversion. Loading Custom EU There is a specific location in the VT1422A’s memory for each channel’s...
Page 154
16-bit values. SCPI requires that <table_block> include the definite length block data header. The VXIplug&play function hpe1422_sendBlockInt16(...) adds the header automatically. Contact a VXI Technology System Engineer for more information on creating piecewise custom EU tables. • The <table_range> parameter specifies the range of input voltage that the table covers (from -<table_range>...
Compensating for System Offsets System Wiring Offsets The VT1422A can compensate for offsets in the system’s field wiring. Apply shorts to channels at the Unit-Under-Test (UUT) end of the field wiring and then execute the CAL:TARE (@<ch_list>) command. The instrument will measure the voltage at each channel in <ch_list> and save those values in RAM as channel tare constants.
As an example, assume that the system wiring to channel 0 generates a +0.1 volt offset with 0 volts (a short) applied at the UUT. Before CAL:TARE the module would return a reading of 0.1 volt for channel 0. After CAL:TARE (@100), the module will return a reading of 0 volts with a short applied at the UUT and the system wiring offset will be removed from all measurements of the signal to channel 0.
Changing Gains or To change a channel’s SCP setup after a CAL:TARE operation, a *CAL? Filters operation must be performed to generate new DAC constants and reset the "range floor" for the stored tare value. The tare capability of the range/gain setup that the channel is being changed to must also be considered.
NOTES 1. When OTD is enabled, the inputs have up to 0.2 µA injected into them. If this current will adversely affect the measurement, but checking for open transducers is still desired, enable OTD, run the algorithms, check analog input variables for measurement values that indicate an open transducer, then disable OTD and run the algorithms without it.
Settling Characteristics Some sequences of input signals, as determined by their order of appearance in a scan list, can be a challenge to measure accurately. This section is intended to help determine if a system presents any of these problems and how best to eliminate them or reduce their effect.
4. If some improvement is seen, increase the sample period again and perform another test. When the sample period is increased and no improvement is seen, the maximum settling delay that any single channel requires has been found. 5. If the quality of the measurements does not respond to this increase in sample period, then inadequate settling time is not likely to be causing measurement problems.
Page 161
Adding Settling Delay for This method adds settling time only to individual problem measurements as Specific Channels opposed to the SAMPle:TIMer command that introduces extra time for all analog input channels. If problems are seen on only a few channels, the SENS:CHAN:SETTLING <num_samples>,(@<ch_list>) command can be used to add extra settling time for just these problem channels.
Page 162
160 Programming the VT1422A for Data Acquisition and Control Chapter 4...
Chapter 5 Advanced Programming with the VT1529B About This Chapter This chapter describes the advanced capability that is possible with the VT1529B Remote Strain Conditioning Unit (RSCU). This includes being able to scan thermocouples and high-level dc voltages in addition to strain measurements.
Because the EU conversions for temperature and strain are performed in the host computer, not by the on-board DSP, a fast computer may be needed in order to keep up with multiple VT1529B’s scanning at full speed. These conversions use the full strain and ITS-90 thermocouple conversion equations, which offers more accuracy than the on-board DSP approximations, ®...
For example, the existing SCPI commands to measure thermocouples with a VT1508A SCP and the VT1422A are: SENS:REF THER,5000,(@108) Sense the reference temperature on channel 108 using a 5k thermistor SENS:FUNC:TEMP TC,J,(@109:111) Indicates channels 109 through 111 are type J thermocouples SENS:REF:CHAN (@108),(@109:111) Specifies channel 108 as the isothermal reference for...
Field Wiring for To take advantage of the on-the-fly excitation measurement feature means Excitation that at least one channel of each VT1529B will need to dedicated to the excitation voltage measurement. Any of the 32 channels can be used for this Measurements purpose.
Page 168
hpe1422_cmdInt32_Q(vi, "*CAL?", &result); Periodic Calibration hpe1422_cmdInt32_Q(vi, "CAL:REM? (@ <ch_list> )", &result); hpe1422_cmd(vi, "SENS:FUNC:STR:<bridge_type>:POST To convert readings to <range> <exc_ch> ),(@ <ch_list> )"); Engineering Units of strain Also sets bridge config switches and turns on excitation V hpe1422_cmd(vi, "INPut:FILTer:FREQuency <freq> "); Set Input Filter on VT1529B hpe1422_cmd(vi, "INPut:FILTer:STATe <state>...
Strain Conversion Below is an example VXIplug&play command sequence. Note that this is Sequence not executable; it has been simplified for easier reading. The C++ example source file (eupost.cpp) is on the CD supplied with the instrument. View the readme.txt file provided with the VXIplug&play driver for example program file location.
Alternate Method of As stated above, to use the additional features of the VT1529B, the EU Computing Strain conversions are normally done in the VXIplug&play driver, not by the on-board DSP. For channels programmed using the new capability, all measurement data in the FIFO, CVT, and algorithms is voltage, not strain. For full- and half-bridge strain channels, there is an alternate method of doing the EU conversions if having the strain engineering units in the algorithms is needed while still using the most recent value of the excitation...
Page 171
3. Next, create a custom linear EU conversion for the excitation voltage channel. This EU will create the ratio of the newly measured value divided by the original value. The first channel’s pre-INITiate excitation value measured by the MEAS:VOLT:EXC? query above will be used to create this EU.
Temperature Measurements The VT1529B adds the capability to measure E, J, and T type thermocouples in addition to strain (other thermocouple types are not supported with the new functionality). Either the VT1586A Rack-Mount Terminal Panel or a user provided isothermal panel can be used. For this discussion, assume that the VT1586A and the VT1529B option 002 VT1586A-to-VT1529B cable are being used.
Page 173
Figure 5-2. Connecting the VT1586A to the VT1529B (front view) Figure 5-3. Connecting the VT1586A to the VT1529B (rear view) Chapter 5 Advanced Programming with the VT1529B...
Field Wiring of the The field wiring for the VT1586A, when used with the VT1529B, is VT1586A different from the wiring of the VT1586A when used stand-alone. In particular, with the VT1529B option 002 VT1529B-to-VT1586A cable, the G (Guard) terminals of the VT1586A are redefined to be the excitation source and excitation sense terminals for the reference thermistor(s).
Page 175
Suggested Wiring for Thermistor Measurement 200 k Thermistor SENSE 200 k Note: V should be balanced with respect to ground SENSE Figure 5-5. Recommended Reference Thermistor Divider Circuit Ch16 Ch17 Ch18 Ch19 Ch24 Ch25 Ch26 Ch27 Sense + Sense + Sense + Sense + Sense +...
Temperature The steps for measuring temperature with the VT1529B and VT1586A Measurement should, again, be familiar. If a controlled temperature isothermal block is used, the command sequence is identical, except for the :POST keyword Command being added to some commands. Otherwise, the isothermal block Sequence temperature needs to measured, the major difference being that it is necessary to measure the excitation voltage, thermistor output voltage, and...
Temperature Below is an example VXIplug&play command sequence. Note that this is Conversion not executable; it has been simplified for easier reading. The C++ example source file (tcpost.cpp) is on the CD supplied with the instrument. View the Sequence readme.txt file provided with the VXIplug&play driver for example program file location.
Field Wiring for dc There are separate input pins on the RJ-45 connector for the high-level and Voltage low-level DCV signals. See Figure 5-8 for the connector pin-out. Measurements Pinout for Upper Connector Row Shield Gnd Shield Gnd High-Level DCV Excitation Sense Low-Level DCV Sense...
Note The high-level inputs actually use the same excitation voltage measurement path that is used for strain measurements. This means that there is an internal 10 kΩ resistor from each terminal to a common point for each 8-channel block as shown in Figure 5-9. During excitation voltage measurement of any channel in any bank on a VT1529B, the switches shown in the Figure 5-9 are closed on all banks, connecting the Bridge Excitation inputs on the front panel to the input resistors, which will cause a...
DCV Measurement Below is an example VXIplug&play command sequence. Note that this is Sequence not executable; it has been simplified for easier reading. The C++ example source file (dcv.cpp) is on the CD supplied with the instrument. View the readme.txt file provided with the VXIplug&play driver for example program file location.
Page 181
Some of the mechanisms by which previous channels interfere are micro- thermals in semiconductors, dielectric absorption in materials and simple capacitance. The cumulative effects of all of the mechanisms from previous channels result in errors on the current channel. A simple model of the error is not possible.
Page 182
When a VT1529A/B scans through a list of channels, it stays on the last channel in the scan list for that VT1529A/B until the unit is scanned again. To minimize the “soaking” effect, have a low voltage or a short on the low-level inputs on this last channel.
Chapter 6 Creating and Running Algorithms Learning Hint This chapter builds upon the "VT1422A Programming Model" information presented in Chapter 4. Reading Chapter 4 is recommended before moving on to this chapter. About This Chapter This chapter describes how to write algorithms that apply the VT1422A's measurement, calculation, and control resources.
Arithmetic Operators: add +, subtract -, multiply *, divide / Note: See “Calling User Defined Functions” on page 193. Assignment Operator: = Comparison Functions: less than <, less than or equal <=, greater than >, greater than or equal >=, equal to ==, not equal to != Boolean Functions: and &&...
Example 2; /*** same function as example 1 above but shows a different approach ***/ static float max_output = .020; /* 20 mA max output */ static float min_output = .004; /* 4 mA min output */ /* following lines input, limit output between min and max_output and outputs. /* output is split to two current output channels wired in parallel to provide 20 mA */ /* write cvt is just to show access to remote channel O116 = max( min_output, min( max_output, (12.5 * I108) / 2 ) );...
Global variables area /* GLOBALS you define with ALG:DEF GLOBALS... go here */ /* global variable First_loop equals 1 until all algorithms called */ First_loop declared by static float First_loop; /* global value set to 1 at each INIT */ VT1422A's driver /**************************** function main() ****************************/ /*The VT1422A driver creates main() at INIT time.
Accessing I/O In the Algorithm Language, channels are referenced as pre-defined variable Channels identifiers. Because input channels could be from Remote Signal Conditioning Units (RSCUs), there are two forms of input channel syntax. The general on-board input channel identifier syntax is "I1cc" where cc is a channel number from 00 (channel 0) through 63 (channel 63).
Input Channels Input channel identifiers can only appear on the right side of assignment operators. It doesn't make sense to output values to an input channel. Other than that, they can appear anywhere other variables can appear. Examples: dig_bit_value = I108.B0; retrieve value from Input Channel Buffer element 8, bit 0 inp_value = I124;...
Page 190
Runtime Scan States The Remote Signal Conditioning Units (RSCU) runtime scan can be described as being in one of the following three states: normal, disconnected and out of synch. In the disconnected state, the VT1422A fails to communicate with an RSCU for various reasons (power down, no connection, a malfunction in the cable, etc.).
Page 191
/* send 5.0 volts to output chan, then open relay */ writecvt(S125, cvt_loc); /* for reporting */ interrupt(); /* force a VXI bus interrupt. */ 2. In the application: S1xx states can also be achieved by using various Plug&Play functions or SCPI commands, such as:...
Defining and Global variables are those declared outside of both the main() function and Accessing Global any algorithms (see Figure 6-1). A global variable can be read or changed by any algorithm. To declare global variables, use the command: Variables ALG:DEF 'GLOBALS','<source_code>' where <source_code>...
Initializing Variables Variable initialization can be performed during three distinct VT1422A operations. 1. When algorithms are defined with the ALG:DEFINE command. A declaration initialization statement is a command to the driver's translator function and doesn't create an executable statement. The value assigned during algorithm definition is not re-assigned when an algorithm is run with the INIT command.
Reading CVT elements An application program reads one or more CVT elements by executing the SCPI command [SENSe:]DATA:CVT? (@<element_list>), where <element_list> specifies one or more individual elements and/or a range of contiguous elements. The following example command will help to explain the <element_list>...
Determining An When an algorithm is defined with the ALG:DEF 'ALGn',... command, the Algorithm's Identity VT1422A's driver makes available to the algorithm the constant ALG_NUM. ALG_NUM has the value n from "ALGn." For instance, an (ALG_NUM) algorithm is defined with <alg_name> equal to "ALG3", then ALG_NUM within that algorithm would have the value 3.
Operating Sequence This section explains another important factor in an algorithm's execution environment. Figure 6-2 shows the same overall sequence of operations seen in Chapter 3, but also includes a block diagram to show which parts of the VT1422A are involved in each phase of the control sequence. Overall Sequence Here, the important things to note about this diagram are: •...
Defining Algorithms (ALG:DEF) This section discusses how to use the ALG:DEFINE command to define algorithms. Later sections will discuss "what to define." Note for While the following discussion of algorithm definition is useful for VXIplug&play Users plug&play users with regards to the coding of an algorithm or global variable definition, generating an algorithm code and actually downloading it to the VT1422A is much easier because of the plug&play hps1422.exe Soft Front Panel program and hpe1422_downloadAlg(...) plug&play driver...
NOTE For Block Program Data, the Algorithm Parser requires that the source_code data end with a null (0) byte. The null byte must be appended to the end of the block's <data byte(s)>. If the null byte is not included within the block, the error "Algorithm Block must contain termination '\0'"...
Page 200
How Does it Work? The example algorithm definition above will be used for this discussion. When a value for <swap_size> is specified at algorithm definition, the VT1422A allocates two identical algorithm spaces for ALG3, each the size specified by <swap_size> (in this example 1000 words). This is called a "double buffer,"...
Page 201
NOTES 1. Channels referenced by algorithms when they are defined are only placed in the channel list before INIT. The channel list cannot be changed after INIT. If an algorithm is re-defined (by swapping) after INIT and it references channels not already in the channel list, it will not be able to access the newly referenced channels.
A Very Simple First Algorithm This section shows how to create and download an algorithm that simply sends the value of an input channel to a CVT element. It includes an example application program that configures the VT1422A, downloads (defines) the algorithm, starts, and then communicates with the running algorithm.
How the Example PIDA A PID algorithm is to control a bath temperature at 140°F. With the Setpoint Operates at 140 and the process variable (PV) reading 130, the value sent to the output is a positive value which drives the digital output to 1 (heater on). When the process value reading reaches 140, the "error term"...
Implementing In this example, two PID algorithms each control part of a process and due Multivariable Control to the process dynamics are interactive. This situation can call for what is known as a "decoupler." The job of the decoupler is to correct for the "coupling"...
Page 205
GLOBAL cold_setpoint 120° ALG2 Product Flow Controller O116 I109 55° Cold Supply flow transmitter ALG1 Ratio Station I108 180° Hot Supply flow transmitter Figure 6-4. Inter-algorithm Communication with Globals To set up the algorithms for this example: 1. Define the global variable <cold_setpoint>. ALG:DEF 'GLOBALS','static float cold_setpoint;' 2.
Implementing Setpoint Profiles A setpoint profile is a sequence of setpoints that are desired as inputs for a control algorithm. A normal setpoint is either static or modified by operator input to some desired value where it will then become static again. A setpoint profile is used when a device under test is desired to be cycled through some operating range and the setpoint remains for some period of time before changing.
Page 208
SOUR:FUNC:COND (@141) make Digital I/O channel 141 a digital output. The default condition for 140 is digital input. define algorithm ALG:DEF 'alg1',' static float setpoints[ 1024 ], index, num_events, n; if ( First_loop ) { index = 0; /* array start point */ n = num_events;/* preset interval */ n = n - 1;...
Algorithm Language Reference This section provides a summary of reserved keywords, operators, data types, constructs, intrinsic functions, and statements. Standard Reserved The list of reserved keywords is the same as ANSI 'C'. User variables may Keywords not be created using these names. Note that the keywords that are shown underlined and bold are the only ANSI 'C' keywords that are implemented in the VT1422A.
NOTE Identifiers are case sensitive. The names My_array and my_array reference different variables. Special Identifiers Channel identifiers appear as variable identifiers within the algorithm and for Channels have a fixed, reserved syntax. The identifiers I100 to I163 specify on-board input channel numbers. The identifiers I10000 to I15731 specify remote input channel numbers.
Comparison Operators (is equal to) examples; a == b (is not equal to) a != b < (is less than) a < b > (is greater than) a > b <= (is less than or equal to) a <= b >= (is greater than or equal to) a >= b...
Program Flow Program flow control is limited to the conditional execution construct using Control if and else and return. Looping inside an algorithm function is not supported. The only "loop" is provided by repeatedly triggering the VT1422A. Each trigger event (either external or internal Trigger Timer) executes the main() function which calls each defined and enabled algorithm function.
These subtle problems can be avoided by specifically including a decimal point in decimal constants where an integer operation is not desired. For example, if either of the constants in the division above is made into a float constant by including a decimal point, the translator would have promoted the other constant to a float value and performed a float divide operation resulting in the expected 0.75 * 12 or the value 8.0.
• Single-dimensioned arrays of type float with a maximum of 1024 elements: Declaration static float array_var [3]; array_var [0] = 0.1; array_var [1] = 1.2; array_var [2] = 2.34; array_var [3] = 5; Storage Arrays are "double buffered." This means that when an array is declared, twice the space required for the array is allocated, plus one more word as a buffer pointer.
Declaration Initialization Only simple variables can be initialized (not array members) in the declaration statement: static float my_var = 2; NOTE! The initialization of the variable only occurs when the algorithm is first defined with the ALG:DEF command. The first time the algorithm is executed (module INITed and triggered), the value will be as initialized.
Page 216
Octal Constant: First character is 0. Remaining characters are 0-7. If ".", "e" or "E" is found, the number is assumed to be a Decimal Constant as above. Primary-expression: constant (expression) scalar-identifier scalar-identifier.bitnumber array-identifier[expression] abs(expression) max(expression,expression) min(expression,expression) Bit-number: where n=0-9 where nn=10-15 Unary-expression: primary-expression...
Program Structure and Syntax In this section, the portion of the 'C' programming language that is directly applicable to the VT1422A' Algorithm Language will be discussed. To do this, the 'C' Algorithm Language elements will be compared with equivalent BASIC language elements. Declaring Variables In BASIC, the DIM statement is usually used to name variables and allocate space in memory for them.
The Operations Many of the operation symbols are the same and are used the same way as Symbols those in BASIC. However, there are differences and they can cause programming errors until the differences become familiar. The Arithmetic Operators The arithmetic operators available to the VT1422A are the same as those equivalents in BASIC: (addition) (subtraction)
Page 221
'C' Syntax Comments BASIC Syntax IF boolean_expression THEN Simplest form (used often) if(boolean_expression) statement; statement Two-line form (not recommended; use if(boolean_expression) multiple line form instead) statement; IF boolean_expression THEN statement END IF if(boolean_expression){ Multiple line form (used often) statement; IF boolean_expression THEN statement;...
BASIC Syntax Examples 'C' Syntax IF A<=0 THEN C=ABS(A) if(a <= 0) c=abs(a); IF A<>0 THEN if(a != 0) C=B/A c = b / a; END IF IF A<>B AND A<>C THEN if((a != b) && (a != c)) A=A*B B=B+1 a = a * b;...
Overall Program The preceding discussion showed the differences between individual Structure statements in BASIC and 'C'. Here it will be described how the VT1422A's Algorithm Language elements are arranged into a program. Here is a simple example algorithm that shows most of the elements discussed so far.
Page 224
222 Creating and Running Algorithms Chapter 6...
Chapter 7 VT1422A Command Reference Using This Chapter This chapter describes the Standard Commands for Programmable Instruments (SCPI) command set and the IEEE-488.2 Common Commands for the VT1422A. • Overall Command Index ......page 223 •...
Command Fundamentals Commands are separated into two types: IEEE-488.2 Common Commands and SCPI Commands. The SCPI command set for the VT1422A is 1990 compatible Common The IEEE-488.2 standard defines the Common commands that perform functions Command like reset, self-test, status byte query, etc. Common commands are four or five characters in length, always begin with the asterisk character (*) and may include one Format or more parameters.
Implied Implied commands are those which appear in square brackets ([ ]) in the command Commands syntax. (Note that the brackets are not part of the command and are not sent to the instrument.) Suppose a second level command is sent but is not sent preceding implied command.
Boolean Represents a single binary condition that is either true or false: ON, OFF, 1, 0. Discrete Selects from a finite number of values. These parameters use mnemonics to represent each valid setting. An example is the TRIGger:SOURce <source> command where <source>...
Examples: On-board channels 0 through 15=100:115 Remote channels 0000 through 0131=10000:10131 By using commas to separate them, individual and range specifications can be combined into a single channel list: 0, 5, 8 through 3331 and 45=(@100,105,108:13331,145) Notice that the range specified (108:13331) included a mix of on-board channels as well as remote channels.
Notes 1. Because the "card number" digit has been changed to mean Data Destination, the Relative Channel form is only allowed in the ROUTe:SEQuence:DEFine command. Usage in other commands will generate an error message. 2. Note that for both forms, a channel list is always contained within "(@"...
Optional Parameters Parameters shown within square brackets ([ ]) are optional parameters. (Note that the brackets are not part of the command and should not be sent to the instrument.) If a value is not specified for an optional parameter, the instrument chooses a default value.
Note The command keywords following the semicolon must be from the same command branch and level as the complete command preceding the semicolon or a -113,"Undefined header" error will be generated. Data Types The following table shows the allowable type and sizes of parameter data sent to the module and query data returned by the module.
ABORt ABORt The ABORt subsystem is a part of the VT1422A's trigger system. ABORt resets the trigger system from its Wait For Trigger state to its Trigger Idle state. Subsystem Syntax ABORt CAUTION ABORT stops execution of a running algorithm. The control output is left at the last value set by the algorithm.
ALGorithm ALGorithm The ALGorithm command subsystem provides: • Definition of user defined control algorithms • Communication with algorithm array and scalar variables • Controls to enable or disable individual loop algorithms • Control of ratio of number of scan triggers per algorithm execution •...
Page 240
ALGorithm Parameters Parameter Parameter Range of Default Name Type Values Units alg_name string ALG1 - ALG32 | GLOBALS none array_name string valid 'C' variable name none array_block block data block of IEEE-754 64-bit floating point none numbers Comments • To send values to a Global array, set the <alg_name> parameter to "GLOBALS." To define a global array see the ALGorithm:DEFine command.
ALGorithm ALGorithm[:EXPLicit]:ARRay? ALGorithm[:EXPLicit]:ARRay? ’<alg_name>’,’<array_name>’ returns the contents of <array_name> from algorithm <alg_name>. ALG:ARR? can return contents of global arrays when <alg_name> specifies 'GLOBALS'. Parameters Parameter Parameter Range of Default Name Type Values Units alg_name string ALG1 - ALG32 | GLOBALS none array_name string...
Page 242
ALGorithm • The <swap_size> parameter is optional. Include this parameter with the first definition of <alg_name> when it is desired to change <alg_name> later while it is running. The value can range up to about 23k words (ALG:DEF will then allocate 46k words as it creates two spaces for this algorithm).
Page 243
ALGorithm • The <source_code> parameter can be one of three different SCPI types: -- Quoted String: For short segments (single lines) of code, enclose the code string within single (apostrophes) or double quotes. Because of string length limitations within SCPI and some programming platforms, it is recommended that the quoted string length not exceed a single program line.
Page 244
ALGorithm When accepted If <alg_name> is not enabled to swap (not originally defined with the <swap_size> and Usage parameter included) then both of the following conditions must be true: a. Module is in Trigger Idle State (after *RST or ABORT and before INIT). *RST ALG:DEF 'GLOBALS','static float My_global;' ALG:DEF 'ALG2','PIDA(I100,O108)'...
Page 245
ALGorithm If <alg_name> has been enabled to swap (originally defined with the <swap_size> parameter included) then the <alg_name> can be re-defined (do not include <swap_size> now) either while the module is in the Trigger Idle State or while in Waiting-For-Trigger State (INITed). Here <alg_name> is an algorithm name only, not 'GLOBALS'.
ALGorithm ALGorithm[:EXPLicit]:SCALar ALGorithm[:EXPLicit]:SCALar ’<alg_name>’,’<var_name>’,<value> sets the value of the scalar variable <var_name> for algorithm <alg_name> into the Update Queue. This update is then pending until ALG:UPD is sent or an update event (as set by ALG:UPD:CHANNEL) occurs. Note ALG:SCALAR places a variable update request in the Update Queue. Do not place more update requests in the Update Queue than are allowed by the current setting of ALG:UPD:WINDOW or a "Too many updates –...
ALGorithm ALGorithm[:EXPLicit]:SCALar? ALGorithm[:EXPLicit]:SCALar? ’<alg_name>’,’<var_name>’ returns the value of the scalar variable <var_name> in algorithm <alg_name>. Parameters Parameter Parameter Range of Default Name Type Values Units alg_name string ALG1 - ALG32 none var_name string valid 'C' variable name none Comments • An error is generated if <alg_name>...
ALGorithm Comments Specifying a value of 1 (the default) causes the named algorithm to be executed each time a trigger is received. Specifying a value of n will cause the algorithm to be executed once every n triggers. All enabled algorithms execute on the first trigger after INIT.
ALGorithm Note If <alg_name> specifies an undefined algorithm, ALG:SIZE? returns 0. This can be used to determine whether algorithm <alg_name> is defined. • Returned Value: numeric value up to the maximum available algorithm memory (this approximately 40k words). The type is int32. •...
ALGorithm • When Accepted: Both before and after INIT. Also accepted before and after the algorithm referenced is defined. • Related Commands: ALG:UPDATE, ALG:STATE?, ALG:DEFINE • Send with VXIplug&play Function: hpe1422_cmd(...) Usage ALG:STATE 'ALG2',OFF disable ALG2 ALGorithm[:EXPLicit][:STATe]? ALGorithm[:EXPLicit][:STATe]?’<alg_name>’ returns the state (enabled or disabled) of algorithm <alg_name>.
ALGorithm Note If <alg_name> specifies an undefined algorithm, ALG:TIME? returns 0. This can be used to determine whether algorithm <alg_name> is defined. This command forces algorithms to run internally. If an algorithm contains a run-time error, no data can be returned and the command will not complete (will "hang"). •...
ALGorithm • The <range> and <offset> parameters define the allowable input values to the function (domain). If values input to the function are equal to or outside of (±<range>+<offset>), the function may return ±INF in IEEE-754 format. For example; <range> = 8 (-8 to 8), <offset> = 12. The allowable input values must be greater than 4 and less than 20.
ALGorithm • When <delay> is AUTO, the delay is set to the worst-case time required to execute phases 1 through 3. This provides the fastest execution speed while maintaining a fixed time between trigger and the OUTPUT phase. • To set the time from trigger to the beginning of OUTPUT, use the following procedure.
ALGorithm ALGorithm:UPDate[:IMMediate] ALGorithm:UPDate[:IMMediate] requests an immediate update of any scalar, array, algorithm code, ALG:STATE, or ALG:SCAN:RATIO changes that are pending. Comments • Variables and algorithms can be accepted during Phase 1-INPUT or Phase 2-UPDATE in Figure 7-1 when INIT is active. All writes to variables and algorithms occur to their buffered elements upon receipt.
ALGorithm ALGorithm:UPDate:CHANnel ALGorithm:UPDate:CHANnel <dig_chan> This command is used to update variables, algorithms, ALG:SCAN:RATIO, and ALG:STATE changes when the specified digital input level changes state. When the ALG:UPD:CHAN command is executed, the current state of the digital input specified is saved. The update will be performed at the next update phase (UPDATE in Figure 7-1) following the channel's change of digital state.
ALGorithm Command The following example shows three scalars being written with the associated update Sequence command following. When the ALG:UPD:CHAN command is received, it will read the current state of channel 108, bit 0. At the beginning of the UPDATE phase, a check will be made to determine if the stored state of channel 108 bit 0, is different from the current state.
ALGorithm Notes 1. When the number of update requests exceeds the Update Queue size set with ALG:UPD:WINDOW by one, the module will refuse the request and will issue the error message "Too many updates in queue. Must send UPDATE command." Send ALG:UPDATE, then re-send the update request that caused the error.
The ARM subsystem is only useful when the TRIGer:SOURce is set to TIMer. With the VT1422A, when the TRIG:SOURCE is set to TIMer, an ARM event must occur to start the timer. This can be something as simple as executing the ARM[:IMMediate] command or it could be another event selected by ARM:SOURCE.
Subsystem Syntax [:IMMediate] :SOURce BUS | EXTernal | HOLD | IMMediate | SCP | TTLTrg<n> :SOURce? ARM[:IMMediate] ARM[:IMMediate] arms the trigger system when the module is set to the ARM:SOUR BUS or ARM:SOUR HOLD mode. Comments • Related Commands: ARM:SOURCE, TRIG:SOUR •...
While ARM:SOUR is IMM, simply INITiate the trigger system to start a measurement scan. • When Accepted: Before INIT only. • Related Commands: ARM:IMM, ARM:SOURCE?, INIT[:IMM], TRIG:SOUR • *RST Condition: ARM:SOUR IMM • Send with VXIplug&play Function: hpe1422_cmd(...) Usage ARM:SOUR BUS Arm with ARM command ARM:SOUR TTLTRG3 Arm with VXIbus TTLTRG3 line...
CALCulate CALCulate The Calculate subsystem allows post-processed temperature compensation to be done for voltage readings of the on-board reference thermistor of the VT1586A and for E, J, and T thermocouple types. These commands will normally not be used, instead, the conversions will be done by the DSP on the VT1422A or by the VXIplug&play driver (for VT1529B).
CALCulate Usage CALC:TEMP:THER? 0.0617,5.0 Compute thermistor temperature with thermistor voltage = 0.0617 V, excitation voltage = 5.0 V and resistance = 400 kΩ CALCulate:TEMPerature:TCouple? CALCulate:TEMPerature:TCouple? <type>,<thr_temp>,<volt_array> converts an array of thermocouple output voltages into temperatures. The thermocouple type is specified in the <type> parameter and the isothermal reference temperature is specified in the <thr_temp>...
Page 263
CALCulate errStatus = hpe1422_cmd(vi, "SENS:REF:CHAN (@10001),(@10002:10031)"); /* Specify those channels to be scanned */ errStatus = hpe1422_cmd(vi, "ROUT:SEQ:DEF (@10001:10031,10000)"); errStatus = hpe1422_cmd(vi, "INIT"); /* read voltages back into array */ errStatus = hpe1422_cmd(vi, "FORM PACK,64"); /* Get unconverted data from the FIFO */ errStatus = hpe1422_readFifo_Q(vi, 32, 64, voltArray, &howManyRead);...
CALibration CALibration The Calibration subsystem provides for two major categories of calibration. 1. "A/D Calibration"— In these procedures, an external multimeter is used to calibrate the A/D gain on all five of its ranges. The multimeter also determines the value of the VT1422A's internal calibration resistor. The values generated from this calibration are then stored in nonvolatile memory and become the basis for "Working Calibrations.
CALibration Comments • Related Commands: CAL:VAL:RES, CAL:STOR ADC • When Accepted: Not while INITiated • Send with VXIplug&play Function: hpe1422_cmd(...) Command CAL:CONF:RES connect reference resistor to Calibration Sequence *OPC? or SYST:ERR? must wait for CAL:CONF:RES to complete (now measure ref resistor with external DMM) CAL:VAL:RES <measured value>...
CALibration Command CAL:CONF:VOLTAGE .0625, ZERO connect voltage reference to Calibration Sequence *OPC? or SYST:ERR? must wait for CAL:CONF:VOLT to complete (now measure voltage with external DMM) CAL:VAL:VOLT <measured value> Send measured value to module repeat above sequence for full-scale repeat zero and full-scale for remaining ranges (0.25, 1, 4, 16) CAL:STORE ADC Store cal constants in non-volatile memory (used only at end of complete...
CALibration • Failure Information for +1 return: The FIFO buffer will contain pairs of values. The first value will be the failing channel and the second value is the Failure Code for that channel. Failure Codes found in the FIFO buffer are: a.
CALibration CALibration:REMote:DATA? CALibration:REMote:DATA? extracts the remote calibration constants generated using the CAL:REMote? command. Comments • CAL:REM:DATA returns a definite length block of 1,024 float32 values that represent a gain and offset pair for each of 512 possible remote channels. The block is always 1,024, float64 values (8192 bytes) regardless how many RSCUs are actually connected to the VT1422A.
CALibration CALibration:SETup CALibration:SETup causes the Channel Calibration function to be performed for every module channel with an analog SCP installed (input or output). The Channel Calibration function calibrates the A/D Offset and the Gain/Offset for these analog channels. This calibration is accomplished using internal calibration references. For more information see *CAL? on page 399.
CALibration • Related Commands: SYST:ERR?, CAL:SETup, *CAL? • Send with VXIplug&play Function: hpe1422_cmdInt16_Q(...) Usage See CAL:SETup. CALibration:STORe CALibration:STORe <type> stores the VT1422A’s most recently measured calibration constants into Flash Memory (Electrically Erasable Programmable Read Only Memory). When <type>=ADC, the module stores its A/D calibration constants as well as constants generated from *CAL?/CAL:SETup into Flash Memory.
CALibration Command Storing A/D cal constants Sequence perform complete A/D calibration, then... CAL:STORE ADC Storing channel tare (offset) values CAL:TARE <ch_list> to correct channel offsets CAL:STORE TARE Optional depending on necessity of long term storage CALibration:TARE CALibration:TARE (@<ch_list>) measures offset (or tare) voltage present on the channels specified and stores the value in on-board RAM as a calibration constant for those channels.
Page 273
CALibration Parameters Parameter Parameter Range of Default Name Type Values Units ch_list channel list (string) 100 - 15731 none Comments • CAL:TARE also performs the equivalent of a *CAL? operation. This operation uses the tare constants to set a DAC which will remove each channel offset as "seen"...
CALibration • The VT1422A's Flash Memory has a finite lifetime of approximately 10,000 write cycles (unlimited read cycles). While executing CAL:STOR once every day would not exceed the lifetime of the Flash Memory for approximately 27 years, an application that stored constants many times each day would unnecessarily shorten the Flash Memory's lifetime.
CALibration CALibration:TARE? CALibration:TARE? Returns a value to indicate the success of the last CAL:TARE operation. CAL:TARE? returns the value only after the CAL:TARE operation is complete. • Returned Value: Value Meaning Further Action Cal OK None Cal Error Query the Error Queue (SYST:ERR?) See “Error Messages”...
CALibration <ref_ohms> must be within 5% of the 7500 Ω nominal reference resistor value • or a -222 ’Data out of range’ error will be generated. If this error occurs, verify the external measurement equipment and run *TST? on the VT1422A. •...
CALibration • <ref_volts> may be specified in millivolts (mV). • When Accepted: Not while INITiated • Related Commands: CAL:CONF:VOLT, CAL:STORE ADC • Send with VXIplug&play Function: hpe1422_cmd(...) Command CAL:CONF:VOLTAGE 4,FSCALE *OPC? Sequence Wait for operation to complete enter statement (now measure voltage with external DMM) CAL:VAL:VOLT <measured value>...
DIAGnostic DIAGnostic The DIAGnostic subsystem allows special operations to be performed that are not standard in the SCPI language. This includes checking the current revision of the Control Processor's firmware and that it has been properly loaded into Flash Memory. Subsystem Syntax DIAGnostic :CALibration...
DIAGnostic DIAGnostic:CALibration:SETup[:MODE] DIAGnostic:CALibration:SETup[:MODE] <mode> sets the type of calibration to use for analog output SCPs like the VT1531A and VT1532A when *CAL? or CAL:SET are executed. Parameters Parameter Parameter Range of Default Name Type Values Units mode boolean (uint 16) 0 | 1 volts Comments...
DIAGnostic DIAGnostic:CALibration:TARE[:OTDetect]:MODE DIAGnostic:CALibration:TARE[:OTDetect]:MODE <mode> sets whether Open Transducer Detect current will be turned off or left on (the default mode) during the CAL:TARE operation. Parameters Parameter Parameter Range of Default Name Type Values Units mode boolean (uint 16) 0 | 1 volts Comments •...
DIAGnostic DIAGnostic:CHECksum? DIAGnostic:CHECksum? performs a checksum operation on Flash Memory. A returned value of 1 indicates that Flash memory contents are correct. A returned value of 0 indicates that the Flash Memory is corrupted or has been erased. Comments • Returned Value: Returns 1 or 0.
DIAGnostic DIAGnostic:CUSTom:MXB DIAGnostic:CUSTom:MXB <slope>,<offset>,(@<ch_list>) sends the <slope> and <offset> parameters that allow the driver to calculate and download a custom linear Engineering Unit Conversion table to the VT1422A. Use the “[SENSe:]FUNCtion:CUSTom” on page 340 to link this custom EU conversion with channels in <ch_list>.
EU with chs 0000-0131 DIAGnostic:CUSTom:PIECewise DIAGnostic:CUSTom:PIECewise <table_range>,<table_block>, (@<ch_list>) downloads a custom piece wise Engineering Unit Conversion table (in <table_block>) to the VT1422A. Contact a VXI Technology System Engineer for more information on Custom Engineering Unit Conversion for specific applications. Parameters Parameter...
DIAGnostic DIAGnostic:CUSTom:REFerence:TEMPerature DIAGnostic:CUSTom:REFerence:TEMPerature extracts the current Reference Temperature Register Contents, converts it to 32-bit floating point format and sends it to the FIFO. This command is used to verify that the reference temperature is as expected after measuring it using a custom reference temperature EU conversion table. •...
DIAGnostic DIAGnostic:IEEE? DIAGnostic:IEEE? returns the currently set IEEE mode. Comments • The data type is int16. • Related Commands: DIAG:IEEE • *RST Condition: DIAG:IEEE 1 • Send with VXIplug&play Function: hpe1422_cmdInt16_Q(...) DIAGnostic:INTerrupt[:LINe] DIAGnostic:INTerrupt[:LINe] <intr_line> sets the VXIbus interrupt line the module will use.
DIAGnostic DIAGnostic:OTDetect[:STATe] DIAGnostic:OTDetect[:STATe] <enable>,(@<ch_list>) enables and disables the VT1422A's "Open Transducer Detection" capability (OTD). When Open Transducer Detection is enabled, a very high impedance path connects all SCP channels to a voltage source greater than 16 volts. If an enabled channel has an open transducer, the input signal becomes the source voltage and the channel returns an input over-range value.
DIAGnostic DIAGnostic:OTDetect[:STATe]? DIAGnostic:OTDetect[:STATe]? (@<channel>) returns the current state of "Open Transducer Detection" for the SCP containing the specified <channel>. Parameters Parameter Parameter Range of Default Name Type Values Units channel channel list (string) 100 - 163 none Comments • The <channel> parameter must specify a single channel only. •...
DIAGnostic DIAGnostic:REMote:USER:DATA DIAGnostic:REMote:USER:DATA <user_data_block>,(@<channel> )stores 894, 16-bit words of arbitrary user data to non-volatile flash memory. A custom format can be designed for information storage. For example, the data could define a 32 by 28 word array to store information about each channel. Note A Remote Signal Conditioning Unit’s Flash Memory has a finite lifetime of approximately 10,000 write cycles (unlimited read cycles).
DIAGnostic • Returned Value: DIAG:REM:USER:DATA? returns an IEEE definite length data block which represents an array of 894, int16 values. • RST Condition: Stored values not changed by *RST • Send with VXIplug&play Function: hpe1422_cmdInt16Arr_Q(...) DIAGnostic:TEST:REMote:NUMber? DIAGnostic:TEST:REMote:NUMber? <test_num>,<iterations>,(@<channel>) executes a selected self-test number on a single Remote Signal Conditioning Unit connected through the VT1539A SCP.
DIAGnostic DIAGnostic:TEST:REMote:SELFtest? DIAGnostic:TEST:REMote:SELFtest? (@<ch_list>) executes a self-test on a single Remote Signal Conditioning Unit connected through the VT1539A SCP. An example of an RSCU is the VT1529A/B Remote Strain Bridge Conditioning unit. Parameters Parameter Parameter Range of Default Name Type Values Units channel...
Page 291
DIAGnostic Test 5: This tests the filter settings on each bank (of eight channels). The method of this test is to ensure that the approximate rise times increase as the filters are changed from 100 Hz to 10 Hz and then to 2 Hz. The list of possible error messages is shown below (NOTE that the 1xx prefix to the channel number denotes the first three digits that uniquely identify which VT1529A/B is to be tested –...
DIAGnostic DIAGnostic:VERSion? DIAGnostic:VERSion? returns the version of the firmware currently loaded into Flash Memory. The version information includes manufacturer, model, serial number, firmware version, and date. Comments • Returned Value: Examples of the response string format: HEWLETT-PACKARD,E1422A,US34000478,A.04.00,Thu Aug 5 9:38:07 MDT 1994 •...
FETCh? FETCh? Subsystem Syntax FETCh? returns readings stored in VME memory. Comments • This command is only available in systems using an Agilent/HP E1405B/06A command module. • FETCH? does not alter the readings stored in VME memory. Only the *RST or INIT…...
Page 294
FETCh? Use Sequence MEM:VME:ADDR #H300000 MEM:VME:SIZE #H100000 1 megabyte (MB) or 262,144 readings MEM:VME:STAT ON × ° (set up VT1422A for scanning) × TRIG:SOUR IMM let unit trigger on INIT INIT program execution remains here until VME memory is full or the VT1422A has stopped taking readings FORM REAL,64 affects only the return of data...
FORMat FORMat The FORMat subsystem provides commands to set and query the response data format of readings returned using the [SENSe:]DATA:FIFO:…? commands. Subsystem Syntax FORMat [:DATA] <format>[,<size>] [:DATA]? FORMat[:DATA] FORMat[:DATA] <format>[,<size>] sets the format for data returned using the [SENSe:]DATA:FIFO:…?, [SENSe:]DATA:CVTable and FETCh? commands. Parameters Parameter Parameter...
Page 296
FORMat Note *TST? leaves the instrument in its power-on reset state. This means that the ASC,7 data format is set even if something else had been set before executing *TST?. If the FIFO needs to read for test information, set the format after *TST? and before reading the FIFO.
FORMat FORMat[:DATA]? FORMat[:DATA]? returns the currently set response data format for readings. Comments • Returned Value: Returns REAL, +32 | REAL, +64 | PACK, +64 | ASC, +7. The data type is string, int16. • Related Commands: FORMAT • *RST Condition: ASCII, 7 •...
INITiate INITiate The INITiate command subsystem moves the VT1422A from the Trigger Idle State to the Waiting-For-Trigger State. When initiated, the instrument is ready to receive one (:IMMediate) or more (depending on TRIG:COUNT) trigger events. On each trigger, the module will perform one control cycle which includes reading analog and digital input channels (Input Phase), executing all defined algorithms (Calculate Phase) and updating output channels (Output Phase).
INPut • When Accepted: Not while INITiated • Related Commands: INP:FILT:FREQ?, INP:FILT:STAT ON | OFF • *RST Condition: generally set to MIN. The VT1529A/B is set to 10 Hz. • Send with VXIplug&play Function: hpe1422_cmd(...) Usage INP:FILT:FREQ 100,(@100:119) Set cutoff frequency of 100 Hz for first 20 channels INPUT:FILTER:FREQ 2,(@15622) Set cutoff frequency of 2 Hz for RSC...
INPut INPut:FILTer[:LPASs][:STATe] INPut:FILTer[:LPASs][:STATe] <enable>,(@<ch_list>) enables or disables a programmable filter SCP or RSC channel. When disabled (<enable> = OFF), these channels are in their "pass through" mode and provide only a 20 kHz, single-pole low pass filter. When re-enabled (<enable> = ON), the SCP channel reverts to its previously programmed setting.
INPut INPut:GAIN INPut:GAIN <gain>,(@<ch_list>) sets the channel gain on programmable amplifier SCP or RSCU. Note An important thing to understand about input amplifier SCPs and RSCUs is that given a fixed input value at a channel, changes in channel gain do not change the value returned from that channel.
INPut INPut:GAIN? INPut:GAIN? (@<channel>) returns the gain currently set for channel. If the channel is not on an input SCP, the query will return zero. Parameters Parameter Parameter Range of Default Name Type Values Units channel channel list (string) 100 - 163 none Comments •...
INPut INPut:LOW? INPut:LOW? (@<channel>) returns the LO input configuration for the channel specified by <channel>. This command is for strain SCPs only, not for VT1529A/B. Parameters Parameter Parameter Range of Default Name Type Values Units channel channel list (string) 100 - 163 none Comments •...
INPut INPut:POLarity? INPut:POLarity? <channel> returns the logical input polarity on a digital SCP channel. Parameters Parameter Parameter Range of Default Name Type Values Units channel string 100 - 163 none Comments • The <channel> parameter must specify a single channel. •...
MEASure MEASure The MEASure subsystem provides convenient setup-and-execution for some pre-measurement strain operations. Subsystem Syntax MEASure :VOLTage :EXCitation (@<ch_list>) :UNSTrained (@<ch_list>) MEASure:VOLTage:EXCitation? MEASure:VOLTage:EXCitation? (@<ch_list>) This command automatically configures the VT1422A to measure the bridge excitation voltage at each channel in <ch_list>...
Page 307
MEASure Notes 1. Unlike the MEAS:VOLT:EXC? command, the individual command sequence above cannot keep defined algorithms from running at INIT. Since algorithms can place values into the FIFO buffer, it will be necessary to determine which FIFO values are the excitation voltages. 2.
MEASure MEASure:VOLTage:UNSTrained? MEASure:VOLTage:UNSTrained? (@<ch_list>) This command automatically configures the VT1422A to measure the bridge output voltage at each channel in <ch_list> and initiates a measurement scan. It averages 32 measurements for each channel and the averaged values are stored for later use by the strain Engineering Units conversion process on these channels.
Page 309
MEASure • This command executes a measurement scan without running defined algorithms. This is to keep algorithms from placing values in the FIFO buffer. • The measurement sample interval is 392 µs • Filter settings and states are not changed by this command. •...
MEMory MEMory The MEMory subsystem allows using VME memory as an additional reading storage buffer. Subsystem Syntax MEMory :VME :ADDRess <A24_address> :ADDRess? :SIZE <mem_size> :SIZE? :STATe 1 | 0 | ON | OFF :STATe? Note This subsystem is only available in systems using an Agilent/HP E1405B/06A command module.
MEMory MEMory:VME:ADDRess MEMory:VME:ADDRess <A24_address> sets the A24 address of the VME memory card to be used as additional reading storage. Parameters Parameter Parameter Range of Default Name Type Values Units A24_address numeric valid A24 address none Comments • This command is only available in systems using an Agilent/HP E1405B/06A command module.
MEMory MEMory:VME:SIZE MEMory:VME:SIZE <mem_size> Specifies the number of bytes of VME memory to allocate for additional reading storage. Parameters Parameter Parameter Range of Default Name Type Values Units mem_size numeric to limit of available VME memory none Comments • This command is only available in systems using an Agilent/HP E1405B/6A command module.
MEMory MEMory:VME:STATe MEMory:VME:STATe <enable> enables or disables use of the VME memory card as additional reading storage. Parameters Parameter Parameter Range of Default Name Type Values Units enable boolean (uint16) 1 | 0 | ON | OFF none Comments • This command is only available in systems using an Agilent/HP E1405B/06A command module.
OUTPut OUTPut The OUTPut subsystem is involved in programming source SCPs as well as controlling the state of VXIbus TTLTRG lines 0 through 7. Subsystem Syntax OUTPut :CURRent :AMPLitude <amplitude>,(@<ch_list>) :AMPLitude? (@<channel>) [:STATe] 1 | 0 | ON | OFF,(@<ch_list>) [:STATe]? (@<channel>) :POLarity NORMal | INVerted,(@<ch_list>) :POLarity? (@<channel>)
OUTPut Parameters Parameter Parameter Range of Default Name Type Values Units amplitude numeric (float32) MIN | 30E-6 | MAX | 488E-6 A dc ch_list channel list (string) 100 - 163 none Comments Select 488E-6 (or MAX) for measuring resistances of less than 8000 Ω. Select •...
OUTPut • Returned Value: Numeric value of amplitude set. The data type is float32. • Related Commands: OUTP:CURR:AMPL • Send with VXIplug&play Function: hpe1422_cmdReal64_Q(...) Usage OUTP:CURR:AMPLITUDE? (@163) Check SCP current set for channel 63 (returns +3.0E-5 or +4.88E-4) OUTPut:CURRent[:STATe] OUTPut:CURRent[:STATe] <enable>,(@<ch_list>) enables or disables current source on channels specified in <ch_list>.
OUTPut OUTPut:CURRent[:STATe]? OUTPut:CURRent[:STATe]? (@<channel>) returns the state of the Current Source SCP channel specified by <channel>. If the channel is not on a VT1505A Current Source SCP, the query will return zero. Parameters Parameter Parameter Range of Default Name Type Values Units channel...
OUTPut OUTPut:POLarity? OUTPut:POLarity? (@<channel>) returns the polarity on the digital output channel in <channel>. Parameters Parameter Parameter Range of Default Name Type Values Units channel string 100 - 163 none Comments • The <channel> parameter must specify a single channel. •...
OUTPut OUTPut:SHUNt? OUTPut:SHUNt? (@<channel>) returns the status of the shunt resistance on the specified Strain SCP or RSC channel. Parameters Parameter Parameter Range of Default Name Type Values Units channel channel list (string) 100 - 15731 none Comments • The <channel> parameter must specify a single channel only. •...
OUTPut • Related Commands: OUTPut:SHUNt…, SENSe:FUNCtion:STRain…, [SENSe:]STRain… • *RST Condition: OUTP:SHUNT:SOURCE INT on all VT1529A/B channels • Send with VXIplug&play Function: hpe1422_cmd(...) Usage OUTP:SHUNT:SOUR EXT,(@10000,10800) select user supplied shunt resistor on VT1529As connected to channels 0, 1, 8, and 9 OUTPut:SHUNt:SOURce? OUTPut:SHUNt:SOURce? (@<channel>) returns the source of the shunt...
OUTPut OUTPut:TTLTrg:SOURce OUTPut:TTLTrg:SOURce <trig_source> selects the internal source of the trigger event that will operate the VXIbus TTLTRG lines. Parameters Parameter Parameter Range of Default Name Type Values Units trig_source discrete (string) ALGorithm | TRIGger | FTRigger | SCPlugon none Comments •...
OUTPut OUTPut:TTLTrg<n>[:STATe] OUTPut:TTLTrg<n>:STATe <ttltrg_cntrl> specifies which VXIbus TTLTRG line is enabled to source a trigger signal when the module is triggered. TTLTrg<n> can specify line 0 through 7. For example, …:TTLTRG4 or TTLT4 for VXIbus TTLTRG line 4. Parameters Parameter Parameter Range of Default...
OUTPut OUTPut:TYPE OUTPut:TYPE <select>,(@<ch_list>) sets the output drive characteristic for digital SCPs with programmable channels. Parameters Parameter Parameter Range of Default Name Type Values Units select discrete (string) PASSive | ACTive seconds ch_list string 100 - 163 none Comments • If the channels specified are on an SCP that doesn't support this function an error will be generated.
OUTPut OUTPut:VOLTage:AMPLitude OUTPut:VOLTage:AMPLitude <amplitude>,(@<ch_list>) sets the excitation voltage on programmable Strain Bridge Completion SCPs pointed to by <ch_list> (the VT1511A for example). Note This command is not used to set output voltage on SCPs like the VT1531A Voltage Output SCP. Parameters Parameter Parameter...
ROUTe ROUTe The ROUTe subsystem provides a method to define the sequence of channels in the VT1422A’s Analog Input scan list. Note that any analog input channels specified in an algorithm definition also affect the contents of this scan list. Queries are provided to determine the overall channel list definition including analog output channels as well as digital input and output channels.
Page 326
ROUTe • Controlling Data Destination: The relative form of the SCPI Channel List syntax is used to control the destination of data from channels in the scan list. See “Channel List (Relative Form)” on page 232 for a discussion of the syntax. The value of the "Data Destination"...
ROUTe • Notice that since there are only 502 CVT elements available for up to 512 possible remote channel specifiers, these last 10 channels (15722-15731) must not be sent to the CVT or an error will be generated. Since the default data destination is to BOTH the FIFO and CVT (Data Destination 3), any reference in ROUT:SEQ:DEF to the last 10 remote channels must force the data destination to FIFO only.
ROUTe • Returned Value: Data type is an int16 array). Use ROUT:SEQ:POINTS? to determine how many values will be returned in the array. Can also be returned as type string, see later comment regarding VXIplug&play function. When the <type> parameter is "AIN," "AOUT," "DIN," or "DOUT," each value returned represents a channel number.
Page 329
ROUTe • Returned Value: Numeric. The C_SCPI type is int16. • *RST Condition: The Analog Input list returns +8, the others return +0. • Send with VXIplug&play Function: hpe1422_cmdInt16_Q(...) Usage ROUT:SEQ:POINTS? AIN query for analog input channel count Chapter 7 VT1422A Command Reference...
SAMPle SAMPle The SAMPle subsystem provides commands to set and query the interval between channel measurements (pacing). Subsystem Syntax SAMPle :TIMer <interval> :TIMer? SAMPle:TIMer SAMPle:TIMer <interval> sets the time interval between channel measurements. It is used to provide additional channel settling time. See “Settling Characteristics” on page 157 Parameters Parameter...
SAMPle SAMPle:TIMer? SAMPle:TIMer? returns the sample timer interval. Comments • Returned Value: Numeric. The data type is float32. • Related Commands: SAMP:TIMER • *RST Condition: Sample Timer set to 4.0E-5 seconds. • Send with VXIplug&play Function: hpe1422_cmdReal64_Q(...) Usage SAMPLE:TIMER? Check the interval between channel measurements Chapter 7 VT1422A Command Reference...
[SENSe] [SENSe] The SENSe subsystem controls conversion of the sensed electrical signal to a value in Engineering Units (EU) like volts, ohms, and temperature. Sense commands allow one to configure and extract data from the A/D-EU conversion portion of the instrument (see “INPut”...
Page 334
[SENSe] • The Current Value Table is an area in memory that can contain as many as 502 32-bit floating point values. Algorithms can copy any of their variable values into these CVT elements while they execute. The algorithm statements to put data into the CVT are: writecvt( <expr>, <element_number>...
[SENSe] [SENSe:]DATA:CVTable:RESet [SENSe:]DATA:CVTable:RESet sets all 64 Current Value Table entries to the IEEE-754 "Not-a-number." Comments • The value of NaN is +9.910000E+037 (ASCII). • Executing DATA:CVT:RES while the module is INITiated will generate an error 3000, "Illegal while initiated." • When Accepted: Not while INITiated •...
[SENSe] • Related Commands: SENSE:DATA:FIFO:HALF?, ROUT:SEQ:DEFine • *RST Condition: FIFO is empty • Use VXIplug&play function: hpe1422_readFifo_Q(...) Usage DATA:FIFO? return all FIFO values until measurements complete and FIFO empty Command set up scan list/algorithms and trigger SENSE:DATA:FIFO:ALL? Sequence now execute read statement read statement does not complete until triggered measurements are complete and FIFO is empty...
[SENSe] [SENSe:]DATA:FIFO:HALF? [SENSe:]DATA:FIFO:HALF? returns 32,768 values if the FIFO buffer is at least half-full. This command provides a fast means of acquiring blocks of values from the buffer. Comments • For acquiring data from continuous scans, an application needs to execute a DATA:FIFO:HALF? command and a read statement often enough to keep up with the rate that values are being sent to the FIFO.
[SENSe] [SENSe:]DATA:FIFO:MODE [SENSe:]DATA:FIFO:MODE <mode> sets the mode of operation for the FIFO buffer. Parameters Parameter Parameter Range of Default Name Type Values Units mode discrete (string) BLOCk | OVERwrite none Comments • In BLOCk(ing) mode, if the FIFO becomes full and measurements are still being made, the new values are discarded.
[SENSe] [SENSe:]DATA:FIFO:PART? [SENSe:]DATA:FIFO:PART? <n_values> returns <n_values> from the FIFO buffer. Parameters Parameter Parameter Range of Default Name Type Values Units n_values numeric (int32) 1 - 2,147,483,647 none Comments • Use the DATA:FIFO:COUNT? command to determine the number of values in the FIFO buffer.
[SENSe] [SENSe:]DATA:FIFO:RESet [SENSe:]DATA:FIFO:RESet clears the FIFO of values. The FIFO counter is reset to 0. Comments • When Accepted: Not while INITiated • Related Commands: SENSE:DATA:FIFO… • *RST Condition: SENSE:DATA:FIFO:RESET • Send with VXIplug&play Function: hpe1422_cmd(...) Usage SENSE:DATA:FIFO:RESET Clear the FIFO [SENSe:]FREQuency:APERture [SENSe:]FREQuency:APERture <gate_time>,<ch_list>...
[SENSe] [SENSe:]FREQuency:APERture? [SENSe:]FREQuency:APERture? <channel> returns the frequency counting gate time. Parameters Parameter Parameter Range of Default Name Type Values Units channel string 100 - 163 none Comments • If the channel specified is on an SCP that doesn't support this function, an error will be generated.
[SENSe] [SENSe:]FUNCtion:CUSTom [SENSe:]FUNCtion:CUSTom [<range>,](@<ch_list>) links channels with the custom Engineering Unit Conversion table loaded with the DIAG:CUST:MXB or DIAG:CUST:PIECE commands. Contact a VXI Technology System Engineer for more information on Custom Piecewise Engineering Unit Conversion for specific applications. Parameters Parameter...
[SENSe] [SENSe:]FUNCtion:CUSTom:HVOLtage [SENSe:]FUNCtion:CUSTom:HVOLtage [<range>,](@<ch_list>) links VT1529B high-level input (DCV measurement) channels with the custom Engineering Unit Conversion table loaded with the DIAG:CUST:MXB or DIAG:CUST:PIECE commands. This command is valid only on the VT1529B and is available with VXIplug&play driver revision A.01.09 or later (revision A.01.06 or later of hpe1422_32.dll). Parameters Parameter Parameter...
[SENSe] [SENSe:]FUNCtion:CUSTom:REFerence [SENSe:]FUNCtion:CUSTom:REFerence [<range>,](@<ch_list>) links channels with the custom Engineering Unit Conversion table loaded with the DIAG:CUST:PIECE command. Measurements from a channel linked with SENS:FUNC:CUST:REF will result in a temperature that is sent to the Reference Temperature Register. This command is used to measure the temperature of an isothermal reference panel using custom characterized RTDs or thermistors.
SENS:FUNC:CUST:TC allows an EU table to be used that is custom matched to thermocouple wire that has been characterized. Contact a VXI Technology System Engineer for more information on Custom Piecewise Engineering Unit Conversion for specific applications.
[SENSe] Usage program must put table constants into array table_block DIAG:CUST:PIEC 1,table_block,(@100:107) send characterized thermocouple table for use by channels 0-7 SENS:FUNC:CUST:TC N,.25,(@100:107) link custom thermocouple EU with chs 0-7, use reference temperature compensation for N type wire. SENSE:REF RTD,92,(@120) designate a channel to measure the reference junction temperature include these channels in a scan list (REF channel first)
[SENSe] [SENSe:]FUNCtion:HVOLtage [SENSe:]FUNCtion:HVOLtage [<range>,](@<ch_list>) links the specified VT1529B channels to return dc voltage on the high-level input (Excitation Sense + and -) pins on the RJ-45 connector for the channel. This command is valid only on the VT1529B and is available with VXIplug&play driver revision A.01.09 or later (revision A.01.06 or later of hpe1422_32.dll).
[SENSe] [SENSe:]FUNCtion:RESistance [SENSe:]FUNCtion:RESistance <excite_current>,[<range>,](@<ch_list>) links the EU conversion type for resistance and range with the channels specified by <ch_list>. Parameters Parameter Parameter Range of Default Name Type Values Units excite_current discrete(string) 30E-6 | 488E-6 | MIN | MAX Amps V dc range numeric (float32) see first comment...
[SENSe] [SENSe:]FUNCtion:STRain:FBENding [SENSe:]FUNCtion:STRain:FBPoisson [SENSe:]FUNCtion:STRain:FPOisson [SENSe:]FUNCtion:STRain:HBENding [SENSe:]FUNCtion:STRain:HPOisson [SENSe:]FUNCtion:STRain[:QUARter] [SENSe:]FUNCtion:STRain:Q120 [SENSe:]FUNCtion:STRain:Q350 [SENSe:]FUNCtion:STRain:USER [SENSe:]FUNCtion:STRain:FBENding [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:FBPoisson [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:FPOisson [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:HBENding [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:HPOisson [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain[:QUARter] [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:Q120 [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:Q350 [<range>,](@<ch_list>) [SENSe:]FUNCtion:STRain:USER [<range>,](@<ch_list>) A Note on Syntax: Although the strain function is comprised of nine separate SCPI commands, their syntax and function is so similar they are discussed in a single reference entry.
Page 350
[SENSe] Command Bridge Type Strain SCP and VT1529A/B Usage :FBENding Full Bending Bridge Both VT1529A/B and SCPs :FBPoisson Full Bending Poisson Bridge SCPs only :FPOisson Full Poisson Bridge SCPs only :HBENding Half Bending Bridge Both VT1529A/B and SCPs :HPOisson Half Poisson Bridge SCPs only [:QUARter] Quarter Bridge (default)
[SENSe] • If using amplifier SCPs, set them first and keep their settings in mind when specifying a range setting. For instance, if the expected signal voltage is to be approximately 0.1 V dc and the amplifier SCP for that channel has a gain of 8, <range>...
Page 352
[SENSe] [SENSe:]FUNCtion:STRain:<bridge_type>:POST [<range>,](@<ch_list>) links the post-processing strain EU conversion with the VT1529B channels specified by <ch_list> to measure the strain bridge output. See “Strain Measurement Command Sequence” on page 165. Both the strain channels and excitation channel should appear in the scan list set by ROUT:SEQ:DEF.
[SENSe] • Related Commands: CAL:REMote?,[SENSE:]STRAIN… • *RST Condition: SENSE:FUNC:VOLT AUTO on all channels and bridges set to FBEN on all strain channels • Send with VXIplug&play Function: hpe1422_cmd(...) Usage SENS:FUNC:STRAIN:QUAR:POST 1,(@10000:10007) quarter bridge conversion for VT1529B channels 10000 to 10007 SENSE:FUNC:STRAIN:FBEN:POST 1,(@10800:10931) full bridge conversion for VT1529B channels 10800 to 10931 (64 channels)
Page 354
[SENSe] • If using amplifier SCPs, set them first and keep their settings in mind when specifying a range setting. For instance, if the expected signal voltage is to be approximately 0.1 V dc and the amplifier SCP for that channel has a gain of 8, <range>...
[SENSe] [SENSe:]FUNCtion:TEMPerature:POST [SENSe:]FUNCtion:TEMPerature:POST TC,<sub_type>,[<range>,] (@<ch_list>) links VT1529B channels to a post-processing temperature EU conversion based on the sensor specified in <type> and <sub_type>. Note: Do not include the thermocouple reference temperature or thermistor excitation channels in this command (for that, use the SENS:REF:POST <type>,<sub_type>,<range>, (@<exc_ch>),(@<thr_ch>) command).
[SENSe] [SENSe:]FUNCtion:TOTalize [SENSe:]FUNCtion:TOTalize <ch_list> sets the SENSe function to TOTalize for channels in <ch_list>. Parameters Parameter Parameter Range of Default Name Type Values Units ch_list string 100 - 163 none Comments • The totalize function counts rising edges of digital transitions at Frequency/ Totalize SCP channels.
[SENSe] • If using amplifier SCPs or RSCs, set them first and keep their settings in mind when specifying a range setting. For instance, if the expected signal voltage is to be approximately 0.1 V dc and the amplifier SCP for that channel has a gain of 8, <range>...
Page 358
[SENSe] Parameters Parameter Parameter Range of Default Name Type Values Units type discrete (string) THERmistor | RTD | CUSTom none sub_type numeric (float32) for THER, use 5000 numeric (float32) for RTD, use 85 | 92 none for CUSTom, use 1 none V dc range...
[SENSe] [SENSe:]REFerence:POST [SENSe:]REFerence:POST THERmistor,<resistance>,[<range>,] (@<exc_ch>),(@<thr_ch>) links the thermistor channel in <thr_ch> to the excitation voltage channel in <exc_ch> and to the reference junction temperature EU conversion. The excitation channel is automatically set to SENS:FUNC:HVOL and the thermistor channel is set to SENS:FUNC:VOLT. The excitation channel must be on the same VT1529B as the thermistor channel.
[SENSe] [SENSe:]REFerence:CHANnels [SENSe:]REFerence:CHANnels (@<ref_channel>),(@<ch_list>) causes channel specified by <ref_channel> to appear in the scan list just before the channel(s) specified by <ch_list>. This command is used to include the thermocouple reference temperature channel in the scan list before other thermocouple channels are measured. Parameters Parameter Parameter...
[SENSe] Parameters Parameter Parameter Range of Default Name Type Values Units ref_channel channel list (string) 10000 - 15731 none ch_list channel list (string) 10000 - 15731 none Comments • Use SENS:FUNC:TEMP:POST to configure channels to measure thermocouples. Then use SENS:REF:POST to configure one or more channels to measure an isothermal reference temperature.
[SENSe] Parameters Parameter Parameter Range of Default Name Type Values Units degrees_c numeric (float32) -126 to +126 °C Comments • This command is used to specify to the VT1422A the temperature of a controlled temperature thermocouple reference junction. • When Accepted: Not while INITiated •...
[SENSe] *RST Condition: Reference temperature is 0 °C. • • Send with VXIplug&play Function: hpe1422_cmd(...) Usage SENSE:REF:TEMP:POST 40,(@10008:10015) channels 10008 to 10015 will assume compensation junction at 40 °C [SENSe:]REFerence:THERmistor:RESistance:POST [SENSe:]REFerence:THERmistor:RESistance:POST <resistance>,(@<thr_list>) specifies the sum of the resistor values in the thermistor divider circuit (see Figure 5-5 on page 173) for the thermistor channels in <thr_list>...
[SENSe] [SENSe:]REFerence:THERmistor:RESistance:POST? [SENSe:]REFerence:THERmistor:RESistance:POST? (@<thr_ch>) returns the programmed sum of the resistor values in the thermistor divider circuit. This command is valid only on the VT1529B and is available with VXIplug&play driver revision A.01.09 or later (revision A.01.06 or later of hpe1422_32.dll). Parameters Parameter Parameter...
[SENSe] • Send with VXIplug&play Function: hpe1422_cmd(...) Usage SENS:STRAIN:CONN EXC,(@10000:10031) configure strain RSC unit channels 00-31 connected to on-board channel 00 to measure excitation voltages [SENSe:]STRain:CONNect? [SENSe:]STRain:CONNect? (@<channel>) returns the measurement connection state for the single VT1529A/B channel specified by <channel>. Parameters Parameter Parameter...
[SENSe] Parameters Parameter Parameter Range of Default Name Type Values Units excite_v numeric (float32) 0.01 - 99 volts ch_list channel list (string) 100 - 15731 none Comments • The <ch_list> parameter must specify the channel used to sense the bridge voltage, not the channel position on a Bridge Completion SCP.
[SENSe] [SENSe:]STRain:EXCitation:STATe [SENSe:]STRain:EXCitation:STATe <enable>,(@<ch_list>) connects or disconnects all four excitation supply ports on a VT1529A/B. Only one channel for each VT1529A/B needs to be specified in <ch_list> and all four excitation supply ports on that unit will configure as specified in <enable>. The first channel number on each possible VT1529A/B is: 10000, 10100, 10800, 10900, 11600, 11700, 12400, 12500, 13200, 13300, 14000, 14100, 14800, 14900, 15600, 15700.
[SENSe] [SENSe:]STRain:GFACtor [SENSe:]STRain:GFACtor <gage_factor>,(@<ch_list>) specifies the gage factor to be used to convert strain bridge readings for the channels specified by <ch_list>. Parameters Parameter Parameter Range of Default Name Type Values Units gage_factor numeric (float32) 1 - 5 none ch_list channel list (string) 100 - 15731 none...
[SENSe] [SENSe:]STRain:POISson [SENSe:]STRain:POISson <poisson_ratio>,(@<ch_list>) sets the Poisson ratio to be used for EU conversion of values measured on sense channels specified by <ch_list>. Parameters Parameter Parameter Range of Default Name Type Values Units poisson_ratio numeric (float32) 0.1 - 0.5 none ch_list channel list (string) 100 - 163...
[SENSe] [SENSe:]STRain:UNSTrained [SENSe:]STRain:UNSTrained <unstrained_v>,(@<ch_list>) specifies the unstrained voltage value to be used to convert strain bridge readings for the channels specified by <ch_list>. The VT1529A/B can use the MEAS:VOLT:UNSTrained command which automatically measures the unstrained bridge values and sends each value to the channels’...
[SENSe] • Related Commands: STRAIN:UNST • Send with VXIplug&play Function: hpe1422_cmdReal64_Q(...) Usage STRAIN:UNST? (@107) query unstrained voltage for channel 7 enter statement here returns the unstrained voltage set by STR:UNST [SENSe:]TOTalize:RESet:MODE [SENSe:]TOTalize:RESet:MODE <select>,<ch_list> sets the mode for resetting totalizer channels in <ch_list>. Parameters Parameter Parameter...
[SENSe] [SENSe:]TOTalize:RESet:MODE? [SENSe:]TOTalize:RESet:MODE? <channel> returns the reset mode for the totalizer channel in <channel>. Parameters Parameter Parameter Range of Default Name Type Values Units channel string 100 - 163 none Comments • The <channel> parameter must specify a single channel. •...
SOURce • *RST Condition: SOUR:FM:STATE OFF, SOUR:PULM:STATE OFF, SENS:FUNC:COND, and INP:POL for all digital SCP channels. • Related Commands: SOUR:PULM[:STATe], SOUR:PULS:POLarity, SOUR:PULS:PERiod, SOUR:FUNC[:SHAPe]:SQUare • Send with VXIplug&play Function: hpe1422_cmd(...) Usage The variable frequency control for this channel is provided by the algorithm language. When the algorithm executes an assignment statement to this channel, the value assigned will be the frequency setting.
SOURce SOURce:FUNCtion[:SHAPe]:PULSe SOURce:FUNCtion[:SHAPe]:PULSe (@<ch_list>) sets the SOURce function to PULSe for the channels in <ch_list>. Parameters Parameter Parameter Range of Default Name Type Values Units ch_list string 100 - 163 none Comments • This PULSe channel function is further defined by the SOURce:FM:STATe and SOURce:PULM:STATe commands.
SOURce Comments • This command is coupled with the SOURce:FM command. If the FM state is enabled then the PULM state is disabled. If the PULM state is enabled then the FM state is disabled. If both the FM and the PULM states are disabled then the PULSe channel is in the single pulse mode.
SOURce • The variable pulse-width control for this channel is provided by the algorithm language. When the algorithm executes an assignment statement to this channel, the value assigned will be the pulse-width setting. For example: O140 = .0025 /* set channel 43 pulse-width to 2.5 ms */ •...
SOURce • The variable frequency control for this channel is provided by the algorithm language. When the algorithm executes an assignment statement to this channel, the value assigned will be the frequency setting. For example: O143 = 2000 /* set channel 43 to 2 kHz */ •...
Page 380
SOURce • To reduce the offset voltage at each dynamic strain "Buffered Output" channel: 1. Measure a Buffered Output channel with its bridge unstrained and place the value in a variable arbitrarily called <offset_v>. 2. Send minus <offset_v> to that channel with the SOUR:VOLT command. For example: SOUR:VOLT <-offset_v>,(@10000) •...
STATus STATus The STATus subsystem communicates with the SCPI defined Operation and Questionable Data status register sets. Each is comprised of a Condition register, a set of Positive and Negative Transition Filter registers, an Event register, and an Enable register. Condition registers allow the current real-time states of their status signal inputs (signal states are not latched) to be viewed.
Page 382
STATus Initializing the The following table shows the effect of Power-on, *RST, *CLS, and STATus:PRESet Status System on the status system register settings. SCPI SCPI SCPI Event IEEE 488.2 IEEE 488.2 Transition Enable Registers Registers Registers Filters Registers ESE and SRE SESR and STB Power-on preset...
STATus Weighted Bit Register queries are returned using decimal weighted bit values. Enable registers can Values be set using decimal, hex, octal, or binary. The following table can be used to help set Enable registers using decimal and decode register queries. Status System Decimal Weighted Bit Values bit# 3 2 1 0...
(#B). • VXI Interrupts: When Operation Status Group bits 4, 8, 9, 10, or 11 are enabled, VXI card interrupts will occur as follows: When the event corresponding to bit 4 occurs and then is cleared, the card will generate a VXI interrupt.
STATus STATus:OPERation:ENABle? STATus:OPERation:ENABle? returns the value of bits set in the Operation Enable register. Comments • Returned Value: Decimal weighted sum of all set bits. The data type is uint16. • Related Commands: *STB?, SPOLL, STAT:OPER:COND?, STAT:OPER:EVENT?, STAT:OPER:ENABLE • *RST Condition: No change •...
STATus STATus:OPERation:NTRansition STATus:OPERation:NTRansition <transition_mask> sets bits in the Negative Transition Filter (NTF) register. When a bit in the NTF register is set to one, the corresponding bit in the Condition register must change from a one to a zero in order to set the corresponding bit in the Event register.
STATus STATus:OPERation:PTRansition STATus:OPERation:PTRansition <transition_mask> sets bits in the Positive Transition Filter (PTF) register. When a bit in the PTF register is set to one, the corresponding bit in the Condition register must change from a zero to a one in order to set the corresponding bit in the Event register.
STATus STATus:PRESet STATus:PRESet sets the Operation Status Enable and Questionable Data Enable registers to 0. After executing this command, none of the events in the Operation Event or Questionable Event registers will be reported as a summary bit in either the Status Byte Group or Standard Event Status Group.
VXI Interrupts: When bits 9, 10,or 11 are enabled and C-SCPI overlap mode is on (or if using non-compiled SCPI), VXI card interrupts will be enabled. When the event corresponding to bit 9, 10, or 11 occurs, the card will generate a VXI interrupt.
STATus STATus:QUEStionable:ENABle? STATus:QUEStionable:ENABle? returns the value of bits set in the Questionable Enable register. Comments • Returned Value: Decimal weighted sum of all set bits. The data type is uint16. • Related Commands: *STB?, SPOLL, STAT:QUES:COND?, STAT:QUES:EVENT?, STAT:QUES:ENABLE • *RST Condition: No change. •...
STATus STATus:QUEStionable:NTRansition STATus:QUEStionable:NTRansition <transition_mask> sets bits in the Negative Transition Filter (NTF) register. When a bit in the NTF register is set to one, the corresponding bit in the Condition register must change from a one to a zero in order to set the corresponding bit in the Event register.
STATus STATus:QUEStionable:PTRansition STATus:QUEStionable:PTRansition <transition_mask> sets bits in the Positive Transition Filter (PTF) register. When a bit in the PTF register is set to one, the corresponding bit in the Condition register must change from a zero to a one in order to set the corresponding bit in the Event register.
SYSTem SYSTem The SYSTem subsystem is used to query for error messages, types of Signal Conditioning Plug-ons (SCPs) and the SCPI version currently implemented. Subsystem Syntax SYSTem :CTYPe? (@<channel>) :CTYPe:REMote? <@<channel>) :ERRor? :VERSion? SYSTem:CTYPe? SYSTem:CTYPe? (@<channel>) returns the identification of the Signal Conditioning Plug-On installed at the specified channel.
SYSTem Parameters Parameter Parameter Range of Default Name Type Values Units channel channel list (string) 100 - 15731 none Comments • The <channel> parameter must specify a single channel only. Either the 3-digit or 5-digit format can be used. • Returned Value: Examples of the response string format are: E1539 Strain SCP;...
TRIGger TRIGger The TRIGger command subsystem controls the behavior of the trigger system once it is initiated (see INITiate command subsystem). Figure 7-6 shows the overall Trigger System model. The shaded area shows the ARM subsystem portion. ARM:SOURce <source> TRIGger:TIMer <interval> Trigger Timer TRIGger:SOURce <source>...
Page 396
TRIGger Event Sequence Figure 7-7 shows how the module responds to various trigger/arm configurations. Trigger Idle State Initiated State TRIG:SOUR TIMer? Waiting for ARM Event NOTE: For continuous algorithm Trig. Counter= execution use TRIG:COUNT 0 or INF. TRIG:COUNT? This is the default setting. Reset and Start Timer Waiting for...
TRIGger TRIGger:COUNt TRIGger:COUNt <trig_count> sets the number of times the module can be triggered before it returns to the Trigger Idle State. The default count is 1. Note that this default was chosen to make testing data acquisition scan lists easier (only one scan list worth of data in FIFO per trigger).
TRIGger TRIGger[:IMMediate] TRIGger[:IMMediate] causes one trigger when the module is set to the TRIG:SOUR BUS or TRIG:SOUR HOLD mode. Comments • This command is equivalent to the *TRG common command or the IEEE-488.2 "GET" bus command. • Related Commands: TRIG:SOURCE •...
TRIGger • While TRIG:SOUR is IMM, simply INITiate the trigger system to start a measurement scan. • When Accepted: Before INIT only. • Related Commands: ABORt, INITiate, *TRG • *RST Condition: TRIG:SOUR TIMER • Send with VXIplug&play Function: hpe1422_cmd(...) Usage TRIG:SOUR EXT Hardware trigger input at Connector Module...
TRIGger • Related Commands: TRIG:SOUR TIMER, ARM:SOUR, ARM:IMM, INIT, TRIG:SOUR?, ALG:EXPL:TIME? • *RST Condition: TRIG:TIM 1.0E-3 • Send with VXIplug&play Function: hpe1422_cmd(...) Usage TRIG:TIMER 1.0E-1 Set the module to scan inputs and execute all algorithms every 100 ms TRIG:TIMER 1 Set the module to scan inputs and execute all algorithms every second TRIGger:TIMer[:PERiod]?
IEEE-488.2 Common Command Reference IEEE-488.2 Common Command Reference *CAL? *CAL? Calibration command. The calibration command causes the Channel Calibration function to be performed for every module channel. The Channel Calibration function includes calibration of A/D Offset and Gain and Offset for all 64 channels.
IEEE-488.2 Common Command Reference Note If Open Transducer Detect (OTD) is enabled when *CAL? is executed, the module will disable OTD, wait one minute to allow channels to settle, perform the calibration and then re-enable OTD. If OTD is turned off by the program before executing *CAL?, it should also wait one minute for settling.
IEEE-488.2 Common Command Reference *ESE *ESE <mask> Standard Event Status Enable Register Command. Enables one or more events in the Standard Event Status Register to be reported in bit 5 (the Standard Event Status Summary Bit) of the Status Byte Register. An event is enabled by specifying its decimal weight for <mask>.
IEEE-488.2 Common Command Reference *IDN? *IDN? Identity. Returns the device identity. The response consists of the following four fields (fields are separated by commas): • Manufacturer • Model Number • Serial Number (returns 0 if not available) • Driver Revision (returns 0 if not available) *IDN? returns the following response strings depending on model and options: HEWLETT-PACKARD,E1422A,<serial number>,<revision number>...
IEEE-488.2 Common Command Reference *OPC? *OPC? Operation Complete Query. Causes an instrument to place a 1 into the instrument's output queue when all pending instrument operations invoked by SCPI commands are finished. By requiring the computer to read this response before continuing program execution, synchronization can be ensured between one or more instruments and the computer.
IEEE-488.2 Common Command Reference • Sets the trigger system as follows: -- TRIGGER:SOURCE TIMER -- TRIGGER:TIMER 10E-3 -- TRIGGER:COUNT 0 (infinite) -- ARM:SOURCE IMMEDIATE • SAMPLE:TIMER 40E-6 • Aborts all pending operations, returns to Trigger Idle state • Disables the *OPC and *OPC? modes •...
IEEE-488.2 Common Command Reference *STB? *STB? Status Byte Register Query. Returns the weighted sum of all set bits in the Status Byte Register. Refer to the *ESE command earlier in this chapter for a table showing the contents of the Status Byte Register. *STB? does not clear bit 6 (Service Request).
Page 408
IEEE-488.2 Common Command Reference • IF error 3052 'Self test failed. Test info in FIFO' is returned. A FIFO value of ≥ 1 through 99 or 300 is a failed test number. A value of 100 through 163 is a channel number for the failed test.
Page 409
IEEE-488.2 Common Command Reference ANALOG FRONT END DIGITAL TESTS: Test# Description Checks that SCP ID makes sense 30-32: Checks relay driver and fet mux interface with EU CPU 33,71: Checks opening of all relays on power down or input overvoltage 34-37: Check fet mux interface with A/D digital ANALOG TESTS:...
IEEE-488.2 Common Command Reference ANALOG OUTPUT AND DIGITAL I/O TESTS: 301: Current and Voltage Output SCPsdigital DAC control. 302: Current and Voltage Output SCPsDAC noise. 303: Current Output SCP offset 304: Current Output SCP gain shift 305: Current Output SCP offset 306: Current Output SCP linearity 307:...
Command Quick Reference Command Quick Reference The following tables summarize SCPI and IEEE-488.2 Common (*) commands for the VT1422A Remote Channel Multifunction Module. SCPI Command Quick Reference Command Description ABORt Stops scanning immediately and sets trigger system to idle state (scan lists are unaffected) ALGorithm Subsystem to define, configure and enable loop control algorithms...
Page 412
Command Quick Reference SCPI Command Quick Reference Command Description CALibration (continued) :REMote? Calibrates Remote Signal Conditioning Units :DATA Sends RSC cal constants from CAL:REM:DATA? back to VT1422A :DATA? Queries VT1422A for all remote cal constants :STORe Copies RSCU calibration constants from working ram to non-volatile memory :SETup Performs Channel Calibration procedure :SETup?
Page 413
Command Quick Reference SCPI Command Quick Reference Command Description FORMat [:DATA] <format>[, <size>] Set format for response data from [SENSe:]DATA? ASCii[, 7] Seven bit ASCII format (not as fast as 32-bit because of conversion) PACKed[, 64] Same as REAL, 64 except NaN, +INF and -INF formatted for BASIC REAL[, 32] IEEE 32-bit floating point (requires no conversion so is fastest) REAL, 64...
Page 414
Command Quick Reference SCPI Command Quick Reference Command Description OUTPut (continued) :TTLTrg<n> [:STATe] ON | OFF When module triggered, source a VXIbus trigger on TTLTrg<n> [:STATe]? Returns whether the TTL trigger line specified by n is enabled :TYPE PASSive | ACTive,(@<ch_list>) sets the output drive type for a digital channel :TYPE? (@<channel>) Returns the output drive type for <channel>...
Page 415
Command Quick Reference SCPI Command Quick Reference Command Description SENse:FUNCtion (continued) :RESistance <excite_current>,[<range>,](@<ch_list>) Configure channels to sense resistance measurements :STRain Links measurement channels as having read bridge voltage from: :FBENding [<range>,](@<ch_list>) Full BENding :POST [<range>,](@<exc_ch>),(@<ch_list>) Links post-processing strain EU conversion with specified VT1529B channels :FBPoisson [<range>,](@<ch_list>) Full Bending Poisson :POST [<range>,](@<exc_ch>),(@<ch_list>)
Page 416
Command Quick Reference SCPI Command Quick Reference Command Description :STRain :BRIDge[:TYPE] <select>,(@<ch_list>) Set bridge configuration switches on VT1529A/B :BRIDge[:TYPE]? (@<channel>) Returns the current bridge configuration setting :CONNect BRIDge | EXCitation,(@<ch_list>) Set switches to sense bridge output or excitation voltage on VT1529A/B :CONNect? (@<channel>) Returns the current sense setting for the channel specified :EXCitation <excite_v>,(@<ch_list>)
Page 417
Command Quick Reference SCPI Command Quick Reference Command Description STATus (continued) :QUEStionable Questionable Data Status Group: Bit assignments; 8=Calibration Lost, 9=Trigger Too Fast, 10=FIFO Overflowed, 11=Over voltage, 12=VME Memory Overflow, 13=Setup Changed. :CONDition? Returns state of Questionable Status signals :ENABle <enable_mask> Bits set to 1 enable status events to be summarized into Status Byte :ENABle? Returns the decimal weighted sum of bits set in the Enable register...
Page 418
Command Quick Reference IEEE-488.2 Common Command Quick Reference Category Command Title Description Calibration *CAL? Calibrate Performs internal calibration on all 64 channels out to the terminal module connector. Returns error codes or 0 for OK Internal Operation *IDN? Identification Returns the response: HEWLETT-PACKARD,E1422A,<serial#>,<driver rev#>...
Air Flow (liters/s) 0.08 0.08 ± Power Available for SCPs 1.0 A 24 V, 3.5 A 5 V (See VXI Catalog or SCP manuals for SCP current) VT1539A Power 5 V: 0.112A typ, 0.168 A max Requirements (in Amps) Measurement Ranges ±...
Page 422
Trigger Timer and 100 ppm (0.01%) from -10 °C to +70 °C Sample Timer Accuracy External Trigger Input TTL compatible input. Negative true edge triggered except first trigger will occur if external trigger input is held low when module is INITiated. Minimum pulse width 100 ns.
Module. The ambient temperature of the air surrounding the Terminal Module must be ± within 2 °C of the temperature of the inlet cooling air to the VXI mainframe. 2) When using the VT1586A Rack-Mount Terminal Panel as the isothermal reference, ±...
0.06 mV (subject to rms noise limits) Resolution (1 LSB @ VT1422A) Recommended measurement products: Note: Companion products listed below are VXI-based. Twelve measurement module slots are typically available in systems using VXI Technology’s CT-400 VXI mainframe. Static strain measurements...
Page 452
Voltage offset: Typical offset depends on previous channel value as shown in figure below. Typical offset error due to "soak" voltage -0.5 -0.4 -0.3 -0.2 -0.1 40usec 100usec 200usec 500usec Sustained "soak" voltage on low-voltage inputs Gain Error: <0.015% of reading rms Noise: <1 mV rms CMRR:...
Page 453
Input power: 16 VA Environmental Pollution Degree: Temperature: -5 °C to +55 °C operating Humidity: 5 to 85% R.H. Altitude: 3,000 meters (10,000 ft) operating 10,000 meters (30,000 ft) non-operating Warranty VT1529A/B: 3 year return to VXI Technology Appendix A Specifications...
Appendix B Error Messages Possible Error Messages: -108 'Parameter not allowed.' -109 'Missing parameter.' -160 'Block data error.' -211 'Trigger ignored.' -212 'Arm ignored.' -213 'Init ignored.' -221 'Settings conflict.' -222 'Data out of range.' -224 'Illegal parameter value.' -240 'Hardware error.' Execute *TST?.
Page 456
Usually caused by algorithm values stored in FIFO faster than FIFO was read. 3026 '*CAL?/CAL:SET Calibration failed.' 3027 'Unable to map A24 VXI memory.' 3028 'Incorrect range value.' Range value sent is not supported by instrument. 3030 'Command not yet implemented!!' 3032 '0x1: DSP-Unrecognized command code.'...
Page 457
3033 '0x2: DSP-Parameter out of range.' 3034 '0x4: DSP-Flash rom erase failure.' 3035 '0x8: DSP-Programming voltage not present.' 3036 '0x10: DSP-Invalid SCP gain value.' Check that SCP is seated or replace SCP. Channel numbers are in FIFO. 3037 '0x20: DSP-Invalid *CAL? constant or checksum. *CAL? required.' 3038 '0x40: DSP-Couldn't cal some channels.' Check that...
Page 458
A/D range 16 V associated with failed test Test ID Corrective Actions 1 - 19, 21 - 29 (VXI Technology Service)* 20, 30 -37 Remove all SCPs and see if *TST? passes. If so, replace SCPs one at a time until the one causing the problem is found.
Page 459
3053 'Corrupt on board Flash memory.' 3056 'Custom EU not loaded.' May have erased custom EU conversion table with *RST. May have linked channel with standard EU after loading custom EU, this erases the custom EU for this channel. Reload custom EU table using DIAG:CUST:LIN or DIAG:CUST:PIEC.
Page 460
3083 'Global symbol (variable or custom function) already defined.' Trying to define a global variable with same name as a user defined function or vice versa. User functions are also global. 3084 'Algorithmic error queue full.' ALG:DEF has generated too many errors from the algorithm source code. 3084 "Error 1:Number too big for a 32 bit float"...
Page 461
3089 'Bad Algorithm array index.' Must be from 0 to (declared size)-1. 3090 'Algorithm Compiler Internal Error.' Call with details of operation. VXI Technology 3091 'Illegal while not initiated.' Send INIT before this command. 3092 'No updates in queue.' 3093 'Illegal Variable Type.' Sent ALG:SCAL with identifier...
Page 462
3103 'Algorithm swapping already enabled; Can't change size.' Only send <swap_size> parameter on initial definition. 3104 'GLOBALS can't be enabled for swapping.' Don't send <swap_size> parameter for ALG:DEF 'GLOBALS'. 3105 'Invalid SCP switch setting.' 3106 'E1536A debounce.' Ch list must contain all lower 4 and/or upper 4 channels.
Page 463
3122 'This multiple channel function must not span multiple SCPs.' See the VT1538A SCP manual. 3123 'E1538A OE switch ON conflicts with this command.' See the VT1538A SCP manual. 3124 'E1538A OE switch OFF conflicts with this command.' See the VT1538A SCP manual. 3125 'E1538A VRS switch setting conflicts with OE switch setting.' See the VT1538A SCP manual.
Page 464
3138 'VT1539A SCP channel 1 not responding.' Indicates a communications error between the VT1539A SCP and a Remote Signal Conditioning Unit connected to the SCP’s channel 1 input. Check the Data Interface connection as well as the power connection to that RSCU.
GPIB Controller Pentium II 450 MHz or faster PC GPIB = 82350A or 82357A V, A with GPIB card Agilent I/O Libraries VXI card cage and Compatible with Agilent/HP Agilent/HP E1406A V, A slot 0 E1406A Command Module Frequency ≥ 2 kHz...
The circuit diagram for the dummy load is: RJ-45 Connector Excitation 2 – Sense – 7.5k RCAL – Excitation Sense – Notes: Resistors are 0.1% tolerance Connector is L-COM TPS3088 or equivalent Wire is stranded 24 AWG, L-COM TDB8-X00 or equivalent Figure C-1.
Note For a quick functional check of the VT1529A/B, perform only the VT1422A Self-Test. Note The VT1422A VXIplug&play Soft Front Panel can be used to enter the commands and queries described in the test procedures. Test V-1: Self-Test Description This test performs a self-test on the VT1529A/B by running the VT1422A self-test.
Troubleshooting Failures A failure in the *CAL? command indicates a problem with the VT1422A or with one of the installed SCPs. A failure in the CAL:REMote? command indicates a problem with the VT1529A/B, the VT1539A SCP or the cable between the VT1529A/B and the VT1539A.
Page 470
where R is the completion resistor value in kΩ. With V = 5.000 V, the nominal output voltages can be computed: excitation for R = 0 Ω, Vsense = 0.357143 V for R = 120 Ω, Vsense = 0.337684 V for R = 350 Ω, Vsense = 0.301120 V Note that the actual measurements will vary based on the actual resistor values in the dummy load, so these values should be considered approximate...
resistor path. Send the MEAS:VOLT:UNStrained? (@<ch_list>) query to the VT1422A. The expected return value is ~0.357 V on each channel. Configure the VT1529A/B for 120 Ω quarter-bridge operation using the SENS:FUNC:STR:Q120 (@<ch_list>) command. Send the MEAS:VOLT:UNStrained? (@<ch_list>) query to the VT1422A. The expected return value is ~0.338 V on each channel.
Page 472
The signal path through the VT1529A/B is highlighted in Figure C-4. 8-pin Telcom Excitation Connector (RJ-45) to CHs 1-7 + Excitation Pin 1 +Excitation - Excitation enable excitation Pin 8 Current Dynamic Strain CHs 0-7 +Excitation Sense Limit Output Buffer Instrument.
Test V-6: Filters Description Tests the low-pass filters for each channel in the VT1529A/B. The nominal filter bandwidths are 2 Hz, 10 Hz, 100 Hz, and 20 kHz. The filter bandwidth is calculated by measuring the rise time of the step response.
Page 474
Procedure If necessary, send the *CAL? query to the VT1422A (required if more than eight hours has elapsed since the last *CAL? command). The expected return value is “+0”. Each channel of the VT1529A/B must be tested individually. Follow the steps below for each channel to be tested.
Page 475
From the Panels menu, select Main Panel, then enter the following commands on the Enter Command line in the Interactive Communications box to test the 100 Hz filter. Note that it is necessary to change the channel number (10000) in these commands depending on the channel being testing: samp:tim min trig:sour tim;tim 400e-6;count 2000 rout:seq:def (@0(10000))
Test V-7: Shunt Cal Resistor Port Description This test verifies the operation of the switches associated with the front panel Shunt Cal Resistor port. The operation of these switches can be verified by observing the changes in the bridge output voltage when external shunt calibration is disabled and enabled.
Page 478
Note that the actual measurements will vary based on the actual resistor values in the dummy load, so these values should be considered approximate when running this test. Setup The VT1529A/B must be connected to the VT1422A through the VT1539A SCP.
For each channel (each must be tested separately), enable internal shunt calibration by sending the OUTP:SHUNt ON,(@<channel>) command. Note: this turns off the shunt on the previous channel. Send the MEAS:VOLT:UNStrained? (@<channel>) query to the VT1422A. The expected return value is ~0.211 V on each channel. Calibration Calibration is performed via the VT1422A CAL:REMote? command.
Appendix D Glossary The following terms have special meaning when related to the VT1422A. Algorithm In general, an algorithm is a tightly defined procedure that performs a task. This manual uses the term to indicate a program executed within the VT1422A that implements a data acquisition and control algorithm.
Page 482
Control Processor The Digital Signal Processor (DSP) chip that performs all of the VT1422A's internal hardware control functions as well as performing the EU Conversion process. Same as Control Processor Engineering Units EU Conversion Engineering Unit Conversion: Converting binary A/D readings (in units of A/D counts) into engineering units of voltage, resistance, temperature, strain.
Page 483
Swapping This term applies to algorithms that are enabled to swap. These algorithms can be exchanged with another of the same name while the original is running. The "new" algorithm becomes active after an update command is sent. This "new" algorithm may again be swapped with another and so on.
Appendix E Wiring and Noise Reduction Methods Separating Digital and Analog SCP Signals Signals with very fast rise time can cause interference with nearby signal paths. This is called cross-talk. Digital signals present this fast rise-time situation. Digital I/O signal lines that are very close to analog input signal lines can inject noise into them.
Recommended Wiring and Noise Reduction Techniques Unshielded signal wiring is very common in Data Acquisition applications. While this worked well for low-speed integrating A/D measurements and/or for measuring high-level signals, it does not work for high-speed sampling A/Ds, particularly when measuring low-level signals like thermocouples or strain gage bridge outputs.
VT1422A Guard The VT1422A guard connection provides a 10 kΩ current limiting resistor Connections between the guard terminals (G) and VT1422A chassis ground for each 8 channel SCP bank. This is a safety device for the case where the Device Under Test (DUT) isn't actually floating;...
VT1422A chassis ground through a very low impedance (not via the guard terminal). The VT1422A guard terminal connection shown in the VT1422A User's Manual does not consider the high-frequency Ecm problem and is there to limit the shield current and to allow the DUT to float up to some dc common mode voltage subject to the maximum ±16 volt...
Appendix F Generating User Defined Functions Introduction The VT1422A has a limited set of mathematical operations such as add, subtract, multiply, and divide. Many control applications require functions such as square root for calculating flow rate or a trigonometric function to correctly transition motion of moving object from a start to ending position.
approximation. Remember, the entire range is broken up into only 128 segments of Mx+B operations. If accuracy is desired, the range MUST be limited over which calculations are made. Many transcendental functions are simply used as a scaling multiplier. For example, a sine wave function is π...
Page 491
−π/2 π/2 −1 −2 Figure F-1. A Haversine Function A typical use of this function would be to output an analog voltage or current at each Scan Trigger of the VT1422A and over the range of the haversine. For example, suppose a new position is desired for an analog output and it is moved from 1 mA to 3 mA over a period of 100 ms.
Appendix G Example PID Algorithm Listings This appendix includes listings of the built-in PIDA and PIDB, as well as the more advanced PIDC which can be downloaded as a custom algorithm. • PIDA Algorithm ........page 491 •...
Page 494
PIDA Source Listing /********************************************************************************************/ /* I/O Channels /* Must be defined by the user /* inchan - Input channel name /* outchan - Output channel name /********************************************************************************************/ /********************************************************************************************/ /* PID algorithm for VT1422A controller module. This algorithm is called */ /* once per scan trigger by main().
PIDB Algorithm Figure G-2 shows the block diagram of a more advanced algorithm that is favored in process control because of the flexibility allowed by its two differential terms. The "D" differential term is driven by changes in the process input measurement. The "SD" differential term is driven by changes in the setpoint variable value.
Page 496
Manual Control The PIDB algorithm provides for manual control with "bumpless" transfer between manual and automatic control. The variables that control the manual mode are: Auto/Manual control; Man_state (0 = automatic (default), 1 = manual) Manual output control; Man_out (defaults to current auto value) Manual control slew rate;...
Page 497
PIDB Source Listing /********************************************************************************************/ /* PID_B /********************************************************************************************/ /* I/O Channels /* Must be defined by the user /* inchan - Input channel name /* outchan - Output channel name /* alarmchan - Alarm channel name /********************************************************************************************/ /********************************************************************************************/ /* PID algorithm for VT1422A controller module. This algorithm is called */ /* once per scan trigger by main().
/* on 'n', where n is the algorithm number (as returned by ALG_NUM, for*/ /* example). The first value is placed in the (10 * n)th 32-bit word of /* the CVT. The other values are written in subsequent locations. /* History_mode = 0: Summary to CVT only.
Page 499
/*PID algorithm code: /* Test for Process Variable out of limits if ( (inchan >> PV_max) || ( PV_min >> inchan ) ) /* PV alarm test */ if ( !Status.B6 ) Status.B6 = 1; alarmchan = 1; interrupt(); else Status.B6 = 0;...
Page 500
/* Zero the derivative terms */ PV_old = inchan; Setpoint_old = Setpoint; /* On subsequent triggers, continue integrating */ else /* not First trigger */ I_out = Error * I_factor + I_out; /* Clip the Integral term to specified limits */ if ( I_out >>...
Page 501
/* Clip output to specified limits */ if ( outchan >> Out_max ) outchan = Out_max; Status.B0=1; else if ( Out_min >> outchan ) outchan = Out_min; Status.B0=1; else Status.B0 = 0; /* Clear alarm output if no alarms */ if (!(Status.B6 || Status.B5) ) alarmchan = 0;...
PIDC Algorithm PIDC is very similar to PIDB with the addition of extended history mode. See comments in source code below. PIDC Source Listing /********************************************************************************************/ /* PID_C /********************************************************************************************/ /* I/O Channels /* Must be defined by the user /* inchan - Input channel name /* outchan - Output channel name /* alarmchan - Alarm channel name /********************************************************************************************/...
Page 503
/* At startup in the Manual control mode, the output will be held at /* its current value. /* At startup, in the Automatic control mode, the output will slew /* from its initial value towards P_factor * Error at a rate determined /* by the Integral control constant (I_out is initialized to cancel P_out).
Page 504
/* Other Variables static float I_out; /* Integral term static float P_out; /* Proportional term static float D_out; /* Derivative term static float Error; /* Error term static float PV_old; /* Last process variable static float Setpoint_old; /* Last setpoint - for derivative static float SD_out;...
Page 505
/* First, find the Process Variable "error" */ /* This calculation has gain of minus one (-1) */ Error = Setpoint - inchan; /* Test for error out of limits */ if ( (Error >> Error_max) || (Error_min >> Error) ) if ( !Status.B5 ) Status.B5 = 1;...
Index VT1422A Remote Channel Multi-function DAC Module Symbols MEMory:VME:ADDRess? Alarm Limits (ALG_NUM), determining an algorithms identity (FIFO mode BLOCK), continuously reading the FIFO :DEFINE in the programming sequence (FIFO mode OVER), reading the latest FIFO values ALG:DEFINE’s three data formats (First_loop), determining first execution Algorithm (FM), fixed width pulses at variable frequency...
Page 508
Alternate method of computing strain with VT1529B CALibration:TARE? AMPLitude CALibration:VALue:RESistance OUTPut:CURRent:AMPLitude CALibration:VALue:VOLTage OUTPut:CURRent:AMPLitude? CALibration:ZERO? SOURce:VOLTage[ Calling user defined functions AMPLitude] Capability, maximum tare CAUTIONS An example using the operation group Loss of process control by algorithm APERture Changing an algorithm while it’s running SENSe:FREQuency:APERture Changing gains SENSe:FREQuency:APERture?
DATA DIAGnostic:REMote:USER:DATA DIAGnostic:TEST:REMote:SELFtest? DATA? – DIAGnostic:VERSion? DIAGnostic:REMote:USER:DATA Directly, reading status groups FORMat:DATA Disabling FORMat:DATA? flash memory access (optional) Data the input protect feature (optional) structures Discrete, Parameter Types types Drivers, instrument Decimal constant Declaration dynamic strain, offset control Declaration initialization declaration of conformity –...
Page 513
sending data to Gains, setting SCP time relationship of readings in the FIFO GFACtor writing values to SENSe:STRain:GFACtor Filters SENSe:STRain:GFACtor? adding circuits to terminal module Global variables configuring the status transition filters accessing First algorithm execution, determining defining Fixed width pulses at variable frequency (FM) Glossary Fixing the problem Graph...
setpoint profiles Implied Commands Language syntax summary IMPORTANT! Language, overview of the algorithm Don’t use CAL:TARE for thermocouple wiring Layout Making low-noise measurements Terminal Module Resolving programming problems Lifetime limitation, Flash memory Indefinite length block data example Limits INF, IEEE alarm Init-declarator clipping...
Page 515
thermocouple measurements Normal mode noise Not-a-Number terminal block considerations for TC NOTES thermocouple *CAL? and CAL:TARE turn off then on OTD Measuring the reference temperature *RST effect on custom EU tables MEMory:VME:ADDRess *TST? sets default ASC,7 data format MEMory:VME:ADDRess? + & - overvoltage return format from FIFO MEMory:VME:SIZE MEMory:VME:SIZE? ALG:SCAN:RATIO vs.
Page 516
Numeric, parameter types OUTPut:TYPE? OUTPut:VOLTage:AMPLitude OUTPut:VOLTage:AMPLitude? Octal constant Outputs, setting up digital Offset Outputting trigger signals Overall program structure channel Overall sequence offset control for dynamic strain port Overloads, unexpected channel Offsets Overview compensating for system offsets of the algorithm language residual sensor of the VT1422A system wiring...
Primary-expression clearing the enable registers Problem, fixing the configuring the enable registers Problems, checking for reading condition registers Problems, resolving programming reading event registers Process monitoring algorithm Rejection Profiles, implementing setpoint Noise Program flow control Relational-expression Program structure and syntax Relational-operator Programming model Relative Form, Channel List...
Page 518
SCPs and Terminal Module SENSe:STRain:GFACtor Selecting SENSe:STRain:GFACtor? the FIFO mode SENSe:STRain:POISson the trigger source SENSe:STRain:POISson? trigger timer arm source SENSe:STRain:UNSTrained Selection-statement SENSe:STRain:UNSTrained? Self test SENSe:TOTalize:RESe:MODE error messages SENSe:TOTalize:RESe:MODE? SELFtest Sensing DIAGnostic:TEST:REMote:SELFtest? 4-20 mA – Self-test Reference temperature with the VT1422A how to read results Separator, command Sending Data to the CVT and FIFO...
Page 519
Signal, connection to channels SQUare Signals, outputting trigger SOURce:FUNC[:SHAPe]:SQUare SIZE Standard ALGorithm[:EXPLicit]:SIZE? EU operation MEMory:VME:SIZE event status group examples MEMory:VME:SIZE? reserved keywords Size, determining an algorithms' Standard Commands for Programmable Instruments, Soft front panel (VXIplug&play). See online help. SCPI SOUR Standard Form, Channel List VOLT, offset control Starting the PID algorithm...
Page 520
STATus:QUEStionable:EVENt? custom EU STATus:QUEStionable:NTRansition loading custom EU STATus:QUEStionable:NTRansition? TARE STATus:QUEStionable:PTRansition CALibration:TARE STATus:QUEStionable:PTRansition? CALibration:TARE:RESet Storage, defining data CALibration:TARE? STORe DIAGnostic:CALibration:TARe[:OTDetect] CALibration:REMote:STORe :MODE CALibration:STORe TCouple STRain SENSe:FUNCtion:CUSTom:TCouple SENSe:FUNCtion:STRain TCouple? SENSe:FUNCtion:STRain:<type>:POST CALCulate:TEMPerature:TCouple? Strain measurements Technical Support with VT1529B Techniques Structure, overall program Wiring and noise reduction Structures, data TEMPerature Subsystem...
Time relationship of readings in FIFO Updating Timer the algorithm variables SAMPle:TIMer the algorithm variables and coefficients SAMPle:TIMer? the status system and VXI interrupts Timer, programming the trigger Usage, example language TIMer? Use Model changes with VT1529B TRIGger:TIMer? Using the status system...
OUTPut:VOLTage:AMPLitude? CALibration:CONFigure:VOLTage ZERO? SENSe:FUNCtion:VOLTage CALibration:ZERO? SOURce:VOLTage Voltage CALibration:VALue:VOLTage Voltage measurements with VT1529B voltage, offset control dynamic strain Voltage, setting the VT1511A strain bridge SCP excitation VT1422 background operation VT1422A Configuring overview of VT1422A, configuring the VT1529B Additional capabilities Changes to the Use Model Strain Measurements Temperature measurements Voltage measurements...
Page 523
PWM and FM signals. Refer to the VXI Technology Website for instrument driver availability and downloading instructions, as well as for recent product updates, if applicable.
Page 524
Plug-on and the VT1529B Remote Strain Signal Conditioning The VT1415A and VT1422A are digital sampling closed loop Unit to form a high-performance, but economical strain control systems that are complete in a single VXI module. All measurement system. signal conditioning, process monitoring, control calculations,...
Engineering unit conversions for temperature, A Signal Conditioning Plug-on (SCP) is a small daughter strain, resistance, and voltage measurements are made board that mounts on VXI Technology’s VXI scanning automatically without slowing down the algorithm execution measurement and control modules. These SCPs provide a speed.
(8) channels which can be individually configured as a Note: SCPs are also available for making dynamic strain frequency or totalizer input, or as a pulse width modulated measurements (VXI Technology VT1510A, VT1511A, and output. VT1521). Compact Packaging with Signal Conditioning...
Scan triggers: Can be derived from a software Maximum input voltage: Normal mode plus command or a TTL level from common mode other VXI modules, internal timer, or external hardware. Operating: ±16 V peak Typical latency 17.5 µs. Damage level: ±42 V peak...
Page 528
Subset of C programming language including if- Drivers: VXIplug&play with then-else, most math and Source Code comparison operations. Instrument Drivers - See the VXI Technology Website Variable types: Scalar local and global www.vxitech.com for driver availability and downloading. VT1415A Algorithmic Closed Loop Controller,...
Page 529
VT1415A/1422A Technology ™ Algorithmic Closed Loop Controller and Remote Channel Multifunction Ordering Information Includes Spring Clamp Terminal Block VT1415A-02 Algorithmic Closed Loop Controller, Includes Screw Connector Terminal Block VT1415A-A3F Interface to rackmount terminal panel VT1422A Remote Channel Multi-function Data Acquisition & Control Module VT1422A-001 16-Port RJ-45 Connector Block (supports VT1415A also) VT1422A-011...