在机器人领域,掌握无刷电机的控制相当于掌握机器人设计的"半壁江山"。这个年代,对个人来说学习一种新技术最好是通过开源项目了。通过开源项目快速将项目搭建起来,接着结合实践与理论才能真正掌握技术。
入门FOC,我认为最合适是simpleFOC,原因如下:
- 简单易用:SimpleFOC因其用户友好的界面和文档而受到欢迎。它的设计使得即便是新手也能够快速上手,进行无刷电机的控制和调试。相比之下,其他FOC项目如ODrive或VESC可能需要更多的基础知识和调试时间。
- 多硬件支持:SimpleFOC支持多种硬件平台,如Arduino、ESP32等,这意味着用户可以根据手头的硬件资源选择适合的开发环境。这样的灵活性让它在不同的应用场景中都能找到用武之地。
- 丰富的社区和文档:SimpleFOC有大量的教程和社区支持,提供了从入门到高级的学习资源,包括中文文档,使得学习曲线相对平缓。这一点相较于其他项目,SimpleFOC在社区支持上显得更为突出。
- 成本效益高:SimpleFOC项目提供了低成本的解决方案,适合教育和小型项目应用。它的开源特性让用户可以自由修改和优化代码,降低了开发成本。
- 模块化和扩展性:SimpleFOC的代码架构设计很模块化,允许用户根据需求进行扩展和修改,这在定制化应用中非常有价值。
未来的一段很长的时间里,将分享simpleFOC学习的笔记。通过分享笔记的方式,进一步提高自己对FOC的理解。大家互相学习,共同进步吧。
FOC理论知识:
三相无刷电机控制|FOC理论01 - 坐标变换的简单梳理
三相无刷电机控制|FOC理论02 - 克拉克变换
三相无刷电机控制|FOC理论03 - 帕克变换
三相无刷电机控制|FOC理论04 - 克拉克变换 + 帕克变换的最终目标
STM32f103 + CubeMX + SimpleFOC:
SimpleFOC01|基于STM32F103+CubeMX,移植核心的common代码
SimpleFOC02|基于STM32F103+CubeMX,通过AS5600编码器读取电机的角度
SimpleFOC03|基于STM32F103+CubeMX,通过AS5600编码器计算电机的转速
SimpleFOC04|基于STM32F103+CubeMX,完成三相半桥电路的驱动程序
SimpleFOC05|基于STM32F103+CubeMX,实现速度开环控制
SimpleFOC06|基于STM32F103+CubeMX,编码器(位置传感器)的校准
SimpleFOC07|基于STM32F103+CubeMX,位置闭环控制(位置、速度闭环)