Arduino 步进电机

17 Mar 2025 | 4 分钟阅读

步进电机在运行中不需要任何反馈。 由于其设计,它可以进行高精度控制。

安装在步进电机轴上的磁铁由电磁线圈控制。 这些线圈按顺序带负电和正电,这使得轴以小步长向前和向后移动。

我们还可以在旋转期间将电机的位置保持在任何步长。 它具有简单、精确的开环系统。

步进电机分为两种类型,如下所示

  • 单极型
  • 双极型

每种类型都有不同的电路,但编码是相似的。

单极型

单极步进电机由一个绕组组成,该绕组与每个相的中心抽头一起运行。 电机每相有三根引线。 对于常规的两相步进电机,每相有六根引线。

当两个相位在内部连接时,单极步进电机有五根引线。

双极型

双极步进电机由每个相的单绕组组成。 电机每相有两根引线。

双极步进电机没有任何中心抽头连接。 当我们需要在低速下使用高扭矩时,通常使用此类设备。

步进电机如何工作?

步进电机可以在没有闭合反馈回路的情况下控制转子的角度位置。

例如:

考虑一个带有六个定子齿和转子的电机。 如下图所示

Arduino Stepper motor

带有六个定子齿的步进电机可以使用三个不同的直流电源触发。 步进电机的转子由叠层钢板制成。 它与转子相比具有不同的齿,转子有四个齿。

这样做是为了使一对转子齿一次可以轻松地与定子对齐。

如果我们触发或激励线圈 A 和 B,转子将旋转。 上图表示步长为 30 度。 我们将激励线圈 B 和 C。 之后,线圈 A 将再次激励。 这意味着转子移动到具有最小磁阻的位置。

当线圈 A 激励时转子的位置如下图所示

Arduino Stepper motor

当线圈 B 激励时转子的位置(移动 30 度)如下图所示

Arduino Stepper motor

当两个线圈都通电时,转子的位置(中间)如下图所示

Arduino Stepper motor

两个线圈的通电将转子的精度从 30 度变为 15 度。

常见的步进电机类型是混合电机类型。

在这个项目中,我们将使用混合电机类型。 它看起来像下图所示的图像

Arduino Stepper motor

所需硬件

所需的组件如下所示

  • 1 x Arduino UNO R3(我们可以使用任何 Arduino 板)
  • 1 x 面包板
  • 跳线
  • 1 x 10K 欧姆电位器
  • 1 x 步进电机
  • 1 x 电源(根据步进电机)
  • U2004 达灵顿阵列(用于单极步进电机)
  • SN754410ne H 桥(用于双极步进电机)

连接图

我们将使用模拟器显示连接,以便连接更清晰、更精确。

我们可以使用硬件设备进行相同的连接。

Arduino Stepper motor

Sketch

请看下面的代码

过程

建立上述连接的步骤如下所示

  • 将电池的负极和正极连接到 Arduino 板的 GND 和 5V 引脚。
  • 电位器的一个外引脚连接到 Arduino 板的接地端 (GND),另一个外引脚连接到 5V
  • 电位器的中间引脚连接到电路板的模拟输入引脚 A1。
  • 将 Arduino 板的 8 到 11 个数字引脚连接到 U2004 达灵顿阵列,该阵列进一步连接到电机。
  • 将 U2004 达灵顿阵列的其他引脚连接到步进电机,如连接图所示。

下一个主题Arduino 伺服电机