สารบัญ:

ไมโครเซอร์โวแล็บ: 9 ขั้นตอน
ไมโครเซอร์โวแล็บ: 9 ขั้นตอน

วีดีโอ: ไมโครเซอร์โวแล็บ: 9 ขั้นตอน

วีดีโอ: ไมโครเซอร์โวแล็บ: 9 ขั้นตอน
วีดีโอ: สิ่งที่ต้องรู้ก่อนใช้งานเซอร์โวมอเตอร์กับ Arduino | How to use Servo Motor with Arduino 2024, กรกฎาคม
Anonim
ไมโครเซอร์โวแล็บ
ไมโครเซอร์โวแล็บ

ในห้องปฏิบัติการนี้ เราจะดำเนินการควบคุมตำแหน่งของไมโครเซอร์โวด้วยโพเทนชิออมิเตอร์ ตามตำแหน่งของ "แขน" ของไมโครเซอร์โว เราจะจุดไฟ LED แถวที่สอดคล้องกัน สำหรับห้องปฏิบัติการนี้ คุณจะต้อง:

  • 1 ไมโครเซอร์โว (อันที่ให้มาคือไมโครเซอร์โว 9 กรัม)
  • 1 โพเทนชิออมิเตอร์
  • 10 LEDS (ใช้สองสีที่ต่างกัน)
  • 10 ตัวต้านทาน 220 โอห์ม

ขั้นตอนที่ 1: เชื่อมต่อไมโครเซอร์โว

เชื่อมต่อไมโครเซอร์โว
เชื่อมต่อไมโครเซอร์โว

ไมโครเซอร์โวมีสายไฟสามเส้นสำหรับกำลัง กราวด์ และพัลส์สัญญาณ ไมโครเซอร์โวจะยอมรับพัลส์ PWM เพื่อกำหนดตำแหน่งที่ควรอยู่ใน (0 - 180 องศา) ในทางเทคนิค คุณสามารถใช้พิน PWM ใดๆ บน Arduino Uno ได้ แต่โดยทั่วไปเราจะเริ่มต้นด้วยพิน 9 หรือ 10*

ติดตั้ง:

  1. เชื่อมต่อเขียงหั่นขนมกับรางไฟ (+5V) และรางภาคพื้นดิน (GND)
  2. ต่อเซอร์โวเข้ากับรางจ่ายไฟ รางกราวด์ และพิน 9

**นี่เป็นเพราะว่าไลบรารี่ของเซอร์โวใช้ Timer2 บน Arduino ซึ่งจะบล็อกเราไม่ให้ใช้สัญญาณ PWM, analogWrite () บนหมุดสองตัวนี้เพื่อวัตถุประสงค์อื่นนอกเหนือจากการควบคุมเซอร์โว แม้ว่าเราจะยังใช้พินเหล่านี้สำหรับ i/o ดิจิทัลได้ แต่โดยทั่วไปแล้ว เราจะใช้พินเหล่านี้สำหรับการควบคุมเซอร์โวโดยเฉพาะ**

ขั้นตอนที่ 2: ทดสอบไมโครเซอร์โว

โค้ดที่นี่คือโค้ดตัวอย่างที่จัดทำโดย Servo Library มันจะให้เซอร์โวกวาดไปมาตั้งแต่ 0 ถึง 180 องศา

/* กวาด

โดย BARRAGAN รหัสตัวอย่างนี้เป็นสาธารณสมบัติ แก้ไขเมื่อ 8 พ.ย. 2556 โดย Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep */ #include "Servo.h" Servo myservo; // สร้างวัตถุเซอร์โวเพื่อควบคุมเซอร์โว // สามารถสร้างวัตถุเซอร์โวสิบสองรายการบนกระดานส่วนใหญ่ได้ int pos = 0; // ตัวแปรเพื่อจัดเก็บการตั้งค่าโมฆะตำแหน่งเซอร์โว () { myservo.attach (9); // ติดเซอร์โวบนพิน 9 กับวัตถุเซอร์โว } void loop() { สำหรับ (pos = 0; pos = 0; pos -= 1) { // เปลี่ยนจาก 180 องศาเป็น 0 องศา myservo.write (pos); // บอกเซอร์โวให้ไปที่ตำแหน่งในตัวแปร 'pos' delay(15); // รอ 15ms เพื่อให้เซอร์โวไปถึงตำแหน่ง } }

ขั้นตอนที่ 3: เชื่อมต่อโพเทนชิออมิเตอร์

เชื่อมต่อโพเทนชิออมิเตอร์
เชื่อมต่อโพเทนชิออมิเตอร์

ตอนนี้เราจะดำเนินการควบคุมตำแหน่งของเซอร์โวด้วยโพเทนชิออมิเตอร์ด้วยตนเอง เชื่อมต่อโพเทนชิออมิเตอร์ดังนี้:

  • ด้านซ้าย - ราวบันได
  • ด้านขวา - รางไฟ
  • การเชื่อมต่อด้านบน/ตรงกลาง - พิน A0 (อนาล็อก 0 พิน)

ขั้นตอนที่ 4: รหัสเริ่มต้นของโพเทนชิออมิเตอร์

ด้านล่างนี้คือรหัสเริ่มต้นสำหรับควบคุมเซอร์โวด้วยโพเทนชิออมิเตอร์ กรอกรหัสเพื่อที่ว่าเมื่อคุณย้ายโพเทนชิออมิเตอร์ เซอร์โวจะเคลื่อนที่พร้อมกัน

/* กวาดโดย BARRAGAN รหัสตัวอย่างนี้เป็นสาธารณสมบัติ แก้ไขเมื่อ 8 พ.ย. 2556 โดย Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep */ #include "Servo.h" Servo myservo; // สร้างวัตถุเซอร์โวเพื่อควบคุมเซอร์โว // สามารถสร้างวัตถุเซอร์โวสิบสองรายการบนกระดานส่วนใหญ่ได้ int pos = 0; // ตัวแปรเพื่อจัดเก็บตำแหน่งเซอร์โว int potPin = 0;// เลือกพินสำหรับเชื่อมต่อโพเทนชิออมิเตอร์ int potVal = 0;// ค่าโพเทนชิออมิเตอร์ปัจจุบันเป็นโมฆะการตั้งค่า () { myservo.attach (9); // ติดเซอร์โวบนพิน 9 กับ pinMode ของอ็อบเจ็กต์เซอร์โว (potPin, INPUT); } วงเป็นโมฆะ () { potVal = analogRead (potPin); myservo.write (ตำแหน่ง); // บอกเซอร์โวให้ไปที่ตำแหน่งในตัวแปร 'pos' delay(15); // รอ 15ms เพื่อให้เซอร์โวไปถึงตำแหน่ง }

ขั้นตอนที่ 5: เชื่อมต่อ LED ตัวแรก

เชื่อมต่อ LED แรก
เชื่อมต่อ LED แรก

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

  • เต็ม - ยกแขน
  • ครึ่งแขนเท่ากัน
  • ปิด - แขนลดลง

ไดอะแกรมจะแสดงแถวของไฟ LED ที่ปลายด้านตรงข้ามของเขียงหั่นขนม สิ่งนี้ทำขึ้นเพื่อให้มองเห็นได้ง่าย ไฟ LED ของคุณควรเรียงต่อกันหรือเรียงซ้อนกัน

เชื่อมต่อ LED แรก:

  • ต่อสายนำสั้นของ LED เข้ากับรางภาคพื้นดิน
  • ต่อสายไฟ LED ที่ยาวกว่าเข้ากับตัวต้านทาน 220 โอห์ม เชื่อมต่อตัวต้านทานกับพิน 13 บน Arduino

ขั้นตอนที่ 6: เชื่อมต่อแถวที่เหลือของ LEDs

เชื่อมต่อแถวที่เหลือของ LEDs
เชื่อมต่อแถวที่เหลือของ LEDs

หลังจากเพิ่ม LED ตัวแรกแล้ว ให้เชื่อมต่อ LED ที่เหลือ:

  • ตะกั่วที่สั้นกว่า - เชื่อมต่อกับรางภาคพื้นดิน
  • ตะกั่วที่ยาวขึ้น - เชื่อมต่อตัวต้านทาน 220 โอห์มกับไฟ LED และพิน Arduino ต่อไปนี้: 12, 11, 10, 9, 8

ขั้นตอนที่ 7: เพิ่ม LED แรก แถวที่สอง

เพิ่ม LED แรก แถวที่สอง
เพิ่ม LED แรก แถวที่สอง

ไฟ LED แถวที่สองจะถูกเพิ่มในลักษณะเดียวกับแถวแรก:

  • ต่อสายนำสั้นของ LED เข้ากับรางภาคพื้นดิน
  • ต่อสายไฟ LED ที่ยาวกว่าเข้ากับตัวต้านทาน 220 โอห์ม เชื่อมต่อตัวต้านทานกับพิน 7 บน Arduino

ขั้นตอนที่ 8: เชื่อมต่อ LED สุดท้าย

เชื่อมต่อไฟ LED สุดท้าย
เชื่อมต่อไฟ LED สุดท้าย

เชื่อมต่อไฟ LED ที่เหลือ:

ตะกั่วที่สั้นกว่า - เชื่อมต่อกับรางกราวด์ ตะกั่วที่ยาวกว่า - เชื่อมต่อตัวต้านทาน 220 โอห์มกับไฟ LED และพิน Arduino ต่อไปนี้: 6, 5, 4, 3

ขั้นตอนที่ 9: ควบคุมจอแสดงผล LED

ขั้นตอนสุดท้ายของคุณคือการอัปเดตโค้ดเพื่อควบคุม LED ของคุณ จะต้องจัดการสิ่งต่อไปนี้:

  • แถวบนสุดจะตรงกับ "แขนขวา" ของเซอร์โว ในขณะที่แขนปัดขึ้น/ลง ไฟ LED จะต้องเปิด/ปิด
  • แถวล่างสุดจะตรงกับ "แขนซ้าย" ของเซอร์โว ในขณะที่แขนปัดขึ้น/ลง ไฟ LED จะต้องเปิด/ปิด

แนะนำ: