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的摄像头初始化配置。

  • 电机驱动板:

    这里的代码测试过迷你超L298NL9110S两路电机驱动板,其它的两路电机驱动板也可尝试。

    由于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

电机参数

额定功率

350x2W

最大功率

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 视频小车的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio + Esp32Cam 实现手机APP实时传输监控视频

ESP32CAM-Micropython-web视频

esp32cam接错烧了

esp32 cam如何设置静态的IP

ESP32-CAM带OV2640摄像头视频显示

ESP32-CAM 使用 socketIO 将视频输出流式传输到 nodejs 服务器的最快方法