หุ่นยนต์ควบคุมระยะไกลโดยใช้ Arduino และ T.V. รีโมท: 11 ขั้นตอน
หุ่นยนต์ควบคุมระยะไกลโดยใช้ Arduino และ T.V. รีโมท: 11 ขั้นตอน
Anonim
หุ่นยนต์ควบคุมระยะไกลโดยใช้ Arduino และ TV Remote
หุ่นยนต์ควบคุมระยะไกลโดยใช้ Arduino และ TV Remote

รถควบคุมระยะไกลคันนี้สามารถเคลื่อนย้ายได้โดยใช้รีโมททุกชนิด เช่น ทีวี แอร์ ฯลฯ

มันใช้ประโยชน์จากความจริงที่ว่ารีโมตปล่อย IR (อินฟราเรด)

คุณสมบัตินี้ใช้โดยใช้ตัวรับสัญญาณ IR ซึ่งเป็นเซ็นเซอร์ราคาถูกมาก

ในคำแนะนำนี้คุณจะได้เรียนรู้วิธีการ

  1. อินเทอร์เฟซตัวรับสัญญาณ IR กับ Arduino
  2. เชื่อมต่อมอเตอร์ 2 ตัวกับ Arduino
  3. รวม 2 การตั้งค่าข้างต้น

หมายเหตุ: รถควบคุมระยะไกลคันนี้มีข้อเสียคือไม่ทำงานกลางแดด

รหัส แผนผัง และรูปภาพอื่นๆ ทั้งหมดในที่เดียวอยู่ที่นี่

ขั้นตอนที่ 1: วัสดุที่จำเป็น

  • Arduino Uno และสาย USB
  • ซอฟต์แวร์ Arduino
  • เขียงหั่นขนม
  • มอเตอร์กระแสตรง 100 รอบต่อนาที
  • ตัวรับสัญญาณ IR (SM0038 หรือ TSOP1738)
  • L293D ตัวขับมอเตอร์ IC
  • สายจัมเปอร์
  • แชสซีและล้อ
  • แบตเตอรี่ 9V (2 ก้อน)
  • คลิปแบตเตอรี่

ต้นทุนรวมของวัสดุ: Rs 600 = $ 9 (ไม่รวมต้นทุนของ Arduino)

ขั้นตอนที่ 2: การประกอบ

การประกอบ
การประกอบ
การประกอบ
การประกอบ

ยึดล้อเข้ากับแชสซี

ติดมอเตอร์ 2 ตัวเข้ากับล้อหลังและใช้หุ่นด้านหน้า

ทำรูบนแชสซีและแก้ไข Arduino โดยใช้สกรู

แก้ไขเขียงหั่นขนมโดยใช้เทปกาวสองหน้าที่ให้มา

ติดตั้ง L293D บนเขียงหั่นขนมโดยหันหน้าบาก

ขั้นตอนที่ 3: การเชื่อมต่อตัวรับสัญญาณ IR

การเชื่อมต่อตัวรับสัญญาณ IR
การเชื่อมต่อตัวรับสัญญาณ IR

หันหน้าไปทางรอยบากบนตัวรับการเชื่อมต่อจากซ้ายไปขวาคือ

  • พินซ้ายกราวด์
  • พินกลาง-5V
  • พินดิจิตอลพินขวา 6 บน Arduino

อ้างถึงแผนผังสำหรับรายละเอียดเพิ่มเติม

ขั้นตอนที่ 4: การบันทึก IR Library

กำลังบันทึกห้องสมุด IR
กำลังบันทึกห้องสมุด IR
กำลังบันทึกห้องสมุด IR
กำลังบันทึกห้องสมุด IR

ไปที่ลิงค์ต่อไปนี้ -

drive.google.com/open?id=0B621iZr0p0N_WUVm…

บันทึกไฟล์ภายในโฟลเดอร์ชื่อ IRremote และบันทึกโฟลเดอร์ในไดเร็กทอรีไลบรารีของ Arduino IDE ของคุณ เช่น arduino-1.0.6>โฟลเดอร์ไลบรารี่เป็น IRremote

ขั้นตอนที่ 5: ค้นหาค่าเลขฐานสิบหกของคีย์ระยะไกล

การหาค่าเลขฐานสิบหกของรีโมตคีย์
การหาค่าเลขฐานสิบหกของรีโมตคีย์
การหาค่าเลขฐานสิบหกของรีโมตคีย์
การหาค่าเลขฐานสิบหกของรีโมตคีย์

1.อัปโหลดโค้ดใน remote.ino ลงใน Arduino

2. เปิดจอภาพอนุกรม

3. กดปุ่มรีโมตต่างๆ และรับค่าเลขฐานสิบหก (โปรดทราบว่าค่า 0x จะไม่ได้มาจากเลขฐานสิบหกและค่าบางค่าจะอยู่ตรงกลางเช่น FFFFFFFF ให้ละเว้น)

ที่นี่ฉันได้รับค่าของปุ่มด้านหน้า, ด้านหลัง, ซ้าย, ขวาและตรงกลางซึ่งก็คือ

ด้านหน้า=0x80BF53AC

กลับ=0x80BF4BB4

ซ้าย=0x80BF9966

ขวา=0x80BF837C

กลาง=0x80BF738C

ค่าเหล่านี้ของปุ่มเหล่านี้ได้รับการแมปเพื่อเลื่อนไปข้างหน้า ถอยหลัง เลื่อนไปทางซ้าย เลื่อนไปทางขวา และเบรกตามลำดับ

ขั้นตอนที่ 6: การเชื่อมต่อ L293D

การเชื่อมต่อ L293D
การเชื่อมต่อ L293D
การเชื่อมต่อ L293D
การเชื่อมต่อ L293D

ใช้ 5V และกราวด์จาก Arduino แล้วเชื่อมต่อกับรางด้านล่าง 2 อันของเขียงหั่นขนม ดังนั้นจึงให้ 5V และสายกราวด์

พิน 1, 9, 16 จาก L293D ถึง 5V

หมุด 4, 5, 12, 13 จาก L293D ถึงกราวด์

มอเตอร์ซ้ายไปที่พิน 3, 6 บน L293D

มอเตอร์ขวากับหมุด 11, 14 บน L293D

พิน 2, 7 (สำหรับมอเตอร์ด้านซ้าย) จาก L293D ถึงพิน 9, 8 บน Arduino

หมุด 10, 15 (สำหรับมอเตอร์ด้านขวา) จาก L293D ถึง 10, 11 พินบน Arduino

อ้างถึงแผนผังสำหรับรายละเอียดเพิ่มเติม

โปรดทราบว่าในแผนผังสายไฟสีเหลืองแทนมอเตอร์ด้านซ้ายและสายสีส้มมอเตอร์ด้านขวา

ขั้นตอนที่ 7: เชื่อมต่อมอเตอร์กับ L293D

หลังจากทำการเชื่อมต่อแล้ว ให้อัปโหลดโค้ดใน motor_test.ino ลงใน Arduino

โปรดทราบว่าสำหรับมอเตอร์ด้านซ้ายที่จะหมุน lm, lmr ควรอยู่ตรงข้ามเช่น HIGH และ LOW หรือกลับกัน.

ในทำนองเดียวกันสำหรับมอเตอร์ขวาที่จะหมุน rm, rmr ควรอยู่ตรงข้ามเช่น HIGH และ LOW หรือกลับกัน

กำหนดระดับตรรกะของ lm, lmr, rm, rmr สำหรับล้อทั้งสองเพื่อไปข้างหน้าโดยการลองผิดลองถูก

สำหรับฉันมันคือ LOW, HIGH, HIGH, LOW

ดังนั้นปัจจัยการผลิตที่จำเป็นในการก้าวไปข้างหน้าคือ LOW, HIGH, HIGH, LOW

อินพุตที่จำเป็นในการย้อนกลับคือ HIGH, LOW, LOW, HIGH

อินพุตที่จำเป็นในการไปทางขวาคือ LOW, HIGH, HIGH, HIGH (เช่น ควรหมุนมอเตอร์ด้านซ้ายเท่านั้น)

อินพุตที่จำเป็นในการไปทางซ้ายคือ HIGH, HIGH, HIGH, LOW (เช่น ควรหมุนมอเตอร์ด้านขวาเท่านั้น)

โปรดทราบว่าค่าของ lm, lmr, rm, rmr ที่ได้รับอาจแตกต่างจากด้านบน

ขั้นตอนที่ 8: บูรณาการทุกอย่าง

บูรณาการทุกอย่าง
บูรณาการทุกอย่าง

ตอนนี้รวมทุกอย่างเช่นทั้งส่วนรับสัญญาณ ir และส่วน L293D

แผนผังที่ระบุข้างต้นเป็นเพียงการรวมกันของแผนผังของตัวรับ IR และ L293D

โดยทั่วไปคุณสามารถสร้างการเชื่อมต่อ IR ค้นหาค่าเลขฐานสิบหกและไม่รบกวนการเชื่อมต่อ IR ทำการเชื่อมต่อ L293D และเชื่อมต่อมอเตอร์กับ Arduino

ขั้นตอนที่ 9: พาวเวอร์ซัพพลาย

9V จ่ายไฟให้กับ Arduino ด้วยแบตเตอรี่ที่เป็นบวกให้กับพินวินของ Arduino และค่าลบที่ให้กับพินกราวด์ที่สองของ Arduino

9V สำหรับการจ่าย Vss (พิน 8) ของ l293d ซึ่งใช้สำหรับขับมอเตอร์ (ค่าสูงสุดที่สามารถให้ได้คือ 36V)

ขั้นตอนที่ 10: โปรแกรมสุดท้าย

อัปโหลดรหัสที่ระบุใน rc_car.ino ลงใน Arduino (หากมีการเชื่อมต่อทั้ง IR และ L293D)

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

ตรวจสอบว่าบอทเคลื่อนที่ตามต้องการหรือไม่

ไปที่ที่เก็บนี้เพื่อดาวน์โหลดโค้ดและแผนผัง คลิกที่ปุ่ม "โคลนหรือดาวน์โหลด" (สีเขียวทางด้านขวา) และเลือก "ดาวน์โหลด ZIP" เพื่อดาวน์โหลดไฟล์ zip ตอนนี้แยกเนื้อหาบนคอมพิวเตอร์ของคุณเพื่อรับ รหัสและแผนผัง (ในโฟลเดอร์แผนผัง)

ขั้นตอนที่ 11: วิธีการทำงานของบอท

Image
Image

นี่คือวิดีโอของบอทที่กำลังเคลื่อนไหว