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

物联网的技术原理

事实上,物联网的原理是在计算机互联网的基础上,利用RFID、无线数据通信技术,构建覆盖全球数万座建筑的物联网。在这个网络中,建筑物(物品)之间可以在不需要人工干预的情况下进行通信。其实质是利用射频自动识别技术,通过计算机互联网实现物品之间的自动识别和信息的互联与共享。

物联网的核心技术还在云计算中,云计算是物联网实现的核心。物联网的三个关键技术和领域包括:传感器技术、RFID标签技术、嵌入式系统技术。领域:公共事务管理(节能环保、交通管理等)、公共社会服务(医疗健康、家居建筑、金融保险等)、经济发展(能源电力、物流零售等)。

传感器技术是计算机应用中的一项关键技术,将传输线上的模拟信号转化为可由计算机处理的数字信号。

RFID,即射频识别,是一种集射频技术和嵌入式技术于一体的集成技术,在不久的将来将广泛应用于自动识别和货物物流管理。

嵌入式系统技术是集计算机软件、计算机硬件、传感器技术、集成电路技术和电子应用技术为一体的复杂技术。

物联网使用场景,主要体现在几个步骤:采集、传输、计算、展示

物联网终端采集数据,将数据传送给服务器,服务器存储和处理数据,并将数据显示给用户。

例如,自行车是共享的,前向过程是自行车获取GPS位置数据,通过2G网络向服务器报告,服务器记录自行车位置信息,用户在APP终端查看自行车位置。反向处理是用户向服务器发出解锁请求,服务器通过2G网络向自行车发送解锁指令,自行车执行解锁指令。

物联网的大大小小的应用都是基于正向数据采集和反向指令控制实现的。

传输模式的选择:取决于距离和功耗

物联网的联网方式:

近距离低功耗,带BLE或ZigBee。

远距离低功耗,NB-IoT或2G

近距离大数据,带WiFi

大数据远程,使用4G网络

关于网络布局:

远距离传输比短距离传输更昂贵,功耗更高。合理使用远距离和远距离配置可以有效降低物联网终端的成本。

例如,原始共享自行车被2G网络解锁,需要数据的长连接或下行短消息解锁,功耗高,下载的共享自行车丢弃了远程解锁,直接使用手机的蓝牙解锁自行车,节省数据流,降低功耗,本发明还可以提高解锁速度,剩余能量电动自行车智能充电站也是物联网的高科技产品,采用最新的窄带通信技术引领电动自行车充电设备的技术高度。

云服务设计

物联网的云服务器和应用程序设计与I互联网基本一致,Java、PHP和ASP可用于物联网的后台处理。

移动互联网是“人-服务器-人”的框架,物联网是"物-服务器-人"的框架,两者是相同的,物联网终端设备也采用TCP、>

总结简图

物联网是指各种传感器等实时采集相关信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。
物联网是新一代信息技术的重要组成部分,其核心和基础仍然是互联网,是在互联网基础上的延伸和扩展的网络,但又不完全是互联网,是将互联网的用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信。物联网的基本特征从通信对象和过程来看,物与物、人与物之间的信息交互是物联网的核心。物联网的基本特征可概括为整体感知、可靠传输和智能处理。
物联网有三个层面:感知层、网络层、应用层。在感知层,我们在客观物体中植入了精密的传感器和芯片,有相关的感知设备,通过信息传感设备,把物体的状态信息从物理信号转化成电信号,感知层是物联网发展前提,必须由传感器,才能获取物体信息。
光把物体的信息感知出来是不够的,要实现到网络上来传输应用,既包括ZigBee、蓝牙、红外、超宽带、近场通信等用于传感器网络或智能设备近距离通信的技术,也包括宽带接入。将物体与网络连接,物体通过信息传播媒介进行信息交换和通信,实现智能化识别、定位、跟踪等,万物皆可连。
利用经过分析处理的感知数据为用户提供丰富的服务,可分为管理和应用两个部分内容,在管理层有信息处理、应用集成、云计算、解析服务、网络管理、web服务。目前物联网在很多领域应用,智能家居、环保检测、城市管理、公共安全、远程医疗等。
物联网的原理是在计算机互联网的基础上,利用RFID、无线数据通信技术,构建覆盖全球数万座建筑的物联网。在这个网络中,建筑物(物品)之间可以在不需要人工干预的情况下进行通信。其实质是利用射频自动识别技术,通过计算机互联网实现物品之间的自动识别和信息的互联与共享。移动互联网是"人-服务器-人"的框架,物联网是"物-服务器-人"的框架,两者是相同的,物联网终端设备也采用TCP、>

物联网相关术语:6LoWPAN、高级加密标准、应用程序编程接口、信标技术、大数据、低能耗蓝牙、云计算、Firmware-Over-The-Air、网关。

1、6LoWPAN

IPv6(当前的互联网协议)和低功耗无线个人区域网络的融合,允许功率受限的物联网设备直接访问TCP/IP互联网。这意味着即使最小最弱的物联网设备也可以连接。

2、高级加密标准

这是一个电子数据加密规范,自2001年以来一直是物联网设备传输层安全的标准。

3、应用程序编程接口

一种加速计算机与硬件/软件平台之间通信的方法。

4、信标技术

这允许小型网络发射器与使用低功耗蓝牙的系统进行交互。苹果的版本叫做iBeacon。

5、大数据

大量的信息,包括结构化的和非结构化的,从大量来源收集并以极快的速度传递。这些信息是原始数据,供分析人员为企业和其他组织设计更明智的战略。物联网是大数据的巨大来源。

6、低能耗蓝牙

一种无线的个人区域网络,其特点是低功耗和有限的数据传输范围。它也被称为蓝牙40。

7、云计算

通过网络连接并用于数据存储、处理和管理的远程服务器,而不是依赖于本地的内部物理服务器。

8、嵌入式软件

控制通常不被认为是计算机的硬件设备和系统的计算机软件,例如智能冰箱。

9、Firmware-Over-The-Air

该技术也被称为FOTA,允许移动设备上的软件和服务的远程无线安装、维修和升级。

10、网关

这是任何设备,收集信息从不同的网络点,并发送信息到另一个网络。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存