物联网成长日记:如何进行端到端开发?

阅读数:761 2019 年 9 月 29 日 15:55

物联网成长日记:如何进行端到端开发?

自华为物联网平台推出以来,很多开发者都在后台咨询小编设备如何上云等问题,小编我忍不住了,花了两天两夜,整理出“如何玩转物联网平台”,帮助您快速了解设备上云全流程。

开始之前,先了解物联网平台的整体方案。使用物联网平台构建一个完整的物联网解决方案主要包括 3 部分:物联网平台、业务应用和设备。

整体方案

物联网成长日记:如何进行端到端开发?

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

  • 设备:可以通过固网、2/3/4G、NB-IoT、Wifi 等多种网络接入物联网平台,并使用 LWM2M/CoAP、MQTT 协议、或 ONVIF 协议将业务数据上报到平台,平台也可以将控制命令下发给设备。

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

因此,基于物联网平台去实现一个端到端的物联网解决方案时,需要在开发中心(测试环境)进行产品开发、在设备管理服务控制台(商用环境)进行上线和日常管理:

物联网成长日记:如何进行端到端开发?

开发中心与设备管理服务的差异

如上面讲到的,在实现物联网方案过程中,会使用到开发中心设备管理服务,那这两个平台有啥区别呢?

开发中心

开发中心是基于设备管理服务提供的物联网一站式开发工具,帮助开发者快速进行 Profile(产品模型)和编解码插件的开发,同时提供在线自助测试、产品发布等多种能力,端到端指引物联网开发,帮助开发者提升集成开发效率、缩短物联网解决方案建设周期。

设备管理服务

设备管理是在设备接入基础上,提供了更丰富完备的设备管理能力,简化海量设备管理复杂性,节省人工操作,提升管理效率。当用户在开通设备管理服务时,系统默认一起开通设备接入服务,即用户在使用设备管理服务时,包含设备接入服务的能力。

开发中心和设备管理服务有哪些差异?

  • 两者所在的物联网平台环境不一样

开发中心所在的平台环境为测试环境,设备管理服务所在的平台环境为商用环境。两个环境的设备数据不能互通,已对接测试环境的设备 / 应用要迁移商用环境,需要在商用环境重新创建应用和注册设备,并修改设备 / 应用中平台的接入信息。

  • 两者的设备数量限制不一样

开发中心单个项目(应用)下最多可注册 20 个设备,设备管理服务单个应用下最多可注册 1000 万个设备。在其他的平台能力上,两者保持一致,例如开发中心和设备管理服务使用同样的 API,更多的平台能力使用限制请查看使用限制。

  • 两者的计费策略不一样

开发中心为免费使用,设备管理为付费使用,设备管理服务的具体计费策略请查看计费详情。

开发中心和设备接入服务是否有联系?

开发中心是基于设备管理服务的物联网开发工具,在开发中心上开发的产品(Profile 文件和编解码插件)只适用于设备管理服务,不能在设备接入服务中导入和使用。

产品开发

开发者在进行设备接入前,基于开发中心进行相应的开发工作,是真实设备接入到设备管理服务的前提条件。

物联网成长日记:如何进行端到端开发?

平台侧开发

物联网成长日记:如何进行端到端开发?

物联网成长日记:如何进行端到端开发?

设备侧开发

物联网成长日记:如何进行端到端开发?

华为物联网平台支持终端设备直接接入,也可以通过工业网关或者家庭网关接入;支持多网络接入、原生 MQTT 协议接入、SDK 接入,解决设备接入复杂多样化和碎片化难题,实现设备的快速接入,详见设备侧开发。

  • 使用 SDK 接入:为了帮助设备快速连接到物联网平台,华为提供了 Agent Lite SDK、Agent Tiny SDK 和 LiteOS SDK。支持 TCP/IP 协议栈的设备集成 Agent Lite SDK 或 Agent Tiny SDK 后,可以直接与物联网平台通信。不支持 TCP/IP 协议栈的设备例如蓝牙设备、ZigBee 设备等需要利用网关将设备数据转发给物联网平台,此时网关需要事先集成 Agent Lite SDK。如果是智能设备,可以集成 LiteOS 操作系统,利用 LiteOS 与物联网平台通信。

  • 原生 MQTT 协议接入:支持设备通过 MQTT 原生协议接入。MQTT 是一种基于发布 / 订阅范式的 ISO 标准消息协议,主要应用于计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备,适合长连接的场景,如智能路灯等。

  • 使用模组接入:支持通过华为认证的 Wifi、NB-IoT、2/3/4G 模组直接接入物联网平台。模组厂商只需要将 Agent Tiny SDK 集成在现有的模组固件包中,这样模组就具备了接入华为物联网平台的能力。

应用侧开发

华为物联网平台面向全球各行各业提供物联网服务,并通过 Restful API 的形式对外开放物联网平台丰富的设备管理能力。应用开发人员基于 API 接口开发所需的行业应用,如智慧城市、智慧园区、智慧工业、车联网等行业应用,满足不同行业的需求。应用开发人员可以选择调用 API 接口、集成 SDK 两种方式进行应用服务器(简称为应用)的开发。具体详见应用侧开发。

物联网成长日记:如何进行端到端开发?

上线(转商用)

当产品发布到产品中心后,我们在“开发中心”定义好的产品就可以在“设备管理服务”中使用了。由于开发中心所在的平台环境为测试环境,设备管理服务所在的平台环境为商用环境,两个环境的数据不能互通,已对接测试环境的设备 / 应用服务器要迁移商用环境。具体详见商用对接。

物联网成长日记:如何进行端到端开发?

云端日常管理

物联网成长日记:如何进行端到端开发?物联网成长日记:如何进行端到端开发?
物联网成长日记:如何进行端到端开发?

真实设备接入后,用户就可以基于控制台或者 API 接口,进行日常的应用管理和设备管理。

评论

发布