随著越来越多的公司开始涉足物联网相关领域,这也意味着会有很多原来是做互联网项目开发的同学也不得不开始学习物联网的开发,同样的对于项目经理来说,如何确定一个满足业务需求的物联网技术架构则至关重要,笔者根据一直以来物联网研发经验浅谈企业级物联网平台与各位探讨。
本文摘要
- 物联网现状、基础概念
- 物联网平台功能架构、模块介绍
物联网现状及概念
现状
(1)智能物流。智能物流在实施的过程中强调的是物流过程数据智慧化、网络协同化和决策智慧化。物联网为物流业将传统物流技术与智能化系统运作管理相结合提供了一个很好的平台,进而能够更好更快地实现智能物流的信息化、智能化、自动化、透明化、系统化的运作模
(2)智能电网。智能电网在发电、输电、配电和用电等环节应用以物联网为主的新技术,充分满足用户对电力的需求,确保电力供应的安全性、可靠性和经济性,满足环保约束、保证电能质量、适应电力市场化发展,实现对用户可靠、经济、清洁、互动的电力供应和增值服务的优化配置,从而达到节能减排的目的。
(3)智能交通。智能交通是将先进的信息、数据通信传输、电子传感、控制以及云计算等技术有效地集成运用于整个地面交通管理系统而建立的一种大范围、全方位发挥作用的,实时准确、高效的综合交通运输管理系统。例如,在汽车的相关部件上装上传感器,通过网络与智能指挥中心联系起来,人们在驾驶汽车时就可以提前知道哪个地方出了故障、哪个路段特别拥挤,以减少汽车的追尾事故、等待时间和尾气排放等。
(4)智慧医疗。将物联网技术用于医疗领域,借由数字化、可视化模式,可使有限医疗资源让更多人共享。将嵌入式芯片装在患者身上,就可以随时感知患者的血糖、血压和脏器情况,通过网络与后台的医疗、保健系统联系在一起,就可随时给出警示和应对建议。此外,物联网技术在药品管理和用药环节的应用过程也将发挥巨大作用。
(5)智能家居。智能家居是以住它为平台,利用综合布线、网络通信、安全防范、自动控制以及音视频等技术将与家居生活相关的设置集成,构建搞笑的住宅设施与家庭日常事务的管理系统。
下图为目前物联网行业大数据分析(来自华为)
概念
(1)物联网主要由RFID(射频识别)、WSN(无线传感网)、M2M(人人、人物、物物)和两网融合四大技术为支柱形成。
(2)物理网通信模式
物理网在链路层、网络层、传输层的不需要物联网开发者自己去实现,物联网应用开发即是面向TCP/IP的应用层开发!互联网中,HTTP超文本传输协议也是应用层协议的一个类别,之所以我们不需要认为开发HTTP的协议解析组装工作是因为现在这些工作前端由浏览器而后端则又由各种web框架实现了,因为我们只需要关注业务开发。物联网中的MQTT协议中,如果你直接使用MQTT开源的broker来面向MQTT连接的话,同样不需要关注MQTT协议底层的开发,与HTTP类似,通过向broker注册各种consumer直接消费MQTT报文中的“有效载荷”,因此MQTT更适合非物联网开发同学快速整合开发物联网项目。
但是,MQTT本身不适合实时性要求高即低延迟且报文量大的物联设备,一般适合于智能家居中烟感、温感等心跳周期长或无心跳周期、设备功耗低、允许存在一定延迟的设备。对于实时行要求高、数据量大的场景,建议通过自定义私有物理网协议实现,如电力采集、车联网、工业物联网等,其对应的国标规约有698、3761、jtt808等等
物联网功能架构
南北向
我们先大概看一下物联平台的结构层级,如同做互联网后台开发中广泛使用的MVC模式一样,物联平台也有相应的层级概念,物联平台主要层级结构如下
- 北向 物联品台为第三方服务或用户提供的各种数据获取和状态监测等物联设备采集控制的接口,
- 核心层 为平台处理南向设备、北向用户以及其他多种请求的核心服务层,其核心功能主要包括感知报文处理、设备离在线管理、感知远程升级
- 南向 为平台服务设备侧,物联平台提供给感知设备利用TCP/IP协议接入的层级,其核心功能包括提供感知设备接入的网络入口、自动检测海量TCP长连接的健康状态(清理僵尸连接)等
- 设备层 各种具有通信功能的感知设备,其可以将各种环境检测传感器采集的数据(温度、湿度)发送到物联平台。
功能架构演进
1. 物联平台基础版(单机版)
基础班主要优点如下:
- 业务需要快速变化,快速上线。
- 业务场景小,复杂度低时。
假设现在我们做一个智能小区充电桩管理平台,为某个智能充电小程序提供充电桩的充电、结束充电、实时计费、告警通知等功能,目标设备就只包含小区的一个私有充电站里面的几个充电桩设备,此场景下,南向设备量很少,北向用户层主要就是对小程序(主要小区业主使用)提供相应的接口,综上几乎不存在任何并发压力,这种情况下,一个简单的单机版物联平台即可满足需求,
注意:此时基础班物联平台代码与业务代码整合在一起,部署到服务器时为一个进程,即当前服务即提供第三方服务操作感知设备的接口,同时提供其他业务相关的接口,数据的存储可以使用常用的关系型数据库。
2. 物联平台-中台模式
物联平台-中台模式(独立于业务系统部署)可满足更加负载的需求
- 业务场景繁多,复杂度高。
- 扩展性要求高,且支持蓝绿、灰度发布等。
- 工业级可靠性,故障隔离,具有资源限流、内部服务熔断等功能。
- 提升企业物联网应用开发效率, 优化物联网研发团队人员布局。
功能架构如下
架构模块介绍
-
南向 主要由“虚拟网关”、“前置机”、“加密服务”、“大数据”。
(1) “虚拟网关”:提供与海量感知设备网络连接的入口服务,开源项目: https://gitee.com/willbeahero/IOTGate
(2) “前置机”:处理各种物联网通讯规约,将物联设备通信的报文解析为可直接使用的数据类型以及将用户控制指定组装为机器识别的报文
(3) “加密服务”:报文加密,通信链路加密等
(4) “大数据”:报文数据离线分析、实时分析等 -
北向 为第三方应用提供统一的接口
-
物联平台管理 主要包含“设备管理”、“设备调试”、“资源授权”、“任务调度”、服务监控等
-
支撑服务/功能 主要包含“配置中心”、“注册中心”、“ELK”等
2. 展望
当前,业内已有阿里物联平台、华为物联平台等通用saas云平台,对于一些创业型团队,或是应用场景非常简单的情况下,可以考虑使用这些比较成熟的saas物联平台。但是使用这些物联平台存在许多问题,首先,这些物联平台都是基于MQTT协议,且需要设备厂家对saas物联平台做适配,甚至需要将平台提供的sdk烧录到感知设备中方可接入,对物联开发侵入很严重,另一方面,接入第三方saas平台之后,会导致通信报文被第三方平台获取,不适合对数据有保密需求的场景,随著物联网设备的不断接入,其对应的数据也是企业后续核心竞争力组成之一,利用这些数据结合大数据以及人工智能等技术对提前告警、事件预测等等有很重要的作用。对于希望建成自己的一个成熟的物联网研发团队在接下来的5G时代物联网行业中开展自己的业务的话,仍然需要自己独立开发企业自己的物联平台。
随著设备接入越来越多,“物联网平台”势必会变成“物联网云平台”,也就是说物联平台服务上云也是大势所趋,只不过,物联网的这朵云更多的将是企业自己的私有云,物联平台在上云之前,物联网研发团队需要在物联网场景下做云原生研发或改造。