การควบคุมมอเตอร์ไฟฟ้ากระแสตรง

download all demo files:Motor_Encoder

บทนำ

มอเตอร์ไฟฟ้ากระแสตรง หรือดีซีมอเตอร์ (DC Motor) เป็นอุปกรณ์ที่แปลงพลังงานไฟฟ้าให้เป็นพลังกล โครงสร้างภายใน DC motor ประกอบด้วยส่วนหลักๆ สองส่วน ได้แก่ แม่เหล็กถาวรและแกนขดลวด นอกจากนี้ยังมีแปรงถ่าน (Brush) ซึ่งเป็นส่วนเชื่อมต่อเพื่อรับพลังงานไฟฟ้าภายนอกไปยังขดลวดของมอเตอร์ เมื่อขดลวดได้รับไฟฟ้ากระแสตรง จะมีถูกเหนี่ยวนำให้เกิดสนามแม่เหล็กรอบๆ รอบขดลวด

รูป 1-1 ตัวอย่างมอเตอร์ไฟฟ้ากระแสตรง

รูป 1-1 ตัวอย่างมอเตอร์ไฟฟ้ากระแสตรง

รูป 1‑1 แสดงลักษณะภายนอกของมอเตอร์ไฟฟ้ากระแสตรง ซึ่งสังเกตได้จากสายของมอเตอร์จะมีเพียงสองเส้น เมื่อเราต่อมอเตอร์กับแหล่งจ่ายไฟกระแสตรงภายนอก เช่น ถ่านหรือแบตเตอรี่   มอเตอร์จะหมุน หากเราต่อไฟสลับขั้ว มอเตอร์จะหมุนในทิศตรงกันข้าม หากต้องการลดความเร็วของมอเตอร์ เราเพียงปรับแรงดันของแหล่งจ่ายไฟ เนื่องจากมอเตอร์ไฟฟ้ากระแสตรงมีราคาถูกและใช้งานง่าย เราจึงพบการนำมอเตอร์ไฟฟ้ากระแสตรง มาใช้งานได้หลากหลาย เช่น ของเล่นขนาดเล็ก จักรยานไฟฟ้า แขนกลหุ่นยนต์และเครื่องจักรต่างๆ ในโรงงานอุตสาหกรรม

เนื่องจาก DC motor ต้องใช้กระแสสูงในการทำงาน ดังนั้น Microcontroller จะไม่สามารถเชื่อมต่อโดยตรง กับ DC Motor ได้ จึงต้องมีชุดขับกระแส

รู้จักชุดขับกระแสสำหรับ DC Motor

ชุดขับกระแสดีซีมอเตอร์ส่วนใหญ่จะเป็นแบบ H-Bridge ซึ่งวงจรประกอบด้วยทรานซิสเตอร์หรือมอตเฟส โดยทำหน้าที่เป็นสวิตซ์เปิดปิด จำนวน 4 ชุด (Q1-Q4) โดยต่อกับ DC Motor ดังรูป 1‑2(a) ซึ่งสามารถควบคุมการทิศทางการไหลของกระแสได้ เมื่อส่งสัญญาณควบคุมให้ทรานซิสเตอร์ Q1 และ Q4 ทำงาน และปิดการทำงานของทราซิสเตอร์ Q2 และ Q3 กระแสจะไหลจากจุด A ไปจุด B ดังรูป 1‑2 (b) จึงทำให้มอเตอร์เริ่มหมุน

เมื่อส่งสัญญาณควบคุมให้ทรานซิสเตอร์ Q2 และ Q3 ทำงาน และปิดการทำงานของทราซิสเตอร์ Q1 และ Q4 กระแสจะไหลจากจุด B ไปจุด A ดังรูป 1‑2 (c) เป็นผลให้มอเตอร์หมุนกลับทิศ

รูป 1-2 การทำงานของวงจร H-Bridge สำหรับควบคุมการหมุนของ DC Motor

รูป 1-2 การทำงานของวงจร H-Bridge สำหรับควบคุมการหมุนของ DC Motor

ปัจจุบันวงจร H-Bridge มีอยู่ในรูปของไอซีวงจรรวม เช่น ไอซีเบอร์ L293D หรือ L298N เพื่อลดขนาดของอุปกรณ์ และง่ายต่อการใช้งาน เพียงต่อสัญญาณ PWM และสัญญาณควบคุมทิศทาง (1 บิตหรือ 2 บิต) ดังรูป 1‑3

รูป 1-3 การเชื่อมต่อ Microcontroller กับชุดขับกระแสดีซีมอเตอร์แบบ H-Bridge

รูป 1-3 การเชื่อมต่อ Microcontroller กับชุดขับกระแสดีซีมอเตอร์แบบ H-Bridge

อุปกรณ์ที่ใช้ในการทดลอง

รูป 1‑4 แสดงบอร์ด aMG MotorCtrl2 สำหรับการทดลองปรับความเร็วของ DC Motor ด้วยสัญญาณ PWM บนบอร์ดติดตั้งไอซี LB1836M จากบริษัท ON Semiconductor ซึ่งสามารถขับกระแสได้สูงสุด 1 A และสามารถควบคุมความเร็วและทิศทางของ DC Motor ได้ 2 ชุด

รูป 1-4 บอร์ด aMG MotorCtrl2

รูป 1-4 บอร์ด aMG MotorCtrl2

รูป 1‑5 แสดงวิธีการควบคุมทิศทางของ DC motor โดยใช้สัญญาณควบคุมทิศทาง 2 บิต จึงทำให้มีโหมดการทำงาน 4 แบบได้แก่ หมุนไปข้างหน้า (Forward) หมุนกลับทาง (Reverse) หยุดกระทันหัน (Brake) และหยุดแบบหมุนอิสระ (Standby)

รูป 1-5 การใช้งานไอซี LB1836M [1, p. 3]

รูป 1-5 การใช้งานไอซี LB1836M [1, p. 3]

สำหรับมอเตอร์ที่ใช้ในการทดลองกับบอร์ด aMG MotorCtrl2 แนะนำให้ใช้รุ่น Interactive Servo Motor จากชุด Lego Mindstorm NXT ซึ่งง่ายต่อการพัฒนาหุ่นยนต์ เช่น รถวิ่งตามเส้น Segway และแขนกล ชุดมอเตอร์มีคุณสมบัติทางเทคนิคดังนี้

  1. ชุดเกียร์ 1 ต่อ 48 สำหรับลดความเร็วรอบและเพิ่มแรงบิดที่ปลาย
  2. จานเอนโค้ดเดอร์ 12 พัลส์ต่อรอบ โดยหมุนปลายหนึ่งรอบจะให้สัญญาณ 180 พัลส์
  3. สามารถทำงานโดยใช้ไฟเลี้ยง 7.5 – 9.0V
  4. ขั้วสายต่อแบบ RJ12 มีสายขับกระแสมอเตอร์ สายสัญญาณ Encoder รวมอยู่ด้วยกัน
รูป 1-6 ภายใน Interactive Servo Motor (Image provided by LEGO education)

รูป 1-6 ภายใน Interactive Servo Motor (Image provided by LEGO education)

การทดลองปรับความเร็วของ DC Motor ด้วยสัญญาณ PWM

จุดประสงค์

  • เพื่อให้ผู้ใช้งานเข้าใจการทำงานของชุดขับกระแส DC Motor ได้
  • เพื่อให้ผู้ใช้งานสามารถปรับความเร็วของ DC Motor ด้วยสัญญาณ PWM ได
รูป 1-7 อุปกรณ์สำหรับการทดลองปรับความเร็วของมอเตอร์

รูป 1-7 อุปกรณ์สำหรับการทดลองปรับความเร็วของมอเตอร์

รูป 1‑7 แสดงอุปกรณ์สำหรับการทดลองปรับความเร็วของมอเตอร์ โดยมีขั้นตอนการเตรียม ดังนี้

  1. ติดตั้งบอร์ด aMG MotorCtrl2 บนบอร์ด aMG F4 Connect หากไม่มีบอร์ด aMG F4 Connect ให้ใช้สายเชื่อมต่อ 3.3V และ GND กับบอร์ด STM32F4DISCOVERY ได้โดยตรง
  2. ไฟเลี้ยงสำหรับขับมอเตอร์ ควรใช้แหล่งจ่ายไฟจากหม้อแปลง 7.5 ถึง 9.0V โดยต่อลงบนบอร์ด aMG MotorCtrl2 ที่ขา VS และขา GND
  3. เชื่อมต่อ Potentiometer เข้ากับขา PA5 เพื่อปรับ Duty Cycle ของสัญญาณ PWM (ขา PA0)
  4. เชื่อมต่อสายสัญญาณควบคุม โดยต่อขา PA0 เข้ากับขา Pa สำหรับปรับความเร็ว และต่อขา PC0, PC1 เข้ากับขา Da1, Da2 ตามลำดับ
  5. เชื่อมต่อ Lego Motor เข้ากับพอร์ต CN1

รูป 1‑8 แสดง Simulink Model สำหรับการทดลองปรับความเร็วของมอเตอร์ ภายในประกอบด้วยส่วนปรับ Duty Cycle ของสัญญาณ PWM ด้วยตัวต้านทานปรับค่าได้ ซึ่งผู้ใช้งานสามารถศึกษาวิีธีการใช้งาน PWM Block ได้จากที่นี่ และส่วนรับสัญญาณจากสวิตซ์ปุ่มกด SW1 และ SW2 เพื่อควบคุมทิศทางการหมุนของมอเตอร์

รูป 1-8 Simulink model สำหรับการทดลองปรับความเร็วของมอเตอร์

รูป 1-8 Simulink model สำหรับการทดลองปรับความเร็วของมอเตอร์

เมื่อ Download model ลงในบอร์ด STM32F4DISCOVERY และต่อไฟเลี้ยงจากแหล่งจ่ายไฟภายนอก เมื่อกดปุ่ม SW1 ค้างไว้ มอเตอร์จะหมุนในทิศทางดังรูป 1‑9 เมื่อปล่อยสวิตซ์ SW1 มอเตอร์จะค่อยๆหยุด (Standby) เมื่อกดปุ่ม SW2 ค้างไว้มอเตอร์จะหมุนในทิศทางตรงกันข้าม เมื่อกดสวิตซ์ทั้งสองพร้อมกัน มอเตอร์จะหยุดหมุนกระทันหัน (Break)

รูป 1-9 แสดงทิศทางการหมุนของมอเตอร์ เมื่ดกดสวิตซ์

รูป 1-9 แสดงทิศทางการหมุนของมอเตอร์ เมื่ดกดสวิตซ์

idea_rzW26โจทย์เสริม หากต้องการใช้ Potentiometer ปรับทั้งความเร็วและทิศทางการหมุนของ DC motor ซึ่งไม่ต้องใช้สวิตซ์กดปุ่ม โดยมีเงื่อนไขการทำงานดังนี้

เมื่อค่าที่อ่านได้มากกว่า 1.75V ซึ่งเป็นตำแหน่งกึ่งกลางของ Potentiometer ให้เริ่มหมุน Forward และหมุนด้วยความเร็วสูงสุดเมื่อค่าที่อ่านได้เท่ากับ 3.3 V เมื่อค่าที่อ่านได้น้อยกว่า 1.75V ให้เริ่มหมุน Reverse และหมุนด้วยความเร็วสูงสุดเมื่อค่าที่อ่านได้เท่ากับ 0.0 V

รูป 1-10 Simulink model สำหรับการทดลองควบคุมมอเตอร์ด้วย Potentiometer

รูป 1-10 Simulink model สำหรับการทดลองควบคุมมอเตอร์ด้วย Potentiometer

จากการวิเคราะห์เงื่อนไขดังกล่าว เราสามารถเขียนเป็น Simulink Model ได้ดังรูป 1-10 โดยมีคำอธิบายดังนี้

  1. เมื่อนำค่าที่อ่านได้ซึ่งอยู่ในช่วง 0 ถึง 4095 มาลบกับค่ากึ่งกลางที่กำหนดไว้ (=2047) ดังนั้น ค่าที่อ่านได้จาก Potentiometer จึงเปลี่ยนมาอยู่ในช่วง -2047 ถึง 2048
  2. ทิศทางการหมุนสามารถกำหนดได้จากการตรวจสอบทางโลจิก เช่น ถ้าค่าอ่านได้มากกว่าหรือเท่ากับ 0 ให้หมุน Forward น้อยกว่า 0 ให้หมุน Reverse
  3. กำหนดความเร็วการหมุน โดบปรับค่า Duty Cycle อย่างไรก็ตาม Basic PWM Block รับค่า Duty Cycle ที่อยู่ในช่วง 0 ถึง 100 เท่านั้น ดังนั้น การแปลงค่าที่อ่านได้จากโมดูล ADC เป็น Duty Cycle จึงต้องแบ่งออกเป็นสองกรณี ดังรูป 1‑10

การอ่านตำแหน่งจากเอนโค้ดเดอร์

งานควบคุมตำแหน่งหรือการเคลื่อนที่ด้วยมอเตอร์ พบมากในเครื่องจักรอัตโนมัติและหุ่นยนต์ต่างๆ ในโรงงานอุตสาหกรรม เพื่อเพิ่มความรวดเร็วและแม่นยำในการทำงาน ระบบควบคุมแบบป้อนกลับจึงความสำคัญมาก โดยข้อมูลตำแหน่งหรือความเร็วของมอเตอร์ที่อ่านได้ จะถูกป้อนกลับไปยังส่วนประมวลผล เพื่อปรับสัญญาณควบคุมให้เหมาะสม

รู้จักกับ Rotary Encoder

เอนโค้ดเดอร์แบบโรตารี่ (Rotary Encoder) เป็นอุปกรณ์ชนิดหนึ่งที่วัดตำแหน่งมุมหรือความเร็วของการหมุนของแกนต่างๆ ภายในประกอบด้วยแผ่นวงกลมซึ่งติดตั้งกับแกนหมุน และเซนเซอร์แสงที่มีตัวรับและตัวส่ง จำนวน 2 ชุด บนแผ่นวงกลมจะมีช่องโปร่งแสงสลับกับช่องทึบแสง ซึ่งวางอยู่ระหว่างชุดเซนเซอร์แสงดังรูป 2‑1 โดยความละเอียดในการวัดตำแหน่งขึ้นอยู่กับจำนวนช่องต่อหนึ่งรอบ เช่น เอนโค้ดเดอร์ที่มีจำนวนช่อง 180 ช่องต่อรอบ สามารถวัดมุมได้ละเอียดต่ำสุด 360/180 = 2.0 องศา

รูป 2-1 โครงสร้างภายในทั่วไปของเอนโค้ดเดอร์

รูป 2-1 โครงสร้างภายในทั่วไปของเอนโค้ดเดอร์

เมื่อแกนของเอนโค้ดเดอร์เริ่มหมุน ช่องบนแผ่นวงกลมจะวิ่งผ่านตัดแสงของเซนเซอร์ ตัวรับของเซนเซอร์จะส่งสัญญาณพัลส์ตามจังหวะการติดหรือดับของแสงที่ลอดผ่านจากช่อง เมื่อนำสัญญาณจากเซนเซอร์ไปต่อเข้ากับวงจรนับสัญญาณ ระบบจึงสามารถรับรู้ได้ว่า แกนหมุนไปแล้วกี่องศา

จากรูป 2‑1 สังเกตได้ว่า แผ่นวงกลมจะมีช่องโปร่งแสงอยู่ 2 แถวซึ่งวางให้เหลื่อมกัน เพื่อการตรวจจับทิศทางการหมุน เช่นหมุนตามเข็มนาฬิกา (CW) และหมุนทวนเข็มนาฬิกา (CCW) เมื่อติดตั้งเซนเซอร์แสงจะส่งสัญญาณพัลส์ โดยมีเฟสต่างกัน 90 องศาดังรูป 2‑2 ซึ่งลักษณะของเฟสจะเปลี่ยนไปตามทิศทางการหมุนของแกน ยกตัวอย่างเช่น เมื่อแกนหมุนตามเข็มนาฬิกา สัญญาณจาก Channel A จะนำหน้า Channel B เมื่อแกนหมุนทวนเข็มนาฬิกา สัญญาณจาก Channel A จะล้าหลัง Channel B เป็นต้น

รูป 2-2 ลักษณะของสัญญาณจากเอนโค้ดเดอร์เฟสต่างกัน 90 องศา

รูป 2-2 ลักษณะของสัญญาณจากเอนโค้ดเดอร์เฟสต่างกัน 90 องศา

วิธีตรวจจับทิศทางการหมุน ต้องใช้สัญญาณพัลส์ทั้งสองชุดกับวงจร Decoder เพื่อระบุว่าทิศทางการหมุน เช่น หมุนทิศ CW ให้แสดงค่าเป็น 0 และ หมุนทิศ CCW ให้แสดงค่าเป็น 1 จากนั้นวงจรนับสัญญาณจะเพิ่มหรือลดจำนวน ขึ้นอยู่กับค่าที่อ่านได้จาก Decoder

นอกจากนี้การใช้สัญญาณที่มีเฟสต่างกัน 90 องศามีข้อดีอีกอย่าง คือ ผู้ใช้งานสามารถปรับความละเอียดของการนับได้ แสดงได้ดังรูป 2‑3

รูป 2-3  การอ่านสัญญาณเอนโค้ดเดอร์แบบ Quadature

รูป 2-3 การอ่านสัญญาณเอนโค้ดเดอร์แบบ Quadrature

ให้สัญญาณจาก A เป็นสัญญาณอ้างอิง เมื่อเลือกวิธีการนับแบบหนึ่งเท่า (x1) ระบบจะนับเมื่อพบขอบขาขึ้นของสัญญาณ A ซึ่งมีค่าเท่ากับ 3 พัลส์ เมื่อเลือกวิธีการนับแบบสองเท่า (x2) ระบบจะนับเมื่อพบทั้งขอบขาขึ้นและขอบขาลงของสัญญาณ A จึงมีค่าเท่ากับ 6 พัลส์ซึ่งเป็นสองเท่าของจำนวนพัลส์ของสัญญาณ A ในขณะเดียวกัน เมื่อเลือกวิธีการนับแบบสี่เท่า (x4) ระบบนับเมื่อพบทั้งขอบขาขึ้นและขอบขาลงทั้งสัญญาณ A และ B จึงมีค่าเท่ากับ 12 พัลส์ซึ่งเป็นสี่เท่าของจำนวนพัลส์ของสัญญาณ A

หากแผ่นจานของเอนโค้ดเดอร์มี 180 ช่อง และเลือกวิธีการนับแบบสี่เท่า จำนวนช่องที่นับได้ต่อหนึ่งรอบจะเท่ากับ 180 x 4 = 720 ช่อง มุมที่วัดได้จะมีความละเอียดต่ำสุด 360/720 = 0.5 องศา เป็นต้น

ไมโครคอนโทรลเลอร์ตระกูล STM32 มีโมดูลตรวจจับและนับสัญญาณจากภายนอก รวมถึงการอ่านค่าจากเอนโค้ดเดอร์ ซึ่งป็นส่วนหนึ่งของโมดูลไทเมอร์ เมื่อเชื่อมต่อสัญญาณจากเอนโค้ดเดอร์ทั้ง Channel A และ Channel B ไปยังไมโครคอนโทรลเลอร์ ค่า Counter จะนับเพิ่มหรือลดตามจังหวะของสัญญาณที่รับได้ ซึ่งช่วยให้ผู้ใช้งานลดขั้นตอนการทำวงจรหรือเขียนโปรแกรมตรวจจับสัญญาณเอนโค้ดเดอร์ เพียงแค่ตั้งค่าการใช้งานโมดูล Timer ต่อสายสัญญาณ แล้วนำค่า Counter ที่นับได้มาใช้ทันที

ในบทเรียนนี้ จะแสดงวิธีการอ่านค่าจาก Encoder โดยใช้บอร์ด STM32F4DISCOVERY ซึ่งมีโมดูล Timer ทั้งหมด 15 ตัว แต่โมดูลที่สามารถรองรับการทำงานแบบ Encoder มีทั้งหมด 6 ชุด ได้แก่ Timer 1, 2 – 5 และ 8 [2]

วิธีการใช้งาน Encoder Read Block

สำหรับ Encoder Block อยู่ใน Simulink library >> Waijung Blockset >> STM32F4 target >> On Peripheral Chip >> TIM โดยมีลักษณะและคุณสมบัติดังนี้

รูป 2-4  ลักษณะและการตั้งค่าของ Encoder Read Block

รูป 2-4 ลักษณะและการตั้งค่าของ Encoder Read Block

การทำงานของ Encoder Read Block นับสัญญาณจากเอนโค้ดเดอร์ทั้ง Channel A และ B ซึ่งจะนับแบบสี่เท่า (x4) โดยส่งค่าที่นับได้ผ่านพอร์ต Position (Count) นอกจากนี้ยังมีทิศทางการหมุน (Direction) เป็นสัญญาณโลจิก 0 หรือ 1

เมื่อเลือกช่อง Reset counter after every counter read ค่าของ Counter จะเริ่มจากศูนย์ใหม่ หลังจากอ่านค่าที่นับได้

การทดลองอ่านตำแหน่งมุมของแกนมอเตอร์

จุดประสงค์

  • เพื่อให้ผู้ใช้งานสามารถนับค่าจาก Encoder เพื่อวัดตำแหน่งการหมุนได้
รูป 2-5 อุปกรณ์สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์

รูป 2-5 อุปกรณ์สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์

รูป 2‑5 แสดงอุปกรณ์สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์ โดยมีขั้นตอนการเตรียมอุปกรณ์เหมือนการทดลองปรับความเร็วมอเตอร์ในบทที่ผ่านมา แต่เพิ่มในส่วนของการเชื่อมสายสัญญาณเอนโค้ดเดอร์และบอร์ด aMG USB Converter N สำหรับส่งค่าตำแหน่งที่อ่านได้จากเอนโค้ดเดอร์ผ่านสาย USB

รูป 2-6 Simulink model สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์

รูป 2-6 Simulink model สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์

รูป 2‑6 แสดง Simulink Model สำหรับการทดลองอ่านค่าสัญญาณจากเอนโค้ดเดอร์ ภายในประกอบด้วยSubsystem Block สำหรับควบคุมความเร็วมอเตอร์ด้วย Potentiometer และสวิตซ์ปุ่มกดดังรูป 1‑8 ค่าที่ได้จาก Encoder Read Block เป็นตัวแปรชนิดจำนวนเต็ม 16 บิตแบบไม่มีเครื่องหมาย รูป 2‑7 แสดงตัวอย่างการแปลงค่าที่อ่านได้ให้เป็นจำนวนเต็มแบบมีเครื่องหมาย

รูป 2-7 อธิบายการแปลงค่าจาก Encoder Read Block ให้เป็นจำนวนเต็มแบบมีเครื่องหมาย

รูป 2-7 อธิบายการแปลงค่าจาก Encoder Read Block ให้เป็นจำนวนเต็มแบบมีเครื่องหมาย

เมื่อ Download Model ลงบอร์ด STM32F4DISCOVERY แล้วเชื่อมสาย USB กับคอมพิวเตอร์และกดสวิตซ์ให้มอเตอร์หมุน ค่าที่อ่านได้จากเอนโค้ดเดอร์จะแสดงบนหน้าต่างโปรแกรม TeraTerm ดังรูป 2‑8

รูป 2-8 หน้าต่างโปรแกรม Tera Term สำหรับการทดลองอ่านค่าตำแหน่งจากสัญญาณเอนโค้ดเดอร์

รูป 2-8 หน้าต่างโปรแกรม Tera Term สำหรับการทดลองอ่านค่าตำแหน่งจากสัญญาณเอนโค้ดเดอร์

ค่าที่ได้มาเป็นหน่วยนับจำนวนพัลส์ หากต้องการเปลี่ยนหน่วยแสดงผลเช่น หน่วยองศา ผู้ใช้งานต้องศึกษาข้อมูลจากคู่มือการใช้งานของอุปกรณ์ เช่น จำนวนช่องของจานเอนโค้ดเดอร์ อัตราทดของชุดเกียร์ เพื่อปรับ Gain ให้เหมาะสม

สำหรับตัวอย่างนี้ หมุนแกนหนึ่งรอบ (360 องศา) จะให้สัญญาณ 180 พัลส์ เมื่อคูณ x4 จะได้จำนวนพัลส์720 พัลส์ต่อรอบ หากต้องการให้แสดงค่าเป็นหน่วย องศา

Gain = 360 / จำนวนพัลส์ต่อรอบ = 0.2

หากต้องการให้แสดงค่าเป็นหน่วย รอบ

Gain = 1 / จำนวนพัลส์ต่อรอบ = 0.0014

เมื่อใช้เครื่อง Oscilloscope วัดสัญญาณที่ขา Enc A1 และ Enc A2 ของบอร์ด aMG MotorCtrl2 ซึ่งจะแสดงลักษณะของสัญญาณดังรูป 2‑9

รูป 2-9 สัญญาณจากเอนโค้ดเดอร์ที่วัดได้จากเครื่อง Oscilloscope

รูป 2-9 สัญญาณจากเอนโค้ดเดอร์ที่วัดได้จากเครื่อง Oscilloscope

เอกสารอ้างอิง

  1. ONSemiconductor, “LB1836M Low-Saturation Bidirectional Motor Driver for Low-Voltage Drive,” 2013.
  2. STMicroelectronics, “STM32 F407xx Datasheet-production data [Online],” 2013.
  3. STMicroelectronics, “RM0090: STM32F40xxx Reference Manual [Online],” 2013.
  4. T. Bartelt, Industrial Control Electronic: Device, Systems & Applications, Newyork: Thomson Delmar Learning, 2006.
  5. Denney, “Incremental Optical Encoder,” [Online]. Available: http://thedenneys.org/pub/robot/encoders/. [Accessed Wednesday February 2002].
  6. P. Hurbain, “NXT motor internals,” [Online]. Available: http://philohome.com/nxtmotor/nxtmotor.htm. [Accessed 11 June 2014].