20 / 20
抓取与放置
按步骤协调步进底座、舵机臂与夹爪。
运行此实验 →实验目标
设置目标步数,运行抓取、旋转、放下的循环。
工作原理
按步骤协调步进底座、舵机臂与夹爪。 90 度。真实硬件的细分与齿轮比会改变一圈所需的有效步数。 此处为配套教学模型,硬件示例基于经典 ESP32 与 Arduino-ESP32 3.x;网络、声波、负载和机械运动均为简化演示。
动手试一试
- 打开此实验
- 设置目标步数,运行抓取、旋转、放下的循环。
接线
- GPIO 25 / 26 — 步进驱动 STEP/DIR
- GPIO 18 / 19 — 升降/夹爪舵机
- External supply — 驱动与舵机供电,共地
示例代码
#include <ESP32Servo.h>
Servo lift, grip;
// STEP/DIR driver: GPIO25/26. Full-step 200 steps/rev. Set current limit first.
void setup() {
pinMode(25, OUTPUT); pinMode(26, OUTPUT);
lift.setPeriodHertz(50); lift.attach(18, 500, 2400);
grip.setPeriodHertz(50); grip.attach(19, 500, 2400);
}
void loop() {
grip.write(20); lift.write(30); delay(600);
grip.write(80); delay(600); lift.write(90); delay(600);
digitalWrite(26, HIGH);
for (int i=0; i<50; i++) {
digitalWrite(25, HIGH); delayMicroseconds(1000);
digitalWrite(25, LOW); delayMicroseconds(1000);
}
lift.write(30); delay(600); grip.write(20); delay(600);
lift.write(90); delay(600);
digitalWrite(26, LOW);
for (int i=0; i<50; i++) {
digitalWrite(25, HIGH); delayMicroseconds(1000);
digitalWrite(25, LOW); delayMicroseconds(1000);
}
}检查理解
每圈 200 步时,50 步转过多少度?
查看答案
90 度。真实硬件的细分与齿轮比会改变一圈所需的有效步数。