查看原文
其他

项目分享| ESP32小车软硬件实战

妮mo 达尔闻说 2022-04-25

不想错过我的推送,记得右上角-查看公众号-设为星标,摘下星星送给我


新手实现一个简易但功能强大的智能车有多难?其实很简单。

本文分享的这款ESP32小车,即使没有充足的编程或电子经验的人也可以游刃有余。这款智能车开源高质量的API接口,面向对象的编程设计,即使是新手也能自己做出来。快速看下它的功能有哪些:

使用带有Wi-Fi和蓝牙功能的ESP32微控制器;

四电机差动驱动(成对控制);

通过GY-50陀螺仪来行驶/转向;

两个定向里程表/编码器读取行进的距离、速度及方向;

TTL电平转换器兼容5V元件和传感器;

使用Smartcar库并在0秒内启动运行;


小车所需硬件:ESP32 开发板、电机驱动板Dual TB6612FNG、4个可编程有刷电机、2块TTL电平转换器(5V—3.3V) 、GY-50 陀螺仪模块、可调降压变压器、VL45L0x激光测距仪。

小车上用到的各类模块购买容易,整车成本约400元。车外壳底盘是采用PCB板,都已开源,在“达尔闻说”微信回复:ESP32小车,就可以获取。
选择ESP32的原因:ESP32小车其实已经是第二代,第一代是以Arduino为核心。为了让小车具有更高的灵活操纵性,采用ESP32作为其智能车的新“大脑”,通过Wi-Fi和蓝牙的控制为小车增添了更多的鲁棒性和灵活性。
与ESP8266不同,功能强大且可Wi-Fi连接的ESP32具有蓝牙功能和更多的GPIO引脚。虽然ESP32和ArduinoAVR微控制器在工作方式上存在根本差异,导致不能完全应用Arduino API接口。但由于这些差异影响不大,而且Smartcar库与平台无关,因此几乎不需要更改软件即可用库对ESP32进行编译。
但是ESP32还是存在一个问题,只能工作在3.3V下,这意味着许多采用5V电平的廉价传感器可能无法正常工作,甚至会损坏主控。为了能够使用这些5V的元件,必须使用逻辑电平转换器。 TTL电平不兼容还意味着,智能车上最常使用的L293D电机控制器不再适用于此项目,因此选用TB6612FNG电机驱动器模块替换它。
关于电机市场上的选择有很多。但是一旦引入了对里程表和可编程的需求后,可供选择的电机数量就减少许多了。引入可编程电机减少了机械结构的复杂性以及需要购买元件的种类。如下图所示,这些电机配有一些易于安装的支架以及方向编码器,意味着我不仅能够知道每个车轮移动了多少,而且向哪个方向移动了。
发动机板上的电机图
“特殊”的安装方式:小车底部称为“发动机板”,包括用于连接来自电机的电线、电机驱动板以及要安装的四个电机,选择堆叠式设计安装。

发动机板底部图(红色为 TB6612FNG 电机驱动器))

小车上面的称为“模块板”,用于安装电池、微控制器、TTL电平转换器、陀螺仪和各种母排针等。这种设计选择将最大程度地减小了每个PCB的尺寸,因为模块板不如底部大。 此外,与将所有元件都局限在单个大型PCB上的方案相比,此方案不会在智能车顶部上有大量元器件裸露。

模块板顶部图 

模块板底部图

编译平台:Smartcar shield Arduino 库是一个高级API,能够通过寥寥数行的代码轻松执行想要的动作。该库隐藏了具体执行的细节和对底层硬件操作,将各种组件(即电机和各种传感器)作为对象来处理,即使初学者都可以轻松控制智能车实现各种功能。那对于想刨根问底的同学,该库的API文档详细解释了API的各种操作,可以在开源文件:/examples中找到有关如何使用该库的示例。
那么这个库到底能干嘛呢?这个全方位多功能的库可以适用于多种不同类型的电机来进行转向或者减速刹车。它可以通过使两侧的车轮以不同的速度旋转来转向车辆,也可以使用伺服电动机来转向,或者是使用有刷直流电机进行转向。此外,除了使用默认有刷直流电动机外,我们还可以调库对电子调速器(ESC)来进行车的驱动减速。

如此全面开源的实战经验分享可是不可多得宝藏,即使不上手看看经验思路也是对于我们成长的一种帮助,快快收藏起来吧!获取开源资料:在“达尔闻说”微信回复:ESP32小车

END

达尔闻项目分享系列——聚焦物联网、嵌入式、AI、FPGA等热门应用技术,开源分享原理图、代码等项目方案,做你手边的知识库。

项目分享系列集锦:

STM32物联网智能家居项目

树莓派+计算棒2完成实时人脸识别项目

嵌入式开发板的云计算平台搭建

STM32实现最简单空中鼠标

Arduino魔方机器人

STM32版“AI灵魂画手”

STM32电子相册制作

STM32+DDS自制信号发生器

利用树莓派与Web界面远程控制家电

STM32“云”音乐播放器

树莓派远程监控

基于STM32实现辉光管时钟设计

自制FPGA最小系统板(PCB可直接打板)

树莓派4搭建NAS,让硬盘轻松联网


我们是妮mo,达尔闻创始人,只讲技术不撩汉的小姐姐。达尔闻在线教育平台旨在服务电子行业专业人士,提供技能培训视频,覆盖各细分领域热门话题,比如嵌入式,FPGA,人工智能等。并针对不同人群量身定制分层级学习内容,例如常用知识点,拆解评测,电赛/智能车/考研等,欢迎关注。

官网:www.darwinlearns.com

B站:达尔闻

QQ群:群1:786258064(已满)

          群2:1057755357

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存