【云驻共创】基于物联网平台构建智慧路灯
DevRun开发者沙龙 基于物联网平台 构建智慧路灯 沙箱实验训战营直播
一、物联网背景简介
本次直播讲解IoT设备接入管理服务业务介绍及IoT设备接入管理服务云化架构解读,还有华为云IoT工程师现场动手演示华为物联网沙箱实验室,带你玩转实验实验室!
1.1 什么是物联网?如何让“物”说话?
如今是一个万物互联的时代,物联网已经成为一个高大上的名词,那什么是物联网呢?从人与人之间的连接来看,指的是人们之间的通话、视频。进入智能时代以后,我们想让“物”说话,例如温度、空间、五觉等,将模拟信息进行数字化表达,实现万物可被感知。
然后,将这些所感知的信息数据化,通过传感器、物OS这些相关技术,进一步让“物”表达的信息是可以被理解、使用的,发挥出它的价值,在这整个过程中,就诞生了我们的物联网解决方案、一些相关的技术。
同时,我们也遇到了很多挑战:①存量老旧设备没有被数字化,无法被理解和加工;②多样化设备、协议、通信网络等它们的数据格式没有统一的标准;③设备要求低耗、低成本;④设备安全问题突出。
1.2 智能时代的“物连接”红利,也带来巨大挑战
1. 让“物”说话:感知物理世界,变成数字信号
万物可感知:温度、空间、五觉
万物数据化:传感器,物OS
关键挑战:
• 大量现存设备未被数字化
• 多样化设备、各种行业协议、各种通信网络
• 设备要求低功耗、低成本
• 设备安全问题突出
2. 让“物”说一种话:将数据变成Online,提供标准化数据
广联接,多协议接入
数据标准化,统一物模型
关键挑战:
• 百万种数据元素,缺乏标准和规范
• 多样化数据格式
• 各厂商烟囱式发展,数据孤岛林立,数据互通困难
3. 让“物”说有价值的话:需要解决海晕数据处理和分析
海量数据分析算力,实时性
行业数字化,数字化行业
关键挑战:
• 海量数据带来算力、存储问题
• 实时流、时序、离线、多维分析复杂
• 行业应用场景的复杂性
• 商业闭环、价值变现和分配问题
1.3 怎样让“物”说出有价值的话?
我们采集的数据量非常庞大,这些数据如何被挖掘,去产生真实的有价值的信息,对于我们来说是一个非常大的挑战。例如,现有算力是否足够支持对海量数据的挖掘,海量的数据能否被存储下来,我们能否构建实时流、时序、离线、多维的分析能力去应对。此外,不同的数据所需的分析手段和分析目标都是不同的,如何基于复杂的应用场景进行抽离?最后到商业闭环,这些数据如何进行价值变现,产生新的分配等。在物联网时代,虽然会带来大量红利,但也面临巨大的挑战。华为云的物联网解决方案就是要面对这些挑战,解决问题。
1.4 揭开亿万级联接架构技术栈的神秘面纱
1. 欧拉OS:华为自研操作系统,基于Linux,并在其基础上进行深度的安全加固、系统优化、运维增强、配置调整和非必要功能裁剪,精心打造的一款服务器操作系统,IoT服务在其基础上结合IoT的业务场景进行二次调优;
2. Huawei JDK:基于开源Open JDK开发,并采用其他一些协议友好的开源软件,对比Oracle JDK补齐功能,确保JAVA类项目的持续演进;
3. 数据库:华为公有云提供的高可靠性数据服务,在开源的基础上,增加了大量的安全、可靠性、可维护性的能力;
4. 消息总线:华为公有云提供的可靠性、高并发的消息服务,在开源的基础上,增加了大量的安全、可靠性、可维护性的能力;
5. ELB/APIG:华为公有云提供的负载均衡和API网关服务,提供统一的安全认证,确保入口的消息能均衡的分担到后端的多个服务上。
二、从一盏路灯,看亿万级联接的智能之路
回顾路灯的发展过程,在建国初期,路灯上安装时间控制器,晚上18点和早上6点的时候,会自动控制灯亮灯熄的操作;到了70年代,路灯里加入光感设备,可以采集当前环境光亮度,根据当下亮度情况来决定开关状态,此时路灯更加聪明,但还是本地的回路控制;到了90年代,可以通过无线专网来控制路灯,实现了最简单的遥控,此时,路灯已经具备远程控制的能力;到了2000年左右,伴随网络技术的飞速发展,基于GPRS的网络和3G的网络已在逐步构建,网络无线资源相对来说比较便宜,此时可以通过公共网络来控制设备,此时的路灯就成了真正的网络路灯。
随着信息化的进一步融合,2010年以后我们的路灯可以做到单灯控制,在灯杆上搭载大量的智能设备,例如环境监测,照明,基站,信息展示屏等,在灯杆的下半部分,有充电桩设备,道路积水检测设备等。基于这些装载,路灯可以接收各种各样的信息感知,并把这些数据传送到业务平台,从而进行对应的分析处理,远程控制等。这就是真正的智慧路灯的形态,在未来的网络演进发展过程中,可能会有更多的设备挂载在灯杆上,这也是路灯智能化的过程。
2.1 通讯模型
各种各样的设备,采用不同的协议,数据格式也不尽相同,那么IoT设备接入服务是如何将设备和数据接入的呢?
人与人之间通过语音、视觉、手势等几种主要方式进行沟通,那么物与物之间的沟通形式有命令、属性、事件以及消息等。基于属性,我们通过“设备影子”去实现设备与应用之间,与平台之间的数字化信息趋于同步。然后需要实现设备数据与我们通讯模型的关联:通过通讯协议接入层,可以将不同协议类型,如MQTT协议,CoAP协议,私有的TCP协议或者HTTP2协议等进行接入,同时各类协议承载的各类数据,都能通过编解码处理及通讯协议转换等方法将不同的格式数据转化到统一的通讯模型上。
2.2 设备接入管理服务在整个lot服务域中的位置
物联网由多个服务构成。首先在设备端,进行数据感知和数据传递,此处华为云构建了LiteOS和SDK的能力,去使能这些设备智能化。然后通过IoT的边缘网关和各种有线、无线的通信管道,将数据接入到设备服务中,这里我们会实现不同的网络接入能力,多协议接入能力,设备影子告警,软固件升级等,这些能力都构筑在设备接入服务上面。
在我们的互联网平台内部,还有诸如Global SIM Link全球SIM联接服务,数据分析服务,支持温冷数据处理等。我们会把数据流转到华为云的相关服务中,如DIS、OBS做存储,以及DDS、RDS等,并给到上层的业务应用来使用这些数据。包括我们客户的行业应用,智慧园区,智慧城市等,都可以使用这些数据来使业务更加丰富。
2.3 loT设备接入管理服务架构
由IoT设备接入管理服务内部的架构可以看出,最底端的负载均衡层作用是将海量的设备和连接接入到平台。负载均衡层之上是业务层,包括云通讯网关。华为云的IoT设备接入服务内部,实际上是基于Cloud Native的微服务架构,所有的服务都不存在单点故障,都是由微服务组成。其次,里面所有业务相关都是无状态的服务,即它可以随时被创建,也可以随时被kill。
这样的好处是任何一个服务实例出现问题的时候,都可以通过创建服务来保证业务的无损。同时在海量并发的情况下,通过弹性伸缩扩容,能够使服务满足对应的业务需求。在无状态的框架之下,又分为两层:CIG云通讯网关层,这层正如前文所说,作用是将各种设备和协议、不同的数据格式,转换成统一的模型,进而到上层由业务服务去处理。同时在最上层,基于公有云的管理支撑服务,诸如CBC、IAM以及SMN(消息通知服务)等,整体构建出设备接入管理服务。至此,这是华为云IoT服务内部的业务逻辑,有助于理解后续的实验过程。
2.4 产品模型(Profile)—统一的数据&通讯模型
定义产品:
• 方式1:设备厂商通过SP Portal在线编辑Profile
• 方式2:设备厂商获取平台提供的样例Profile,根据自身业务进行修改,生成自己业务需要的Profile
快速生成插件:
• 插件生成:平台提供开发者Portal,通过开发者Portal基于自己定义的Profile,快速生成插件。
• 插件部署:对于完成的插件支持一键式快速部署。
价值:
• 对上层应用价值:降低上层应用对设备管理复杂度,通过在平台规整不同厂家的数据,形成统一的Profile,上层应用无须感知不同设备的差异。
• 对设备厂商价值:无须修改设备代码通过插件适配不同企业的诉求,降低设备厂家的维护复杂度。
Profile是通讯模型的一个映射,即如何将不同类型的数据映射到通讯模型的实例。例如左侧是不同厂家生产的水表,它的信息表达和数据格式都不一样,通过我们产品模型里的插件,可以将不同数据转换为统一格式。对于应用厂家来说,不用去管下面的设备类型,也不用关心是A厂家还是B厂家的设备,由平台屏蔽设备差异提供统一接口,更利于进行应用开发。
2.5 规则引擎—数据流转&设备联动
规则引擎是指用户可以在物联网平台上可以对接入平台的设备设定相应的规则,在条件满足所设定的规则后,平台会触发相应的动作来满足用户需求。包含设备联动和数据转发两种类型。
设备联动
设备联动指通过条件触发,基于预设的规则,引发多设备的协同反应,实现设备联动、智能控制。例如,当执行动作为“发送通知”时,物联网平台对接华为云的消息通知服务SMN ,进行主题消息的设置和下发。
数据转发
数据转发无缝与华为云其他服务对接,实现设备数据的存储、计算、分析的全栈服务。
规则引擎其实可以分为两个部分,一个是设备的联动,一个是数据的流转。单举一个例子,比如河道的监测,当河道的水位超过了这个警戒水位,我们可以通过设备联动来控制阀门来限水,把水位降到阀位以下,如果开始低于阀位,我们也可以把排水口关掉,往上面蓄水。
三、 华为云IoT智慧路灯沙箱实验演示
3.1 沙箱实验室介绍
沙箱实验室 是华为云官方实验平台,一键创建实验环境,开发者通过实验手册指导,快速体验华为云服务,在云端实现云服务的实践、调测和验证。量级轻、上手快、体验好。
3.2 沙箱实验室优势是什么?
区别于传统实验室,沙箱实验室零硬件投入,免部署免维护省成本,在线一键式开通资源,24小时随时随地远程访问,在真实云环境中便捷操作,详细的实验文档指导操作,智能检测实验进程,一键式生成实验报告,智能问答全程跟踪,实时在线问答服务,沉浸式实验体验,助你快速上云。
3.3 实验介绍与实验说明
本实验将指导您开发一个基于物联网平台的智慧路灯应用。通过本实验,您将能够:
(1)理解物联网平台如何管理设备及设备数据
(2)掌握设备上报数据到物联网平台的原理和方法
(3)开发应用控制物联网设备
说明:
(1)通过华为云软件开发平台构建一个路灯的模拟应用(真实的应用可以参考其构建的方法)
(2) 申请ECS云服务,将构建的应用部署于ECS上,通过EIP对接IoT设备接入服务,并进行订阅通知
(3)在实验桌面运行MQTT模拟器,模拟路灯设备的行为
3.4.端侧通信—设备模拟器
快速体验“设备侧-平台-应用层”数据流转,模拟设备上报数据/订阅Topic/接收并响应平台下发命令。
3.5应用实现—API介绍
创建设备API:srcmainjavacomhuaweiserviceRegisterDirectConnectedDevice.java
创建订阅API:srcmainjavacomhuaweiserviceSubscribeDataChg.java
下发设备命令API:srcmainjavacomhuaweiserviceCreateDeviceCommand.java
Web页面
页面布局:srcmainresourcesstaticindex.html
脚本文件:srcmainresourcesstaticjscommon.js
3.6.基于IoT平台构建智慧路灯应用
点击开始进行实验,限时免费。
实验摘要:
登录华为云-资源下载
1. 编译构建智慧路灯应用 DevCloud
2. 创建主题并订阅 SMN
3. 创建弹性云服务器 ECS
4. 部署智慧路灯应用 DevCloud
5. 导入产品模型 IoTDA
6. 配置智慧路灯应用 Web
7. 结果验证
基于IoT平台构建智慧路灯应用:
https://lab.huaweicloud.com/testdetail_459
本实验指导用户基于华为云IoT平台,快速开发属于自己的智慧路灯应用。
总结:
通过这次直播了解了IoT设备接入管理服务业务的相关知识和架构和各方面的管理能力,从设备接入管理服务在整个IoT服务域中的重要位置、通讯模型、IoT设备接入管理服务架构、云接入网关容纳海量插件的管理能力、产品模型、规则引擎 、自动化工程能力,灰度发布能力,超大容量扩展架构,可靠性容灾能力以及IoT设备接入管理服务可靠性、安全性等多个方面对loT设备接入服务进行了学习,并且通过华为云设备接入服务实例实践,对loT设备接入进行了整体的接触。城市公共照明设施规模日益增大,用电量节节攀升。为解决传统路灯的问题,基于物联网的智慧路灯应运而生,本次直播将会为您介绍基于物联的智慧路灯解决方案和如何构建其应用。
直播回放:https://bbs.huaweicloud.com/videos/103456
注:本文整理自华为云社区内容共创活动之 20年华为扫地僧,揭开亿万级路灯互联的智能奥秘!
查看活动详情:https://bbs.huaweicloud.com/blogs/302011
- 点赞
- 收藏
- 关注作者
评论(0)