Link

将硬件连接到 SimpleFOCMini v1.1

SimpleFOCMini v1.1 连接到微控制器、无刷直流电机和电源非常简单。

微控制器

  • SimpleFOCMini v1.1 设计为独立的无刷直流驱动器,基本上可以与任何微控制器配合使用。
  • 该板有 11 个引脚用于连接微控制器。

有 4 个引脚需要连接:IN1、IN2、IN3 和 EN。此外,GND 引脚需要连接到微控制器的 GND 引脚。SimpleFOCMini v1.1 在排针 的第一行引出两个 GND 引脚,以便更方便地连接到微控制器。您可以选择对您的应用更方便的那个。

引脚名称描述
GND地(公共地)
GND地(公共地)
EN驱动器使能
IN3相位 3 的 PWM 输入
IN2相位 2 的 PWM 输入
IN1相位 1 的 PWM 输入

注意:引脚顺序

SimpleFOCMini 的 v1.1 版本与 v1.0 版本相比,IN1、IN2、IN3和EN的顺序有所改变。

使用 SimpleFOCMini 时需要连接这些引脚。3 个 PWM 引脚和使能引脚用于控制 DRV8313 驱动器,就 SimpleFOClibrary 而言,它们对应于BLDCDriver3PWM类的条目。公共地引脚也非常重要,以确保驱动器芯片能正确读取所有 PWM 和使能引脚。一旦您确定将哪些引脚用于INxEN引脚,您就可以在 Arduino 草图中将它们提供给BLDCDriver3PWM类。

BLDCDriver3PWM driver = BLDCDriver3PWM(IN1, IN2, IN3, EN);

除了这些引脚外,还有 5 个可选引脚。

引脚名称描述
3.3V3.3V 输出 - 不是输入
GND
nRT复位(低电平有效)
nSP休眠(低电平有效)
nFT故障输出(低电平有效)

SimpleFOCMini 基于 DRV8313 驱动器,该驱动器集成了 3.3V 稳压器,在某些应用中可能用于为传感器等供电。因此,SimpleFOCMini 的 3.3V 引脚可用作 3.3V 电源引脚,最大输出电流为 10mA。SimpleFOCMini排针 中暴露的两个 GND 引脚都连接到同一个地,因此您可以选择对您的应用更方便的那个。

注意:3.3V LDO电源限制

DRV8313带有3.3V电压稳压器,它连接到 SimpleFOCMini 的3.3V引脚。然而,它的限制是10mA,通常不足以给微控制器供电。但它可能足以给LED灯或某些位置传感器供电。

引脚nFT(故障)是 SimpleFOCMini 的低电平有效输出,可通过读取该引脚来验证 DRV8313 驱动器是否正常工作。如果该引脚为低电平,则表示 DRV8313 处于故障状态,无法驱动电机。然后,同样是低电平有效的引脚nRT(复位)可用于复位 DRV8313 驱动器,以重新初始化其内部状态并退出故障状态,这不能通过简单地切换使能引脚来实现。最后,引脚nSP(休眠)是低电平有效引脚,可将 DRV8313 置于低功耗休眠模式,消耗电流低于 1uA。

无刷直流电机

  • 电机相位abc直接连接到电机端子连接器M1M2M3

注意:功率限制

SimpleFOCMini 设计用于内部电阻高于R>10欧姆的云台电机。该板的绝对最大电流为5A。请确保在您的项目中使用该板时,所使用的无刷直流电机符合这些限制。
如果您仍然想将此驱动器与电阻非常低(R < 1欧姆)的无刷直流电机一起使用,请确保限制设置到板上的电压。
有关电机选择的更多信息,请访问 无刷直流电机文档

电源

  • 电源电缆直接连接到端子引脚+-
  • 所需电源电压为 8V 至 35V

连接示意图示例

SimpleFOCMini 可以连接到任何微控制器(MCU)的引脚组合,只要确保 mini 的GND引脚连接到 MCU 的GND引脚,MCU 的 3 个具有 PWM 功能的引脚连接到IN1IN2IN3引脚,以及 MCU 的一个数字引脚连接到EN引脚。

Nucleo 开发板

SimpleFOCMini 与 Nucleo 开发板的连接示例如下图所示。

SimpleFOCMini 可以直接插入 Nucleo 开发板的 Arduino排针,从引脚10GND引脚,这样可以减少所需的导线数量。有关此示例连接的更多信息,请参见此库示例

Mini 引脚IN1IN2IN3ENGND
Nucleo 引脚10111213GND
BLDCDriver3PWM driver = BLDCDriver3PWM(10, 11, 12, 13);

Arduino UNO 开发板

SimpleFOCMini 与 Arduino UNO 的连接示例如下图所示。

SimpleFOCMini 可以直接插入 UNO 开发板的 Arduino排针,从引脚912引脚,GND 引脚连接到 Arduino 的 GND 引脚(跳过引脚 13)。这种堆叠能力有助于减少所需的导线数量。有关此示例连接的更多信息,请参见此库示例

Mini 引脚IN1IN2IN3ENGND
UNO 引脚9101112GND
BLDCDriver3PWM driver = BLDCDriver3PWM(9, 10, 11, 12);

Arduino UNO 与 SimpleFOCMini 连接的另一个示例如下所示

Mini 引脚IN1IN2IN3ENGND
UNO 引脚56912GND
BLDCDriver3PWM driver = BLDCDriver3PWM(5, 6, 9, 12);

Bluepill 开发板

SimpleFOCMini 与 stm32 Bluepill 的连接示例如下图所示。mini 可以直接堆叠在 bluepill 的排针 上,从引脚PB6PB9,跳过 5V 引脚,GND 引脚连接到 Bluepill 的 GND 引脚。

Mini 引脚IN1IN2IN3ENGND
Bluepill 引脚PB6PB7PB8PB9GND
BLDCDriver3PWM driver = BLDCDriver3PWM(PB6, PB7, PB8, PB9);

Qtpy 或 Seed Xiao 开发板

将 SimpleFOCMini 连接到 Qtpy 或 Seed Xiao 开发板的最简单方法如下图所示。mini 可以直接堆叠在 Qtpy 的排针 上,从引脚810,使用 3.3V 引脚作为 EN,GND 引脚连接到 Qtpy 的 GND 引脚。

Mini 引脚IN1IN2IN3ENGND
Qtpy 引脚89103.3VGND
BLDCDriver3PWM driver = BLDCDriver3PWM(8, 9, 10);

注意:使能引脚始终为高电平

在这种连接设置下,无法使用`EN`引脚禁用驱动器。驱动器将始终处于使能状态。