行空+SIoT-掌控小灯

小齿轮 汝州一中朱现伟
帖子创建于2022年11月22日 物联网应用 1634 次浏览 1 个赞 1 人关注

目标任务:

SIoT物联行空和掌控板,控制掌控小灯的开关。

演示视频:

行空板+SIoT+掌控板

step1

[学习资料]行空板可以运行SIoT,又有触屏控制,是个很棒的物联数据中心。(下面内容摘抄自官方教程。)

学习行空板如何向SIoT物联网平台发送一条“hello”的文本消息,在发送消息之前需要做哪些准备。

(1) 检查SIoT是否开启

长按行空板的“Home”键进入菜单页,点击“应用开关”,检查SIoT服务是否开启,如果显示“已禁用”,点击SIoT选项,切换SIoT状态为“已启用”。

具体操作如图所示:


(2) MQTT-py库

要向SIoT平台发送数据,要有发送相关指令才能实现。但是现在行空板的指令区中没有这样的指令,该怎么办呢?

点击“拓展”,在官方库中找到“MQTT-py”并点击,完成添加。


(3) MQTT初始化

指令添加完成后,要使用MQTT构建物联网,首先需要使用指令 初始化MQTT,点击“设置”图标,将“SIoT服务器”的内容修改为行空板连接电脑的默认IP地址“10.1.2.3”。


初始化设置完成后,MQTT发起连接,使用指令MQTT发起连接;连接成功后,需要保持连接,使用指令 MQTT保持连接永久。


要向SIoT平台发送数据,就需要先订阅要发送到SIoT平台的主题,使用指令 MQTT订阅 。需要特别说明的是,MQTT订阅指令中填写的主题,并且固定的格式为“项目ID/设备号”。

(4) 行空板向SIoT物联网平台发送数据

完成了“MQTT的初始化——发起连接——保持连接——订阅”这四个步骤后,接下来,就可以向SIoT平台发送数据了,使用 MQTT发布 指令。

每隔5秒,向SIoT平台发送一条“hello”的文本数据。


4. 程序运行

运行程序,程序运行成功后,Mind+终端界面上打印“连接结果:连接成功”。

程序设置每隔5秒给SIoT平台发送一条“hello”的文本数据。但是当数据发送成功后,行空板屏幕上没有任何反馈,数据又应该怎么查看呢?

查看数据需要使用网页进入行空板服务页面,双击打开浏览器在地址栏输入“10.1.2.3”。



进入行空板服务页面后,点击“应用开关”,找到SIoT并点击下方的“打开页面”,进入SIoT服务页。


输入对应的账号和密码,点击登录。

账号:siot

密码:dfrobot


登录成功后,点击“设备列表”,找到订阅的主题。


点击“查看消息”,就可以看到对应的数据了。


step2

行空板接收SIoT平台的数据

1. 编写程序

上一个任务学习了如何向SIoT平台发送数据,接下来,一起学习行空板如何接收SIoT平台数据的方法,并且将该数据在Mind+终端中打印出来。

(1) SIoT平台向行空板发送消息

SIoT平台查看消息界面上,有一个发送消息的消息内容框,在消息内容框里输入“你好,行空板!”,按下发送按钮,完成消息发送。消息发送成功后,Topic里面会多一条“你好,行空板!”的消息。


(2) 行空板接收SIoT平台发送的数据

行空板要接收来自SIoT平台发送的消息数据,需要使用指令 当MQTT从MQTT主题接收到MQTT消息。

接收数据,首先需要判断数据是否是来自“mPython/001”这个主题。需要注意的是,MQTT消息的数据类型为字符串型,在进行MQTT消息判断时,需要将判断数据“mPython/001”放入英文状态下的引号内。

MQTT主题判断成功后,将接收到的 MQTT消息 在Mind+终端中打印出来。

完整程序如下:


2. 程序运行

点击运行,程序运行成功后,Mind+终端界面上打印“连接结果:连接成功”的消息。然后在SIoT平台的消息内容框中输入“你好,行空板!”,点击发送按钮,行空板板显示收到的消息数据“你好,行空板!”,Mind+终端界面上打印“你好,行空板!”。


step3物联掌控,点亮掌控灯

行空板程序1




行空板端程序2




掌控板端,用mPython编程




文件名:SIoT掌控灯.rar