整体架构
IoT设备组件
硬件抽象层
为了确保便携性,IoT设备需要包括一个软件层,可以访问MCU的硬件功能,如闪存,GPIO,串行接口等。
提供高级API用于访问由微控制器(如GPIO,ADC,MEMS等)提供的硬件功能。它可以直接连接到由硅供应商提供的本地库,驱动程序和板支持包。
通讯
IoT设备需要允许将其连接到有线或无线协议的驱动程序和协议,从而实现通信。
提供MQTT协议的实现。
远程管理
IoT设备需要远程控制的情况很多,例如升级固件或监控其电池电量。
- Provides an implementation of the OMA LWM2M standard.
- 提供OMA LWM2M标准的实现。
IoT网关组件
操作系统
Linux (Ubuntu/Ubuntu Core, Yocto-based linux distribution), Windows.
应用容器或者应用运行时
OSGi Runtime
通讯和连接
与网关I / O(例如串行,RS-485,BLE,GPIO等)接口,并支持可用于连接设备(例如MODBUS,CAN总线等)的许多现场协议。
网络管理
通过广泛的接口(蜂窝,Wi-Fi,以太网等)提供先进的网络和路由功能。
数据管理和消息
实现基于本地MQTT的消息传递解决方案,允许在网关上运行的应用程序透明地与云平台通信,而无需处理网络接口的可用性,或如何表示IoT数据。 通过内置的Apache Camel消息路由引擎可以获得对附加消息协议的支持。
I
远程管理和消息
提供基于MQTT协议的远程管理解决方案,除了控制(安装,更新,修改设置)其运行的软件之外,还可以监视IoT网关的总体运行状况。
云平台组件
连接性和消息路由
IoT平台需要能够与使用不同协议和数据格式的大量设备和网关进行交互,然后将其规范化,以便轻松集成到企业的其余部分
提供用于与使用任意协议的设备交互的统一API,以及可扩展的框架来添加其他协议。
提供MQTT代理的实现。
设备管理
IoT平台应该能够配置新的软件更新和管理设备。
提供OMA LWM2M设备管理协议的实现
设备注册
中心注册表有助于识别和验证在IoT解决方案中运行的设备/网关
提供管理工具,向设备和网关推出软件更新
事件管理
分析
- 包括Apache Hadoop,Apache Spark和Apache Storm。
- 提供对仪表板和存储在各种数据存储库中的数据报告的支持。
应用服务接口
通过公开应用程序编程接口(API),能够整合和分析数据,并创建报告,图表和仪表板。
- 有助于公开一致的API,用于消费遥测数据或向设备发送命令,以便使IoT应用程序开发合理化。
开放标准
CoAP
CoAP(约束应用协议)是专门用于受限节点和网络的协议。
它实现了REST架构风格,可以透明地映射到HTTP。 然而,CoAP还提供超出HTTP的功能,如本地推送通知和群组通信。
DTLS
数据报传输层安全(DTLS)协议为诸如数据报协议提供了通信安全性。 DTLS允许基于数据报的应用程序以旨在防止窃听,篡改或消息伪造的方式进行通信。 对于IoT应用,DTLS可用于保护基于CoAP的通信。
ISO/IEC 15118
题为“道路车辆 - 车辆到电网通信接口”的国际标准ISO / IEC 15118定义了电动汽车(EV)和充电站(称为电动车辆供应设备 - EVSE)之间的数字IP通信接口。
它允许基于在EV和EVSE之间交换的广泛信息的用户友好的“插入和充电”机制进行认证,授权,计费和灵活的负载控制。
IEC 61499
国际标准IEC 61499,涉及工业过程测量和控制系统功能块的主题。 IEC 61499的规范定义了分布式控制系统的通用模型,并基于IEC 61131标准。
OMA LightweightM2M (LWM2M)
OMA轻量级M2M(LWM2M)是M2M / IoT设备设备管理的行业标准。 它依赖于CoAP,因此针对传感器或蜂窝网络的通信进行了优化。
OMA LWM2M提供了一种可扩展的对象模型,允许除了核心设备管理功能(固件升级,连接监控,...)之外,还可以实现应用程序数据交换
MQTT
MQTT是一种用于连接物理世界设备和网络以及IT和Web开发中使用的应用程序和中间件的协议,使其成为IoT和M2M的理想连接协议。
它是一种轻量级的发布订阅协议,可在嵌入式设备和移动平台上运行,同时通过有线和无线网络连接到高度可扩展的企业和Web服务器。对于需要较小代码占用和/或网络带宽或连接不可预测的远程嵌入式系统以及需要较小尺寸,低功耗,最小化数据包和高效分配的移动应用程序,该连接非常有用的信息到一个或多个接收器。
通过松散耦合和服务质量,MQTT针对动态系统环境进行了优化,其中需要向Web和企业服务器以及其他消费者提供大量物理世界消息和事件。 MQTT已经很好地满足了M2M和IoT应用的意想不到的需求。
SensorThings API
SensorThings API是一个开放的地理空间联盟(OGC)标准,为通过网络互连IoT传感设备,数据和应用提供了一个开放和统一的框架。 这是一个开放的标准,涉及物联网的语法互操作性和语义互操作性。
oneM2M
oneM2M规格提供横向框架,以支持智能城市,智能电网,连接车,家庭自动化,公共安全和健康等广泛的应用和服务。
OPC Unified Architecture (UA)
OPC统一架构(UA)是一种互操作性标准,可实现安全可靠的工业自动化数据交换,同时保持跨平台和供应商的中立。 该规范由OPC基金会在个别软件开发商,行业供应商和最终用户的指导下开发和维护。 它定义了客户端和服务器之间的接口,包括访问实时数据,监控报警和事件,历史数据访问和数据建模
PPMP
PPMP(生产绩效管理协议)指定了一种允许捕获生产设备性能分析所需的数据的格式。 它允许监视后端在生产过程的上下文中收集和评估机器的关键指标。 它正在通过允许将机器状态与当前生产的部件相关联来实现。