我目前从事的行业是无人机应用开发,每天都是跟物联网打交道,所以看到了华为云推出的关于物联网相关的技术就来了兴趣。在我的研究领域中,物模型已经是一个非常基础、非常常见的模型了。
如果没有物模型,那么最直接的,各种物体结合开发的时候就难以区分和归类,最终就是一团糟,所谓物模型,其实就是将某个物体进行建模,本文我将利用无人机领域的物联网技术阐述一下物模型相关的技术点,并使用一下华为云IoT平台,给出使用体验。
物模型什么是物模型?正如文章开头所说,物模型就是将某个物体进行建模,是对设备在云端的功能描述,主要包含设备的属性、服务和事件。这个怎么理解呢?
比如我现在研究的无人机领域,一般分为三种物体:
飞机遥控器机场每种物体都有自己的物模型,飞机有自己的设备属性、服务和事件,遥控器也有自己的设备属性、服务和事件。
比如飞机有飞机状态、飞机电池、飞行速度、飞行经纬度、飞行高度等设备属性。
飞机还会有云台旋转、拍照、录像等事件。
每个事件和服务都会通过命令上报的形式进行传递,一般使用的协议就是MQTT,消息体格式为JSON。
比如拍照功能,会朝无人机发送相关指令:
Topic:uav/product/parent_id/eventdata:{ "method": "take_photo", "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxx", "timestamp:": xxxxxxxx}
当然了,在我们研究的工作中,肯定不止传这些参数,这里我只是提炼了一下。
以上就是理论方面的普及,下面我们直接试用一下华为云的IoT平台。
华为云IoT平台实战在开始之前,我们先简单的介绍一下华为云IoT平台。
华为云IoT平台是基于华为云底座的物联网平台,可以让接入的设备进行上云,将设备进行云化,可以更好的管理以及资源分配。
体验地址为:https://www.huaweicloud.com/product/iothub.html
下面我们正式体验一下华为云IoT平台:
创建产品-无人机1、访问网址https://www.huaweicloud.com/product/iothub.html,点击【管理控制台】:
2、在控制台界面,点击【快速体验】:
选择第二个,点击【使用虚拟设备体验】:
在此页面,我们看到:
官方是以智慧路灯作为例子,一共有三端:
应用端云IoT端设备端其过程大概就是:
应用端朝云IoT端下发指令云IoT端朝设备端下发指令设备端返回信息至云IoT端在该页往下翻,找到【管理控制台】,点击它进入管理控制台页面:
在真实的业务场景种,服务ID一般都是uuid或者其他自定义的字符串,而且每个产品不可能只有一个服务,这里便于我演示,我就创建一个无人机的基础服务。
点击【确定】后,在服务列表就能看到我们刚刚创建的服务了:
服务创建好了,接下来就是为这个服务创建一系列的属性,比如这里我们创建的是无人机的基础服务,那么无人机的基础服务会有哪些属性呢?在文章开头我们也说了,一般会有飞机状态、飞机电池、飞行速度、飞行经纬度、飞行高度等设备属性,真实业务场景会有100多个,我们这边就以飞机电池电量举例吧。
首先选择我们刚刚创建的服务,点击【添加属性】,在新增属性弹框中,我们输入属性名称:uav_battery,代表的是无人机的电池,属性描述中简单说明一下这是无人机电池电量,取值范围我们取0-100,电量一般都是0-100.
点击【确定】后,就看到我们创建的属性了:
创建好后,我们就看到了设备列表中新增了我们刚刚创建的设备,点击【调试】进入调试界面:
调试
发送成功后,我们注意到应用模拟器端有数据进行接收了:
{serviceId: manage_id, data: {"uav_battery":"10"}}
此时用户就能拿到无人机的电池电量10了。
整体流程大概就是这样。
总结我自己研究的领域中,物联网平台没有用到云IoT,但是今天体验华为云IoT后,我觉得也是非常不错的,省去了中间层很多麻烦的事情,包括部署、运维等等,希望本文手把书的教程,能够让您对华为云IoT有所了解,如果感兴趣的话,可以去实战看看哦。
花粉社群VIP加油站
猜你喜欢