大家好,我是小麦。
今天给大家推荐一个开源的无刷电机驱动项目。
项目地址:https://github.com/vedderb
项目主页
ESC
是Electric Speed Controller
的缩写,也就是电子调速控制器,简称电调;作者是Benjamin Vedder,所以叫VESC,大家可能听说过,就是本杰明电调。
这个项目主要分为几个部分,VESC固件,物料清单,VESC硬件,VESC工具软件,是一个非常完整的软硬件项目,并且配套的软件也出色。
项目还很活跃,就在我写文章的前5小时,作者还合并了一个推送请求。
PCB_Front
项目整体特征:
- 硬件和软件是开源的,CPU 资源充足,二次开发很灵活;
- 基于 STM32F4 微控制器;
- DRV8302 MOSFET 驱动器/降压转换器/分流放大器;
- IRFS7530 MOEFET(其他 FET 也适用);
- DRV8302 上集成的降压器为外部电路提供
5V
1A
的电源输出。 - 电压:8V ~ 60V;
- 电流:240A峰值电流或持续约50A,具体取决于PCB周围的温度和空气流通情况;
- 从固件
FW 2.3
起,实现了所有电机参数的自动检测的有传感器和无传感器 FOC; - 基于ChibiOS/RT的固件;
- PCB尺寸:40mm x 60mm;
- 所有相位的电流和电压测量;
- 支持直流电机;
- 支持有传感器或无传感器;
- 具有大量配置参数的 GUI
- 自适应 PWM 频率以获得尽可能好的 ADC 测量值;
- 基于 RPM 的相位提前(或定时/磁场减弱);
- 在无传感器模式下(显然在有传感器模式下也是如此)具有良好的启动扭矩;
- 占空比控制、速度控制或电流控制。
- 丰富的电机控制接口:PPM 信号(RC 伺服)、模拟、UART、I2C、USB 或 CAN 总线;
- 可选PPM信号输出。例如,在从树莓派或安卓设备控制遥控车时很有用。
- 可调节保护
- 当达到电流限制时,在电机继续运行的同时使用软退避策略。如果电流变得太高,电机将完全关闭;
- RPM 限制也有一个软退避策略;
- 即使电机速度快速变化,换向也能完美运行。这是因为磁通量在过零之后被积分,而不是基于之前的速度添加延迟。
- 当控制器关闭时电机旋转时,会跟踪换向和方向。还计算了获得相同速度的占空比。这是为了在电机已经旋转时获得平稳启动。
VESC固件
项目地址:https://github.com/vedderb/bldc
这是一个开源的电机控制器源码,适用于直流电机,直流无刷电机调速,支持方波驱动和FOC驱动,比较关键的是支持无感FOC。
固件首页
VESC硬件
项目地址:https://github.com/vedderb/bldc-hardware
这个项目是基于STM32F4 芯片,下面是一个直流无刷电机控制器的硬件原理图,感兴趣的话,可以基于这个项目做一下自己的硬件。
原理图
PCB
3D渲染图
工具软件
项目地址:https://github.com/vedderb/bldc-tool
这是一个基于Qt的直流电机控制器用户界面,用于配置硬件参数,控制和调试控制器,具体如下图所示;
软件
这真的是一个很棒的项目,如果你对电机控制很感兴趣,Enjoy!
详细参考:http://vedder.se/2015/01/vesc-open-source-esc/