simplefoc/Arduino-FOC

Arduino FOC for BLDC and Stepper motors - Arduino Based Field Oriented Control Algorithm Library

解决的问题

磁场定向控制(FOC)是驱动无刷直流(BLDC)和步进电机最高效的方法之一,但传统上实现起来非常复杂。该库通过提供一个稳健的跨平台实现,消除了为每种不同的硬件配置从头编写复杂驱动算法的需要,从而简化了这一过程。

工作原理

该库将每个硬件组件——电机、传感器和驱动器——视为 C++ 对象。这种模块化方法允许用户轻松连接不同硬件的组合(例如特定编码器和 BLDC 电机),并实现无缝切换。它支持多种控制模式,包括电压和电流扭矩控制,以及闭环和开环运动控制(速度和位置)。

适用人群

专为使用 Arduino IDE 或 PlatformIO 的爱好者、研究人员和开发者设计,适用于广泛微控制器架构(包括 STM32、ESP32、RP2040 和 Teensy)的高精度电机控制需求。

主要亮点

  • 跨平台支持:支持 Arduino、STM32、ESP32、RP2040 和 SAMD 等多种 MCU 架构。
  • 模块化硬件:支持大量传感器、电机、驱动器和电流检测组合。
  • 高级控制:包含速度和电流前馈、改进的速度计算以及基于模型的电流估计功能。
  • 调优工具:提供名为 SimpleFOCStudio 的配置 GUI 工具,支持实时监控与调优。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目