CHUMPHON TECHNICAL COLLEGE 30105-2007 MICROCONTROLLER ep.9 การควบคุมดีซีมอเตอร์ สเต็ปปิงมอเตอร์ และอาร์ซีเซอร์โวมอเตอร์ นายยศพล เจียรนัย แผนกวิชาช่างอิเล็กทรอนิกส์
86 แผนการจดั การเรียนรูหนว ยที่ 9 สอนครั้งท่ี 14-15 เร่ือง การควบคุมดีซีมอเตอร เซอรโวมอเตอรแ ละสเตป็ เปอรม อเตอร
87 ชื่อวิชา. ไมโครคอนโทรลเลอร แผนการจดั การเรยี นรทู ่ี 9 เวลาเรยี นรวม 10 ช่วั โมง ชื่อหนว ย การควบคมุ ดีซมี อเตอร เซอรโวมอเตอรแ ละสเตป็ เปอรมอเตอร อนคร้งั ที่ 14-15 ช่อื เร่อื ง การควบคุมดซี มี อเตอร เซอรโ วมอเตอรแ ละสเตป็ เปอรม อเตอร จำนวน 10 ชั่วโมง หวั ขอ เรือ่ ง 9.1 การควบคุมดซี ีมอเตอรด วย Arduino 9.2 การควบคุมสเต็ปปง มอเตอรด ว ย Arduino 9.3 การควบคุมอารซ ีเซอรโ วมอเตอรด วย Arduino สาระสำคญั การใชไอซีไมโครคอนโทรเลอรเปนตัวควบคุมการหมุนและทิศทางของมอเตอรไฟฟากระแสตรงนั้น จะตองมีสวนของ วงจร ที่เรียกวาวงจรขับมอเตอร (Driver) ในสวนของวงจรกลับทิศทางของมอเตอรสามารถที่จะใชรีเลยตอวงจรสวิตซ เพื่อกลับ ทิศทางของขั้วไฟฟากระแสตรง หรืออาจใชอุปกรณสารกึ่งตัวนำที่เปนวงจรขับกำลังเชน ทรานซิสเตอร มอสเฟต ในปจจุบันมี ผผู ลติ บอรดขบั มอเตอรก ระแสตรงโดยใชไอซเี บอร L298N จำหนว ยในทองตลาด สามารถตอ มอเตอรไ ฟฟา กระแสตรงได 2 ตัว ซ่ึง IN1, IN2 และ ENA ใชสำหรับควบคุมมอเตอรไฟฟากระแสตรงตัวที่ 1 สวน IN3, IN4 และ ENB ใชสำหรับควบคุมมอเตอรไฟฟา กระแสตรงตัวที่ 2 คาตัวเลข 255 ในฟงกชัน analogWrite(speedM1, 255) จะทำให PWM มีคา Duty cycle เทากับ 100 % เปนผล ใหมอเตอรห มุนดวยความเร็วสูงสุด ถาตองการใหหมุนชาลงสามารถทำไดโดยลดคาตัวเลขใหนอยลง แตตองไมนอยกวา 0 สวน คำสั่ง digitalWrite(IN1, LOW) และ digitalWrite(IN2, HIGH) เปนคำสั่งเพื่อใหมอเตอรไฟฟากระแสตรงหมุนหมนุ ตามเขม็ นาิกา ถา หากตอ งการใหม อเตอรห มนุ ในทิศทางตรงกันขามสามารถทำไดโ ดยกำหนดให IN1, IN2 มคี า ตรงกันขาม สมรรถนะหลัก (สมรรถนะประจำหนวย) แสดงความรูเ กี่ยวกับการควบคมุ ดซี ีมอเตอร เซอรโ วมอเตอรและสเตป็ เปอรมอเตอร สมรรถนะยอ ย (สมรรถนะการเรียนร)ู สมรรถนะทวั่ ไป (ทฤษฏี) 9.1 แสดงความรูเกย่ี วกบั การควบคุมดซี ีมอเตอรด ว ย Arduino สมรรถนะทีพ่ งึ ประสงค (ทฤษฏ)ี 9.1 เขยี นโปรแกรมภาษา C++ สำหรับควบคมุ การทำงานของดซี ีมอเตอรไ ดถ กู ตอง
88 ชอื่ วิชา. ไมโครคอนโทรลเลอร แผนการจดั การเรียนรูท่ี 9 เวลาเรยี นรวม 10 ชวั่ โมง ชอื่ หนว ย การควบคุมดีซีมอเตอร เซอรโวมอเตอรแ ละสเตป็ เปอรมอเตอร อนครง้ั ท่ี 14-15 ช่ือเรอ่ื ง การควบคุมดีซมี อเตอร เซอรโ วมอเตอรและสเต็ปเปอรม อเตอร จำนวน 10 ชั่วโมง สมรรถนะท่ัวไป (ปฏบิ ตั ิ) 9.2 แสดงความรูเกี่ยวกับการควบคุมสเตป็ ปง มอเตอรดวย Arduino 9.3 แสดงความรเู ก่ยี วกับการควบคมุ อารซีเซอรโวมอเตอรด ว ย Arduino สมรรถนะทีพ่ ึงประสงค (ปฏบิ ตั )ิ 9.2 เขยี นโปรแกรมภาษา C++ สำหรับควบคุมการทำงานของสเต็ปปงมอเตอรไดถกู ตอง 9.3 เขยี นโปรแกรมภาษา C++ สำหรับควบคมุ การทำงานของอารซ เี ซอรโ วมอเตอรไ ดถกู ตอ ง กิจกรรมการเรียนการสอน ในการจัดการเรียนการสอนรายวิชาไมโครคอนโทรลเลอร ไดก ำหนดกจิ กรรมการเรียนการสอนใหผ เู รยี นเกดิ การเรยี นรูโดยใชก ารจัดการเรยี นรแู บบบทบาทสมมติ ( Role p laying ) ดา นเทคนิคการจดั การเรียนการสอนแบบ MAIP โดย มีขัน้ ตอนในการดำเนินกจิ กรรมการเรยี นการสอน ดงั น้ี กิจกรรมการเรยี นการสอน (สอนครง้ั ที่ 14 ) เวลา 5 ชั่วโมง/สปั ดาห ๑.ผสู อนแจง จุดประสงคก ารเรยี นประจำสปั ดาห และนำเขา สูบทเรยี น ๒.ผสู อนถายทอดความรใู นหนว ยที่ 9 เรอ่ื ง การควบคุมเซอรโ ว สเตป็ ปงมอเตอรดวย Arduino ๓.ผสู อนแสดงใบงานเรื่องการควบคมุ เซอรโ ว สเต็ปปงมอเตอรด ว ย Arduino ๔.ผสู อนใหผ เู รียนปฏบิ ตั งิ านเขยี นแบบตามใบงานเร่อื งการควบคุมเซอรโ ว สเต็ปปงมอเตอรดว ย Arduino ๕.ผสู อนประเมนิ ผลการปฏบิ ตั ิงานของผูเรียนและใหผ เู รยี นสรปุ สาระสำคัญของเร่อื งที่เรยี นประจำสปั ดาห กจิ กรรมการเรียนการสอน (สอนครงั้ ที่ 15 ) เวลา 5 ช่วั โมง/สปั ดาห ๑.ผสู อนแจง จุดประสงคการเรยี นประจำสัปดาห และนำเขาสบู ทเรยี น ๒.ผสู อนถายทอดความรใู นหนว ยที่ 9 เรอ่ื ง การทำงานของอารซ เี ซอรโ วมอเตอรไ ดถกู ตอง ๓.ผสู อนแสดงใบงานเรอื่ งการทำงานของอารซ ีเซอรโ วมอเตอรไ ดถ ูกตอง ๔.ผสู อนใหผ ูเรยี นปฏบิ ัติงานเขยี นแบบตามใบงานเรื่องการทำงานของอารซีเซอรโ วมอเตอรไ ดถกู ตอ ง ๕.ผสู อนประเมินผลการปฏิบตั งิ านของผเู รียนและใหผ เู รียนสรปุ สาระสำคญั ของเรอ่ื งท่เี รยี นประจำสปั ดาห ส่อื การสอน ๑.เอกสารประกอบการสอน ๒.เอกสารประกอบการเรยี น ๓.สื่อนำเสนอ PowerPoint งานทีม่ อบหมาย/กจิ กรรม ใหนกั เรียนทำแบบฝกเสรมิ ทกั ษะตามใบงานทายหนวยการเรยี นท่ี 4 การวดั และประเมนิ ผล วธิ กี าร เครื่องมอื เกณฑ วดั ผล/ประเมินผล - ทำแบบฝก เสรมิ ทักษะทา ย - แบบฝก เสริมทักษะทา ย - ผา นเกณฑร อยละ ๖๐ หนว ย หนวย ๑.สมรรถนะท่พี ึงประสงค
89 ชือ่ วชิ า. ไมโครคอนโทรลเลอร แผนการจัดการเรยี นรูที่ 9 เวลาเรยี นรวม 10 ชั่วโมง ชื่อหนวย การควบคุมดีซีมอเตอร เซอรโวมอเตอรและสเตป็ เปอรม อเตอร สอนครง้ั ที่ 14-15 ชื่อเรื่อง การควบคมุ ดีซีมอเตอร เซอรโ วมอเตอรและสเต็ปเปอรม อเตอร จำนวน 10 ชั่วโมง 1. การควบคมุ ดีซีมอเตอรดวย Arduino 1.1 มอเตอรไ ฟฟา กระแสตรง (DC Motor) +V NC NC +V +M - NC NC NO NO +M - RelOaNy 1 Relay 2 NO NO OFF Relay Relay 2 O1FF ON 1.2 การควบคมุ ความเรว็ และทศิ ทางของมอเตอรไฟฟากระแสตรง +5V + VM IN1 +5V + VM IN2 IN1 OUT1 ควบคุมทศิ ทางการหมนุ + H-Bright M DC Motor IN2 Motor - Drive ควบคมุ ใคหวห บมคนุ มุ -คไมวหามมเุนร็ว ENA ENA OUT2 Motor 1 Motor 2 +V motor GND + 5 Vdc E IIEIINNNNNNA214B3
90 +5V + VM 16 MHz RESET DIGITA L (WPM ∼) IN1 EIINNN+12A5VHM-DBorritivgoeh+rOOtVUUMTT21 + -IOREF L AG∼∼RN∼1111E20319DF IN2 ENA M DC Motor R3 E.3SVE T 5V TX GN D RX GN D P OW E R ATmega328p ARDUINO 8 Vin ANALOG IN ON ∼∼567 ∼43 AAAAAA243150 UNO ICSP 2 TX 1 RX 0 2. การควบคุมสเตป็ ปง มอเตอรดว ย Arduino สเต็ปปงมอเตอรยูนิโพลารแ บบ Common ภายใน + V Common A Φ1 ROTOR A Φ2 B Φ3 B Φ4 + 12 V Stepper Motor ชนดิ Unipolar ไมโครคอนโทรลเลอ ร 1.5 kΩ ULN2003 D3 Φ1 ROTOR 1.5 kΩ D2 1.5 kΩD3 D1 Φ2 1.5 kΩ Φ3 D2 D0 Φ4 CommonD1 D0
91 3. การควบคุมเซอรโวมอเตอรดวย Arduino Drive Gear Output Spine P(oอtยeภู nาtยioในm)eter (อDยCภู Mายoใtนo)r Control Circuit Servo Case 0 องศา แกนหมนุ อารซีเซอรโ วมอเตอร 20 ms อยทู ตี่ ําแหนง 0 องศา 19.00 ms 1.00 ms 20 ms 45 องศา แกนหมนุ อารซีเซอรโวมอเตอร 18.75 ms อยูที่ตําแหนง 45 องศา 20 ms 1.25 ms 18.50 ms 20 ms 90 องศา แกนหมอนุ ยอทู าต่ี รําซ แเี ซหอนรง โว9ม0ออเตงศอาร 18.25 ms 1.50 ms 20 ms 135 องศา แกนหอมยนุูทอ่ตี าาํ รแซหีเนซงอร1โ 3ว5มออเงตศอาร 18.00 ms 1.75 ms 180 องศา แกนหมุนอารซ ีเซอรโวมอเตอร อยูท่ตี าํ แหนง 180 องศา 2.00 ms
92 ชื่อวชิ า. ไมโครคอนโทรลเลอร แผนการจดั การเรยี นรูที่ 9 เวลาเรียนรวม 10 ชั่วโมง ชื่อหนว ย การควบคุมดซี มี อเตอร เซอรโวมอเตอรแ ละสเตป็ เปอรมอเตอร อนครั้งที่ 14-15 ชอ่ื เร่อื ง การควบคุมดซี มี อเตอร เซอรโ วมอเตอรและสเตป็ เปอรมอเตอร จำนวน 10 ชั่วโมง ตอนท่ี 1 ใหก าเครอ่ื งหมายถูก √ ในขอ ท่ีคดิ วา ถูก และกาเคร่ืองหมายผดิ x ในขอท่ีคดิ วาผดิ ……… 1. โครงสรา งของ H-Bridge คลา ยกบั วงจรสวติ ช 4 ตวั ……… 2. ไอซเี บอร L298N สามารถควบคุมดีซมี อเตอรไ ด 2 ตัว ทำงานอิสระตอ กัน ……… 3. โมดลู H-Bridge Motor Drive หาก IN1 = 1, IN2 = 0, ENA = 1 มอเตอรจ ะไมห มนุ ……… 4. ฟงกช ัน analogWrite(speedM1, 255); ทำให PWM มคี า Duty cycle สูงสดุ ……… 5. สเต็ปปง มอเตอรช นดิ ยูนโิ พลารแ บบ Common ภายใน จะมีสายไฟจำนวน 6 เสน ……… 6. การกระตนุ สเต็ปปง มอเตอรแ บบ Full step single phase หมายถึงใหพ ัลสบ วกทลี ะเฟส เรียงกันไปอยา งตอ เนื่อง ……… 7. ฟงกช ัน myStepper.step(200); ในภาษา C++ หมายถงึ ใหส เต็ปปง มอเตอรห มุนดว ยความเรว็ 200 รอบตอ นาที ……… 8. ฟงกช ัน myservo.attach(3); ในภาษา C++ หมายถึงตอสายสัญญาณของอารซเี ซอรโ วทขี่ า A3 ……… 9. สัญญาณควบคมุ อารซ เี ซอรโ วมอเตอรชนิดหมนุ ได 180 องศา หากตองการใหห มนุ ไปที่ 90 องศา ใหป อนสญั ญาณพัลสบ วกดว ยเวลา 1.5 ms พลั สล บดวยเวลา 18.5 ms ……… 10. ฟง กชัน myservo.write(60);ในภาษา C++ หมายถึงใหอ ารซ ีเซอรโวมอเตอรห มุนไป 60 % ตอนท่ี 2 จงอธบิ ายสัน้ ๆ ใหไ ดใจความ 1. แหลงจายไฟฟา กระแสตรง +VM ในโมดลู H-Bridge Motor Drive ตองใชคา ใดขึน้ อยกู บั ............................ 2. PWM ยอ มาจาก .............................................................................................................................................. 3. คา duty cycle ของ PWM มหี นว ยวัดเปน .................................................................................................... 4. ในภาษา C++ ฟงกชัน analogWrite(11, 50); หมายถึง ................................................................................ 5. การขับสเต็ปปง มอเตอรแ บบใดใหกำลังไฟฟา สงู สดุ ......................................................................................... 6. ในภาษา C++ ฟงกช ัน myStepper.setSpeed(60); หมายถึง ...................................................................... 7. ในภาษา C++ ฟง กช ัน const int stepsPerRevolution = 200; หมายถงึ .................................................. 8. อารซีเซอรโวมอเตอรเ ปน มอเตอรไฟฟาขนาดเลก็ ที่สามารถควบคมุ ตำแหนง ความเร็ว และทิศทางการหมุน แบง เปน ...........ประเภท 9. ในภาษา C++ ฟง กชัน Servo myservo; หมายถงึ ........................................................................................ 10. ในภาษา C++ ฟงกชัน val = map(val, 0, 1023, 0, 180); หมายถึง .........................................................
93 ชื่อวชิ า. ไมโครคอนโทรลเลอร แผนการจัดการเรยี นรทู ี่ 9 เวลาเรียนรวม 10 ชวั่ โมง ชอ่ื หนวย การควบคุมดีซมี อเตอร เซอรโ วมอเตอรแ ละสเตป็ เปอรมอเตอร สอนครงั้ ท่ี 14-15 ชอื่ เรอื่ ง การควบคุมดซี มี อเตอร เซอรโ วมอเตอรและสเต็ปเปอรม อเตอร จำนวน 10 ชว่ั โมง การประเมิน 4321 ที่ รายการประเมิน 1 การมสี ว นรวมในการทํางานของกลุม 2 ความถกู ตองของเนอ้ื หา 3 ส่งิ ท่ีใชประกอบการนาํ เสนอ 4 รปู แบบการนาํ เสนอหนาชน้ั เรียน ชดั เจน เขาใจ งา ย 5 ตรงตอ เวลา กระตอื รือรน รอบคอบ ขอเสนอแนะ …………………………………………………………………………………………………………………………. …………..……………………………………………………………………………………………………………... ………………………………..………………………………………………………………………………………...
Search
Read the Text Version
- 1 - 10
Pages: