去年闲暇之余,研究了一下simplefoc,simplefoc代码简洁易懂,对于学习电机的FOC控制,理解控制原理是非常好的素材。但是simplefoc也有它的弊端,首先驱动超过200W的电机就力不从心了,具体原因没有深究,我试了几次没有成功加之当时赶项目没有那么多时间也就放弃了,我想这个应该是可以解决的,不过需要自己二次改进;
再有就是simplefoc明显没有进行必要的过压、过流、欠压、缺相等的保护,这样是不能产品化的,不过肯定可以进行二次开发把这些功能补充完整的,但是的但是我们学习这些方案大部分都是水平都处于入门阶段或者即将步入电机控制领域的硬件工程师朋友,如果有那么高的电机控制水平还学什么simplefoc?
所以有没有一款开源硬件直接就是产品级别的?我们不但可以学习FOC的控制原理,还能学习它的各种保护原理,先试着仿,在仿的过程中学习,吃透其中的算法和控制策略再去创新。
所以我发现了odrive,如获至宝,看一下官方的图片,是不是很帅,而且还是驱动双路电机。(这里是一个流哈喇子的表情V)
百度了一下它的特点,如下:
ODrive是一个开源的高性能电机控制平台,专为无刷直流电机和步进电机设计。它支持多种控制模式,包括位置控制、速度控制和扭矩控制,能够满足各种应用场景的需求(各种应用场景,是不是很牛X!?)。
ODrive的主要功能包括:
高性能电机驱动:ODrive能够为无刷电机提供精确、高效的控制,适用于机器人技术、无人机、电动汽车等领域。
多种控制模式:支持位置控制、速度控制和扭矩控制,满足不同应用场景的需求。
开源特性:作为一个开源平台,ODrive的源代码公开,方便用户进行定制和优化。
ODrive的技术特点和优势包括:
高效率:相较于传统的有刷电机,无刷电机具有更高的效率和更长的使用寿命。
低维护需求:无刷电机减少了维护需求,降低了使用成本。
开源社区支持:拥有活跃的开源社区,用户可以获得技术支持和分享经验。
ODrive配置接口灵活,即使没有读懂代码也可以通过开放的接口配置驱动不同功率、不同接口的电机。
这么好的资源不拿来用,都对不起这个项目的发起者,都对不起我们所处的这个时代,用的多了自然就会带动系统的进步。
接下来我准备自己做一款板子,适当的将器件国产化,同时看能不能将原来的代码量缩小一些,减轻处理器负担(网上有人测试在电机高速运行下,串口通讯会出现问题;还有就是原版中DRV8301的SPI和外部SPI编码器的接口共用也可能会产生问题)
如果有志同道合的小伙伴一起研究可以加企鹅群:920257676(备注:优快云)进行探讨。