DGIOT实战教程-虚拟ModbusRTU接入

[小 迪 导读]
本教程首先通过全链路虚拟环境讲述如何用DG-IoT开源工业物联网平台完成虚拟modbus设备的接入,在掌握基础
modbusRTU标准协议概念和业务流程之后,先通过虚拟的ModbusRTU和DTU来进行模拟演练。

系统需要使用的三个软件:

  • 虚拟串口软件:在电脑上模拟com口,用来连接虚拟ModbusRTU设备和dgiot_DTU
  • 虚拟ModbusRTU设备(ModbusSlave):用来模拟ModbusRTU设备运行数据上报到DTU
  • dgiot_DTU模拟软件:通过虚拟串口连接虚拟ModbusRTU设备和dgiot_DTU进行串口通信,通过TCP协议模拟dgiot_DTU和dgiot平台进行通信

系统架构逻辑图如下,包括设备模拟,通道通信,模型设置,应用显示部分

操作步骤:

1.创建虚拟串口

点击了解虚拟串口使用

2.创建虚拟ModbusRTU

本次教程不提供ModbusSlave的下载链接请见谅,建议自行搜索并下载。
安装modbus slave软件,打开后进行如下配置

主界面

第一步:点位数据

第二步:点位设置

第三步:连接设置

完成标志

3.创建虚拟DTU

1.获取软件
软件下载链接: dgiot-DTU
软件源代码链接:dgiot_DTU source
2.运行软件

  • 在dgiot_dtu 选择上一步创建的成对串口 com4,波特率:115200,校验位:无,数据位:8 停止位:1
  • 在dgiot_dtu 选择tcp 客户端通道,服务器地址为平台地址,服务器端口为ModbusRTU设备通道端口。
    注:模拟器开启了20111端口,需要在云服务开启防火墙端口。

  • 点击扫描,扫描成功建立com4的tcp桥接

4.创建采集通道

1.创建ModbusRTU采集通道。位置在通道管理-创建通道

2.选择Modbus采集通道并配置

3.产品添加通道后需对通道进行重启

4.通道日志查看

5.创建产品

1.要连接ModbusRTU,创建一种产品即可
2.创建产品

ModbusRTU

3.产品物模型配置
将以下物模型代码直接复制即可
ModbusRTU

{    "events": [],    "properties": [        {            "accessMode": "r",            "dataForm": {                "address": "0X10",                "afn": "",                "byteType": "",                "bytelen": "",                "collection": "%s/10",                "control": "%d",                "countcollection": "%s",                "countround": "all",                "countstrategy": 20,                "da": "",                "data": "null",                "dt": "",                "iscount": "0",                "offset": 0,                "operatetype": "readCoils",                "order": 0,                "originaltype": "short16_AB",                "protocol": "MODBUSRTU",                "rate": 1,                "round": "all",                "slaveid": "0X10",                "strategy": "3"            },            "dataSource": {                "": [],                "_dlinkindex": "",                "address": "0",                "operatetype": "readHregs",                "originaltype": "short16_AB",                "registersnumber": "1",                "slaveid": "0X01"            },            "dataType": {                "das": [],                "specs": {                    "max": 1000000,                    "min": -100,                    "precision": 3,                    "step": 0,                    "unit": "℃"                },                "type": "float"            },            "devicetype": "温度传感器",            "identifier": "temp",            "isaccumulate": false,            "isshow": true,            "isstorage": true,            "moduleType": "properties",            "name": "温度",            "required": true,            "updateAt": "1660825389940",            "index": 0        }    ],    "services": [],    "tags": []}COPY

4.如何复制物模型

在产品管理-配置-物模型-查看物模型处

将物模型代码复制粘贴即可

复制完后可以点击编辑查看配置情况

下方数据来源与ModbusSlave配置的一致

6.ModbusRTU设备连接的DTU注册成功

1.ModbusRTU设备连接的DTU点击连接,平台注册成功

2.ModbusRTU设备连接的DTU上线成功

3.设备地图显示成功

7.ModbusRTU数据采集成功

1.ModbusRTU实时数据

2.ModbusRTU历史数据

[小 迪 点评]

  • dgiot支持ModbusRTU协议的设备接入,方便没有真实设备的用户尝试并进行模拟设备接入演练。

想了解更多 dgiot 的具体细节,欢迎大家在GitHub上查看相关源代码。

发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章