1748| 1
|
[ESP8266/ESP32] 基于FireBeetle 2 ESP32-S3的物联网点灯 |
木子说,试用报告不能写得太水,其他我第一篇打算写开箱报告并实现点亮板载灯,既然木子说了不能太水,那箱就不开了,直接使用FireBeetle 2 ESP32-S3完成一个物联网点灯的小项目。 话说点灯是开发板永远的话题,就像学编程第一个程序一定是打印Hello World。仔爸在之前已经写过一篇《基于esp32-c3的物联网点灯》,我就在此基础上再进行一次迭代修改,增加一些内容——这就是所谓的创新吧,哇哈哈哈哈…… 一、物联网服务器的选择和使用 本项目不再用行空板上的SIOT2.0,为什么不选择呢?因为仔爸没有搞定后面的根据发送信息生成二维码,所以采用的是Siot 1.3,请允许我自降版本。去gitee上下载吧(下载地址:https://gitee.com/vvlink/SIoT/tree/master/software/),虽然github上也有,但可能也许大概率会访问不了。 好了,下载后解压,然后双击“SIoT.exe"启动物联网服务器(仔爸使用的是For win版本) 然后我们会发现弹出一个终端窗口,里面显示物联网服务器的两个地址,请复制第一个192开头的服务器地址备用。 接下来,打开任意一款浏览器,在地址输入192.168.10.136:8080(请根据你所看到的IP地址进行替换),第一次登录需输入用户名和密码(用户名siot,密码dfrobot) 然后我们会看到已经存在的设备名称,当然我们可以新建一个,但仔爸瞪大了眼睛查了很久也没有发现创建、新建之类的按钮。惯性思维限制了我前进的道理,直到我发现是不是可以凭空发送一个消息就可以创建了呢?果然如此。单击”发送消息“标签,在”主题(项目ID/设备名)"下面的文本框中输入一个用斜杠分隔的字符串(项目ID和设备名称请随意命名),如下图。 然后我们就会发现已经在”设备列表“中显示刚才新建的主题了。 二、无线网络 物联网程序离不开网络,我们需要将使用的电脑,以及ESP32-S3保持连接在同一网段(一般是局域网,只要连接同一个路由器即可)。然后通过MicroPython对esp32-s3进行编程实现联网。可以直接抄一段MicroPython官网中提供的样例代码。
三、编写esp32-s3上的主程序 主程序的主要功能是,实现连接局域网,然后循环侦听物联网服务器发送过来的消息,如果收到消息为1则点亮板载灯,如果收到0,则熄灭板载灯。关于采用Thonny来编写MicroPython的基础操作,可以查看仔爸上一篇"Beetle ESP32 C3 物联网亮板载灯"。其实两者的代码基本是一样的。
四、开始点灯 首先运行esp32-s3上的主程序,并保持等待状态。然后在刚才打开的浏览器界面,通过手工发送消息1和0,我们会发现随着我们发送1,则板载灯点亮,发送0则熄灭。物联网就是这么神奇,大家脑补一下,把点灯改为其他各类操作是不是马上想通了?比如启动马达,比如各类传感器。 等一下,每次点灯要打开网页并手工发送消息,这不是我们该提倡的,能否用手机来操作呢?显然手机最方便的就是扫码,我扫,我扫,我扫扫扫。这时候仔爸凭着N年前学过编写网页的经验,要把GET和POST用上了。也就是手工发送1是不是可以变成一个访问的网址,如果这样,我们把这个网址转换成二维码就行了。网址可不好找,但还是被细心的仔爸找到了。还记得启动Siot服务器时弹出的终端窗口吧,当我们发送消息时,会滚动一些信息,奥秘就在里面。观察下图红框中的一串字符,就是发送的真实地址,最前面的斜杠左侧再加上服务器地址即可,也就是192.168这个开头的物联网地址。 试着把拼接的真实发送地址粘贴到浏览器,然后按下回车键,试试能不能开关灯。 192.168.10.136:8080/publish?iname=siot&ipwd=dfrobot&topic=siot%2Flight_sitch&msg=1&_=1693839667888 接下来,我们将这两个开关灯的网址转换成二维码。在Thonny中切换到本地python环境(不要选择esp32-s3上的解释器),然后单击”工具>管理包",搜索并安装qrcode。 然后在本地电脑上编写下面的生成二维码程序。
将该程序保存并运行,我们发现同一目录下会生成二个图片文件,把这两个二维码图片插入到Word中并做好标志(当然你也可以打印出来)。然后我们用手机扫一扫的功能尝试一下,板载灯会实现开灯和关灯的效果了。 仔爸还有一个想法,就是使用行空板上的Siot服务器,并把二维码动态生成在行空板上的屏幕上,但目前还没有成功,交稿迫在眉睫,只能将就一下了。 |
支持http访问被你这么发现了真是太厉害了,siot1.X版本的wiki里面有关于http访问的内容。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed