108个传感器之-步进电机28byj(49)

108个传感器之-步进电机28byj(49)

介绍

我们被步进电动机所包围,甚至没有意识到,因为它们都用于许多日常用品中,包括窗户百叶窗,3D打印机,DVD播放器,安全摄像头和CNC机器。我们离步进电动机比您想象的要近得多。

步进电动机落在传统的直流电动机和伺服电动机之间。它们可以像直流电动机一样连续旋转,并精确地定位(以离散步骤)等伺服电动机。

如果您刚开始使用步进电动机,那么28ByJ-48是一个不错的选择。它们通常配备基于ULN2003的驾驶员板,使其非常易于使用。

工作原理

每个高脉冲发送都会使线圈通电,吸引最接近齿轮的牙齿,并以称为台阶的精确和固定角度增量旋转电动机。

步进电动机在360度旋转中具有的步骤数实际上是齿轮上的牙齿数量。

stepper motor working animation

这些线圈的脉冲方式确定电动机的运行方式:

  • 脉冲的序列确定电动机的旋转方向。

  • 脉冲的频率决定了电动机的速度。

  • 脉冲的数量确定电动机将转向多远。

通过以正确的序列为线圈通电,电动机旋转。

28BYJ48 Stepper Motor Gear Ratio Explanation

驱动连接

由于28ByJ-48步进电动机会消耗大量功率,因此无法直接由Arduino等微控制器控制。为了控制电动机,需要诸如ULN2003之类的驱动器IC;因此,该电动机通常带有基于ULN2003的驾驶员板。由于我用的是 L293D,本文会从 L293D 的使用来展开驱动说明。

L293D

引脚连接

28ByJ-48单极步进电动机的额定值为5V,每革命提供48个步骤。因此,将外部5V电源连接到EXT_PWR终端。

不要忘记删除PWR跳线。不要忘记删除PWR跳线。不要忘记删除PWR跳线。

最后,将电动机连接到步进电机端子M1-M2(端口#1)或M3-M4(端口#2)。我们将其连接到M3-M4。

步进电机连接示意图

DEV BOARD Sensor
Pin 2 signal
5 V +V
GND GND

代码示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include <Arduino.h>
#include <AFMotor.h>

//每个输出旋转的步骤数
//根据电机规格进行更改
const int stepsPerRevolution = 48;

// connect motor to port #2 (M3 and M4)
AF_Stepper motor(stepsPerRevolution, 2);

void setup() {
Serial.begin(9600);
Serial.println("Stepper test!");

motor.setSpeed(10); // 10 rpm
}

void loop() {
Serial.println("Single coil steps");
motor.step(100, FORWARD, SINGLE);
motor.step(100, BACKWARD, SINGLE);

Serial.println("Double coil steps");
motor.step(100, FORWARD, DOUBLE);
motor.step(100, BACKWARD, DOUBLE);

Serial.println("Interleave coil steps");
motor.step(100, FORWARD, INTERLEAVE);
motor.step(100, BACKWARD, INTERLEAVE);

Serial.println("Micrsostep steps");
motor.step(100, FORWARD, MICROSTEP);
motor.step(100, BACKWARD, MICROSTEP);
}

在代码的设置和循环部分中,我们只需调用下面列出的两个功能即可控制电动机的速度和方向。

  • setSpeed(rpm)设置了电动机的速度,其中rpm是您希望步进的每分钟旋转数量。
  • 每次您希望电动机移动时,step(#steps, direction, steptype)函数都会调用。#steps 是您要采取的步骤的数量。direction是向前或向后,stepstyle可以是以下任何一个:
    • SINGLE - 一次线圈一次通电。
    • DOUBLE - 一次启动两个线圈以进行更多的扭矩。
    • INTERLEAVE - 在单个和双重之间进行替代,以在两者之间创建半步。这可能会导致操作更顺畅,但是由于额外的半步,速度降低了一半。
    • MICROSTEP - 在每个整个步骤之间,相邻的线圈都会上下倾斜以创建许多微步骤。这会产生更好的分辨率和更平滑的旋转,但以扭矩为代价。

小结

待完善…

108个传感器之-步进电机28byj(49)

http://blog.jzxer.cn/20250121/20250121-28byj-stepper/

作者

dev

发布于

2025-01-21

更新于

2025-01-07

许可协议

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×