Search this site
Embedded Files
tklrobot.com
  • หน้าแรก
    • การติดตั้งโปรแกรม Arduino สำหรับเขียนคำสั่งหุ่นยนต์
  • ผู้จัดทำ
  • LookBas Nano
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5 การใช้จอ อ่านค่า sensor
    • LAB 6 การใช้จอ อ่านค่า MCP3008
    • LAB 7 การใช้งานมอเตอร์
    • LAB8 หุ่นยนต์เดินตามเส้น
    • LAB9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 สร้างเมนู
    • LAB12 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB13 หุ่นยนต์ทำภารกิจ
    • LAB14 เช็คสี
    • LAB15 ภารกิจกลาง
  • Kruro Nano
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
  • Nano Learning
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5 การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
  • TKL V.2 V.2.1
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
tklrobot.com
  • หน้าแรก
    • การติดตั้งโปรแกรม Arduino สำหรับเขียนคำสั่งหุ่นยนต์
  • ผู้จัดทำ
  • LookBas Nano
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5 การใช้จอ อ่านค่า sensor
    • LAB 6 การใช้จอ อ่านค่า MCP3008
    • LAB 7 การใช้งานมอเตอร์
    • LAB8 หุ่นยนต์เดินตามเส้น
    • LAB9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 สร้างเมนู
    • LAB12 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB13 หุ่นยนต์ทำภารกิจ
    • LAB14 เช็คสี
    • LAB15 ภารกิจกลาง
  • Kruro Nano
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
  • Nano Learning
    • Datasheet
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5 การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
  • TKL V.2 V.2.1
    • LAB 1 Digital Output
    • LAB 2 Digital Input
    • LAB 3 AnalogRead
    • LAB 4 การใช้จอแสดงผล
    • LAB 5การสั่งงานมอเตอร์
    • LAB 6 การใช้จอ อ่านค่า sensor
    • LAB7 หุ่นยนต์เดินตามเส้น
    • LAB 9 ใช้งานเซอโวมอเตอร์
    • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
    • LAB11 หุ่นยนต์ทำภารกิจ
  • More
    • หน้าแรก
      • การติดตั้งโปรแกรม Arduino สำหรับเขียนคำสั่งหุ่นยนต์
    • ผู้จัดทำ
    • LookBas Nano
      • Datasheet
      • LAB 1 Digital Output
      • LAB 2 Digital Input
      • LAB 3 AnalogRead
      • LAB 4 การใช้จอแสดงผล
      • LAB 5 การใช้จอ อ่านค่า sensor
      • LAB 6 การใช้จอ อ่านค่า MCP3008
      • LAB 7 การใช้งานมอเตอร์
      • LAB8 หุ่นยนต์เดินตามเส้น
      • LAB9 ใช้งานเซอโวมอเตอร์
      • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
      • LAB11 สร้างเมนู
      • LAB12 สร้างฟังก์ชั่นให้หุ่นยนต์
      • LAB13 หุ่นยนต์ทำภารกิจ
      • LAB14 เช็คสี
      • LAB15 ภารกิจกลาง
    • Kruro Nano
      • Datasheet
      • LAB 1 Digital Output
      • LAB 2 Digital Input
      • LAB 3 AnalogRead
      • LAB 4 การใช้จอแสดงผล
      • LAB 5การสั่งงานมอเตอร์
      • LAB 6 การใช้จอ อ่านค่า sensor
      • LAB7 หุ่นยนต์เดินตามเส้น
      • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
      • LAB 9 ใช้งานเซอโวมอเตอร์
      • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
      • LAB11 หุ่นยนต์ทำภารกิจ
    • Nano Learning
      • Datasheet
      • LAB 1 Digital Output
      • LAB 2 Digital Input
      • LAB 3 AnalogRead
      • LAB 4 การใช้จอแสดงผล
      • LAB 5 การสั่งงานมอเตอร์
      • LAB 6 การใช้จอ อ่านค่า sensor
      • LAB7 หุ่นยนต์เดินตามเส้น
      • LAB 8 สร้างฟังก์ชั่นให้หุ่นยนต์
      • LAB 9 ใช้งานเซอโวมอเตอร์
      • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
      • LAB11 หุ่นยนต์ทำภารกิจ
    • TKL V.2 V.2.1
      • LAB 1 Digital Output
      • LAB 2 Digital Input
      • LAB 3 AnalogRead
      • LAB 4 การใช้จอแสดงผล
      • LAB 5การสั่งงานมอเตอร์
      • LAB 6 การใช้จอ อ่านค่า sensor
      • LAB7 หุ่นยนต์เดินตามเส้น
      • LAB 9 ใช้งานเซอโวมอเตอร์
      • LAB10 ฟังก์ชั่นหาตำแหน่งเซอโวมอเตอร์
      • LAB11 หุ่นยนต์ทำภารกิจ


Servo Motor


LAB 9 การใช้งานเซอโวมอเตอร์


Servo Motor คืออะไร

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

ข้อควรระวัง

เซอโวมอเตอร์คือ ที่ใช้ในหุ่นยนต์ขนาดเล็ก ส่วนใหญ่แล้วจะไม่สามารหมุนรอบตัวเองได้ โดยเซอโวมอเตอร์จะทำงานได้แค่ 0 - 180 ํ ห้ามพยายามหมุนเฟืองมอเตอร์โดยเด็ดขาด เพราะจะทำให้เซอโวมอเตอร์เสียหายได้

การใช้งาน Servo Motor

ในโปรแกรม Arduino นั้นได้สร้าง library เพื่อใช้งาน เซอโวมอเตอร์มาให้แล้ว สามารถเรียกใช้งานได้เลย โดยระบุเรียก library ชื่อ servo.h

รูปแบบคำสั่ง

การเรียกใช้งานตาม library servo นั้น จะต้องกำหนดค่าอยู่ 3 ตำแหน่ง ดังนี้

1. ส่วนหัวของ code คือ อยู่ก่อน void setup

#include <Servo.h>     //เรียกใช้งาน library เซอโว
Servo sv1;                  // กำหนดชื่อเซอโวตัวที่ 1 ว่า sv1  
Servo sv2;                 // กำหนดชื่อเซอโวตัวที่ 2 ว่า sv2  

2. ส่วนของ void setup เพื่อกำหนด pin

  sv1.attach(7);         //กำหนดขา Servo ตัวที่ 1  ตัวบีบ เป็น Pin 7
  sv2.attach(8);        //กำหนดขา Servo ตัวที่ 2  ตัวบีบ เป็น Pin 8

3. คำสั่งใช้งาน

sv1.write(x);  // x คือ ตำแหน่งองศาของเซอโวตัวที่1ที่ต้องการให้เคลื่อนที่ไป
sv2.write(y);  // x คือ ตำแหน่งองศาของเซอโวตัวที่2ที่ต้องการให้เคลื่อนที่ไป

อุปกรณ์ประกอบ LAB

    1. บอร์ด LookBas Nano
    2. Servo Motor

ขั้นเตรียมการ

ตรวจสอบการเชื่อมต่อมอเตอร์ให้ถูกต้อง โดยมีวิธีเช็คดังนี้

1. เสียบสาย servo motor ใน Pin 7 และ 8

ข้อควรระวังในช่วงทดสอบ

เซอโวขนาดเล็กที่ใช้ในหุ่นยนต์ พังค่อนข้างง่าย ห้าม!!!! ให้ เซอโวไปงัดหรือขัดหรือฝืนโดยเด็ดขาด ถ้าตำแหน่งที่สั่งไปมันเกิน ก็ให้รีบปิดสวิตซ์โดยเร็วเพื่อป้องกันเซอโวมอเตอร์เสียหาย

ตัวอย่าง Code


#include <Servo.h>     //เรียกใช้งาน library เซอโว
Servo sv1;                  // กำหนดชื่อเซอโวตัวที่ 1 ว่า sv1  
Servo sv2;                 // กำหนดชื่อเซอโวตัวที่ 2 ว่า sv2  
const int buttonPin = 2;  //ประกาศตัวแปร  buttonPin  แทน Pin ของปุ่มกด ซึ่งต่อไว้กับ D2


void setup() {
  sv1.attach(7);         //กำหนดขา Servo ตัวที่ 1  ตัวบีบ เป็น Pin 7
  sv2.attach(8);        //กำหนดขา Servo ตัวที่ 2  ตัวบีบ เป็น Pin 8

}

void loop(){
int sw = digitalRead(buttonPin);
if (sw == 1){
sv1.write(60);  // เซอโว 1 หมุนไปที่ ตำแหน่ง 60 ํ
sv2.write(90);  //เซอโว 2 หมุนไปที่ ตำแหน่ง 90 ํ
delay(300);   // หน่วงเวลาเพื่อรอให้เซอโวเคลื่อนที่ไปยังตำแหน่ง
sv1.write(30);  // เซอโว 1 หมุนไปที่ ตำแหน่ง 30 ํ
sv2.write(120);  //เซอโว 2 หมุนไปที่ ตำแหน่ง 120 ํ
delay(300);   // หน่วงเวลาเพื่อรอให้เซอโวเคลื่อนที่ไปยังตำแหน่ง
  }
}


Report abuse
Page details
Page updated
Report abuse