考取HCIA证书看我就够了》第四篇:[HCIA-IoT]物联网技术之平台层技术概览

网友投稿 821 2022-05-30

系列文章目录

《考取HCIA证书,看我就够了》

1.华为职业认证体系及HCIA介绍

2.[HCIA-IoT]物联网起源与发展

3.[HCIA-IoT]物联网技术之网络层技术概览

4.[HCIA-IoT]物联网技术之平台层技术概览

5.[HCIA-IoT]物联网技术之感知层技术概览

6.[HCIA-IoT]华为物联网解决方案

如果你是第一次观看本系列文章,建议先阅读下前面的帖子

本文目录

系列文章目录

前言

一、华为物联网平台简介

1.1物联网平台的由来

1.2华为物联网平台架构

1.3华为物联网平台的主要能力

1.3.1设备接入服务

1.3.2数据分析服务

1.3.2 IoT开发者服务

1.3.3全球SIM卡连接

1.4华为物联网平台特点

1.4.1接入无关

1.4.2可靠性

1.4.3安全性

1.4.4弹性伸缩

1.4.5能力开放

二、平台二次开发

2.1产品开发

2.1.1产品模型开发

2.1.2设备编解码插件开发

2.2应用侧开发

2.2.1应用侧开发介绍

2.2.2API调用

2.3设备侧开发

2.4云端日常管理

总结

前言

本文为《考取HCIA证书,看我就够了》系列文章第四篇

本文将主要介绍HCIA-IoT认证物联网技术中平台层的主要技术,通过本次分享,你将会知道华为物联网平台到底是什么,它是用来做什么的以及它都有哪些能力。此外你还会了解到如何利用平台去更便捷的开发项目。

本文面向人群:ICT从业人员、学生

在 [HCIA-IoT]篇物联网起源与发展中我们知道物联网可分为四层,分别是感知层、网络层、平台层和应用层四层。

上一次我分享了网络层技术的内容,这次为大家带来平台层技术概览。

一、华为物联网平台简介

1.1物联网平台的由来

物联网项目往往面临上线周期长、设备标准多、网络选择难的挑战。

因此,开发一个具备终端接入解耦、能力开放、安全可靠的物联网平台迫在眉睫。

华为物联网平台就在这样的背景下应运而生了

1.2华为物联网平台架构

物联网平台作为连接业务应用和设备的中间层,屏蔽了各种复杂的设备接口,实现设备的快速接入;同时提供强大的开放能力,支撑行业用户快速构建各种物联网业务应用,下图是华为物联网平台的架构

业务应用通过调用物联网平台提供的API,方便快捷的实现设备管理、数据上报、命令下发等业务场景。

API(Application Programming Interface,应用程序接口)是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。

1.3华为物联网平台的主要能力

下表为华为物联网平台的主要能力

1.3.1设备接入服务

华为物联网平台支持多方式、多网络、多协议、安全的设备接入,提供多场景多语言的loT Device SDK,屏蔽物联网碎片化,实现设备快速接入。

SDK(Software Development Kit)一般指软件开发工具包,可以辅助软件开发,让开发更加高效。

设备接入服务可分为设备连接、设备管理、数据转发、应用集成思想服务。

1.设备连接服务

支持设备多网络接入

支持有线和无线的接入方式,如固定宽带,2G/3G/4G/5G、NB-loT、LoRaWAN等。

支持设备原生协议接入

支持设备通过LWM2M、CoAP、MQTT(S)、Modbus、OPCUA协议(配合loT边缘实现)、泛协议接入(TCP/UDP)、等协议接入。

支持SDK接入

支持loT Device SDK和loT Device SDK Tiny ,覆盖的语言包括C、Java等。设备泛协议接入提供泛化协议接入框架,开发者通过平台提供的配套的泛化框架SDK实现设备基于TCP/UDP桥接方式接入到IoT平台。

支持设备安全接入

基于TLS、DTLS、DTLS+加密协议,提供安全的传输通道,满足欧盟GDPR数据隐私保护要求。

loT Device SDK适用于计算能力强的设备或网关

loT Device SDK Tiny适用于计算能力较弱的设备

2.设备管理服务

产品模型服务

产品模型,即Profile,相当于设备的抽象模型,可以使平台理解该款设备支持的服务、属性、命令等信息,如颜色、开关等。

设备注册&设备接入鉴权

设备注册:在平台中注册设备信息。

设备接入鉴权:平台对接入的设备进行安全鉴别。

命令下发

loT平台向设备下发命令进行控制,目前提供两种命令下发机制——立即下发和缓存下发

设备联动规则

通过各类触发条件设置对应的响应动作。

设备升级

设备固件升级(FOTA)是通过OTA ( Over the air )的方式对设备的模组进行升级,基于LWM2M标准协议实现。

设备软件升级(SOTA)是通过OTA的方式对终端设备的MCu进行升级,基于华为定义的PCP升级协议实现。

设备批操作

loT平台支持对设备的批量操作,当设备数量很多时可以节省大量时间,目前支持批量注册设备与批量固件升级。

3.数据转发服务

loT平台支持对接华为云其他服务,实现设备数据按需转发和处理,您无需线下购买和部署服务器,即可实现设备数据的存储、计算、分析的全栈服务。

注:华为云不只有IoT平台服务,还有云服务器、云存储、云数据处理等业务。

4.应用集成

loT平台开放了40+应用侧Restful API给第三方应用开发者,开发者通过调用开放的APl,快速集成loT平台的功能。当前loT平台对外提供了如下几类开放API:

RESTful架构(Representational State Transfer),即表现层状态转换。RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP。通过动作可以对资源做出修改,并且在表现层会有相应变化,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。

HTTP是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

OTT 是“Over The Top”的缩写,即互联网公司越过运营商,发展基于开放互联网的各种视频及数据服务业务,强调服务与物理网络的无关性。

而这些行业应用主要通过应用注册鉴权和订阅通知来使用

应用注册鉴权

华为云在接入行业应用时会进行安全鉴别

订阅通知

行业应用订阅华为物联网平台后,设备信息更新会收到消息推送

1.3.2数据分析服务

物联网行业的数据,往往具有四大特点

大:数据体量大

小:价值密度小

高:数据时效性高

低:数据质量低

如果利用传统的数据分析服务,会显得捉襟见肘。因此,针对物联网独特的数据形式,华为云物联网平台采用了独特的数据分析架构

数据分析服务主要分为:实时分析、时序分析、离线分析三部分

该服务有四大法宝

1.数字孪生

通过loT+资产模型,在数字世界中构建与物理世界准实时同步的数字孪生

数字孪生是充分利用物理模型、传感器更新、运行历史等数据,集成多学科、多物理量、多尺度、多概率的仿真过程,在虚拟空间中完成映射,从而反映相对应的实体装备的全生命周期过程

2.数据时序分析

物联网数据都具有时间序列特性,华为物联网平台针对数据时序专门分析,并具有高压缩比、高查询性能、高写入性能的特点

3.数据时效性分层

由于物联网数据更新快、体量大,针对数据时效性高低,将数据分为热数据、温数据和冷数据

4.数据清洗

针对复杂的IoT数据问题,高效的数据清洗,可以为数据分析提供高质量的数据输入

1.3.2 IoT开发者服务

开发者在面临物联网开发任务时,往往因为巨大的工作量而头皮发“凉”

为此,华为物联网平台为众多的IoT开发者提供了多项高核心价值的开发服务

轻量级应用构建

应用模板+简单开发,10分钟快速构建物联网设备管理应用

行业套件快速获取

行业套件支持看、配、用三个简单操作10分钟实现行业应用快速加载上线

灵活报表

灵活自定义业务字段、数据源以及图表能力,并提供支持亿级的数据预处理能力

多样化发布方式

提供被嵌入能力,可无缝嵌入企业自有应用

多级管理能力

分权分域能力,满足企业跨地域,多层级的管理诉求

性价比高

提供逻辑多租,资源逻辑共享,高级版2400元/年

1.3.3全球SIM卡连接

企业在对设备SIM卡进行维护时经常面临更换周期长、管理难、成本高、信息泄露等问题

对此,华为凭借自身通信优势,提供全球SIM连接服务,该服务具有四大关键能力

1.生命周期管理

实时监控卡状态、实时进行卡状态的控制管理

2.智能网络切换

空中动态写卡、可根据网络状况智能切换运营商网络

3.连接诊断功能

一键式进行卡诊断

4.自动化控制规则

自由制定自动处理规则、自助定制化平台能力

1.4华为物联网平台特点

1.4.1接入无关

接入无关的内涵就是多设备接入、多网络支持

1.4.2可靠性

华为物联网平台可靠性可分为四部分

1.系统可靠性

物联网平台基于云平台系统安装和部署,其系统可靠性方面主要有系统集群、虚拟机可靠性等。

2.业务可靠性

物联网平台业务可靠性策略包括流量控制、数据加密、敏感信息屏蔽等。

3.网络可靠性

物联网平台网络可靠性策略包括1+1互备、Pool模式。

4.模块可靠性

物联网平台模块可靠性策略规则引擎模块、API Server模块、数据库模块。

1.4.3安全性

相对于互联网来说,物联网的安全威胁更加容易影响到我们的人身安全和财产安全(参考电影《我,机器人》)

因此,华为物联网平台针对物联网的不同分层,提供了不同的安全策略,主要包括平台设备安全策略、组网安全策略、业务和接入安全、数据存储安全和访问授权机制等。

1.4.4弹性伸缩

固化的资源配置容易造成资源的浪费或缺乏,还容易拖慢项目的开发周期。因此华为物联网平台具备四种弹性特性,帮助提高开发效率、节省资源。

1.灵活部署的云化平台

部署在服务器上或部署在云平台上灵活选择

2.平台聚合垂直行业能力

部署1个行业或多个行业共用1个loT平台

3.开放性和兼容性

开放兼容来自不同的厂商的各种智能设备

4.业务模块化/灵活组合

《考取HCIA证书看我就够了》第四篇:[HCIA-IoT]物联网技术之平台层技术概览

单一业务部署或多个业务同时部署

1.4.5能力开放

开放一直是互联网的宗旨,华为物联网平台也同样如此,平台从四个方面体现它的开放特性

1.平台向上API开放

提供丰富的API开放接口,便于第三方应用进行集成,节省重复开发时间。

2.平台向下Agent开放

提供Agent,针对不同设备操作系统和硬件进行适配。

3.终端管理平台开放

Service Provider用户通过Web方式接入平台并调用远程控制和配置接口对其终端进行远程操作。

4.预集成高价值行业

平台为合作伙伴提供预集成行业高价值服务,包括智慧家庭、车联网、智能抄表。

二、平台二次开发

什么叫做二次开发呢,在一次开发的基础上设备可以与云平台建立通信,而二次开发则可以发挥平台更多的优势。

华为物联网平台的二次开发主要包括产品开发、应用侧开发、设备侧开发和日志管理

2.1产品开发

物理世界中我们做一款产品首先要确定它的外观和功能,在物联网平台上也类似,华为物联网平台通过产品模型来定义一款设备的属性和功能

2.1.1产品模型开发

什么是产品模型呢?产品模型又称Profile,用于定义一款接入设备所具备的产品信息包括厂商ID、厂商名称、设备类型、协议类型与服务能力,如测温、测速等,然后通过厂家、设备类型和设备型号,唯一标识一款设备,便于平台识别。

产品模型可以在设备接入控制台进行无码化开发,设备接入时平台将会与产品模型进行对比,只有匹配成功的数据才会在平台上保存。

产品模型是用来描述一款设备“是什么”、能做什么”以及“如何控制该设备”的文件。

2.1.2设备编解码插件开发

对于服务器来说,只能读懂json格式的数据,而对于底层设备来说,大部分只能读懂二进制的数据,所以需要编解码插件在两者之间充当“翻译官”的角色

华为物联网平台目前支持三种编解码插件开发方法

1.图形化开发(推荐使用)

图形化开发是指在设备接入控制台,通过可视化的方式快速开发一款产品的编解码插件。

2.离线开发

离线开发是指使用编解码插件的Java代码Demo进行二次开发,实现编解码功能、完成插件打包和质检等。

3.脚本化开发

脚本化开发是指使用JavaScript脚本实现编解码的功能

2.2应用侧开发

2.2.1应用侧开发介绍

以下是应用开发的流程

为了提高安全性,应用侧需先通过IAM服务鉴权,获取Token后,方可实现相关产品管理、设备管理等功能。

Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,无需再次带上用户名和密码。

为了降低应用开发的难度,华为物联网平台提供了大量北向Restful API接口,通过调用这些API,可以帮程序员们节省大量精力

北向接口(Northbound Interface)是面向应用服务器的接口,即向上提供的接口。

华为物联网平台提供的API列表请见下图

2.2.2API调用

开发者通过动词与参数,可以对API进行调用,并且开发者在调用平台的API时,需要在接口消息中携带该APP ID和Secreto,平台会根据这个信息对该应用进行鉴权和授权。

其中

应用接入鉴权、创建设备、修改设备信息使用POST动词

查询设备、查询设备消息使用GET动词

删除设备使用DELETE动词

2.3设备侧开发

物联网设备种类繁多,通信协议也是五花八门,所以设备侧开发的重点就是要有足够多的模式来支持不同的设备。

华为物联网平台具备多种设备开发模式,很好地解决了物联网设备种类多的问题,以下是设备侧开发的流程

其实,设备侧开发主要可以分为三种方式

1.使用ADK接入

2.使用模组接入

3.使用协议接入(MQTT、MQTTS、LoRaWAN、Modbus)

而在此基础上,设备开发又可以分出六种模式

1.认证开发MCU模式

loT Device SDK Tiny已经预集成在MCU ( Main Control Unit )中,可以直接调用方法连接华为云loT。适用于设备商用时间短,研发成本低,无需管理子设备的直连设备。

2.认证模组开发模式

loT Device SDK Tiny已经预集成在模组中,通过调用AT指令连接华为云loT。适用于需要节省MCU资源,无需管理子设备的直连设备。

3.LiteOS开发模式

设备运行在LiteOS中,通过LiteOS对MCU进行资源管理,同时liteOS内置了loT Device SDK Tiny,可以通过调用函数连接华为云loT。LiteOS开发模式的设备开发耗时更短,开发难度也低。适用于无操作系统,无需管理子设备的直连设备。

4.常规开发模式

集成loT Device SDK Tiny到MCU中,调用SDK中的函数连接华为云loT,相比API接入更便捷。适用于设备商用时间充足,MCU的Flash与RAM资源满足loTDevice SDK Tiny集成条件的场景。

5.OpenCPU模组模式

节省一个MCU,使用公用模组中的MCu能力,将设备的应用程序编译运行在OpenCPU上。适用于安全要求高,体积较小,商用时间短的设备。

6.网关设备开发模式

loT Device SDK预置到cPu ( Central Processing Unit)或者MCU(Micro Controller Unit)中,通过调用函数连接到华为云loT。适用于管理子设备的网关设备。

2.4云端日常管理

云端日常管理包含以下服务,了解即可

总结

本次文章主要介绍了物联网技术中平台层的技术介绍,下一次将会从感知层进行介绍。

近期有一场HCIA-IoT的免费训练营活动,参与活动不仅可以拿奖品、学习HCIA-IoT的考试内容,还可以获得价值200美元的HCIA的免费考试券,简直棒极了!

活动报名链接

这是本系列第四篇文章,我将持续分享自己学习HCIA-IoT与参加考试的心得,敬请关注,谢谢大家!

如果您喜欢我的文章,请不要吝啬您的赞赏。

如果您不喜欢我的文章,请您留下宝贵的意见。

IoT 云社区 开发者 活动 网络

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《Head First 设计模式》第十章-状态模式 状态模式(headcount)
下一篇:Android清单文件详解(二) ---- 应用程序权限声明(安卓中的清单文件)
相关文章