如何使用 NB-Iot + Arduino 通过MQTT协议上传数据至阿里云平台

如何使用 NB-Iot + Arduino 通过MQTT协议上传数据至阿里云平台,第1张

有很多通信模块只有TCP功能,没有MQTT功能,比如WIFI,W5500等模块,还有一些NBIOT模块,但是又想连接阿里云物联网平台,官方提供了 *** 作系统,需要自己移植,很麻烦,比较难看得懂。就在想有没有一些简单一定的方法。
心想MQTT是基于TCP的,能否使用TCP转MQTT?因此就想使用TCP协议然后转MQTT协议连接阿里云物联网平台,经过试验证明是可以的。
首先我们先分析一下如何登陆接入Onenet平台。
先从它数据格式开始分析。首先我们要从后台取出三个信息,我们以这个为例。
我们把产品ID,设备名称,设备秘钥,简称三要素 (具体是什么看你自己的设备)
其实阿里云物联网平台的MQTT协议用的就是标准的,不过它加入了自己的认证方式。
MQTT协议需要上传四个参数,报活时间,clientID,用户名,密码。
那么阿里云的就在clientID,用户名,密码做了手脚。
clientID比较长,按照一定的格式
用户名:设备名和秘钥组成
密码:使用了加密串进行了加密,有sha1或者MD5加密方式
下面我们来介绍一下
MQTT接入都是发十六进制的数据。
么我们发送的时候就是这样子的一串数据
0x74 0x00 0x04 0x4d 0x51 0x54 0x54 0x04 0xC0 0078 0033 0x61 0x62 0x63 0x7c 0x73 0x65 0x63 0x75 0x72 0x65 0x6d 0x6f 0x64 0x65 0x3d 0x33 0x2c 0x73 0x69 0x67
0x6e 0x6d 0x65 0x74 0x68 0x6f 0x64 0x3d 0x68 0x6d 0x61 0x63 0x73 0x68 0x61 0x31 0x2c 0x74 0x69 0x6d 0x65 0x73 0x74 0x61 0x6d 0x70 0x3d 0x31 0x32 0x30 0x7c 0009
0x35 0x36 0x37 0x38 0x26 0x31 0x32 0x33 0x34 0028 0x32 0x32 0x32 0x37 0x35 0x30 0x44 0x45 0x44 0x46 0x45 0x34 0x46 0x37 0x37 0x34 0x30 0x30 0x32 0x45 0x45 0x38 0x37 0x45 0x45 0x44 0x32 0x39 0x43 0x46 0x44 0x30 0x36 0x33 0x38 0x43 0x35 0x46 0x36 0x36
十六进制解释
数据长度:0x74
协议数据长度 0x00 0x04
协议类型: 0x4d 0x51 0x54 0x54
协议数据: 0x04 0xC0
keepAlive数据:0078
ClientID长度:0033
ClientID: 0x61 0x62 0x63 0x7c 0x73 0x65 0x63 0x75 0x72 0x65 0x6d 0x6f 0x64 0x65 0x3d 0x33 0x2c 0x73 0x69 0x67 0x6e 0x6d 0x65 0x74 0x68 0x6f 0x64 0x3d 0x68 0x6d 0x61 0x63 0x73 0x68 0x61 0x31 0x2c 0x74 0x69 0x6d 0x65 0x73 0x74 0x61 0x6d 0x70 0x3d 0x31 0x32 0x30 0x7c
用户名:0009
用户名: 0x35 0x36 0x37 0x38 0x26 0x31 0x32 0x33 0x34
密码长度:0028
密码: 0x32 0x32 0x32 0x37 0x35 0x30 0x44 0x45 0x44 0x46 0x45 0x34 0x46 0x37 0x37 0x34 0x30 0x30 0x32 0x45 0x45 0x38 0x37 0x45 0x45 0x44 0x32 0x39 0x43 0x46 0x44 0x30 0x36 0x33 0x38 0x43 0x35 0x46 0x36 0x36复制代码上面的就是连接服务器的连接包
下面呢,我们来做个发布包(上传数据到服务器)
0x30 0x1D 0009 2f7379732f706f7374 0x7b 0x70 0x61 0x72 0x61 0x6d 0x73 0x3a 0x7b 0x74 0x65 0x6d 0x70 0x3a 0x31 0x30 0x7d 0x7d
十六进制数据解释
数据头:0x30
数据长度:0x1D
TopicName数据长度:0009
TopicName数据内容:2f7379732f706f7374
主体json数据: 0x7b 0x70 0x61 0x72 0x61 0x6d 0x73 0x3a 0x7b 0x74 0x65 0x6d 0x70 0x3a 0x31 0x30 0x7d 0x7d复制代码以上就是连接阿里云的数据包格式及发布数据的格式,由于时间问题没有做订阅的数据包分析,下一次更新订阅的内容。

通过从传感器、计量器等器件获取环境、资产或者运营状态信息,在进行适当的处理之后,通过传感器传输网关将数据传递出去;同时通过传感器接收网关接收控制指令信息,在本地传递给控制器件达到控制资产、设备及运营的目的

通过公网或者专网以无线或者有线的通信方式将信息、数据与指令在感知与控制层、平台服务层、应用服务层之间传递,主要由运营商提供的各种广域IP通信网络组成,包括ATM、xDSL、光纤等有线网络,以及GPRS、3G、4G、NB-IoT等移动通信网络

物联网平台是物联网网络架构和产业链条中的重要环节,通过它不仅实现对终端设备和资产的“管、控、营”一体化,向下连接感知层,向上面向应用服务提供商提供应用开发能力和统一接口,并为各行各业提供通用的服务能力,如数据路由、数据处理与挖掘、仿真与优化、业务流程和应用整合、通信管理、应用开发、设备维护服务等

丰富的应用是物联网的最终目标,未来基于政府、企业、消费者三类群体将衍生出多样化的物联网应用,创造巨大的社会价值。根据企业业务需要,在平台服务层之上建立相关的物联网应用,例如,城市交通情况的分析与预测,城市资产状态监控与分析,环境状态监控、分析与预警(如风力、雨量、滑坡),健康状况监测与医疗方案建议等

向下接入分散的物联网传感层,汇集传感数据
向上面向应用服务提供商提供应用开发的基础性平台和面向底层网络的统一数据接口,支持具体的基于传感数据的物联网应用

从设备底层到云端应用都由技术人员自行开发,对研发能力和开发时间都是不小的挑战
物联网应用存在共性需求如安全是否可以以云服务的方式提供这些功能?
物联网平台使物联网应用的快速实现成为可能,并从开发难度、功能性能和稳定可靠等多方面提供服务保证

DMP一般集成在整套端到端M2M设备管理解决方案中,解决方案提供商联合合作伙伴一起,提供通信网关、通信模块、传感器、设备管理云平台、设备连接软件,并开放接口给上层应用开发商,提供端到端的解决方案

大部分DMP提供商本身也是通信模组、通信设备提供商,如DiGi,Bosch等,本身拥有连接设备、通信模组、网关等产品和设备管理平台,因此能帮助企业实现设备管理的整套解决方案

一般DMP部署在整套设备管理解决方案中,整体报价收费;也有少量单独提供设备管理云端服务的厂商,每台设备每个月收取一定的运营管理费用

M2M连接数大、SIM卡使用量大、管理工作量大、应用场景复杂、要求灵活的资费套餐、低的ARPU值、对成本管理要求高

包含基础大数据分析服务和机器学习两大功能

未来物联网平台上的机器学习将向人工智能过渡,比如IBM Watson拥有IBM独特的DeepQA系统,结合了神经元系统,模拟人脑思考方式总结出来强大的问答系统,可帮助企业解决更多商业问题

AWS IoT可在连接了Internet的设备(如传感器、制动器、嵌入式微控制器或智能设备)与AWS云之间提供安全的双向通信,并使云中的应用程序能够与连接了Internet的设备进行交互。这样,用户能从多台设备收集遥测数据,然后存储和分析数据;也可以创建应用程序来通过手机或平板电脑控制这些设备

AWS IoT包括设备网关、消息代理、规则引擎、安全和身份服务、Device Shadow服务等组件

平台案例

通过使用AWS的服务,艾拉物联可以无需投资传统数据中心,便可提供企业级服务。在AWS的支持下,艾拉物联将全球的服务都可以整合到一个云平台上,以最小成本开拓了国际业务,使得各地都可以使用同样的开发及运维工具

AWS云服务安全、稳定、可扩展以及全球覆盖的特性加快了涂鸦业务的全球化部署,为保证海外涂鸦客户和合作伙伴能够享受到本地化的服务体验提供了坚强保障

使用AWS云平台给Sengled生迪带来的好处包括简化运维、节省人力成本、节省资源成本,同时可以灵活地扩展应用系统。AWS提供的丰富功能,使运维工程师不必研究学习传统的运维工具和方法,就可以建立起一套完整、可靠的交付系统和运维平台

物联网平台是阿里云针对物联网领域开发人员推出的一款设备管理平台。高性能IoT Hub实现设备与云端稳定通信,全球多节点部署有效降低通信延时,多重防护能力保障设备云端安全。此外,物联网平台还提供丰富的设备管理功能、稳定可靠的数据存储能力,以及规则引擎。使用规则引擎,您仅需在Web上配置简单规则,即可将设备数据转发至阿里云其他产品,获得数据采集、数据计算、数据存储的全栈服务,真正实现物联网应用的灵活快速搭建

平台案例

24小时ATM式自助售药机支持用户线下24h到店扫码付款,当场取货;线上平台下单,骑手限时送达。同时提供完备的商户管理后台,可以进行订单管理、货道管理与财务管理

仓库猫用于解决仓库的科学监测、信息化、网络化管理等问题。可以做到防火监测、防盗监测、防水监测、防潮监测、能够帮助企业快速搭建店铺的监测系统,报警系统,云存储系统

OneNET定位为PaaS服务,即在物联网应用和真实设备之间搭建高效、稳定、安全的应用平台

OneNET包括设备接入、设备管理、API,>

目前市面上的跌倒监测设备有各种各样的,常见的有红外、摄像头和毫米波,红外准确度稍差,摄像头侵犯隐私,而毫米波则解决了两者的问题,在准确度和隐私保护上都有很大的提升,这是目前技术的方向。

Vayyar Care正是这样的一种毫米波监测设备, 提供无接触式跌倒监测报警和健康监测解决方案,采用非接触式毫米波跌倒监测技术,不侵犯隐私,也没有拉绳按钮。如果居民发生跌倒,它能立刻自动进行跌倒检测,发起报警,寻求帮助。它使用完全无害的无线电波,其强度仅相当于手机信号的千分之一。只需安装在房间墙壁或天花板上,即可进行724小时不间断的监测,实现实时跌倒自动报警和活动监测,获取丰富的长者活动数据,有助于全面了解长者的健康数据,从而制定个性化的健康照护计划。

▶ 无需佩戴任何设备
▶ 全自动跌倒监测、自动报警,无需拉绳、按钮
▶ 非摄像头,不侵犯隐私

跌倒监测模拟场景,自动报警

本文将介绍使用 Node-RED 连接到 MQTT 服务器,并对 MQTT 数据进行过滤和处理后再将其发送至 MQTT 服务器的完整 *** 作流程。读者可以快速了解如何使用 Node-RED 对 MQTT 数据进行简单的流处理。

Node-RED 无论是在你本地的电脑上,还是树莓派等设备,亦或是云端服务器,都可以快速安装和使用,下面将使用两种比较常见的安装方式:

使用 npm 进行全局安装:

使用 Docker 进行安装:

如果使用的是 npm 进行的全局安装,那么在提示安装成功后,只需要在全局运行 node-red 命令就可以立即启动 Node-RED。

无论是使用 Docker 还是 npm 在启动成功后,我们只需要打开浏览器,输入当前地址加 1880 端口号,即可打开 Node-RED 的浏览器编辑器页面,例如在本地运行的话,打开浏览器,输入 >物联网主要功能是将用户端的所有需要的信息互通互联,实现全方位的远程识别、读取和 *** 控、互动。
应用层位于物联网三层结构中的最顶层,其功能为“处理”,即通过云计算平台进行信息处理。应用层与最低端的感知层一起,是物联网的显著特征和核心所在,应用层可以对感知层采集数据进行计算、处理和知识挖掘,从而实现对物理世界的实时控制、精确管理和科学决策。
从结构上划分,物联网应用层包括以下三个部分:
1. 物联网中间件:物联网中间件是一种独立的系统软件或服务程序,中间件将各种可以公用的能力进行统一封装,提供给物联网应用使用。
2. 物联网应用:物联网应用就是用户直接使用的各种应用,如智能 *** 控、安防、电力抄表、远程医疗、智能农业等等。
3. 云计算:云计算可以助力物联网海量数据的存储和分析。依据云计算的服务类型可以将云分为:基础架构即服务(IaaS)、平台即服务(PaaS)、服务和软件即服务(SaaS)
从物联网三层结构的发展来看,网络层已经非常成熟,感知层的发展也非常迅速,而应用层不管是从受到的重视程度还是实现的技术成果上,以前都落后于其他两个层面。但因为应用层可以为用户提供具体服务,是与我们最紧密相关的,因此应用层的未来发展潜力很大。

这里我们使用了一个库: PubSubClient

创建产品

创建新设备

(1) 产品ID, 用户ID,和登录key

(2) 设备名称, ID和 设备key

OneNet MQTTS用携带token的方式进行鉴权

访问者(可以为应用或者设备)固化访问密钥于软件中,在需要进行服务访问时,通过密钥计算临时token,通过临时token进行服务访问认证

访问者首先通过访问管理者获取临时访问token,访问管理者可根据需要自定义该token的访问有效期(即过期时间),访问者获取该token后方才能访问OneNET

访问管理者直接将密钥授权给访问者(例如,直接为设备烧写key),访问者通过密钥生成token进行访问

计算方法: >网关在网络层以上实现网络互连,是复杂的网络互连设备,仅用于两个高层协议不同的网络互连。
MQTT物联网PLC网关即wtblnet iot Gateway,是一款支持单网口/两网口/五网口,支持4G/3G/WIFI/PPPOE/WAN有线网络,
内嵌工业控制协议,支持远程自定义配置、远程部署、网关状态监控等技术于一体的内嵌网络 *** 作系统的工业级智能网关。
水利MQTT网关就是水利工程中所有的水利电机、传感器等设备接入到MQTT物联网协议网络。
电力MQTT网关就是电力工程中所有的电机、传感器,发电设备等等设备接入到MQTT物联网协议网络。
水利MQTT网关物联网协议,电力MQTT网关物联网协议传送到客户自定义的MQTT云平台,方便用户利用先进的物联网技术和两化融合技术快速构建一套高效、高并发的工业互联网系统及工业40服务平台。
好像,其中WG585工业智能网关在远程监控解决方案。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/13357245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-21
下一篇 2023-07-21

发表评论

登录后才能评论

评论列表(0条)

保存