摘要:本文介绍平衡车的基本原理和组成
平衡车作为一种新型代步工具着实火了一阵子。从本期开始,将利用几期来复刻一个2轮平衡车,初期的平衡车只实现了原地保持直立姿态,这是一个平衡车成功与否的关键环节。实现能够保持直立后,再逐步加入行走、转弯、避障等功能,通过若干期来完善平衡车的功能和进行性能、结构等方面的优化。
简单的说,平衡车的运行原理主要是建立在一种被称为“动态稳定”(Dynamic Stabilization)的基本原理上。利用车体内部的陀螺仪和加速度传感器,来检测车体姿态的变化,并利用控制系统,精确地驱动电机进行相应的调整,以保持系统的平衡。
与代步的平衡车不同,这里要实现的平衡车要简单一些,由车身、车轮、电池组、稳压器、电机、电机驱动模块、控制器、姿态传感器等部件组成。
- 车身
平衡车的车身一般由铝合金、PP塑料、木片等材料等制成。是整个平衡车的车体框架,因此要求其刚性要强,能保证在各种运动的作用下情况下不变形。能够保证姿态传感器、车身以及车轮之间的位置相对固定,不能发生相对的位移。
我的小车采用的双层板结构,底层连接车轮、固定电池组、稳压模块和电机驱动模块,上层安装ESP32处理器和姿态传感器模块。
考虑到加工的便利性,我所使用的是椴木板来制作小车底板,这种板子在网上很容易买到,各种尺寸、各种厚度的都有,你甚至可以要求厂家帮你切割成合适的尺寸并打好孔。考虑到车身强度和车子的中心问题,下层使用的是5mm的椴木板,上层为3mm的椴木板,大小为15cmX6cm,两者之间使用M3铜柱相连接。大概样子如下图所示:
2. 车轮
平衡车一般采用双轮结构,车轮一般由橡胶、聚氨酯等材料制成,具有一定的抗震性和摩擦力。轮胎的摩擦力一定要好一些,保证电机的输出可以有效的转化为小车的移动。另外就是调试的时候,也要找粗糙且平整的地面,在瑜伽垫上调试的效果要比水磨石地面好很多。尤其是在调整参数的初期阶段,这一点大家一定要注意。
3. 电池组
平衡车的电池组是其动力来源。我这里采用的是2节18650锂电池供电,采用了带开关的电池盒。如下所示:
为了保护电池不会过放电而损坏,我还给这两个电池安装了18650锂电池模块过充、过放、短路护板,其样子和接法如下图所示:
这个保护板图片看上去很大,实际的样子很小,安装好后,我将他装在了开关与电池顶端挡板之间的位置,长度刚好可以放进去,在外边看不到里面安装了保护板,很容易的解决了保护板的固定问题。需要注意的是装进去后,保护板的焊接点不要和开关后边的触点互相接触,如果不放心,可以粘贴一些绝缘胶布来避免短路。
4. 稳压模块
供电系统的稳定是整个系统稳定运行的基础,所以一定要配备一个功率足够的稳压模块来保证用电设备可以得到稳定的电压。在这里我采用的是双路供电,其中一路供电给电机,提供机械能输出,另一路供电给ESP32单片机,保证其稳定运行。之所以采用2路供电,因为电机属于功率器件,其功率较大,尤其是启动时候,会对电源输出电压的稳定性造成一定的影响。因此为了避免由于电机的启停造成电压的波动而影响到ESP32单片机的运行,单片机采用单独的一路来供电。
有人会说,ESP32单片机用稳压模块就行了,电机可以直接接到电池的输出端。这样的缺点就是没法保证电机供电的稳定性。在前面的文章中已经说过,供电电压和PWM的占空比影响着电机的输出功率,如果电机不采用稳压模块,那么它的供电电压就会随着电池输出的波动而波动,这样即使在相同占空比的PWM驱动下,其输出功率也是完全不同的,这样你的小车就很难稳定住。所以,在平衡小车系统中,一定要采用双供电措施,这样更能保证平衡小车的稳定运行。
在选择稳压模块的时候,主要考虑输出电压和电流,一定要满足电机和其他用电设备的需求。在这里我选用的模块分别是:LM2596S DC-DC直流可调降压电源模块和AMS1117-3.3V降压电源模块。其中LM2596S给电动机供电,输出电压调整到6V,AMS1117的输出电压为3.3V,给ESP32处理器和姿态传感器供电。这两个模块如下图所示:
5. 电机
平衡车的电机是控制车轮转动的关键部件。我所采用的是370直流减速电机,供电电压为6V,输出转速在280转/分钟。平衡小车对转速的要求不是很严格,一般在150转/分钟到300转/分钟之间就都可以。样子如下图所示:
网上有很多商家都将电机、支架、联轴器和轮胎组合到一起销售,直接买一套会方便很多。另外,有些电机还带有霍尔编码器,这个是用来检测电机转速,将来做闭环转速控制时使用的。在初期平衡车实现基本的直立、行走和转弯功能是不需要用到霍尔编码器的,后边做更深入的学习和实验时,才会用到。可以根据情况选择是否带霍尔编码器。
6. 电机驱动模块
电机驱动模块采用了之前介绍的TB6612FNG电机驱动模块,不了解的可以参考之前的文章。其样子如下所示:
7. 控制器
平衡车的控制器是控制电机和姿态传感器的核心部件。在这里采用的是前面介绍最多的ESP32模块。考虑到空间的问题,这次采用的是ESP32的MINI板,不是以前的开发板,其功能与之前介绍的开发板完全一样,只是模块的面积要小很多,如下图所示:
8. 姿态传感器
平衡车的姿态传感器是感知车身角度的关键部件。一般采用倾角传感器或陀螺仪等技术。我这次采用的也是之前介绍过的MPU6050传感器,样子如下图所示,不熟悉的可以参考之前的文章。
好了,整个平衡车的组成就介绍到这里了,下面将介绍如何将车组装起来并连接电路。下面先来看一下完成后小车运行的样子。
平衡车