ADAM-5000-TCP User Manual Ed.1-FINAL
ADAM-5000-TCP User Manual Ed.1-FINAL
ADAM-5000/TCP Series
Acknowledgements
IBM and PC are trademarks of International Business Machines Corporation.
All other product names or trademarks are properties of their respective owners.
This product has passed the CE test for environmental specifications when shielded
cables are used for external wiring. We recommend the use of shielded cables. This
kind of cable is available from Advantech. Please contact your local supplier for
ordering information.
FCC Class A
Note: This equipment has been tested and found to comply with the limits for a Class
A digital device, pursuant to part 15 of the FCC Rules. These limits are designed to
provide reasonable protection against harmful interference when the equipment is
operated in a commercial environment. This equipment generates, uses, and can
radiate radio frequency energy and, if not installed and used in accordance with the
instruction manual, may cause harmful interference to radio communications. Opera-
tion of this equipment in a residential area is likely to cause harmful interference in
which case the user will be required to correct the interference at his own expense.
FM
This equipment has passed the FM certification. According to the National Fire Pro-
tection Association, work sites are classified into different classes, divisions and
groups, based on hazard considerations. This equipment is compliant with the speci-
fications of Class I, Division 2, Groups A, B, C and D indoor hazards.
Chapter 1
High-speed transient suppressors isolate ADAM-5000/TCP Series Ethernet port from
dangerous voltage (up to 1500VDC) power spikes and avoid surge damage to the
whole system.
1.3.4 Power
Unregulated 10 to 30VDC
Protection: Over-voltage and power reversal
1.3.5 Isolation
Ethernet Communication: 1500 V DC
I/O Module: 3000 V DC
1.3.6 Mechanical
Case: KJW with captive mounting hardware
Plug-in Screw Terminal Block:
Accepts 0.5 mm2 to 2.5 mm2, 1 - #12 or 2 - #14 to #22 AWG
Chapter 1
Operating Temperature: - 10 to 70ºC (14 to 158ºF)
Storage Temperature: - 25 to 85ºC (-13 to 185ºF)
Humidity: 5 to 95%, non-condensing
Atmosphere: No corrosive gases
Note! Equipment will operate below 30% humidity. However, static electricity
problems occur much more frequently at lower humidity levels. Make
sure you take adequate precautions when you touch the equipment.
Consider using ground straps, anti- static floor coverings, etc. if you use
1.3.8 Dimensions
The following diagrams show the dimensions of the system unit and an I/O unit. All
dimensions are in millimeters.
355.0
331.5
309.5
Power: Red indicator. This LED is normal when ADAM-5000/TCP Series system is
powered on.
Advantech provides more than 15 types of ADAM-5000 I/O modules for various
applications. Figure 2-1 and Table 2-2 will help you to select the ADAM-5000 I/O
modules quickly and easily.
ADAM-
Module ADAM-5055S ADAM-5055S ADAM-5056 ADAM-5056D
5056S /5056SO
Resolution - - - - -
Input
- - - - -
Channel
Sampling
- - - - -
Rate
Voltage
Analog - - - - -
Input
Input
Current
- - - - -
Input
Direct
Sensor - - - - -
Input
Resolution - - - - -
Voltage
Analog - - - - -
Output
Output
Current
- - - - -
Output
Digital
Digital Input 8 8 W/LED - - -
Input Channels
and
Digital Digital
Output Output - 8 W/LED 16 16 W/LED 16 W/LED
Channels
Channels - - - - -
Counter Input
- - - - -
(32-bit) Frequency
Mode - - - - -
Channels - - - - -
COMM
Type - - - - -
Isolation 5000 VRMS 2500 VDC - - 2500 VDC
Chapter 2
PC-Based Programmable Controller (With Battery
ADAM-5510 1.0 W
Backup)
Enhanced PC-Based Programmable Controller
ADAM-5510M 1.2 W
(With Battery Backup)
ADAM-5511 PC-Based Programmable Controller with Modbus 1.0 W
ADAM-5510E 8-clot PC-Based Programmable Controller 1.2W
Ethernet-enabled PC-Based Programmable Con-
ADAM-5510/TCP 2.0W
troller
Serial Network
The system uses screw terminal for RS-485 twisted pair connection as a data gate-
way between Ethernet Sever and serial Modbus devices. See Figure 2-3. The follow-
ing information must be considered.
1. Twisted-pair wire compliant with EIA-422 or EIA-485 standards, which contains
24 AWG thin copper conductor with copper mesh and aluminum foil for shield-
ing.
2. Always use a continuous length of wire, do not combine wires to attain needed
length.
3. Use the shortest possible wire length.
4. Use wire trays for routing where possible.
5. Avoid running wires near high energy wiring.
6. To reduce electrical noise, it should be twisted as tightly as possible.
If you want to integrate ADAM-5000/TCP Series with HMI (Human Machine Inter-
face) software in a SCADA (Supervisory Control and Data Acquisition) system. There
are a lot of HMI software packages, which support Modbus/TCP drivers.
Advantech WebAccess
Wonderware InTouch
Intellution Fix of i-Fix
Advantech also provides an OPC Server - the most easy-to-use data exchange
tool worldwide. Any HMI software designed with an OPC Client would be able to
access ADAM-5000/TCP series systems.
AdamApax .NET Class Library
With these ready-to-go application software packages, tasks such as remote data
acquisition, process control, historical trending, and data analysis require only a few
keystrokes to use.
3.3 Mounting
The ADAM-5000/TCP Series system can be installed on a panel or on a DIN rail.
Chapter 3
The system uses a plug-in screw terminal block for the interface between I/O mod-
ules and field devices. The following information must be considered when connect-
ing electrical devices to I/O modules.
1. The terminal block accepts wires from 0.5 mm to 2.5 mm.
2. Always use a continuous length of wire. Do not combine wires to make them
longer.
3. Use the shortest possible wire length.
4. Use wire trays for routing where possible.
Serial Network
Working as an Ethernet Data Gateway, the ADAM-5000/TCP Series provides an RS-
485 interface to integrate serial devices for various applications. Adopting the Mod-
bus standard protocol, it solves the communication problem between different net-
works and different devices. Meanwhile, users can extend their system scope by
integrating up to 32 nodes of ADAM-5000/485 or other Modbus products, such as
meters, card readers, and so on.
System Requirement
Host computer
– IBM PC compatible computer with 486 CPU (Pentium is recommended)
– Microsoft XP/7 32, 64-bits or higher versions
– At least 32 MB RAM
– 20 MB of hard disk space available
– VGA color monitor
– 2x or higher speed CD-ROM
– Mouse or other pointing devices
– 10 or 100 Mbps Ethernet Card
10 or 100 Mbps Ethernet switch (at least 2 ports)
Two Ethernet Cable with RJ-45 connector
Power supply for ADAM-5000/TCP Series (+10 to +30 V unregulated) Make
sure to prepare all of the items above, then connect the power and network wir-
ing as figure 5-1.
Chapter 5
tions on how to use this Utility.
Main Menu
Ethernet Network Setting
Adding Remote Station
I/O Module Configuration
Alarm Setting
Firmware Update
Security Setting
The top of the screen consists of a function menu and a tool bar for commonly used-
functions.
Function menu
About menu item shows information about software version, release date, and sup-
port modules.
Chapter 5
There are five push buttons in the tool bar.
In Figure 5-4, there is host PC information in the status display area, including host
name and IP address.
Since the utility software detects the ADAM-5000/TCP series on the network, the
user can begin to setup each ADAM-5000/TCP series station individually following
these steps.
Step 1. Choose any one station, all I/O modules plugged into the main unit will be
listed on the tree-structure display area. Meanwhile, the “Device Name” and
“Device Description” are editable by the operator.
Step 2.Click the Network tip to configure the TCP/IP network setting.
MAC Address: This is also called the Ethernet address and needs no further con-
figuration.
IP Address, Subnet Mask, Default Gateway: The IP address identifies your ADAM-
5000/TCP Series device on the global network. Each ADAM-5000/TCP has same
default IP address 10.0.0.1. Therefore, please do not initial many ADAM-5000/TCP
Series at the same time to avoid the Ethernet conflict.
If you want to configure the ADAM-5000/TCP Series in the host PC’s domain net-
work, only the IP address and Subnet Mask will need to be set ( host PC and ADAM-
5000/TCP Series must belong to same subnet mask). If you want to configure the
ADAM-5000/TCP Series via Internet or other network domains, you have to ask your
Chapter 5
each ADAM-5000/ TCP Series with an individual setting.
Note! There are several conditions you need to be sure of before adding a
remote ADAM-5000/TCP Series system in the windows Utility.
1. Be sure the specific IP exists and is available.
2. Be sure to complete the network linkage for both sides.
3. Be sure to adjust the best timeout setting.
4. Even if you are not sure whether the communication is workable or
In addition to monitoring the current DI/DO status, the Windows Utility offers a GUI
interface as shown in figure 5-8. You can read the Digital input status through the
Note! 1. The indicator icons are only available to click for digital output
channel.
2. The hexadecimal code will be calculated automatically for any sta-
tus.
Chapter 5
ranges of the specified module. Before acquiring the current data of
an analog input module, you have to select the input range and inte-
gration time. Then the input data will be scaled as the specified range
with the engineer unit.
Note! Windows Utility allows the user to Enable / Disable the current status
display.
Counter/Frequency Module
Selecting an ADAM-5080 Counter/Frequency Module, users also can read the infor-
mation about location, type, value, and description from four individual channel con-
figuration screens.
Chapter 5
unsigned long and four bits. For example, if ADAM-5080 is plugged into Slot 6 on the
ADAM-5000/ TCP system, the address locations should be:
Note! 1st bit: Default ON “1”, available to set ON/OFF to start/stop counting.
2nd bit: Normal OFF “0”, only accept a pulse ON signal to clear the
counter.
3rd bit: Normal OFF “0”, only ON “1” when counter overflow. Users can
write "0" to clear the overflow flag.
4th bit: Non used.
Note! The alarm types of ADAM-5080 includes “Disable” and “Latch only.
Select the IP address of the ADAM-5000/TCP Series you want to read the data of,
then click “Start” button. The Utility software will begin to receive the stream of data
shown on this operation display.
1. Define the parameters of the network, including parity, stop bit, baud rate,
(300~115200bps) and timeout.
2. Click the Apply button, the password verification dialog block will pop up.
3. Key in your specific password and click OK, The setting is now done.
6.2.1 Index
Chapter 6
Sending a command and receiving a response by UDP.
Programming
Sending a command and receiving a response by TCP
Chapter 6
Programming
Chapter 6
Programming
Writing values to a holding register.
Parameters: void
ADAM5KTCP_Close
Description: Terminates using the “adam5ktcp.dll”.
Parameters: void
Return: void
ADAM5KTCP_Connect
Description: Establishes a Windows Sockets connection in a specified ADAM-5000/TCP
system.
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that is to be connected
port[in]: The TCP/IP connection port used with Modbus/TCP,
iConnectionTime-
The specified timeout interval for connecting to the ADAM-5000/TCP
out[in]:
iSendTimeout[in]: The specified timeout interval for sending a command to the ADAM-
5000/TCP
iReceiveTimeout[in]: The specified timeout interval for receiving response from the ADAM-
5000/TCP
Return: Refer to Chapter 6.2.4 “Return Codes” for more detailed information
ADAM5KTCP_Disconnect
Description: Disconnect the Windows Sockets connection of the specified ADAM-5000/
TCP
Parameters: void
Return: Refer to Chapter 6.2.4 “Return Codes” for more detailed information
Chapter 6
Description: Read the version of ADAM-5000/TCP DLL driver
Parameters: void
Programming
ADAM5KTCP_ReadReg
Description: Reads the holding register value at a specified range described in parame-
ters.
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that to be connected
wID[in]: The specific device ID for an Modbus/TCP device. The ADAM-5000/
TCP is always assigned as 1
wStartAddress[in]: The starting address to be read
wCount[in]: How many holding registers to be read
wData[out]: An unsigned 16 bit array that stores the read holding register values
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_WriteReg
Description: Write the holding register value at a specified range described in the param-
eters.
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that to be connected
wID[in]: The specific device ID for an Modbus/TCP device. The ADAM-5000/
TCP is always assigned as 1
wStartAddress[in]: The starting address to be written
wCount[in]: How many holding registers to be written
wData[out]: An unsigned 16 bit array that stores write values to a holding register
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that to be connected
wID[in]: The
specific device ID for an Modbus/TCP device. The ADAM-5000/TCP
is always assigned as 1
wStartAddress[in]: the starting address that to be read
wCount[in]: How many coils to be read
byData[out]: An 8-bit array that stores read coils
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_WriteCoil
Description: Writes coil values at a specified range described in parameters.
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that to be connected
wID[in]: The specific device ID for an Modbus/TCP device. The ADAM-5000/
TCP is always assigned as 1
wStartAddress[in]: The starting address that to be written
wCount[in]: How many coils to be written
byData[out]: An unsigned 8-bit array that stored values written to the coil
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
Chapter 6
Description: This function is designed for user’s convenience, accepting the ASCII for-
mat string as a command. Then transforming it to meet the Modbus/TCP
specifications.
Parameters:
Programming
szIP[in]: The IP Address of the ADAM-5000/TCP that to be connected
szSendToTCP[in]: The ASCII format string that send to a ADAM-5000/ TCP
szReceiveFromTCP[out]: The ASCII format string that response from a ADAM-5000/TCP
szModbusSend[out]: The Modbus/TCP format string that send to a ADAM-5000/TCP
szModbusReceive[out]: The Modbus/TCP format string that response from a ADAM-
5000/TCP
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_Add5KTCPForStream
Description: Assigns a specified ADAM-5000/TCP to send stream data to the PC
Parameters: szIP[in]: the IP Address of the ADAM-5000/TCP that assign to send stream
data to the PC
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
Parameters:
szIP[in]: Specifies the IP Address for a user to receive the stream data
*pStreamData[out]: the stream data stored in _StreamData structure Refer to Chapter 6-2-
5 “Data Structure” for more detail information about _StreamData
structure.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_ReadAlarmInfo
Description: Receive alarm information that comes from the specific ADAM-5000/TCP
Parameters:
*pAlarmInfo[out]: The alarm information stored in _AlarmInfo structure Refer to Chapter
6-2-5 “Data Structure” for more detail information about _AlarmInfo
structure.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
Chapter 6
Description: Instruct the PC to start receiving stream data from the ADAM-5000/TCP
Parameters:
*EventFromApp: The event object that would pass down to ADAM5KTCP.DLL This event
object would be signaled either a stream data send to PC or an alarm sta-
tus change in ADAM-5000/TCP.Refer to ADAM5KTCP_SetStream Alarm-
Programming
State for more detail information.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_StopStream
Description: Instruct the PC to stop receiving stream data
Parameters: void
Return: void
Parameters:
wStreamAlarmState[in]: When assigned to ADAM5KTCP_Receive StreamIngoreAlarm:
means the ADAM5KTCP.DLL always signals event object when
any stream data comes from an ADAM-5000/TCP. Then the appli-
cation can receive the stream data by calling “ADAM5KTCP_Read-
StreamData()” function.
When assigned to ADAM5KTCP_Receive Stream WhenAlarm:
means ADAM5KTCP.DLL only signals event object when a alarm
status is triggered. Then the application can receive the alarm infor-
mation about the ADAM-5000/TCP by calling
“ADAM5KTCP_ReadAlarmInfo()” function.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_Debug
Description: Trace the executive information about streaming data mechanism in
ADAM5KTCP.DLL
(It is convenient to troubleshooting of user’s applications.)
Parameters:
*iMatchIndex[out]: Indicates which ADAM-5000/TCP caused the signaling event object
0 means the first ADAM-5000/TCP, 1 means second,
2 means third, and so on. The ordinal is implied when calling
“ADAM5KTCP_Add5KTCPForStream()” function.
*iReceiveCount[out]: Counts how many stream data have arrival
*iThreadRun[out]: Indicates the working thread status in ADAM5KTCP.DLL
*iTotalStream[out]: Reserved
szFromIP[out]: Specifies the IP Address of ADAM-5000/TCP which sends the
stream data.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
Chapter 6
Description: Opens a UDP socket and sets the timeout of send/receive interval to pre-
pare send a command to ADAM-5000/TCP by UDP.
Parameters:
iSendTimeout[in]: The specified timeout interval for sending a command string to the
ADAM-5000/TCP by UDP.
Programming
iReceiveTimeout[in]: The specified timeout interval for receiving a response string from
the ADAM-5000/TCP by
UDP.
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_UDPClose
Description: Closes the UDP socket that has been opened by “ADAM5KTCP_UD-
POpen()”.
Parameters: Void
Return: Refer to Chapter 6.2.4 “Return Codes” for more detail information
ADAM5KTCP_SendReceiveUDPCmd
Description: Sends a command to ADAM-5000/TCP and receives the response by
UDP
Parameters:
szIP[in]: The IP Address of the ADAM-5000/TCP that send/receive the command/
response
szSend[in]: The string in ASCII format that send to the ADAM-5000/TCP
szReceive[out]: The string in ASCII format that response from the ADAM-5000/TCP
ADAM5KTCP_NoError (0)
ADAM5KTCP_StartupFailure (-1)
ADAM5KTCP_SocketFailure (-2)
ADAM5KTCP_UdpSocketFailure (-3)
ADAM5KTCP_SetTimeoutFailure (-4)
ADAM5KTCP_SendFailure (-5)
ADAM5KTCP_ReceiveFailure (-6)
ADAM5KTCP_ExceedMaxFailure (-7)
ADAM5KTCP_CreateWsaEventFailure (-8)
ADAM5KTCP_ReadStreamDataFailure (-9)
ADAM5KTCP_InvalidIP (-10)
ADAM5KTCP_ThisIPNotConnected (-11)
ADAM5KTCP_AlarmInfoEmpty (-12)
struct _AlarmInfo
{
BYTE bySlot; // the Slot of 5000/TCP which cause the alarm change
BYTE byChannel; // the Channel of 5000/TCP which cause the alarm
change
BYTE byAlarmType; // 0: Low Alarm, 1: High Alarm
BYTE byAlarmStatus; // 0: Alarm Off, 1: Alarm On
BYTE byIndexOf5KTCP; // indicate the index 5000/TCP which cause the alarm
change, zero-based
char szIP[20]; // the IP address which cause the alarm change
char szDateTime[48]; // e.x 2001/09/23 10:12:34:567 (Year/Month/Day
Hour:Minute:Second:mSecond)
};
Chapter 6
ADAM-5000/TCP system accepts a command/response form with the host computer.
When systems are not transmitting they are in listen mode. The host issues a com-
mand to a system with a specified address and waits a certain amount of time for the
system to respond. If no response arrives, a time-out aborts the sequence and
returns control to the host. This chapter explains the structure of the commands with
Modbus/TCP protocol, and guides to use these command sets to implement user’s
programs.
Programming
It is important to understand the encapsulation of a Modbus request or response car-
ried on the Modbus/TCP network. A complete command is consisted of command
head and command body. The command head is prefixed by six bytes and
responded to pack Modbus format; the command body defines target device and
requested action. Following ex- ample will help you to realize this structure quickly.
Example:
If you want to read the value of ADAM-5017 in ADAM-5000/TCP’s slot 0(2 channels;
address: 40001~40002), the request command should be:
Function Code 01
The function code 01 is used to read the discrete output’s ON/OFF status of ADAM-
5000/TCP in a binary data format.
Request message format for function code 01:
Command Body
Start Start Requested Requested
Station Function
Address Address Number of Coil Number of
Address Code
High Byte Low Byte High Byte Coil Low Byte
Example: Read coil number 1 to 8 (address number 10001 to 10008) from ADAM-5000/
TCP
01 01 00 01 00 08
Example: Coils number 2 and 7 are on, all others are off.
01 01 01 42
In the response the status of coils 1 to 8 is shown as the byte value 42 hex,
equal to 0100 0010 binary.
Function Code 02
The function code 02 is used to read the discrete input’s ON/OFF status of ADAM-
5000/TCP in a binary data format.
Request message format for function code 02:
Command Body
Start Start Requested Requested
Station Function
Address Address Number of Input Number of Input
Address Code
High Byte Low Byte High Byte Low Byte
Example: Read coil number 1 to 8 (address number 10001 to 10008) from ADAM-5000/
TCP
01 01 00 01 00 08
Example: input number 2 and 3 are on, all others are off.
01 01 01 60
In the response the status of input 1 to 8 is shown as the byte value 60 hex,
equal to 0110 0000 binary.
Programming
Function Code 03/04
The function code 03 or 04 is used to read the binary contents of input registers.
Request message format for function code 03 or 04:
Command Body
Start Start Requested Requested
Station Function
Address Address Number of Register Number of Register
Address Code
High Byte Low Byte High Byte Low Byte
Example: Read Analog inputs #1 and #2 in addresses 40001 to 40004 as floating point
value from ADAM-5000/TCP
01 04 00 01 00 04
Example: Analog input #1 and #2 as floating point values where AI#1=100.0 and
AI#2=55.32
01 04 08 42 C8 00 00 47 AE 42 5D
Function Code 05
Force a single coil to either ON or OFF. The requested ON/OFF state is specified by
a constant in the query data field. A value of FF 00 hex requests it to be ON. A value
of 00 00 hex requests it to be OFF. And a value of FF FF hex requests it to release
the force.
Request message format for function code 05:
Command Body
Station Function Coil Address Coil Address Force Data Force Data
Address Code High Byte Low Byte High Byte Low Byte
Function Code 08
Echoes received query message. Message can be any length up to half the length of
the data buffer minus 8 bytes.
Request message format for function code 08:
Command Body
Any data, length limited to approximately half the
Station Address Function Code
length of the data buffer
Example: 01 08 00 02 00 04
Example: Request to force a series of 10 coils starting at address 00020 (14 hex) in ADAM-5000/
TCP.
01 0F 00 14 00 0A 02 CD 01
The query data contents are two bytes: CD 01 hex, equal to 1100 1101 0000 0001 binary.
The binary bits are mapped to the addresses in the following way.
Bit:1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 1
Address (000XX): 27 26 25 24 23 2221 20 -------------------2928
Chapter 6
The normal responses return the station address, function code, start address, and
requested number of coil forced.
Command Body
Requested Requested
Station Function Address Address
Number of Coil Number of Coil
Address Code High Byte Low Byte
High Byte Low Byte
Example: 01 0F 00 14 00 0A
Programming
Function Code 16 (10 hex)
Preset values into a sequence of holding registers.
Request message format for function code 16:
Command Body
Requested Requested
Start Start
Station Function Number of Number of Byte
Address Address Data
Address Code Register Register Count
High Byte Low Byte
High Byte Low Byte
Requested Requested
Start Start
Station Function Number of Number of
Address Address
Address Code Register Register
High Byte Low Byte
High Byte Low Byte
Example: 01 10 00 09 00 02
Every command set category 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 sometime share the same
format, the effect they have on a certain module can be completely different than that
of another. Therefore, the full command sets for each type of modules are listed
along with a description of the effect the command has on the given module.
Chapter 6
Name Configuration
Description Sets RS-485 network baud rate and checksum status for a spec-
ified ADAM-5000/TCP system.
Syntax %aannccff(cr)
% is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to configure.
nn is reserved for system use. Its default value is 00h.
cc represents the baud rate code.
ff is a hexadecimal number that equals the 8-bit parameter rep-
resenting checksum status. The sixth bit represents the check-
sum status; 1 means enabled while 0 means disabled. The other
bits are not used and are set to 0.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Read Module Name
Syntax $aaM(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
M is the Module Name command.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaF(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
F is the Firmware Version command.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Read I/O Type
Description Returns the I/O module no. of all slots for a specified ADAM-
5000/TCP system.
Syntax $aaT(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
T is the I/O Module Types command.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name RTD Configuration
Description Sets slot index, input range, data format and integration time for
a specified RTD input module in a specified system.
Syntax $aaSiArrff(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
Si identifies the desired slot i (i:0 to 7). A represents the I/O mod-
ule configuration command. rr represents the 2-character hexa-
decimal code of the input range. (See Appendix B)
ff is a hexadecimal number that equals the 8-bit parameter rep-
resenting data format. Bits 0 and 1 represent data format. Bit 7
represents integration time. The layout for the 8-bit parameter is
shown in Figure 6-4. The other bits are not used and are set to
0.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaSiB(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interro-
gate.
Si identifies the desired slot i (i:0 to 7)
B represents the configuration status command
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name All RTD Data In
Description Returns the input values of all channels of a specified RTD input
module in a specified system in engineering units only.
Syntax $aaSi(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate.
Si is the I/O slot of the ADAM-5000/TCP system you want to
read.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaSiCj(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate.
SiCj identifies the desired slot i (i:0 to 7) and the desired channel
j (j:0 to 2) of the module you want to interrogate.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Initialize EEPROM Data
Programming
Syntax $aaSiER(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system. Si identi-
fies the I/O slot in which you wish to initialize all EEPROM data.
ER represents the initialize EEPROM data command.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSi5mm(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
Si identifies the I/O slot of the system.
5 represents the enable/disable channels command.
mm are two hexadecimal values. Each value is interpreted by
the module as 4 bits. The first 4-bit value is 0. The second 4-bit
value represents the status of channels 0 to 3. A value of 0
means the channel is disabled, while a value of 1 means the
channel is enabled. (See the Read Channel Status Command
$aaSi6). Note: Bit 4 can not enable a channel in the ADAM-
5013 since the module is physically limited to 3 channels.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read Channels Status
Description Asks a specified input module to return the status of all chan-
nels.
Syntax $aaSi6(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the I/O slot of the system you want to read channels
status. The channel status defines whether a channel is enabled
or disabled.
6 represents the read channels status command.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSi0(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which contains the RTD
module.
Si identifies the slot i (i:0 to 7) containing the RTD module to be
calibrated.
0 represents the span calibration command.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name RTD Zero Calibration
Syntax $aaSi1(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which contains the
module which is to be calibrated.
Si identifies the slot i (i:0 to 7) containing the RTD module to be
calibrated.
1 represents the zero calibration command.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaSi2(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system which con-
tains the module to be calibrated.
Si identifies the desired slot i (i:0 to 7) containing the module to
be calibrated.
2 represents the self calibration command.
(cr) is the terminating character, carriage return (0Dh).
Programming
Enables/Disables multiplexing for sepa-
Enable/Disable Channels
$aaSi5mm rate channels of the specified input
for multiplexing
module
Asks a specified input module to return
$aaSi6 Read Channels Status
the status of all channels
Returns the input value of all channels
for a specified analog input module of a
#aaSi All Analog Data In
specified system in engineering units
only.
Returns the input value of a specified
Specified Analog channel for a specified analog input
#aaSiCj
Data In module of a specified system in engi-
neering units only
Initializes all EEPROM data in a speci-
Initialize EEPROM
$aaSiER fied analog input module to their default
Data
values.
Calibrates a specified analog input
$aaSiØ Span Calibration
module to correct for gain errors
Calibrates a specified analog input
$aaSi1 Zero Calibration
module to correct for offset errors
Returns the value of the CJC (Cold
$aaSi3 CJC Status Junction Compensation) sensor for a
specified analog input module
Calibrates a CJC sensor for offset
$aaSi9shhhh CJC Zero Calibration
errors
Name Configuration
Description Sets slot index, input range, data format and integration time for
a specified analog input module in a specified system.
Syntax $aaSiArrff(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
Si identifies the I/O slot you want to configure. A is I/O module
configuration command. rr represents the 2-character hexadeci-
mal code of the input range. (See Appendix B)
ff is a hexadecimal number that equals the 8-bit parameter rep-
resenting data format. Bits 0 and 1 represent data format. Bit 7
represents integration time. The layout of the 8-bit parameter is
shown in Figure 6-3. The other bits are not used and are set to
0.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
tem at address 01h is configured to an input range ±15mV, engi-
neering units data format, and integration time 50ms (60Hz).
The response indicates that the command has been received.
$aaSiB
Programming
Name Configuration Status Description Returns the configuration sta-
tus parameters for a specified analog input module of a specified
system.
Syntax $aaSiB(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the I/O slot you want to read.
B is configuration status command.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSi5mm(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
Si identifies the I/O slot of the system.
5 identifies the enable/disable channels command.
mm are two hexadecimal values. Each value is interpreted as 4
bits. The first 4-bit value represents the status of channels 4-7,
the second 4 bit value represents the status of channels 0-3. A
value of 0 means the channel is disabled, while a value of 1
means the channel is enabled. (See the Read Channel Status
Command $aaSi6)
(cr) is the terminating character, carriage return (0Dh)
Note! Bit 7 cannot be enabled in the ADAM-5018 since the module is physi-
cally limited to 7 channels.
Chapter 6
Name Read Channels Status
Description Asks a specified input module to return the status of all channels
Syntax $aaSi6(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the I/O slot of the system you want to read channels
status. The channel status defines whether a channel is enabled
or disabled.
6 is the read channels status command.
(cr) is the terminating character, carriage return (0Dh)
Description Returns the input value of all channels for a specified analog
input module of a specified system in engineering unit only.
Syntax #aaSi(cr)
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate.
Si is the I/O slot of ADAM-5000/TCP system you want to read.
(cr) is the terminating character, carriage return (0Dh)
Response >(data) (data) (data) (data) (data) (data) (data) (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 exist.
> is a delimiter character indicating a valid command was
received.
? delimiter character indicating the command was invalid.
(data) is the input value in engineering units of a channel in the
interrogated module of the specified system. The (data) from all
channels is shown in sequence from 7 to
0. If (data) = “ “, it means the channel is invalid.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Specified Analog Data In
Syntax #aaSiCj(cr)
Programming
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate.
Si identifies the I/O slot you want to interrogate.
Cj identifies the channel you want to read.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSiER(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system. Si identi-
fies the I/O slot for which you wish to initialize all EEPROM data.
ER is Initialize all EEPROM data command.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Span Calibration
Syntax $aaSi0(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which is to be cali-
brated.
Si identifies the I/O slot which is to be calibrated.
0 represents the span calibration command.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSi1(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which is to be cali-
brated.
Si identifies the I/O slot which is to be calibrated.
1 represents the zero calibration command.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name CJC Status Command (ADAM-5018 only)
Syntax $aaSi3(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
Si identifies the I/O slot which contains the CJC Status you wish
to retrieve.
3 is CJC Status command.
(cr) is the terminating character, carriage return (0Dh)
Description Calibrates an analog input module to adjust for offset errors of its
CJC (Cold Junction Compensation) sensor
Syntax $aaSi9shhhh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
Si identifies the I/O slot 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.
hhhh is 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)
Programming
Sets data format in engineering units or
$aaSiAFFff Set Data Format two's complement for a specified ana-
log input module ina specified system
Returns the data format for a specified
$aaSiB Read Data Format analog input module ina specified sys-
tem
Enables/Disables multiplexing for sepa-
Enable/Disable Channels
$aaSi5mm rate channels of the specified input
for Multiplexing
module
Asks the specified input module to
$aaSi6 Read Channels Status
return the status of all channels
Returns the input value of all channels
for a specified analog input module of a
#aaSi All Analog Data In
specified system in currently configured
data format
Returns the input value of a specified
channel of a specified analog input
#aaSiCj Specified Analog Data In
module of a specified system in cur-
rently configured data format
Initializes all EEPROM data in a speci-
$aaSiER Initialize EEPROM Data fied analog input module to their default
values.
Calibrates a specified analog input
$aaSi0 Span Calibration
module to correct for gain errors
Calibrates a specified analog input
$aaSi1 Zero Calibration
module to correct for offset errors
Note! The command sets “ $aasi5mm, $aasi6, $aasi0, $aasi1” for ADAM-
5017H/5017UH are the same with ADAM-5017. Refer the preceding
pages to learn the detail.
Description Sets the input range for a specified channel of a specified analog
input module in a specified system.
Syntax $aaSiCjArrFF
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
SiCj identifies the slot i (i:0 to 7) of the ADAM-5000/ TCP system
and the channel j (j:0 to 7) of the ADAM-5017H/5017UH whose
range you want to set.
A represents the set input range command. rr represents the 2-
character hexadecimal code of the input range. (See Appendix
B)
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Read Input Range
Syntax $aaSiCjB
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
SiCj identifies the slot i (i:0 to 7) of the ADAM-5000/ TCP system
and the channel j (j:0 to 7) of the ADAM-5017H/5017UH module
you want to interrogate.
B represents the read input range command.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaSiAFFff
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
Si identifies the I/O slot of the ADAM-5000/TCP system contain-
ing the ADAM-5017H/5017UH module you want to configure.
AFF represents the set data format command. ff represents the
2-character hexadecimal code of the data format. 00 is for engi-
neering unit format. 02 is for two’s complement format.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Read Data Format
Description Returns the data format for a specified analog input module in a
specified system.
Syntax $aaSiB
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the I/O slot of the ADAM-5000/TCP system contain-
ing the ADAM-5017H/5017UH module you want to interrogate.
B represents the read data format command.
(cr) is the terminating character, carriage return (0Dh).
Description Returns the input value of all channels for a specified analog
input module of a specified system in engineering units or two’s
complement data format
Syntax #aaSi
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate.
Si identifies the I/O slot (i:0 to 7) of ADAM-5000/TCP system you
want to read.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Specified Analog Data In
Syntax #aaSiCj(cr)
Programming
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to configure.
Si identifies the I/O slot (i:0 to 7) of ADAM-5000/TCP system you
want to read.
Cj identifies the channel you want to read.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Set Alarm Mode
Description Sets the High/Low alarm of the specified input channel in the
addressed ADAM-5000/TCP system to either Latching or
Momentary mode.
Syntax $aaSiCjAhs(cr)
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of anADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7).
Ahs is the Set Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm mode and can have the value M = Momentary
mode, L = Latching mode
(cr) represents terminating character, carriage return (0Dh)
Description Returns the alarm mode for the specified channel in the speci-
fied ADAM-5000/TCP system.
Syntax $aaSiCjAh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7).
Ah is the Read Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Enable/Disable Alarm
Syntax $aaSiCjAhEs(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7). AhEs is the Set Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm enable/disable and can have the value E =
Enable, D = Disable
(cr) represents terminating character, carriage return (0Dh)
Description Sets the High/Low alarm to OFF (no alarm) for the specified
input channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjCh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7). Ch is the Clear Latch Alarm command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Connection
Syntax $aaSiCjAhCSkCn(cr)
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). AhC is the Set Alarm Connection com-
mand.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm SkCn identifies the desired slot k (k : 0 to 7) and the
desired digital output point n (n : 0 to F). To disconnect the digital
output, k and n should be set as ‘*’.
(cr) represents terminating character, carriage return (0Dh)
Syntax $aaSiCjRhC(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). RhC is the Read Alarm Connection
command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Limit
Description Sets the High/Low alarm limit value for the specified input chan-
nel of a specified ADAM-5000/TCP system.
Syntax $aaSiCjAhU(data)(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). AhU is the Set Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(data) represents the desired alarm limit setting. The format is
always in engineering units.
(cr) represents terminating character, carriage return (0Dh)
Description Returns the High/Low alarm limit value for the specified input
channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjRhU(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). RhU is the Read Alarm Limit com-
mand.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Status
Description Reads whether an alarm occurred for the specified input channel
in the specified ADAM-5000/TCP system
Syntax $aaSiCjS(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). S is the Read Alarm Status command.
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Mode
Description Sets the High/Low alarm of the specified input channel in the
addressed ADAM-5000/TCP system to either Latching or
Momentary mode.
Syntax $aaSiCjAhs(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/ TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7).
Ahs is the Set Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm mode and can have the value M = Momentary
mode, L = Latching mode
(cr) represents terminating character, carriage return (0Dh)
Description Returns the alarm mode for the specified channel in the speci-
fied ADAM-5000/TCP system.
Syntax $aaSiCjAh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7). Ah is the Read Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Enable/Disable Alarm
Syntax $aaSiCjAhEs(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7). AhEs is the Set Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm enable/disable and can have the value E =
Enable, D = Disable
(cr) represents terminating character, carriage return (0Dh)
Description Sets the High/Low alarm to OFF (no alarm) for the specified
input channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjCh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired chan-
nel j (j : 0 to 7). Ch is the Clear Latch Alarm command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Connection
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). AhC is the Set Alarm Connection com-
mand.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm SkCn identifies the desired slot k (k : 0 to 7) and the
desired digital output point n (n : 0 to F). To discon- nect the dig-
ital output, k and n should be set as ‘*’.
(cr) represents terminating character, carriage return (0Dh)
Syntax $aaSiCjRhC(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). RhC is the Read Alarm Connection
command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Limit
Description Sets the High/Low alarm limit value for the specified input chan-
nel of a specified ADAM-5000/TCP system.
Syntax $aaSiCjAhU(data)(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). AhU is the Set Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(data) represents the desired alarm limit setting. The format is
always in engineering units.
(cr) represents terminating character, carriage return (0Dh)
Description Returns the High/Low alarm limit value for the specified input
channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjRhU(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). RhU is the Read Alarm Limit com-
mand.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Status
Description Reads whether an alarm occurred for the specified input channel
in the specified ADAM-5000/TCP system
Syntax $aaSiCjS(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system.
SiCj identifies the desired slot i (i : 0 to 7) and the desired analog
input channel j (j : 0 to 7). S is the Read Alarm Status command.
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Configuration
Description Sets the output range, data format and slew rate for a specified
channel of a specified analog output module in a specified sys-
tem.
Syntax $aaSiCjArrff(cr)
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
SiCj identifies the I/O slot i (i : 0 to 7) and the channel j (j : 0 to 3)
of the module you want to configure. A is I/O module configura-
tion command. rr represents the 2-character hexadecimal code
of the output range. (See Appendix B)
ff is a hexadecimal number that equals the 8-bit parameter rep-
resenting the status of data format and slew rate. Bits 0 and 1
represent data format. The layout of the 8-bit parameter is
shown in Figure 6.4. The other bits are not used and are set to 0.
(cr) is the terminating character, carriage return (0Dh)
Figure 6.5 The other bits are not used and are set to 0.
Chapter 6
Name Configuration Status
Syntax $aaSiCjB(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
SiCj identifies the I/O slot i (i : 0 to 7) and the channel j (j: 0 to 3)
you want to read.
B is configuration status command.
(cr) is the terminating character, carriage return (0Dh)
Syntax #aaSiCj(data)(cr)
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system. SiCj iden-
tifies the I/O slot i (i : 0 to 7) and the channel j (j : 0 to 3) of the
analog output module that is to output an analog signal.
(data) is a digital value incoming to the module, which corre-
sponds to the desired analog output value (always in engineer-
ing units) to be output from the module. The analog value output
will depend on the module’s range configuration. (See also
Appendix B, Data Formats and I/O Ranges) (cr) is the terminat-
ing character, carriage return (0Dh)
Chapter 6
Name Start-Up Output Current/Voltage Configuration
Syntax $aaSiCj4(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system. SiCj identifies the I/O
slot i (i : 0 to 7) and the channel j (j: 0 to 3) of the module you
want to set.
4 is the Start-Up Output Current/Voltage Configuration com-
mand.
(cr) is the terminating character, carriage return (0Dh)
Name 4 mA Calibration
Syntax $aaSiCj0(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system. SiCj identifies the I/O
slot i (i : 0 to 7) and the channel j (j : 0 to 3) of the module you
want to calibrate.
0 is the 4 mA calibration command.
(cr) is the terminating character, carriage return (0Dh)
Note! Before issuing the 4 mA Calibration command, the analog output mod-
ule should be trimmed to the correct value using the Trim Calibration
command. Either a mA meter or a resistor and voltmeter should be con-
nected to the module’s output.
Chapter 6
Name 20 mA Calibration
Syntax $aaSiCj1(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system. SiCj identifies the I/O
slot i (i : 0 to 7) and the channel j (j : 0 to 3) of the module you
want to calibrate.
1 is the 20 mA calibration command.
(cr) is the terminating character, carriage return (0Dh)
Note! Before issuing the 20 mA Calibration command, the analog output mod-
ule should be trimmed to the correct value using the Trim Calibration
command. Either a mA meter or a resistor and voltmeter should be con-
nected to the module’s output.
Syntax $aaSiCj3hh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system. SiCj identifies the I/O
slot i (i : 0 to 7) and the channel j (j : 0 to 3) of the module you
want to calibrate.
3 is the trim calibration command.
hh 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 counts. Negative values decrease and
positive numbers increase the output current according to the
number of counts.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Last Value Readback
Description Returns either the last value sent to the specified channel by a
#aaSiCj(data) command, or the start-up output current/voltage.
Syntax $aaSiCj6(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system. SiCj iden-
tifies the I/O slot i (i : 0 to 7) and the channel j (j : 0 to 3) for the
module you want to return a prior value.
6 is the last value read-back command.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Digital Data In
Programming
Syntax $aaSi6(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
Si identifies the I/O slot of the system you want to read.
6 is the Digital Data In command.
(cr) is the terminating character, carriage return (0Dh)
Description This command either sets a single digital output channel or sets
all digital output channels simultaneously.
Syntax #aaSiBB(data)(cr)
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
Si identifies the slot i (i:0 to 7) of the ADAM-5000/TCP system
which contains the module whose output values you want to set.
BB is used to indicate which channel(s) either single or all will be
set. 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 num-
ber which can range from 0h to Fh. The ADAM-5055 can range
from 0h to 7h, the ADAM-5056 can range from 0h to Fh, and the
ADAM-5060/5068/5069 can range from 0h to 7h).
(data) is the hexadecimal representation of the digital output
value(s). When writing to a single channel (bit) the first char-
acter is always 0. The value of the second character is either 0
or 1. When writing to all channels (byte) 2 or 4-characters are
significant. The digital equivalent of these hexadecimal charac-
ters represent the channels’ values.
Note that the number of channels on the ADAM-5056 and
ADAM-5060/5068/5069 differ.
A 4-character hexadecimal value is used to set the channels,
from 15 thru 0, of the ADAM-5056. A 2 character hexadecimal
value is used to set the channels, from 5 thru 0, of the ADAM-
5060. Bits 6 and 7 always default to 0 in the ADAM-5060. A 2-
character hexadecimal value is used to set the channels, from 7
thru 0, of the ADAM-5055/5068/5069.
Chapter 6
response: >(cr) An output byte with value 1234h
(0001001000110100) is sent to the digital output module
(ADAM-5056) in slot 1 of the ADAM-5000/TCP system at
address 01h. Channels 2, 4, 5, 9 and 12 will be set to ON, and
all other channels are set to OFF.
command: #01S0003A(cr)
response: >(cr) An output byte with value 3Ah (00111011) is
sent to the digital output module (ADAM-5060) in slot 0 of the
ADAM-5000/TCP system at address 01h. Chan- nels 0, 1, 3, 4
Programming
and 5 will be set to ON while channel 2 is set to OFF.
Bits 6 and 7 are not used and always default to 0.
Note! If any channel of the digital output module is configured as the output for
an analog input alarm, it cannot be reconfigured via digital output com-
mands. Channels used for analog input alarms always have a higher pri-
ority.
$aaSiM
Description Asks the specified module to return the masking status of digital
output channels
Syntax $aaSiM(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
Si identifies the I/O slot of the system you want to read.
M is Channel Masking Status command.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read 5050 channel status
Syntax $AASi7(cr)
$ is a delimiter character.
AA (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000 system.
Si identifies the I/O slot i (i : 0 to 3).
7 is the command for the last value readback.
Chapter 6
Name Read Module Name
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate. T is the command for reading Module Name.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaF(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
F is the command for reading Firmware Version.
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Set Configuration
Syntax $aaSiArrff(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system you want to configure.
Si identifies the I/O slot i you want to configure. A is command
for setting I/O module configuration. rr indicates which mode is.
rr=00 represents Bi-direction counter mode.
rr=01 represents UP/DOWN counter mode.
rr=02 represents Frequency mode. ff indicates which format is
ff=00 represents the engineer format.
ff=02 represents the hexadecimal format.
Syntax $aaSiB(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the desired slot i
B represents the configuration status command
(cr) is the terminating character, carriage return (0Dh).
Chapter 6
Name Read All Channel Counter (Frequency) Data
Description Return the input value of all channels for the specified
input module for a specified system in engineering
unit only.
Syntax #aaSi(cr)
Programming
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate. Si is the I/O slot of ADAM-5000 system you want
to read.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read One Channel Counter (Frequency) Data
Description The command will return the input value from one of the four
channels of a specified module.
Syntax #aaSiCj(cr)
# is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus address of the ADAM-5000/TCP system you want to interro-
gate.
Si identifies the I/O slot you want to interrogate.
Cj identifies the channel you want to read.
(cr) is the terminating character, carriage return (0Dh)
Description Set the filter seconds to start to measure the input signal.
Syntax $aaSi0(data)(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which is to be calibrate.
Si identifies the specified slot.
0 is the command for setting digital filter scale.
(data) represents filter seconds from 8μs~65000 μs. Be aware
that (data) has 5 characters.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read Digital filter scale
Description Read the filter seconds to start to measure the input signal.
Syntax $aaSi0(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system which is to be calibrate.
Si identifies the I/O slot which is to be accessed.
0 is the command for reading digital filter scale.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSiCj5s(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j of the module you
want to set.
5 is the command for setting counter Start/Stop.
s represents start/stop command. s=0 indicate stop counter. s=1
indicate start counter.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read counter Start/Stop
Syntax $aaSiCj5(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j of the module you
want to set.
5 is the command for reading counter Start/Stop.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSiCj6(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system. SiCj iden-
tifies the I/O slot i and the channel j for the module you want to
return a prior value.
6 is the command for clearing counter.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read Overflow Flag
Description The command requests the addressed module to return the sta-
tus of the overflow flag of counter.
Syntax $aaSi7(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
Si identifies the I/O slot i (i : 0 to 7).
7 is the command for the last value read-back.
Note! When this command is issued, the overflow value is cleared and starts
afresh.
Description Set initial counter value for counter of the specified counter mod-
ule.
Syntax @aaSiCjP(data)(cr)
@ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j for the module you
want to return a prior value. P represents Set Initial Counter
Value command.
(data) is initial value from 0 to 4294967296. Be aware that (data)
has 10 characters.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Read Initial Counter
Syntax @aaSiCjG(cr)
@ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j for the module you
want to return a prior value. G is the last value readback com-
mand.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSiCjAhEs(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j. AhEs is the
command for setting Alarm Disable/Latch Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm enable/disable and can have the value D =
Disable, E=Enable
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Disable/Latch
Syntax $aaSiCjAh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
Programming
bus network address of an ADAM-5000/TCP system. SiCj identi-
fies the desired slot i and the desired channel j.
A is the Read Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Syntax $aaSiCjCh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Modbus network address of an ADAM-5000/
TCP system. SiCj identifies the desired slot i and the
desired channel j.
C is the clear Alarm Mode command. h indicates
alarm type and can have the value H = High alarm,
L = Low alarm
(cr) represents terminating character, carriage return
(0Dh)
Chapter 6
Name Set Alarm Connection
Description Connect the High/Low alarm of the specified input channel to the
specified digital output in the addressed ADAM-5000/TCP sys-
tem
Syntax $aaSiCjAhCSkCn(cr)
Programming
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j .
AhC is the command for setting Alarm Connection command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
SkCn identifies the desired slot k and the desired digital output
point n (n : 0 to F). To disconnect the digital output, k and n
should be set as ‘*’.
(cr) represents terminating character, carriage return (0Dh)
Syntax $aaSiCjRhC(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j. RhC is the
command for reading Alarm Connection. h indicates alarm type
and can have the value H = High alarm, L = Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Limit
Description Set the High/Low alarm limit value for the specified input chan-
nel of a specified ADAM-5000/TCP system.
Syntax $aaSiCjAhU(data)(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj identi-
fies the desired slot i and the desired channel j.
AhU is the Set Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(data) represents the desired alarm limit setting. The value is
from 0 to 4294967295. Be aware that (data) has 10 characters.
(cr) represents terminating character, carriage return (0Dh)
Description Return the High/Low alarm limit value for the specified input
channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjRhU(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j.
RhU is the Read Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Status
Description Read whether an alarm occurred for the specified input channel
in the specified ADAM-5000/TCP system
Syntax $aaSiCjS(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j.
S is the Read Alarm Status command.
(cr) represents terminating character, carriage return (0Dh)
$AAXdddd
Syntax $AAXdddd(cr)
dddd is the WDT timeout value in
engineering units. (seconds)
Chapter 6
Description Get WDT timeout value
Syntax $AAXR(cr)
dddd is the WDT timeout value in engineering units. (seconds)
Programming
Example Command: $01XR
Response: !011234
$AAXEWmm
Syntax $AAXEWmm(cr)
mm indicates a 2-character hexadecimal value representing the
WDT timeout slot enable mask of the ADAM-5000.
Syntax $AAXER(cr)
mm indicates a 2-character hexadecimal value representing the
WDT timeout slot enable mask of the ADAM-5000.
$AAXSiDmmmm
Syntax $AAXSiDmmmm(cr)
mmmm indicates a 4-character hexadecimal value representing
the WDT timeout channel enable mask of the DIO module.
Programming
tion of slot
Returns the input value of all channels
Read All Channel Counter
#aaSi for the specified input module for a spec-
(Frequency) Data
ified system in engineering unit only.
The command will return the input value
Read One Channel
#aaSiCj from one of the four channels of a speci-
Counter (Frequency) Data
fied module.
Set the filter seconds to start to measure
$aaSiØ(data) Set Digital filter Scale
the input signal.
Read the filter seconds to start to mea-
$aaSiØ Read Digital filter scale
sure the input signal
Request the addressed counter/fre-
$aaSiCj5s Set Counter Start/Stop quency module to start or stop the count-
ing.
Clear the counters of the specified
$aaSiCj6 Clear Counter
counter/frequency module
The command requests the addressed
$aaSi7 Read Overflow Flag module to return the status of the over-
flow flag of counter.
Set initial counter value for counter of
@aaSiCjP(data) Set Initial Counter Value
the specified counter module.
Read initial of the specified counter mod-
@aaSiCjG Read Counter Initial Value
ule.
The addressed counter module is
$aaSiCjAhEs Set Alarm Disable/Latch
instructed to set alarm disable or latch.
Returns the alarm mode for the specified
$aaSiCjAh Read Alarm Disable/Latch
channel.
$aaSiCjCh Clear Alarm Status Returns the alarm status to normal
Connects the High/Low alarm of the
specified input channel to the specified
$aaSiCjAhCSkCn Set Alarm Connection
digital output in the addressed ADAM-
5000 system
Returns the High/Low alarm limit output
$aaSiCjRhC Read Alarm Connection connection of a specified input channel
in the addressed ADAM-5000 system
Sets the High/Low alarm limit value for
$aaSiCjAhU (data) Set Alarm Limit the specified input channel of a specified
ADAM-5000 system.
Returns the High/Low alarm limit value
$aaSiCjRhU Read Alarm Limit for the specified input channel in the
addressed ADAM-5000 system
Reads whether an alarm occurred for
$aaSiCjS Read Alarm Status the specified input channel in the speci-
fied ADAM-5000 system
Chapter 6
Name Read Firmware Version
Syntax $aaF(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to interrogate.
F is the command for reading Firmware Version.
(cr) is the terminating character, carriage return (0Dh).
Syntax $aaSiArrff(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system you want to configure.
Si identifies the I/O slot i you want to configure. A is command
for setting I/O module configuration. rr indicates which mode is.
rr=00 represents Bi-direction counter mode.
rr=01 represents UP/DOWN counter mode.
rr=02 represents Frequency mode. ff indicates which format is
ff=00 represents the engineer format.
ff=02 represents the hexadecimal format.
Chapter 6
Name Read Configuration.
Syntax $aaSiB(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system you want to interrogate.
Si identifies the desired slot i
B represents the configuration status command
(cr) is the terminating character, carriage return (0Dh).
Description Return the input value of all channels for the specified
input module for a specified system in engineering
unit only.
Syntax #aaSi(cr)
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system you want
to interrogate. Si is the I/O slot of ADAM-5000 system you want
to read.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
As all 4 values are concatenated into one numerical string such
as above, we can still easily discern the values of 4 channels
specifically as:
0000098700,0000064900,0000076200,0000011600
What you see here is actually the input values of all channels
returned from slot 2 of the ADAM-5000/TCP system at address
01h and in decimal format. However, it is not the actual fre-
quency.
Each actual frequency can be obtained by dividing the response
Programming
value by 100. Therefore, taking an ex- ample of the value above,
the actual frequency should be:
actual frequency = 98700/100 = 987
If the response is:
>0000F1000002000000031000000DD400(cr)
The command requests the module in slot 2 of the ADAM-5000/
TCP system at address 01h to return the input values of all
channels. The module response that input values if all chan-
nels are hexadecimal:
0000F100,00020000,00031000,000DD400
The actual frequency can be obtained by transferring hexadeci-
mal format to decimal format. Then divide the response value by
100. Therefore, taking an example of the value above, the actual
frequency should be:
F100 (hexdecimal)=24100 (decimal)
actual frequency = 24100/100 = 241
Description The command will return the input value from one of the four
channels of a specified module.
Syntax #aaSiCj(cr)
# is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus address of the ADAM-5000/TCP system you want to interro-
gate.
Si identifies the I/O slot you want to interrogate.
Cj identifies the channel you want to read.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Set Digital filter Scale
Description Set the filter seconds to start to measure the input signal.
Syntax $aaSi0(data)(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
address of the ADAM-5000/TCP system which is to be calibrate.
Si identifies the specified slot.
0 is the command for setting digital filter scale.
(data) represents filter seconds from 8μs~65000 μs. Be aware
that (data) has 5 characters.
(cr) is the terminating character, carriage return (0Dh)
Description Read the filter seconds to start to measure the input signal.
Syntax $aaSi0(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system which is to be calibrate.
Si identifies the I/O slot which is to be accessed.
0 is the command for reading digital filter scale.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Set Counter Start/Stop
Syntax $aaSiCj5s(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j of the module you
want to set.
5 is the command for setting counter Start/Stop.
s represents start/stop command. s=0 indicate stop counter. s=1
indicate start counter.
(cr) is the terminating character, carriage return (0Dh)
Syntax $aaSiCj5(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j of the module you
want to set.
5 is the command for reading counter Start/Stop.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Clear Counter
Syntax $aaSiCj6(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
Programming
bus network address of the ADAM-5000/TCP system. SiCj iden-
tifies the I/O slot i and the channel j for the module you want to
return a prior value.
6 is the command for clearing counter.
(cr) is the terminating character, carriage return (0Dh)
Description The command requests the addressed module to return the sta-
tus of the overflow flag of counter.
Syntax $aaSi7(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of the ADAM-5000/TCP system.
Si identifies the I/O slot i (i : 0 to 7).
7 is the command for the last value read-back.
Note! When this command is issued, the overflow value is cleared and starts
afresh.
Chapter 6
Name Set Initial Counter Value
Description Set initial counter value for counter of the specified counter mod-
ule.
Syntax @aaSiCjP(data)(cr)
@ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j for the module you
want to return a prior value. P represents Set Initial Counter
Value command.
(data) is initial value from 0 to 4294967296. Be aware that (data)
has 10 characters.
(cr) is the terminating character, carriage return (0Dh)
Syntax @aaSiCjG(cr)
@ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
address of the ADAM-5000/TCP system.
SiCj identifies the I/O slot i and the channel j for the module you
want to return a prior value. G is the last value readback com-
mand.
(cr) is the terminating character, carriage return (0Dh)
Chapter 6
Name Set Alarm Disable/Latch
Syntax $aaSiCjAhEs(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j. AhEs is the
command for setting Alarm Disable/Latch Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
s indicates alarm enable/disable and can have the value D =
Disable, E=Enable
(cr) represents terminating character, carriage return (0Dh)
Syntax $aaSiCjAh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj identi-
fies the desired slot i and the desired channel j.
A is the Read Alarm Mode command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Clear Alarm Status
Syntax $aaSiCjCh(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal
Programming
Modbus network address of an ADAM-5000/
TCP system. SiCj identifies the desired slot i and the
desired channel j.
C is the clear Alarm Mode command. h indicates
alarm type and can have the value H = High alarm,
L = Low alarm
(cr) represents terminating character, carriage return
(0Dh)
Description Connect the High/Low alarm of the specified input channel to the
specified digital output in the addressed ADAM-5000/TCP sys-
tem
Syntax $aaSiCjAhCSkCn(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j .
AhC is the command for setting Alarm Connection command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
SkCn identifies the desired slot k and the desired digital output
point n (n : 0 to F). To disconnect the digital output, k and n
should be set as ‘*’.
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Connection
Syntax $aaSiCjRhC(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j. RhC is the
command for reading Alarm Connection. h indicates alarm type
and can have the value H = High alarm, L = Low alarm
(cr) represents terminating character, carriage return (0Dh)
Description Set the High/Low alarm limit value for the specified input chan-
nel of a specified ADAM-5000/TCP system.
Syntax $aaSiCjAhU(data)(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj identi-
fies the desired slot i and the desired channel j.
AhU is the Set Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(data) represents the desired alarm limit setting. The value is
from 0 to 4294967295. Be aware that (data) has 10 characters.
(cr) represents terminating character, carriage return (0Dh)
Chapter 6
Name Read Alarm Limit
Description Return the High/Low alarm limit value for the specified input
channel in the addressed ADAM-5000/TCP system
Syntax $aaSiCjRhU(cr)
$ is a delimiter character.
Programming
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j.
RhU is the Read Alarm Limit command.
h indicates alarm type and can have the value H = High alarm, L
= Low alarm
(cr) represents terminating character, carriage return (0Dh)
Description Read whether an alarm occurred for the specified input channel
in the specified ADAM-5000/TCP system
Syntax $aaSiCjS(cr)
$ is a delimiter character.
aa (range 00-FF) represents the 2-character hexadecimal Mod-
bus network address of an ADAM-5000/TCP system. SiCj iden-
tifies the desired slot i and the desired channel j.
S is the Read Alarm Status command.
(cr) represents terminating character, carriage return (0Dh)
Step 1: Asking questions and getting answers for your control strategy.
1. What will be monitored and controlled? (List the equipment)
2. What will be monitored and controlled separately? (Divide the function area)
3. What will be monitored and controlled by ADAM-5000/TCP? (List the target
equipment in different function areas)
Step 2: Identify the I/O types of each equipment and full-fill Table A-1 to establish the
I/O data base
Example 1
The input value is -2.65 V and the corresponding analog input module is configured
for a range of ±5 V. The response to the Analog Data In command is:
-2.6500(cr)
Example 2
The input value is 305.5ºC. The analog input module is configured for a Type J ther-
mocouple whose range is 0ºC to 760ºC. The response to the Analog Data In com-
mand is:
+305.50(cr)
Example 3
The input value is +5.653 V. The analog input module is configured for a range of ±5
V range. When the engineering units format is used, the ADAM Series analog input
modules are configured so that they automatically provide an over range capability.
The response to the Analog Data In command in this case is:
+5.6530(cr)
C.1 Grounding
C.1.1 The ‘Earth’ for reference
As you know, the EARTH cannot be conductivC. However, all buildings lie on, or in,
the EARTH. Steel, concrete and associated cables (such as lighting arresters) and
power system were connected to EARTH. Think of them as resistors. All of those
infinite parallel resistors make the EARTH as a single reference point.
Grounding is one of the most important issues for our system. Just like Frame
Ground of the computer, this signal offers a reference point of the electronic circuit
inside the computer. If we want to communicate with this computer, both Signal
Ground and Frame Ground should be connected to make a reference point of each
other’s electronic circuit. Generally speaking, it is necessary to install an individual
grounding bar for each system, such as computer networks, power systems, tele-
communication networks, etc. Those individual grounding bars not only provide the
individual reference point, but also make the earth a our ground!
Ground-pin is longer than others, for first contact to power system and noise
bypass.
Neutral-pin is broader than LivC-pin, for reducing contact impedancC.
C.2 Shielding
C.2.1 Cable Shield
Single isolated cable The diagram shows the structure of an isolated cablC. You
see the isolated layer which is spiraled Aluminum foil to cover the wires. This
spiraled structure makes a layer for shielding the cables from external noisC.
Never strip too much of the plastic cable cover. This is improper and can destroy
the characteristics of the shielded-twisted-pair cable. Besides, the bare wire
shield easily conducts the noise.
Cascade these shields together by soldering. Refer to following pages for fur-
ther detailed explanation.
Connect the shield to Frame Ground of DC power supply to force the conducted
noise to flow to the frame ground of the DC power supply.
(The ‘frame ground’ of the DC power supply should be connected to the system
ground)
The characteristic of the cable Don’t strip off too much insulation for soldering.
This could change the effectiveness of the Shielded-Twisted-Pair cable and
open a path to introduce unwanted noise.
Shield connection (2) The previous diagram shows you that the fill soldering just
makes an easier way for the signal.