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行代码呢,接下就是来盘一盘这个驱动库了。

相关推荐
YueiL7 小时前
基于RK3588的智慧农场系统开发|RS485总线|华为云IOT|node-red|MQTT
c++·物联网·华为云·rk3588·rs485
AI+程序员在路上17 小时前
REST架构风格介绍
物联网·架构·restful·web
厦门辰迈智慧科技有限公司1 天前
城市综合管廊监测与维护一体化解决方案
物联网·自动化·监测
IP管家1 天前
物联网设备远程管理:基于代理IP的安全固件更新通道方案
服务器·网络·物联网·网络协议·tcp/ip·安全·ip
搬码临时工1 天前
远程连接电脑的方法?异地远程桌面连接和三方软件实现
运维·服务器·网络·物联网·电脑·远程工作
mftang2 天前
Zephyr OS Nordic芯片的Flash 操作
单片机·嵌入式硬件·物联网
JANYI20182 天前
物联网中的WiFi模式解析:AP、STA与混合模式
物联网·智能路由器
程序猫A建仔2 天前
【物联网】基于树莓派的物联网开发【4】——WIFI+SSH远程登录树莓派
运维·物联网·ssh
程序猫A建仔2 天前
【物联网】基于树莓派的物联网开发【3】——最新镜像下载和烧录
物联网
欢乐熊嵌入式编程3 天前
智能手表集成测试报告(Integration Test Report)
嵌入式硬件·物联网·目标跟踪·集成测试·智能手表