ThingsBoard Modbus数据采集与控制-(参数说明)

ThingsBorad开发教程:ThingsBoard概念 · ThingsBoard开发教程 · 看云

本文内容将帮助你通过thingsboard网关快速接入modbus协议的设备。
本文具体实现官网modbus官网modbus例子,并补充控制modbus的部分。

配置Modbus连接器

tb_gateway.yaml中配置thingsboard的地址端口以及tb-gateway连接到tb使用的accessaToken(在tb页面创建设备并勾选是否网关选项,复制此设备的accessToken,填入此配置),并打开modbus连接器配置

thingsboard:
  host: localhost
  port: 1883
  remoteShell: false
  remoteConfiguration: false
  security:
    accessToken: z5zRQmSXe64U39my83jd
  qos: 0
storage:
  type: memory
  read_records_count: 100
  max_records_count: 100000
connectors:
  -
    name: Modbus Connector
    type: modbus
    configuration: modbus.json

Modbus相关配置modbus.json具体含义在配置文件的注释

{
  "server": {
    "name": "Modbus Test Server", # modbus服务器名称
    "type": "tcp",# modbus连接方式
    "host": "10.211.55.3",# 地址
    "port": 502, # 端口
    "timeout": 35,
    "method": "socket",
    "devices": [
      {
        "unitId": 1, 
        "deviceName": "TH_sensor",# 设备名称,成功后会出现在tb的设备列表中
        "attributesPollPeriod": 5000, # 每隔五秒拉取一次属性数据
        "timeseriesPollPeriod": 5000, # 每隔五秒拉取一次遥测数据
        "sendDataOnlyOnChange": false,
        "attributes": [ # 数组中的定义作为属性上传到tb
          {
            "byteOrder": "BIG",
            "tag": "batteryLevel", # 定义属性名称展示在tb设备的属性中
            "type": "long",
            "functionCode": 4, # modbus的功能码 
            "registerCount": 1,# 读取的寄存器数量(从寄存器开始地址)
            "address": 2 # 读取的寄存器开始地址
          }
        ],
        "timeseries": [ # 作为遥测数据上传的定义
          {
            "byteOrder": "BIG",
            "tag": "humidity",# 湿度
            "type": "long",
            "functionCode": 4, # modbus功能码 4(只读)
            "registerCount": 1,
            "address": 1 # modbus地址1
          },
          {
            "byteOrder": "BIG",
            "tag": "temperature",# 温度
            "type": "long",
            "functionCode": 3, # modbus功能码 3(可读写)
            "registerCount": 1,
            "address": 0 # modbus地址0
          }
        ],
        "rpc": [ # rpc写/控制功能定义
          {
            "tag": "resetTemperature", # 对应rpc中method的值要指定此值
            "type": "16int", # 数据类型
            "functionCode": 6, # modbus功能码 6 
            "objectsCount": 1,
            "address": 0 # modbus地址 0
          }
        ]
      }
    ]
  }
}

转载路径:ThingsBoard Modbus数据采集与控制-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node-RED是一款基于JavaScript的开源软件,用于创建基于流程的物联网应用程序。Modbus是一种通用的通信协议,常用于连接工业自动化设备。Node-RED通过Modbus插件,可以实现数据采集数据采集是指从各种传感器、设备或系统中收集数据的过程。使用Node-RED进行Modbus数据采集可以帮助我们获取工业设备的实时数据,并进行实时监测和分析。 在Node-RED中,我们需要安装Modbus插件来支持Modbus通信。安装插件后,我们可以在流程编辑器中添加Modbus节点,配置节点的通信参数,例如Modbus设备的IP地址和端口号。然后,我们可以选择读取或写入Modbus设备的寄存器数据。 在数据采集过程中,我们可以通过设置定时器节点来定期读取Modbus设备的数据。读取到的数据可以保存在本地的数据库中,或者通过其他节点进行处理和分析。我们还可以通过在网页上创建可视化界面,实时展示采集的Modbus数据。 Node-RED的流程编辑器提供了丰富的功能和节点库,可以灵活地处理和展示数据。我们可以根据具体的需求,选择适合的节点进行数据处理。例如,我们可以使用计算节点对数据进行转换、计算或筛选;使用图表节点可视化数据;使用报警节点根据设定的阈值触发警报等等。 通过Node-RED进行Modbus数据采集,我们可以快速建立起一个灵活、可扩展的数据采集系统。同时,Node-RED的直观界面和丰富的节点库,简化了数据采集过程,使我们能够更轻松地获取和利用Modbus设备的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值