WISE Modbus RTU Master Function


Modbus RTU Master Introduction

In addition to XW-Board and I-7000 I/O modules, WISE-580x also allows to connect with devices that support Modbus RTU Slave protocol for I/O control. Through Modbus RTU protocol, it enables to read back 4 types of Modbus data (Coil Output, Discrete Input, Input Register and Holding Register) from the Modbus RTU Slave modules to the WISE-580x. And by WISE IF-THEN-ELSE rule engine, it allows to perform automation control operation on the devices. And with SCADA software, it also allows to monitor and control the Modbus RTU device retrieved information on the WISE-580x.


Modbus RTU Module Setting

The configuration page is shown as below:


 

Follow the following steps:

  1. In the “Baudrate(COM2)” field, select the WISE-580x COM2 data transmission Baudrate from the drop down list. The Baudrate has to be set the same as the Baudrate of Modbus RTU Slave modules. Please note: on the I-7000 Module Setting page, there is a COM2 Baudrate setting as well, please note that all I-7000 modules and Modbus RTU Slave modules that are connected to the WISE-580x COM2 must be set to the same Baudrate.
  2. Select the address of the Modbus RTU Slave module. The address has to be set between 17~20. Please note: the configuration of the address must be the same as the Modbus RTU Slave module address setting.
  3. In the “Name” field, input the Modbus RTU Slave module name. This name will be used in IF-THEN-ELSE rule edition.
  4. Input the “Polling Timeout” field. The “Polling Timeout” indicates the time interval for WISE-580x to send command to the Modbus RTU Slave module and wait for the response, the unit is millisecond. The range of polling timeout is between 1 and 10000.
  5. Input the “Timeout Retry Interval” field. The “Timeout Retry Interval” indicates the time interval for WISE-580x to resend command to Modbus RTU Slave module when it’s in the timeout status when performing communication between WISE-580x and Modbus RTU Slave module. The unit is second. The range of timeout retry interval is between 3 and 65535.
  6. After finish the settings of ”Baudrate(COM2)”, ”Address”, “Name”, “Polling Timeout” and ”Timeout Retry Interval”, click “Add” button. The new Modbus RTU Slave module will be added to the module list. An example module list is shown as bellow. Please note: a WISE-580x can connect to 4 Modbus RTU Slave modules at most.
  7. Click on the Modbus RTU Slave module on the module list and click “Setting” button to get into the Coil Output, Discrete Input, Input Register and Holding Register setting page to edit settings. To remove the Modbus RTU Slave module, select the module you would like to remove and click “Remove” button. To relocate Modbus RTU Slave to other address, click “Move Up” or “Move Down” to move the Modbus RTU Slave module to desired address location.
  8. After all Modbus RTU Slave module settings are completed, click “Save” button to save the changes.

Modbus RTU Slave Attribute Setting

The detailed configuration page of Coil Output, Discrete Input,Input Register and Holding Register for each Modbus RTU device is shown as below:


Follow the following steps:

  1. Data Model: WISE-580x offers 4 Data Model selections to match the Modbus RTU Slave module configuration. The Data Model list is as follow.
  2. Data Model The Modbus Address of Modbus RTU Slave Modules Data Type
    Coil Output 0xxxx  
    Discrete Input 1xxxx  
    Input Register 3xxxx
    16-bit Signed Integer
    16-bit Unsigned Integer
    16-bit HEX
    32-bit Signed Long
    32-bit Unsigned Long
    32-bit Floating Point
    Holding Register 4xxxx
  3. Start Address: Allows to set up the starting address of Coil Output (0x) on the Modbus RTU Slave module you would like to retrieve.
  4. Continuous Data Number: After finishing the Start Address setting, specify the Continuous Data Number, it is the number of Coil Output data you would like to retrieve from the Start Address.
  5. After finishing the “Start Address” and “Continuous Data Number” setting, click on “Add” button. A new Coil Output address block will be added to the Modbus address mapping table (shown as below). All added address blocks will be located in sequences staring from the Starting Address. Please note: The address number on the first column “WISE-580x Local Address” means the local Modbus address of WISE-580x to keep the retrieved data.


Using the figure above as an example, the allocation of the Modbus Address in WISE-580x for the Coil Output setting of this Modbus RTU module is shown as below:

Coil Output
Index
The Modbus Address in Modbus RTU Module The mapping Modbus Address in WISE-580x
1 00050 00780
2 00051 00781
3 00052 00782
4 00053 00783

The allocation of the Modbus Address in WISE-580x for the Discrete Input setting of this Modbus RTU module is shown as below:

Discrete Input
Index
The Modbus Address in Modbus RTU Module The mapping Modbus Address in WISE-580x
1 10020 10780
2 10021 10781
3 10022 10782
4 10023 10783
5 10024 10784
6 10025 10785

The allocation of the Modbus Address in WISE-580x for the Input Register setting of this Modbus RTU module is shown as below:

Input Register
Index
The Modbus Address in Modbus RTU Module The mapping Modbus Address in WISE-580x
1 30010 30780
2 30012 30782
3 30014 30784
 

The allocation of the Modbus Address in WISE-580x for the Holding Register setting of this Modbus RTU module is shown as below:

Holding Register
Index
The Modbus Address in Modbus RTU Module The mapping Modbus Address in WISE-580x
1 40060 40780
2 40061 40782

(The number of Modbus address setting blocks will affect the data update rate for the Modbus RTU Slave module. Please minimize the number of Modbus address setting blocks; merge the conjunctive setting blocks to speed up the data update rate for the communication between WISE-580x and Modbus RTU Slave module.)

HEX Conversion

If the Modbus RTU Slave device provides HEX data only, WISE-580x allows to transfer the HEX value to decimal value in floating point so that the value can be used in IF-THEN-ELSE rules edition. The value retrieved from WISE-580x via Modbus TCP/RTU can be transferred to more-easy-to-read decimal value in floating point automatically as well (the floating point will take two local addresses).

When you select HEX as the data type, you will be required to input the HEX data range and the corresponding decimal data range. WISE-580x will transfer the HEX to decimal value automatically when performing read/write operations.


Modbus RTU Slave Rule Setting

Coil Output Condition:

Identify the status of Coil Output to be ON or OFF, if the result matches the evaluation criteria, the Action will be executed.

Coil Output Operator Description Condition Statements
Coil Output State of Address N ON Identify if the state of Coil Output is ON continue to be TRUE when the status matches the criteria
OFF Identify if the state of Coil Output is OFF

Discrete Input Condition:

Identify the status of Discrete Input to be ON or OFF, if the result matches the evaluation criteria, the Action will be executed.

Discrete Input Operator Description Condition Statements
Discrete Input State of Address N ON Identify if the state of Discrete Input is ON continue to be TRUE when the status matches the criteria
OFF Identify if the state of Discrete Input is OFF

Input Register Condition:

Identify the value of Input Register to be equal to, greater than, less than, equal to or greater than, equal to or less than the "Variable", if the result matches the evaluation criteria, the Action will be executed.

Input Register Operator Variable Description Condition Statements
Input Register Value of Address N =
>
<
>=
<=
Self-Defined Value Giving a user-defined value to compare with the Input Register value of address N. continue to be TRUE when the status matches the criteria

Holding Register Condition:

Identify the value of Holding Register to be equal to, greater than, less than, equal to or greater than, equal to or less than the "Variable", if the result matches the evaluation criteria, the Action will be executed.

Holding Register Operator Variable Description Condition Statements
Holding Register Value of Address N =
>
<
>=
<=
Self-Defined Value Giving a user-defined value to compare with the Holding Register value of address N. continue to be TRUE when the status matches the criteria

 

Coil Output Action:

Change the Coil Output status to specified status. The status can be set as "OFF" or "ON".

Coil Output Action Description Execution Type
Coil Output State of Address N ON Change the DO Channel status to be ON One Time / Repeat
OFF Change the DO Channel status to be OFF

Holding Register Action:

Users can modify the Holding Register value in the THEN/ELSE Action statement.

Holding Register
Operator Variable Description Execution Type
Holding Register Value of Address N =
+=
-=
Self-Defined Value The value defined by user. One Time / Repeat
Operator Description
= Assign the new Holding Register value as the value in "Varibale" field.
+= Assign the new Holding Register value as the original Holding Register value plus the value in "Varibale" field.
-= Assign the new Holding Register value as the original Holding Register value minus the value in "Varibale" field.

Modbus RTU Master Application Example

Scenario Example Document

Assume a factory requires electricity monitoring over the devices; ICP DAS PM-2134 power meter is used to monitor the instantaneous power (KW) value of the devices; and the KW value will be transmitted to WISE-5800 via Modbus RTU protocol. At the same time, the WISE-5800 is connected to M-7055 and M-7022 modules. The M-7055 is connected to one warning light and an emergency switch. The M-7022 module is connected to a cooling fan. When the instantaneous power (KW) value exceeds 10KW, WISE-5800 will send command to M-7055 to turn on the warning light to notify the related personal for emergency response. At the same time, the M-7022 will start the cooling fan to reduce the heat and send email to related personnel. After the emergency has been taken care of by the related personnel, he/she can push the emergency switch to turn off the warning light and cooling fan, the status of the emergency switch will also be sent to WISE-5800. Meanwhile, the cumulative power(KWh) value of this device will be recorded every 5 minutes, and the logger file will be sent to FTP server at midnight 0 o’clock each day for further administration management and data analysis.

WISE-580x

Graphic Illustration

ICP DAS USA,Inc.