钡铼R40边缘计算网关与华为云合作,促进物联网传感器数据共享与应用

news2024/11/18 5:58:03

场景说明

微型气象是不可预测的,基本上不能通过人工手段来分析其变化,因此必须运用新技术,对气象进行实时监测,以便采取相应的措施来避免或解决事故的发生。而常规气象环境数据采集容易造成数据损失、人力成本高、数据安全性差、可追踪性差等问题。为解决上述问题,可以通过网关将设备采集的数据上报到华为云IoT平台,实现对现场设备数据的实时监控,您可通过华为云IoT平台实时查看现场温度、湿度、光照、风速等环境数据,并对数据进行转储、分析等处理,同时也能通过IoT平台对设备进行控制。本文以金鸽的R40设备为例进行演示。

整体流程

整体流程如图所示:

图1 整体流程图

前提条件

  • 硬件要求:三个输出为12V 1000mA的电源。

设备简介

R40(如图2)负责将传感器的数据收集上来,上报到华为云IoT平台,同时负责将华为云IoT平台下发的控制信息下发给传感器。其中演示的传感器设备有如下三种:

1. 风速变送器(如图3)将采集到的风速通过电流信号输出给R40;

2. 气象多要素百叶箱(如图4)将采集到的噪声、光照、温湿度信息通过RS485口(Modbus协议)输出给R40。

3. 报警器(如图5)通过R40的DO口接收从华为云IoT下发给的控制信息。

图2 R40介绍

图3 风速变送器

图4 气象多要素百叶箱

图5 警报器

硬件连接

  1. 将风速变送器的棕色线和黑色线分别接到外部电源的正级和负极,将蓝色线和绿色线分别接入到R40的AIN1口和AGND口(见下图)。图6 风速变送器连接R40

  2. 将气象多要素百叶箱的棕色线和黑色线分别接到电源的正极和负极,将黄色线和蓝色线分别接入到R40的485A口和485B口(见下图)。

    图7 气象多要素百叶箱连接R40

  3. 将报警器的红色线和黑色线分别接到电源正极和R40的DO2口,将电源的负极接入到R40的DO1口(见下图)。

    图8 报警器连接R40

控制台操作概览

在真实设备连接之前,需要在设备接入服务控制台创建产品、定义产品模型和注册设备。

  • 创建产品:在物联网平台上规定好某一款产品的协议类型、数据格式、厂商名称、设备类型。此处我们需要按照R40的特征,在控制台创建R40的产品。
  • 定义产品模型:产品模型是用来描述设备能力的文件,通过JSON的格式定义了设备的基本属性、上报数据和下发命令的消息格式。定义产品模型,即在物联网平台构建一款设备的抽象模型,使平台理解该款设备支持的属性信息,例如风速、光照强度、温湿度、噪声等。
  • 注册设备:将R40设备注册到物联网平台。

创建产品

某一类具有相同能力或特征的设备的集合称为一款产品。除了设备实体,产品还包含该类设备在物联网能力建设中产生的产品信息、产品模型(Profile)等资源。下面,我们按照R40的基本特征,在控制台上创建R40产品。

  1. 访问设备接入服务,单击“立即使用”进入设备接入控制台。
  2. 选择左侧导航栏的“产品”,然后单击右上角的创建产品,创建一个基于MQTT协议的产品,参考下表填写参数后,单击“确定”,完成产品的创建。

    基本信息

    所属资源空间

    选择您需要归属到的资源空间

    产品名称

    自定义,如“R40”

    协议类型

    选择“MQTT”

    数据格式

    选择“JSON”

    厂商名称

    自定义,如“huawei”

    所属行业

    设备类型

    EnvironmentalMonitoringDevice

  3. 产品创建成功后,单击“查看详情”按钮进入产品界面,进行后面操作。

上传产品模型

产品模型是用来描述设备能力的文件,通过JSON的格式定义了设备的基本属性、上报数据和下发命令的消息格式。定义产品模型,即在物联网平台构建一款设备的抽象模型,使平台理解该款设备的功能。我们已提供开发好的产品模型,帮助您快速体验上云流程,如果您想体验产品模型的开发流程,可参考开发产品模型。

操作步骤

  1. 在产品详情“模型定义”页面,单击“上传模型文件”。
  2. 在弹出的页面中,上传提供的产品模型(本示例的产品模型),然后单击“确认”。

    图9 添加文件

注册设备

  1. 在管理控制台页面,选择左侧导航栏“设备 > 所有设备”,单击页面右上角的“注册设备”。
  2. 根据页面提示信息填写参数,然后单击“确定”。

    参数名称

    说明

    所属资源空间

    确保和之前创建的产品归属在同一个资源空间。

    所属产品

    选择之前创建的产品。

    设备标识码

    即nodeID,设备唯一物理标识。可自定义,由英文字母和数字组成。

    设备名称

    即device_name,可自定义。

    设备认证类型

    选择密钥。

    密钥

    设备密钥,可自定义,不填写物联网平台会自动生成。

    成功注册设备后,平台会自动生成设备ID和密钥,请妥善保管好设备ID(deviceId)和密钥(deviceSecret),用于设备接入。

R40配置

在R40上需要对传感器的参数进行配置:

风速变速器相关配置:

  • R40上电后,在自己的电脑上连接King开头的wifi,连上后在浏览器中输入地址192.168.3.1进入R40的配置界面。
  • 输入用户名(默认为admin)和密码(默认无密码)后,点击“登录”按钮。
  • 点击上方菜单栏“RTU I/O”,选中“模拟量接入”,进入模拟输入配置界面。

  • 在AIN1输入一行(因为风速变速器选择的是该口)中,选择“电流4~20mA”(风速变送器的输出为该值)。并且按照传感器推荐的将最小值设置为0,最大值设置为30,单位设置为m/s。
  • 设置完毕后,点击“保存并应用”。
  • 通过旋转风速变送器的扇叶,然后刷新一下当前的配置页,可以看到“当前值”那一栏中有数据,说明已经能采集到传感器的数据。

气象多要素百叶箱相关配置:

说明

从机地址、寄存器类型、功能码以及寄存器起始地址可以从气象多要素百叶箱的配置文件中获取到。

映射地址为R40的寄存器地址,建议改为手动,同时设置映射地址。因为该地址跟物模型中的属性是对应的,属性名称需要设置成“REG”+ 映射起始地址。这里设置20004是因为物模型中已经设置了REG20004的属性名。

  • 从噪声查看页点击“返回至概况”,在Modbus设置界面下方的空白框处填写“lightIntensity”,点击“添加”按钮。添加完成后,点击“编辑”按钮(“删除”按钮旁的那一个),进入传感器的配置界面。
  • 在配置界面,将别名设置为“光照强度”,从机地址设置为“5”,寄存器类型设置为“32位数据”,功能码设置为“03”,寄存器起始地址设置为“0”,数据个数设置为“1”,映射地址分配设置为“手动”,映射起始地址设置为“20130”,从机接口设置为“RS485”。

  • 设置完毕后,点击“保存”。然后点击左下角的“返回至概况”。然后点击“保存并应用”
  • 点击“lightIntensity”这一行的“查询”按钮,可以看到“数据值”,如果周围光照强度发生改变,可以通过刷新按钮来查看值的变化。

说明

从机地址、寄存器类型、功能码以及寄存器起始地址可以从气象多要素百叶箱的配置文件中获取到。

映射地址为R40的寄存器地址,建议改为手动,同时设置映射地址。因为该地址跟物模型中的属性是对应的,属性名称需要设置成“REG”+ 映射起始地址。这里设置20130是因为物模型中已经设置了REG20130的属性名。

  • 从光照强度查看页点击“返回至概况”,在Modbus设置界面下方的空白框处填写“shidu”,点击“添加”按钮。添加完成后,点击“编辑”按钮(“删除”按钮旁的那一个),进入传感器的配置界面。
  • 在配置界面,将别名设置为“湿度”,从机地址设置为“1”,寄存器类型设置为“16位数据”,功能码设置为“03”,寄存器起始地址设置为“500”,数据个数设置为“1”,映射地址分配设置为“手动”,映射起始地址设置为“20015”,从机接口设置为“RS485”。

  • 设置完毕后,点击“保存”。然后点击左下角的“返回至概况”。然后点击“保存并应用”
  • 点击“shidu”这一行的“查询”按钮,可以看到“数据值”,如果周围光照强度发生改变,可以通过刷新按钮来查看值的变化。

说明

从机地址、寄存器类型、功能码以及寄存器起始地址可以从气象多要素百叶箱的配置文件中获取到。

映射地址为R40的寄存器地址,建议改为手动,同时设置映射地址。因为该地址跟物模型中的属性是对应的,属性名称需要设置成“REG”+ 映射起始地址。这里设置20115是因为物模型中已经设置了REG20115的属性名。

  • 从湿度强度查看页点击“返回至概况”,在Modbus设置界面下方的空白框处填写“wendu”,点击“添加”按钮。添加完成后,点击“编辑”按钮(“删除”按钮旁的那一个),进入传感器的配置界面。
  • 在配置界面,将别名设置为“温度”,从机地址设置为“1”,寄存器类型设置为“16位数据”,功能码设置为“03”,寄存器起始地址设置为“501”,数据个数设置为“1”,映射地址分配设置为“手动”,映射起始地址设置为“20003”,从机接口设置为“RS485”。

  • 设置完毕后,点击“保存”。然后点击左下角的“返回至概况”。然后点击“保存并应用”
  • 点击“shidu”这一行的“查询”按钮,可以看到“数据值”,如果周围光照强度发生改变,可以通过刷新按钮来查看值的变化。

说明

从机地址、寄存器类型、功能码以及寄存器起始地址可以从气象多要素百叶箱的配置文件中获取到。

映射地址为R40的寄存器地址,建议改为手动,同时设置映射地址。因为该地址跟物模型中的属性是对应的,属性名称需要设置成“REG”+ 映射起始地址。这里设置20003是因为物模型中已经设置了REG20003的属性名。

R40上报到平台的配置:

  • 在上方的菜单栏中选择“云平台”,选择“华为云”。“认证方式”选择“设备密钥”,设备ID和密钥在iot平台注册所得,服务ID填写“basicData”,发布周期填写60。
  • 配置完后,点击“保存并应用”。设置完毕后,R40会自动连上华为云iot平台,并且每隔60s报一次数据。

设备上线及数据上报

在华为云IoT平台的“设备”>“所有设备”一栏里,可以看到注册的设备已经上线了。

在上述页面点击该设备右侧的“查看”按钮,可以看到上报的数据。

属性配置下发

单击上图的“设备影子”>“属性配置”>设置DO1为1,然后点击“确定”按钮,即可听到报警器发出报警声,代表属性设置成功。

说明

其中的服务名称basicData是在产品模型中自定义的,可以修改为自定义的内容,同时上报数据时也需要同步修改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/956499.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据分享】2023年7月道路数据(全国/分省/分城市/无需转发)

道路数据是我们在各项研究中经常使用的数据!道路数据虽然很常用,但是却基本没有能下载最近年份道路数据的网站,所以很多人不知道如何获到道路数据。 本次我们为大家推荐的下载道路数据的网站是Open Street Map!我们先来了解下Ope…

查漏补缺 - JS三 WebAPI

目录 BOMhistory DOM操作DOM1,dom.children 和 dom.childNodes 区别2,dom.remove()3,其他常用 API DOM 属性1,标准属性2,自定义属性 DOM 内容DOM样式DOM事件 JavaScript 包括 EcmaScript 和 WebAPI EcmaScript 包括 语…

03Linux

物联201白悦颖 学号:2008070101 青岛科技大学 目录 ⼀、进程与线程 1. 进程 2. 线程 3. 进程和线程的使用情况 ⼆、linux下的sudo命令 1. sudo 功能? sudo提供的临时权限什么时候被取消? 为什么要取消 sudo 权限…

C++之访问vector<vector<char>>中的vector<char>元素(一百八十七)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

ceph架构及 IO流程

CEPH是由多个节点构成的集群,它具有良好的可扩展性和可靠性。节点之间相互通信以达到: 存储和检索数据 数据复制 监控集群的健康状况 保证数据的完整性 检测故障并恢复 基本架构如下图: 分布式对象存储系统RADOS是CEPH最为关键的技术&a…

深入理解css3背景图边框

border-image知识点 重点理解 border-image-slice 设置的值将边框背景图分为9份,图像中间的舍弃,其他部分图像对应边框的相应区域放置,上右下左四角固定,border-image-repeat设置的是除四角外其他部分的显示方式。 截图来自菜鸟教…

2分钟搭建FastGPT训练企业知识库AI助理(Docker部署)

我们使用宝塔面板来进行搭建,更方便快捷灵活,争取操作时间只需两分钟 宝塔面板下安装Docker 在【软件商店中】安装【docker管理器】【docker模块】即可 通过Docker安装FastGPT 通过【Docker】【添加容器】【容器编排】创建里新增docker-compose.yaml以下…

部署项目至服务器

安装conda https://zhuanlan.zhihu.com/p/489499097 个人租借的服务器如何进行端口的开放呢? 防火墙设置: 添加规则设置: 即可; 通常下租借的服务器没有防火墙设置 相关链接: https://blog.csdn.net/weixin_4520…

Vulnhub内网渗透DC-7靶场通关

个人博客: xzajyjs.cn DC系列共9个靶场,本次来试玩一下一个 DC-7,下载地址。 下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题。靶场推荐使用NAT(共享)模式,桥接模式可能会造成目标过多不…

ARM DIY(六)音频调试

前言 今天,调试一下音频 硬件焊接 硬件部分核心是 LM4871 音频功放芯片 对于 SOC 来讲很简单,就一个引脚 HPOUTL(单声道);对于扬声器来讲也很简单,就两个引脚,插上就可以了。 另外一个关键点…

Revit SDK:SpatialFieldGradient 在面上显示渐变颜色(AVF)分析显示样式

前言 这个例子使用Revit显示样式功能将面显示成不同的颜色。分析显示样式参考官方文档。 内容 效果: 核心逻辑: 得到一个 SpatialFieldManager拾取一系列的面:uiDoc.Selection.PickObjects(ObjectType.Face)计算面上的 UV 值,…

Ubuntu22.04.1上 mosquitto安装及mosquitto-auth-plug 认证插件配置

Ubuntu22.04.1上 mosquitto安装及mosquitto-auth-plug 认证插件配置 1、先上效果,可以根据mysql中mosquitto数据库的不同users角色登陆mosquitto: SELECT * FROM mosquitto.users; id,username,pw,super 1,jjolie,PBKDF2$sha256$901$yZnELWKK4NnaNNJl…

使用SpaceDesk连接平板作为电脑副屏详细步骤教程

文章目录 下载安装PC端安装安卓端安装 配置步骤PC端安卓端 连接 SpaceDesk官网链接https://www.spacedesk.net/ (应该是需要科学上网才能进入) SpaceDesk它可以连接安卓,苹果的平板,手机等,也可以连接其他可以打开网页(HTML5)的设备。 这里我…

【大数据模型】让chatgpt为开发增速(开发专用提示词)

汝之观览,吾之幸也!本文主要聊聊怎样才能更好的使用提示词,给开发提速,大大缩减我们的开发时间,比如在开发中使用生成表结构脚本的提示词,生成代码的提示词等等。 一、准备 本文主要根据Claude进行演示&am…

Python正则表达式中re.sub自定义替换方法正确使用方法

大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 话不多说,直接开搞,如果有什么疑惑/资料需要的可以点击文章末尾名片领取源码 在使用正则替换时,有时候需要将匹配的结果做对应处理,便可以使用自定义替换方法。 re.sub的用法为&…

ES线程池设置

一文搞懂ES中的线程池 - 知乎 ES线程池设置-阿里云开发者社区 文章目录 一、简介 二、线程池类型 2.1、fixed 2.2、scaling 2.3、direct 2.4、fixed_auto_queue_size 三、处理器设置 四、查看线程池 4.1、cat thread pool 4.2、nodes info 4.3、nodes stats 4.4、no…

【C++初阶】模拟实现优先级队列priority_queue

👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&#x1…

Elasticsearch:将段落向量搜索添加到 Lucene

作者:Benjamin Trent 向量搜索是信息检索工具箱中的一个强大工具。 将向量与词法搜索(如 BM25)一起使用很快变得司空见惯。 但向量搜索中仍然存在一些痛点需要解决。 主要的一个是文本嵌入模型和处理更大的文本输入。 像 BM25 这样的词法搜索…

数据库备份与恢复

数据库备份的重要性 在生产环境中,数据的安全性至关重要,任何数据的丢失都可能产生严重的后果。 造成数据丢失的原因有:程序错误、人为操作错误、运算错误、磁盘故障、灾难(如火灾、地震)和盗窃。 数据库备份的分类 从物理与逻辑的角度&a…