如何借助一套框架快速开发一个NB-IoT物联网应用

举报
jiekechoo 发表于 2018/12/24 10:53:16 2018/12/24
【摘要】 本文是参加“2018华为IoT开发者生态峰会-上海站”时,受邀在峰会演讲的PPT内容,现以图文的方式展现给社区的小伙伴们。在我们刚刚接触物联网行业时,遇到了很多的困难,走了很多弯路,最终在华为公司的帮助下,我们形成了自己的一套开发框架,我们称之为“2+1+2”开发套件。通过我们的套件,2分钟即可接入华为OceanConnect IoT平台;借助物联网开发板,短短1天时间就可以开发一个简易NB...

本文是参加“2018华为IoT开发者生态峰会-上海站”时,受邀在峰会演讲的PPT内容,现以图文的方式展现给社区的小伙伴们。


幻灯片01.jpg


在我们刚刚接触物联网行业时,遇到了很多的困难,走了很多弯路,最终在华为公司的帮助下,我们形成了自己的一套开发框架,我们称之为“2+1+2”开发套件

幻灯片04.jpg

  • 通过我们的套件,2分钟即可接入华为OceanConnect IoT平台;

  • 借助物联网开发板,短短1天时间就可以开发一个简易NB-IoT产品;

  • 在我们的帮助下,可以在2周内验证物联网应用原型机,为商业化做准备。

这样一套开发套件,我们是按照下面的架构搭建。


幻灯片06.jpg

很多人问我一个很有意思的问题,什么是南向设备和北向应用?我告诉他们:把IoT平台放中间,设备放在平台下面,应用放在平台上面,上北下南,称之为南向设备,北向应用;


幻灯片05.jpg

建立一套开发套件有助于团队、公司快速实现物联网应用。以此为模板,将来扩展其他物联网应用将轻而易举。我们来详细分解一下:

  • 首先,我们需要一个南向设备模拟器,通常叫做NB-IoT开发板,内置LiteOS,通过多任务机制采集各种传感器的数据,如:温度,压力,光照度等等;再通过NB-IoT模组联网,发送数据到云平台;

  • 接着,我们需要在华为 OceanConnect IoT 平台创建应用,上传南向设备profile和编解码插件,在平台增加设备,等待设备连接上来注册和绑定,或者通过北向应用来管理设备;

  • 一旦设备连上OceanConnect平台后,我们可以使用OceanConnect平台的开放API,通过北向应用服务器调用这些API,实现对设备管理、数据查看和分析报告。如果你的北向应用给手机APP服务,你还需要手机推送服务。



幻灯片07.jpg

首先,我们要关注的是一个南向设备模拟器,为了模拟真实NB-IoT物联网设备,我们内置了5#锂电池作为设备供电,一个低功耗单片机可以支持多种低功耗模式,一个NB模组用户与基站通讯,一个板载PCB射频天线当然也可以外接天线,两个简单传感器(一个温度,一个压力),几个LED灯用于显示状态,一个按键,当然还预留了一些扩展口,便于其他传感器连接。

接着,把电池装上,插上NB SIM卡,接好传感器,开机;

最后,也是最重要的一点,设备端代码是基于Huawei LiteOS 实时操作系统编写的,把业务应用代码编译后,烧写进设备。

中途不出错的话,我们南向设备端就算是完成了。


参加很多次 LiteOS 的活动,经常会被问到一些问题:

1、为什么要用LiteOS

LiteOS是开源免费的物联网操作系统,兼容市面上大部分单片机让你方便集成,具备RTOS实时操作系统的各种特性,NB-IoT高度集成调用几个简单API就可以连接OceanConnect平台;


2、连接华为的IoT平台是不是必须用LiteOS

不是必须的,你可以用你自己的方式。如果你不用LiteOS,你将会花费更多的时间来集成,何苦呢?


幻灯片09.jpg

南向设备将数据发送到OceanConnect平台,其他工作就交给平台了,多么方便;

OceanConnect提供了开放API,北向应用只需要调用这些API就可以完成数据交互;

在使用OceanConnect IoT平台的过程中,客户经常问一些问题:

1、为什么要用这个IoT平台?

我的看法是:拿来即用,方便;

2、自己搭建一个服务器可以吗?

完全可以,但是你需要完整实现一套OceanConnect,那将是非常大的工作量;

3、用了IoT平台,为什么还需要北向应用?


幻灯片10.jpg

简单理解就是说,IoT平台不区分具体的应用类型,是水表,是垃圾桶,这些跟平台无关。而且,平台也不处理相关的业务信息,所以,北向应用是必须的。

基本的功能就是用户管理,设备管理,数据管理,还有一些通用功能逻辑如日志报警统计等等;


幻灯片11.jpg

涉及到行业应用时,我们需要将业务逻辑处理功能加入到北向应用中,实现诸如垃圾桶是否满了,电池电量是否充足,空气质量达到什么标准等等。

由此设计架构图可以看出,北向应用其实就是一个完整的应用服务器系统,实现了IoT平台的对接,数据库连接,业务逻辑处理,还提供了API给第三方系统;如果是用我们的北向应用框架,只需要修改图中红色部分的服务层即可完成业务整合。


一般情况下,典型的开发流程分为四个部分。

幻灯片12.jpg


最后,告诉大家,在开发过程中,需要注意一些要点。

幻灯片13.jpg


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。