28BYJ-48步进电机介绍

在这里插入图片描述
步进电机28BYJ-48名称含义:

28:表示步进电机的有效最大外径为28毫米
B: 表示步进电机“步”字汉语拼音首字母
Y: 表示永磁式“永”字汉语拼音首字母
J: 表示减速型“减”字汉语拼音首字母
BYJ: 组合即为永磁式减速步进电机
48:表示四相八拍
5V:表示额定电压为5V,且为直流电压

步进角:5.625度,就是1个脉冲信号转5.625度,64个信号转360度。
减速比:1/64,电机壳里边的电机转64圈,电机壳外边的部分转1圈。
四相:ABCD四相(电机定子上有8个齿,相对的2个齿是1相),
八拍:(A-AB-B-BC-C-CD-D-DA-A)。
一拍就是一个脉冲信号,完成一个循环用8个脉冲信号。
当通电状态的改变完成一个循环时,转子转过一个齿距。转8个齿距就是一圈,8×8=64
64拍,64个脉冲信号转一圈360度。

感谢 baidingtandang大佬写的程序,修改了大佬的程序,电机能转了。

### 使用 ESP32-S3-N16R8 控制 28BYJ-48 步进电机 #### 准备工作 为了使 ESP32-S3-N16R8 开发板能够成功驱动 28BYJ-48步进电机,需先完成环境配置并确认硬件连接无误。 确保已按照说明完成了开发环境搭建,并选择了正确的开发板型号[^1]。这一步骤对于后续代码上传至关重要。 #### 连接电路图解 ESP32-S3-N16R8 的 GPIO 资源丰富,可以灵活分配用于控制步进电机的引脚。通常情况下,建议如下表所示进行连线: | Stepper Motor Pin | ESP32-S3 GPIO | |-------------------|---------------| | IN1 | GPIO 17 | | IN2 | GPIO 16 | | IN3 | GPIO 4 | | IN4 | GPIO 5 | | IN5 (Power Supply)| VCC | 注意:IN5 接入电源正极,其他四根线分别接入对应的 GPIO 引脚;同时确保共阴极或共阳极的选择与实际使用的电机相匹配。 #### 示例代码实现 下面提供一段基于 Arduino IDE 编写的简单程序来演示如何通过 ESP32-S3 驱动 28BYJ-48 步进电机转动指定角度。 ```cpp #include <Stepper.h> const int stepsPerRevolution = 2048; // 改变此数值以适应具体电机每圈所需脉冲数 Stepper myStepper(stepsPerRevolution, 17, 16, 4, 5); void setup() { Serial.begin(9600); pinMode(LED_BUILTIN, OUTPUT); // 设置内置LED作为状态指示灯 // 初始化步进器对象 myStepper.setSpeed(60); // 设定速度为60 RPMs } void loop() { digitalWrite(LED_BUILTIN, HIGH); // 打开LED表示正在运行 delay(200); // 向前旋转半圈 Serial.println("Clockwise"); myStepper.step(stepsPerRevolution / 2); digitalWrite(LED_BUILTIN, LOW); // 关闭LED等待一段时间再继续 delay(1000); // 返回原位逆时针方向移动 Serial.println("Counter-Clockwise"); myStepper.step(-stepsPerRevolution / 2); delay(1000); } ``` 上述代码实现了让步进电机顺时针和逆时针交替运转的功能,在每次动作之间会有短暂停顿以便观察效果。可根据需求调整 `setSpeed()` 方法中的参数以及循环内的延时时间。 #### 注意事项 由于不同品牌、批次间的差异,部分 28BYJ-48 步进电机可能具有不同的步距角(即每转一圈所需的脉冲数量),因此需要根据实际情况修改变量 `stepsPerRevolution` 的值以获得预期的工作表现。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值