Appearance
ESC模块概述
本文主要针对直流电机的电子调速系统(ESC: Electronic Speed Controller)。
直流电机通常只要给电就可以转起来,不需要编写复杂的算法去控制,也无需获取电机运转过程中的各种参数,所以只要简单的加以电源开关控制即可。 但为了更好的进行速度控制,就需要从电压或者电流大小方面进行控制。
目标
本文将设计实现以下电路:
- 圆梦二号:一辆智能小车的基础版本(超声波+红外循迹)+蓝牙遥控+车载图传基础版;
- 有关电控的一些基本概念。
了解电机

如上图所示,通常情况下,自己能够控制的就是外加电压和电流。需要注意的问题是:
- 最大电压/电流工作状态下,可持续时间是多少;有的电机虽然可以在最大值下工作,但只能持续一两分钟,长时间运行可能会烧毁电机。
- 不满足最低电压的场景,需要自己解决,即电机无法启动的情况。
- 电压/电流范围满足,但小车路面阻力不知道,或者遇到上坡,可能导致堵转。要考虑电路是否针对堵转做了防范设计。
- 电机高速运转后的散热,如何处理?
- 最好了解更多电机参数:
- 扭矩值
- 是否支持正反转
- 是否自带散热
- 是否支持调速
- 堵转电流,空载电流
- 重量,轴径,轴长
- 噪音值大小
所以,要让电机转起来,需要考虑的因素并不少。(其他类型的电机在后文介绍)
电机驱动芯片
| 芯片 | 电机类型 | 驱动数量 | 输入电压 | 最大电流 | 接口 | 导通电阻 |
|---|---|---|---|---|---|---|
| RZ7899-MS | 直流电机 | 1个 | 3~30V | 6A | ||
| AT8236 | 直流电机 | 1个 | 5.5~36V | 6A | PWM | |
| L298N | TT马达 | 2个直流电机,1个步进电机 | 4.5~46V | 3A | PWM | |
| GC8838 | 直流电机 | 2~7V | 1.5A | PWM | 350mΩ | |
| DRV8870DDAR | 直流或异步电机 | 6.5~45V | 3.6A | PWM | 565mΩ | |
| DRV8313PWPR | 无刷直流BLDC | 2.5A | ||||
| BDR6126D | 有刷直流电机 | 2.8~15V | 15A | 85mΩ | ||
| FM116C | 有刷直流电机 | 专为驱动小电流马达而设计 | 2.5~5V | 800mA | PWM | |
| TC118S | 有刷直流电机 | 2.4~7.2V | 2.5A | 1.6Ω | ||
| TB6612FNG(O,C,8,EL) | 有刷直流电机 | 2个 | 2.7~5.5V | 3.2A | PWM | 500mΩ |
| TMC2225-SA-T | 步进电机 | 步长细分 8/256/16/4/32 | 4.75~36V | 2A | STEP/DIR;UART | |
| TMC2209-LA-T | 步进电机 | 步长细分 8/64/256/16/32 | 4.75~29V | 2A | STEP/DIR;UART | 340mΩ |
| A4988SETTR-T | 步进电机 | 步长细分 8/2/1/16/4/FULL | 3.3~5V | 320mΩ | ||
| BTN7970S | 有刷直流电机 | 90A | PWM |
栅极驱动芯片
| 芯片 | 配置 | 负载类型 | 工作电压 | 上升时间 | 下降时间 | 死区时间 |
|---|---|---|---|---|---|---|
| FD6288T | 半桥 | MOSFET;IGBT | 4.8~20V | 12ns | 12ns | 200ns |
| FD6288Q | 三相 | MOSFET;IGBT | 5~20V | 12ns | 12ns | 200ns |
| EG3033 | 三相 | MOSFET | 6~36V | 60ns | ||
| EG2133 | 三相半桥 | MOSFET;IGBT | 4.5~20V | 20ns | ||
| DRV8303DCAR | 无刷直流BLDC电机驱动芯片;H 桥电机驱动器 | 60V | ||||
| DRV8701ERGER | 有刷直流电机驱动芯片;H 桥智能栅极驱动器 | 45V |
PWM 控制型
传统方式下,通过可调电阻去控制电压或电流,会有诸多问题:
- 可调电阻的精度难以保证;
- 电阻和开关是一体的,容易产生机械问题;
- 高功率工作时,电阻的发热量很大,但散热器件很少有装在开关上的,增加了散热难度;
所以,最好的解决方法就是通过程序控制:PWM。即通过软件,动态调整电压大小。
案例实战:圆梦二号
笔者是跟着“未来电子工作室”开始学习电子电路的,他们在教学过程中完整展现了一辆智能小车“逐梦壹号”的开发全过程,此处致以崇高敬意。为了表示感谢,便在其基础上加以延伸,开发了本案例的“圆梦二号”智能小车。
基础功能列表
- 小车底盘是某宝上购买的成品;
- 四个电驱驱动,PWM 控制调速;
- 2S的18650锂电池供电,包括基本的 BMS 功能:各种电池保护、Type C充电;
- LED 前后左右转向灯,刹车灯,倒车灯灯带;
- 超声波、红外两种循迹方式;
- 车载摄像头,实现基本的图传功能;
- 车载喇叭,MP3 音乐播放;
- 一个蓝牙遥控器,带屏幕,可以 FPV 查看小车前进画面;
- 遥控器基本的菜单设置界面;
- 一键返航;
- 低电量返航或者其他设定;
- 提供 STC 和 STM32 两个版本;
因为本案例是为了学习练手,部分功能有些堆砌冗余,敬请忽略。
版本规划 V2
- 雷达避障;
- 地图线路设定;
- 网页端服务器功能:基本的设备管理,在地图上设定小车路径;
- 小车与服务器的通讯互动;
- 小车任务系统举例:去到某处,拍照,然后返回,全过程自动执行;
- 摄像头图像目标识别;
- FPV 画面的视频录制;
版本规划 V3
- 增加机械模块:土壤湿度探测;
- 与无人船项目对接:实现小车装载无人船到河边,船下水采样,然后小车把船带回来;
版本规划 V4
- “蟋蟀一号”智能小车 :一辆带有悬挂系统的小车,向真正的新能源车靠拢;
- 4K/8K图传+云台:将实现与大疆无人机一样的高清、超级稳定的画面效果;
- 路面海拔轨迹图;
- 路况 AI 识别系统;
- 电路重新设计,达到商用级别;
- 本版本不再开源;
参考资料
这里会陆续给出一些市面上的小车解决方案,扩展大家的思路。
