Node-RED 实现 ThingsBoard 网关

28 篇文章 17 订阅
13 篇文章 3 订阅

# ThgingsBoard

https://iothub.org.cn/docs/iot/
https://iothub.org.cn/docs/iot/nodered/nodered-gateway/

一、环境准备

1.测试环境

# ThingsBoard
http://192.168.202.188:8080/login

# Node-RED
http://192.168.202.188:1880

设备名称:Node-RED-gateway
访问令牌:y0b9w7P2dSIR2AKn7Dl4

Nodered流程: TB-gateway

2.创建网关

在这里插入图片描述

3.创建Node-RED流程

在这里插入图片描述

二、设备链接

1.Connect

# 发布主题
v1/gateway/connect

{"device":"Device A"}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.Disconnect

v1/gateway/disconnect

{"device":"Device A"}

在这里插入图片描述

在这里插入图片描述

三、属性

1.发布属性到服务端

将客户端设备属性发布到ThingsBoard服务器节点。

Topic: v1/gateway/attributes

Message: {"Device A":{"attribute1":"value1", "attribute2": 42}, "Device B":{"attribute1":"value1", "attribute2": 42}}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.请求属性从服务端

向ThingsBoard服务器节点请求客户端或共享设备属性。

请向以下主题发送PUBLISH消息:

Topic: v1/gateway/attributes/request
Message: {"id": $request_id, "device": "Device A", "client": true, "key": "attribute1"}

其中$request_id是您的整数请求标识符,设备A是您的设备名称,client标识客户端或共享属性范围,key是属性键。

在发送PUBLISH消息和请求之前,客户端需要订阅

Topic: v1/gateway/attributes/response

并期望具有以下格式的结果的消息:

Message: {"id": $request_id, "device": "Device A", "value": "value1"}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.订阅属性更新从服务端

订阅共享设备属性更改,请向以下主题发送subscribe消息:

v1/gateway/attributes

并期望具有以下格式的结果的消息:

Message: {"device": "Device A", "data": {"attribute1": "value1", "attribute2": 42}}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、遥测

将设备遥测发布到ThingsBoard服务器节点,请向以下主题发送publish消息:

Topic: v1/gateway/telemetry

Message:

{
  "Device A": [
    {
      "ts": 1483228800000,
      "values": {
        "temperature": 42,
        "humidity": 80
      }
    },
    {
      "ts": 1483228801000,
      "values": {
        "temperature": 43,
        "humidity": 82
      }
    }
  ],
  "Device B": [
    {
      "ts": 1483228800000,
      "values": {
        "temperature": 42,
        "humidity": 80
      }
    }
  ]
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

五、服务端RPC

从服务器订阅RPC命令,请向以下主题发送subscribe消息:

v1/gateway/rpc

并期望具有以下格式的单个命令的消息:

{"device": "Device A", "data": {"id": $request_id, "method": "toggle_gpio", "params": {"pin":1}}}

一旦设备处理了命令,网关就可以使用以下格式发回命令:

{"device": "Device A", "id": $request_id, "data": {"success": true}}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

六、总结

在这里插入图片描述

# ThgingsBoard

https://iothub.org.cn/docs/iot/
https://iothub.org.cn/docs/iot/nodered/nodered-gateway/
  • 14
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Node-Red是一个开源的可视化编程工具,可以用于构建物联网应用程序。在工业物联网中,Node-Red可以作为网关应用程序的核心,处理设备数据、执行控制操作和与云平台通信。以下是基于Node-Red的工业物联网网关应用开发步骤: 1. 确定应用场景和需求:根据工业物联网应用需求,确定需要采集的设备数据、控制操作、通信协议和云平台接口等。 2. 确定硬件平台和设备接口:选择合适的硬件平台,如树莓派、Arduino等,确定设备接口,如GPIO、串口、I2C、SPI等。 3. 安装Node-Red:在硬件平台上安装Node-Red,可以使用官方提供的安装包或手动安装。 4. 配置设备接口:在Node-Red中配置设备接口,使用相应的节点和插件进行设备数据采集和控制操作。 5. 配置通信协议和云平台接口:在Node-Red中配置通信协议和云平台接口,使用相应的节点和插件进行数据传输和处理。 6. 编写应用程序逻辑:使用Node-Red提供的可视化编程工具,编写应用程序逻辑,实现设备数据采集、控制操作和云平台通信。 7. 测试和调试:在硬件平台上进行测试和调试,确保应用程序正常运行。 8. 部署和运维:将应用程序部署到生产环境中,进行运维和维护,保证应用程序的稳定性和可靠性。 总之,基于Node-Red的工业物联网网关应用开发需要具备一定的硬件和软件技术基础,同时需要对工业物联网应用场景和需求有深入的了解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IoTHub - 物联网开源技术社区

支持开源技术! 传播开源文化!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值