华为云物联网平台支持的接入方式

华为云物联网平台支持的接入方式,第1张

通过终端设备直接接入。为云物联网平台支持终端设备直接接入,也可以通过工业网关或者家庭网关接入,支持多网络接入、原生MQTT协议接入、SDK接入,解决设备接入复杂多样化和碎片化难题,实现设备的快速接入。

MQTT是用于物联网的标准消息传递协议,具有轻巧高效、双向通讯、安全、可靠传递等优点,常被设计为一种非常轻量级的发布,适用于较小的代码占用量和网络带宽连接远程设备。
随着物联网、大数据及人工智能的迅速发展,自动化厂商也在加速推进物联网战略,推出各自的IoT和数字化解决方案。作为主流物联网协议的MQTT协议迅速成为各自动化设备厂商关注的重点,各大自动化厂商为了加速实现互联互通的工业物联网,纷纷开始在 PLC 中集成 MQTT 协议,以方便 PLC 数据的采集,如西门子、倍福、菲尼克斯、矩形科技等等。
如果你是相关需求,且经费预算有限,可以选择国内品牌。如矩形科技,矩形科技旗下产品覆盖军工、楼宇、能源管理、自动化装备等多个领域,大部分均支持MQTT协议。 百度也有很多相关信息。

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

创建产品

创建新设备

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

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

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

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

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

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

计算方法: >

MQTT ( 消息队列遥测传输 )是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族 上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个 消息中间件 。

MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。

MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:

实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份: 发布者(Publish) 代理(Broker) (服务器) 、订阅者(Subscribe) 。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。

MQTT传输的消息分为: 主题(Topic)和负载(payload) 两部分:

MQTT服务器以称为"消息代理"(Broker),可以是一个应用程序或一台设备。它是位于消息发布者和订阅者之间,它可以:

在MQTT协议中,一个MQTT数据包由: 固定头(Fixed header)、可变头(Variable header)、消息体(payload) 三部分构成。MQTT数据包结构如下:

(1) 固定头(Fixed header) 。存在于所有MQTT数据包中,表示数据包类型及数据包的分组类标识。
(2) 可变头(Variable header) 。存在于部分MQTT数据包中,数据包类型决定了可变头是否存在及其具体内容。
(3) 消息体(Payload) 。存在于部分MQTT数据包中,表示客户端收到的具体内容。

固定头存在于所有MQTT数据包中,其结构如下:

相于一个4位的无符号值,类型、取值及描述如下

在不使用标识位的消息类型中,标识位被作为保留位。如果收到无效的标志时,接收端必须关闭网络连接:

Payload消息体位MQTT数据包的第三部分,包含CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE四种类型的消息:

MQTT协议广泛应用于物联网、移动互联网、智能硬件、车联网、电力能源等领域。

物联网M2M通信,物联网大数据采集

Android消息推送,WEB消息推送

移动即时消息,例如Facebook Messenger

智能硬件、智能家具、智能电器

车联网通信,电动车站桩采集

智慧城市、远程医疗、远程教育

电力、石油与能源等行业市场

有很多通信模块只有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复制代码以上就是连接阿里云的数据包格式及发布数据的格式,由于时间问题没有做订阅的数据包分析,下一次更新订阅的内容。

4G DTU也称4G IP MODEM,是厦门四信推出的一种物联网无线数据终端,利用公用蜂窝网络为用户提供无 线长距离数据传输功能。它采用高性能的工业级 32 位通信处理器和工业级无线模块,以嵌入式实时 *** 作系 统为软件支撑平台,同时提供 RS232 和 RS485(或 RS422)接口,可直接连接串口设备, 实现数据透明传输功能;低功耗设计,最低功耗小于 5mA@12VDC;提供 1 路 ADC,2 路 I/O, 可实现数字量输入输出、脉冲输出、模拟量输入、脉冲计数等功能。 该产品已广泛应用于物联网产业链中的 M2M 行业,如智能电网、智能交通、智能家居、 金融、移动 POS 终端、供应链自动化、工业自动化、智能建筑、消防、公共安全、环境保 护、 气象、数字化医疗、遥感勘测、军事、空间探索、农业、林业、水务、煤矿、石化等 领域。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存