Professional Documents
Culture Documents
HURKO-MODBUS Technique Manual
HURKO-MODBUS Technique Manual
Technique Manual
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
1. Introduction................................................................................................................ 2
Page 1 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
1.Introduction
BDⅡ-MODBUS range actuators equips a Modbus board which supports the communication protocol of Modbus
RTU . The Modbus board makes use of RS485 interface and can operate in either 2(for half duplex) or 4 wire
mode(for full duplex), and supports baud rates up to 38.4 kBit/s. Master and slave devices: Max. 247 slave devices
connected to one bus, withoutrepeaters max. 32 slave devices.
If the security is required highly for the environment,a redundant connection between the actuators and the DCS can
be established by using a second fieldbus cable. And two Modbus boards must be equipped in the actuator,
respectively corresponding to bus highway1 and bus highway2. In this way , the communication can be swich to
highway2 at once when the highway1 happen trouble.
Modbu master can send the commands which make the actuator carry out OPEN, CLOSE, STOP and ESD.The
master can also read the status , setting parameter and some alarm information.
Page 2 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
potential equalisation).
Recommended cable specification for Modbus
Screening: CU shielding braid or shielding braid and shielding foil
Impedance: 135 to 165 Ohm, at a frequency of 3 to 20 MHz.
Cable capacity: < 30 pF per metre
Cable diameter: >0.64mm
Cross section: >0.34 mm², conforms to AWG 22
Loop resistance: <110Ω per km
Controls (master)
2-wire cable
Bus termination switched on
Connection
box
Fig 2.1:BDⅡ-Modbus with one segment
Page 3 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
21 16 14 17 15 24
A
A
B
B
from previous device to next device
21 14 16 17 15 24
A
B
from previous device connecting termination resistance
A A A A
B B B B
from previous device to next device from previous device to next device
A A
B B
connecting termination connecting termination
from previous device resistance from previous device resistance
Note: Before opening the control cover or the connection box, ensure that there is no explosive gas and no
voltage.
JP5
MODBUS BOARD
JP
1
1
4
JUMP4
JUMP5
1
1 2
SW1
JUMP3
3
3
ON
JP1
1
JUMP1
JUMP2
Page 5 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
Read Output Registers 03 Reads out the content of output registers from the slave
Read Input Registers 04 Reads out the content of input registers from the slave on
Force Single Coil 05 Sets an individual bit in the slave to ON or OFF
Pre-set Single Register 06 Writes data to individual output Registers of the slave.
Read Exception Status 07 Reads out the content of the AUX input or controls.
Loop back Test 08 The tests are provided for verifying that the interface is working satisfactorily
Pre-set Multiple Registers 16 Writes data to consecutive Output Registers
Report Slave ID 17 Reads out the Slave ID and the software version number.
Table 4.1: Modbus Codes Supported
In all cases feedback data is considered to flow from the actuator to the host PLC and command data is considered to
flow in the reverse direction, i.e. inputs are feedback signals and outputs are commands.
4.3.1 The contents of the input status from the actuator (For F02 )
4.3.2 The contents for the coil status of the actuator (For F01、F05 )
4.3.3 The contents for the input registers from the actuator(For F04 )
4.3.4 The contents for the output registers of the actuator (For F03、F06、F16 )
The actuator control register, (register 0), can be pre-set to one of six values using function code 6 or 16, for
STOP, CLOSE, OPEN, ESD, Tiny Close or Tiny Open to the actuator. When reading this register, either the
most recently received value is returned or zero is returned if this register has not been previously pre-set.
The 4 valid values for the actuator control register, (register 0), are as shown in table 4.6:
Page 8 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
The position demand register, (register 1) can be pre-set to a certain point to the positioner. This means the actuator
moves the position set point to which the value in High Byte for Data shows , if the value in Low Byte for Data is
00. This means the actuator goes the value in High Byte for Data in close, if the value in Low Byte for Data is 01.
This means the actuator goes the value in High Byte for Data in open, if the value in Low Byte for Data is 02.
The deadband is used when controlling the actuator via the position demand register. The deadband effects the
positional accuracy in that it determines how close to the set point the actuator will travel before the motor is stopped.
This aspect of position control must be borne in mind when attempting to open or close a valve, i.e. attempting to
fully close an valve with a 0% position command will be subject the same deadband tolerance as any other position
command.
It is possible to make the position data reported relate to a reduced span of actual valve travel. In this mode the
position data relates to a reduced portion of the valve stroke. This is sometimes used where the valve is required to
have a 0% position (or 100% position) that is not the same as fully closed and fully open, e.g. see fig 14 below). To
make the actuator take note of limited range position reporting it is necessary to set the Position-Minimum and
Position-Maximum range using a Setting Tool, Communicator or host system. The default is always 100%
reporting of position from fully open to fully closed limit switch positions.
0% ------ Reported Position -------- 100%
CLOSED OPEN
To guarantee complete opening or closing of a valve a register write to the actuator control register must be used.
This function allows the user ( host ) to obtain the ON/OFF status ( refor to Table 4.3 ) of the digital outputs of the
actuator.
A typical host query to read coils 0 to 3 from slave address 06 would be as follows;
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
Page 9 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
06 01 00 00 00 04 CRC
The reply, assuming that the remote close and remote maintain were logic 1 would be;
The data is packed with 1 bit for each coil. In the case of coils 0 - 3 a logic 1 indicates a signal applied .
This function allows the user to obtain the ON/OFF status of digital inputs. All of the digital inputs to the controller
are mapped into this database, including the optional 4 isolated inputs from the remote board. The inputs are mapped
as shown in table 4.2.
To read the status of all of the digital inputs of slave address 06, the following command would be issued by the host:
High Byte Low Byte
Functio High Byte for Low Byte for Chec
Address for Start for Start
n Code Data’ Length Data’ Length k
Address Address
06 02 00 00 00 18 CRC
As with function code 01, the data is packed one bit for each input, with the addressed data in the least significant bit
position. However, the byte order is returned as most significant byte first, i.e. least significant byte last. The reply to
the above command would be in the following format:
Data Data Data
Function Data’ Byte Chec
Address L.S.Byte M.S.Byte
Code Count k
bits 7 - 0 bits 15 - 8 bits 23 - 16
06 02 03 xx xx xx CRC
Any number of bits can be selected starting from anywhere within the data area, provided that attempts are not made
to read beyond bit 23, (as this will return an error code). e.g. if, data in the range bit 3 to 14, from actuator address
06, were required, the request would be;
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
06 02 00 03 00 0C CRC
And the response wouild have the following format;
Function Data’ Byte Data L.S.Byte Data M.S.Byte
Address Check
Code Count Bit 10-3 bits 14-11
06 02 02 xx xx CRC
N.B. The data requested will be in the least significant data byte and the least 4 significant bits in the most
significant data byte. The most significant 4 bits of the most significant data byte will have no relevance.
This command provides access to the Actuator Control, the Position demand desired value, (set point), Deadband,
and Maximum and Minimum position registers used within the Local Positioner Function as shown in table 4.5.
Note: The value returned will NOT reflect whether will it reflect any actions carried out since the previous pre-set
register command, due to force coils commands or the actuator local or remote controls for example.
Page 10 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
As an example, to read the current value of the Deadband setting with actuator address 06, the following command
would be used;
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
06 03 00 02 00 01 CRC
This command provides access to the position feedback information. Position data are returned as a scaled 8 bit
number. As such 100% position is always reported as 255. The data is mapped as shown in table 4.4.
To read the position feedback of actuator address 06, the following command would be used;
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
06 04 00 01 00 01 CRC
And the following reply generated;
Address Function Code Data’ Byte Count Data Check
06 04 1 35 CRC
This would correspond to a position of approximately 21%.
Using this command, the actuator can be requested to operate. A data value of FF00 (HEX) will act the required
command. A data value of 0000 will remove the control signal. A data value other than 0 or FF00 will return an error
code response.
As an example, to energize and maintain the remote close input to actuator 06, the following command should be
generated by the host;
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
06 05 00 01 FF 00 CRC
In response to this message, the actuator will change the state of the selected output and then return the
message to the host as confirmation. It should be noted that writing to any of the 4 control bits will cause the
actuator to drop out of positioning mode if that mode had previously been selected.
Function High Byte for Low Byte for High Byte for Low Byte for
Address Check
Code Start Address Start Address Data’ Length Data’ Length
06 05 00 01 FF 00 CRC
This command is used to perform STOP, CLOSE, OPEN, ESD, Tiny Close or Tiny Open actions, or to update the
Page 11 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
position demand. In addition, deadband and the minimum and maximum positions can also be programmed. The
data is mapped as shown in table 4.5.
The actuator control register accepts one of six values to perform the actions shown in table 4.6.
Broadcast mode is supported by this command, however only the STOP and ESD commands will be acted with
OPEN and CLOSE commands being suppressed. On receipt of any of these commands the actuator will cancel
positioning mode.
As an example1, to transmit a 50% set point to the positioner, the following command should be sent. The host
query:
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Address Start Address for Data for Data
06 06 00 01 80 00 CRC
Following receipt of a position set point, the actuator will enter positioning mode where it will remain until cancelled
by using a force coil or pre-set control register command. The pre-set single register command is returned back to
the host as the Modbus module reply.
The slave reply:
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Address Start Address for Data for Data
06 06 00 01 80 00 CRC
As an example2, to go in close, a 10% position value in situ, the following command should be sent.
The host query:
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Address Start Address for Data for Data
06 06 00 01 1A 01 CRC
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Address Start Address for Data for Data
06 06 00 01 1A 01 CRC
This function allows the user to obtain the especial status of actuator, as follow table.
Data bit Meanings
Page 12 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
0 Motor block up
1 Loss of the power phase
2 Torque fault in OPEN direction
3 Torque fault in CLOSE direction
4 Physical position error
5 Aux remote close,open and sop/maintain control enabled
6 Reserved
7 Reserved
A number of tests are provided for verifying that the interface is working satisfactorily. These range in complexity
from simple loopback tests to accessing a number of performance registers. Performance registers are initialised to
zero on power up. All performance registers contain unsigned 16 bit integers.
Different diagnostic functions are selected by modifying the data in the diagnostic code field. The diagnostic codes
supported are shown below in table 4.7;
Diagnostic code Function
00 Return query data
01 Restart communications
02 Reserved
04 Force slave listen only
Table 4.7: Loopback Test Codes
Restart communications(01):when slave listen only, the slave quits the listening only mode after Restart
communications,and no informations are replied to the host, and the communication event counter of slave is cleared.
Force slave listen only(04):The host sends the Data is 0000h, and the slave enters listening only mode.
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Diag code Start Diag code for Data for Data
06 08 00 00 A5 37 CRC
The slave reply:
Function High Byte for Low Byte for High Byte Low Byte
Address Check
Code Start Diag code Start Diag code for Data for Data
06 08 00 00 A5 37 CRC
The Modbus module will keep diagnostic counts for Bus Messages and Slave Busy events. The diagnostic register
Page 13 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
contains bits indicating, watchdog recovery, main board interface error, RS 485 highway ESD active, etc. as outlined
in table 4.8 .
This command is used for actuator control and for downloading configuration information. Currently only the
parameters specified in table 4.5 are available, limiting the maximum number of registers to 6.
For example, the command to pre-set the position demand and deadband simultaneously in actuator 06 would be:
High Byte Low Byte High Byte Low Byte Byte Data 1 Data 2
Function Chec
Address for Address for Address for Quantity for Quantity count
Code k
06 10 00 01 00 02 02 FF 0C CRC
Position Dead
band
The above command would set the demand to 100% and the deadband to 5%. The reply would be the same as the
message but with the byte count and data fields omitted, e.g.;
Function High Byte for Low Byte for High Byte Low Byte for
Address Check
Code Address Address for Quantity Quantity
06 10 00 01 00 02 CRC
Report Slave ID permits the user to obtain information that identifies the type of Modbus slave and its issue level.
The command for extracting this information, (from actuator 06), is as follows;
The host query:
Address Function Code Check
06 11 CRC
The reply would have the following format;
Function Byte Device
Address Check
Code count Dependent
06 11 08 8 Bytes CRC
As the interface does not support a Run light, this byte will always be returned as 00 as will Slave ID.
The format of the 48 bytes is as follows;
Device dependent:8 Bytes format
Bytes1:identification code,such as:BR Mbus (each digit is ASCII code);
Bytes2-5:blank;
Bytes6-8:software version number,such as:MXX。
If the Modbus module detects an error such that the message cannot be correctly decoded, e.g. a CRC error exists, no
reply is produced. If the slave is able to correctly decode the message but for example does not support the
requested operation or the data is outside allowable limits, an exception message is generated. A list of the
exception response codes are shown in table 4.9.
Page 14 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
Within the Modbus protocol specification, only function codes 5, 6, 8 and 16 are recognized as valid for broadcast.
In order to minimize the possibility of erroneous actuator operation, further restrictions have been added within the
Modbus Module software such that only an ESD operation or a STOP, using function code 5 or 6, are valid broadcast
messages, i.e. OPEN and CLOSED are disabled. Global commands to the other registers are permitted.
Stop command
060600000000887D 060600000000887D
(once)
Close command
06060000010089ED 06060000010089ED
(once)
Open command
060600000200891D 060600000200891D
(once)
ESD command
060600000300888D 060600000300888D
(once)
Tiny open xx S
0606000020xxCRC (0≤xx≤255) 0606000020xxCRC(0≤xx≤255)
(once)
Tiny close xx S
0606000010xxCRC (0≤xx≤255) 0606000010xxCRC(0≤xx≤255)
(once)
Page 15 / 17
BDⅡ -MODBUS SERIES ACTUATOR Operation Instructions
Page 16 / 17