GW56网关对接华为云平台

接下来讲的是通过网迅通GW56网关接入华为云平台,通过MQTT实现读取与控制。主要步骤是通过GW56网关脚本编辑,通过Node-Red组帧上发数据至云平台。

实验步骤

登录华为云平台

共建智能世界云底座-华为云 (huaweicloud.com)

登录进去后点击进入控制台

image-20240726151821413

用户首次使用需要实名认证(如果已经实名认证过直接跳过这一步)。

image-20240726151943511

创建实例

点击设备标准接入进入设备接入IoTDA的页面。

image-20240726152155879

进入后点击购买实例,即可进行进一步的实验

image-20240726152251506

用户需要选择合适的区域范围,并根据自己的需求选择合适的规格配置进行购买

image-20240726152355537

创建产品

创建好实例后,在左侧选择产品,再选择创建产品

image-20240726152619723

所需资源空间默认选择,通信协议选择MQTT模式,其他自拟。

image-20240726153129876

华为云MQTT主题

点击详情配置信息

image-20240726153438982

进入Topic管理,可以看到Topic分类的订阅与发布主题。

image-20240726153549207

实验案例

本次实验使用网迅通GW56网关读取温湿度的值和控制报警灯与风扇。

创建产品

进入模型定义,点击自定义模型,添加服务(service_id)。

添加服务(service_id),可以就理解为组类

image-20240726154627359

image-20240726155030057

点击新增属性,创建温度和湿度。

image-20240726155218944

image-20240726155238824

同理添加添加服务(service_id)为执行器,添加属性为风扇和sos。

定义为可读可写,数据类型可选择布尔型或者枚举型。本次案例使用的是布尔型。

image-20240726155751335

image-20240726155806589

创建设备

创建完产品后,需要创建设备。点击所有设备注册设备

image-20240726155950360

image-20240726160215604

注册成功,点击详情

image-20240726160425302

可看到MQTT的连接参数,客户端ID(clientld),用户名(username),密码(password),服务器IP(hostname),端口(port)

image-20240726160948233

image-20240726161410779

网迅通GW56网关
进入Node-RED
  • 网关通电后网线连接到路由器。

    微信图片_20240411104600

  • 打开智能网关配置工具,点击搜索

    网关搜索

  • 进入脚本配置,可进行网关脚本编辑

    能用lua和python

    进入可视化编程

  • 回到页面,右键网关,可进入可视化编程

配置Modbus通信

利用RS485转USB连接传感器和控制器到电脑,利用配置软件配置设备地址。(网关的串口为com1)

最后得到:

传感器设备地址线圈/寄存器地址
湿度10
温度11

传感器地址

设备设备地址线圈/寄存器地址
4路IO控制器4
ON:SOS40
ON:风扇41

连接IO控制器设备的地址

回到Node-red,拉入Modbus-read,和debug,配置读寄存器。

传感器/执行器Poll Rate数组
温湿度4smsg.payload[i]
执行器7smsg.payload[i]

modbus配置

温湿度

配置温湿度read节点

(对于监控系统来说,设置合适的Poll Rate非常重要。如果Poll Rate设置得太低(即查询频率太高)。相反,如果Poll Rate设置得太高(即查询频率太低),则可能会导致系统无法及时响应设备状态的变化或数据更新。如果“Poll Rate”被设置为5秒,那么这意味着系统每5秒钟会查询一次设备或传感器的状态或数据。(要在debug中判断系统给传感器赋值的数组是什么类型的)

创建Server

通信连接

温湿度输出

拉入Modbus Read节点读取执行器的状态

拉入在modbus类型中拉入modbus-read和modbus-write,在dashboard中拉入gague(仪表盘)switch(开关),例如sos以下配置:

读写执行器

读执行器的数据配置

写sos的数据

写风扇的数据

image-20240729100036381

image-20240729101251390

了解华为云数据上传与下发格式
设备上报属性数据

发送主题为:$oc/devices/{device_id}/sys/properties/report

数据格式:

MQTT:通过属性上报接口MQTT协议属性上报,上报数据到物联网平台,MQTT属性上报样例如下:

 数据格式样例:   
  {
     "services": [
         {
             "service_id": "温湿度",
             "properties": {
                 "温度": 25
             }
         },
          {
             "service_id": "温湿度",
             "properties": {
                 "湿度": 30
             }
         }
     ]
 }

使用MQTT调试工具测试,数据是否上发成功

查看MQTT连接参数,使用8883端口需要开启SSL/TLS模式

image-20240729102744464

image-20240729103158137

成功连接了之后,发布消息到主题

image-20240729104833288

image-20240729105022710

平台下发属性数据

订阅主题为:$oc/devices/{device_id}/sys/properties/set/request_id={request_id}

不知道request_id可以用#表示

例子:$oc/devices/66a351596e9c0667e02b0568_test/sys/properties/set/#

MQTT测试工具中,订阅主题

image-20240729105829172

云平台手动控制下发属性

image-20240729110101018

image-20240729110119540

平台下发数据格式为:

 {
 "services":
 [
     {
 "properties":
             {"风扇":true},
             "service_id":"执行器"
     }
 ]
 }
配置MQTT通信
设备上发数据读取

拉入函数节点对温湿度的数据除以10,并组帧数据上传的格式上发至华为云平台。

拉入MQTT发送节点,配置通信。根据设备上报属性数据填写通信参数与主题。

image-20240729110648789

image-20240729110912424

拉入函数节点,根据数据上传格式进行组帧,上传数据到云平台。

image-20240729112055511

image-20240729112148059

image-20240729112158132

同理执行器的操作也一样。

image-20240729113424776

image-20240729113433454

平台下发数据控制

拉入MQTT订阅节点,根据平台下发属性数据填写通信参数与主题。

因为前面配置过通信连接,只需要选择对应的服务端即可

image-20240729114546187

因为要在Modbus Write节点前面注入true(开启)或者false(关闭),才能实现控制,所以我们要解析平台下发的数据。

 {
 "services":
 [
     {
 "properties":
             {"风扇":true},
             "service_id":"执行器"
     }
 ]
 }

例如此代码:要将解析出{"风扇":true}

拉入函数节点:

image-20240729115036865

报警灯:

image-20240729115201880

风扇:

image-20240729115122191

云平台控制

image-20240729115346978

最终JSON流:GW56网关对接华为云

  • 15
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值