工业现场有需要设备支持RS485通信,可以采集各种PLC、流量计、温湿度、液位等。应用特别广泛,这里尽量以更简单的方式,让大家了解整个数据采集过程。
工业现场有需要设备支持RS485通信,可以采集各种PLC、流量计、温湿度、液位等。应用特别广泛,这里尽量以更简单的方式,让大家了解整个数据采集过程,更详细可以阅读相关说明书。
钡铼技术:专注工业物联网关,可以采集世面上绝大数据标准仪表、PLC、楼宇设备等,其这里选型是其BL110多功能协议物联网关。 ThingsPanel:开源物联网平台,免费、快速部署
数值类型:温度、湿度 开关量类型:停电报警器状态、烟感状态
开关类型:水泵开关、风机启停 控制数值类型:变频器频率、大棚卷帘开合度
用Modbus slave模拟各种传感器,钡铼工业网关BL110通过Modbus RTU采集、控制各种仪表/设备,并通过4G、以太网方式上网,MQTT协议对接开源物联网云平台ThingsPanel。如下图: 

电脑安装Modbus slave,并根据前面“传感器数据点参数”,设置Modbus slave,模拟各种类型传感器。如下图: Connection:选择"SerialPort" Serial Settings:根据实际选择 Mode:选择“RTU”(这里采集的RS485设备,是标准Modbus RTU协议) 串口参数 注意:Modbus slave(模拟传感器)串口参数 需要和工业智能网关BL110串口参数一致 这里设置如下:
| 项目 | 参数 |
|---|---|
| 波特率 | 9600 |
| 数据位 | 8 |
| 停止位 | 1 |
| 校验码 | None |


①接电源(支持宽电压:9-36v) ②WAN口网线接入局域网(可自动分配ip,其他网络环境参考说明书) ③RS485接COM2,A接A,B接B

打开配置软件→点击“设备搜索”→双击“IP地址”→输入密码,默认123456 注意:设备开机约30s左右可搜索到ip

双击COM2,设置串口参数 注意:这里串口参数和前面设置Modbus slave(模拟传感器)参数一致
模式选择:采集 设备品牌:Modbus 设备型号:Modbus_RTU
串口参数
| 项目 | 参数 |
|---|---|
| 波特率 | 9600 |
| 数据位 | 8 |
| 停止位 | 1 |
| 校验码 | None |

| 项目 | 内容 |
|---|---|
| 设备名称 | 自定义 |
| 从站ID | 即Modbus中数据点的“设备地址”,这里是:1 |
| 其他 | 根据实际情况填写 |

| 序号 | 变量名称 | 设备地址 | 功能码 | 寄存器地址 | 数据类型 | 变量标签(MQTT标识符名称,自定义) |
|---|---|---|---|---|---|---|
| 1 | 温度 | 1 | 04 Input Registers(3x) | 0 | uint16 | temperature |
| 项目 | 内容 |
|---|---|
| 变量名称 | 有自动生成,也可自定义。这里演示设置“温度” |
| 变量标签 | MQTT标识符名称,有自动生成,也可自定义。这里演示设置“temperature” |
| 地址类型 | Modbus数据点对应功能码。温度功能码是“04 Input Registers(3x)” |
| 数据类型 | 根据实际选择。温度是“uint16” |
| 读写类型 | 根据实际选择。温度是“只读” |
| 地址 | 即寄存器地址。根据“传感器数据点参数”规定,温度寄存器地址是:0 |
| 添加数量 | 这里是1,其他类型根据实际情况选择 |

其他数据点以此类推,然后点“写入配置”,然后重新进入
保存后,设备会自动重启,重新登录配置软件 注意:设备开机约30s左右可搜索到ip

点击型号,查看基本信息。如下图查看右侧“COM2”,钡铼网关是和Modbus slave(模拟传感器)通信上,“绿色”代表通讯上。 
点击“监视”,即可查看到,工业网关BL110采集到传感器当前数值。如下图,已经采集到了。跟Modbus slave的一致。 如果没有采集到数据,请检查一下相关参数是否设置有误和当前网络环境是否正常。 

对接ThingsPanel平台是通过MQTT协议,设置如下:
| 项目 | 内容 |
|---|---|
| IP/域名 | 根据实际填写。这里演示填:39.98.176.26 |
| 端口 | 根据实际填写。这里演示填:1000 |
| Client ID | 根据实际填写。 |
| 用户名 | 根据实际填写。 |
| 密码 | 根据实际填写。 |
| 数据模板 | 选择”KingPigeon“ |
| 订阅主题 | ①“云平台ThingsPanel”控制传感器(开关类型:水泵开关、风机启停;数值类型:变频器频率、大棚卷帘开合度); |
| ②那么物联网关BL110则填写订阅主题为:“bl110/001down”,用于接收“云平台ThingsPanel”控制指令。类似你关注某明星微博,他发布消息,就会给您推送。 | |
| 发布主题 | ①“云平台ThingsPanel”需要接收钡铼工业网关BL110采集到传感器的数据,设置订阅主题“bl110/001”; |
| ②那么工业网关BL110则填写发布主题为:“bl110/001” | |
| 上传周期 | 根据实际填写。最快1s。 |
前面“写入配置”后,点击型号,可以看到“MQTT Client”和“COM2”在线状态都变成了绿色,即BL110网关对接云平台和传感器都是通信上了。

{
"sensorDatas": [
{
"flag": "GPS",
"lat": "0.000000",
"lng": "0.000000"
},
{
"flag": "signal_strength",
"value": 0
},
{
"flag": "temperature",
"value": 30
},
{
"flag": "humidity",
"value": 68
},
{
"flag": "powerfailure",
"switcher": 1
},
{
"flag": "smoke",
"switcher": 0
},
{
"flag": "waterpump",
"switcher": 1
},
{
"flag": "fan",
"switcher": 0
},
{
"flag": "frequency",
"value": 33
},
{
"flag": "rollershutter",
"value": 55
}
],
"gateway_indentify": "BeiLai",
"time": "1658216760",
"addTime": "2022-07-19 07:46:00",
"seq": "0.4405.0.0"}
A、开关类型。用“switcher”,值 1表示开,true 0表示关。false
{
"sensorDatas": [
{
"switcher": 0,
"flag": "waterpump"
}
],
"down": "down"}
**B数值类型类型。用“value”,值** 注意:这个数值,需要加双引号
{
"sensorDatas": [
{
"value": "998",
"flag": "frequency"
}
],
"down": "down"}
前面已经设置:工业智能网关BL110设置对接的开源云平台ThingsPanel(ip、端口、订阅主题、发布主题) 
则EMQX的客户端也设置如下: 
订阅物联网关BL110采集到传感器的数据 
控制水泵开 