Difference between revisions of "Modbus Service"
Line 101: | Line 101: | ||
Interval=3 | Interval=3 | ||
− | #Interval: The time | + | #Interval: The time interval of modbus data access/report cycle in second. |
Delay=0 | Delay=0 | ||
− | #Delay: The time delay between two modbus | + | #Delay: The time delay between two modbus address R/W in millisecond. |
#Delay=0 means no delay. | #Delay=0 means no delay. | ||
Log=0 | Log=0 | ||
Line 142: | Line 142: | ||
Interval=3 | Interval=3 | ||
− | #Interval: The time | + | #Interval: The time interval of modbus data access/report cycle in second. |
Delay=0 | Delay=0 | ||
− | #Delay: The time delay between two modbus | + | #Delay: The time delay between two modbus address R/W in millisecond. |
#Delay=0 means no delay. | #Delay=0 means no delay. | ||
Log=0 | Log=0 | ||
Line 186: | Line 186: | ||
IB1=1,Switch1 | IB1=1,Switch1 | ||
IB2=2,Switch2</pre> | IB2=2,Switch2</pre> | ||
− | |||
== Docker version == | == Docker version == |
Revision as of 04:41, 26 November 2018
Contents
Introduction
Modbus enables communication among many devices connected to the same network, for example, a system that measures temperature and humidity and communicates the results to a computer. Modbus is often used to connect a supervisory computer with a remote terminal unit (RTU) in supervisory control and data acquisition (SCADA) systems.
Many of the data types are named from its use in driving relays: a single-bit physical output is called a coil, and a single-bit physical input is called a discrete input or a contact.
Modbus Service is a Windows/Linux system service for WISE Agent to read sensor data from Modbus device or write data into Modbus device. After sensor ata are acquired, WISE Agent will upload the data to the WISE-PaaS Cloud.
Modbus Service
JSON Format for upload data
{ "Modbus_Handler":{ "Platform":{ "bn":"Platform", "e":[{"n":"Version","sv":"2.0.0"}, {"n":"Description","sv":"This service is Modbus Service"}, {"n":"Protocol","sv":"Modbus_TCP"}, {"n":"Name","sv":"WISE-4012E"}, {"n":"ClientIP","sv":"127.0.0.1"}, {"n":"ClientPort","sv":"502"}, {"n":"Connection","bv":true}] }, "Modbus_Device0":{ "bn":"Modbus_Device0", "e":[{"n":"UnitID","sv":"1"}], "Coils":{ "bn":"Coils", "e":[{"n":"LED0","bv":true}, {"n":"LED1","bv":true}, {"n":"LED2","bv":false}] } }, "Modbus_Device1":{ "bn":"Modbus_Device1", "e":[{"n":"UnitID","sv":"2"}], "Discrete Inputs":{ "bn":"Discrete Inputs", "e":[{"n":"Switch0","bv":false}, {"n":"Switch1","bv":true}, {"n":"Switch2","bv":false}] } } } }
How To
Installation
1. Double click Agent_Modbus_Handler_2.0.0.exe to start installation.
2. Click "Next" on the Welcome screen.
3. Select Installation Folder and then click "Next" to continue.
4. Click "Install" on the Ready to Install screen to continue.
5. Installation completed, click "Finish" button to exit the Setup Wizard.
Configuration
1. Open File Explorer and change target folder to the Modbus Service installation folder.
2. Open and edit the file Mobus_Handler.ini
2.1 Give a Name for the platform.
2.2 Set the Protocol.
For the modbus TCP devices:
Protocol=Modbus_TCP
ClientIP=(IP address of Modbus TCP devices)
ClientPort=(Port of Modbus TCP devices)
Modbus_Handler.ini Example:
[Platform] Name=WISE-4012E Protocol=Modbus_TCP ClientIP=127.0.0.1 ClientPort=502 Interval=3 #Interval: The time interval of modbus data access/report cycle in second. Delay=0 #Delay: The time delay between two modbus address R/W in millisecond. #Delay=0 means no delay. Log=0 [Devices] numberOfDevices=2 Device0=Modbus_Device0.ini Device1=Modbus_Device1.ini
For the modbus RTU devices:
Protocol=Modbus_RTU
SlavePort=(The serial port's device node of the Gateway which connect to Modbus RTU devices)
Baud=(The baud rate for the serial port to communicate with Modbus RTU device)
Parity=(The parity of the serial port)
DataBits=(The data bits of the serial port)
StopBits=(The stop bits of the serial port)
Example:
[Platform] Name=EKI-XXXX Protocol=Modbus_RTU SlavePort=COM1 Baud=19200 Parity=None DataBits=8 StopBits=1 Interval=3 #Interval: The time interval of modbus data access/report cycle in second. Delay=0 #Delay: The time delay between two modbus address R/W in millisecond. #Delay=0 means no delay. Log=0 [Devices] numberOfDevices=2 Device0=Modbus_Device0.ini Device1=Modbus_Device1.ini
2.3 Set Modbus devices detail configuration.
Modbus_Device0.ini Example:
[DeviceInfo] # For Modbus_TCP UnitID=1 # For Modbus_RTU #SlaveID=1 [Coils] numberOfB=3 B0=0,LED0 B1=1,LED1 B2=2,LED2
Modbus_Device1.ini Example:
[DeviceInfo] # For Modbus_TCP UnitID=2 # For Modbus_RTU #SlaveID=2 [Discrete Inputs] numberOfIB=3 IB0=0,Switch0 IB1=1,Switch1 IB2=2,Switch2
Docker version
To config Modbus Service and Restart Service in EdgeSense v1.0.2 Docker version:
$cd ${Installed path}/Installer/packages/Plugins/docker-edgesense-image-x86/EdgeSense/EService-Modbus/config $sudo vim Modbus_Handler.ini $sudo docker restart service-modbus
Real Application Case: ADAM-4117
Release
This is an overview that displays Modbus Service versions and some stats and numbers for each release.
Index | Version | Date | Platform | OS | Release Note |
1 | v2.0.0 | 2018/5/17 | x86_64 CPU | Windows | Agent_Modbus_Handler Release Note v2.0.0 |
2 | v2.0.1 | 2018/9/6 | x86_64 CPU |
Windows |
Agent_Modbus_Handler Release Note v2.0.1 |