SimpleFOC学习笔记汇总(2026.04.08更新)
在机器人领域,掌握无刷电机的控制相当于掌握机器人设计的“半壁江山”。这个年代,对个人来说学习一种新技术最好是通过开源项目了。通过开源项目快速将项目搭建起来,接着结合实践与理论才能真正掌握技术。
入门FOC,我认为最合适是simpleFOC,原因如下:
- 简单易用:SimpleFOC因其用户友好的界面和文档而受到欢迎。它的设计使得即便是新手也能够快速上手,进行无刷电机的控制和调试。相比之下,其他FOC项目如ODrive或VESC可能需要更多的基础知识和调试时间。
- 多硬件支持:SimpleFOC支持多种硬件平台,如Arduino、ESP32等,这意味着用户可以根据手头的硬件资源选择适合的开发环境。这样的灵活性让它在不同的应用场景中都能找到用武之地。
- 丰富的社区和文档:SimpleFOC有大量的教程和社区支持,提供了从入门到高级的学习资源,包括中文文档,使得学习曲线相对平缓。这一点相较于其他项目,SimpleFOC在社区支持上显得更为突出。
- 成本效益高:SimpleFOC项目提供了低成本的解决方案,适合教育和小型项目应用。它的开源特性让用户可以自由修改和优化代码,降低了开发成本。
- 模块化和扩展性:SimpleFOC的代码架构设计很模块化,允许用户根据需求进行扩展和修改,这在定制化应用中非常有价值。
未来的一段很长的时间里,将分享simpleFOC学习的笔记。通过分享笔记的方式,进一步提高自己对FOC的理解。大家互相学习,共同进步吧。
FOC理论知识:
三相无刷电机控制|FOC理论01 - 坐标变换的简单梳理
三相无刷电机控制|FOC理论02 - 克拉克变换
三相无刷电机控制|FOC理论03 - 帕克变换
三相无刷电机控制|FOC理论04 - 克拉克变换 + 帕克变换的最终目标
SimpleFOC源码学习
SimpleFOC源码学习00(v2.3.2) - 源码版本说明
SimpleFOC源码学习01(v2.3.2) - PID控制器PID.cpp与PID.h
SimpleFOC源码学习02(v2.3.2) - 低通滤波器lowpass_filter.cpp与lowpass_filter.h
SimpleFOC源码学习03(v2.3.2) - 时间工具模块time_utils.cpp与time_utils.h
SimpleFOC源码学习04(v2.3.2) - 数学基础层foc_utils.cpp与foc_utils.h
SimpleFOC源码学习05(v2.3.2) - 传感器抽象基类Sensor.cpp与Sendsor.h
SimpleFOC源码学习07 - Sensor类源码对比(V2.4.0 vs V2.3.2)
电机拆解
无刷电机控制 - 拆解三相无刷电机5550 + 霍尔传感器检测转子位置
Simulink FOC仿真
STM32F103 + CubeMX + SimpleFOC(v2.3.4):
STM32F103属于Cortex-M3架构,缺乏硬件浮点单元,外设资源受限,但在FOC项目也有其重要的意义。
STM32F103-FOC控制板:图锐科技
三相无刷电机2208: 灯哥开源
SimpleFOC STM32教程01|基于STM32F103+HAL库,移植核心的common代码
SimpleFOC STM32教程02|基于STM32F103+HAL库,通过AS5600编码器读取电机的角度
SimpleFOC STM32教程03|基于STM32F103+HAL库,通过AS5600编码器计算电机的转速
SimpleFOC STM32教程04|基于STM32F103+HAL库,完成三相半桥电路的驱动程序
SimpleFOC STM32教程05|基于STM32F103+HAL库,实现速度开环控制
SimpleFOC STM32教程06|基于STM32F103+HAL库,编码器(位置传感器)的校准
SimpleFOC STM32教程07|基于STM32F103+HAL库,位置闭环控制(位置、速度闭环、没有电流环)
SimpleFOC STM32教程08|基于STM32F103+HAL库,速度闭环控制(没电流环)
SimpleFOC STM32教程09|基于STM32F103+HAL库,ADC采样相电流
SimpleFOC STM32教程10|基于STM32F103+HAL库,速度闭环控制(有电流环)
SimpleFOC STM32教程11|基于STM32F103+HAL库,位置闭环控制(速度、电流闭环)
SimpleFOC STM32教程12|基于STM32F103+HAL库,实战项目 - 棘轮手感的实现
SimpleFOC STM32教程13|基于STM32F103+HAL库,实战项目 - 挡块手感的实现
STM32F405 + CubeMX + SimpleFOC:

STM32F405的FOC控制板:图锐科技
三相无刷电机:立嘉科技
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC01 ,移植simpleFOC
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC02 ,完成三相半桥驱动程序BLDCDriver6PWM
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC03,开环速度控制
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC04,完成霍尔传感器的驱动代码
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC05,完成霍尔传感器的校准
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC06,速度闭环控制(没电流环)
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC07,ADC采样相电流,频率20KHz(TIM1触发Injected Sampling+中断)
无刷电机控制 - STM32F405+CubeMX+HAL库+SimpleFOC08,速度闭环控制(有电流环)
ESP32S3 + ESPIDF + SimpleFOC:
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)