Stepper motor เป็นมอเตอร์กระแสตรงไร้แปรงถ่านซึ่งสามารถหมุนได้ในมุมเล็ก ๆ มุมเหล่านี้เรียกว่าขั้นตอน โดยทั่วไปแล้วสเต็ปเปอร์มอเตอร์จะใช้ 200 ขั้นตอนเพื่อหมุน 360 องศาหมายถึงหมุน 1.8 องศาต่อขั้นตอน มอเตอร์สเต็ปเปอร์ที่ใช้ในอุปกรณ์หลายชนิดที่ต้องการการเคลื่อนไหวแบบหมุนที่แม่นยำเช่นหุ่นยนต์เสาอากาศฮาร์ดไดรฟ์เป็นต้นเราสามารถหมุนสเต็ปเปอร์มอเตอร์ไปยังมุมใดก็ได้โดยให้คำแนะนำที่เหมาะสม
สเต็ปเปอร์มอเตอร์โดยทั่วไปมีสองประเภท: Unipolar และ Bipolar โดยทั่วไปแล้วมอเตอร์สเต็ป Unipolarจะมีลวดห้าหรือหกเส้นโดยที่สายไฟสี่เส้นเป็นปลายด้านหนึ่งของขดลวดสเตเตอร์สี่เส้นและปลายอีกด้านหนึ่งของขดลวดทั้งสี่จะถูกมัดเข้าด้วยกันซึ่งแสดงถึงสายที่ห้าซึ่งเรียกว่าสายสามัญ (จุดร่วม) โดยทั่วไปจะมีลวดทั่วไปสองเส้นที่เกิดจากการเชื่อมต่อปลายด้านหนึ่งของขดลวดสอง - สองขดดังแสดงในรูปด้านล่าง Unipolar stepper motor เป็นเรื่องธรรมดาและได้รับความนิยมเนื่องจากใช้งานง่าย
ในมอเตอร์ไบโพลาร์มีสายไฟเพียงสี่เส้นที่ออกมาจากขดลวดสองชุดหมายความว่าไม่มีลวดทั่วไป
สเต็ปเปอร์มอเตอร์ประกอบด้วยสเตเตอร์และโรเตเตอร์ สเตเตอร์แสดงถึงขดลวดแม่เหล็กไฟฟ้าทั้งสี่ซึ่งอยู่นิ่งรอบ ๆ โรเตเตอร์และโรเตเตอร์แทนแม่เหล็กถาวรที่หมุน เมื่อใดก็ตามที่ขดลวดรวมพลังโดยการใช้กระแสสนามแม่เหล็กไฟฟ้าจะถูกสร้างขึ้นส่งผลให้เกิดการหมุนของโรเตเตอร์ (แม่เหล็กถาวร) ขดลวดควรได้รับพลังงานตามลำดับเฉพาะเพื่อให้โรเตเตอร์หมุน บนพื้นฐานของ "ลำดับ" นี้เราสามารถแบ่งวิธีการทำงานของUnipolar stepper motor ออกเป็นสามโหมด: โหมด Wave drive, โหมด full step drive และ half step drive
โหมดขับคลื่น: ในโหมดนี้หนึ่งขดลวดจะถูกกระตุ้นในแต่ละครั้งขดลวดทั้งสี่จะได้รับพลังงานทีละม้วน สร้างแรงบิดน้อยกว่าเมื่อเทียบกับโหมดขับเคลื่อนแบบเต็มขั้นตอน แต่ใช้พลังงานน้อยกว่า ต่อไปนี้เป็นตารางสำหรับการสร้างโหมดนี้โดยใช้ไมโครคอนโทรลเลอร์หมายความว่าเราต้องให้ลอจิก 1 กับขดลวดในลักษณะตามลำดับ
ขั้นตอน |
ก |
ข |
ค |
ง |
1 |
1 |
0 |
0 |
0 |
2 |
0 |
1 |
0 |
0 |
3 |
0 |
0 |
1 |
0 |
4 |
0 |
0 |
0 |
1 |
โหมดขับเคลื่อนเต็ม:ในนี้ขดลวดสองตัวจะได้รับพลังงานในเวลาเดียวกันทำให้เกิดแรงบิดสูง การใช้พลังงานสูงขึ้น เราจำเป็นต้องให้ลอจิก 1 ถึงสองขดลวดในเวลาเดียวกันจากนั้นให้ขดลวดสองตัวถัดไปและอื่น ๆ
ขั้นตอน |
ก |
ข |
ค |
ง |
1 |
1 |
1 |
0 |
0 |
2 |
0 |
1 |
1 |
0 |
3 |
0 |
0 |
1 |
1 |
4 |
1 |
0 |
0 |
1 |
โหมด Half Drive:ในโหมดนี้หนึ่งและสองขดลวดจะได้รับพลังงานหรืออีกทางหนึ่งหมายความว่าประการแรกหนึ่งขดลวดจะได้รับพลังงานจากนั้นขดลวดสองขดจะได้รับพลังงานจากนั้นอีกครั้งหนึ่งขดลวดจะได้รับพลังงานจากนั้นอีกสองครั้ง นี่คือการรวมกันของโหมดขับเคลื่อนเต็มและคลื่นและใช้เพื่อเพิ่มการหมุนเชิงมุมของมอเตอร์
ขั้นตอน |
ก |
ข |
ค |
ง |
1 |
1 |
0 |
0 |
0 |
2 |
1 |
1 |
0 |
0 |
3 |
0 |
1 |
0 |
0 |
4 |
0 |
1 |
1 |
0 |
5 |
0 |
0 |
1 |
0 |
6 |
0 |
0 |
1 |
1 |
7 |
0 |
0 |
0 |
1 |
8 |
1 |
0 |
0 |
1 |
การเชื่อมต่อ Stepper Motor กับไมโครคอนโทรลเลอร์ 8051
การเชื่อมต่อกับ 8051 นั้นง่ายมากเราเพียงแค่ให้ 0 และ 1 กับสี่สายของมอเตอร์สเต็ปเปอร์ตามตารางด้านบนขึ้นอยู่กับโหมดที่เราต้องการเรียกใช้สเต็ปเปอร์มอเตอร์ และควรต่อสายไฟสองเส้นเข้ากับแหล่งจ่ายไฟ 12v ที่เหมาะสม (ขึ้นอยู่กับสเต็ปเปอร์มอเตอร์) ที่นี่เราได้ใช้มอเตอร์แบบ unipolar stepper เราได้เชื่อมต่อปลายทั้งสี่ของขดลวดกับสี่พินแรกของพอร์ต 2 ของ 8051 ผ่าน ULN2003A
8051 ไม่ได้ให้ในปัจจุบันพอที่จะขับขดลวดดังนั้นเราจึงจำเป็นต้องใช้ไดรเวอร์ปัจจุบัน IC ที่เป็น ULN2003A ULN2003A คืออาร์เรย์ของคู่ทรานซิสเตอร์ NPN Darlington เจ็ดคู่ คู่ดาร์ลิงตันสร้างขึ้นโดยการเชื่อมต่อทรานซิสเตอร์สองขั้วเพื่อให้ได้การขยายกระแสสูง ใน ULN2003A พิน 7 พินคือพินอินพุตและพิน 7 พินเป็นพินเอาท์พุตสองพินสำหรับ Vcc (พาวเวอร์ซัพพลาย) และกราวด์ ที่นี่เรากำลังใช้สี่ขาเข้าและขาออกสี่ขา เรายังสามารถใช้ L293D IC แทน ULN2003A สำหรับการขยายกระแสไฟฟ้า
คุณต้องหาสายขดลวดสี่เส้นและสายไฟทั่วไปสองเส้นอย่างระมัดระวังมิฉะนั้นมอเตอร์จะไม่หมุน คุณสามารถค้นหาได้โดยการวัดความต้านทานโดยใช้มัลติมิเตอร์มัลติมิเตอร์จะไม่แสดงค่าที่อ่านได้ระหว่างสายไฟของสองเฟส ลวดทั่วไปและอีกสองสายในเฟสเดียวกันควรแสดงความต้านทานเท่ากันและจุดสิ้นสุดทั้งสองของขดลวดทั้งสองในเฟสเดียวกันจะแสดงความต้านทานสองเท่าเมื่อเทียบกับความต้านทานระหว่างจุดร่วมและจุดสิ้นสุดหนึ่งจุด
การแก้ไขปัญหา
หากมอเตอร์ของคุณไม่หมุนหรือสั่น แต่ไม่หมุนคุณต้องตรวจสอบรายการตรวจสอบต่อไปนี้:
- ขั้นแรกให้ตรวจสอบการเชื่อมต่อวงจรและรหัส
- หากวงจรและรหัสใช้ได้ให้ตรวจสอบว่าสเต็ปเปอร์มอเตอร์ได้รับแรงดันไฟฟ้าที่เหมาะสม (โดยทั่วไปคือ 12v) มิฉะนั้นจะสั่น แต่ไม่หมุน
- หากแหล่งจ่ายดีให้ตรวจสอบจุดสิ้นสุดของขดลวดทั้งสี่ซึ่งเชื่อมต่อกับ ULN2003A ขั้นแรกให้ค้นหาจุดสิ้นสุดทั่วไปสองจุดและเชื่อมต่อกับ 12v จากนั้นเชื่อมต่อสายไฟอีกสี่สายที่เหลือเข้ากับ ULN2003A และลองใช้ชุดค่าผสมที่เป็นไปได้ทั้งหมดจนกระทั่งมอเตอร์สตาร์ท หากคุณไม่ได้เชื่อมต่อตามลำดับที่เหมาะสมมอเตอร์ก็จะสั่นแทนที่จะหมุน
นี่คือรหัสสำหรับโหมด Wave step และโหมด full wave คุณสามารถคำนวณค่าสำหรับ PORT P2 สำหรับโหมด half wave ได้อย่างง่ายดาย