一、概述
1. 什么是IoT
IoT全称The Internet of Things,直译过来就是:物体的Internet网络,也就是物联网。
关于物联网的百度百科定义如下:
物联网是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、 连接、互动的物体或过程,采集其声、光、热、电、力学、化 学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。
物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络。
2. 物联网发展的问题与瓶颈:
①、技术标准的统一与协调
目前,传统互联网的标准并不适合物联网。物联网感知层的数据多源异构,不同的设备有不同的接口,不同的技术标准;网络层、应用层也由于使用的网络类型不同、行业的应用方向不同而存在不同的网络协议和体系结构。建立的统一的物联网体系架构,统一的技术标准是物联网现在正在面对的难题
②、碎片化
由于终端设备的多样化,物联网的开发和应用存在较严重的碎片化问题,主要体现在以下几个方面:
(1)电气接口的碎片化
传统电气接口分为模拟信号、数字信号的传输模式,数字信号又有无数种通讯协议,所以电器接口访问问题给处理器编程带来了繁重任务,集成化的通讯模块的电气接口也同样存在问题;
(2)终端传感器的访问协议碎片化
每个传感器的配置、访问方式和通讯协议均不同,也需要进行重复的编程和配置;
(3)终端通讯接入方式碎片化
物联网终端可能是有线网络接入或者总线接入,也可能无线网络接入,而无线网络接入协议众多,如近距离的蓝牙、超宽带,中距离的zigbee WIFI,还有传统广域的2G 4G接入。还有近年来兴起的Lora、NB-IoT等;
(4)处理器碎片化
处理器纷繁复杂,对应不同的处理器,需要进行不同的板级配置,没有统一标准的板级硬件;
(5)物联网平台的碎片化
由于物联网到终端的通讯协议没有统一,物联网平台传输协议各不相同,传入不同的云服务器需要进行重复的编程工作。
3、物联网分层结构
STM32硬件开发属于节点层的开发,属于物联网硬件开发;
开发物联网硬件的“物”的特性:
(1)低成本
(2)资源受限
(3)电池与能耗
(4)网络环境不稳定
(5)网络安全不稳定
(6)工作环境不稳定
(7)传递数据量小
如何实现上述“物”的特性:
(1)新型物联网通讯协议
(2)轻量级协议栈
(3)硬件低功耗设计
(4)一定的安全性
4、目前物联网三大通讯协议:
5、物联网安全
物联网被劫持的几种情况,这些情况就要求我们:
a、在云端方面应该做好设备的认证、授权,同时做好用户认证及用户权限管理;
b、在传输过程中应该建立好具有安全认证的数据通道,数据校验及服务器认证,如有必要,需加设密钥证书等验证方式
b、在硬件方面STM32读保护、MPU、防火墙等功能的应用
二、MQTT通讯协议
MQTT全称Message Queuing Telemetry Transport,直译过来是消息队列遥测传输的意思
百度百科对于MQTT协议的定义如下:
MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在