设备接入平台开发指南

开发前必读:

方案概述

基于IoT平台实现一个物联网解决方案,需要完成以下操作:

开发操作
开发说明

产品开发

主要呈现物联网平台的界面查询与操作,包括产品管理、产品模型开发、插件开发、在线调试等。

应用开发

主要为业务应用与物联网平台的集成对接开发,包括API接口调用、业务数据获取和HTTPS证书管理。

设备开发

主要为设备与物联网平台的集成对接开发,包括设备接入物联网平台、业务数据上报和对平台下发控制命令的处理。

设备接入平台业务开发概览

设备接入平台业务开发概览

开通设备接入服务后,使用设备接入服务的完整流程如下图所示,主要分为产品开发、应用侧开发、设备侧开发和日常管理。

产品开发:开发者在进行设备接入前,基于控制台进行相应的开发工作,包括创建产品、创建设备、在线开发产品模型、在线开发插件、在线调试、自助测试和发布产品。

应用侧开发:通过API的形式对外开放物联网平台丰富的设备管理能力,应用开发人员基于API接口开发所需的行业应用,如智慧城市、智慧园区、智慧工业、车联网等行业应用,满足不同行业的需求。

设备侧开发:设备侧可以通过集成SDK、模组或者原生协议接入物联网平台。

日常管理:真实设备接入后,基于控制台或者API接口,进行日常的设备管理。

图1 流程图

物联网设备接入方案介绍

设备侧接入开发指引

华为物联网平台支持多种接入方式,满足各类设备和接入场景要求。请根据设备类型,选择合适的开发模式。

开发模式
特点
适用场景
难度系数

认证MCU开发模式

IoT Device SDK Tiny已经预集成在MCU(Main Control Unit)中,可以直接调用方法连接华为云IoT。

设备商用时间短,研发成本低,无需管理子设备的直连设备。

认证模组开发模式

IoT Device SDK Tiny已经预集成在模组中,通过调用AT指令连接华为云IoT。

需要节省MCU资源,无需管理子设备的直连设备。详细接入方式请参考通过华为认证模组接入。

LiteOS开发模式

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

无操作系统,无需管理子设备的直连设备

常规开发模式

集成IoT Device SDK Tiny到MCU中,调用SDK中的函数连接华为云IoT,相比API接入更便捷。

设备商用时间充足,MCU的Flash与RAM资源满足IoT Device SDK Tiny集成条件的场景。

Open CPU开发模式

节省一个MCU,使用公用模组中的MCU能力,将设备的应用程序编译运行在OpenCPU上。

安全要求高,体积较小,商用时间短的设备

网关设备开发模式

IoT Device SDK预置到CPU(Central Processing Unit)或者MPU(Main Processing Unit)中,通过调用函数连接到华为云IoT。

管理子设备的网关设备。

应用侧API使用指导

为了降低应用侧的开发难度、提升应用侧开发效率,物联网平台向应用侧开放了API(Application Programming Interface)。您可以调用开放的API,快速集成物联网平台的功能,如产品管理、设备管理、订阅管理、设备命令、规则管理等功能。

须知:

应用侧需要通过IAM服务鉴权,获取token,详细步骤可参考调测“获取IAM用户Token”接口。


接口介绍

API分组
应用场景

订阅管理

订阅管理为应用服务器提供对物联网平台资源的订阅功能,若订阅的资源发生变化,平台会通知应用服务器。

标签管理

标签可用于对资源进行分类,标签管理为应用服务器提供对各类资源绑定和解绑标签功能。

当前仅设备支持标签。

批量任务

批量任务为应用服务器提供批量处理功能,对接入物联网平台的设备进行批量操作。

· 目前提供批量软、固件升级,批量创建/删除设备,批量冻结/解冻设备的能力。

· 当前单用户单一任务类型的未完成的任务最大为10,超过则无法创建新的任务。

设备CA证书管理

设备CA证书管理为应用服务器提供对设备CA证书进行操作管理功能,包括对设备CA证书进行上传、验证、查询等操作。物联网平台支持使用证书进行设备接入认证。

设备组管理

设备组管理为应用服务器提供对设备组的管理操作功能,包括对设备组信息和设备组设备的操作。

产品管理

产品模型定义了该产品下所有设备具备的能力或特征,产品管理为应用服务器提供对已导入物联网平台中产品模型的操作管理功能。

设备管理

设备管理为应用服务器提供对设备的操作管理功能,包括对设备基本信息和设备数据的操作。

设备影子

设备影子是一个用于存储和检索设备当前状态信息的文件,设备影子为应用服务器提供对设备影子的操作管理功能。

· 每个设备有且只有一个设备影子,由设备ID唯一标识。

· 设备影子仅保存最近一次设备的上报数据和用户设置的预期数据。

· 无论该设备是否在线,都可以通过该影子查询和设置设备的状态。

设备命令

设备的产品模型中定义了物联网平台可向设备下发的命令,设备命令为应用服务器提供向设备下发命令的功能,实现对设备的控制操作。

设备属性

设备的产品模型中定义了物联网平台可向设备下发的属性,设备属性为应用服务器提供向设备下发属性的功能。

数据转发设备联动

规则管理为应用服务器提供物联网平台的规则引擎功能,通过设置规则实现业务的联动变化或将数据转发至其他华为云服务。包含设备联动和数据转发两种类型。

· 设备联动:包含触发条件和执行动作两部分。当满足设置的触发条件后,触发相应动作,如“下发命令”、“发送通知”、“上报告警”、“恢复告警”。

· 数据转发:包含设置转发数据、设置转发目标和启动规则三部分。支持转发至“数据接入服务DIS”、“分布式消息服务 Kafka”、“对象存储服务 OBS”、“应用与数据集成平台 ROMA Connect”、“第三方应用服务(HTTP推送)”、“AMQP推送消息队列”、、、。

设备消息

设备消息为应用服务器提供向设备透传消息的功能。

华为云IoT常见应用场景

行业痛点


工业制造步入智能化时代,而当前生产工艺无法匹配下游客户对于产品质量的个性化需求。

大量不同类型的工业生产设备如何实现智能化生命周期管理,生产过程如何实现自动化,实现节能、降本、增效,都依赖于大量设备数据的低时延传输和本地智能化分析。


服务优势


适配多种工业协议,实现生产设备统一接入管理,快速采集工业数据,并进行本地智能解析和自动化数据清洗;

边缘和云端系统统一部署、运维、业务管理,支持第三方服务的集成,提供丰富的应用生态,匹配个性化需求;

抽象屏蔽硬件接口,不同场景(大计算、设备接入)支持选用不同边缘硬件;

实时数据质量监控和工艺参数监控、告警,提升设备运维效率和生产效率。

行业痛点

· 园区管理涉及管理设备种类众多,协调困难并且复杂。如何数字化高效运营,一直是园区管理者的痛点。

· 针对集团化园区,用户隐私数据往往存在数据圈地化管理的诉求,如何做到云端高效统一管理的同时又兼顾用户隐私,也是园区管理的核心重点。


服务优势


· 隐私数据本地自闭环管理,所有数据采集、处理及存储都在本地节点闭环;

· 数据清洗,机器学习,非隐私数据清洗汇总后,上传云端机器学习,持续优化本地智能算法;

· 接口多样化,支持园区各类子系统/设备完成对接管理;

· 摄像头管理、视频分析、入侵智能检测能力,除了满足园区安防需求,还能做到业·务联动及编排,多样化管理。

行业痛点


· 在自动驾驶大力发展的时代,智慧交通与道路感知的高效协同是实现安全自动驾驶的基石。

· 如何让自动驾驶实时感知复杂的路面情况?

· 如何让自动驾驶根据不同场景,迅速计算出相应对策?

· 如何让自动驾驶车辆针对紧急场景,做到毫秒级的响应?


服务优势


· 提供高精度定位及地图服务;

· 多源融合感知,智能化算法检测道路交通事件(算法云端训练、边缘执行),有效实时提供碰撞告警,红绿灯相位推送,车流量感知及控制等智能服务;

· 提供高可靠低时延通信。

业务挑战


· 一个电梯需要配置3-5种不同类型的传感器,适配开发量大

· 设备长时间连接平台,在设备上量后,对平台性能和扩展性要求高


客户收益


· 多种传感器基于边缘网关接入,边缘网关预集成平台Device SDK,简化接入难度

· 平台支持亿级海量连接和百万级高并发,可保证大量设备接入和设备长时间连接

· 企业可以随时随地查看电梯数据和使用情况,及时了解电梯维保信息,也便于统一监管

· 可通过手机APP、小程序召唤电梯,实现无接触智能乘梯,提升公共卫生安全

设备接入平台最佳实践案例

通过业务场景示例呈现平台能力和价值 体验更多

  • 设备模拟器快速接入

    以设备接入模拟器为例,介绍以MQTT原生协议接入物联网平台。


    以设备接入模拟器为例,介绍以MQTT原生协议接入物联网平台。


  • 恒温空调

    通过恒温控制系统,不论空调是否开机,都可以调整空调默认温度,待空调上电开机后,自动按默认温度调节。

    通过恒温控制系统,不论空调是否开机,都可以调整空调默认温度,待空调上电开机后,自动按默认温度调节。

  • 设备通过微信小程序接入到平台

    通过微信小程序模拟设备,带您体验设备通过MQTT over WebSocket协议连接到物联网平台、上报数据和接收命令的全过程。

    通过微信小程序模拟设备,带您体验设备通过MQTT over WebSocket协议连接到物联网平台、上报数据和接收命令的全过程。

  • 零代码搭建物联网监控大屏

    设备上报数据到物联网平台,将数据以CSV格式存储到对象存储服务(OBS),DLV从OBS文件读取数据并展现为多个维度的报表。

    设备上报数据到物联网平台,将数据以CSV格式存储到对象存储服务(OBS),DLV从OBS文件读取数据并展现为多个维度的报表。

  • 设备触发告警并邮件或短信通知

    本示例为设备上报的电池电量小于20%时,物联网平台会上报告警并发送邮件或短信通知给指定的手机号码。

    本示例为设备上报的电池电量小于20%时,物联网平台会上报告警并发送邮件或短信通知给指定的手机号码。

  • 基于NB-IoT小熊派开发智慧路灯

    带您体验十分钟快速上云,现智慧路灯检测并上报光照强度,显示在IoTDA控制台,并在IoTDA控制台远程控制LED灯开关的功能。

    带您体验十分钟快速上云,实现智慧路灯检测并上报光照强度,显示在IoTDA控制台,并在IoTDA控制台远程控制LED灯开关的功能。

设备接入平台使用过程中的常见问题解答

设备接入平台使用过程中的常见问题解答

更多问题答疑请前往了解更多

更多设备接入平台问题答疑请前往 了解更多

  • 设备管理服务和设备接入服务合一后的差异点是什么?

    设备管理服务和设备接入服务合一后,主要有以下变更点:

    功能:全新升级后的设备接入服务(IoTDA),整合了原设备接入服务和设备管理服务的功能,新用户只需开通设备接入服务,即可同时使用设备接入和设备管理的全部功能。

    计费:已开通过设备接入服务的用户,可叠加使用设备管理服务的功能,按消息数计费的方式不变;原设备接入服务和设备管理服务都已开通使用的用户, 业务使用不受影响, 自2020年3月26日00:00(北京时间)起,计费方式仅保留按消息数计费,不再按设备数计费。

    统连接云手机,答案是可以。我们支持通过任何系统连接云手机。

  • NB模组附着网络失败如何处理?

    1、请先执行AT+NUESTATS,查看是否有网络信号。

    2、若Singal power等于0,表示没有收到网络信号, 请检查基站对应的频带否放开,或把设备换个信号强的地方再尝试。

    3、执行AT+NBAND?查询设置的频段跟模组本身的频段是不是一样的。


  • 如何在设备接入控制台注册MQTT协议接入的设备?

    访问设备接入控制台,在“设备 > 所有设备”页面进行注册。

  • 设备接入服务如何获取设备数据?

    全新升级后的设备接入服务获取设备数据,需要通过规则引擎,将数据转发至其他服务获取。例如转发至OBS存储,转发至DIS或DMS后再发送至应用服务器。

  • 华为是否提供模组/硬件终端/应用软件等?

    华为提供了芯片供模组厂商集成,同时提供了物联网平台及终端接入物联网平台方案供设备厂商集成。

    当前有多家合作伙伴已经和华为物联网平台完成集成认证,建议您访问华为云市场寻找合适的提供商。

  • 物联网平台支持的硬件架构和使用的相关组件有哪些?

    物联网平台目前使用华为自研的操作系统欧拉OS、自研的Java编译及运行环境、自研数据库GuassDB、开源MongoDB数据库等,支持多种硬件架构,包括X86和ARM架构,可满足不同场景需求。

  • 使用SDK中的设备发放功能后,还需要在设备接入服务中注册设备吗?

    不需要,通过设备发放服务成功发放的设备,会将设备信息同步到设备接入服务。

  • LWM2M/CoAP/MQTT/泛协议设备接入开发流程?

    LWM2M/CoAP协议设备接入

    1、平台侧开发:包括创建产品、开发产品模型、开发编解码插件。详细操作指导请参考创建产品、开发产品模型、开发编解码插件。

    2、设备侧开发:使用模组接入。

    3、(可选)应用侧开发。

    MQTT协议设备接入

    1、平台侧开发:包括创建产品、(可选)开发产品模型、(可选)开发编解码插件。当数据格式为JSON时,不需要开发产品模型和编解码插件。

    2、设备侧开发:使用SDK或者原生协议接入。

    3、(可选)应用侧开发。

    泛协议接入

    1、平台侧开发:包括创建产品、(可选)开发产品模型、(可选)开发编解码插件。当数据格式为JSON时,不需要开发产品模型和编解码插件。

    2、设备侧开发:使用泛协议网关方式接入。

    3、(可选)应用侧开发。