基于SuperVessel云端的物联网服务平台Comet上线了!SuperVessel超能云是基于POWER处理器的公有云, 提供虚拟资源、大数据服务、FPGA虚拟加速服务和物联网应用服务 (https://ptopenlab.com/iotdm/#/), 使得用户只需关注应用本身的设计开发, 设备的注册、管理,数据的存储、维护等功能, 都由物联网应用平台Comet完成, 从而简化了开发流程, 使用户能够快速完成物联网应用的开发和部署。
SuperVessel超能云物联网服务平台Comet的主要功能包括:
- 数据流管理
- 设备管理
- 设备MetaData管理
- 设备控制管理
- IoT应用Builder
- IoT应用Run Time
IoT 服务平台Comet, 支持http和MQTT协议, 图形化的界面, 使用户可以通过简单的输入和拖拽, 就实现物联网应用的开发。IoT Application Gallery, 创建了用户应用的发布平台, 实现一键发布。同时, Comet还提供主流IoT设备的示例代码, 便于用户开发集成。
下面, 我们以IoT开放平台Arduino Yun为实例, 介绍如何利用SuperVessel的IoT Service, 开发物联网应用。
Arduino是一款开放的通用物联网设备平台, 由于具有丰富的设备接口, 可以方便的连接各种传感器设备, 因而颇受欢迎。介绍请见https://www.arduino.cc/。
Arduino Yun 是一款基于ATmega32U4 和Atheros AR9331 的单片机板。 Atheros AR9331 可以运行一个基于Linux 和OpenWRT 的操作系统 Linino. 这款单片机板有内置Ethernet, Wifi, 一个USB端口,一个Micro 插槽, 20个数字输入/输出端口(其中7个可以用于PWM, 12个可以用于ADC),1个MICRO USB,1个ICSP插头,3个复位开关.
一、硬件和环境搭建
本应用光强传感器采用的是BH1750FVI模块,所用的单片机程序和python程序可从示例程序( http://ptopenlab.com/cloudlabconsole/doc/ArduinoYunSample.zip) 下载。具体搭建过程可参考以下教程--Arduino光强示例环境搭建。
二、创建IoT应用
本应用为光强传感器应用, 可以把光强传感器的数值上报到物联网平台Comet, 并显示。同时支持应用同环境的绑定, 使得物联网应用呈现良好的用户体验。
- 登录SuperVessel物联网服务平台Comethttps://ptopenlab.com/iotdm/#/
- 创建数据流
图中黄框所示, 为IoT平台创建应用的基本步骤。
Application Editor—是指针对应用的定义和编辑, 包括环境的绑定、热点的设定 设备的绑定、图层的叠加、应用的发布等。
Devices—设备指的是添加、编辑、修改、删除已定义的设备类型。
Streams—Stream流指的是数据流的添加、编辑、修改、删除, 此数据流的定义需要同Arduino程序中的定义一致。
Operations—指针对IoT设备的控制操作。
Device Type—定义设备类型, 编辑、删除。
在本示例中, 我们定义的数据流名称为“Light”, 同Arduino单片机程序中的数据流定义一致。定义好的数据流会在Datastreams中显示。点击“+Create”, 可以添加新的数据流。
3. 定义设备类型
定义设备类型,注意设备的名称需要同mqttClientControl.py 中的设备名称一致。本示例中设备名称为“EnvCollector”。
定义好的设备如下。可通过点击“+”, 添加新的设备。
4. 将数据流和设备绑定。
该步骤主要是将设备和数据绑定,定义数据流是从哪个设备上报的。点击“+Stream”, 选择定义好的数据流, 就可将设备和数据绑定。
添加数据流后的结果显示为
5. 注册应用中的设备
应用中的设备需要向IoT平台注册, 在“Devices”菜单中, 定义注册相关的设备。
SN定义为有线口的MAC地址,无论用有线还是无线连接internet,SN都是有线口的MAC。注册完成的设备如下所示:
6. 编辑运行Arduino程序。
在Arduino终端, 打开mqttClientControl.py, 可以看到设备类型的定义, 以及MQTT server的IP地址
打开单片机程序SensorSampleArduinoYun.ino, 可以看到数据上报格式, 和Stream的名称,该名称与IoT平台定义的名称需一致。
若程序没有改动, 可关闭程序。在Arduino终端运行
./mqttClientControl.py
Arduino YUN就会将数据上报至IoT平台。
7. 在Device 界面中点击Arduino图片, 就能看到实时上报的光强数据。
8. 设备与环境关联。
以上几步, 已经完成了设备同IoT平台的连接、注册和消息通路。下面, 我们要把IoT设备同实际环境绑定在一起,因为任何设备都有一个位置和场景, 才是一个完整的应用。
在ApplicationEditor中创建一个新的Map, 名字叫“ Light Demo”。
选择界面右上角处“Layer Panel”中的中间选项, 增加图层。上传传感器设备所处环境照片。
结果如下:
9. 创建热点, 把热点和传感器设备相绑定。
绘制热点在希望的位置。
保存后, 可看到如下页面。
10. 将热点关联传感器设备。
点击Application List中的Light Demo, 会弹出显示设备的界面:
点击上图中的热点, 会弹出一个“Devices”方框, 将所选设备拖入Devices方框内
关联成功, 可以看到数据在热点区显示。至此, 一个IoT应用已全部完成。
11. 生成二维码, 便于发布/共享。
IoT服务平台Comet开发了一键发布功能, 将应用的链接生成二维码, 便于朋友圈共享和发布。点击“Application View”, 生成二维码。可在手机上扫描二维码, 进入应用页面, 实时监测数据。
以上, 就是利用SuperVessel超能云IoT服务平台Comet进行物联网应用开发的实例。