Before installing or starting this unit for the first time, this
manual should be studied carefully to obtain a working
knowledge of the unit and/or the duties to be performed while
operating and maintaining the unit.
RETAIN THIS MANUAL WITH UNIT. This Technical
manual contains IMPORTANT SAFETY DATA and should
be kept with the unit at all times.
More Than Air Answers.
Online answers: http://www.air.irco.com
Ingersoll Rand
System Automation
VSD Box MODBUS RTU
User’s Manual
C.C.N. : 80445000
REV. A
DATE: JUNE 2008
TABLE OF CONTENTS
INTRODUCTION 3
SAFETY PRECAUTIONS 3
MODBUS RTU 5
1. MODBUS Table(s) 5
2. General 5
3. Communication Link 5
4. RS485 Serial Data Format 5
5. Message Data Format 5
6. Slave Response Timeout 7
7. Message Answer from Slave to Master 7
8. Exception Response 7
9. Troubleshooting 8
MODBUS Tables 9
1. Table Item Format 9
2. Name and Function 9
3. Coding 9
4. Menu Reference 10
5. ‘Adv’ Advise Function 10
6. ‘Adv’ Advise Function – Single Item Format Option 10
7. ‘Cmd’ Command Function 12
8. ‘Get’ Function 12
9. ‘Set’ Function 13
10. Data Coding Definitions 13
MODBUS: X-Series Air Systems 16
1. General X-Series System Components 16
2. X-Series System Network Addresses 17
3. Communication Link 17
4. MODBUS Timing 17
5. RS485 Serial Data Format 17
MODBUS RTU Definitions For VSD Box 18
2
INTRODUCTION
System MODBUS Gateway communication is RS485, RTU, Master-Slave configuration. The Gateway acts as a transparent
interface to enable a remote ‘master’ device to be able to communicate with the X-Series Units and the Intellisys Controllers
via the ir485 network ‘slave’ device(s). The MODBUS RTU data construction and formatting for a ‘master’ device is the subject
of this document. This information is intended for a systems integrator to facilitate set-up of a ‘master’ device in order to
communicate successfully with the X-Series Units and the Intellisys Controllers throug h a System Modbus Gateway.
SAFETY PRECAUTIONS
WARNING :
!
WARNING :
WARNING :
!
WARNING :
•Before installing or operating the
SYSTEM MODBUS GATEWAY (SMG)
BOX, take time to carefully read all the
instructions contained in this manual, all
compressor manuals, and all manuals
of any other peripheral devices that may
be installed or connected to the unit.
•Electricity and compressed air have the
potential to cause severe personal injury
or property damage.
•The operator should use common sense
and good working practices while
operating and maintaining this system.
All applicable codes should be strictly
adhered to.
•Maintenance must be performed by
adequately qualified personnel that are
equipped with the proper tools.
INSTALLATION
•Installation work must only be carried
out by a competent person under
qualified supervision.
•A fused isolation switch must be fitted
between the main power supply and the
SYSTEM MODBUS GATEWAY (SMG)
BOX.
•The SYSTEM MODBUS GATEWAY
(SMG) BOX should be mounted in such
a location as to allow operational and
maintenance access without obstruction
or hazard and to allow clear visibility of
indicators at all times.
•If raised platforms are required to
provide access to the SYSTEM
MODBUS GATEWAY (SMG) BOX,
they must not interfere with normal
operation or obstruct access. Platforms
and stairs should be of grid or plate
construction with safety rails on all open
sides.
Risk of Danger
Risk of Electric Shock
Risk of High Pressure
Consult Manual
OPERATION
•The SYSTEM MODBUS GATEWAY
(SMG) BOX must only be operated by
competent personnel under qualified
supervision.
•Never remove or tamper with safety
devices, guards or insulation materials
fitted to the SYSTEM MODBUS
GATEWAY (SMG) BOX.
•The SYSTEM MODBUS GATEWAY
(SMG) BOX must only be operated at
the supply voltage and frequency for
which it is designed.
•When main power is switched on, lethal
voltages are present in the electrical
circuits and extreme caution must be
exercised whenever it is necessary to
carry out any work on the unit.
•Do not open access panels or touch
electrical components while voltage is
applied unless it is necessary for
measurements, tests or adjustments.
Such work should be carried out only by
a qualified electrician equipped with the
correct tools and wearing appropriate
protection against electrical hazards.
•All air compressors and/or other
equipment connected to the unit should
have a warning sign attached stating
“THIS UNIT MAY START WITHOUT
WARNING” next to the display panel.
•If an air compressor and/or other
equipment connected to the unit is to be
started remotely, attach two warning
signs to the equipment stating “THIS
UNIT CAN BE STARTED REMOTELY”.
Attach one sign in a prominent location
on the outside of the equipment, and the
other sign inside the equipment control
compartment.
3
MAINTENANCE AND REPAIR
•Maintenance, repairs or modifications
must only be carried out by competent
personnel under qualified supervision.
•If replacement parts are required, use
only genuine parts from the original
equipment manufacturer, or an
alternative approved source.
•Carry out the following operations
before opening or removing any access
panels or carrying out any work on the
SYSTEM MODBUS GATEWAY (SMG)
BOX:
i. Isolate the SYSTEM MODBUS
GATEWAY (SMG) BOX from
the main electrical power
supply. Lock the isolator in the
“OFF” position and remove the
fuses.
ii. Attach labels to the isolator
switch and to the unit stating
“WORK IN PROGRESS - DO
NOT APPLY VOLTAGE”. Do
not switch on electrical power
or attempt to start the SYSTEM
MODBUS GATEWAY (SMG)
BOX if such a warning label is
attached.
•Make sure that all instructions
concerning operation and maintenance
are strictly followed and that the
complete unit, with all accessories and
safety devices, is kept in good working
order.
•The accuracy of sensor devices must be
checked on a regular basis. They must
be calibrated when acceptable
tolerances are exceeded. Always
ensure any pressure within the
compressed air system is safely vented
to atmosphere before attempting to
remove or install a sensor device.
•The SYSTEM MODBUS GATEWAY
(SMG) BOX must only be cleaned with
a damp cloth, using mild detergents if
necessary. Avoid the use of any
substances containing corrosive acids
or alkalis.
•Do not paint the control faceplate or
obscure any indicators, controls,
instructions or warnings.
•
4
MODBUS RTU
1. MODBUS Table(s)
This document discusses generic MODBUS communications and how to implement the software specific ‘MODBUS Table’
information. MODBUS communication formatting may differ from controller to controller and you may require more than one
‘MODBUS Table’.
Always check the software variant identification and version number for a controller or unit with the variant and version of the
‘MODBUS Table’ supplied. In some instances the information contained in a ‘MODBUS Table’ may not be applicabl e to a
controller or unit installed with the same software variant but a different version number.
2. General
MODBUS RTU (Remote Terminal Unit) is a master-slave type protocol. An X-Series Automation System Controller or
Intellisys Controller functions as the slave device. Information requests or commands are communicated from master to slave
only through a System Modbus Gateway Box (SMG). The SMG Box will always respond to communications from a remote
master device in accordance with the MODBUS RTU protocol standard.
The MODBUS protocol is used to communicate with personal computers (PC), Programmable Logic Controllers
(PLC’s), or Distributed Control Systems (DCS) over the Network port. The SMG Box only responds to three MODBUS
commands, Read Holding Register 03 (03 Hex), Preset Single Register 06 (06 Hex), and Preset Multiple Registers command
16 (10 Hex) (See Modicon MODBUS Protocol Reference Guide, PI-MBUS-300 Rev. J, for more details on MODBUS).
3. Communication Link
MODBUS is implemented using a two-wire RS485 industry standard communications link operating in master-slave mode.
Polarity of the two RS485 wires (L1+ and L2-) is important; reversal will disrupt communications.
4. RS485 Serial Data Format
The RS485 MODBUS port is a 2-wire operating with an asynchronous serial data format: 1 start bit / 8 data bits / 1 stop / no
parity (1,8,1,N) - transmitted at 9600 baud.
5. Message Data Format
The bytes of the MODBUS RTU message must be sent in one message package. The RTU protocol allows for a maximum
pause of 1.5 byte-times between 2 consecutive bytes of a message.
A pause longer than 1.5 byte-times will render the message invalid and it will be ignored.
Message data format is dependant on function and will consist of a combination of the following elements:
1) Destination address (slave network address)
2) Function Code
3) Data start address (slave register start address)
4) Number of registers, number of bytes of data
5) Message data
6) CRC checksum
5.1 Message Destination Address
The ‘destination address’ must be correct for the ‘slave’ controller device for which the message is inten ded. An address can
be from 01Hex to EFHex. The SMG Box is transparent and addresses must be for the destination ‘slave’ controller or unit.
Each controller or unit must be set with a unique address.
5.2 Message Function Codes
Numbe r of
Registers
CRC Check SumSlave Address Function CodeStar t Address
010340 0600 0230 CA
The message function code defines the required data processing operation of the slave controller. Although several types of
message function codes are defined by the MODBUS standard, only the message function code types working directl y with
registers are implemented on controller units:
03H Read Holding Register(s) – Get (Get Data) or Adv (Advise Data) (X-Series) and Read (Intellisys)
06H Preset Single Register - Write (Intellisys Only)
10H Preset Multiple Registers – Set (Set Data) or Cmd (Command Instruction) (X-Series only)
Any other message function code type will result in an EXCEPTION response.
5
5.3 Message Data Start Address
Numbe r of
Registers
CRC Check SumSlave AddressFun cti on CodeStart Address
010340 0600 0230 CA
The message data start address (16bit word) designates the initial register address location in the contr oller from which the
data is processed. Start address information is contained in the ‘MODBUS Table’.
Note: high-byte transmitted first followed by low-byte.
5.4 Message Data
The message data content depends on the message function code type.
03H Read Holding Register(s) – Get (Get Data), Adv (Advise Data) (X-Series) or Read (Intellisys)
Numbe r of
Registers
010340 0600 0230 CA
CRC Check SumSlave AddressFun cti on CodeStart Address
Slave address + function code ’03 Hex’ + start address of registers in slave memory + 16bit integer value that determine s the
size (in 16bit ‘word’ registers) of the message data being requested (00 02 = 2 registers of data). This is the number o f 16bit
registers to read. A maximum of 32 registers can be read at one time. This information is contained in the ‘MODBUS Table’.
06H Preset Single Register - Write (Intellisys Only)
DATA
byte 0 byte 1
010600 6F00 5FFE BC
CRC Check SumSlave Address Function CodeStar t Address
Slave address + function code ’06 Hex’ + start address of register(s) in slave memory to be set then the ‘data’ itself. This
information is contained in the ‘MODBUS Table’.
10H Preset Multiple Registers – Set (Set Data) or Cmd (Command Instruction) (X-Series onl y)
Numbe r of
Registers To Be
Set
Number of Bytes
of Da t a
DATA
1st Register byte
0 byte 1
DATA
2nd Register
byte 2 byte 3
CRC Check Su mSlave AddressF unction CodeStart Address
011040 1800 020400 001B 5F88 0E
Slave address + function code ’10 Hex’ + start address of register(s) in slave memory to be set + 16bit (integer valve of the
number of registers to be set) + 8bit ‘byte’ (integer value for the number of following data bytes) then the ‘data’ itself. This
information is contained in the ‘MODBUS Table’.
Note: A function ’10 Hex’ Set message also requires an additional byte defining the number of ‘data’ bytes in the data
message. This will always be the number of ‘registers’ multiplied by 2 as each ‘data’ register consists of 2 bytes (if number of
‘data’ registers = 2 then number of ‘data’ bytes = 4).
5.5 Message CRC Checksum
Numbe r of
Registers
010340 0600 0230 CA
CRC Check SumSlave Address Function CodeStar t Address
The CRC (Cyclical Redundancy Check) is a check-sum generated by means of ‘A001H polynomial’.
The CRC is two bytes containing a 16-bit binary value (word). The CRC value is calculated by the transmitting device that
appends the CRC to the end of the message. The receiving device recalculates the CRC value prior to processing of a
received message and compares the result to the actual CRC value appended to the message. If the two values do not match
the message is regarded as invalid. The CRC is initiated by first preloading a 16bit register to all 1's (FFFF Hex). Then a
process begins of applying each consecutive 8bit byte of the message to the register contents using an exclusive ‘OR’
calculation. The result is shifted one bit in the direction of the least significant bit (LSB), with the most significant bit (MSB) set
at ‘0’. The LSB is then examined; if ‘1’ the register content is applied to the polynomial value ‘A001’ Hex (1010 0000 0000
0001) using an exclusive ‘OR’ calculation - if ‘0’ no exclusive OR takes place. This process is repeated until eight ‘bit’ shifts
have been performed. After the eighth bit shift, the next 8bit message byte is applied to the register contents using an
exclusive ‘OR’ calculation. The bit shift and re-calculation process is then repeated again. When all message bytes have been
processed the final content of the 16bit register is the message CRC value.
Only the 8bits of ‘data’ in each message character is used for generating the CRC; start, stop and parity bits are ignored.
Note: When the 16bit CRC value is appended to a message, the low order byte must be transmitted first followed by the high
order byte. An incorrect or byte reversed check sum will render the message invalid and it will be ignored.
6
6. Slave Response Timeout
A slave controller may not answer immediately. Ensure the ‘slave timeout’ setting of the ‘master’ device is set to a value no
less than 500ms. If the ‘slave’ device fails to receive a valid message due to a communication disruption, parity error, CRC
error or other reasons, no response is given and the master must process a timeout condition in this instance. If the ‘slave’
receives a valid message that cannot be processed an exception response will be returned.
7. Message Answer From Slave to Master
The format of the ‘slave’ controller answer is similar to the original master request format; the message data content depends
on the message function code type.
The ‘address’ and ‘code’ of the slave answer is identical to the original request message; the address is the ‘slave’ device
address and the ‘code’ is a repeat of received function code type from the master. The remainder of the message is
dependant on the requested function code type. The CRC checksum is re-calculated for the answer message character s
using the specified CRC process.
3) bytes of data 1byte (number of bytes in ‘data’ ans wer)
4) data (high byte of each register transmitted first)
5) CRC checksum 2bytes (low byte first followed by high byte)
06Hex - Preset Single Register: write to single register
Slave Address Function CodeStart Address
010600 6F00 5FFE BC
DATA
byte 0 byte 1
CRC Check Sum
1) slave address 1byte
2) function code 1byte
3) bytes of data 1byte (number of bytes in ‘data’ ans wer)
4) data (high byte of each register transmitted first)
5) CRC checksum 2bytes (low byte first followed by high byte)
10H Preset Multiple Registers – Set (Set Data) or Cmd (Command Instruction) (X-Series onl y)
Number of
Registers
011040 1800 02D4 0F
CRC Check SumSlave AddressFuncti on CodeStart Address
1) slave address 1byte
2) function code 1byte
3) number of registers set 2 bytes
4) CRC checksum 2 Bytes (low byte first followed by high byte)
8. Exception Response
If the ‘slave’ device receives a request that cannot be processed an ‘exception response’ is given. An exception response
message consists of the following elements:
2) Function Code (1 byte): In a normal response, the slave repeats the function code of the original master request. All
function codes have an MSB (most significant bit) of 0 (values are all below 80 hexadecimal). In an exception response,
the slave sets the MSB of the function ‘code’ to 1. This makes the ‘code’ value 80 Hex greater than the received ‘code’
value from the master.
3) Data (1 byte): The ‘data’ response will contain a ‘1 byte’ value exception code.
4) CRC Checksum (2 byte).
CRC Check SumSlave Address Function CodeError Code
0190044D C3
7
Exception Codes:
01H Illegal Function Code
The requested ‘code’ function is not supported.
02H Illegal Data Address
The requested ‘data start address’ is not supported.
03H Illegal Data Value
The requested ‘data’ value is not supported.
04H Function Error
The slave cannot execute the request or the request type is inhibited.
9. Troubleshooting
Problem: No ‘slave’ response or corrupt MODBUS message
Solution: Check that the ‘slave’ controller is set for the anticipated slave address
Check that all ‘slave’ c ontrollers are set with a unique system address
Check that the controller is set for MODBUS RTU mode (if applicable)
Check that the ‘master’ is operating in MODBUS RTU mode
Check that the ‘master’ baud r ate, parity bit and number of stop bits are correct
Check that the ‘master ‘response timeout is set for a minimum of 500ms
Check that the ‘master’ is implementing the specified CRC check sum process
Check RS485 wiring polarity and security of connections
Problem: Last character of MODBUS message is corrupted
Solution: Add a delay of 2ms after last character received before relea s ing RTS signal
Problem: The MODBUS master message is reflected in the slave answer
Solution: Inhibit RX/TX echo on ‘master’ device communicati ons port
8
MODBUS Tables X-Series
A ‘MODBUS table’ describes the “items” used to access information in the memory registers of different types of controller, or
similar controllers using different application software variants or versions. The MODBUS Table will contain the vali d message
items (“Name”) together with the Function Code (Function), Register Start Address (“Register Address”), Register Size
(“Register Length”) and a definition for coding and decoding the item data (“Coding”). A ‘MODBUS Table’ order form, detailing
the required order information, can be found on the last page of this document.
1. Table Item Format
Each ‘item’ of a ‘MODBUS Table’ will define the massage format to read or set the information contained in the slave
controller register(s):-
Name
Descriptive ‘name’ or ‘item tag’ for the data item. The ‘Name’ is not used in code or message
formatting and serves only as a reference for the defined item.
Function
The Hex code required that instructs the slave (Intellisys controller) to perform a GET, ADV
(Advise), CMD (command) or SET function.
Register Address
Register Length
Coding
Menu
The slave controller register start address for the defined processing function.
The number of registers to be processed.
How to construct or interpret the data elements of a message.
Controller menu item reference.
Note: see “MODBUS RTU” for a detailed description of ‘Function’, ‘Register Address’ and ‘Register Length’ formats.
2. Name and Function
The ‘name’ for each table item will always start with 3 characters that describe the function type:
Adv Advise Function (03Hex) – same format as a Get function, see ‘Advise Function’.
Get Read from register (03Hex)
Set Write to register (10Hex)
Cmd Command (10Hex) – same format as a Set function; will instruct the slave to perform a defined action or
process
3. Coding
Item coding definitions specify the ‘number of data bytes’ and the ‘data conversion type’. In some instances a data message
may contain multiple sets of data items; an ‘Advise’ message for example. In this instance the ‘start location of data’ within the
message is also specified to enable extraction of the required data item from the entire message data.
Number of data bytes:
This specifies the length of the item data in bytes (6 = 6 bytes (3 registers) of data)
Start location of data bytes:
Number of Data
Bytes to Follow
DATA
1st Register byte
0 byte 1
DATA
2nd Register
byte 2 byte 3
DATA
3rd Register byte
4 byte 5
CRC Check SumSlave Address Function Code
01030609 0000 6500 A830 4D
If a data message consists of more than one set of data items (multiple item data message) the ‘start location’ specifies where
the first byte of the data associated with in item begins. If, for example, a 6 byte (3 register) answer is returned that consists of
three different ‘2 byte’ item data values, a ‘start location of data bytes’ = ‘2’ indicates that the item data starts with the 3rd byte
(byte 2) of the data message. The 1st byte of a data message is regarded as byte 0(zero). In this instance the ‘number of data
bytes’ will be ‘2’ indicating that the data associated with the item is 2 bytes of data in length. A ‘start location’ of byte ‘2’ and
register length of ‘1’ (register = 2 bytes) means the data is contained in the 3rd and 4th bytes of the data message. If no ‘start
location’ is specified then data associated with the item will start with the first byte (byte 0) of the message data.
Data Conversion Type:
This specifies how to interpret the data; refer to the ‘Data Conversion Type’ list in the Modbus Table.
For example: If the ‘Data Conversion Type’ = CODED, STATUS then the decimal integer value of the data has a defined
meaning; refer to the ‘STATUS’ Coded data list in the ‘MODBUS Table’ for definitions. If the ‘Data Conversion Type’ = PSI
then the decimal integer value of the data is ‘pressure’ in ‘psi’ units.
9
Loading...
+ 19 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.