什么是物联网?如何让“物”说话?

如今是一个万物互联的时代,物联网已经成为一个高大上的名词,那什么是物联网呢?从人与人之间的连接来看,指的是人们之间的通话、视频。进入智能时代以后,我们想让“物”说话,例如温度、空间、五觉等,将模拟信息进行数字化表达,实现万物可被感知。

然后,将这些所感知的信息数据化,通过传感器、物OS这些相关技术,进一步让“物”表达的信息是可以被理解、使用的,发挥出它的价值,在这整个过程中,就诞生了我们的物联网解决方案、一些相关的技术。

同时,我们也遇到了很多挑战:①存量老旧设备没有被数字化,无法被理解和加工;②多样化设备、协议、通信网络等它们的数据格式没有统一的标准;③设备要求低耗、低成本;④设备安全问题突出。

怎样让“物”说出有价值的话?

我们采集的数据量非常庞大,这些数据如何被挖掘,去产生真实的有价值的信息,对于我们来说是一个非常大的挑战。例如,现有算力是否足够支持对海量数据的挖掘,海量的数据能否被存储下来,我们能否构建实时流、时序、离线、多维的分析能力去应对。此外,不同的数据所需的分析手段和分析目标都是不同的,如何基于复杂的应用场景进行抽离?最后到商业闭环,这些数据如何进行价值变现,产生新的分配等。在物联网时代,虽然会带来大量红利,但也面临巨大的挑战。华为云的物联网解决方案就是要面对这些挑战,解决问题。

从一盏路灯,看亿万级联接的智能之路

一盏路灯是什么样的?应该具备哪些功能?

回顾路灯的发展过程,在建国初期,路灯上安装时间控制器,晚上18点和早上6点的时候,会自动控制灯亮灯熄的操作;到了70年代,路灯里加入光感设备,可以采集当前环境光亮度,根据当下亮度情况来决定开关状态,此时路灯更加聪明,但还是本地的回路控制;到了90年代,可以通过无线专网来控制路灯,实现了最简单的遥控,此时,路灯已经具备远程控制的能力;到了2000年左右,伴随网络技术的飞速发展,基于GPRS的网络和3G的网络已在逐步构建,网络无线资源相对来说比较便宜,此时可以通过公共网络来控制设备,此时的路灯就成了真正的网络路灯。

随着信息化的进一步融合,2010年以后我们的路灯可以做到单灯控制,在灯杆上搭载大量的智能设备,例如环境监测,照明,基站,信息展示屏等,在灯杆的下半部分,有充电桩设备,道路积水检测设备等。基于这些装载,路灯可以接收各种各样的信息感知,并把这些数据传送到业务平台,从而进行对应的分析处理,远程控制等。这就是真正的智慧路灯的形态,在未来的网络演进发展过程中,可能会有更多的设备挂载在灯杆上,这也是路灯智能化的过程。

物联网服务的形态以及设备接入管理服务在IoT服务域的核心位置

物联网由多个服务构成。首先在设备端,进行数据感知和数据传递,此处华为云构建了LiteOS和SDK的能力,去使能这些设备智能化。然后通过IoT的边缘网关和各种有线、无线的通信管道,将数据接入到设备服务中,这里我们会实现不同的网络接入能力,多协议接入能力,设备影子告警,软固件升级等,这些能力都构筑在设备接入服务上面。

在我们的互联网平台内部,还有诸如Global SIM Link全球SIM联接服务,数据分析服务,支持温冷数据处理等。我们会把数据流转到华为云的相关服务中,如DIS、OBS做存储,以及DDS、RDS等,并给到上层的业务应用来使用这些数据。包括我们客户的行业应用,智慧园区,智慧城市等,都可以使用这些数据来使业务更加丰富。

通讯模型

各种各样的设备,采用不同的协议,数据格式也不尽相同,那么IoT设备接入服务是如何将设备和数据接入的呢?

人与人之间通过语音、视觉、手势等几种主要方式进行沟通,那么物与物之间的沟通形式有命令、属性、事件以及消息等。基于属性,我们通过“设备影子”去实现设备与应用之间,与平台之间的数字化信息趋于同步。然后需要实现设备数据与我们通讯模型的关联:通过通讯协议接入层,可以将不同协议类型,如MQTT协议,CoAP协议,私有的TCP协议或者HTTP2协议等进行接入,同时各类协议承载的各类数据,都能通过编解码处理及通讯协议转换等方法将不同的格式数据转化到统一的通讯模型上。

IoT设备接入管理服务云化架构解读

由IoT设备接入管理服务内部的架构可以看出,最底端的负载均衡层作用是将海量的设备和连接接入到平台。负载均衡层之上是业务层,包括云通讯网关。华为云的IoT设备接入服务内部,实际上是基于Cloud Native的微服务架构,里面所有业务相关都是无状态的服务,即它可以随时被创建,也可以随时被kill。

这样的好处是任何一个服务实例出现问题的时候,都可以通过创建服务来保证业务的无损。同时在海量并发的情况下,通过弹性伸缩扩容,能够使服务满足对应的业务需求。在无状态的框架之下,又分为两层:CIG云通讯网关层,这层正如前文所说,作用是将各种设备和协议、不同的数据格式,转换成统一的模型,进而到上层由业务服务去处理。同时在最上层,基于公有云的管理支撑服务,诸如CBC、IAM以及SMN(消息通知服务)等,整体构建出设备接入管理服务。至此,这是华为云IoT服务内部的业务逻辑,有助于理解后续的实验过程。

产品模型(Profile)—统一的数据&通讯模型

Profile是通讯模型的一个映射,即如何将不同类型的数据映射到通讯模型的实例。例如左侧是不同厂家生产的水表,它的信息表达和数据格式都不一样,通过我们产品模型里的插件,可以将不同数据转换为统一格式。对于应用厂家来说,不用去管下面的设备类型,也不用关心是A厂家还是B厂家的设备,由平台屏蔽设备差异提供统一接口,更利于进行应用开发。

规则引擎—数据流转&设备联动

规则引擎是华为云IoT特有的能力,主要是通过规则引擎实现数据的流转和设备的联动。设备的数据产生后,通过我们的规则引擎流转到其他公有云的服务,数据分析服务,对象存储服务等,还有客户自己的应用,如此可使得数据产生价值。设备联动,也是基于规则引擎来实现的,其目的就是实现设备的条件、动作、数据上报等,触发另外一个设备的其他事件。比如说上文路灯的场景,通过光敏的传感器检测到外界的光照强度大于某个值的时候,此时路灯可以实现自动关闭,这整个流程,就是通过设备联动实现的。

华为云IoT智慧路灯沙箱实验演示

点击开始进行实验,限时免费。

1.实验介绍与实验说明

本实验将指导您开发一个基于物联网平台的智慧路灯应用。通过本实验,您将能够:

(1)理解物联网平台如何管理设备及设备数据

(2)掌握设备上报数据到物联网平台的原理和方法

(3)开发应用控制物联网设备

说明:

(1)通过华为云软件开发平台构建一个路灯的模拟应用(真实的应用可以参考其构建的方法)

(2) 申请ECS云服务,将构建的应用部署于ECS上,通过EIP对接IoT设备接入服务,并进行订阅通知

(3)在实验桌面运行MQTT模拟器,模拟路灯设备的行为

2.端侧通信—设备模拟器

快速体验“设备侧-平台-应用层”数据流转,模拟设备上报数据/订阅Topic/接收并响应平台下发命令。

3.应用实现—API介绍

创建设备API:src\main\java\com\huawei\service\RegisterDirectConnectedDevice.java

创建订阅API:src\main\java\com\huawei\service\SubscribeDataChg.java

下发设备命令API:src\main\java\com\huawei\service\CreateDeviceCommand.java

Web页面

页面布局:src\main\resources\static\index.html

脚本文件:src\main\resources\static\js\common.js

4.基于IoT平台构建智慧路灯应用

点击开始进行实验,限时免费。

实验摘要

登录华为云-资源下载-编译构建智慧路灯应用 DevCloud-创建主题并订阅 SMN-创建弹性云服务器 ECS-部署智慧路灯应用 DevCloud-导入产品模型 IoTDA-配置智慧路灯应用 Web

结果验证

最后,正值1024程序员狂欢节,华为云还准备了一大波技术干货直播活动,既能学技术,还能抽盲盒、锦鲤大礼包。

10月23日当天,我们邀请了华为云云原生开源负责人、华为云DevCloud首席技术布道师等10+大咖现身,剖析云原生的行业趋势,倾授云原生实战秘籍。点击观看直播

还有干货直通车,带你揭晓大厂最深层代码技术,点击查看各技术会场,挖掘更多干货。

备注:本文整理自华为云IoT高级工程师Vz老师在1024程序员节活动上的直播。

点击关注,第一时间了解华为云新鲜技术~

让“物”能说会道,揭晓华为云IOT黑科技的更多相关文章

  1. 基于华为云IOT及无线RFID技术的智慧仓储解决方案最佳实践系列一

    [摘要]仓储管理存在四大细分场景:出入库管理.盘点.分拣和货物跟踪.本系列将介绍利用华为云IOT全栈云服务,端侧采用华为收发分离式RFID解决方案,打造端到端到IOT智慧仓储解决方案的最佳实践. 仓储 ...

  2. 基于华为云IoT Studio自助生成10万行代码的奥秘

    华为IoT小助手们搬好板凳.备好笔记本.听了HDC.Cloud的几场华为云技术架构师的直播讲课,感觉获益匪浅却又似懂非懂,直后悔自己没有好好打下基础.为了避免再次出现这样的情况,小助手偷偷跑去找了华为 ...

  3. 直击Huawei Mate 40产线背后的华为云IoT智能制造

    摘要:数字孪生?在数字世界找到物理世界的设备! 本文分享自华为云社区<[云驻共创]Huawei Mate 40产线直击之华为云IoT智能制造助力工厂数字化转型>,原文作者:启明. Part ...

  4. 华为云MVP熊保松谈物联网开发:华为云IoT是首选,小熊派是神器

    摘要:在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间,也得乘风破浪跟上新技术的节奏. 在AI.5G的技术驱动下,物联网行业的发展愈加如火如荼,开发者在技术的快速更迭间 ...

  5. 聊聊如何在华为云IoT平台进行产品开发

    摘要:华为云物联网平台承载着南北向数据互通的功能职责. 本文分享自华为云社区<如何基于华为云IoT物联网平台进行产品开发>,作者: Super.雯 . 华为云物联网平台承载着南北向数据互通 ...

  6. 基于STM32+华为云IOT设计智能称重系统

    摘要:选择部署多个重量传感器和必要的算法.通过WiFi 通信模块.GPS定位模块,采集车辆称重数据一地理位置信息,并通过网络发送至云平台,设计图形化UI界面展示称重.地图位置等重要信息,实现对称重系统 ...

  7. CC2530_ZigBee+华为云IOT:设计一套属于自己的冷链采集系统

    摘要:以CC2530单片机为核心器件,设计一个冷链环境信息采集系统,利用传感器技术对冷藏仓内的环境参数进行采集,上传到华为云物联网云平台,然后通过手机端或移动端进行显示,便于分析,观察冷链环境信息. ...

  8. OpenHarmony3.0如何轻松连接华为云IoT设备接入平台?

    摘要:本文主要介绍基于OpenHarmony 3.0版本来对接华为云IoT设备接入IoTDA,以小熊派BearPi-HM_Nano开发板为例,使用huaweicloud_iot_link SDK对接华 ...

  9. 【重磅资料】ArchSummit全球架构师峰会·2019华为云技术专场资料下载

    ArchSummit全球架构师峰会是InfoQ中国团队推出的重点面向高端技术管理者.架构师的技术会议,54%参会者拥有8年以上工作经验.ArchSummit聚焦业界强大的技术成果,秉承"实践 ...

  10. Modbus的设备怎么对接华为云 使用金鸽BL100只需要5步

    BL100是一款高性价比的Modbus转MQTT网关支持一键对接阿里云.华为云. BL100将Modbus串口设备的数据上传至华为云只需要简单五步 第一步.首先将Modbus的设备通过RS485接上M ...

随机推荐

  1. 【sqli-labs】学习--待续

    预备知识: 数字型注入: 这种sql语句中处理的是整型,不需要使用单引号来闭合变量的值. 首先输入id=1',此时因为不是整型,sql语句会执行出错,抛出异常. 然后输入id=1 and 1=1,此时 ...

  2. Splay 详细图解 & 轻量级代码实现

    学 LCT 发现有点记不得 Splay 怎么写,又实在不知道这篇博客当时写了些什么东西(分段粘代码?),决定推倒重写. 好像高一学弟也在学平衡树,但相信大家都比樱雪喵强,都能一遍学会!/kel 写在前 ...

  3. JVM-JAVA基本类型

    1 package javap.fload; 2 3 import static jdk.nashorn.internal.objects.Global.Infinity; 4 5 public cl ...

  4. 哪一个更好?Spring boot还是Node.js

    前言 本篇文章有些与众不同,由于我自己手头有些关于这个主题的个人经验,受其启发写出此文.虽然SpringBoot和Node.js服务于很不一样的场景,但是这两个框架共性惊人.其实每种语言都有不计其数的 ...

  5. 28. 干货系列从零用Rust编写正反向代理,项目日志的源码实现

    wmproxy wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 静态文件服务器,四层TCP/UDP转发,内网穿透,后续将实现websocket代理等,会将实现 ...

  6. L2-034 口罩发放

    重点在阅读理解能力 身份证号必须是18位数字,话说平时咱们身份证也可以带个X啥的啊. 合法状态就是只要身份证合格就行,一开始我还想是它犯病,然后申请了口罩才算一个合法记录. 后边输出状态为1的人,一定 ...

  7. 背包DP全类型

    AcWing 2. 01背包问题 #include <iostream> #include <algorithm> using namespace std; const int ...

  8. C#中的并行处理、并行查询的方法你用对了吗?

    Parallel.ForEach Parallel.ForEach 是一个用于在集合上并行执行迭代操作的强大工具.它通过有效地利用多核处理器的能力来提高性能.Parallel.ForEach 不仅能够 ...

  9. serdes调试常见功能汇总

    初始化流程 CORE复位流程 FW手动加载 FW版本自生成(可选) lane复位流程 TX复位流程 RX复位流程 TX,RX使能,disable(可选)关闭数据通道 速率频点配置,CPU模式配置,PL ...

  10. python在使用过程中安装库的方法

    背景: 在学习python的过程中难免会出现python解释器中没有所需要的库,这时我们就要自行的去安装这些库了:当然如果使用的anaconda集成环境的话在安装python一些依赖环境中会简单不少( ...