Skip to content

Latest commit

 

History

History
101 lines (69 loc) · 6.81 KB

README_CN.md

File metadata and controls

101 lines (69 loc) · 6.81 KB

LOGO

    Version  Build  License        English / 中文

    你还在买十几块钱一个的直流有刷电机的驱动模块吗?你还在为有刷电机的高噪声、低响应速度和低寿命而烦恼吗?来看看这个项目吧,一个20块钱就能搞定的FOC无刷电机控制方案!miniFOC内置了力矩闭环控制器,为你提供一个通过3线UART口就能控制的无刷电机控制器。本项目的软件及硬件设计完全遵循AGPL-3.0开源协议。

注:miniFOC V2版本正在开发中(dev分支),拟支持电流环和无感FOC算法,敬请期待。


简介

    本开源项目旨在实现一种在国内(中国)就可以以及低成本实现的FOC (Field Oriented Control) 方案,示例电路中选用的元件均为国产芯片。FOC在控制BLDC (Brushless Direct Current)电机上有诸多的好处,主要有如下几点优势:

  1. FOC则完全没有转速的限制,不论在什么转速下都可以实现精确的控制。
  2. FOC的换向性能极其优秀,最高转速下正反转切换可以非常顺畅。
  3. FOC还可以以能量回收的形式进行刹车控制。
  4. FOC可以实现力矩、速度、位置三个闭环控制。
  5. FOC驱动器的噪音会比电调小很多,效率也比电调高很多。

    但是由于FOC的计算量大、原理复杂,所以需要很高成本的控制器,这也使得FOC在很多场景下都没有得到推广和使用。在经过了半年的研究和迭代之后,本人将FOC涉及大量计算的代码进行了深度优化,也重新根据国内的供应链进行了选型,希望本开源项目能够帮助国内的广大开发者们用上有优秀性能的BLDC电机,为开源社区贡献一份力量。


开源方案对比

开源方案 miniFOC simpleFOC ODrive FpOC
主控制器 GD32F130G6U6 ATmega328P STM32F405RGT6 FPGA
驱动芯片 EG2133 L6234 DRV8301 MP6540
闭环频率 30kHz (max) 830Hz (max) 8kHz (typical) 18kHz (typical)
是否有电流环
驱动功率 90W 120W 960W 90W
成本价格(大约) 20¥ 100¥ 300¥ 150¥

    从上表格中可以看出,miniFOC所采用的方案可以实现在低成本下达到较高的性能。同时由于重新根据国内的供应链进行了选型,所以在器件的选择上没有那么局限,提供了很多替代方案。在2021年芯片供应紧缺的情况下能将FOC的成本降至约20元,这也证明了本项目在成本上的优化程度和巨大潜力。


性能参数

  • 输入电压范围:5V~18V(你可以根据这里的教程修改电路以适应更高的电压)。
  • 最大驱动电流:5A(你可以根据这里的教程修改电路以实现更大的驱动电流)。
  • FOC详细参数:无电流环控制,采用SVPWM (Space Vector Pulse Width Modulation)。
  • 通信参数:UART串口通信波特率115200,采用中容量数传协议进行数据传输。
  • 微控制器参数:Cortex-M3内核,72MHz主频,32KB Flash,4KB SRAM。

功能特性

  • 采用空间矢量脉冲宽度调制方法
  • 实现无电流传感器力矩控制
  • 实现转动速度闭环控制
  • 实现转动角度闭环控制
  • 实现自动相序检测和相序矫正

开发环境

  • EDA工具:立创EDA(采用标准版免费许可证,无LICENSE纠纷)。
  • 编译工具链:gcc-arm-none-eabi 10-2020-q4-major
  • 烧录工具:OpenOCD 0.11.0-1
  • 集成开发工具:CLion 2021.2.3 #212.5457.51
  • 上位机开发工具:Qt 5.14.2 (MinGW 7.3.0 64bit)
  • 操作系统及工具链:
    • Win10 + MinGW + CLion + gcc-arm-none-eabi + OpenOCD
    • Ubuntu20.04 + make + cmake + gcc-arm-none-eabi + OpenOCD

入门指南

入门请参考本项目的wiki页面
我们还提供了国内镜像仓库地址。
你可以访问Github Page以了解代码中的函数及变量的用法等信息。
**注意:**由于主要开发部署都在Github上进行,Gitee只是作为国内镜像仓库存放代码,会有wiki和issue等更新不及时的问题。您可在此访问Github源仓库。


BUG报告 & 功能需求

请使用Issue Tracker报告错误和需求功能,并遵循以下要求:

1.在不同选项卡上突出显示选项卡。 2.如果窗口未聚焦,不要让更新消失。


许可证

源代码根据AGPL-3.0许可证发布。

组织:AcmeTech
作者:朱彦臻
维护人:朱彦臻, [email protected]

    该产品已经在Windows 10、Ubuntu 18.04和20.04下进行了测试。这是一个研究代码,希望它经常更改,并且不承认任何特定用途的适用性。