ESP32CAM物联网教学12

ESP32CAM物联网教学12

MicroPython 视频服务

小智希望能在MicroPython中实现摄像头的视频服务,就像官方示例程序CameraWebServer那样。

  • 下载视频服务驱动库

小智通过上网搜索,发现相关的教学材料还不少,并且知道有人已经写出了视频服务的驱动库文件。也可以从下面的链接下载https://pan.baidu.com/s/1H-Q6bQ3LSru6P8NjL7M0vQ,可以得到如图三个文件,其中的microdot.py就是视频服务的驱动库文件。

  • 测试运行程序

打开Thonny,烧写MicroPython的镜像文件(如果不清楚可以看看第十课,镜像文件在下载文件当中,就是那个micropython************* .bin)。插入ESP32Cam,点击窗口右下角的设备,刷新一下,看到出现提示信息"help()"表示设备启动成功了。

首先打开电脑中的esp32web.py和microdot.py这两个文件,保存到超级用户文件夹中Administrater,右击电脑中的microdot.py,选择"上传",把这个文件上传到MicroPython设备(ESP32Cam开发板)中。

接着打开电脑中的esp32web.py,点击窗口上方的"运行"按钮,在Shell窗口中出现了这个视频服务的IP地址。打开浏览器,输入http://192.168.1.184:5000,(注意了,需要在IP的后面增加一个端口号5000),这样就可以看到摄像头的视频了

  • 自动运行程序

我们在电脑中运行esp32web.py这个程序,能成功实现摄像头的视频服务后,我们能不能把这个程序写入开发板,让开发板通电后能够自动运行呢?当然可以,只要我们把这个esp32web.py程序保存到开发板中,重命名为main.py

这样,我们把开发板拔下后,重新插入电脑通电,这时候我们可以用浏览器查看到摄像头的视频了,说明开发板在通电启动后,已经自动运行了这个视频服务的程序了。

需要注意的是,如果我们想修改程序,点击右下角的设备刷新的时候,会出现如图的摄像头初始化的错误。这个是因为开发板中的摄像头在通电的时候,已经自动运行了,现状是打开的状态中,重新刷新设备时,会试图再次打开摄像头,所以就出现了这样的错误了。

解决的办法是,删除掉开发板(MicroPython设备)中的main.py这个文件,继续使用电脑中的esp32web.py进行修改代码、测试运行。

最后总结一下,保存在电脑中的程序,是可以修改的测试程序;保存在开发板中的,是不能修改的最后的程序。

当然这个程序时基于这个microdot.py视频服务驱动库的,这个驱动库有1200行代码呢,接下就是来盘一盘这个驱动库了。

相关推荐
王二端茶倒水3 小时前
智慧小区宽带无线运营:从网络交付到认证、计费与运维闭环
运维·物联网·架构
布子麟6 小时前
NodeMcu(ESP8266)之更新固件
单片机·物联网·iot
TDengine (老段)7 小时前
TDengine 逻辑计划生成 — 从 AST 到关系代数算子树
大数据·数据库·物联网·wpf·时序数据库·tdengine·涛思数据
HAPPY酷7 小时前
软件模拟 I2C vs 硬件 I2C:核心异同与工程选型指南
stm32·单片机·嵌入式硬件·物联网·microsoft
wuhanzhanhui8 小时前
从充换电到氢能赛道,2026武汉新能源产业展会如何重塑产业格局?
人工智能·物联网
星纵物联10 小时前
成功案例|数智赋能书香空间,星纵物联助力岭南大学图书馆数字化升级
科技·物联网·数字校园
老梁agent10 小时前
一个工程师的 LLM 理论入门:Transformer、Attention 和 Tokenization(不带公式)
物联网·llm
wuhanzhanhui10 小时前
智能座舱技术新高地!2026武汉国际智能显示及智能座舱展览会
人工智能·物联网
MetrixAeroCore10 小时前
欧盟克罗地亚市场物联网通信适配方案|MetrixAeroCore出海实测
物联网
布子麟10 小时前
NodeMCU (ESP8266) + MQTT 上阿里云IOT (二)
物联网·阿里云·云计算