Link

Arduino Simple Field Oriented Control (FOC) project

License: MIT arduino-library-badge PlatformIO Registry status

GitHub release (latest by date) GitHub Release Date GitHub commits since tagged version GitHub commit activity (branch)

时代的进步通常令人激动。现今,无刷电机已经进入各种爱好者DIY社区,并且出现了很多高质量且拥有优异性能的无刷电机驱动方案。

相比于直流电机,无刷电机的优点可谓数不胜数,但同时它也拥有巨大的不足,那就是控制过于复杂。尽管身处工具链和PCB制造设计技术发达,设计自己的PCB变得很容易的年代,但一个低成本的无刷电机驱动方案却尚未出现。其中一个原因就是自行编写无刷电机的驱动方案太过复杂,尽管我们可以在网上找到很多成熟的FOC代码方案,但他们大部分都针对特定的硬件配置、特定的单片机;同时,现在很多的FOC算法和硬件开发尝试都是围绕着高功率无刷电机应用,低成本低功率的FOC硬件十分难找,甚至根本就找不到。

灯哥开源 是SimpleFOC官方中文资料的维护者。作为中文官方,我不仅及时更新SimpleFOC的中文翻译和技术资料,还基于SimpleFOC库开发了全开源的基于ESP32的双路无刷电机控制器硬件DengFOC。作为SimpleFOC技术的提倡者,欢迎大家使用SimpleFOC开源技术,若对中文资料有翻译问题或者疑惑,也欢迎大家联系我(待定)。

如果在国内的朋友访问速度慢,可以访问中国国内中文文档镜像站: http://simplefoc.cn/
基于以上痛点,本项目尝试:

  • 🎯 揭开 FOC 算法的神秘面纱,制作一个强大而简单的 Arduino 库: Arduino SimpleFOClibrary
    • 支持尽可能多的电机 + 传感器 + 驱动器 + MCU 组合
  • 🎯 开发模块化和易于使用的FOC,支持BLDC的驱动板

新发布 📢: SimpleFOClibrary v2.3.5 查看发布

Arduino SimpleFOClibrary - 了解更多 …

License: MIT GitHub release (latest by date) GitHub Release Date

这个视频演示了 Simple FOC 库的基本用法、电器连接并展示了它的性能。

特性

  • 简易安装:
    • Arduino IDE: Arduino 库管理器集成
    • PlatformIO
  • 开源: 在github上可以获得完整的代码和文档
  • 目标:
  • 易于设置和配置:
  • 跨平台:
    • 从一个微控制器系列到另一个系列的无缝代码传输
    • 支持多种MCU 架构:
      • Arduino: UNO, MEGA, DUE, Leonardo, Nano, UNO R4, MKR ….
      • STM32
      • ESP32
      • Teensy
      • many more …

SimpleFOCBoards - 了解更多 …

SimpleFOC 项目的目标之一是开发低成本、易于使用、与 SimpleFOC 库兼容且完全开源的 BLDC 驱动板!因此,SimpleFOC 团队成员开发了一套专为易于使用而设计的板,以帮助您启动 FOC 之旅。除了易于使用之外,这些板的目标是作为社区构建的参考设计。最后,尽管其中一些板可以在我们的商店中找到,但我们的文档提供了大量有关如何自己制造板的文档和分步指南。

除了官方板之外,还有许多其他与 SimpleFOC 库兼容的板可供您探索,请参阅文档 。此外,社区还提出了一些其他很酷的硬件设计。查看我们的社区论坛了解更多信息。

以下是 SimpleFOC 团队开发的一些官方板:

SimpleFOCShield

License: MIT GitHub release (latest by date) GitHub Release Date

特征

  • 基于 DRV8313 - 数据手册
    • 电源: 8-35V
    • 最大电流: 2A 每相 (3Amp 峰值)
  • 绝对最大额定值 - 专为内阻为 >10 Ωs 的云台电机而设计
    • 最大电流: 3A,
    • 最大输入电压: 35V
  • 在线电流检测: 高达双向5A
    • ACS712 霍尔电流传感器
  • 集成8V稳压器:
    • 通过焊接确定是否使能
  • 可堆叠: 可以同时运行两台电机
  • 编码器/霍尔传感器接口: 集成 3.3kΩ 上拉(可配置)
  • I2C 接口: 集成 4.7kΩ上拉(可配置)
  • 可配置引脚排列: 硬件配置 - 焊接连接
  • Arduino 接头: Arduino UNO, Arduino MEGA, STM32 Nucleo 板…
  • 开源:
  • 低成本:
    • JLCPCB 生产成本 ~10-15€
    • 商店有售: 15-30€

SimpleFOCMini

License: MIT GitHub release (latest by date) GitHub Release Date

特征

  • 基于 DRV8313 - 数据手册
    • 电源: 8-35V
    • 最大电流: 2A 每相 (3Amp 峰值)
  • 绝对最大额定值 - 专为内阻为 >10 Ωs 的云台电机而设计
    • 最大电流: 3A,
    • 最大输入电压: 35V
  • 小尺寸: 26x21 mm
  • 开源:
  • 低成本:
    • JLCPCB 生产成本 ~3-5€
    • 商店有售: 7-15€

SimpleFOCShield的一个简短演示视频(有点过时,但仍然相关)

(视频链接需要修改)

想了解更多关于电路板的信息以及自制方法,请查看 “ 电路板专区

其他的可代用FOC方案

SimpleFOC 的重点是使 FOC 变得简单 (:D),并支持尽可能多的电机 + 传感器 + 驱动器 + MCU 组合。如果您不太关心固件的简单性 ,并且不介意为了性能而权衡跨平台灵活性,那么还有其他几个项目也使用 FOC,并且可以为您的应用程序提供更紧凑、更强大或更强大的解决方案。其中许多项目都是开源的,从一开始就是我们的灵感来源,尤其是 VESC 和 Odrive。如果您正在开始您的 FOC 之旅,请务必查看它们!

P.S. 这些项目都没有使用 SimpleFOC 库 ,但 SimpleFOC 库可以用作这些项目中开发的多个驱动板的软件

项目开源硬件开源固件简易使用低成本额定功率支持步进SimpleFOC 支持

Odrive
✔️/(❌ 来自最近)✔️/(❌ 来自最近)✔️❌ (>200$)高 (>50A)✔️

Vesc
✔️✔️✔️❌ (>100$)非常高 (>100A)✔️

Trinamic
✔️❌ (>200$)低 (~10A)✔️

Infineon
✔️✔️✔️ (50$)低 (~10A)

FOC-Arduino-Brushless
✔️✔️✔️ (价格未知)低 (~10A)? (未测试)

Tinymovr R5.2
✔️✔️❌ (~90$)高 (~30A)? (未测试)

Tinymovr M5.2
✔️✔️❌ (~90$)低 (~6Amps)? (未测试)

Mjbots moteus
✔️✔️✔️❌ (70-160$)中等 (20Amps)

高 (100Amps)
? (未测试)


Open robotics initiative
MicroDriver
✔️✔️✔️(~50$)中等 (~20Amps)? 未测试)


SOLO
✔️❌(70$-600$)中等 (~16Amps)

非常高 (~120Amps)
⚠️ 这个列表当然不是详尽无遗的,请随时为扩展/完成/更正它做出贡献!