ESP32CAM 视频小车
Posted 云逸之
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ESP32CAM 视频小车相关的知识,希望对你有一定的参考价值。
简介
演示视频
开源esp32视频小车支持自动发现
这是最后一个可以轻松使用arduino ide编译的版本源码以打标签可在此下载压缩包https://gitcode.net/qq_26700087/esp32camcar/-/releases/0.0.3
当前的可以通过服务端远程操作的版本
esp32cam 4g远程小车
源码路径https://gitcode.net/qq_26700087/esp32camcar 对应标签0.0.3.1
所需原料
-
esp32Cam开发板带摄像头
默认是ov2640,本文代码只支持ov2640。若更换了摄像头请修改src目录的下cam.cpp的摄像头初始化配置。
-
电机驱动板:
这里的代码测试过
迷你超L298N
和L9110S两路电机驱动板
,其它的两路电机驱动板也可尝试。由于esp32Cam的io被摄像头和sd卡槽大量占用,剩余的io有较多
strapping 引脚
,我们使用到strapping引脚去连接驱动板,而L9110S一旦上电,接收PWM输入的针脚会有反灌电压到MCU,而ESP系列芯片上电时会检测strapping管脚的电平状态来决定芯片的工作模式,所以反灌电压到strapping引脚产生不正确的电平状态导致无法启动。若只有L9110S可以实际使用中先将ESP32cam上电再将L9110S上电。
更推荐前者迷你超L298N。(参考下图,大约售价在1.3 ~2元,不要买成更贵的还装了散热片那种,那种没有测试过当前代码)。
-
供电:两节 18650电池
-
18650电池座两节版本
-
本文使用的小车底盘,含4个TT电机和轮子。但代码是两路的驱动的,鄙人使用两路驱动板驱动四个马达,动力层面是四驱的。
此处可按自己喜好选用两路或者四路。
-
杜邦线若干。
-
USB-TTL烧录器,或者ESP32-CAM专用的TTL烧录底座。
-
天线可选
在esp32s模组上有个天线接口,可以外接天线增加wifi效果,但注意天线接口附近有个0欧电阻,需要将其掉头连接外接天线或者去掉它用一坨锡代替连接外接天线。
-
散热片可选
大量传图芯片本身会较严重发热,而这个降压的电路比较简单,这里输入7.4v也会造成严重发热。
关于供电
L9110S的输入在 2.5 V~ 12 V
ESP32-CAM 的5V引脚不止可以输入5V。
可以看到ESPCAM上的AMS1117-3.3 模块的输入端是直连5V引脚的。
AMS1117-3.3的输入范围 4.75~15V,官方建议ESP32CAM的5V引脚 至少5V 2A否则图片会有水纹。
因而为了简便供电,我们可以与 L298N或L9110S 的输入取一个并集。5 ~ 10V。虽然并联会分流,但这里使用两节18650输出7.4V,实测没有影响,因为不需要输入特别精准的电压。
当然此处还要考虑马达可以承受的电压。普通的TT电机说的是6V上限。不过我实测在两节18650电池输入,在L9110S的输出端接了四个TT马达并无异常。
接线
两种接线大同小异
- 迷你超L298N
- L9110S两路
有些L9110S标记的控制引脚可能与图中不一致,大体上按照两个IO控制一个电机接口的方式即可
注意:在esp32Cam启动之前将L9110S的VCC和GND与电源断开,否则会导致ESP32Cam无法启动。
代码
开发环境
不再累述,参考本人上一篇esp32cam 服务端远程视频方案中关于ardunio ide 准备esp32cam环境 以及 platformio 准备esp32cam 环境相关内容。
新建项目时请选择对应的开发板AI Thinker ESP32-CAM
。platformio注意framework选择ardunio。
该教程将不再更新,请具体参考设备代码和安卓代码的readme ,因为每当新特性更新,教程就会过时。
以下内容已过时
代码路径
云逸之 / Esp32CamCar · GitCode :https://gitcode.net/qq_26700087/esp32camcar
点个star ⭐️,烧录不报错。
使用platformio的同学,注意源码中platformio.ini的已指定端口请按自己实际情况修改。
使用ardunio ide的同学,为了保险起见,可以将src目录下内容拷贝到一个新的目录,把main.cpp改名,main.ino或者其他以ino结尾的名字。
修改main.cpp 其中的wifi的ssid和密码以及上位机的ip.
但如果你使用手机热点,可能热点所在ip与以下的host值一致,而热点的ssid和密码可以设置,你也可以不用修改ssid和密码,重设手机热点wifi也行。查看热点所在的ip参考后文–安卓上位机项目中的readme.
const char* ssid = "test0";
const char* passwd = "12345687";
安卓上位机
该项目的发行版中有apk文件的压缩包可以下载云逸之 / Light Handler · GitCode
需要查看当前手机的ip可以,也可以借助该app。
本人使用手机开启2.4G(开热点时注意必须2.4G)的wifi热点,再使用esp32Cam连接该上位机,进行控制。这样可以方便在户外操作。
但软件对组网方式无限制,你依然可以使用无线路由器,然后esp32Cam和以及手机加入连接该路由器,然后进行控制。
专业教育版-手动遥控云视频监控巡逻小车
一、整机说明
基于平衡车设计三轮底盘,采用加厚加固型结构,加上单片机控制板、超声模块、4G路由器、GPS北斗双模定位模块、前后双视摄像头等模块设计的一款手动遥控云视频监控巡逻小车。
1.1结构尺寸
1.2部件说明
二、性能参数
整机参数 |
整机重量 |
约40kg |
整机尺寸 |
54.6 x 52.8 x 111cm
|
|
最高速度 |
约16km/h |
|
续航 |
约30km |
|
最大爬坡度 |
约15° |
|
工作温度 |
-10℃~ +40℃ |
|
储存温度 |
-20℃~ +45℃ |
|
电池组参数 |
额定电压 |
DC 54.8V |
最高充电电压 |
DC 63V |
|
额定容量 |
236Wh |
|
电机参数 |
额定功率 |
350x2(W) |
最大功率 |
700x2 (W) |
|
充电器参数 |
额定功率 |
120W |
额定输入电压 |
100-240V~50-60Hz |
|
额定输出电压 |
约42V |
|
额定电流 |
约1.5A |
|
充电时间 |
约3.5~5 h |
三、功能介绍
该巡逻车具有视频监控、语音双向对讲或者音频采集、手动遥控、避障报警、巡逻定位等功能。
3.1 视频监控
利用网络相机,通过4G路由器将监控视频实时传输至云端服务器,操控者可通过PC客户端或手机APP连接至服务器,实现视频的实时显示、保存、回放;支持多人、多设备同时在线查看,设备移动报警等功能。
3.2 语音双向对讲或音频采集
巡逻车顶部装有与网络相机配套拾音器,能够采集周围环境声音,或者语音双向对讲,通过4G网络与视频同时传输至云端服务器。
3.3 手动遥控
巡逻车具有手动遥控功能,操控者使用PC端或手机端控制软件连接云端服务器,并根据实时监控视频,对小车进行行动控制。
3.4 避障报警
车体四周装有6路超声避障模块;当障碍物与小车距离小于阈值,小车报警并降低速度,在障碍物方向停止,同时其他方向能运动,远程操作小车可以反方向运动,实现报警解除,手动避障。
3.5 巡逻定位
采用SkyTra公司的GPS+北斗双模定位模块ATK1218-BD ,外接有源天线,30秒内即可定位,定位精度2.5m CEP。
四、应用场景
该巡逻小车主要解决在园区、校园、农场、军营等封闭环境下的移动视频监控,对应户外的雨天、热天等大大减轻巡逻人员的工作强度,另外通过服务器的视觉智能分析,可以扩展更多的场景应用。
五、安装维护与产品运输
巡逻车可分为三部分进行组装,底盘、中框、顶部;底盘用于承载所有板卡器件,应先组装完善;顶部安装双视摄像头、拾音器以及GPS天线,与底盘设备相连接;中框用于连接底盘与顶部,规范上下连线的作用。
为方便运输和降低运输风险,一般拆卸后分开包装;由于带有电池,一般走非航空运输。由于产品运输成本很高,产品原则上不支持无偿返修。
六、软件应用
6.1 4G云视频监控
基于目前的海康相机实现4G的云视频监控,使用现成的海康客户端(萤石云客户端),可选手机端和PC端,实现图像的实时显示、保存、回放;支持多人、多设备同时在线查看,设备移动报警等功能。
PC萤石云客户端实时监控画面与户外行走 (手机萤石云客户端界面类似 )
6.2手机远程遥控
采用手机App,通过4G工业路由器,实现远程遥控小车的前进、后退、转向等;同时进行视频监控。App界面如下所示:
操作方法如下:
左侧按钮——
上箭头:前进;点击一次慢速,多次点击加速
下箭头:后退;点击一次慢速,多次点击加速 左箭头:左转;始终匀速
右箭头:右转;始终匀速
中间按钮:停止
右侧按钮——目前无操作功能
6.3超声避障
单片机中实现6路超声的避障,当障碍物距离小于阈值,小车报警,降低速度,在障碍物方向停止,其他方向能运动,远程操作小车可以反方向运动,实现报警解除,手动避障。
6.4远程管理和控制软件
远程服务器或者手机通过4G或者wifi与巡逻小车互联,实现对小车的远程遥控和状态信息监测,包括人工控制巡逻车的前进、后退、左转、右转、停止;指示灯的控制;获取小车状态及电池信息、障碍物信息等。
该功能通过单片机网络与4G路由器互联,以阿里云为路由服务器,实现远程物联网遥控功能,代替现在的遥控相机软件。
开发的软件要求具有手机app版本和PC机版本。
6.5 GPS位置获取
基于阿里云物联网平台,获取GPS定位,实现巡逻车实时位置监控,并且可以绘制历史移动轨迹,显示行进速度、当地温度湿度等。
6.6蓝牙接口控制 (产品底盘测试使用)
使用底盘厂家蓝牙模块和蓝牙APP软件,实现本地的小车底盘控制,主要用于测试使用。如下图所示app界面:
七、软件代码内容
软件代码内容基于如下的硬件结构,包括分模块接口软件及整机互联软件。
主要内容如下:
硬件接口软件 |
内容 |
工程名称 |
硬件 |
1 |
电机驱动板软件 |
无,协议说明书 |
电机驱动板 |
2 |
单片机驱动电机接口软件 |
PRO_MCU_MODB |
STm32F429 |
3 |
单片机超声控制接口软件 |
PRO_MCU_ ultrasonic |
STm32F429 |
4 |
单片机GPS位置接口软件 |
PRO_MCU_GPS |
STm32F429 |
5 |
单片机陀螺仪接口软件 |
PRO_MCU_GYRO |
STm32F429 |
6 |
单片机网络接口软件 |
PRO_MCU_Net |
STm32F429 |
7 |
|
|
|
协议解析软件 |
内容 |
工程名称 |
硬件 |
1 |
|
|
|
2 |
单片机电机驱动及信息获取软件 |
PRO_MCU_MODB_Protocol |
STm32F429 |
3 |
单片机超声距离获取及避障规则控制软件 |
PRO_MCU_ ultrasonic_Protocol |
STm32F429 |
4 |
单片机GPS位置解析软件 |
PRO_MCU_GPS_Protocol |
STm32F429 |
5 |
单片机陀螺仪方向及加速度解析软件 |
PRO_MCU_GYRO_Protocol |
STm32F429 |
6 |
单片机阿里云网络传输及数据收发软件 |
PRO_MCU_Net_Protocol |
STm32F429 |
7 |
PC机云网络传输及数据收发测试软件 |
PRO_PC_Net_Test |
PC机软件 |
应用软件 |
内容 |
工程名称 |
硬件 |
1 |
单片机整机控制软件 |
PRO_MCU_soft |
STm32F429 |
2 |
小车云控制、状态信息、位置地图 手机云软件 |
PRO_CarControl_App |
手机App
|
3 |
小车云控制、状态信息、位置地图 PC云软件 |
PRO_CarControl_Soft |
PC机软件 |
4 |
海康相机手机云软件 |
PRO_Camera_App |
手机App
|
5 |
海康相机PC云软件 |
PRO_Camera_PC |
PC机软件 |
八 硬件交付
物品名称 |
参数说明 |
数量 |
巡逻小车 |
包含底盘、中框、顶部外壳 |
1套 |
配套充电器 |
DC42V 1.5A |
1个 |
蓝牙板 |
用于小车测试 |
1块 |
九文档
物品名称 |
参数说明 |
数量 |
小车安装使用说明书 |
Pdf文档 |
1份 |
小车单片机整机控制软件说明书 |
Pdf文档 |
1份 |
手机端控制APP软件说明书 |
Pdf文档 |
1份 |
PC端控制软件说明书 |
Pdf文档 |
1份 |
海康云相机使用说明书 |
Pdf文档 |
1份 |
蓝牙驱动软件说明书 |
Pdf文档 |
1份 |
北京太速科技有限公司
在线客服:QQ:448468544
公司网站:www.orihard.com
以上是关于ESP32CAM 视频小车的主要内容,如果未能解决你的问题,请参考以下文章