Difference between revisions of "Modbus Master"
Line 403: | Line 403: | ||
| style="width: 357px;" | <span style="font-size:larger;">[file://eossfs/ESS-Release/EdgeSense/Software/Modbus-Master device-modbus-master-3.0.1-Debian_9.9-rk3399.run]</span> | | style="width: 357px;" | <span style="font-size:larger;">[file://eossfs/ESS-Release/EdgeSense/Software/Modbus-Master device-modbus-master-3.0.1-Debian_9.9-rk3399.run]</span> | ||
+ | |- | ||
+ | | style="width: 47px; text-align: center;" | <span style="font-size:larger;">3</span> | ||
+ | | style="width: 63px; text-align: center;" | <span style="font-size:larger;">v3.0.2</span> | ||
+ | | style="width: 85px; text-align: center;" | | ||
+ | <font size="3">2020/02/17</font> | ||
+ | |||
+ | | style="width: 78px; text-align: center;" | <span style="font-size:larger;">x86_64 CPU</span><br/> | ||
+ | | style="width: 103px; text-align: center;" | <span style="font-size:larger;">Windows 10</span><br/> | ||
+ | | style="width: 433px;" | | ||
+ | *<span style="font-size:medium; text-align: left;">Support network link lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support serial port link lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support modbus slave lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support resume from S3/S4 feature.</span> | ||
+ | |||
+ | | style="width: 357px;" | <span style="font-size:larger;">[file://eossfs/ESS-Release/EdgeSense/Software/Modbus-Master device-modbus-master-3.0.2.exe]</span> | ||
+ | |- | ||
+ | | style="width: 47px; text-align: center;" | <span style="font-size:larger;">4</span> | ||
+ | | style="width: 63px; text-align: center;" | <span style="font-size:larger;">v3.0.2</span> | ||
+ | | style="width: 85px; text-align: center;" | | ||
+ | <font size="3">2020/02/17</font> | ||
+ | |||
+ | | style="width: 78px; text-align: center;" | <span style="font-size:larger;">ARM CPU</span><br/> | ||
+ | | style="width: 103px; text-align: center;" | <span style="font-size:larger;">Debian</span><br/> | ||
+ | | style="width: 433px;" | | ||
+ | *<span style="font-size:medium; text-align: left;">Support network link lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support serial port link lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support modbus slave lost-reconnect feature.</span> | ||
+ | *<span style="font-size:medium; text-align: left;">Support resume from S3/S4 feature.</span> | ||
+ | |||
+ | | style="width: 357px;" | <span style="font-size:larger;">[file://eossfs/ESS-Release/EdgeSense/Software/Modbus-Master device-modbus-master-3.0.2-Debian_9.9-rk3399.run]</span> | ||
|} | |} | ||
<span style="font-size:larger;">Above files are available at local server, please paste file's url in File Explorer to copy file. ([[EdgeSense_FAQ|How to access to EOSSFS file server]] )</span> | <span style="font-size:larger;">Above files are available at local server, please paste file's url in File Explorer to copy file. ([[EdgeSense_FAQ|How to access to EOSSFS file server]] )</span> |
Revision as of 03:30, 17 February 2020
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 data are acquired, WISE Agent will upload the data to the WISE-PaaS Cloud.
Features
EdgeSense Modbus-Master aims to collect data from Modbus Slave.
Feature:
- Support connection with multiple Modbus slave.
- Support access both Modbus TCP and RTU in one service.
- Support individual read interval by connection.
- Configurable sensor alias.
- Support byte swap.
- Currently support up-link Modbus Coil, Descrete input, Input register & Holding register data to WISE-PaaS , not support down-link from WISE-PaaS.
How to
Software Requirements
- MQTT broker
Installation
Windows:
1. Download Modbus-Master for Windows from Release Table.
2. Double click the installer to launch the installer to install it to the machine.
Debian:
1. Download OPC-UA Client for Debian from Release Table.
2. Launch the installer to install it to the machine.
sudo ./device-modbus-master-3.0.1-Debian_9.9-rk3399.run
Configuration
EdgeSense Modbus Master can manage multiple Modbus Slave setting and individual sensor's parameters, below settings are default after Modbus Master installation.
1. Device Configuration: <Install_folder>\config\industry\device-industry.yaml
metadata: name: "Modbus devices" labels: ["Modbus"] Description: "Modbus TCP/RTU devices with 3 sensors in holding register area 40001~40003" UpdateData: 2020-01-08-14:25:30 # LinkInfo: You can add a new link with unique name # <LinkName>: Unique Link Name # Params: Serial Port or Network parameters # Info: Time interval of polling data & check link # DevList: Device list which defined in DeviceInfo section LinkInfo: TCP-IP-1: Params: Driver: Modbus-TCP ConnectType: Net IP: 127.0.0.1 Port: 502 Timeout: 1000 # A request timeout in milliseconds Info: PollingInterval: 3000 # Polling interval in milliseconds Retry: 3 # Count of retry min:0 max:3 AliveTime: 10 # Link Timeout in second: SDK will release this link if there are any request over this AliveTime ( second ) CheckLinkInterval: 2 # Check link status interval (second) DevList: - Device-1 COM1: Params: Driver: Modbus-RTU ConnectType: Serial PortName: COM1 BaudRate: 9600 DataBits: 8 StopBits: 1 Parity: None Timeout: 1000 # A request timeout in milliseconds Info: PollingInterval: 3000 # Polling interval in milliseconds Retry: 3 # Count of retry min:0 max:3 AliveTime: 10 # Link Timeout in second: SDK will release this link if there are any request over this AliveTime ( second ) CheckLinkInterval: 2 # Check link status interval (second) DevList: - Device-2 # DeviceInfo: You can add a new device with unique name # <DeviceName>: Unique Device Name # Params: Station number # Profile: Profile file name DeviceInfo: Device-1: Params: Station: 1 Profile: MODBUS_DEVICE_01.yaml Device-2: Params: Station: 2 Profile: MODBUS_DEVICE_02.yaml
2. Sensor Configuration for Device-1: <Install_folder>\config\industry\Profile\MODBUS_DEVICE_01.yaml
metadata: name: MODBUS_DEVICE_01.yaml labels: ["MODBUS"] Description: This profile is for Modbus device 01 version: 1.0.1 UpdateData: 2020-01-08-14:25:30 Sensor: Temperature: Params: Address: 0 # Address Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: -10 # Minimum Value max: 100 # Maximum Value u: "celsius" # Unit Humidity: Params: Address: 1 Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: 0 # Minimum Value max: 100 # Maximum Value u: "percent" # Unit
2. Sensor Configuration for Device-2: <Install_folder>\config\industry\Profile\MODBUS_DEVICE_02.yaml
metadata: name: MODBUS_DEVICE_02.yaml labels: ["MODBUS"] Description: This profile is for Modbus device 02 version: 1.0.1 UpdateData: 2020-01-08-14:25:30 Sensor: X-Axis: Params: Address: 0 # Address Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: -10 # Minimum Value max: 100 # Maximum Value u: "mm/sec" # Unit Y-Axis: Params: Address: 1 Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: -100 # Minimum Value max: 100 # Maximum Value u: "mm/sec" # Unit
Demonstration
1. Open Modbus Simulator: Launch ModSim32 and click "New" in program menu to create a new simulator page.
2. Set parameter as below:
- Device Id: 1
- Address: 0001
- Length: 2
- Modbus Point Type: HOLDING REGISTER
3. Enable Auto Simulation:
- Double click on the sensor address 40001
- Click "Auto Simulation"
4. Set simulation parameters:
- Check "Enable"
- Simulation Type: Increment
- Change Interval (secs): 5
- Step VAlue: 1
- Low Limit: 10
- High Limit: 20
5. Do the same step for the address 40002 and set simulation parameter as below:
- Simulation Type: Increment
- Low Limit: 60
- High Limit: 80
6. Set Connection to Modbus/TCP Svr:
7. Edit Device Configuration for the demo: <Install_folder>\config\industry\device-industry.yaml
metadata: name: "Modbus devices" labels: ["Modbus"] Description: "Modbus TCP/RTU devices with 3 sensors in holding register area 40001~40003" UpdateData: 2020-01-08-14:25:30 # LinkInfo: You can add a new link with unique name # <LinkName>: Unique Link Name # Params: Serial Port or Network parameters # Info: Time interval of polling data & check link # DevList: Device list which defined in DeviceInfo section LinkInfo: TCP-IP-1: Params: Driver: Modbus-TCP ConnectType: Net IP: 127.0.0.1 Port: 502 Timeout: 1000 # A request timeout in milliseconds Info: PollingInterval: 3000 # Polling interval in milliseconds Retry: 3 # Count of retry min:0 max:3 AliveTime: 10 # Link Timeout in second: SDK will release this link if there are any request over this AliveTime ( second ) CheckLinkInterval: 2 # Check link status interval (second) DevList: - Device-1
8. Edit Sensor Configuration for the demo: <Install_folder>\config\industry\Profile\MODBUS_DEVICE_01.yaml
metadata: name: MODBUS_DEVICE_01.yaml labels: ["MODBUS"] Description: This profile is for Modbus device 01 version: 1.0.1 UpdateData: 2020-01-08-14:25:30 Sensor: Temperature: Params: Address: 0 # Address Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: -10 # Minimum Value max: 100 # Maximum Value u: "celsius" # Unit Humidity: Params: Address: 1 Length: 1 DataType: int16 DataFormat: ABCD Info: v: -1 asm: rw # Access Right: r, w, rw min: 0 # Minimum Value max: 100 # Maximum Value u: "percent" # Unit <span style="font-size:medium;">9. Restart Modbus Master services</span>
- Open Windows Task Manager
- Restart service: device-modbus-protocol
- Restart service: device-modbus-master
10. Verify sensor data at DeviceOn Monitor Sensor Data page
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 | Installer |
1 | v3.0.1 |
2020/01/21 |
x86_64 CPU |
Windows 10 |
|
device-modbus-master-3.0.1.exe |
2 | v3.0.1 |
Coming soon |
ARM CPU |
Debian |
|
device-modbus-master-3.0.1-Debian_9.9-rk3399.run |
3 | v3.0.2 |
2020/02/17 |
x86_64 CPU |
Windows 10 |
|
device-modbus-master-3.0.2.exe |
4 | v3.0.2 |
2020/02/17 |
ARM CPU |
Debian |
|
device-modbus-master-3.0.2-Debian_9.9-rk3399.run |
Above files are available at local server, please paste file's url in File Explorer to copy file. (How to access to EOSSFS file server )