物联网平台技术漫谈
本文整理自PTR集团首席科学家Mike Anderson的报告《TECHNICAL TRADE-OFFS OF IOT PLATFORMS》
PTR集团简介
- PTR集团成立于2000年
-
业务领域包括:
- 机器人(NASA空间机械臂)
- 飞行软件(超过35个在轨运行的卫星)
- 攻击型或防御型的网络空间战
给你留下想象空间 J
- RTOS/Linux/裸机上的嵌入式软件移植
- IoT系统架构和部署
Mike Anderson简介
- 在嵌入式领域超过39年的工作经验
- 开发部分VxWorks
- Linux/Android内核讲师
- FRC #116 FIRST Robotics Team导师
-
经常在以下场合演讲:
- 嵌入式Linux大会 Embedded Linux Conference
- 嵌入式系统大会 Embedded Systems Conference
- 美国中情局新技术大会 CIA Emerging Technology Conference
- 其它
讨论内容
- 平台到底是什么?
- 架构
- 重量级玩家
- IoT和IIoT的区别
- 如何赚到钱?
- 总结
什么是Internet of Things?
-
Thing是能够连接网络的任何设备
- 电源管理、无线通信和CPU架构方面的进步能够将智能嵌入"哑"设备
-
Thing产生的数据需要到某处使用
- 在本地使用,如恒温器
-
边界网关收集数据并预处理,以便转发到服务器
- 雾模型 fog model
-
直接发送至服务器
- 云模型 cloud model
- 云平台提供指令、控制和数据分析
IoT核心
-
究其核心,IoT只是一种访问传感器数据并基于数据控制设备的方式
- 传感器的数量和类型及其连接是差异化的因素
-
对数据的处理也是差异化的因素
-
个人消费,如健身手环
- 机器-人
-
监控,如遥测/SCADA
- 机器-机器
-
- 预测到2020年将有3万亿美元的市场
什么是平台?
-
取决于讨论的对象
- 带有传感器的硬件
- 针对传感器技术的操作系统
- 通信协议/范式
- 连接传感器到云端并提供数据分析的端到端系统
-
从某种角度讲,它包括上述所有内容
- 取决于你的关注角度
消费类IoT
-
消费类IoT设备主要有2种用途
-
健身相关设备
- 可穿戴、锻炼器械等
-
家庭监控或智能家居
- 恒温器、烟雾探测器、摄像头等
-
-
健身市场比较新
- 通常是电池供电的传感器
- 蓝牙、NFC、Wi-Fi或者USB连接
-
私有解决方案是主流
- 比如Garmin、Fitbit、Runtastic等
消费类IoT #2
-
智能家居又名家庭自动化(home automation)
- home automation曾经成功希望不大,市场表现平平
-
目前,这个领域的玩家很多
- Thread
- Apple HomeKit
- ZigBee Alliance
- Z-Wave Alliance
- IoTivity
- AllSeen
- 几十个组件生产商参与以上一个或多个生态中
- 互操作是成功的关键
Edge, Middle and Cloud
- IoT可以理解为包括边缘设备、中间盒子和云平台的生态系统
-
边缘设备包括传感器、执行器
- 通常是电池供电,低功耗网络
- 消费类边缘设备可能采用墙插式供电
Edge, Middle and Cloud #2
-
中间盒子是边界路由器/网关
- 将边缘设备的低功耗网络翻译为标准的互联网协议,如IPv4/IPv6
- 可能提供数据预处理
-
云平台提供:
- 与外部控制器的连接(智能手机、平板电脑等)
- 数据汇集和分析
- 连接和数据服务
边缘设备
-
通常使用小型微控制器,如Atmel AVR、ARM Cortex M、MicroChip PIC32等
- 8/16/32位处理器
- 无MMU
-
IIoT的遗留边缘设备采用原有的有线通信技术,如RS-232/RS-485/RS-170
- 工业物联网
- 电线供电
- 有些边缘设备期望电池供电,并且一次性使用数年
- 无线连接,通过低功耗蓝牙、NFC、IEEE 80.15.4
- IPv4/IPv6/6LoWPAN或者私有技术如ZigBee或者Z-Wave
边缘设备 #2
-
规格多样,通常
- RAM < 512 KB
- Flash < 1-2 MB
- CPU < 300MHz
- 传感器可能集成到SoC
-
软件可能运行在裸机或者RTOS上
- 商业系统,如Wind River/Intel,Micrium,Green Hills,Express Logic
- 开源系统,如FreeRTOS,Contiki
- C/C++是这部分的主流语言
边界路由器
-
中间盒子是边缘设备和互联网的网关
- 从低功耗的无线网络获取数据并输出IP数据,通过Wi-Fi或者Ethernet
-
这类设备运行在基于MMU的操作系统上
- Linux,Tizen,Android,iOS,Windows
-
采取形式如Apple TV、平板电脑或者其它带有图像界面的设备或者传感器,如Nest恒温器
- 提供本地指令、控制功能和系统监控
- 你的系统可能有多个边界路由器冗余
- Java,JavaScript,Python,C/C++是主流语言
云平台
-
基于服务器的平台
- 多核x86或者ARM,不间断电源
-
提供对设备的下行指令和控制
- 如手持式设备接口
- 关注数据汇集和数据分析
- PB级的存储,强大的处理能力
- Apple Siri和很多其它智能代理的后台
- Web语言,如Java,JavaScript,Python等
- Hadoop等框架
PB有多大?
- B (20):1粒大米
- KB(210):1杯大米
- MB(220):8袋大米
- GB(230):3货车大米
- TB(240):2集装箱
- PB(250):覆盖曼哈顿
- EB(260):覆盖英国
- ZB(270):填满太平洋
消息协议
- 很多消息协议在争夺霸主地位
-
MQTT - Message Queue Telemetry Transport
- 星型方式
- 为了消息可靠性,可基于TCP
- 侧重于遥测数据收集
-
XMPP - Extensible Messaging and Presence Protocol
- 被Facebook和Jabber消息应用使用
- 基于HTTP或者TCP上的XML
- 通信速率依赖于人的使用频率
消息协议 #2
-
DDS - Data Distribution Service
- 侧重于设备到设备通信的订阅/发布式 M2M中间件
- 对象管理组织的标准(Data Distribution Service)
- 多种多样的设备和服务安全和互操作
-
REST - Representational State Transfer
- 使用HTTP操作(GET/POST/PUT/DELETE等)进行消息传输和存储
-
CoAP - Constrained Application Protocol
- HTTP协议的简化版,基于UDP,用于内存受限的设备
-
私有协议
- 消费类设备经常使用这种方式
兼容性
-
很多物联网设备依赖于无线连接
-
Wi-Fi对于电池供电的设备来说过于耗电
- 如果设备是电线供电则非常简单
- 通常用于边界网关
-
用于边缘设备的低功耗蓝牙(Bluetooth Smart),NFC,蜂窝通信和IEEE 802.15.4
- IEEE 802.15.4三层以上各个厂家不一致
-
-
数据交换包括
- MQTT,XMPP,CoAP,REST,DDS和私有协议
Apple HomeKit平台
- 使用蓝牙,Wi-Fi或者NFC
-
产品终于上市了
- 门锁,恒温器,摄像头等各式俱全
- 兼容iOS 8+设备
- 控制设备/边界网关是iPhone,iPad,Apple TV
- 端到端加密
- 支持基于时间和位置的触发器
- 每个边缘设备需要配备专有芯片
- 迄今为止,接入云平台尚不明确
Apple HomeKit平台 #2
- 目前没有Apple HomeKit App
- Apple依赖于厂家App
- 一旦关联,可以使用语音控制,兼容Siri
-
无人干预情况下,设备之间可以通信
- 比如,电灯与百叶窗直接配合
IoTivity平台
- Open Connectivity Foundation(OCF)赞助的开源项目,由Linux基金会托管
- 支持典型的无线互联
-
支持消息通信,目前包括CoAP,MQTT和REST
- JSON表示数据
-
仍是官方预览版软件
- 支持Linux, Tizen, Android, Arduino (Mega 2560 and Due)
- 通过加密保障安全,支持证书
- 通过mDNS和uPNP支持服务发现
- 设备有认证流程
IoTivity平台 #2
-
不同的成员级别
-
钻石级 @ 35万美元/每年
- 董事会成员
- 白金级 @ 5万美元/每年
- 黄金级 @ 2千美元/每年
- 非盈利机构/教育机构 黄金会员 @ 1千美元一次性
- 所有成员级别均有资格查询OCF和UPnP认证的产品和服务
-
- OCF与其它生态系统有合作关系
AllSeen(AllJoyn)平台
-
由AllSeen联盟开发
- 成员超过200家公司,包括微软,高通,思科,松下和索尼
- 由Linux基金会托管开源项目
- 使用D-Bus消息总线支持发现功能
-
通过网关代理API支持Android,iOS,Windows,Linux
- 支持边缘设备
- 认证流程包括 "Design for AllSeen" logo计划
AllSeen(AllJoyn)平台 #2
- 端到端加密,X.509证书和其它内置安全特性
- 支持插件协议转换器,支持REST,XMPP,MQTT和TR-069
- 支持蓝牙,ZigBee,Z-Wave,Wi-Fi等
-
软件可以下载
- 支持各类芯片
-
产品案例
- https://certify.alljoyn.org/certified-products
Thread组织
-
Thread组织成立于2014年,非盈利组织
- 独立的,中立的,开放的
-
成员级别
- 会员(2.5千美元/每年)
- 贡献者(1万5千美元/每年)
- 赞助者(10万美元/每年)
- 超过200个成员
-
Thread组织管理解决方案的发布
- 规范、证书、网站、商标、版权、Logos/Seals
- 本质上是行业贸易组织,促进和保护Thread的知识产权
Thread标准
-
基于现有的IEEE 802.15.4标准
-
使用6LoWPAN作为3层以上的协议 [RFC6282]
- 在修改后的IPv6上使用UDP传输
- 易于连接到网关,云平台或者智能手机
- 每个网络支持250多个产品
-
-
只需对现有的802.15.4射频固件升级即可
- 工作在2.4GHz的ISM频段
-
安全方面使用Datagram Transport Layer Security (DTLS) [RFC6347]
- 提供集成、认证和加密
其它IoT项目/平台
-
Kaa – http://www.kaaproject.org
- 开源平台,支持Linux,Android,Windows,iOS
-
ThingSpeak – http://thingspeak.com
- 开源API,使用XML, JSON, REST协议
-
Eclipse基金 – http://eclipse.org/kura
- Kura是结合Apache Camel并基于Java/OSGi的API
- 与Eurotech公司的Everywhere Cloud infrastructure有关
-
其它IoT项目没有什么缺点
- 问题是发现适合自已的
工业物联网Industrial IoT
-
尽管消费类IoT的大肆宣传,很多人认为IIoT才是赚钱的地方
- 大多数消费者实际上不关心PaaS方案
-
主要玩家正在投入很多钱到这部分市场
-
比如,建筑物监控,流程控制传感器,制造工厂监控,SCADA等
- 经常需要二类协议如MODBUS和BACNET
- 一栋建筑可能需要多达8000个传感器
-
-
平台必须考虑整个生态系统
- 许多服务以PaaS形式出售
IIoT平台的功能架构
IIoT平台 – ThingWorx
- http://www.thingworx.com
-
支持从边界网关到云平台的PaaS
- 对于小型的边缘设备没有明确的途径
- 侧重于工业和医疗系统
- 提供数据存储和数据分析
- 加密保障安全
- 提供RAD平台快速开发应用,包括Android和iOS等
- 大的合作伙伴生态系统
- 支持MQTT,DDS,REST和其它开放协议
IIoT平台 – IBM Bluemix
- IBM的加入允许你使用第三方的API和服务
- 支持MQTT,REST和其它API
-
乐高积木式的服务、存储和数据分析
- 访问基于Watson的数据分析
-
最多20个设备的免费版本
-
更高级别的是支持1.5万个设备,100MB流量和1GB存储
- 第一个1.5万个设备之后按设备个数收费
-
IIoT平台 – PubNub
-
PubNub是一个全球数据流网络(DSN)
- 安全、实时的IoT、移动和Web应用通信API
- 扩展至数亿个设备,250毫秒的全球时延,超过70个SDK
-
免费版本包括1个数据中心、100个设备、1百万条消息,附带邮件技术支持
- 1个数据中心、1000个设备、1.5亿条消息~999美元/每月
- 与IBM Bluemix合作
IIoT平台 – Verizon
-
新服务ThingSpace
- 刚刚开始
-
API列表
- 连接管理
- 设备消息通信
- Verizon云接入
-
试图利用LTE
- 目标是低速率设备的LTE新无线模式
- 大量现有开发方案,包括BeagleBone Black和Raspberry Pi
IIoT平台 – Xively
-
- 原名Pachube, Cosm
- LogMeln的一个部门
- 工业应用的PaaS厂商
- 提供库和SDK集成到平台
- 使用消息代理和REST API
- 集成CRM,ERP和运维/调查分析
- 同时出售存储和服务
IIoT平台 – Etherios
-
- 原名Device Cloud
- Digi的子公司
- 侧重于车队管理、重型机械、医疗器械、制造等
- 可扩展的云管理服务,具备办公系统集成能力
- 出售平台和服务
- 为设备集成移动应用、CRM、社交网络
IIoT平台 – ThingSquare
-
ThingSquare
- 原来是一个Kickstarter项目
- 开始侧重于边缘设备
- 目前集成后端服务
- 整体服务到目前为止还未看到
总结
- IoT/IIoT以平台方式提供的产品没有不足之处
- 只要设备可以工作,消费领域的接受度预期是好的
- 工业领域的接受度依赖于从传感节点到数据分析和CRM的深度集成
-
诸如MQTT、DDS、REST、XMPP标准有望利于互操作
- 诸如低功耗蓝牙、Wi-Fi和IEEE 802.15.4无线标准有助于解决物理连接问题
- 许多开源项目有助于促进合作
-
闭源实现将可能实现平滑互操作
- 但是,被供应商绑定