Link

Arduino Simple Field Oriented Control (FOC) project - Chinese 😃🇨🇳

Library Compile License: MIT arduino-library-badge

status

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

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

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

如果在国内的朋友访问速度慢,可以访问中国国内中文文档镜像站http://simplefoc.cn/


基于以上痛点,本项目尝试:

  • 🎯 揭开 FOC 算法的神秘面纱,制作一个强大而简单的 Arduino 库: Arduino SimpleFOClibrary
    • 此库要支持尽可能多的电机+传感器+电流检测+驱动器+单片机 ,做到通用性
  • 🎯 建立几套适应不同应用情况的低成本FOC驱动板:

新消息 📢: SimpleFOClibrary 已经发表在开源软件杂志上 阅读更多

SimpleFOC: A Field Oriented Control (FOC) Library for Controlling Brushless Direct Current (BLDC) and Stepper Motors.
A. Skuric, HS. Bank, R. Unger, O. Williams, D. González-Reyes
Journal of Open Source Software, 7(74), 4232

新发布 📢: SimpleFOClibrary v2.2.2 see release

  • GenericCurrentSense 的错误修复和测试
  • 修复错误 leonardo #170
  • 错误修复 - 指定自然方向后没有索引搜索
  • Low level API 重构
    • 驱动程序 API
    • 电流检测 API
  • 新的调试界面 - 查看文档
    • 静态类 SimpleFOCDebug
  • CurrentSense API 的变化 - 增加方法 linkDriver() - 查看文档
  • 低端电流检测 - 查看文档
    • ESP32 对多电机的通用支持
    • 为 stm32 添加了低侧电流检测支持 - 仅一个电机
      • f1 family
      • f4 family
      • g4 family
  • New appraoch for current estimation for torque control using voltage使用电压控制扭来预测电流的新方法 - 查看文档
    • 支持电机 KV 额定值 - 反电动势估计
    • 使用电机相电阻
  • KV 额定值和相电阻也用于开环电流限制 - 查看文档

Arduino SimpleFOClibrary v2.2.2

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

特性

  • 简易安装:
    • Arduino IDE: Arduino 库管理器集成
    • PlatformIO
  • 开源:在github上可以获得完整的代码和文档
  • 目标:
  • 易于设置和配置:
  • 跨平台

Arduino SimpleFOCShield v2.0.4

特性

  • 即插即用:通过库 Arduino SimpleFOClibrary 实现- github
  • 低成本: 15 欧元的价格 - 查看价格
  • 在线电流传感: 双向可达 3A/5A
    • 可配置:3.3A - 3.3V adc, 5A - 5V adc
  • 集成 8种 调节器:
    • 通过焊盘启用/禁用
  • 最大功率 120W - 最大电流 5A, 电源 12-24V
    • 适用于 >10Ωs 的云台电机.
  • 可堆叠接插:同时运行2个电机
  • 编码器/霍尔传感器接口:集成的3.3kΩ上拉(可配置)
  • I2C 接口:集成的4.7kΩ上拉(可配置)
  • 引脚配置:见 硬件配置 - 焊接连接 章节
  • 支持的Arduino 型号: Arduino UNO, Arduino MEGA, STM32 Nucleo boards…
  • 开源:开源全部DIY文件 - 如何自己制作它
如果你对这个产品感兴趣,可以在这个链接上找到更多信息: Arduino SimpleFOCShield

其他的可代用FOC方案

列出几个可代用的FOC方案以供参考

OdriveTrinamicInfineonFOC-Arduino-Brushless
✔️开源❌ 开源✔️ 开源✔️ 开源
✔️易用✔️ 易用✔️易用❌ 易用
❌ 低成本 ($100)❌ 低成本 ($100)✔️低成本 ($40)✔️ 低成本
❌ 低功率 (>50A)✔️ 低功率✔️ 低功率✔️ 低功率
❌ 支持步进电机❌ 支持步进电机❌ 支持步进电机❌ 支持步进电机