กลับไปหน้ารวมไฟล์
arduino-uno-stepper-motor-basic.md

การวางตำแหน่งแบบไร้ขีดจำกัด: พื้นฐาน Arduino Stepper Motor

Servo จะชี้ไปยังมุมที่แน่นอนแล้วหยุดนิ่ง DC motor จะหมุนอย่างรวดเร็วโดยไม่มีความแม่นยำเลย Stepper Motor เป็นหัวใจสำคัญของ 3D printers และ CNC machines ทั้งหมด เพราะมันให้การหมุนที่ต่อเนื่องแบบไร้ขีดจำกัด พร้อมกับการเคลื่อนที่แบบละเอียดระดับจุลภาคที่แม่นยำทางคณิตศาสตร์ โปรเจกต์พื้นฐานนี้จะสำรวจวิธีการใช้งาน 28BYJ-48 ที่แพร่หลาย

smart_dustbin_internal_servo_1772704583966.png

การจัดเฟสของ Electromagnet (ULN2003 Driver)

28BYJ-48 Stepper Motor มีสายไฟห้าเส้น คุณไม่สามารถต่อมันเข้ากับแบตเตอรี่ได้โดยตรง

  1. ภายในของ motor มี electromagnet coils หลายชุดที่จัดเรียงเป็นวงกลม
  2. rotor เป็น permanent magnet หากต้องการให้ motor หมุนทีละก้าวเล็กๆ อย่างแม่นยำ คุณต้องจ่ายไฟให้ Coil A จากนั้นปิด แล้วจ่ายไฟให้ Coil B ปิด และจ่ายไฟให้ Coil C...
  3. การสลับลำดับที่ซับซ้อนนี้ต้องใช้ ULN2003 Driver Board คุณเชื่อมต่อ Arduino Pins 8, 9, 10 และ 11 เข้ากับ driver IN1 - IN4

ตรรกะของโค้ด Stepper.h

การเขียนลำดับการสลับ High/Low ด้วยตนเองนั้นค่อนข้างลำบาก

  • คุณรวม library <Stepper.h> ที่มาพร้อมกับระบบ
  • คุณกำหนดค่าเริ่มต้น object: Stepper myStepper(2048, 8, 10, 9, 11); (โปรดทราบว่า Pins 9 และ 10 มักจะสลับกันในการทำงานของ software เนื่องจากวิธีการต่อสายของ internal coils!)
  • คำสั่งการทำงาน: คุณไม่ได้บอกมันถึงมุม แต่คุณบอกจำนวน step ที่แน่นอน
  • myStepper.setSpeed(10); (10 RPM)
  • myStepper.step(1024);
  • Arduino จะเริ่มส่ง pulses ไปยังสายไฟทั้งสี่เส้นทันที electromagnet coils จะดึง rotor ให้เคลื่อนที่ผ่านการคลิกด้วยแม่เหล็กขนาดเล็กที่แม่นยำ 1,024 ครั้ง เนื่องจาก motor มี 2,048 steps ต่อการหมุนหนึ่งรอบ... คุณเพิ่งสั่งให้มันหมุน 180 องศาได้อย่างแม่นยำไร้ที่ติ!

ฮาร์ดแวร์ Stepper พื้นฐาน

  • Arduino Uno/Nano
  • 28BYJ-48 5V Stepper Motor + ULN2003 Driver Board (ชุด Stepper มาตรฐานสำหรับผู้เริ่มต้น)
  • 5V Breadboard Power Supply Module (ห้ามจ่ายไฟให้ stepper โดยตรงจาก Arduino 5V pin! เพราะมันจะดึง current pulses ที่แหลมคมและสูงเกิน 500mA ซึ่งจะทำให้ Uno รีเซ็ตหรือหยุดทำงานแบบสุ่มได้!)

ข้อมูล Frontmatter ดั้งเดิม

title: "Arduino uno stepper motor basic"
description: "Precision rotation! Ditch the erratic, sweeping servos and master the micro-stepping architecture of the 28BYJ-48 motor to command theoretically infinite, millimeter-accurate continuous rotation."
category: "Motors & Robotics"
difficulty: "Easy"