目录
SimpleFOC的教程比较多,做了一个总的链接,欢迎点击阅读:SimpleFOC教程链接汇总
本系列包含以下文章,欢迎阅读:
SimpleFOC(二)—— 快速入门 (开环控制)
SimpleFOC(三)—— AS5600角度读取
SimpleFOC(四)—— 闭环控制
SimpleFOC(五)—— 双电机控制
SimpleFOC(六)—— PowerShield和AS5047P
SimpleFOC(七)——STM32(Bluepill)的应用
SimpleFOC(八)—— 理论+实践 深度分析SVPWM
SimpleFOC(九)—— 霍尔电机控制
以下内容仅仅翻译和整理官方资料,您也可以直接去官网查看:https://docs.simplefoc.com/。
●前言
我们生活在一个非常激动人心的时代😃! 无刷直流电机正进入越来越多的爱好社区,许多伟大的项目已经出现利用其远远优越的动态和功率能力。无刷直流电动机比普通直流电动机有许多优点,但有一个很大的缺点,即控制的复杂性。尽管PCB的设计和制造已经变得相对容易,并且我们自己创造了驱动无刷直流电机的硬件解决方案,但是合适的低成本解决方案还没有出现。其中一个原因是编写BLDC驱动算法的明显复杂性,磁场定向控制(FOC)是最有效的算法之一。可以在线找到的解决方案对于某些硬件配置和所使用的微控制器体系结构几乎都非常具体。此外,目前大部分的工作仍集中在无刷直流电机的大功率应用上,目前很难找到合适的低成本、低功耗的FOC支撑板,甚至可能不存在。
所以这是一次尝试。
●开源simpleFOC包含
一、Arduino库:Arduino SimpleFOClibrary,
二、低功率云台电机驱动板(<5安培):Arduino SimpleFOCShield,
三、中功率BLDC电机驱动板(<30安培):Arduino SimpleFOCPowerShield,
◆另请参阅@byDagor完全集成的基于ESP32的板:Dagor无刷控制器。(这个项目好像并不完全开源,只提供了Arduino IDE环境下的代码和PCB板的3D图)
● 一、Arduino SimpleFOClibrary
这个库实现了无刷直流和步进电机的场定向控制(FOC)算法。FOC算法具有无与伦比的平滑运算和高转矩、速度和位置控制。该库的目的是:
初学者寻找一种简单、方便用户的方法,学习如何控制无刷直流和步进电机,
高级用户做为深入研究FOC算法的准备,并为其特定应用/硬件优化代码。
◆特点
◎Arduino兼容,
◎开源,所有代码和文档都放在github上,
◎简单的设置和配置,简单的硬件跳线焊接,简单的调试控制程序,
◎模块化:
支持直流无刷电机和步进电机,
支持尽可能多的传感器和驱动板,
支持多种MCU:
Arduino UNO和ATMEGA328,
STM32的板子,如ST官方的Nucleo和Bluepill
ESP32
Teensy
◎即插即用,与Arduino兼容的驱动板 Arduino SimpleFOCShield。
◆安装方法
有两种方法安装Arduino库,根据你代码调试计划和产品应用:
1、 完整Arduino库安装—对很多例程是即插即用功能,
2、最小项目生成器—集成完整库的Arduino草图。
完整Arduino库,例程丰富,简单易上手;最小项目生成器,可以直接和底层代码交互,适合高阶玩法。初学者可以采用安装Arduino库的方式,先入门再提高。
● 二、Arduino SimpleFOCShield
这是一个开源的低成本无刷直流(BLDC)电机驱动板,主要用于低功耗的FOC应用,电流高达5A。该板与Arduino UNO和所有带有标准Arduino头的板完全兼容。SimpleFOCShield结合SimpleFOClibrary提供了一种用户友好的方法来控制无刷直流电机的硬件和软件。
◆特点
◎即插即用,和Arduino SimpleFOClibrary结合,
◎低成本,15欧元,
◎内置电流检测,最大到3A(3.3V)/5A(5V),
◎集成了8V电压转换芯片(板载78M08),
◎最大驱动功率120W,
◎可堆叠,可以同时驱动2个电机
◎编码器/Hall传感器接口,
◎I2C接口,
◎可配置引脚,
◎Arduino接口, Arduino UNO, Arduino MEGA, STM32 Nucleo boards等,
◎开源,所有文件开放
驱动板包含两个版本,V1.3.x没有电流采样,V2.0.x有电流采样,如下图:
绿色板是V1.3.3,黑色板是V2.0.1
注意:这个驱动板主要是设计用于驱动内阻大于10欧姆的云台电机,如果驱动小于10欧姆电阻的电机可以设置限制电压。
◆硬件配置
Arduino SimpleFOCShield的一个很重要的特点就是硬件配置。背面有可以配置的焊点,这些焊点可以使板子:
使能/失能 编码器A/B/Z的上拉电阻,
配置BLDC的驱动和使能引脚,
◆接线示意图
以下是一个接线示例,用编码器做为位置传感器的直流无刷电机,
更多接线细节请看:https://docs.simplefoc.com/arduino_simplefoc_shield
◆驱动电机
● 三、Arduino SimpleFOC PowerShield
更加强大的arduino驱动板,使用FOC算法运行无刷直流电机。该板基于BTN8982半桥,可支持高达30安培的连续电流和50安培的峰值电流,几乎可以运行任何无刷直流电机。
◆特点
◎即插即用,和Arduino SimpleFOClibrary结合,
◎低成本,20-25欧元,
◎内置电流检测,
◎最大驱动功率大于500W,最大30A电流,电压24V,
◎Arduino接口, Arduino UNO, Arduino MEGA, STM32 Nucleo boards,Aruidno DUE等,
◎小尺寸,53mmX60mm
◎编码器/Hall传感器接口,
◎开源,所有生产加工文件,Altium工程,3d模型,原理图,
◆未来增加特点
◎可堆叠,可以同时驱动2个电机
◎I2C接口,
◎可配置引脚,
●附件:
◆Arduino SimpleFOClibrary,最小项目生成器下载链接:https://github.com/simplefoc/Arduino-FOC/tree/minimal
建议新手先通过Arduino IDE安装库文件,不用急于下载。完整Arduino库安装稍后讲解。
◆低功率驱动板包含两个版本:
V1.x.x是没有电流采样的驱动板:https://github.com/simplefoc/Arduino-SimpleFOCShield/releases/tag/v1.3.3
V2.0.x增加了电流采样:https://github.com/simplefoc/Arduino-SimpleFOCShield/releases
◆中功率驱动板PCB文件下载地址:https://github.com/simplefoc/Arduino-SimpleFOC-PowerShield
◆Dagor无刷控制器下载地址:https://github.com/byDagor/Dagor-Brushless-Controller/tree/master/Firmware
(完)
欢迎加入simpleFOC技术交流群:923734429 群已满根据提示添加新群 (入群申请写:CSDN)