一.概述
网关支持将子设备数据、串口透传数据转发至TCP Server。
二.转发配置
1. 基本配置
进入网关管理界面,选择服务->转发->添加转发。在转发类型里面选择TCP/IP->TCP,依次填写TCP服务器的地址和端口号,并根据自身需求,填写数据源。然后点击确定。
数据源为COM1或COM2时,为COM口透传模式,可以将串口数据,直接发送到TCP服务器,同时也可以将TCP服务器下发的数据发送到COM口。
数据源为子设备时,网关会将网关子设备(除本地资源->本地串口外)数据,按照子设备的采集频率,以json形式发送到TCP服务器,同时TCP服务器也可以以RPC形式进行子设备数据下发、子设备状态获取、网关属性获取等操作,具体请参考大纲三。
2. 高级设置
点击创建的TCP转发实例的编辑按钮,进入高级设置界面。
- 数据源:可参考基本配置的相关说明。
- 心跳包(发送):定时发送到服务器的字符串。用于服务器判断客户端连接状态。为空时,不发送。
- 心跳周期:心跳包发送频率。
- 心跳包(接收):服务器发送到网关的字符串。用于网关判断与服务器的连接状态。为空时,不做相关判断。
- 最大无数据重连时间:网关等待服务器数据的最大时间。在该时间范围内未收到来自服务器的数据,网关将主动与服务器断开连接,进行重连。设置为0时,不做相关判断。
三. 子设备作为数据源
1. 上报数据
网关会以子设备的采集频率,向TCP服务器转发子设备数据。用户可自行配置相关数据格式。数据格式可以参考相关说明 。
2. 数据下发
- TCP服务器发送(JSON)。
{
"method":"setData",
"id":12113,
"parameter":{
"deviceId":"modbus",
"data":{
"humidity":7
}
}
}
- method: rpc方法。
- id:消息id,标识消息唯一性。
- deviceId: 子设备标识,子设备页面也可以找到。
- humidity: 数据点标识。子设备点表内可以找到。
- 网关返回(JSON)。
{
"method":"setData",
"id":12113,
"result":{
"humidity":{
"success":true
}
}
}
- TCP服务器发送(JSON)。
{
"method":"getAllDeviceStatus",
"id":12114
}
- method: rpc方法。
- id:消息id,标识消息唯一性。
- 网关返回(JSON)。
{
"method":"allDeviceStatus",
"id":12114,
"result":{
"Siemens200":{
"CommFailCnt":0,
"CommTotalCnt":419,
"code":0,
"isOnline":true,
"lastCommRTC":"2022-02-10 11:43:12",
"lossRate":0,
"msg":""
}
}
}
- method: rpc方法。
- id:消息id,标识消息唯一性。
- modbus: 子设备标识,子设备页面也可以找到。
- CommFailCnt: 网关与子设备Siemens200设备通信失败次数。
- CommTotalCnt:网关与子设备Siemens200总通信此时。
- code:错误码。0代表无错误。非0代表有错误。具体错误信息可以查看msg字段。
- isOnline:子设备Siemens200是否在线。
- lastCommRTC:网关与子设备Siemens200最后一次通信时间。
- lossRate:网关与子设备Siemens200通信的丢包率。
- msg:通信错误时的错误信息。
3. 获取网关属性
- TCP服务器发送(JSON)。
{
"method":"getGatewayAttribute",
"id":12115
}
- method: rpc方法。
- id:消息id,标识消息唯一性。
- 网关返回(JSON)。
{
"method":"getGatewayAttribute",
"id":12113,
"result":{
"simInsert":false,
"iccid":"",
"operators":"",
"csq":0,
"latitude":36.982312,
"longitude":36.982312,
"lac":21722,
"ci": 91691268
}
}
- method: rpc方法。
- id:消息id,标识消息唯一性。
- simInsert: SIM卡是否已插入。
- iccid:SIM卡的ICCID。可通过该ID对SIM卡充值。
- operators:SIM卡运营商。DX:电信;LT:联通;YD:移动。
- csq:4G信号强度。最大取值为31。强度计算公式(csq/31)*100%。
- latitude: 纬度。
- longitude:经度。
- lac: 位置区号码,十进制。
- ci:小区标识码,十进制。