本软件是用 go 语言编写,可以运行在 windows、linux 等系统上,实现了通过 modbus tcp
采集 modbus 从站数据,对外提供 http 接口给用户查询实时数据和控制 modbus 地址写值,
且还对外提供了 websocket 服务,用户可以直接通过 websocket 订阅实时变动更新的数据。
程序退出会把最近一次数据进行本地存储,程序重启后会有最近一次数据。后期还会在此版
本基础上扩展 opcua、mqtt 等其它 PLC 协议。
1. config.ini
SerId=5301039008990002
Host=127.0.0.1
HttpPort=20080
WsPort=15554
[LogInfo]
LogMode=0
LogLevel=7
Addr=log
Host:modbus2http_webwocket.exe 运行所在机器的 IP;
HttpPort:通过 http 访问的端口
WsPort:通过 websocket 订阅数据的端口
2. deviceConfig.json
{
"DeviceList":[
{
"DeviceId":"a001",
"Protocol":0,
"ProtocolConnParamStr":"{\"MbScanInterval\":1000,\"MbSlaveIP\":
\"192.168.12.120\",\"MbSlavePort\":5502}",
"TagList":[
{
"Tag":"Addr1",
"Addr":"00000",
"DataType":0
},
{
"Tag":"Addr2",
"Addr":"00001",
"DataType":0
},
{
"Tag":"Addr3",
"Addr":"00002",
"DataType":0
},
{
"Tag":"Addr4",