[Print][Back]

จุฬาลงกรณ์มหาวิทยาลัย

คณะวิศวกรรมศาสตร์

ภาควิชาวิศวกรรมคอมพิวเตอร์

2110262 Microprocessor Systems Lab.

ชื่อ ______________________________

เลขประจำตัว ________________________

หมายเลขเครื่อง ______________________

วันที่ ______________________________


5. การควบคุม DC และ Stepper Motor

วัตถุประสงค์

  1. เพื่อให้นิสิตคุ้นเคยกับการใช้วงจร Interface ต่างๆ มากขึ้น
  2. เพื่อให้นิสิตเข้าใจหลักการวงจรการขับ Motor อย่างง่าย
  3. เพื่อให้นิสิตเกิดทักษะในการเขียนโปรแกรมภาษา Assembly มากขึ้น

อุปกรณ์ที่แจกให้

ทฤษฎีที่เกี่ยวข้อง/อ้างอิง

ในการบังคับให้ DC Motor ทำงาน มีอยู่ 2 แนวทางที่นิยมใช้กันคือ การใช้ Relay และการใช้ Transistor ต่อกันเป็น H-Bridge อย่างไรก็ตามทั้ง 2 วิธีมีแนวทางที่คล้ายคลึงกัน ในที่นี้จะขอกล่าวเพียงลักษณะของวงจร H-Bridge โดยทั่วไป

หากต้องการให้ Motor หมุนตามเข็มสามารถทำได้โดยให้ A เป็น 1 และ B เป็น 0 และหากต้องการให้หมุนกลับทิศก็จะใช้ B เป็น 1 และ A เป็น 0 ส่วนที่ A และ B เป็น 1 หรือเป็น 0 ทั้งคู่จะไม่มีการหมุนเกิดขึ้น Transistor ทั้ง 4 ตัวจะทำหน้าทีเป็น Switch เปิดปิดสลับไปมา ในการควบคุมความเร็วของ DC นิยมใช้การจ่ายสัญญาณ เป็น PWM โดยหากต้องการให้หมุนเร็วก็จะจ่ายที่ Pulse ที่ความถี่สูง และหากต้องการให้หมุนช้าก็จะจ่าย Pulse ความถี่ต่ำ อย่างไรก็ตามการควบคุมความเร็วให้คงที่จะทำได้ค่อนข้างยากนอกเว้นแต่ว่าจะใช้ระบบควบคุมที่มีการป้อนกลับเข้ามาช่วย (Feed back control)

Stepper motor แบ่งออกได้เป็น 2 แบบตามลักษณะของโครงสร้างคือ Bipolar Stepper motor และ Unipolar Stepper motor ซึ่งทั้งสองแบบจะแตกต่างกันตามลักษณะของโครงสร้างภายใน อย่างไรก็ตามหลักในการขับให้ Stepper motor ทั้งสองแบบทำงานจะคล้ายคลังกัน คือการป้อน Pulse เป็นช่วงๆ เข้าไปยังส่วนต่างๆ เพื่อให้ stepper motor หมุนตามจำนวนองศาที่ต้องการ

โดยปกติ Stepper motor แบบ Bipolar จะมีราคาถูกและสามารถหาได้ง่ายกว่า (ตัวอย่างเช่น Stepper ที่ใช้ขับ Floppy Drive) การจะหมุนก็ทำได้โดยการใส่ Pulse เข้าไปที่ Coil ในกรณีนี้อาจจะต้องใช้วงจร H-Bridge เข้ามาช่วยในลักษณะเดียวกันกับ DC Motor

Bipolar stepper motor layout (diagram by Douglas W. Jones, used with permission)

Stepper motor แบบ Unipolar จะมีสายสัญญาณทั้งสิ้น 6 ขา ซึ่งข้อดีคือผู้ใช้ไม่จำเป็นต้องต่อวงจร H Bridge เพื่อขับวงจรดังกล่าว

Unipolar stepper motor layout (diagram by Douglas W. Jones, used with permission)

Sequence ทั้ง 2 อันต่อไปนี้ใช้สำหรับขับวงจร Stepper motor ทั้งสองแบบ แต่ Sequence ที่ 2 จะใช้ค่าของ Torque (หรือแรงบิด) สูงกว่า โดยสีแดงคือ VCC และ สีน้ำเงินคือ Ground

ที่มาของข้อมูล : http://library.solarbotics.net/pieces/parts_mech_steppers.html

การทดลอง

ให้นิสิตต่อวงจร H-Bridge เพื่อ ขับ DC และ Stepper Motor (ให้เลือกใช้ Port ใดก็ได้)

  1. จงเขียนโปรแกรมเพื่อให้อ่าน Input จาก EEPROM แล้วสั่งให้ DC Motor ทำงานหมุนไปหมุนกลับและหยุด ตามคำสั่งที่อ่านได้ดังรูปแบบต่อไปนี้
  2. 0000

    0000

    ระยะเวลาระหว่าง 0-5 วินาที

    0 ให้หยุด

    1 ให้หมุน ซ้าย

    2 ให้หมุน ขวา

    4 ให้หยุดการทำงาน (จบโปรแกรม)

    ตัวอย่างเช่น 10G 21H 32H 21H 50H 04H หมายความว่าให้อยู่กับที่ 1 วินาที หมุนซ้าย 2 วินาที หมุนขวา 3 วินาที หมุนซ้าย 1 วินาที หยุด 5 วินาที แล้วจึงหยุดทำงาน

  3. จงเขียนโปรแกรมเพื่อสั่งให้ Stepper Motor หมุน 30 องศา ทุก 1 วินาที
[Print][Back]