ADAM 4000: Data Acquisition Modules User's Manual
ADAM 4000: Data Acquisition Modules User's Manual
ADAM 4000: Data Acquisition Modules User's Manual
CE Notification
The ADAM-4000 series developed by Advantech Co., Ltd. has passed the
CE test for environmental specifications when operated within an industrial
enclosure (ADAM-4950-ENC). Therefore, in order to protect the ADAM
modules from being damaged by ESD (Electric Static Discharge), we
strongly recommend that the use of CE-compliant industrial enclosure
products when using any ADAM module.
Acknowledgments
ADAM is a trademark of Advantech Co., Ltd.
IBM and PC are trademarks of International Business
Machines Corporation.
1.1 Overview
The ADAM Series is a set of intelligent sensor-to-computer interface
modules containing built-in microprocessor. They are remotely controlled
through a simple set of commands issued in ASCII format and transmitted
in RS-485 protocol. They provide signal conditioning, isolation, ranging,
A/D and D/A conversion, data comparison, and digital communication
functions. Some modules provide digital I/O lines for controlling relays
and TTL devices.
Watchdog Timer
A watchdog timer supervisory function will automatically reset the ADAM
modules in the event of system failure. Maintenance is thus simplified.
Power Requirements
Although the modules are designed for standard industrial unregulated 24
VDC power supply , they accept any power unit that supplies power within
the range of +10 to +30 VDC. The power supply ripple must be limited to 5
V peak-to-peak, and the immediate ripple voltage should be maintained
between +10 and +30 VDC.
RS-485 Network
The RS-485 network provides lower-noise sensor readings, as modules can
be placed much closer to the source. Up to 256 ADAM modules may be
connected to an RS-485 multi-drop network by using the ADAM RS-485
repeater, extending the maximum communication distance to 4,000 ft. The
host computer is connected to the RS-485 network with one of its COM
ports through the ADAM RS-232/RS-485 converter.
To boost the network’s throughput, the ADAM RS-485 repeaters use a
logical RTS signal to manage the repeater’s direction. Only two wires are
needed for the RS-485 network: DATA+ and DATA-. Inexpensive
shielded twisted pair wiring is employed.
1.2 Applications
• Remote data acquisition
• Process monitoring
• Industrial process control
• Energy managment
• Supervisory control
• Security systems
• Laboratory automation
• Building automation
• Product testing
• Direct digital control
Host computer
Any computer or terminal that can output in ASCII format over either RS-
232 or RS-485 can be connected as the host computer. When only RS-232
is available, an ADAM RS-232/RS-485 Converter is required to transform
the host signals to the correct RS-485 protocol. The converter also provides
opto-isolation and transformer-based isolation to protect your equipment.
Power supply
For the ease of use in industrial environments the ADAM modules are
designed to accept industry standard +24 VDC unregulated power. Opera-
tion is guaranteed when using any power supply between +10 and +30 VDC
. Power ripples must be limited to 5 V peak to peak while the voltage in all
cases must be maintained between +10 and +30 VDC . All power supply
specifications are referenced at module connector. When modules are
powered remotely, the effects of line voltage drops must be considered.
All modules use on-board switching regulators to sustain good efficiency
over the 10-30 V input range, therefore we can assume that the actual
current draw is inversely proportional to the line voltage. The following
example shows how to calculate the required current that a power supply
should be able to provide.
Assume that a +24 VDC will be used to power five ADAM-4011 Analog
Input Modules. The distance from power supply to modules is not so big
that significant line voltage drop will occur. One ADAM-4011 module
consumes a maximum of 1.2 Watts. The total required power will equal 5 x
1.2 = 6 Watts. A power supply of +24 VDC should therefore be able to
supply a minimal current of 6 / 24 = 0.25 Amps.
Small systems may be powered by using wall-mounted modular power
supplies. Also when modules operate on long communication lines (>500
feet) it is often more reliable to power the modules locally with modular
power supplies. These inexpensive units can easily be obtained from any
electronics retail store.
The power cables should be selected according to the number of modules
connected and the length of the power lines. When using a network with
long cables, we advise the use of thicker wire to limit the line voltage drop.
In addition to serious voltage drops, long voltage lines can also cause
interference with communication wires.
Communication Wiring
We recommend that shielded-twisted-pair cables that comply with the EIA
RS-485 standard be used with the ADAM network to reduce interference.
Only one set of twisted-pair cables is required to transmit both Data and
RTS signals. We advice that the following standard colors (as indicated on
the modules) be used for the communication lines:
DATA+ (Y) Yellow
DATA- (G) Green
DATA+ DATA+
RS-485
TXD (3) DATA- DATA-
RXD (2)
HOST PC RS-232
ADAM
RTS (7) I/O
Module
GND (5)
+Vs
GND
+Vs
GND
POWER
()=pin number on EIA-232-D
+10~+30 VDC connector (RS-232)
Example:
Make sure that the module is properly connected as shown in figure 2-5.
Power up all the connected devices, start the terminal emulation program,
and issue the following command:
$012(cr)
Forcing the module in the INIT* state does not change any parameters in
the module’s EEPROM. When the module is in the INIT* state with its
INIT* and GND terminals shorted, all configuration settings can be
changed and the module will respond to all other commands normally.
• Wait at least 7 seconds to let self calibration and ranging take effect.
• Configure the checksum status and/or the baud rate.
• Switch the power to the ADAM Module OFF.
• Remove the grounding of the INIT* terminal and power the module on.
• Wait at least 7 seconds to let self calibration and ranging take effect.
• Check the settings (If the baud rate has changed, the settings on the host
computer should be changed accordingly).
Programming Example
The following program is a simple program written in BASIC that resem-
bles our application example. The program first configures the ADAM-
4011 module to act as an ON/OFF controller and then monitors and
displays the process temperature.
inputs may be read by the host computer and used to sense the state of a
remote digital signal.
lines may be utilized to build ON/OFF controllers that can operate without
host computer involvement.
ADAM-4011
ADAM-4011D
ADAM-4012
Application Wiring
The following gives you examples how to connect various types of analog
inpuit and high-low alarm applications to your ADAM modules.
ADAM-4015
RTD3-
RTD2-
RTD1-
RTD0-
COM 3
COM 2
COM 1
COM 0
RTD3+
RTD2+
RTD1+
14 RTD0+
GND
26
(Y) DATA+
(G)DATA-
(R) +Vs
COM 5
RTD4+
RTD5+
RTD4-
RTD5-
INIT*
N/A
N/A
Application Wiring
RTD 1+
2-wire RTD
COM 0
RTD 0-
14 RTD 0+
Channel 6
Input Type Pt100, Pt1000, BALCO500, Ni
Pt100:
-50 to 150° C
0 to 100° C
0 to 200° C
0 to 400° C
-200 to 200° C
Input type and te mpe
Pt1000:
rature range
-40 to 160° C
BALCO500:
-30 to 120° C
Ni:
-80 to 100° C
0 to 100° C
Isolation Voltage 3000 VDC
Sampling Rate 12 sample/sec (total)
Input Impe dance 10 MΩ
Accuracy +/- 0.1% or better
Power Consumption 1W
I/O Connector Type 13- pin plug- t er minal
ADAM-4015T
Application Wiring
Digital Outputs
A strain gauge input module also contains 4 digital outputs. Outputs are
open-collector transistor switches that may be controlled by the host
computer. They can control solid-state relays which in turn may control
heaters, pumps, and other electrical equipment.
Alarm signalling
Strain Gauge input modules include High and Low alarm functions. High
and Low alarm limits may be downloaded into the module’s EEPROM by the
host computer.
The alarm functions can be enabled or disabled remotely. When the alarm
function is enabled, both Digital Output channels are used to indicate the
High and Low alarm state. Digital Output channel 1 (DO1) equals High alarm
state and Digital Output channel 0 (DO0) equals Low alarm state. The High
and Low alarm states can be read at any time by the host computer.
Every A/D conversion will be followed by a comparison with the High and
Low limit. When the input value exceeds one of these limits, the High or
Low alarm state is set to ON.
There are two alarm mode options: Momentary and Latching.
If the alarm is in Latching mode, the alarm will stay on even when the input
value returns within limits. An alarm in Latching mode can be turned OFF
by issuing a Clear Alarm command from the host computer. A Latching
alarm is cleared by the module when the opposite alarm is set. For example:
the alarm is in latching mode and the High alarm is turned ON.
When the module receives a value that is lower than the Low alarm limit, it
will clear the High alarm and turn the Low alarm ON.
When the alarm is in Momentary mode, the alarm will be turned OFF as
soon as the input value returns to within limits.
The arrangement of coupling High and Low alarm states with Digital Output
lines may be utilized to build ON/OFF controllers that can operate without
host computer involvement. .
ADAM-4016
Application Wiring
ADAM-4017
Vin 4-
Vin 4+
Vin 3-
Vin 3+
Vin 2-
Vin 2+
Vin 1-
Vin 1+
Vin 0-
Vin 0+
ADAM-4017
DATA CODE INPUT RANGE
ACQUISITION 08 ±10 V
MODULE 09 ±5 V
0A ±1 V
0B ±500 mV
0C ±100 mV
INPUT: 0D ±20 mA
STRAIN GAUGE
mV, V, mA
OUPUT:
RS-485 (Y) DATA+
(G) DATA-
(B) GND
(R) +Vs
AGND
Vin 5+
Vin 6+
Vin 7+
Vin 5-
INIT*
Vin 4-
Vin 4+
Vin 3-
Vin 3+
Vin 2-
Vin 2+
Vin 1-
Vin 1+
Vin 0-
Vin 0+
ADAM-4017+
DATA CODE INPUT RANGE
ACQUISITION 08 ±10 V
MODULE 09 ±5 V
0A ±1 V
0B ±500 mV
0C ±100 mV
INPUT: 0D ±20 mA
STRAIN GAUGE 07 4 ~20 mA
mV, V, mA
OUPUT:
RS-485
(Y) DATA+
(G) DATA-
(B) GND
(R) +Vs
Vin 5+
Vin 6+
Vin 7+
AGND
Vin 5-
INIT*
Jumper Setting
1. JP0~JP7
20mA Input Range
JP0~JP7
Voltage Input range
Ch.0 Ch.1 Ch.2 Ch.3 Ch.4 Ch.5 Ch.6 Ch.7
Mapping to Channel
JP 0 JP 1 JP 2 JP 3 JP 4 JP 5 JP 6 JP 7
Initial Setting
ADAM-4018
Vin 4-
Vin 4+
Vin 3-
Vin 3+
Vin 2-
Vin 2+
Vin 1-
Vin 1+
Vin 0-
Vin 0+
ADAM-4018
DATA CODE INPUT RANGE
ACQUISITION 00 ±15 mV
MODULE 01 ±60 mV
02 ±100 mV
03 ±500 mV
04 ±1 V
INPUT: 05 ±2.5 V
mV, V, mA 06 ±20 mA
Thermocouple DE T/C J
DF T/C K
10 T/C T
11 T/C E
OUPUT: 12 T/C R
RS-485 13 T/C S
14 T/C B
(Y) DATA+
(G) DATA-
(B) GND
(R) +Vs
AGND
Vin 5+
Vin 6+
Vin 7+
Vin 5-
INIT*
ADAM-4018M
Vin 4-
Vin 4+
Vin 3-
Vin 3+
Vin 2-
Vin 2+
Vin 1-
Vin 1+
Vin 0-
Vin 0+
ADAM-4018M
DATA CODE INPUT RANGE
ACQUISITION 00 ±15 mV
MODULE 01 ±60 mV
02 ±100 mV
03 ±500 mV
04 ±1 V
INPUT: 05 ±2.5 V
mV, V, mA 06 ±20 mA
Thermocouple DE T/C J
DF T/C K
10 T/C T
11 T/C E
OUPUT: 12 T/C R
RS-485 13 T/C S
14 T/C B
(Y) DATA+
(G) DATA-
(B) GND
(R) +Vs
AGND
Vin 5+
Vin 6+
Vin 7+
Vin 5-
INIT*
Vin 4-
Vin 4+
Vin 3-
Vin 3+
Vin 2-
Vin 2+
Vin 1-
Vin 1+
Vin 0-
Vin 0+
ADAM-4018+
DATA CODE INPUT RANGE
ACQUISITION 0E T/C J
MODULE 0F T/C K
10 T/C T
11 T/C E
12 T/C R
INPUT: 13 T/C S
Thermocouple 14 T/C B
OUPUT:
RS-485
(Y) DATA+
(G) DATA-
(B) GND
(R) +Vs
AGND
Vin 5+
Vin 6+
Vin 7+
Vin 5-
INIT*
Jumper Setting
1. JP0~JP7
20mA Input Range
JP0~JP7
Voltage Input range
Ch.0 Ch.1 Ch.2 Ch.3 Ch.4 Ch.5 Ch.6 Ch.7
Mapping to Channel
JP 0 JP 1 JP 2 JP 3 JP 4 JP 5 JP 6 JP 7
Apllication Wiring
-
Vin0-
Vin0+
V mV/V
11
+
Vin5+
1
Vin5-
+
Vin6+
mV/V
AGND
-
Vin7+
Application Wiring
Vin 1-
Vin 1+
-
Vin 0-
V mV/V
Vin 0+ +
11
Vin 1-
Vin 1+
-
Vin 0-
± 4~20 mA
Vin 0+ +
11
1) Link to http://www.advantech.com
2) Click Support to get in eService Knowledge Center
3) Search for download and key-in “ADAM-4000” to get the latest
ADAM-4000 User’s Manual
Vin 1-
Vin 1+
-
Vin 0-
T/C or 4~20mA
Vin 0+ +
11
ADAM-4019
Vin4-
Vin3-
Vin2-
Vin1-
Vin0-
Vin4+
Vin3+
Vin2+
Vin1+
14 Vin0+
N/A
N/A
N/A
26
(G)DATA-
(R) +Vs
Vin5+
Vin6+
Vin7+
Vin5-
Vin6-
Vin7-
INIT*
N/A
N/A
Application Wiring
Vin 1-
Vin 1+
Vin 0- -
V mV/V
14 Vin 0+ +
Vin 1-
Vin 1+
Vin 0- 125Ω
0.1%
±0~20 mA
14 Vin 0+
Vin 1-
Vin 1+
Vin 0-
T/C
14 Vin 0+
Channel 8
Input Impedance 20 MW
Power Consumption 1W
Slew Rate
The slew rate is defined as the discrepancy between the number of milli-
amps (or Volts) per second of the present and the required output currents
ADAM-4021
Figure 3-27 ADAM -4021 Analog Output Module
Depending on its configuration settings the module accepts the following
formats from the host computer:
- Engineering units
- Percent of full-scale range (FSR)
- Twos complement hexadecimal format,
Output types:
- Voltage: 0 to 10 V
Application Wiring
Application Wiring
ADAM-4050
ADAM-4051
ADAM-4052
ADAM-4053
DI15 INIT*
ADAM-4055
Application Wiring
The following give you examples of how to connect various types of digital
I/O applications to your ADAM modules.
- +
LOAD
- +
OR
+ -
ADAM-4060
ADAM-4068
RL2 NC
RL1 NC
RL0 NC
RL4 NO
RL3 NO
RL2 NO
RL1 NO
RL0 NO
RL4 COM
RL3 COM
RL2 COM
RL1 COM
RL0 COM
TYPE SIGNAL
RELAY 0,1,2,3 FORM A
RELAY 4,5,6,7 FORM C
0 1 2 3 4 5 6 7
RELAY
(B) GND 10
(Y) DATA+
RL5 COM
RL6 COM
RL7 COM
(G) DATA-
RL5 NO
RL6 NO
RL7 NO
RL7 NC
(R) +Vs
INIT*
NC
Application Wiring
The following gives you examples on how to connect form A and form C
relay output applications to your ADAM modules.
RL1 NO
RLO NO
RLO COM
RLO NO
RL4 NO
RL4 COM
RL3 NO
RL3 COM
Programmable Threshold
When the ADAM-4080/4080D is programmed for non-isolated input you
can set a high and low trigger level. Like the programmable digital filter, the
programmable threshold rejects noise on the input lines and provides stable
input readings
ADAM-4080
GATE 0+
GATE 0-
GATE 1+
GATE 1-
DO 1
DO 0
IN 0+
IN 0-
IN 1+
IN 1-
ADAM-4080
DATA CODE INPUT RANGE
ACQUISITION 50 COUNTER
MODULE 51 FREQUENCY
(Non-isolation)
(Y) DATA+
(G) DATA-
(B) GND
GATE 0
GATE 1
(R) +Vs
D.GND
INIT*
IN 0
IN 1
ADAM-4080D
DO 0/LO
GATE 0+
GATE 0-
GATE 1+
GATE 1-
DO 1/HI
IN 0+
IN 0-
IN 1+
IN 1-
(Photo-isolation)
ADAM-4080D
DATA CODE INPUT RANGE
ACQUISITION 50 COUNTER
MODULE 51 FREQUENCY
(Non-isolation)
(Y) DATA+
(G) DATA-
(B) GND
GATE 0
GATE 1
(R) +Vs
D.GND
INIT*
IN 0
IN 1
Application Wiring
GND D.GND
IN1+
+ Counter Input
IN1-
-
GATE1+
+
GATE Control
GATE1-
11 -
4.1 Introduction
To avoid communication conflicts when several devices try to send data at
the same time, all actions are instigated by the host computer. The basic
form is a command/response protocol with the host initiating the sequence.
When modules are not transmitting they are in listen mode. The host issues
a command to a module with a specified address and waits a certain amount
of time for the module to respond. If no response arrives, a timeout aborts
the sequence and returns control to the host.
Changing ADAM’s configuration might require the module to perform auto
calibration before changes can take effect. Especially when changing the
range, the module has to perform all stages of auto calibration that it also
performs when booted. When this process is under way, the module does
not respond to any other commands. The command set includes the exact
delays that might occur when modules are reconfigured.
4.2 Syntax
[delimiter character][address][command][data][checksum] [carriage return]
Every command begins with a delimiter character. There are four valid
characters: a dollar sign $, a pound sign #, a percentage sign % and an at
sign @.
The delimiter character is followed by a two-character address (hexadeci-
mal) that specifies the target module. The actual two character command
follows the address. Depending on the command, an optional data segment
follows the command string. An optional two character checksum may be
appended to the total string. Every commands is terminated by a carriage
return (cr).
Before the command set, we provide the I/O module commands search
table to help you find the commands you wish to use. The command set is
divided into the following four subsections:
• Analog Input Module commands
• Analog Output Module commands
• Digital I/O and Relay Output Module commands
• Counter/Frequency Module commands
Every subsection starts with a command summary of the particular type of
module, followed by datasheets that give detailed information about
individual commands.
Although commands in different subsections sometimes share the same
format, the effect they have on a certain module can be completely different
than they have on another. For example, the configuration command:
%AANNTTCCFF affects analog input modules and analog output modules
differently.Therefore, the full command set for every module is listed.
$AA4 Read Synchronized Returns the value that was stored in 4–60
Data the specified module's register after
the #** command
$AA3 CJC Status Returns the value of the CJC sensor 4–63
for a specified analog input module
$AA9 CJC Offset Calibration Calibrates the CJC sensor for offset 4–64
errors
$AAF Read Firmware Return the firmware version code from 4–50
Version the specified analog input module
$AAM Read Module Name Return the module name from the 4–51
specified analog input module
@AADI Read Digital I/O and The addressed module returns the 4–104
Alarm Status state of its digital input channel, its
two digital output channels and the
status of its alarm
@AADO(data) Set Digital Output Set the values of the module's two 4–106
digital outputs (ON or OFF)
@AAHI(data) Set High Alarm Downloads the High alarm limit value 4–110
@AALO(data) Set Low Alarm Downloads the Low alarm limit value 4–111
@AARH Read High Alarm The addressed analog input module is 4–114
asked to return its high alarm value
@AARL Read Low Alarm The addressed analog input module is 4–115
asked to return its low alarm value
$AA4 Read Synchronized Returns the value that was stored in 4–60
Data the specified module's register after
the #** command
$AA3 CJC Status Returns the value of the CJC sensor 4–63
for a specified analog input module
$AA9 CJC Offset Calibration Calibrates the CJC sensor for offset 4–64
errors
$AAM Read Module Name Return the module name from the 4–51
specified analog input module
@AADI Read Digital I/O and The addressed module returns the 4–104
Alarm Status state of its digital input channel, its
two digital output channels and the
status of its alarm
@AADO(data) Set Digital Output Set the values of the module's two 4–106
digital outputs (ON or OFF)
@AAHI(data) Set High Alarm Downloads the High alarm limit value 4–110
@AALO(data) Set Low Alarm Downloads the Low alarm limit value 4–111
@AARH Read High Alarm The addressed analog input module is 4–114
asked to return its high alarm value
@AARL Read Low Alarm The addressed analog input module is 4–115
asked to return its low alarm value
$AA4 Read Synchronized Returns the value that was stored in 4–60
Data the specified module's register after
the #** command
$AAF Read Firmware Version Return the firmware version code from 4–50
the specified analog input module
$AAM Read Module Name Return the module name from the 4–51
specified analog input module
@AADI Read Digital I/O and The addressed module returns the 4–104
Alarm Status state of its digital input channel, its
two digital output channels and the
status of its alarm
@AADO(data) Set Digital Output Set the values of the module's two 4–106
digital outputs (ON or OFF)
@AAHI(data) Set High Alarm Downloads the High alarm limit value 4–110
@AALO(data) Set Low Alarm Downloads the Low alarm limit value 4–111
@AARH Read High Alarm The addressed analog input module is 4–114
asked to return its high alarm value
@AARL Read Low Alarm The addressed analog input module is 4–115
asked to return its low alarm value
$AA4 Read Synchronized Returns the value that was stored in 4-60
Data the specified module's register after
the #** command
$AAF Read Firware Version Returns the firmware version code 4-50
from the specified analog input
module
$AAM Read Module Name Returns the module name from the 4-51
specified analog input module
%AANNTTCCFF Configuration Sets the address, baud rate, data format, 4-44
checksum status, and/or integration time
for a specified analog input module
#AAN Read Analog Input from Returns the input value from a specified 4-54
Channel N channel of analog input module in the
currently configured data format
#AA Analog Data In Returns the input value from a specified 4-52
analog input module in the currently
configured data format
$AA0Ci Single Channel Span Calibrates a specified channel to correct for 4-65
Calibration gain errors
$AA1Ci Single Channel Offset Calibrates a specified channel to correct for 4-66
Calibration offset errors
$AA2 Configuration Status Returns the configuration parameters for 4-58
the specified analog input module
#** Synchronized Sampling Orders all analog input modules to sample 4-59
their input values and store them in special
registers
$AA4 Read Synchronized Data Returns the value that was stored in the 4-60
specified module's register after the #**
command
$AA5VV Enable/Disable Channels Enable or disable the individual channels in 4-55
for Multiplexing an analog module
$AA6 Read Channel Status Get the enable/disable status of all channels 4-56
in an analog module
$AAB Channel Diagnose Diagnose channel status in over range, 4-62
under range, and wire opening
$AA7CiRrr Single Channel Range Configure the input type and range of the 4-67
Configuration specified channel in an analog input module
$AA8Ci Read Single Channel Get the input type and range of the 4-70
Range Configuration specified channel in an analog input module
$AAXnnnn Watchdog Timer Setting Set WDT communication cycle 4-71
$AAY Read Watchdog Timer Read the setting of WDT communication 4-72
Setting cycle
$AAS0 Internal Calibration Internal self-calibration for offset and gain 4-73
errors
$AAS1 Reload default calibrating Reload factory default calibrating parameter 4-74
parameter to overwrite current calibrating parameter
$AAF Read Firmware Version Return the firmware version code from the 4-50
specified analog input module
$AAM Read Module Name Return the module name from the specified 4-51
analog input module
#AA Read Analog Input Return the input value from the 4–52
specified analog input module in the
currently configured data format
$AA4 Read Synchronized Returns the value that was stored in 4–60
Data the specified module's register after
the #** command
$AAM Read Module Name Return the module name from the 4–51
specified analog input module
@AADI Read Digital I/O And Ask the addressed module to return 4–104
Alarm Status the state of its four digital output
channels and the status of its alarm
@AADO(data) Set Digital Output Set the values of the module's four 4–106
Values digital outputs (ON or OFF)
@AAHI(data) Set High Alarm Value Download the high alarm limit value 4–110
@AALO(data) Set Low Alarm Value Download the low alarm limit value 4–111
@AACA Clear Latch Alarm Reset the module's latch alarm to 4–113
zero
@AARH Read High Alarm Value Ask the addressed module to return 4–114
its high alarm value
@AARL Read Low Alarm Value Ask the addressed module to return 4–115
its low alarm value
$AA6 Get Excitation Voltage Returns either last value sent to 4–120
Output Value specified module by $AA7 command,
or start-up output voltage
Range Displayed
Input Range Max. Signal Min Signal
code(Hex) Resolution
07 +/-4~20 mA +20.000 -20.000 1uA
08 +/-10 V +10.000 -10.000 1mV
09 +/-5 V +5.0000 -5.0000 100.00uV
0a +/-1 V +1.0000 -1.0000 100.00uV
0b +/-500 mV +500.00 -500.00 10uV
0c +/-150 mV +150.00 -150.00 10uV
0d +/-20 mA +20.000 -20.000 1uA
$AA3 CJC Status Returns the value of the CJC sensor 4-63
for a specified analog input module
$AA0Cn Set Current Trim Data As CHn 4mA Calibration !AA $020C2 !02 1ms
Parameter / EEPROM
$AA1Cn Set Current Trim Data As CHn 20mA Calibration !AA $021C2 !02 1ms
Parameter / EPROM
$AA2 Read Back Module Status !AATTCCFF $022 !0200CCFF 1ms
$AA3Cn(m) Set Trim Data For CHn !AA $02308 !02 1ms
m : 0 ~ 127 And If Negative Then Add 0x80 ( m=xx ) $02388 !02
Ex. m=89 ! -9
m=09 ! +9
$AA4 Read Back The IDI By Synchrous CMD(#**) Read IDI !AAx $024 !02C 1ms
Input (IDI=C)
$AA5 Read Back Reset Times After Last $AA5 CMD And !AAxx $025 !0205 1ms
Clear This ounter
$AA6Cn Read Back CHn Last Output Valu !AA(data) $026C2 !02+07.456 4ms
$AAM Read Module Return the module name from the 4–166
Name specified Digital I/O module
1) Link to http://www.advantech.com
2) Click Support to get in eService Knowledge Center
3) Search for download and key-in “ADAM-4000” to get the latest
ADAM-4000 User’s Manual
$AAM Read Module Return the module name from the 4–166
Name specified digital I/O module
$AAM Read Module Return the module name from the 4–166
Name specified digital I/O module
$AAM Read Module Return the module name from the 4–166
Name specified digital I/O module
$AA7N Read Overflow Flag The addressed module returns the status 4–187
of the overflow flag of counter 0 or
counter 1
@AAPN(data) Set Initial Count Sets the initial count value of the 4–203
Value of Counter N module for counter 0 or counter 1
@AAGN Read Initial Count Reads the initial count value of counter 4–204
Value of Counter N 0 or counter 1
@AAEAN Enable Alarm of Enable alarm for the specified counter 0 4–205
Counter N or counter 1
@AADAN Disable Alarm of Disable alarm for the specified counter 4–206
Counter N 0 or counter 1
@AAPA(data) Set Alarm Limit Download the alarm limit value for 4–207
Value of Counter 0 counter 0 of the specified module
@AASA(data) Set Alarm Limit Download the alarm limit value for 4–207
Value of Counter 1 counter 1 of the specified module
@AARP Read Alarm Limit Ask the module to return the alarm 4–208
Value of Counter 0 limit value of counter 0
@AARA Read Alarm Limit Ask the module to return the alarm 4–208
Value of Counter 1 limit value of counter 1
@AADO (data) Set Digital Output Set the values of the module's two 4–209
Values digital outputs (ON or OFF)
@AADI Read Digital Output Ask the module to return the status 4–210
and Alarm Status state of its two digital outputs and the
status of its alarm.
$AA7N Read Overflow Flag The addressed module returns the 4–187
status of the overflow flag of counter 0
or counter 1
@AADO Set Digital Output Set the values of the module's 4–209
Values two digital outputs
(ON or OFF)
#AAN Read Analog Input Returns the input value from 4015, 4017, 4018,
from Channel N channel number n of the 4018M, 4019
specified analog input
module
#AA5VV Enable/Disable Enables/disables 4015, 4017, 4018,
Channels for multiplexing simultaneously 4018M, 4019
Multiplexing for separate channels of the
specified input module
Command
Command Name Description I/O Module
Syntax
$AA6 Read Channel Ask the specified input 4015, 4017, 4018,
Status module to return the status 4018M, 4019
of all eight channels
$AA0 Span Calibration Calibrate the analog input 4011, 4011D, 4012,
module to correct for gain 4013, 4016, 4017, 4018,
errors 4018M
$AA1 Offset Calibration Calibrate the analog input 4011, 4011D, 4012,
module to correct for offset 4013, 4016, 4017, 4018,
errors. 4018M
#** Synchronized Orders all analog input 4011, 4011D, 4012,
Sampling modules to sample their 4013, 4015, 4016, 4019
input values and store them
in special registers
$AA4 Read Returns the value that was 4011, 4011D, 4012,
Synchronized stored in the specified 4013, 4015, 4016, 4019
Data module's register after the
#** command
$AA3 CJC Status Returns the value of the CJC 4011, 4011D, 4018,
sensor for a specified analog 4018M, 4019
input module
$AA9 CJC Offset Calibrates the CJC sensor for 4011, 4011D, 4018,
Calibration offset errors 4018M, 4019
Command
Command Name Command Description I/O Module
Syntax
Single Channel Calibrates a specified channel to correct 4015, 4019
$AA0Ci
Span Calibration for gain errors
Single Channel Calibrates a specified channel to correct 4015, 4019
$AA1Ci
Offset Calibration for offset errors
Single Channel Configure the input type and range of
4015, 4019
$AA7CiRrr Range the specified channel in an analog input
Configuration module
Read Single Get the input type and range of the
4015, 4019
$AA8Ci Channel Range specified channel in an analog input
Configuration module
Watchdog Timer 4015, 4019
$AAXnnnn Set WDT communication cycle
Setting
Read Watchdog Read the setting of WDT 4015, 4019
$AAY
Timer Setting communication cycle
Internal Internal self-calibration for offset and 4015
$AAS0
Calibration gain errors
Reload default Reload factory default calibrating 4015
$AAS1
calibrating parameter to overwrite current
parameter calibrating parameter
CJC Offset Calibrates the CJC sensor for offset 4019
$AA9SNNNN
Calibration errors
4019
$AAAi CJC Setting Configure CJC setting
%AANNTTCCFF
Name Configuration
Description Sets address, input range, baud rate, data format, checksum
status, and/or integration time for an analog input module.
Syntax %AANNTTCCFF(cr)
% is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the analog input module you want to configure.
NN represents the new hexadecimal address of the analog input
module. Range is from 00h to FFh.
TT represents the type (input range) code.(4015 and 4019 must
be 00)
CC represents the baud rate code.
FF is a hexadecimal number that equals the 8-bit parameter
representing the data format, checksum status and integration
time. The layout of the 8-bit parameter is shown in figure 4-1.
Bits 2 through 5 are not used and are set to 0.
(cr) is the terminating character, carriage return (0Dh)
7 6 5 4 3 2 1 0
%AANNTTCCFF
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid parameter was entered or if the INIT*
terminal was not grounded when attempting to change baud
rate or checksum settings.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh)
Example command: %2324050600(cr)
response: !24(cr)
The ADAM-4011 module with address 23h is configured to a
new address of 24h, an input range ±2.5 V, baud rate 9600,
integration time 50 ms (60 Hz), engineering units data format
and no checksum checking or generation.
The response indicates that the command was received.
Wait 7 seconds to let the new configuration settings take effect
before issuing a new command to the module.
Note1: The input range requires the useage of a 125 Ω current conversion
resistor
$AA2
Name Configuration Status
Description The command requests the return of the configuration data
from the analog input module at address AA.
Syntax $AA2(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to
interrogate.
2 is the Configuration Status command.
(cr) is the terminating character, carriage return (0Dh).
Response !AATTCCFF(cr) if the command is valid.
?AA(cr)if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
TT represents the type code. Type code determines the input
range.
CC represents the baud rate code.
FF is a hexadecimal number that equals the 8-bit parameter that
represents the data format, checksum status and integration
time . The layout of the 8-bit parameter is shown in figure 4-1.
Bits 2 to 5 are not used, and are set to 0.
(cr) is the terminating character, carriage return (0Dh).
(Also see the %AANNTTCCFF configuration command)
$AA2
Example command: $452(cr)
response: !45050600(cr)
The command asks the analog input module at address 45h to
send its configuration data.
The analog input module at address 45h responds with an input
range of 2.5 volts, a baud rate of 9600 bps, an integration time of
50 ms (60 Hz), engineering units are the currently configured
data format, and no checksum function or checksum generation.
$AAF
Name Read Firmware Version
Description The command requests the analog input module at address AA
to return the version code of its firmware
Syntax $AAF (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to
interrogate.
F identifies the version command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Version)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(Version) is the version code of the module’s firmware at
address AA.
(cr) is the terminating character, carriage return (ODh).
$AAM
Name Read Module Name
Description The command requests the analog input module at address AA
to return its name
Syntax $AAM (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to
interrogate.
M is the Read Module Name command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Module Name)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(Module Name) is the name of the module at address AA.
(cr) is the terminating character, carriage return (ODh).
#AA
Name Analog Data In
Description The command will return the input value from a specified (AA)
module in the currently configured data format.
Syntax #AA(cr)
# is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Response >(data)(cr)
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
> is a delimiter character.
(data) is the input value in the configured data format of the
interrogated module. (For data formats, see Appendix B).
(cr) is the terminating character, carriage return (0Dh).
Example command: #33(cr)
response: >+5.8222(cr)
The command interrogates the analog input module at address
33h for its input value.
The analog input module responds with +5.8222 volts. (The
configured data format of the analog input module in this case
is engineering units.)
Example command: #21(cr)
response: +7.2111+7.2567+7.3125+7.1000
+7.4712+7.2555+7.1234+7.5678 (cr)
The command interrogates the analog input module at address
21h for its input values of all channels.
The analog input module responds with channels from 0 to 7
with +7.2111 volts, +7.2567 volts, +7.3125 volts,
+7.1000 volts, +7.4712 volts, +7.2555 volts, +7.1234 volts and
+7.5678 volts.
#AA
Example command: #DE(cr)
response: >FF5D(cr)
The analog input module at address DEh has an input value of
FF5D. (The configured data format of the analog input module
is twos complement)
Twos complement % of Span Engineering units
In the next example the target module is configured for an input range of
T/C type J (Input range: 0 - 760° C) and for a data format in engineering
units. The module measures an input value of 820° C.
Example command: #D1(cr)
response: >+9999(cr)
#AAN
Name Read Analog Input from Channel N
Description The command will return the input value from one of the eight
channels of a specified (AA) module in the currently configured
data format.
Syntax #AAN(cr)
# is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module.
N identifies the channel you want to read. The value can range
from 0 to 7 for 4017, 4018, 4018M, 4019. (the range of 4015 is
from 0 to 5)
(cr) is the terminating character, carriage return (0Dh).
Response >(data)(cr)
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
> is a delimiter character.
(data) is the input value of the channel number N. Data consists
of a + or - sign followed by five decimal digits with a fixed
decimal point.
(cr) is the terminating character, carriage return (0Dh).
Example command: #120(cr)
response: >+1.4567(cr)
The command requests the analog input module at address 12h
to return the input value of channel 0.
The analog input module responds that the input value of
channel 0 is equal to +1.4567 volts.
$AA5VV
Name Enable/disable channels for multiplexing
Description Enables/disables multiplexing simultaneously for seperate
channels of a specified input module
Syntax $AA5VV(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of analog input module.
5 is the enable/disable channels command.
VV are two hexidecimal values. The values are interpreted by
the module as two binary words (4-bit). The first word repre-
sents the status of channel 4-7, the second word represents the
status of channel 0-3. Value 0 means the channel is disabled,
value 1 means the channel is enabled.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr)if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $00581(cr)
response: !00(cr)
Hexadecimal 8 equals binary 1000, which enables channel 7 and
disables channels 4, 5, and 6.
Hexadecimal 1 equals binary 0001, which enables channel 0 and
disables channel 1,2, and 3.
$AA6
Name Read Channel Status
Description Asks a specified input module to return the status of all
channels
Syntax $AA6(cr)
AA (range 00-FF) represents the 2-character hexadecimal
address of analog input module of which the channel status
you want to send. The channel status defines whether a
channel is enabled or disabled
(cr) is the terminating character, carriage return (0Dh).
Response !AAVV(cr) if the command is valid.
?AA(cr)if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
VV are two hexadecimal values. The values are interpreted by
the module as two binary words (4-bit). The first word repre-
sents the status of channel 4-7, the second word represents the
status of channel 0-3. Value 0 means the channel is disabled,
value 1 means the channel is enabled.
(cr) is the terminating character, carriage return (0Dh).
Example command: $026(cr)
response: !02FF(cr)
The command asks the analog input module at address 02 to
send the status of it input channels. The analog input module
at address 02 responds that all its multiplex channels are
enabled (FF equals 1111 and 1111).
$AA0
Name Span Calibration
Description Calibrates an analog input module to correct for gain errors.
Syntax $AA0(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be calibrated.
0 represents the span calibration command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module.
(cr) represents terminating character, carriage return (0Dh).
$AA1
Name Offset Calibration.
Description Calibrates an analog input module to correct for offset errors.
Syntax $AA1(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module you want to calibrate.
1 represents the offset calibration command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module.
(cr) represents terminating character, carriage return (0Dh).
#**
Name Synchronized Sampling
Description Orders all analog input modules to sample their input values
and store the values in special registers.
Syntax #**
# is a delimiter character.
** is the actual synchronized sampling command.
The terminating character, in the form of a carriage return (0Dh),
is not required.
Response The analog input modules will send no response after executing
the synchronized sampling command. In order to retrieve the
data, a separate Read Synchronized Data command has to be
issued for every analog input module.
The pound sign (#) followed by two asterisks (**) does not represent an
optional value, but is the actual command string.
$AA4
Name Read Synchronized Data
Description Returns the input value that was stored in the addressed
module’s register, after a Synchronized Sampling command #**
was issued.
Syntax $AA4(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module from which data is to be
sent.
4 is the Read Synchronized Data command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(status)(data)(cr) if the command was valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that is responding.
(status) will tell you if the data (data) from the last Synchronized
Sampling command (#**) has already been sent. If status=1,
then the data has been sent for the first time since a Synchro-
nized Sampling command was issued. If status=0, then the data
has been sent at least once before.
(data) a value stored in a special register of the interrogated
module in the configured data format. It has been sampled by
the module after a Synchronized Sampling command. (For
possible data formats, see Appendix B, Data Formats and I/O
Ranges)
(cr) represents terminating character, carriage return (0Dh).
$AAB
Name Channel Diagnose
Description Diagnose channel status in over range, under range, and wire
opening
Syntax $AAB(cr)
$ is a delimiter character
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module to be detected.
B is the channel diagnose command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA0(cr) if the module detects a close thermocouple. (4011D
only)
!AA1(cr) if the module detects an open thermocouple. (4011D
only)
!AANN(cr) if the command is valid when it applied with
ADAM-4015.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error of if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module.
NN (range 00-FF) is a hexadecimal number that equals the 8-bit
parameter, representing the status of analog input channels. Bit
value 0 means normal status; and bit value 1 means channel
over range, under range, or open wiring.
(cr) is the terminating character, carriage return (0Dh)
$AA3
Name CJC Status command
Description Instructs the addressed analog input module to read its CJC
(Cold Junction Compensation) sensors and return the acquired
data.
Syntax $AA3(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which contains the CJC
Status you wish to retrieve.
3 is CJC Status command.
(cr) is the terminating character, carriage return (0Dh).
Response >data(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(data) is the value that is retrieved by the module by reading its
CJC sensor. The data format, in degrees Celsius, consists an
“+” or “-” sign followed by five decimal digits and a fixed
decimal point. The resolution of the data is 0.1 oC.
(cr) is the terminating character, carriage return (0Dh).
Example command: $093(cr)
response: >+0036.8(cr)
The command request the analog input module at address 09h
to read its CJC sensor and return the data. The analog input
module at address 09h responds with: 36.8o C.
$AA9
Name CJC Offset Calibration
Description Calibrates an analog input module to adjust for offset errors of
its CJC (Cold Junction Compensation) sensors.
Syntax $AA9S(number of counts)(cr).
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which contains the CJC
Status you wish to retrieve.
9 is CJC Status command.
S sign, + or -, indicates whether to increase or decrease the CJC
offset value.
(number of counts) a four character hexadecimal “count” value.
Each count equals approximately 0.009° C. The value can range
from 0000 to FFFF.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicates a valid command was received.
? delimiter character indicates the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $079+0042(cr)
response: !07(cr)
The command increases the CJC offset value of the analog
input module at address 07h with 66 counts (42 hex) which
equals about 0.6° C.
$AA0Ci
Name Single Channel Span Calibration
Description The command calibrates a specified channel to correct for gain
errors.
Syntax $AA0Ci(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be calibrated.
0 represents the span calibration command.
Ci represent the specified input channel you want to calibrate.
(cr) is the terminating character, carriage return (0Dh).
$AA1Ci
Name Single Channel Offset Calibration
Description The command calibrates a specified channel to correct for offset
errors.
Syntax $AA1Ci(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be calibrated.
1 represents the offset calibration command.
Ci represent the specified input channel you want to calibrate.
(cr) is the terminating character, carriage return (0Dh).
$AA7CiRrr
Name Single Channel Range Configuration
Description This command configure the input type and range of the
specified channel in an analog input module.
Syntax $AA7CiRrr(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be configured.
7 represents the range configuration command.
Ci represent the specified input channel you want to configure.
Rrr represent the type and range you want to set. (refer to Table
4-3 to check range code)
(cr) is the terminating character, carriage return (0Dh).
$AA8Ci
Name Read Single Channel Range Configuration
Description This command read the input type and range configuration of
the specified channel in an analog input module.
Syntax $AA8Ci(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be read.
8 represents the read range configuration command.
Ci represent the specified input channel you want to read.
(cr) is the terminating character, carriage return (0Dh).
$AAXnnnn
Name Watchdog Timer Setting
Description This command set the Watchdog Timer communication cycle.
Syntax $AAXnnnn(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be read.
X represents the setting WDT command.
nnnn (range 0000~9999) represent the specified value of
communication cycle you want to set.
(cr) is the terminating character, carriage return (0Dh).
$AAY
Name Read Watchdog Timer Setting
Description This command read the setting of Watchdog Timer communica-
tion cycle.
Syntax $AAY(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be read.
Y represents the reading WDT cycle command.
(cr) is the terminating character, carriage return (0Dh).
$AAS0
Syntax $AAS0(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be calibrated.
S0 represents the internal calibration system command.
(cr) is the terminating character, carriage return (0Dh).
$AAS1
Name Reload Default Calibrating Parameter
Description Reload factory default calibrating parameter to overwrite current
calibrating parameter
Syntax $AAS1(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module which is to be reloaded.
S1 represents the reload calibrating parameter system command.
(cr) is the terminating character, carriage return (0Dh).
$AAAi
Name CJC Setting
Description This command configure the CJC setting.
Syntax $AAAi(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address. of the analog input module which is to be read.
Ai represents the command code of CJC setting:
If i=0, this command will stop CJC update.
If i=1, this command will start CJC update.
If i=2, this command will execute CJC update once only.
(cr) is the terminating character, carriage return (0Dh).
I/O
Command Syntax Command Name Description
Module
$AA3 Read Source Read the high/low limit values 4014D
High/Low Values from the specified module for
for Linear Mapping linear mapping.
$AA5 Read Target Read the mapped input high/ low 4014D
High/Low Values for limit values from the specified
Linear Mapping module for linear mapping.
$AA8V Select LED Data Select whether LED will display 4014D
Origin data from the input module
directly or from the host PC
$AA3
Name Read Source High/Low Values for Linear Mapping
Description Read the high/low limit values from a specified module for
linear mapping.
Syntax $AA3(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to interro-
gate.
3 identifies the command to read the module’s high/low limit
value for linear mapping.
(cr) is the terminating character, carriage return (0Dh)
$AA3
Example command: $133(cr)
response: !13+04.000+20.000(cr)
The module is configured for an ±20 mA input current range.
The linear mapping function should already have been execut-
ed. The module’s input high/low limit values are +20.000 and
+04.000. The command requests the analog input module at
address 13 to return its input limit values for linear mapping.
The module at address 13 returns its input high/low limit
values which are +20.000 and +04.000.
$AA5
Name Read Target High/Low Values for Linear Mapping
Description Read the mapped input high/ low limit values from a specified
module for linear mapping.
Syntax $AA5(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to interro-
gate.
5 is the command to read the mapped high/low limit value for
linear mapping.
(cr) is the terminating character, carriage return (0Dh)
$AA5
Example command: $135(cr)
response: !13+000.000+200.00(cr)
The module is configured for a ±20mA input current range.
The linear mapping function had been executed and the
mapped input high/low limit values were +200.00 and
+000.00. The command requests the analog input module at
address 13 to return its mapped input limit values for linear
mapping. The addressed module returns the mapped input
high/low limit values at address 13 are +200.00 and +000.00.
$AA6(data_A)(data_B)
Name Write Source High/Low Values for Linear Mapping
Description Write the high/low limit values to a specified module for linear
mapping. The module will only activate the source values after
new target high/low values are written (Command $AA7).
Syntax $AA6(data_A)(data_B)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module.
6 identifies the set high/low limit value for linear mapping
command.
(data_A) is the low limit input value of the module for linear
mapping. This value must be lower than the module’s high
limit input value for linear mapping (data_B). The data format
is the same as the module’s input current range. The minimum
value allowed is equal to the minimum input value of the
current range.
(data_B) is the high limit input value of the module for linear
mapping. This value must be greater than the module’s low
limit input value for linear mapping (data_A). The data format
is the same as the module’s input current range, and the
maximum value allowed is equal to the maximum input value
of the current range.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
The addressed module stores the high/low input values in a
buffer. The module updates these values only after the com-
mand $AA7(data_C) (data_D) is executed.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
$AA6(data_A)(data_B)
Example command: $136+04.000+20.000(cr)
response: !13(cr)
The module is configured for a ±20 mA input current range.
The command orders the module at address 13 to change its
analog input range from +04.000 mA to +20.000 mA. The
addressed module stores these values in a buffer and will only
update the high/low limit value of the input current range when
command $137(data_C)(data_D) is executed (see command
$AA7(data_C)(data_D)).
Example command: $016-100.00+100.00(cr)
response: !01(cr)
The module is configured for a ±150 mV input range. The
command orders the module at address 01 to change its analog
input range from -100.00 mV to +100.00 mV. The addressed
module stores these values in a buffer and will only update the
high/low limit value of the input current range when command
$017(data_C)(data_D) is executed.
$AA7(data_C)(data_D)
Name Write Target High/Low Values for Linear Mapping
Description Write the mapped input high/low limit values to a specified
module for linear mapping. This command is only valid if it
was preceded by a $AA6 command.
Syntax $AA7(data_C)(data_D)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to interro-
gate.
7 is the command to set the mapped high/low limit value for
linear mapping.
(data_C) is the low mapped limit input value for linear map-
ping from the addressed module’s low limit input value. This
value need not be lower than the mapped high limit input value
(data_D). The data format must consist a “+” or “-” sign
followed by five decimal digits and a fixed decimal point. The
allowed maximum value is 19999.
(data_D) is the high mapped limit input value for linear
mapping from the addressed module’s high limit input value.
The data format must include a “+” or “-” sign followed by
five decimal digits and a fixed decimal point. The allowed
maximum value is 19999.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
The addressed module update the input limit value of the
range, and transform the data to a new value by linear map-
ping. This command is valid only after the command
$AA6(data_A)(data_B) had been executed for each time.
Notice that this command will enable linear mapping function.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
$AA7(data_C)(data_D)
Example command: $137+000.00+200.00(cr)
response: !13(cr)
The module is configured for ±20 mA input current range.
Previously the module executed the command
$136+04.000+20.000, which ordered the module with address
13 to map data from +4.0 mA and +20.0 mA. The current
command defines the range (0 and 200) to which these values
will be mapped to. From now on, if the input signal is 12 mA,
then the output will be 100.00. Notice that the addressed
module will also update the input limit values to +04.000 mA
and +20.000 mA for the previous command
$136+04.000+20.000. Input signals out of this range will cause
invalid output data.
Example command: $017+100.00-100.00(cr)
response: !01(cr)
The module is configured for a ±150 mV input voltage range
and already executed command $016-100.00+100.00. The
current command requests the module at address 01 to map
data from the earlier specified -100.00 mV and +100.00 mV to
the range +100.00 and -100.00. Therefore, if an input signal
of 50 mV is received, then the output will be -50.00. Notice
that the addressed module will also update the input limit value
to be -100.000 mV and +100.00 mV because of the previous
command $136-100.00+100.00. Input signals out of this range
will cause invalid output data.
$AAAV
Name Enable/Disable Linear Mapping
Description Enables or disables the linear mapping function of the speci-
fied analog input module.
Syntax $AAAV(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of analog input module
A selects the linear mapping function
V is either 0 or 1 which determines the linear mapping function
to be enable or disabled. 1 means linear mapping function is
enable, and 0 means disabled.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $01A1(cr)
response: !01(cr)
The command enables the linear mapping function of the
analog input module at address 01.
$AA8V
Name Select LED Data Origin
Description Select whether LED will display data from the input module
directly or from the host PC
Syntax $AA8V(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of analog input module that you want to interrogate.
8 is the select LED driver command.
V is either 1 or 2 to select which is going to send data to the
LED. 1 means the driver is the addressed module, and 2 means
the host PC will send data..
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0181(cr)
response: !01(cr)
The command sets the analog input modules at address 01 to
display data sent by the host PC. After this command, the PC
can use command $AA9(data) to send the data to the addressed
module.
$AA9(data)
Name Send LED Data
Description PC sends data to LED display. This command is valid only
after selecting LED to display from PC ($AA8V)
Syntax $AA9(data)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module
9 identifies the PC send data to LED command.
(data) is the data which must consist of an “+” or “-” sign
followed by five decimal digits and a fixed decimal point. The
maximum value is 19999.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $019+1999.9(cr)
response: !01(cr)
The command sends display data (+1999.9) to the analog input
module at address 01. This command is only valid when it is
preceded by command $0181. (See command $AA8V.)
Example command: $019-00290.(cr)
response: !01(cr)
The command sends display data -00290 to the analog input
module at address 01. Note that even when sending an integer
the data must contain a decimal point.
Command
Command Syntax Description I/O Module
Name
@AACCCSDMTTTT Set Memory Set the channel storage 4018M
Configuration status, standalone mode, data
logger mode, storage type and
sampling interval for the
specified analog input data
logger.
@AAD Read Memory Return the configuration 4018M
Configuration parameters for the specified
analog input data logger.
@AACCCSDMTTTT
Name Set Memory Configuration
Description Sets the channel storage status, standalone mode, data logger
mode storage type and sampling interval for the specified
analog input data logger.
Syntax @AACCCSDTTTT(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
C identifies the Set Memory Configuration command.
CC (range 00-FF) represents the data storage status of each
channel. The ADAM-4018M has 8 channels, bit 0 representing
channel 0, and bit 7 representing channel 7. A mask bit value
of ‘1’ enables data storage in the specified channel, while a
mask bit value of ‘0’ disables data storage.
Channel 7 Channel 0
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
@AACCCSDMTTTT
Response !AA(cr) if the configuration is successful.
?AA(cr) if the configuration fails.
! and ? are delimiter characters.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
Example command: @0DCFF111012C(cr)
response: !0D(cr)
The ADAM-4018M module at address 0D is configured as
such:
All eight data storage channels enabled
Standalone mode enabled
Event logger selected
Circular memory mode
Sampling interval 300 seconds
The response indicates the command is successful.
@AAD
Name Read Memory Configuration
Description The command requests the configuration data from the analog
input data logger at address AA.
Syntax @AAD (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
D identifies the Read Memory Configuration command.
(cr) is the terminating character, carriage return (0Dh)
Response !AACCSDTTTT(cr) if the command is valid.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
CC (range 00-FF) represents the data storage status of each
channel. The ADAM-4018M has 8 channels, bit 0 representing
channel 0, and bit 7 representing channel 7. A mask bit value
of ‘1’ enables data storage in the specified channel, while a
mask bit value of ‘0’ disables data storage.
S represents the standalone mode. In order for the ADAM-
4018M to operate in the field, you must power on the memory
module by setting this value to ‘1.’ Otherwise, the data will not
be recorded.
D represents the data logging mode. ‘0’ enables Standard
Mode, where all eight channels record the normal data accord-
ing to the sampling interval. ‘1’ enables Event Mode, where all
eight channels record the data if its value is over the High
Alarm limit or under the Low Alarm limit. ‘2’ enables Mixed
Mode, where channels 0 - 3 act as the standard logger and the
channels 4 - 7 act as the event logger.
TTTT (range 2-65535) represents the sampling interval in
seconds.
(cr) is the terminating character, carriage return (0Dh)
@AASO
Name Set Memory Operation Mode
Description Sets the operation mode of the analog input data logger at
address AA to Start or Stop.
Syntax @AASO(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
S identifies the Set Memory Operation Mode command.
O represents the operation mode: ‘1’ enables the recording of
data. ‘0’ disables the recording of data.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid parameter was entered. There is no
response if the module detects a syntax error or communication
error or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
(cr) is the terminating character, carriage return (0Dh).
Example command: @03S1(cr)
response: !03(cr)
The command enables the analog input data logger at address
03 to record data.
The response indicates that the command was received.
@AAT
Name Read Memory Operation Mode
Description Request the memory operation status of the analog input data
logger at address AA.
Syntax @AAT (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
T identifies the Read Memory Operation Mode command.
(cr) is the terminating character, carriage return (0Dh).
Response !AAO(cr) if the command is valid.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
O represents the operation mode: ‘1’ enables the recording of
data. ‘0’ disables the recording of data.
(cr) is the terminating character, carriage return (0Dh).
Example command: @F3T(cr)
response: !F31(cr)
The command requests the memory operation status of the
analog input data logger at address F3.
The response indicates that data recording is enabled.
@AAL
Name Event Record Count
Description Request the number of event records stored in the analog input
data logger at address AA.
Syntax @AAL (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
L identifies the Event Record Count command.
(cr) is the terminating character, carriage return (0Dh).
Response !AAHHHH(cr) if the command is valid.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
HHHH represents the 4-character hexadecimal number of
event records stored in the analog input data logger at address
AA.
(cr) is the terminating character, carriage return (0Dh).
Example command: @F3L(cr)
response: !F30096(cr)
The command requests the number of event records stored in
the analog input data logger at address F3.
The module currently has 150 event records.
@AAN
Name Standard Record Count
Description Request the number of standard records stored in the analog
input data logger at address AA.
Syntax @AAN (cr)
@ is a delimiter character
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
N identifies the Standard Record Count command.
(cr) is the terminating character, carriage return (0Dh).
Response !AAHHHH(cr) if the command is valid.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
HHHH represents the 4-character hexadecimal number of data
records stored in the analog input data logger at address AA.
(cr) is the terminating character, carriage return (0Dh).
Example command: @A3N(cr)
response: !A30320(cr)
The command requests the number of data records stored in
the analog input data logger at address A3.
The module currently has 800 data records.
@AARNNNN
Name Read Record Content
Description Request the content of record NNNN stored in the analog input
data logger at address AA.
Syntax @AARNNNN (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
R identifies the Read Record Content command.
NNNN represents the 4-character decimal number of stored
record index. Its value is from 0 to (total record number - 1).
(cr) is the terminating character, carriage return (0Dh).
NOTE:
NNNN is from 0 to 9999 for Standard Mode.
NNNN is from 0 to 4599 for Event Mode.
NNNN is from 0 to 7299 for Mixed Mode. (0-4999 are data
records, 5000-7299 are event records)
Response !AACDHHHH(cr) if the returned data are data records.
!AACDHHHHTTTTTTTT(cr) if the returned data are event
records.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
C represents the channel index. Its value is from 0 to 7.
D represents the 4-bit binary number. Bit 0 represents the sign
of the number HHHH. ‘0’ means positive. ‘1’ means negative.
Bits 1-3 represents the decimal point of the number HHHH.
@AARNNNN
HHHH represents the 4-character hexadecimal number of
returned record stored in the analog input data logger at
address AA.
TTTTTTTT represents elapsed time.
(cr) is the terminating character, carriage return (0Dh).
Example command: @F3R1000(cr)
response: !F30799AA00001000(cr)
The command requests the analog input data logger at address
F3 to return its contents in the 1001st record.
The returned content is valid. The event data number is
- 39.338 for channel 0 in the 4096 seconds from the start of the
module.
@AAACSDHHHHTEIIII
Name Set Alarm Limit
Description Set high/low alarm limits for the channel C in the analog input
data logger at address AA
Syntax @AAACSDHHHHTEIIII(cr)
@ is a delimiter character
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
A identifies the Set Alarm Limit command.
C represents the channel index. Its value is from 0 to 7.
S represents the sign of the high alarm limit. ‘0’ is for positive.
And ‘1’ is for negative.
D represents the decimal point of the high alarm limit. Its value
is from 0 to 5.
HHHH represents the 4-character hexadecimal number of high
alarm limit.
T represents the sign of the low alarm limit. ‘0’ is for positive.
And ‘1’ is for negative.
E represents the decimal point of the low alarm limit. Its value
is from 0 to 5.
IIII represents the 4-character hexadecimal number of low
alarm limit.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid parameter was entered. There is no
response if the module detects a syntax error or communication
error or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
(cr) is the terminating character, carriage return (0Dh).
@AAACSDHHHHTEIIII
Example command: @EFA0020400020100(cr)
response: !EF(cr)
The command sets channel 0 of the analog input data logger at
address EF as such:
high alarm limit = 10.24
low alarm limit = 2.56
The response indicates the command was received.
@AABC
Name Read Alarm Limit
Description Request the alarm limits for the specified channel in the analog
input data logger at address AA.
Syntax @AABC(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
B identifies the Read Alarm Limit command.
C represents the channel index. Its value is from 0 to 7.
(cr) is the terminating character, carriage return (0Dh).
Response !AASDHHHHTEIIII
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input data logger.
S represents the sign of the high alarm limit. ‘0’ is for positive.
And ‘1’ is for negative.
D represents the decimal point of the high alarm limit. Its value
is from 0 to 5.
HHHH represents the 4-character hexadecimal number of high
alarm limit.
T represents the sign of the low alarm limit. ‘0’ is for positive.
And ‘1’ is for negative.
E represents the decimal point of the low alarm limit. Its value
is from 0 to 5.
IIII represents the 4-character hexadecimal number of low
alarm limit.
(cr) is the terminating character, carriage return (0Dh)
Command Command
Description I/O Module
Syntax Name
@AADI Read Digital I/O The addressed module returns 4011, 4011D, 4012,
and Alarm the state of its digital input and 4014D, 4016
Status digital output channels and the
status of its alarm
@AADO(data) Set Digital Set the values of the module's 4011, 4011D, 4012,
Output Values digital outputs (ON or OFF) 4014D, 4016
@AAEAT Enable Alarm Enables the alarm in either 4011, 4011D, 4012,
Momentary or Latching mode 4014D, 4016
@AAHI(data) Set High Alarm Downloads the High alarm limit 4011, 4011D, 4012,
Value value 4014D, 4016
@AALO(data) Set Low Alarm Downloads the Low alarm limit 4011, 4011D, 4012,
Value value 4014D, 4016
@AADA Disable Alarm Disables all alarm functions 4011, 4011D, 4012,
4014D, 4016
@AACA Clear Latch Resets the module's Latch 4011, 4011D, 4012,
Alarm alarm to zero 4014D, 4016
@AARH Read High Ask the addressed module to 4011, 4011D, 4012,
Alarm Value return its high alarm value 4014D, 4016
@AARL Read Low Alarm Ask the addressed module to 4011, 4011D, 4012,
Value return its low alarm value 4014D, 4016
@AARE Read Event Ask the addressed module to 4011, 4011D, 4012,
Counter return its event counter value 4014D
@AACE Clear Event Reset the module's event 4011, 4011D, 4012,
Counter counter to zero 4014D
@AADI
Name Read Digital I/O and Alarm State
Description The addressed analog input module is instructed to return the
value of its digital input and output channels and the state of
its alarm (Momentary or Latching).
Syntax @AADI(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
DI is the Read Digital I/O and Alarm Status command.
(cr) represents terminating character, carriage return (0Dh).
Response !AASOOII(cr) if the command was valid (ADAM-4011/4011D/
4012/4014D).
!AASOO00(cr) if the command was valid (ADAM-4016)
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
S hexadecimal number that represents the alarm state (0h =
disabled, 1h = MOMENTARY mode enabled, 2h = LATCH mode
enabled).
OO (for ADAM-4011/4011D/4012/4014D) is a hexadecimal
number representing the Digital Output port’s channel 0 and 1
status (00h = D/O channels 0 and 1 are both OFF, 01h = channel
0 is ON, channel 1 is OFF, 02h = channel 0 is OFF, channel 1 is
ON, 03h = channel 0 and 1 are both ON).
@AADI
OO (for ADAM-4016) is a hexdecimal number representing the
status of the four digital output channels. The corresponsing
table is show in the following table:
O3 OFF OFF ON ON
O5 OFF ON OFF ON
O6 OFF ON ON OFF
O7 OFF ON ON ON
O9 ON OFF OFF ON
OA ON OFF ON OFF
OB ON OFF ON ON
OC ON ON OFF OFF
OD ON ON OFF ON
OE ON ON ON OFF
OF ON ON ON ON
@AADO
Name Set Digital Output
Description Sets the values of the module’s digital outputs (ON or OFF).
Syntax @AADO(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
DO is the Set Digital Output command
(data) is the two-character parameter that sets the state for the
digital output bits of the module, as shown below:
ADAM-4011/4011D/4012/4014D:
00 all D/O bits are OFF
01 DO0 is ON, DO1 is OFF
02 DO0 is OFF, DO1 is ON
03 all bits are ON
ADAM-4016:
00 DO0 and DO1 are OFF
01 DO0 is ON, DO1 is OFF
02 DO0 is OFF, DO1 is ON
03 DO0 and DO1 are ON
10 DO2 and DO3 are OFF
11 DO2 is ON, DO3 is OFF
12 DO2 is OFF, DO3 is ON
13 DO2 and DO3 are ON
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
?AA(cr) if an invalid parameter was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
@AADO
Example command: @05DO01(cr)
response: !05(cr)
The analog input module at address 05h is instructed to set
digital output channel 1 to ON and digital output channel 2 to
OFF. The module confirms the settings.
@AAEAT
Name Enable Alarm
Description The addressed analog input module is instructed to enable its
alarm in either Latching or Momentary mode.
Syntax @AAEAT(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
EA is the Enable Alarm command.
T indicates alarm type and can have the value M = Momentary
alarm state, or L = Latching alarm state.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
@AAEAT
Example command: @03EAL(cr)
response: !03(cr)
The analog input module at address 03h is instructed to enable
its alarm in Latching mode.
The module confirms that the command has been received.
@AAHI
Name Set High Alarm Limit
Description Downloads High alarm limit value into the addressed module.
Syntax @AAHI(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
HI is the Set High Limit command.
(data) represent the value of the desired high limit setting. The
format is always engineering units.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
Example command: @04HI+080.00(cr)
response: !04(cr)
Presume the analog input module at address 04h is configured
to accept T-type thermocouple input. The command will set the
High alarm limit to 80o C.
The module responds that the command has been received.
@AALO
Name Set Low Alarm Limit
Description Downloads Low alarm limit value into the addressed module.
Syntax @AALO(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
LO is the Set Low Limit command.
(data) represent the value of the desired low limit setting. The
format is always engineering units.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
Example command: @04LO-020.00(cr)
response: !04(cr)
Presume the analog input module at address 04h is configured
to accept T-type thermocouple input. The command will set the
Low alarm limit to -20oC.
The module responds that the command has been received.
@AADA
Name Disable Alarm
Description Disables all alarm functions of the addressed analog input
module.
Syntax @AADA(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
DA is the Disable Alarm command.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
Example command: @07DA (cr)
response: !07(cr)
The analog input module at address 07h is instructed to disable
all alarm functions.
The module confirms it alarm functions have been disabled.
@AACA
Name Clear Latch Alarm
Description Both alarm states (High and Low) of the addressed analog input
module are set to OFF, no alarm.
Syntax @AACA(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
CA is the Clear Latch Alarm command.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! a delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
Example command: @05CA(cr)
response: !05(cr)
The analog input module at address 05h is instructed to set
both alarm states (High and Low) to OFF.
The module confirms it has done so accordingly.
@AARH
@AARL
@AARE
Name Read Event Counter
Description The addressed module is instructed to return its event counter
value.
Syntax @AARE(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
RE Read Event Counter command.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(data)(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(data) represents the stored value, from ‘00000’ to ‘65535’(The
max value that can be held by the counter register is 65535). The
number 65535 is held when the actual total counts exceed this
number.
(cr) represents terminating character, carriage return (0Dh).
Example command: @08RE(cr)
response: !0832011(cr)
The command instructs the module at address 08h to return its
counter value.
The module responds that its counter value equals 32011.
@AACE
Name Clear Event Counter
Description The addressed module is instructed to reset its event counter to
zero.
Syntax @AACE(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog input module.
CE Clear Event Counter command.
(cr) represents terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA represents the 2-character hexadecimal address of the
responding analog input module.
(cr) represents terminating character, carriage return (0Dh).
Example command: @09CE(cr)
response: !09(cr)
The command instructs the module at address 09h to set its
event counter to zero.
The module responds that its counter has been reset.
Command I/O
Command Name Description
Syntax module
$AA6 Get Excitation Returns either last value sent to specified 4016
Voltage Output module by $AA7 command, or start-up
Value output voltage.
$AA7 Excitation Direct output excitation voltage data to a 4016
Voltage Output specified module
$AA6
Name Get Excitation Voltage Output Value
Description The addressed strain gauge input module is instructed to return
the latest output value it received from Excitation Voltage
Output command. If the module hasn’t received an Excitation
Voltage Output command since startup, it will return its Start-
up Output value.
Syntax $AA6(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
6 is the get excitation voltage output command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(data) is the value that is returned by analog output channel.
The format of the data is in engineering unit.
(cr) is the terminating character, carriage return (0Dh)
Example command: $0A6(cr)
response: !0A+03.000(cr)
The command tells the strain gauge input module at address
0Ah to return the last excitation voltage output value it
received from an Excitation Voltage Output command.
The strain gauge input module returns the value +03.000V.
$AA7
Name Excitation Voltage Output
Description Send a value to the analog output channel of the addressed
strain gauge input module. Upon receipt, the analog output
channel will output this value.
Syntax $AA7(data)(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
7 is the excitation voltage output command.
(data) is the value that has to be output through the analog
output channel. The data format is engineering unit and the
range is between 0 to 10 V.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if a value was sent that is out of range.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(cr) is the terminating character, carriage return (0Dh)
Example command: $337+05.000(cr)
response: !33(cr)
The command sends the value +05.000V to the analog output
channel of the strain gauge input module at address 33h. The
module responds that the command is valid. Its output data
format is in engineering unit, the value is +05.000V.
$AAS
Name Start-up Voltage Output Configuration
Description Stores the present analog output value of the strain gauge input
module with address AA in the module’s non-volatile register.
The output value will take effect upon start-up or after a
brownout.
Syntax $AAS(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module whose analog output
is to be set.
S is the start-up voltage output configuration command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(cr) is the terminating character, carriage return (0Dh)
$AAS
Example command: $0AS(cr)
response: !0A(cr)
Presume the present output value of the output channel of the
strain gauge input module with address 0A is +05.000V. The
command tells the module store the present output value, in its
non-volatile memory. When the module is powered up or reset,
its default output value will be +05.000V.
The response of the strain gauge input module indicates that
the command has been received.
$AAE
Name Trim Calibration
Description Trims the output voltage of the strain gauge input module a
specified number of units up or down.
Syntax $AAE(number of counts)(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module to be calibrated.
E is the trim calibration command.
(number of counts) is the 2-character twos complement
hexadecimal value that represents the number of counts by
which to increase or decrease the output voltage. Each count
equals approximately 1mV. Values range from 00 to 7F and
from 80 to FF, where 00 represents 0 counts, 7F represents 127
counts, 80 represents -128 counts and FF represents -1 counts.
Negative values decrease and positive values increase the
output voltage according to the number of counts.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(cr) is the terminating character, carriage return (0Dh)
Example command: $07E14(cr)
response: !07
The command tells the analog output of the strain gauge input
module at address 07h to increase its output value by 20 (14h)
counts which is approximately 20 mV.
The strain gauge input module confirms the increase.
In order to perform this trim calibration, a voltmeter should be connected
to the module’s output. (See also the zero calibration command and span
calibration command of the strain gauge input module and Chapter 5,
Calibration, for a detailed description.)
$AAA
Name Zero Calibration
Description Stores the voltage output value of the addressed strain gauge
input module as zero voltage reference.
Syntax $AAA(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module who’s output channel
is to be calibrated.
A is the zero calibration command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(cr) is the terminating character, carriage return (0Dh)
Before issuing the Zero Calibration command, the analog output should be
trimmed to the correct value with the Trim Calibration command. A
voltmeter should be connected to the module’s output channel.(See also
the strain gauge input module’s Trim Calibration command and Chapter 5,
Calibration, for a detailed description.)
$AAB
Name Span Calibration
Description Stores the voltage output value of the addressed strain gauge
input module as 10V reference.
Syntax $AAB(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module who’s output channel
is to be calibrated.
B is the span calibration command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the strain gauge input module.
(cr) is the terminating character, carriage return (0Dh)
Before issuing the Span Calibration command, the analog output should be
trimmed to the correct value with the Trim Calibration command. A
voltmeter should be connected to the module’s output channel.(See also
the strain gauge input module’s Trim Calibration command and Chapter 5,
Calibration, for a detailed description.)
I/O
Command Syntax Command Name Description
Module
%AANNTTCCFF Configuration Sets the address, output range, baud 4021
rate, data format, slew rate and/or
checksum status
#AA(data) Analog Data Out Directs output data to a specified 4021
module
$AA4 Start-Up Output Stores a default output value in a 4021
Current or specified module. The output value
Voltage will take effect upon startup
Configuration
$AA3 (number of Trim Calibration Trims specified module a number of 4021
counts) units up/down
$AA0 4 mA Calibration Tells the module to store parameters 4021
for 4mA Calibration
$AA1 20 mA Calibration Tells the module to store parameters 4021
for 20 mA Calibration
$AA2 Configuration Reads the configuration of specified 4021
Status module
$AA6 Last Value Returns either last value sent to 4021
Readback specified module by #AA command, or
start-up output current/voltage
%AANNTTCCFF
Name Configuration
Description Sets address, input range, baud rate, data format, checksum
status, and/or integration time for an analog output module.
Syntax %AANNTTCCFF(cr)
% is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module to be configured.
NN represents the new hexadecimal address of the analog
output module. Range is from 00h to FFh.
TT represents the type (output range) code. (See table 4-4)
CC represents the baud rate code. (See table 4-3).
FF is a hexadecimal number that equals the 8-bit parameter
representing the status of data format, slew rate, and check-
sum. The layout of the 8-bit parameter is shown in figure 4-2.
Bit 7 is not used and must be set to 0.
(cr) is the terminating character, carriage return (0Dh).
7 6 5 4 3 2 1 0
Slew Rate
Checksum status Bitcode Voltage Current Data Format
0: Disabled 0000: immediate change 00: Engineering units
1: Enabled 0001: 0.0625 V/sec 0.125mA/sec 01: % of FSR
0010: 0.125 V/sec 0.250 mA/sec 10: hexadecimal
0011: 0.250 V/sec 0.500 mA/sec
Not used 0100: 0.500 V/sec 1.000 mA/sec
(set to 0) 0101: 1.000 V/sec 2.000 mA/sec
0110: 2.000 V/sec 4.000 mA/sec
0111: 4.000 V/sec 8.000 mA/sec
1000: 8.000 V/sec 16.00 mA/sec
1001: 16.00 V/sec 32.00 mA/sec
1010: 32.00 V/sec 64.00 mA/sec
1011: 64.00 V/sec 128.0 mA/sec
%AANNTTCCFF
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid parameter was entered or if the INIT*
terminal was not grounded when attempting to change baud
rate or checksum settings.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
(cr) is the terminating character, carriage return (0Dh).
04
04 2400 bps 31 4 to 20 mA
05
05 4800 bps 32 0 to 10 V
06
06 9600 bps
07
07 19.2 Kbps
08
08 38.4 Kbps
%AANNTTCCFF
Example command: %310A310610(cr)
response: !24(cr)
The analog input module at addresses 31h is configured to a
new address 0Ah, output range 4 to 20 mA, baud rate 9600,
engineering units data format, a slew rate of 1.0 mA/sec and no
checksum checking.
The response indicates that the command has been received.
#AA
Name Analog Data Out
Description Send a value to the addressed analog output module. Upon
receipt, the analog output module will output this value.
Syntax #AA(data)(cr)
# is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
(data) is the value that has to be output through the analog
output module. Range and value depend on the module’s
configured data format. Possible formats are: engineering
units, % of FSR or hexadecimal. (See also Appendix B, Data
Formats and I/O Ranges.)
(cr) is the terminating character, carriage return (0Dh).
Response >(cr) if the command was valid.
?AA(cr) if a value was sent that is out of range. Note that when
the analog output module receives such a value, it will try to
use a value that is close to the one received, but within the
module’s configured range.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
> delimiter character.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
(cr) is the terminating character, carriage return (0Dh).
#AA
Example command: #3315.000(cr)
response: >(cr)
The command sends the value 15 mA to the analog output
module at address 33h that is configured for engineering units.
The analog output module responds that the command was
valid. Its output value will be 15 mA.
command: #0A+030.00(cr)
response: >(cr)
The module is configured for a 4 to 20 mA output range and a
percent of span data format. The command sends the value 8.8
mA (4 mA + 0.30 x 16 mA = 8.8 mA) 30% of the span to the
analog output module at address 0Ah.
The analog output module responds that the command was
valid. Its output value is set to 8.8 mA.
command: #1B7FF(cr)
response: >(cr)
The command sends the hexadecimal value 7FF to the analog
output module at address 1Bh. The module is configured for a
0 to 20 mA output range and a hexadecimal data format. It will
output 10 mA ((7FFH/FFFH) x 20 mA = 10 mA).
$AA4
Name Start-up Voltage/Current Output Configuration
Description Stores the present output value of an analog output module
with address AA in the module’s non-volatile register. The
output value will take effect upon start-up or after a brownout.
Syntax $AA4(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module whose output current is to
be set.
4 is the Start-up Output Current Configuration command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0A4(cr)
response: !0A(cr)
Presume the present output value of the analog output module
with address 0A is 9.4 mA. The command tells the analog
output module store the present output value, in its non-volatile
memory. When the module is powered up or reset, its default
output value will be 9.4mA.
The response of the analog output module indicates that the
command has been received.
NOTICE: An analog output module requires a maximum of 6 milli-
seconds after it received a Startup Voltage/Current Output Configuration
command to let the settings take effect . During this interval, the module
can not be addressed to perform any other actions.
$AA3
Name Trim Calibration
Description Trims the addressed analog output module a specified number
of units up or down.
Syntax $AA3(number of counts)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module to be calibrated.
3 is the trim calibration command.
(number of counts) is the 2-character twos complement
hexadecimal value that represents the number of counts by
which to increase or decrease the output current. Each count
equals approximately 1.5 µA. Values range from 00 to 5F and
from A1 to FF (hexadecimal), where 00 represents 0 counts, 5F
represents +95 counts, A1 represents -95 counts and FF
represents -1 count. Negative values decrease and positive
numbers increase the output current according to the number
of counts.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module.
(cr) is the terminating character, carriage return (0Dh)
$AA3
Example command: $07314(cr)
response: !07(cr)
The command tells the analog output module at address 07h to
increase its output value by 20 (14h) counts which is approxi-
mately 30 µA.
The analog output module confirms the increase.
$AA0
Name 4 mA Calibration command
Description Stores the current output value of the addressed analog output
module as 4 mA reference.
Syntax $AA0(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module who’s data is to be sent.
0 is the 4 mA Calibration command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module that is responding.
(cr) is the terminating character, carriage return (0Dh).
$AA1
Name 20 mA Calibration command
Description Stores the current output value of the addressed analog output
module as 20 mA reference.
Syntax $AA1(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module who’s data is to be sent.
1 is the 20 mA Calibration command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command was valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module that is responding.
(cr) is the terminating character, carriage return (0Dh).
$AA2
Name Read Configuration Status command
Description Instruct the addressed analog output module to return its
configuration data.
Syntax $AA2(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module to be interrogated.
2 is the Read Configuration Status command.
(cr) is the terminating character, carriage return (0Dh).
Response !AATTCCFF(cr) if the command is valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
TT represents the type code, which determines the output
range.
CC represents the baud rate code.
FF is a hexadecimal number that equals the 8-bit parameter
representing the data format, slew rate, and checksum status.
(cr) is the terminating character, carriage return (0Dh)
For tables, reference the %AANNTTCCFF Configuration
command.
Example command: $452(cr)
response: !45300614(cr)
The command asks the analog output module at address 45h to
send its configuration data.
The analog output module at address 45h responds with output
range 0 to 20 mA, baud rate 9600, engineering units as the
currently configured data format, slew rate 2 mA per second,
and no checksum checking.
$AA6
Name Last Value Readback
Description The addressed analog output module is instructed to return the
latest output value it received from an Analog Data Out
command. If the module hasn’t received an Analog Data Out
command since startup, it will return its Start-up Output value.
Syntax $AA6(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module whose value you want to
return.
6 is the Last Value Readback command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(data)(cr) if the command was valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module.
(data) is the value that is returned by the analog output module.
The format of the data depends on the module’s configured
data format.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0A6(cr)
response: !0A03.000(cr)
The command tells the analog output module at address 0Ah to
return the last output value it received from an Analog Out
command.
The analog output module returns the value 3.000 mA.
$AA8
Name Current Readback
Description The addressed analog output module is instructed to measure
the current flowing through its current/voltage loop and return
the measured data in the module’s configured data format. The
value returned may be a rough estimate of the real value.
Syntax $AA8(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module that you want to measure,
its current/voltage loop and return the measured value.
8 is the Current Readback command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(data)(cr) if the command was valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module.
(data) is the value returned by the analog output module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0A8(cr)
response: !0A18.773(cr)
The command tells the analog output module at address 0Ah to
measure its current loop and return the measured value.
The analog output module returns the value 18.773 mA.
$AA5
Name Reset Status command
Description Checks the Reset Status of the addressed analog output module
to see whether it has been reset since the last Reset Status
command was issued to the module.
Syntax $AA5(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module who’s Reset Status is to
be returned.
5 is the Reset Status command.
(cr) is the terminating character, carriage return (0Dh).
Response !AAS(cr) if the command was valid.
?AA(cr) if an invalid command was issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module.
S represents the Status bit that is returned by the analog output
module. If S=1, the module has been reset since the last time it
was issued a Reset Status command. If S=0, the module has not
been reset since the last Reset Status command was issued.
(cr) is the terminating character, carriage return (0Dh).
Example command: $395(cr)
response: !391(cr)
The analog output module at address 39h was reset or powered
up after the last execution of the Reset Status command. When
executed once more the analog output module will reply with:
!390(cr)
$AAF
Name Read Firmware Version
Description The command requests the analog output module at address
AA to return the version code of its firmware
Syntax $AAF (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module that you want to
interrogate.
F identifies the version command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Version)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
(Version) is the version code of the module’s firmware at
address AA.
(cr) is the terminating character, carriage return (ODh).
$AAM
Name Read Module Name
Description The command requests the analog output module at address
AA to return its name
Syntax $AAM (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module that you want to
interrogate.
M is the Read Module Name command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Module Name)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of an analog output module.
(Module Name) is the name of the module at address AA.
For example: 4021
(cr) is the terminating character, carriage return (ODh).
Spec :
1. 4 CH 12-Bits Analog Output With 4 Isolation General Purpose / Emer-
gency Control Digital Input
2. Flexible Output Range : +/-10 V, 0 ~ 20 mA, 4 ~ 20 mA
3. User Defined Start Up Output / Emergency Stop Output
4. Voltage : +/- 0.1% Of FSR
5. Current : +/- 0.1% Of FSR
6. 4 Isolation Digital Input / Emergency Input
Command : $AA5
This Command Return The Module Reset Times From Last
$AA5 Executed, And Then The Reset Times Memory Clear To 0
EX. The Following Procedure Never Reset Module
$025 !0203
$025 !0200
$025 !0200
EX. The Following Procedure
$025 !0203
$025 !0200
Now Reset Module
$025 !0201
$025 !0200
Now Reset Module 12 Times Never Use $025 Command
$025 !020C
$025 !0200
If Input DAC Data Is Overflow Range Then The Return CMD Will Be :
!AAO
T0
T1
Suggest Timing :
T0 : See Table
T1 : 100ms
I2+ I3+
I2- I3-
V2 V3
FGND FGND
V1 V4
I1- I4-
I1+ ADAM-4024 4CH AO Module I4+
NC NC
INIT* COM
(Y) DATA+ IDI4
(G) DATA- IDI3
(R) +Vs IDI2
(B) GND 10 IDI1
%AANNTTCCFF
Name Configuration
Description Configure address, baud rate and/or checksum status of the
addressed digital I/O module.
Syntax %AANNTTCCFF(cr)
% is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module to be configured.
NN represents the new hexadecimal address of the digital I/O
module. Range is from 00h to FFh.
TT represents the type code which is always set to 40 for a
digital I/O module. (ADAM-4050, 4052, 4053, 4060, 4068)
CC represents the baud rate code. (See next page, Table 4-5)
FF is a hexadecimal number that equals the 8-bit parameter that
represents the checksum status. (See Figure 4-3). Bits 0 through
5 and bit 7 are not used and set to 0.
(cr) is the terminating character, carriage return (0Dh).
7 6 5 4 3 2 1 0
%AANNTTCCFF
Response !AA (cr) if the command is valid.
?AA(cr) if an invalid parameter was entered or if the INIT*
terminal was not grounded when attempting to change baud
rate or checksum settings.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received
? delimiter character indicating the command was invalid
AA (range 00-FF) represents the 2-character hexadecimal
address of a digital I/O module.
(cr) is the terminating character, carriage return (0Dh)
Example command: %2324400600(cr)
response: !24(cr)
The command tries to configure module with address 23h to
address 24h, baud rate 9600 no checksum checking. The
response indicates that the configuration was successful.
NOTICE: All configuration parameters can be changed dynamically,
Table 4-5
Baudrate Codes
Baud Rate
Baud Rate
Code (Hex)
03 1200 bps
04 2400 bps
05 4800 bps
06 9600 bps
07 19.2 Kbps
08 38.4 Kbps
except checksum and baud rate parameters. They can only be altered
when the INIT* terminal is grounded. (Refer to Baud rate and Checksum,
in Chapter 2 for the correct procedure.)
$AA6
Name Digital Data In
Description This command requests that the specified (AA) module returns
the status of its digital input channels and returns a readback
value of its digital output channels.
Syntax $AA6(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module.
6 is the Digital Data In command.
(cr) is the terminating character, carriage return (0Dh).
Response !(dataOutput)(dataInput)00(cr)
if the command was valid. (ADAM-4050)
!(dataInput)0000(cr)
if the command was valid. (ADAM-4052)
!(dataInput)(dataInput) 00 (cr)
if the command was valid. (ADAM-4053)
!(dataOutput)0000(cr)
if the command was valid. (ADAM-4060/4068)
?AA(cr) if an invalid command has been issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that is responding.
(dataOutput) two-character hexadecimal value which either is
the readback of a digital output channel or a relay.
(dataInput) two-character hexadecimal value representing the
input values of the digital I/O module.
(cr) is the terminating character, carriage return (0Dh).
$AA6
Example command: $336(cr)
response: !112200(cr)
The first two characters of the response, value 11h (00010001),
indicate that digital output channels 0 and 4 are ON, channels 1,
2, 3, 5, 6, 7 are OFF. The second two characters of the response,
value 22h (00100010), indicate that digital input channels 1 and
5 are HIGH, channels 0, 2, 3, 4, 6, 7 are LOW.
Example command: $036(cr)
response: !BEDE00(cr)
The first two characters of the response, value BEh(10111110),
indicate that digital input channels 8 and 14 are LOW, channels
9, 10, 11, 12, 13 and 15 are HIGH. The second two characters of
the response value DEh (11011110) indicae that digital input
channels 0 and 5 are LOW, channels 1, 2, 3, 4, 6, 7 are HIGH.
#AABB
Name Digital Data Out
Description The command either sets a single digital output channel or sets
all digital output channels simultaneously.
Syntax #AABB(data)(cr)
# is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module you want to set its output
value.
BB is used to indicate whether all channels will be set or a
single channel will be set. In the last case BB also indicates
which channel. Writing to all channels (write a byte): both
characters should be equal to zero (BB=00). Writing to a single
channel (write a bit): First character is 1, second character
indicates channel number which can range from 0 to 7.
(data) is the hexadecimal representation of the digital output
value(s).
When writing to a single channel (bit) the first character is
always 0. The value of the second character is either 0 or 1.
When writing to all channels (byte), both characters are
significant (range 00h-FFh). The digital equivalent of these two
hexadecimal characters represent the channels values.
The amount of channels on the ADAM-4050, ADAM-4055,
ADAM-4060 and ADAM-4068 differs. The value 7A would
mean the following for the 8 channels on the ADAM-4050,
ADAM-4055 and ADAM-4068:
digital value: 0 1 1 1 1 0 1 0
ADAM-4050/4055/4068
channel no. 7 6 5 4 3 2 1 0
Since the ADAM-4060 has only four output channels all the
meaning full values lie between 00h and 0Fh. The value 0Ah
would mean the following for the ADAM-4060:
digital value:
0 0 0 0 1 0 1 0
#AABB
Response >(cr) if the command was valid.
?AA(cr) if an invalid command has been issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
> delimiter character indicating valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that is responding.
(cr) is the terminating character, carriage return (0Dh).
Examples command: #140005(cr)
response: >(cr)
An output byte with value 05h (00000101) is sent to the digital
I/O module at address 14h (Either ADAM-4050 or ADAM-
4060). Its channels 0 and 2 will be set to ON. Other channels are
set to OFF.
command: #151201(cr)
response: >(cr)
An output bit with value 1 is sent to channel 2 of a digital I/O
module at address 15h (Either ADAM-4050 or ADAM-4060).
Channel two of the digital I/O module is set to ON.
#**
Name Synchronized Sampling
Description Orders all (analog or digital) input modules to sample their input
values and store them in a special register.
Syntax #**
# is a delimiter character.
** is the actual Synchronized Sampling command.
The terminating character, in the form of a carriage
return (0Dh), is not required.
Response The digital I/O modules will not respond to the Synchronized
Sampling command. In order to retrieve the data, you must
execute a Read Synchronized Data command for every module
separately.
$AA4
Name Read Synchronized Data
Description The addressed digital I/O module is instructed to return the
value that was stored in its register by a Synchronized Sampling
command.
Syntax $AA4(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module who’s data is to be returned.
4 is the Read Synchronized Data command.
(cr) is the terminating character, carriage return (0Dh).
Response !(status)(dataOutput)(dataInput)00(cr)
if the command was valid. (ADAM-4050)
!(status)(dataInput)0000(cr)
if the command was valid. (ADAM-4052)
!(status)(dataInput)(dataInput)00(cr)
if the command was valid. (ADAM-4053)
!(status)(dataOutput)0000(cr)
if the command was valid. (ADAM-4060/4068)
?AA(cr) if an invalid command has been issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received
? delimiter character indicating the command was invalid
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that is responding.
(status) will tell you if the data (data) from the last Synchronized
Sampling command (#**) has already been sent. If (status=1),
then data has been sent for the first time after an Synchronized
Sampling command was issued. If (status=0), then the data has
been sent at least once after a Synchronized Sampling command
was issued.
$AA4
(dataOutput) two-character hexadecimal value which either is
the readback of a digital output channel or a relay.
(dataInput) two-character hexadecimal value representing the
input values of the digital I/O module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $064(cr)
response: !1055100(cr)
The command asks the ADAM-4050 digital I/O module at
address 06h to send its digital input data that was gathered
during the last Synchronized Sampling command. The module
returns 1055100, meaning status = 1 : data has not been sent
before; dataOutput = 05h (00000101): digital output channels 0
and 2 are ON and channels 1, 3, 4, 5, 6, 7 are OFF; dataInput =
51h (01010001): digital input channels 0, 4, 6 are HIGH and
channels 1, 2, 3, 4, 5 are LOW.
The digital I/O module responds with data = 055100 and status
= 1, which means that this is the first time that the data has been
sent.
command: $064(cr)
response: !0055100(cr)
The command asks the digital I/O module at address 06h to sent
its digital input data.
The digital I/O module responds with data = 055100 and status
= 0, which means that it has sent the same data at least once
before. This may indicate that a previous Synchronized
Sampling command was not received!
$AA2
Name Configuration Status command
Description Returns the configuration parameters of the addressed
digital I/O module.
Syntax $AA2(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module to be interrogated.
2 is Configuration Status command.
(cr) is the terminating character, carriage return (0Dh).
This command requests the return of the configuration data
from the digital I/O module at address AA.
Response !AATTCCFF(cr) if the command is valid.
?AA(cr) if an invalid command has been issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a digital I/O module.
TT represents the type code, which is always 40.
CC represents the baud rate code. (See next page, Table 4-6).
FF is a hexadecimal number that equals the 8-bit parameter that
represents checksum status and module identification. Bits 3
through 5 and bit 7are not used and are being set to 0. (See
figure 4-4 on the next page.)
(cr) is the terminating character, carriage return (ODh)
$AA2
Example command: $452 (cr)
response: !45400600 (cr)
The command asks the digital I/O module at address 45h to
send its configuration data.
The digital I/O module at address 45h responds with baud rate
9600, no checksum function and the module is identifies as
ADAM-4050
7 6 5 4 3 2 1 0
Table 4-6
Baudrate Codes
Baud Rate
Baud Rate
Code (Hex)
03 1200 bps
04 2400 bps
05 4800 bps
06 9600 bps
07 19.2 Kbps
08 38.4 Kbps
$AA5
Name Reset Status command
Description Requests the Reset Status of the addressed digital I/O module
to see whether it has been reset since the last Reset Status
command.
Syntax $AA5(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog output module whose Reset Status is to
be returned.
5 is the Reset Status command.
(cr) is the terminating character, carriage return (0Dh).
Response !AAS(cr) if the command was valid.
?AA(cr) if an invalid command has been issued.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! delimiter character indicating a valid command was received.
? delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that is calibrated.
S represents the Status bit that is returned by the digital I/O
module. If S=1, the module has been reset since the last time it
was issued. If S=0, the module has not been reset since the last
Reset Status command was issued.
(cr) is the terminating character, carriage return (0Dh).
$AA5
Example command: $395(cr)
response: !390(cr)
The command tells the digital I/O module at address 39h to
return its Reset Status.
The digital I/O module at address 39h returns the value S=0,
which indicates that the digital I/o module has not been reset or
powered on since it was last issued a Reset Status command.
$AAF
Name Read Firmware Version
Description The command requests the digital I/O module at address AA to
return the version code of its firmware
Syntax $AAF (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that you want to
interrogate.
F identifies the version command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Version)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of a digital I/O module.
(Version) is the version code of the module’s firmware at
address AA.
(cr) is the terminating character, carriage return (ODh).
$AAM
Name Read Module Name
Description The command requests the digital I/O module at address AA to
return its name
Syntax $AAM (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the digital I/O module that you want to
interrogate.
M is the Read Module Name command.
(cr) is the terminating character, carriage return (ODh)
Response !AA(Module Name)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of a digital I/O module.
(Module Name) is the name of the module at address AA.
For example: 4052
(cr) is the terminating character, carriage return (ODh).
Command
Command Syntax Description I/O Module
Name
%AANNTTCCFF Configuration Sets the address, input range, 4050, 4052,
baud rate, and/or checksum 4053, 4060,
status, to a digital I/O module 4051, 4055
$AA6 Digital Data In Returns the values of digital I/O 4050, 4052,
channels of the addressed 4053, 4060,
module 4051, 4055
#AABB(data) Digital Data Writes specified values to either a 4050, 4060, 4055
Out single channel or all channels
simultaneously
#** Synchronized Orders all digital I/O modules to 4050, 4052,
Sampling sample their input values and 4053, 4060,
store them in a special register 4051, 4055
$AA4 Read Returns the value that was stored 4050, 4052,
Synchronized in the specified digital I/O module 4053, 4060,
Data that was stored after an #** 4051, 4055
command
$AA2 Configuration Returns the configuration 4050, 4052,
Status parameters for the specified 4053, 4060,
digital I/O module 4051, 4055
$AA5 Reset Status Indicates whether a specified 4050, 4052,
digital I/O module was reset after 4053, 4060,
the last time the $AA5 command 4051, 4055
was issued
$AAF Read Firmware Return firmware version code 4050, 4052,
Version from the specified digital I/O 4053, 4060,
module 4051, 4055
$AAM Read Module Return the module name from 4050, 4052,
Name the specified digital I/O module 4053, 4060,
4051, 4055
%AANNTTCCFF
Name: Configuration
Description: Sets the address, input mode, baud rate, checksum status and/
or frequency gate time for a specified counter/frequency
module
Syntax: %AANNTTCCFF (cr)
% is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter module that you want to interrogate.
NN represents the new hexadecimal address of the counter/
frequency module. Range is from 00h to FFh.
TT represents the input mode:
50h : counter input mode
51h : frequency measurement mode
CC represents the baud rate code (See table 4-7).
FF is a hexadecimal number that equals the 8-bit parameter
representing the checksum status and frequency gate time. The
layout of the 8-bit parameter is shown in figure 4-5.
Bits 0, 1, 3, 4, 5 and 7 are not used and set to 0.
(cr) is the terminating character, carriage return (0Dh)
7 6 5 4 3 2 1 0
%AANNTTCCFF
Baud Rate
Baud Rate
Code (Hex) Table 4-7:
Baudrate Codes
03 1200 bps
04 2400 bps
05 4800 bps
06 9600 bps
07 19.2 Kbps
08 38.4 Kbps
$AA2
Name Configuration Status
Description The command requests the return of the configuration data
from the counter/frequency module at address AA.
Syntax $AA2(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the analog input module that you want to interro-
gate.
2 is the Configuration Status command.
(cr) is the terminating character, carriage return (0Dh)
Response !AATTCCFF (cr) if the command is valid.
?AA(cr)if an invalid operation was entered
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received
? is a delimiter character indicating the command was invalid
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
TT (50h or 51h) represents the type code. 50h means that using
module as counter. 51h means using module as frequency
measurement module.
CC represents the baud rate code.
FF is a hexadecimal number that equals the 8-bit parameter
representing the checksum status and frequency gate time. The
layout of the 8-bit parameter is shown in figure 4-5. bits not
used are set to 0.
(cr) is the terminating character, carriage return (0Dh)
(Also see the %AANNTTCCFF configuration command)
$AAF
Name Read Version
Description The command requests the analog input module at address AA
to return the version code of its firmware
Syntax $AAF (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the counter/frequency module that you want to
interrogate.
F identifies the version command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(Version)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module.
(version) is the version code of the module's firmware at
address AA.
(cr) is the terminating character, carriage return (0Dh).
$AAM
Name Read Module Name
Description The command requests the counter/frequency module at
address AA to return its name
Syntax $AAM (cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to
interrogate.
M identifies the Read Module Name command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(Module Name)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module.
(Module Name) is the name of the module at address AA. For
example: 4080D
(cr) is the terminating character, carriage return (0Dh).
$AABS
Name Set Input Mode
Description Set the input signal mode of the specified counter/frequency
module to either non-isolated (TTL) or photo-isolated.
Syntax $AABS(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency that you want to interrogate.
B identifies the Set Input Signal Mode command.
S indicates the input signal mode. S = 0 configures the module
for non-isolated (TTL) input and S = 1 configures the module
for photo-isolated input .
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $03B0(cr)
response: !03(cr)
The command configures the counter/frequency modules at
address 03 to receive non-isolated input. The addressed module
replies by sending its address to indicate that it executed the
command.
$AAB
Name Read Input Mode.
Description Read the input mode of the specified counter/frequency
module.
Syntax $AAB(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency that you want to interrogate.
B identifies the Read Input Signal Mode command.
(cr) is the terminating character, carriage return (0Dh)
Response !AAS(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
S indicates the input signal mode. S = 0 configures the module
for non-isolated (TTL) input and S = 1 configures the module
for photo-isolated input.
(cr) is the terminating character, carriage return (0Dh).
Example command: $03B(cr)
response: !030(cr)
The command requests the counter/frequency module at
address 03 to return its input mode. The addressed module
replies that its input mode is set to receive non-isolated input.
#AAN
Name: Read Counter or Frequency Value
Description: Instructs the addressed counter/frequency module at address
AA to read the counter or frequency value of counter 0 or
counter 1 and return the acquired data.
Syntax: #AAN(cr)
# is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
N represents the counter number.
N=0 represents counter 0
N=1 represents counter 1
(cr) is the terminating character, carriage return (0Dh)
Response: >data(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(data) is the value that is retrieved by the module by reading
counter 0 or counter 1. The data format consists of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Example: command: #120(cr)
response: >000002FE(cr)
The command requests the counter/frequency module at
address 12 to read the counter 0 and return the data. The
counter/frequency module at address 12 responds that the
value of counter 0 is 000002FE (hexadecimal) which equals 766
(decimal).
$AA8V
Name Select LED Data Origin
Description Select whether LED will display data from the counter/frequen-
cy module directly or from the host computer.
Syntax $AA8V(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
8 identifies the Select LED Data Origin command.
V indicates the origin of the data to be displayed on the LED:
V=0 sets the LED data origin to the module's counter 0
V=1 set the LED data origin to the module's counter 1
V=2 set the LED data origin to the host computer
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0182(cr)
response: !01(cr)
The command sets the counter/frequency modules at address
01 to display data sent by the host computer. After this
command has been issued the host computer can use command
$AA9(data) to send the data to the addressed module.
$AA8
Name Read LED Data Origin
Description Read the LED Data Origin status which determines whether
LED will display data from the counter/frequency module
directly or from the host computer
Syntax $AA8(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
8 identifies the Read LED Data Origin command.
(cr) is the terminating character, carriage return (0Dh)
Response !AAV(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
V indicates the origin of the data to be displayed on the LED:
V=0 sets the LED data origin to the module's counter 0
V=1 set the LED data origin to the module's counter 1
V=2 set the LED data origin to the host computer
(cr) is the terminating character, carriage return (0Dh).
Example command: $018(cr)
response: !011(cr)
The command requests the counter/frequency module at
address 01 to return its LED Data Origin status. The module
replies that it currently displays data from counter 1.
$AA9(data)
Name Send Data to LED
Description The host computer sends data to the addressed module to
display on its LED.
Syntax $AA9(data)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
9 identifies the Send LED Data command.
(data) is a floating point numeral consisting of five number
digits and one digit for the decimal point. Its maximum value is
99999.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0198999.9(cr)
response: !01(cr)
The command requests the host computer to send 8999.9 to the
counter/frequency module at address 01 to display on its LED
display. This command is only valid after the command $0182
has been issued.
Command I/O
Command Name Description
Syntax Module
$AAAG Set Gate Mode Requests the specified counter/ frequency 4080,
module to set its gate mode to either 4080D
high, low or disabled
$AAA Read Gate Mode Requests the specified counter/ frequency 4080,
module to return the status of its gate 4080D
mode
$AA3N(data) Set Maximum Sets the maximum value of counter 0 or 4080,
Counter Value counter 1 for the specified 4080D
counter/frequency module
$AA3N Read Maximum Reads the maximum value of counter 0 or 4080,
Counter Value counter 1 of the specified counte/ 4080D
frequency module
$AA5NS Start/Stop Counter The command orders the specified 4080,
counter/frequency module to start or stop 4080D
counting
$AA5N Read Counter The addressed counter frequency module 4080,
Start/Stop Status returns its status indicating whether 4080D
counting is enabled or diabled
$AA7N Read Overflow The addressed module returns the status 4080,
Flag of the overflow flag of counter 0 or 4080D
counter 1
$AAAG
Name Set Gate Mode.
Description Request the specified counter/frequency module to set its gate
to either high, low or disabled.
Syntax $AAAG(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency that you want to interrogate.
A identifies the Gate Mode command.
G determines the gate mode.
G = 0 the gate is low
G = 1 the gate is high
G = 2 the gate is disabled.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $01A1(cr)
response: !01(cr)
The command requests the counter/frequency module at
address 01 to set its gate high. The addressed module replies
with its address to indicate that it has executed the command.
$AAA
Name Read Gate Mode.
Description Request the specified counter/frequency module to return its
gate status.
Syntax $AAA(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency that you want to interrogate.
A identifies the Read Gate Mode command.
(cr) is the terminating character, carriage return (0Dh)
Response !AAG(cr) if the command is valid.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
G determines the gate mode.
G = 0 the gate is low
G = 1 the gate is high
G = 2 the gate is disabled.
(cr) is the terminating character, carriage return (0Dh).
Example command: $01A(cr)
response: !011(cr)
The command requests the addressed counter/frequency
module to return its gate status. The module at address 01
replies that its gate is high.
$AA3N(data)
Name Set Maximum Counter Value
Description Set the maximum value of counter 0 or counter 1 for a specified
counter/frequency module.
Syntax $AA3N(data)(cr)
$ is a delimiter character.
AA(range 00-FF) represents the 2-character hexadecimal
address of the counter/frequency module that you want to
interrogate.
3 identifies the Set Maximum Counter Value command
N determines the counter for which the maximum counter value
is to be set.
N = 0 represents counter 0
N = 1 represents counter 1
(data) is the maximum count value which consists of eight
hexadecimal digits. The addressed module will accumulate the
input counts until it reaches the maximum value. When count-
ing exceeds the maximum counter value, the counter will stop
counting. The programmer should use the command $AA6N to
reset the counter to 1.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $24300000ffff(cr)
response: !24(cr)
The command requests the counter/frequency module at
address 24 to set the maximum counter value for counter 0 to
65535 (0x0000ffff). The module replies that it has executed the
command.
$AA3N
Name Read Maximum Counter Value
Description Read the maximum counter value of the counter 0 or counter 1
for a specified counter/frequency module.
Syntax $AA3N(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
3 identifies the Read Maximum Counter Value command
N determines the counter for which the maximum counter value
is to be set.
N = 0 represents counter 0
N = 1 represents counter 1
(cr) is the terminating character, carriage return (0Dh)
Response !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
(data) is the maximum counter value which consists of eight
hexadecimal digitals.
(cr) is the terminating character, carriage return (0Dh).
Example command: $2430(cr)
response: !240000ffff(cr)
The command requests the counter/frequency module at
address 24 to the maximum count number of counter 0. The
addressed module replies that the maximum count number of
channel 0 is 65535 (0000ffff)
$AA5NS
Name Start/Stop Counter
Description Request the addressed counter/frequency module to start or
stop the counting for a counter 0 or counter 1.
Syntax $AA5NS(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
5 identifies the Start/Stop Counter command
N determines the counter that should be enabled or disabled.
N = 0 represents counter 0
N = 1 represents counter 1
S represents the counter status.
S = 0 stops counting
S = 1 starts counting
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid. There is no response if the
module detects a syntax or communication error, or if the
specified address does not exist.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $06501(cr)
response: !06(cr)
The command requests the counter/frequency module at
address 06 to start counter 0. The addressed module replies
with its address to indicate the command has been executed
and counter 0 has started.
$AA5N
Name Read Counter Start/Stop Status
Description Requests the addressed counter/frequency module to indicate
whether counter 0 or counter 1 is active.
Syntax $AA5N(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
N determines the counter for which the status should be
returned.
N = 0 represents counter 0
N = 1 represents counter 1
(cr) is the terminating character, carriage return (0Dh)
Response !AAS(cr) if the command is valid.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
S represents the counter status.
S = 0 indicates counting
S = 1 indicates not counting
(cr) is the terminating character, carriage return (0Dh).
Example command: $0650(cr)
response: !061(cr)
The command requests the counter/frequency module at
address 06 to return the status of counter 0. The addressed
module replies that counter 0 is counting
$AA6N
Name Clear Counter
Description Clears the counter 0 or counter 1 of the specified counter/
frequency module.
Syntax $AA6N(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
6 the Clear Counter command.
N determines the counter which should be cleared.
N = 0 represents counter 0
N = 1 represents counter 1
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $1361(cr)
response: !13(cr)
The command requests the counter/frequency module at
address 13 to clear counter 1. The addressed module replies
with its address to indicate the counter has been cleared.
$AA7N
Name Read/Clear Overflow Flag.
Description The command requests the addressed module to return the
status the overflow flag of counter 0 or counter 1 and clear the
flag afterwards.
Syntax $AA7N(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
7 identifies the Read/Clear Overflow Flag command
N determines the channel which overflow flag status should be
read and cleared. N = 0 represents counter 0 and N = 1 repre-
sents counter 1
(cr) is the terminating character, carriage return (0Dh)
Response !AAV(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
V represents the status of the Nth channel's overflow flag.
V = 1 means that the overflow flag has been set because the
counting has exceeded the maximum count. V = 0 means that
the overflow flag has not been set.
(cr) is the terminating character, carriage return (0Dh).
Example command: $1371(cr)
response: !131(cr)
The command requests the counter/frequency module at
address 13 to return the status of the overflow flag of counter 1
and reset it. The addressed module replies that the overflow
flag for counter 1 indicated overflow and was reset.
$AA4S
Name Enable/Disable Digital Filter
Description Enables or disables the digital filter of the addressed counter/
frequency module
Syntax $AA4S(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
4 identifies the Enable/Disable Filter command
S is the digital filter mode.
S = 0 means disable filter
S = 1 means enable filter
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
(cr) is the terminating character, carriage return (0Dh).
Example command: $0340(cr)
response: !03(cr)
The command orders the counter/frequency module at address
03 to disable its digital filter. The addressed module returns its
address to indicate that it has executed the command success-
fully.
$AA4
Name Read Filter Status
Description Read the digital filter status of the addressed counter/frequency
module
Syntax $AA4(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
4 identifies the Read Filter Status command
(cr) is the terminating character, carriage return (0Dh)
Response !AAS(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter input module.
S is the digital filter mode.
S = 0 means filter is disabled
S = 1 means filter is enabled
(cr) is the terminating character, carriage return (0Dh).
Example command: $034(cr)
response: !030(cr)
The command requests the counter/frequency module at
address 03 to return whether its digital filter is on or not. The
addressed module returns its address to indicate that its digital
filter is disabled.
$AA0H(data)
Name Set Minimum Input Signal Width at High Level
Description: Set the minimum input signal width at high level for a speci-
fied counter/frequency module to filter the noise.
Syntax: $AA0H(data)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
0H identifies the Set Minimum Input Signal Width at High
Level command
(data) is the minimum width at high level. The unit is µsec
(microseconds) and its resolution is 1 µsec. The format is a five
digit integer that can range from 2 µsec to 65535 µsec. Out of
range values will cause errors.
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(cr) if the command is valid. The addressed module stores
the value and will recognize the input signal “high” only after
the input signal continues “high” and for longer than the
specified value.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(cr) is the terminating character, carriage return (0Dh)
Example: command: $130H00020(cr)
response: !13(cr)
The command requests the counter/frequency module at
address 13 to set the minimum input width at high level to 20
µsec. The addressed module stores the value and will recog-
nize an input signal to be "high” only if the signal continues to
be “high” longer than 20 µsec. This function can be used as a
digital filter.
$AA0H
Name: Read Minimum Input Signal Width at High Level.
Description: Read the minimum input signal width at high level for a
specified counter/frequency module.
Syntax: $AA0H(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
0H identifies the Read Minimum Input Signal Width at High
Level command
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(data) is the minimum width at high level. The unit is µsec
(microseconds) and its resolution is 1 µsec. The format is a five
digit integer that ranges from 2 µsec to 65535 µsec.
(cr) is the terminating character, carriage return (0Dh).
Example: command: $130H(cr)
response: !1300020(cr)
The command requests the counter/frequency module at
address 13 to read its minimum input signal width at high
level. The addressed module replies that its minimum input
signal width at high level is 20 µsec.
$AA0L(data)
$AA0L
Name: Read Minimum Input Signal Width at Low Level.
Description: Read the minimum input signal width at low level for a
specified counter/frequency module to filter noise.
Syntax: $AA0L(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of the counter/frequency module that you want to
interrogate.
0H identifies the Read Minimum Input Signal Width at Low
Level command
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(data) is the minimum width at low level. The unit is µsec
(microsecond) and its resolution is 1 µsec. The format is a five
digit integer that ranges from 2 µsec to 65535 µsec.
(cr) is the terminating character, carriage return (0Dh).
Example: command: $050L(cr)
response: !0500084(cr)
The command requests the counter/frequency module at
address 05 to read its minimum input signal width at low level.
The addressed module replies that its minimum input signal
width at low level is 84 µsec.
$AA1H(data)
Name: Set Non-isolated High Trigger Level.
Description: Set the high trigger level for non-isolated input signals for a
specified counter/frequency module.
Syntax $AA1H(data)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
1H identifies the Set Non-isolated High Trigger Level com-
mand
(data) is the high trigger level for non-isolated input
The unit and resolution are both 0.1 V (voltage). The format is
a two digit integer that can range from 1 to 50 (i.e. 0.1 to 5 V).
This high trigger level must at all times be higher than the low
trigger level, set by the $AA1L(data) command. When the high
trigger level is out of range or lower than the low trigger level
an error will be the result.
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(cr) if the command is valid. The addressed module stores
the value and will recognize input signal as “high” only when
they exceed the high trigger level
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(cr) is the terminating character, carriage return (0Dh).
Example: command: $131H30(cr)
response: !13(cr)
The command requests the counter/frequency module at
address 13 to set its non-isolated high trigger level to 3 V. The
addressed module stores the value and will recognize the input
signals to be “high” only after the signals exceed 3 V. This
function can be used as a level filter.
$AA1H
Name: Read Non-isolated High Trigger Level.
Description: Read the high trigger level for non-isolated input signals of a
specified counter/frequency module.
Syntax: $AA1H(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
1H identifies the Read Non-isolated High Trigger Level
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
(data) is the high trigger level of non-isolated input signals
The unit and resolution are both 0.1 V (voltage). The format is
a two digit integer that can range from 1 to 50 ( i.e. 0.1 V to 5
V ).
(cr) is the terminating character, carriage return (0Dh).
Example: command: $131H(cr)
response: !1330(cr)
The command requests the counter/frequency module at
address 13 to read its non-isolated high trigger level. The
addressed module replies that the high trigger level is 3 V.
$AA1L(data)
Name: Set Non-isolated Low Trigger Level.
Description: Set the low trigger level of non-isolated input signals for a
specified counter/frequency module.
Syntax $AA1L(data)(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
1L identifies the Set Non-isolated Low Trigger Level com-
mand
(data) is the low trigger level for non-isolated input signals.
The unit and resolution are both 0.1 V (voltage). The format is
a two digit integer that can range from 1 to 50 (i.e. 0.1 to 5 V).
This low trigger level must at all times be lower than the high
trigger level, set by $AA1H(data) command. When the low
trigger level is out of range or higher than the high trigger level
an error will result.
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(cr) if the command is valid. The addressed module stores
the value and will recognize input signal as “low” only when it
exceeds the low trigger level
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency input module.
(cr) is the terminating character, carriage return (0Dh).
Example: command: $051L08(cr)
response: !05(cr)
The command requests the counter/frequency module at
address 05 to set its non-isolated low trigger level to 0.8 V. The
addressed module stores the value and will recognize the TTL
input signal to be “low” only of the signal exceeds 0.8 V. This
function can be used as a level filter.
$AA1L
Name: Read Non-isolated Low Trigger Level.
Description: Read the low trigger level for non-isolated input signals of a
specified counter/frequency module.
Syntax: $AA1L(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of counter/frequency module that you want to interro-
gate.
1L identifies the Read Non-isolated Low Trigger Level
(cr) is the terminating character, carriage return (0Dh)
Response: !AA(data)(cr) if the command is valid.
?AA(cr) if an invalid operation was entered.
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating the command was valid.
? is a delimiter character indicating the command was invalid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter/frequency module.
(data) is the low trigger level of non-isolated input signal. The
unit and resolution are both 0.1 V (voltage). The format is a
two digit integer that can range from 1 to 50 ( i.e. 0.1 V
to 5 V ).
(cr) is the terminating character, carriage return (0Dh).
Example: command: $051L(cr)
response: !0508(cr)
The command requests the counter/frequency module at
address 05 to read its non-isolated input signal low trigger
level. The addressed module replies that its low trigger level is
0.8 V.
Command I/O
Command Name Description
Syntax Module
@AAPN(data) Set Initial Count Sets the inital count value of the 4080
Value of Counter N module for counter 0 or counter 1
@AAGN Read Initial Count Read the initial count value of counter 0 4080
Value of Counter N or counter 1
@AAEAN Enable Alarm of Enable alarm for the specified counter 0 4080
Counter N or counter 1
@AADAN Disable Alarm of Disable alarm for the specified counter 4080
Counter N 0 or counter 1
@AAPA(data) Set Alarm Limit Download the alarm limit value for 4080
Value of Counter 0 counter 0 of the specified module
@AASA(data) Set Alarm Limit Download the alarm limit value for 4080
Value of Counter 1 counter 1 of the specified module
@AARP Read Alarm Limit Ask the module to return the alarm 4080
Value of Counter 0 limit value of counter 0
@AARA Read Alarm Limit Ask the module to return the alarm 4080
Value of Counter 1 limit value of counter 1
@AADO(data) Set Digital Output Set the values of the module's two 4080,
Values digital outputs (ON or OFF) 4080D
@AADI Read Digital Output Ask the addressed module to return the 4080,
and Alarm Status state of its two digital output channels 4080D
and the status of its alarm
Command I/O
Command Name Description
Syntax Module
@AAEAT Enable Alarm of Enable the alarm of counter 0 in either 4080D
Counter 0 momentary or latching modes
@AACA Clear Latch Both alarm states of the counter are set 4080D
Alarm to OFF, no alarm
@AAPA(data) Set Low-Alarm Downloads the low-alarm count value for 4080D
Count Value of counter 0 of the specified module
Counter 0
@AARP Read Low-Alarm Ask the module to return the low-alarm 4080D
Count Value of count value for counter 0
Counter 0
@AARA Read High-Alarm Ask the module to return the high-alarm 4080D
Count Value of count value for counter 0
Counter 0
@AAPN(data)
Name Set Initial Count Value of Counter 0 (or 1)
Description Set the initial count value for counter 0 or counter 1 of the
specified counter module at address AA.
Syntax @AAPN(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
PN represents the Set Initial Count Value command.
N=0 represents counter 0
N=1 represents counter 1
(data) is the initial count value which must consist of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12P0000000FF(cr)
response: !12(cr)
The command sets the initial count value 000000FF for counter
0 of the counter module at address 12. The addressed module
replies that the command has been received.
@AAGN
Name Read Initial Count Value of Counter 0 (or 1)
Description Read the initial count value of counter 0 or 1 of the specified
counter module at address AA.
Syntax @AAGN(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
GN represents the Read Initial Count Value for counter com-
mand.
N=0 represents counter 0
N=1 represents counter 1
(cr) is the terminating character, carriage return (0Dh).
Response !AA(data)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(data) is the initial count value which must consist of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12G0(cr)
response: !12000000FF(cr)
The command instructs the module at address 12h to return the
initial value of counter 0. The module replies that initial count
value of counter 0 is 000000FF.
@AAEAN
Name Enable Alarm
Description Enable Alarm for the specified counter
Syntax @AAEAN (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
EAN represents the Enable Alarm for counter command.
N=0 Represents counter 0
N=1 Represents counter 1
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12EA0(cr)
response: !12(cr)
The command sets the Alarm Status as ‘Enable’ for counter 0 of
the counter module at address 12h. It means that the digital
output will be triggered while the count value of the counter 0
reaches the alarm limit value. The addressed module replies
that the command has been received.
@AADAN
Name Disable Alarm
Description Disable Alarm for the specified counter
Syntax @AADAN (cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
DAN represents the Disable Alarm Mode for counter command.
N=0 Represents counter 0
N=1 Represents counter 1
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12DA0(cr)
response: !12(cr)
The counter module at address 12h is instructed to disable the
alarm functions for counter 0. The module confirms its alarm
functions have been disabled.
@AAPA(data)
@AASA(data)
Name Set Alarm Limit Value of Counter 0 (or 1)
Description Set the Alarm limit value of counter 0 (or 1) of the specified
counter module at address AA.
Syntax @AAPA(data)(cr)
@AASA(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
PA represents the Set Alarm Limit value for counter 0
command.
SA represents the Set Alarm Limit Value for counter 1 command.
(data) is the alarm limit value which must consist of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @$12PA0000FFFF(cr)
response: !12(cr)
The command sets the alarm limit value 0000FFFF for counter 0
of the counter module at address 12h. The addressed module
replies that the command has been received.
@AARP
@AARA
Name Read Alarm Limit Value of Counter 0 (or 1)
Description Read the alarm limit value of counter 0 (or 1) of the specified
counter module at address AA.
Syntax @AARP(data)(cr)
@AARA(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
RP represents the Read Alarm Limit Value for counter 0
command.
RA represents the Read Alarm Limit Value for counter 1
command.
(cr) is the terminating character, carriage return (0Dh).
Response !AA(data)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exist.
! is a delimiter character indicating a command was valid.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(data) is the alarm limit value which must consist of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12RP(cr)
response: !120000FFFF(cr)
The command instructs the module at address 12h to return the
alarm limit value of counter 0. The module replies that the alarm
limit value of counter 0 is 0000FFFF.
@AADO
Name Set Digital Output
Description Set the values of the module’s two digital outputs (ON or OFF).
Syntax @AADO(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
DO is the Set Digital Output command
(data) is the two-character parameter that sets the state for the
two digital output bits of the module, as shown below:
00 all D/O bits are OFF
01 bit 0 is ON, bit 1 is OFF
02 bit 0 is OFF, bit 1 is ON
03 all bits are ON
(cr) represents terminating character, carriage return (0Dh)
Response !AA(cr) if the command was valid
?AA(cr) if an invalid parameter was entered
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received
? delimiter character indicating the command was invalid
AA represents the 2-character hexadecimal address of the
responding counter module.
(cr) represents terminating character, carriage return (0Dh)
Example command: @05DO01(cr)
response: !05(cr)
The counter module at address 05h is instructed to set digital
output channel 1 to ON and digital output channel 2 to OFF.
The module confirms the settings.
@AADI
Name Read Digital Output and Alarm State
Description The addressed counter module is instructed to return the value
of its two digital output channels and the state of its alarm
Syntax @AADI(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an counter module.
DI identifies the Read Digital Output and Alarm Status com-
mand.
(cr) represents terminating character, carriage return (0Dh)
Response !AASOO00(cr) if the command was valid
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! delimiter character indicating a valid command was received
AA represents the 2-character hexadecimal address of the
responding counter module.
S (for ADAM-4080) is a hexadecimal number that represents
the disable or enable status of alarm mode:
0h Counter 0 alarm is disabled, counter 1 alarm is disabled
1h Counter 0 alarm is enabled, counter 1 alarm is disabled
2h Counter 0 alarm is disabled, counter 1 alarm is enabled
3h Counter 0 alarm is enabled, counter 1 alarm is enabled
S (for ADAM-4080D) is a hexadecimal number that represents
the alarm state of counter 0:
0h Alarm of counter 0 is disabled
1h Alarm of counter 0 is in MOMENTARY mode
2h Alarm of counter 0 is in LATCH mode
OO is a hexadecimal number representing the Digital Output
port's channel 0 and 1 status (00h = D/0 channels 0 and 1 are
both OFF, 01h = channel 0 is ON, channel 1 is OFF, 02h =
channel 0 is OFF, channel 1 is ON, 03h = channel 0 and 1 are
both ON).
(cr) represents the terminating character, carriage return (0Dh)
@AADI
Example command: @15DI(cr)
response: !1510000(cr)
(ADAM-4080D)
The counter module at address 15h is instructed to return
digital output data and alarm status. The module responds that
both digital output channels are OFF and alarm state is Momen-
tary
Example command: @05DI(cr)
response: !0530000(cr)
(ADAM-4080)
The counter module at address 05H is instructed to return
digital output and alarm status. The module reponds that both
digital output channels are OFF and the alarm status for both
counters are ENABLED.
@AAEAT
Name Enable Alarm
Description The addressed counter module is instructed to enable its alarm
for counter 0 in either Latching or Momentary mode.
Syntax @AAEAT(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an counter module.
EA identifies the Enable Alarm command.
T indicates the alarm type and can have the value M = Momen-
tary alarm state, or L = Latching alarm state.
(cr) represents terminating character, carriage return (0Dh)
Response !AA(cr) if the command was valid
There is no response if the module detects a syntax or commu-
nication error, or if the specified address does not exist.
! is a delimiter character indicating a valid command was
received
AA represents the 2-character hexadecimal address of the
responding counter module.
(cr) represents terminating character, carriage return (0Dh)
Example command: @03EAL(cr)
response: !03(cr)
The counter module at address 03h is instructed to enable its
alarm for counter 0 in Latching mode.
The module confirms that the command has been received.
@AADA
Name Disable Alarm
Description Disable all alarm functions for counter 0 of the addressed
counter module.
Syntax @AADA(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an counter module.
DA identifies the Disable Alarm command.
(cr) represents terminating character, carriage return (0Dh)
Response !AA(cr) if the command was valid
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating a valid command was
received
AA represents the 2-character hexadecimal address of the
responding counter module.
(cr) represents terminating character, carriage return (0Dh)
Example command: @07DA(cr)
response: !07(cr)
The counter module at address 07h is instructed to disable all
alarm functions for channel 0. The module confirms its alarm
functions have been disabled.
@AACA
Name Clear Latch Alarm
Description Both alarm states (High and Low) of the addressed counter
module are set to OFF, no alarm.
Syntax @AACA(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of an counter module.
CA is the Clear Latch Alarm command
(cr) represents terminating character, carriage return (0Dh)
Response !AA(cr) if the command was valid
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating a valid command was valid
AA represents the 2-character hexadecimal address of the
responding counter module.
(cr) represents terminating character, carriage return (0Dh)
Example command: @05CA(cr)
response: !05(cr)
The counter module at address 05h is instructed to set
both alarm states (High and Low) to OFF. The module confirms
that it has done so.
@AAPA(data)
Name Set Low-alarm Count Value for Counter 0.
Description Set the low-alarm count value for counter 0 of the specified
counter module.
Syntax @AAPA(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address a the counter module.
PA identifies the Set Low-alarm Count Value command.
(data) is the low-alarm count value which must consist of eight
hexadecimal digits. This value should be lower than the high
alarm value.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating a valid command was valid
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12PA0000FFFF(cr)
response: !12(cr)
The command sets the low-alarm count number 0000FFFF(hex)
for channel 0 of the counter modules at address 12. The
addressed module replies that the command has been received.
@AASA(data)
Name Set Hi-alarm Count Value of Counter 0.
Description Set the high-alarm count value for counter 0 of the specified
counter module.
Syntax @AASA(data)(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address a the counter module.
SA identifies the Set High-alarm Count Value command.
(data) is the high-alarm count value which must consist of eight
hexadecimal digits. This value should be higher than the low-
alarm count value.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating a valid command
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12SAF0000000(cr)
response: !12(cr)
The command sets the low-alarm count number F0000000(hex)
for channel 0 of the counter modules at address 12. The
addressed module replies that the command has been received.
@AARP
Name Read Low-alarm Count Value of Counter 0
Description Read the low-alarm value of counter 0 of the specified counter
module.
Syntax @AARP(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter.
RP identifies the Read Low-alarm Count Value command.
(cr) is the terminating character, carriage return (0Dh)
Response !AA(data)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! is a delimiter character indicating a valid command
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(data) is the low-alarm count value which consists of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12RP(cr)
response: !120000FFFF(cr)
The command instructs the module at address 12 to return its
low-alarm count value. The module replies that counter 0's low-
alarm count value is 0000FFFF(hex).
@AARA
Name Read High-alarm Count Value for Counter 0.
Description Requests the addressed counter module to return its high-alarm
count value of counter 0.
Syntax @AARA(cr)
@ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
RA identifies the Read High-alarm Count Value command
(cr) is the terminating character, carriage return (0Dh)
Response !AA(data)(cr) if the command is valid.
There is no response if the module detects a syntax error or
communication error or if the specified address does not exists.
! a delimiter character indicating a valid command
AA (range 00-FF) represents the 2-character hexadecimal
address of a counter module.
(data) is the high-alarm count value which consists of eight
hexadecimal digits.
(cr) is the terminating character, carriage return (0Dh).
Example command: @12RA(cr)
response: !12F0000000(cr)
The command instructs the module at address 12 to return its
high-alarm count value. The module replies that counter 0's
high-alarm count value is F0000000(hex).
4. Execute the Offset Calibration command. This is also done with the
ADAM utility software. (See “Offset Calibration” option in the Calibra-
tion sub-menu of the ADAM utility software).
5. Execute the Span Calibration command. This can be done with the
ADAM utility software. (See “Span Calibration” option in the
Calibration sub-menu of the ADAM utility software).
Input Range
Module Input Range Span Calibration Voltage
Code (hex)
4011 ±15 mV +15 mV
4011D 00
4018 ±50 mV +50 mV
01
4018+
±100 mV +100 mV
4018M 02
±500 mV +500 mV
03
±1 V +1 V
04
±2.5 V +2.5 V
05
±20 mA +20 mA¹
06
0E J thermocouple 0 to 760° C +50 mV
0B ±500 mV +500 mV
0C ±150 mV +150 mV
NOTE:1 You can substitute 2.5 V for 20 mA if you remove the current
conversion resistor for that channel. However, the calibration accuracy
will be limited to 0.1% due to the resistor's tolerance.
(continuted on following page)
Module Input Range Code (Hex) Input Range Span Calibration Voltage
01 ±50 mV +50 mV
02 ±100 mV +100 mV
03 ±500 mV +500 mV
06 ±20 mA +20 mA
08 ±10 V +10 V
09 ±5 V +5 V
0A ±1 V +1 V
0B ±500 mV +500 mV
0C ±150 mV +150 mV
0D ±20 mA +20 mA
4. Issue the Analog Data Out command to the module with an output
value of 4 mA.
5. Check the actual output value at the modules terminals . If this does not
equals 4 mA, use the “Trim” option in the “CaLibrate” sub menu to
change the actual output. Trim the module until the milliammeter
indicates exactly 4 mA or in case of an voltage meter with shunt resistor,
the voltage meter indicates exactly 1 V. (When calibrating for 20 mA
using voltage meter and shunt resistor, the correct voltage would be 5
V.)
6. Issue the 4 mA Calibration command to indicate that the output is
calibrated and calibration parameters should be stored in the modules
EEPROM.
7. Execute an Analog Data Out command with an output value of 20 mA.
The module’s output will be approximately 20 mA.
8. Execute the Trim Calibration command as often as necessary until the
output current is equal to exactly 20 mA.
9. Execute the 20 mA Calibration command to indicate that the present
output is exactly 20 mA. The analog output module will store its
calibration parameters in EEPROM.
Module: ADAM-4016
1. Apply power to the strain gauge input module and let it warm up for
about 30 minutes.
2. Assure that the module is correctly installed. Connect a voltmeter to the
screw terminals of the module.
ADAM-4016
Exc+
Vin+
Exc-
Vin-
Iin+
Iin-
Voltmeter
- +
4. Execute the Span Calibration command. This can be done with the
ADAM utility software. (See "A/O 10 V Calibration" option in the
Calibration sub-menu of the ADAM utility software.)
5. Check the actual output value at the module's terminals. If this does not
equal 0 V or 10 V, use the Trim Calibration command to change the
output value. This is also done with the ADAM utility software. (Use
the arrow key to adjust the output value after executing the "A/O 0V
Calibration" or "A/O 10 V Calibration", use the arrow key to adjust the
output value. Right and Up keys mean increasing, Left and Down keys
mean decreasing).
A-7
Appendix
LED DISPLAY
+1.9999
PHOTO 2 CH.
HI ALARM
mV/V/mA +IN ISOLATION LO ALARM
DIG OUT
M
+ 125Ω
MICRO DATA+
- 0.1 %
U PGA LPF 16 BIT RS-485
DATA-
A/D CONVERTER CONTROLLER COMM.
-IN
EVENT
X FILTER COUNTER
T/C+ 1 CH.
10 Hz DIG IN
T/C
EEPROM
T/C-
" ONFIG DATA
THERMAL " T/C LINEARIZATION
BLOCK
" ALARM SETTING
CJC
+5 V GND
P.S.
+V
Rect & Power Power Input
Filter Converter +10 ~ +30 VDC
-V Power
Isolation
Technical specifications
Input range ±15 mV, ±50 mV, ±100 mV, ±500 mV and
±20 mA
Output RS-485 (2-wire)
Speed (bps) 1200, 2400, 4800, 9600, 19.2K, 38.4K
Maximum distance 4000 ft. (1200 m)
Isolation voltage 3000 VDC
Sampling rate 10 samples/sec
Bandwidth 4 Hz
Accuracy ±0.05% or better
Zero drift ±6 µV / °C
Span drift ±25 ppm / °C
CMR @ 50/60 Hz 150 dB
NMR @ 50/60 Hz 100 dB
Analog output range 0~10 V
Drive current 30 mA
Isolation voltage 3000 VDC
Accuracy 0.05% of FSR
Drift ± 50 ppm/ °C
Input impedance 2 MΩ
Digital output 4 channels open collector to 30 V
sink current 30 mA max. load
power dissipation 300 mW
Watchdog timer Yes
Power requirements +10 to +30 VDC(non-regulated)
Power consumption 2.2 W
A-15
Appendix
PHOTO
ISOLATION Do 0/LO ALARM
4 CH. Do 1/HI ALARM
V in+ V+ DIG OUT Do 2
Do 3
V in- V- 16 BIT
PGA LPF
A/D CONVERTER MICRO
I+
CONTROLLER RS-485
DATA+
I- FILTER COMM. DATA-
10 Hz
D/A
+Vout BUFFER CONVERTER PHOTO
ISOLATION EEPROM
A.GND " CONFIG DATA
" ALIBRATION DATA
+5 V GND
P.S.
+V
Rect & Power Power Input
Filter Converter +10 ~ +30 VDC
-V POWER
ISOLATION
Technical specifications
PHOTO
Figure A-8 ADAM-4018 Function Diagram
ISOLATION
mV/V/mA +IN
M
DATA+
+ 125Ω 16 BIT MICRO RS-485
- 0.1 % BUFFER U PGA LPF CONTROLLER COMM. DATA-
A/D CONVERTER
-IN X
"
FILTER
" 10 Hz
T/C+
"
T/C " EEPROM
" " CONFIG DATA
" ALARM SETTING
T/C-
CJC
A-20
Appendix A
A-23
Appendix
I/ O Channels 7 inputs
8 outputs
Input/Output RS-485 (2-wire)
speed (bps) 1200, 2400, 4800, 9600, 19.2K, 38.4K
maximum distance 4000 ft. (1200 m)
Digital Output 8-channel open collector to 30 V
sink-current 30 mA
power dissipation 300 mW
Digital Input 7-channel
logic level 0 +1 V max.
logic level 1 +3.5 to +30 V
Pull-up current 0.5 mA, 10K resistor to +5 V
Watchdog timer Yes
Power supply +10 to +30 VDC (non-regulated)
Power consumption 0.4 W
I/ O channels 16 inputs
Input/Output RS-485 (2-wire)
speed (bps) 1200, 2400, 4800, 9600, 19.2K, 38.4K
maximum distance 4000 ft. (1200 m)
Digital Input Dry Contact:
logic level 0: close to GND
logic level 1: open
Wet Contact:
logic level 0: +2V max
logic level 1: +4 V to +30 V
Effective distance 500 m max.
(dry contact only)
Watchdog timer Yes
Power supply +10 to +30 VDC (non-regulated)
Power consumption 1.0 W
A-31
Appendix
" DI 0
DATA+ "
RS-485 MICRO 16 BIT "
DATA- COMMUNICATION CONTROLLER DIGITAL INPUT "
"
"
DI 15
RESET
EEPROM
" CONFIG DATA
+5V
Rect Power Power Input
& Filter Converter +10 ~ +30 VDC
Technical specifications
A-35
Appendix
+5V
GATE1 +
GATE1 -
+5V
ALARM 0 CH0 +
2 CHANNEL
ALARM 1 DIGITAL OUTPUT CH0 -
PHTO/TTL +5V
COUNTER 0 PROGRAMMABLE INPUT CH1 +
DATA+ MICRO DIGITAL SELECT AND CH1 -
RS-485
DATA- COMMUNICATION CONTROLLER NOISE GATE CH0 (TTL)
COUNTER 1 FILTER CONTROL PROGRAMMABLE
THRESHOLD CH1 (TTL)
VOLTAGE
RESET GATE0 (TTL)
EEPROM
" CONFIG DATA GATE1 (TTL)
" LARM SETTING
Rect Power Power Input
& Filter Converter +10 ~ +30 VDC
Technical specifications
InputRange Resolution
Data is grouped into a plus (+) or minus (-) sign, followed by five decimal
digits and a decimal point. The input range which is employed determines
the resolution or the number of decimal places used as illustrated in the
following table:
Example 1
The input value is -2.65 and the corresponding analog input module is
configured for a range of ±5 V. The response to the Analog Data In com-
mand is:
-2.6500 (cr)
Example 2
The input value is 305.5o C. The analog input module is configured for a
type J thermocouple whose range is (0o C to 760o C). The response to the
Analog Data In command is:
+305.50 (cr)
Example 3
The input value is +5.653 V. The analog input module is configured for a ±5
V range. When the engineering units format is used, the ADAM Series
analog input modules are configured so that they automatically provide an
overrange capability. The response to the Analog Data In command in this
case is:
+5.6530 (cr)
Example 1
The input value is +2.0 V. The input module is configured for a range of ±5 V.
The response to the Analog Data In command is as follows:
+040.00 (cr)
The full calibrated voltage range ranges from -100% to 100% as voltage
input ranges are always bipolar. A ±5 V input would range from -5 V
(-100%) to 5 V (100%).
In this example the input is represented by +40% of the full-scale range
which equals (+(40/100) x 5 V = +2.0 V) the actual input value.
Example 2
The input value is 652.5o C. A type K thermocouple (0o C to 1000o C) is
configured in the analog input module. The response to the Analog Data In
command is:
+065.25 (cr)
The result shows that the value of the input (652.5o C) is 65.25% of the value
of the calibrated full-scale range (1000o C).
When in the FSR mode, if a value exceeds the uppermost value of the input
range, an overrange feature is automatically invoked by the ADAM analog
input modules. Take, for instance, an analog module which is configured for
a ±5 V range but one of the values read is + 5.5V. The resulting value would
then be 110%.
The readings must fall within the input range to be guaranteed of accuracy.
Although they are typically linear readings which fall between the ±100%
and ±115% limits are not accurate, but still generally linear. Readings
beyond these limits are neither accurate nor linear.
and symmetric about zero is assumed. The following table provides several
examples.
The given span of the specified range is used to determine the RTD input
ranges for twos complement hexadecimal values. As an example, if the
nickel RTD is specified for the range -80o C to +100o C, the respective values
in hexadecimal notation would be 8000h to 7FFFh.
B.1.4 Ohms
To indicate ohms, set bits 0 and 1 of the data format/checksum/integration
time parameter to 11; this data format is only valid for ADAM-4013 analog
input modules.
The ohms format allows you to read the value of the RTD resistance in
ohms. It consists of a “+” or “-” sign followed by five decimal digits and a
decimal point. The resolution (position of the decimal point) of Platinum-
Nickel RTDs is 10 m Ω. (two decimal places).
For example, for a 100 Ω. platinum RTD specified for -100o C to +100o C,
+100o C corresponds to +138.50 Ω. and -100o C corresponds to +060.60 Ω.
07 not used
Range Input
Displayed
Code Range Data Formats +F.S. Zero -F.S.
Resolution
(hex) Description
Engineering
+10.000 ±00.000 -10.000 1 µv
Unite
08 ± 10 mV % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
Engineering
+5.0000 ±0.0000 -5.0000 100.00 µv
Unite
09 ±5V % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
Engineering
+1.0000 ±0.0000 -1.000 100.00 µv
Unite
0A ±1V % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
Engineering
+500.00 ±000.00 -500.00 10 µv
Unite
0B ± 500 mV % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
Engineering
+150.00 ±000.00 -150.00 10 µv
Unite
0C ± 150 mV % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
Engineering
+20.000 ±00.000 -20.000 1 µv
Unite
0D ± 20 mV % of FSR +100.00 ±000.00 -100.00 0.01%
Twos
7FFF 0000 8000 1 LSB 1
Complement
NOTE: 1
Resolution is one LSB of 16 bits
B.3.3 Hexadecimal
This format is selected by setting bits 0 and 1 of the data format/slew rate/
checksum parameter to 10.
ASCII’s condensed hexadecimal representation of data allows and provides
high resolution, quick communication and easy conversion to computer-
compatible integer format. The format consists of a 3-character hexadecimal
string representing a 12-bit binary value. The resolution for the 0 to 20 mA
output range equals .025% of span, which is 5 µA. The corresponding value
for 000 is 0 mA; likewise, the value FFF corresponds to 20 mA.
C.2 Installation
C.2.1 DIN-Rail Mounting
Main menu
The main screen consists of a menu bar at the top side of the screen and a
status field which displays information about the connected modules.
When you first start the program, it will automatically scan for any attached
modules and display their data. The status field lists module characteristics,
module configuration parameters and in or output values.
Normally you will use the Search command to scan the network. Highlight
the Search command on the menu bar and press <Enter> (or simply press
the “s” key). The “Search Installed Modules” window will then appear to
prompt you to enter the range it should scan. Input a value 0 and 256
decimal.
NOTICE: When changing configuration, calibration or alarm parameters,
you should always make sure that a window appears notifying you that
the target module has confirmed the changes.
An asterix sign “*” before the modules address indicates that the module
is in the INIT* state
Setup
Select Setup from the top bar and a selection bar will appear in the status
field. First, move the selection bar over the module you wish to configure
and select it by pressing <Enter>. A configuration screen will appear with
the settings available for its module type and the current values of its
inputs. An example is shown in Figure D-2 for an ADAM-4011 module.
Here there are three different options, Configure, Edit-data and Alarm/
Counter. To change the basic settings, select Configure and press
<Enter>. (To return to the previous screen without making any changes,
press <ESC>. This works for most screens in the program.)
Highlight the parameter you wish to change and press <Enter>. A
window will appear with the configuration options for that parameter.
Highlight the proper value and hit <Enter>. For some parameters, such as
alarm high and low limit values, you will need to type in a specific value
after selecting the parameter.
The Checksum and Baud rate options need special attention since they can
only be changed when an ADAM module is in the INIT* state. To place a
module in INIT state, its INIT terminal should be connected to its GND
terminal (see Baud rate and Checksum in Chapter 2). When the ADAM
module is not in INIT mode, an error message will appear. When it is in INIT
mode, a window to change the Checksum or an option window showing
you the valid baud rates will appear, depending on your choice.
After you have made the changes for a block of parameters, press <ESC>.
You will be asked if you are satisfied with the changes you have made or
not. Answer y to keep the changes you have made, n to escape without
changing the values.
A similar procedure applies for alarm settings. Note that only the ADAM-
4011 and ADAM-4012 analog input modules provide alarming and event
counting.
If you wish to set the values of the module’s outputs, select from the
configuration screen menu and press <Enter>. Next highlight the output
channel and toggle its value with the spacebar. Note that the digital outputs
cannot be used when alarming functions are activated.
After you have made all necessary changes to the module configuration,
you must issue the Run command to send the data to the Modules and let
the changes take effect. If you select Quit instead of Run, the changes you
have just made will not take effect and you will leave the program.
Calibration
Press <Enter> on the Calibrate option on the top bar and a selection bar
appears in the status field. Move the selection bar over the module you
wish to configure and select it by pressing <Enter>. Only analog input and
output modules can be calibrated. If the module is an analog input module,
you will be able to choose, for example, Zero Calibration. The screen will
then look like Figure D-3.
To learn what steps should be taken to calibrate both input and output
modules, refer to Chapter 5, Calibration.
File
This option allows you to update the status field and can gives you a
hardcopy of all the connected modules that are shown on the screen. You
can also print this information.
Terminal
This option allows you to directly send and receive commands on the RS-
485 line. It has two options: Command Test and Terminal Emulation.
With Command Test you send commands one at a time by typing them into
the top blank and pressing <Enter>. The response appears in the bottom
blank. To send the command again, simply press <Enter> again.
A box on the right hand side of the screen shows the communication
parameters for the serial line such as the baud rate and number of stop bits.
Quit
Choosing the Quit option ends the ADAM utility program.
Configuration setting
The configuration setting allows you to set the sampling interval, standal-
one mode, data logger mode and channel enable/disable status. The
sampling interval can be set from 2 to 65,535 seconds. To operate the
ADAM-4018M in the field, you must power on the memory module by
setting the standalone mode as "YES". Otherwise, the data will not be
recorded.
Alarm setting
This screen allows users to set the high/low alarm limit. Its range is from -
65,535 to +65,535.
Operation setting
This screen allows users to "START/STOP" the storage function of the
memory module and to select the option to transfer ADAM-4018M memory
data to the host.
Data reading
This screen allows users to read data stored in the memory, after the data has
been transferred to the host.
NOTE 2.In standalone mode, if an LED light begins to blink once per
second, 15 seconds after power is turned on, this means that the memory is
not working. Turn the power off, then back on, and check the memory.
ADAM modules are fully isolated and use just a single set of twisted pair
wires to send and receive! Since the nodes are connected in parallel they
can be freely disconnected from the host without affecting the functioning
of the remaining nodes. In industry shielded twisted pair is preferable due
to the high noise ratio of the environment.
When nodes communicate through the network, no sending conflicts can
occur since a simple command/response sequence is used. There is always
one initiator (with no address) and many slaves (with address). In this case
the master is a personal computer that is connected with its serial, RS-232,
port to an ADAM RS-232/RS-485 converter. The slaves are the ADAM I/
O modules. When modules are not transmitting data, they are in listen
mode. The host computer initiates a command/response sequence with one
of the modules. Commands normally contain the address of the module the
host wants to communicate with. The module with the matching address
carries out the command and sends its response to the host.
Daisychain
The last module of a segment is a repeater. It is directly connected to the
main-wires thereby ending the first segment and starting the next segment.
Up to 32 addressable modules can be diasychained . This limitation is a
physical one. When using more modules per segment the IC driver current
rapidly decreases, causing communication errors. Totally the network can
hold up to 256 addressable modules. The limitations for this number is the
two number hexadecimal address code that knows 256 combinations. The
ADAM converter, ADAM repeaters and the host computer are non
addressable units and therefore are not included in these numbers.
Star Layout
In this scheme the repeaters are connected to drop-down cables from the
main wires of the first segment. A tree structure is the result. This scheme
is not recommended when using long lines since it will cause a serious
amount of signal distortion due to a signal reflection in a several line
endings.
Random
This is a combination of daisychain and hierarchical structure
E. 2 Line Termination
Each discontinuity in impedance causes reflections and distortion.
When an impedance discontinuity occurs in the transmission line the
immediate effect is signal reflection. This will lead to signal distortion.
Specially at line ends this mismatch causes problems. To eliminate this
discontinuity terminate the line with a resistor.
Example:
Each input of the receivers has a nominal input impedance of 18 kW
feeding into a diode transistor- resistor biasing network that is equivalent to
an 18 kΩ input resistor tied to a common mode voltage of 2.4 V. It is this
configuration which provides the large common range of the receiver
required for RS-485 systems! (See Figure E-5 below).
A checksum helps you to detect errors in commands from the host to the
modules, and in responses from the modules to the host. The feature adds
two extra checksum characters to the command or response string, which
does reduce the throughput.
How to use the Checksum feature
Example 1
The following is an example of an Analog Data In command and response
when the checksum is enabled:
Command: #0588(CR)
Response: +3.56719D(CR)
The input value at the module at address 05h is +3.5671 V. (The date
format is engineering units.) The command checksum (88h) is the sum of
the ASCII values of the following characters: #, 0, and 5. The response
checksum (9Dh) is the sum of the ASCII values of the following charac-
ters: “>” “+” “3” “.” “5” “6” “7” and “1” .
Example 2
This example explains how to calculate the checksum value of a Read
High alarm limit command string:
Case 1. (If the Checksum feature is disabled)
Command: $07RH(cr)
Response: !07+2.0500(cr) when the command is valid.
Case 2. (If the Checksum feature is enabled)
Command: $07RH25(cr)
Response: !07+2.0500D8(cr)
where:
25 represents the checksum of this command, and
D8 represents the checksum of the response.
The checksum of the command string is derived as shown below:
25h = (24h+ 30h + 37h + 52h + 48h) MOD 100h
The hexadecimal ASCII codes for $, 0, 7, R, H are 24h, 30h, 37h, 52h and
48h respectively. The sum of these ASCII codes is 125h. The module-
256(100h) sum of 125h is 25h.