🖨️ موتور استپر NEMA 17 (NEMA 17 Stepper Motor)
| اسم انگلیسی | NEMA 17 Stepper Motor |
|---|---|
| در ووکوی (Wokwi) | wokwi-stepper-motor |
| دسته | ⚙️ موتور و حرکت |
| در شبیهساز فارسی | مود ساده (بدون کد) و مود آردوینو · رایگان |
موتور استپر NEMA 17 (NEMA 17 Stepper Motor) همان موتور قوی پرینترهای سهبعدی، CNC و حکاکی لیزری است. «NEMA 17» اندازهی صفحهی جلوی آن است (حدود ۴۲ میلیمتر)، نه اسم یک مدل. دوقطبی است و چهار سیم دارد، و با درایوری مثل A4988 آردوینو فقط دو فرمان میدهد: «یک گام برو» و «به کدام جهت».
NEMA 17 در ووکوی (Wokwi)
استپر ووکوی، wokwi-stepper-motor، دقیقاً از همین خانواده است: دوقطبی با پایههای A-، A+، B+ و B-. کنارش درایور wokwi-a4988 را بگذار؛ پایههای فرمانش STEP، DIR، ENABLE، SLEEP و RESET هستند و خروجی سیمپیچها 1A، 1B، 2A و 2B:
{
"version": 1,
"parts": [
{ "type": "wokwi-arduino-uno", "id": "uno", "top": 0, "left": 0 },
{ "type": "wokwi-a4988", "id": "drv1", "top": -120, "left": 140 },
{ "type": "wokwi-stepper-motor", "id": "stepper1", "top": -260, "left": 130 }
],
"connections": [
[ "uno:3", "drv1:STEP", "green", [] ],
[ "uno:4", "drv1:DIR", "blue", [] ],
[ "drv1:SLEEP", "drv1:RESET", "gray", [] ],
[ "drv1:VDD", "uno:5V", "red", [] ],
[ "drv1:1A", "stepper1:A+", "orange", [] ],
[ "drv1:1B", "stepper1:A-", "orange", [] ],
[ "drv1:2A", "stepper1:B+", "purple", [] ],
[ "drv1:2B", "stepper1:B-", "purple", [] ]
]
}
| پایه در ووکوی | وصل به | کار |
|---|---|---|
| drv1:STEP | uno:3 | هر پالس یک گام |
| drv1:DIR | uno:4 | HIGH یک جهت، LOW جهت دیگر |
| drv1:SLEEP و drv1:RESET | به هم | درایور بیدار و آماده |
| 1A، 1B / 2A، 2B | A+، A- / B+، B- | دو سیمپیچ موتور |
پایهی GND کنار VDD را هم به GND آردوینو وصل کن. در تینکرکد فارسی موتور NEMA 17 جزو قطعههای حرفهای اشتراک Plus است؛ برای تمرین رایگان آنجا، استپر کوچک 28BYJ-48 را بردار.
سیمکشی با آردوینو
| پایهی قطعه | وصل به |
|---|---|
| STEP (A4988) | پین 3 |
| DIR | پین 4 |
| SLEEP و RESET | به هم وصل |
| ENABLE و MS1 تا MS3 | وصل نیستند (درایور فعال، گام کامل) |
| VDD و GND کنارش | 5V و GND آردوینو |
| VMOT و GND کنارش | منبع ۱۲ ولت جدا با خازن ۱۰۰ میکروفاراد؛ زمین مشترک با آردوینو |
| 1A و 1B | دو سیم یک سیمپیچ موتور |
| 2A و 2B | دو سیم سیمپیچ دیگر |
جفت سیمهای هر سیمپیچ را با مولتیمتر پیدا کن: بین دو سیم یک سیمپیچ چند اهم مقاومت هست و بین دو سیمپیچ مختلف، مدار باز. قبل از وصل کردن موتور، حد جریان را با پیچ کوچک روی A4988 تنظیم کن.
پایههای MS1 تا MS3 گام را ریزتر میکنند: اگر همه وصل نباشند گام کامل است، فقط MS1 روی HIGH یعنی نیمگام، فقط MS2 یعنی یکچهارم، MS1 و MS2 با هم یعنی یکهشتم و هر سه روی HIGH یعنی یکشانزدهم گام. گام ریزتر یعنی حرکت نرمتر و صدای کمتر، ولی برای یک دور پالس بیشتری لازم است.
کد نمونه
بدون هیچ کتابخانهای: یک دور کامل جلو با سرعت بالا و نیم دور برگشت آرامتر.
// NEMA 17 + A4988: one turn forward fast, half a turn back slowly.
// Wiring: STEP -> pin 3, DIR -> pin 4, SLEEP tied to RESET,
// VDD -> 5V, VMOT -> 12 V supply, all grounds together
const int STEP_PIN = 3;
const int DIR_PIN = 4;
const int STEPS_PER_REV = 200; // 1.8 degrees per full step
void turn(int steps, bool forward, unsigned int halfPeriodUs) {
digitalWrite(DIR_PIN, forward ? HIGH : LOW);
for (int i = 0; i < steps; i++) {
digitalWrite(STEP_PIN, HIGH);
delayMicroseconds(halfPeriodUs);
digitalWrite(STEP_PIN, LOW);
delayMicroseconds(halfPeriodUs);
}
}
void setup() {
pinMode(STEP_PIN, OUTPUT);
pinMode(DIR_PIN, OUTPUT);
}
void loop() {
turn(STEPS_PER_REV, true, 1000); // faster
delay(500);
turn(STEPS_PER_REV / 2, false, 2500); // slower
delay(500);
}
سرعت با فاصلهی بین پالسها تعیین میشود: هرچه halfPeriodUs کوچکتر، موتور تندتر. اگر میکرواستپ را روشن کنی، STEPS_PER_REV را هم به همان نسبت بزرگ کن.
اشتباههای رایج
- جدا کردن موتور وقتی درایور روشن است: جرقهی سیمپیچ میتواند A4988 را بسوزاند. اول تغذیه را قطع کن.
- SLEEP و RESET معلق: درایور در حالت ریست میماند و موتور هیچ تکانی نمیخورد.
- جفت سیمپیچ اشتباه: موتور میلرزد و صدا میدهد ولی نمیچرخد.
- شروع با سرعت زیاد: موتور از حالت ایستاده نمیتواند یکدفعه تند شود و گام جا میاندازد؛ با شتاب نرم شروع کن، مثل درس AccelStepper.
آموزشهای مرتبط
- استپر موتور 28BYJ-48 با ULN2003، برادر کوچکتر و ارزانتر
- ۴۰ مدار آردوینو برای ووکوی، با مدار استپر و A4988
- diagram.json در ووکوی، برای فهم تکهی بالا
- ساخت مدار در ووکوی قدمبهقدم
سؤالهای رایج
NEMA 17 در هر دور چند گام دارد؟
رایجترین مدلها ۱٫۸ درجه در هر گام دارند، یعنی ۲۰۰ گام در یک دور در حالت گام کامل. با میکرواستپ A4988 (مثلاً یکشانزدهم) این عدد به ۳۲۰۰ میرسد و حرکت نرمتر میشود.
میشود NEMA 17 را با 5V آردوینو راه انداخت؟
نه. بخش منطقی درایور A4988 با 5V آردوینو تغذیه میشود، ولی خود موتور از پایهی VMOT و یک منبع جدا، معمولاً ۱۲ ولت، جریان میگیرد. زمین منبع و آردوینو باید مشترک باشد.
NEMA 17 در تینکرکد فارسی رایگان است؟
در ووکوی رایگان است. در تینکرکد فارسی موتور NEMA 17 جزو قطعههای حرفهای اشتراک Plus است؛ استپر کوچک 28BYJ-48 آنجا رایگان است.