Nick-ccq 发表于 2022-4-20 19:58:12

行空板自带SIoT项目-远程开关灯

## 行空板自带SIoT项目-远程开关灯

疫情期间,手里正好有一块行空板,捣鼓捣鼓,做一些基础有趣的项目。

在之前看发布会的时候看到行空板自带SIoT服务和热点模式,这个功能对于麻烦配置的人来说,省下了很多事情,废话不多说,直接上内容。功能好不好使用见内容。

## 视频预览

https://www.bilibili.com/video/BV1WF411M7uc?t=7.8

## 热点以及SIoT服务

- 通过Home键->应用开关->SIoT服务如果关闭了则开启


- 行空板支持开热点,这样其他手机或者wifi就可以通过无线访问行空板实现远程控制了。通过Home键->开关无线热点模式->打开无线热点,等出现SSID和PASS,然后电脑或者手机连接这个行空板的热点。

注:此处采用电脑或者手机连接行空板开启的热点,让行空板与电脑手机处于一个局域网下,你也可以使用wifi或者有线等方式连接:https://wiki.unihiker.com/networking 。


![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/089ac84b3b075d3b7e16541979c1de58.gif)


## 检测服务是否开启

通过Home键->查看网络信息,界面显示IP地址为:192.168.123.1,说明服务已经开启. 网页端IP:192.168.123.1:8080(**端口号不是1883**)


![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/524bae87297fb7a719e4fbae8f265fcf.png)


## 控制灯带

功能描述:1、可利用行空板SIoT服务,网页端远程控制灯带亮灭,以及手动控制灯带亮灭。
               2、实时检测光线数据,以及网页显示数据。

## Mind+使用

Mind+1.7.2 RC2.0软件,需要的可以去行空板官方QQ群下载。

Mind+图形直接加载行空板、MQTT、灯带等模块。如下图:

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/cc31b581534e7f1e2c41c73db4595a01.png)

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/70c42d48f3f9144ec873674418af74af.png)


## 部分代码

初始化MQTT以及设置字体显示和按钮显示。

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/facde5f69a493dbc0888c0495a6e8eb9.png)
- SIoT服务器可以填写10.1.2.3,(此处开启了无线热点,因此填写192.168.123.1也可以),注意程序中端口号为:1883




- 接收网页端数据



- 按钮控制函数

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/9bd251425cc5e98bff5b49bf45df02ea.png)

## 效果显示

## 界面显示

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/f90e1a2655038d52f09975daf0ad7d84.png)

## 网页登陆访问行空板的ip加8080端口即可打开siot管理页面,注意此处电脑连接了行空板的热点(电脑usb连接行空板也可以通过10.1.2.3:8080访问)。
192.168.123.1:8080   
账号:siot 密码: dfrobot


![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/189bd6d2562b54d75e01555f0f269025.png)

## 网页显示
程序连接成功后发送消息时,siot网页上会自动创建topic对应的项目。
- 网页上打开对应的项目,远程控制发送on或者off可以打开灯带或关闭

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/2d1d92dd5ce3dcf5c060676b510a25cf.png)

- 另一个项目的网页可以实时接收显示光线数值

![](https://img.dfrobot.com.cn/wiki/5d11bab74db88f1df9d7e8fb/c708c6d17c1ccbe4be5c6843173bff24.png)


## 总结

行空板中的热点模式解决了老师现实中的联网情况,SIoT服务一键启动解决了大部分老师配置出现的问题。该项目功能简单,主要讲行空板中SIoT服务和热点模式的使用,老师在使用过程中有什么问题可在下方留言。








You 发表于 2022-4-21 11:55:03

{:6_209:}学起来,非常赞

hnyzcj 发表于 2022-4-21 16:49:32

哈哈哈哈,好

rzegkly 发表于 2022-4-28 13:50:55

喜欢

gray6666 发表于 2022-5-1 10:28:47


无线连接怎么开?

Nick-ccq 发表于 2022-5-7 11:01:13

gray6666 发表于 2022-5-1 10:28
无线连接怎么开?

行空板通过USB连接电脑,在网页输入10.1.2.3进入,然后找到wifi设置。

gray6666 发表于 2022-5-7 11:44:26

Nick-ccq 发表于 2022-5-7 11:01
行空板通过USB连接电脑,在网页输入10.1.2.3进入,然后找到wifi设置。

已调试好,感谢回复

刘睿鹏 发表于 2024-6-11 18:10:55

MQTT总是不稳定,而且拔掉行空板就会废掉

xhc_luoyj 发表于 2024-9-15 23:36:49

按照楼主的程序做了一遍, 开灯和 关灯 按钮,以及消息的on和off都能控制灯的亮与灭。但是同时也发现和循环体相关的bug:
1、行空板上satue显示的文本变化,只有等到循环体执行完毕后,才能变化,显示当前的状态”打开“或”关闭。经多种测试,如在循环体前先加入一个测试用的文本更新和一个等待命令,也依然是在循环执行完毕后方能更新。
2、另外增加一个线程,用于更新light数值(光线值),同样发现,只有等循环体执行完毕后,light值才会继续更新。
3、尝试增加另外两个按钮及回调函数用于“自动控制开启”——根据实时的光线值来控制灯环的亮与灭,按钮”自动控制关闭“——随时能关闭自动光控的功能。测试后,一旦调用”自动控制开启“,则程序一直在执行循环体,其他按钮均无响应。即使用mqtt测试,也是一样的结果。也是通过同问题1的方法得出的结论。
所以我的问题是:
1、在回调函数或mqtt内,当出现循环体时,是否必然是循环体的代码优先执行?
2、如果要在程序中“自动控制开启——根据实时的光线值来控制灯环的亮与灭,那么如何实现呢?
3、请问楼主,“开灯”和“关灯”两个按钮为何是用相同的对象名an,是有什么特殊作用吗?
页: [1]
查看完整版本: 行空板自带SIoT项目-远程开关灯