สารบัญ:

หุ่นยนต์ Bluetooth: 4 ขั้นตอน
หุ่นยนต์ Bluetooth: 4 ขั้นตอน

วีดีโอ: หุ่นยนต์ Bluetooth: 4 ขั้นตอน

วีดีโอ: หุ่นยนต์ Bluetooth: 4 ขั้นตอน
วีดีโอ: Diy รถบังคับบลูทูธ HC-05 2024, พฤศจิกายน
Anonim
หุ่นยนต์บลูทูธ
หุ่นยนต์บลูทูธ
หุ่นยนต์บลูทูธ
หุ่นยนต์บลูทูธ
หุ่นยนต์บลูทูธ
หุ่นยนต์บลูทูธ

ARDUINO BLUETOOTH ROBOT CAR

วันที่โครงการ: สิงหาคม 2018

อุปกรณ์โครงการ:

1. 1 * แพลตฟอร์มฐานที่กำหนดเอง

2. 4 * มอเตอร์กระแสตรง + ล้อ

3. แบตเตอรี่ 3*18650 พร้อมที่ใส่แบตเตอรี่ 3 ก้อนและแบตเตอรี่ 2*18650 พร้อมที่ใส่แบตเตอรี่ 2 ก้อน

4. 2 * สวิตช์โยก

5. 2 * ไฟ LED สีแดงพร้อมตัวต้านทาน 220K ในซีรีย์

6. 1 * ชุดประกอบด้วย: 2 pcs SG90 Servo Motor + 1 pcs 2-Axis Servo Bracket

7. 1 * Arduino Uno R3

8. 1 * Arduino Sensor Shield V5

9. 1 * L298N Dual Bridge DC Stepper เครื่องยนต์ ไดร์เวอร์

10. 1 * โมดูลอัลตราโซนิก HC-SR04

11. 1 * 8 นำแถบพิกเซลนีโอพิกเซล ws2812b ws2812 แถบนำสมาร์ท RGB

12. 1 * BT12 โมดูลบลูทูธ BLE 4.0

13. 1 * 12V แรงดันไฟฟ้า 4 หลัก display

14. 1 * 1602 จอแสดงผล LCD พร้อมโมดูลอะแดปเตอร์อินเทอร์เฟซอนุกรม IIC

15. กาวร้อน ตัวยึด M3 สกรู แหวนรอง

16. สายจัมเปอร์ชาย-หญิง 10 ซม. และ 15 ซม.

17. ลวดธรรมดา 1 มม. ประมาณ 50 ซม.

18. เครื่องมือ ได้แก่ หัวแร้ง ไขควงขนาดเล็ก และคีม

19. USB เข้ากับสาย Arduino

ภาพรวม

นี่เป็นโครงการที่ใช้ Arduino ครั้งที่สองที่ฉันส่งไปยัง Instructables อย่างไรก็ตาม หุ่นยนต์ที่อธิบายไว้ด้านล่างเป็นหุ่นยนต์ตัวที่สี่ที่ฉันสร้างขึ้น หุ่นยนต์ตัวนี้สร้างขึ้นจากเวอร์ชันก่อนหน้าซึ่งใช้ WiFi เวอร์ชันใหม่นี้มีทั้งการสื่อสาร WiFi และ Bluetooth WiFi เพื่อให้กล้องสามารถสตรีมวิดีโอโดยตรงไปยัง Android App และบลูทูธเพื่อให้ควบคุมหุ่นยนต์ได้ง่าย โค้ด Arduino จะรับฟังคำสั่ง Bluetooth, รับ, ถอดรหัสคำสั่ง, ดำเนินการตามคำสั่ง และสุดท้ายจะส่งคืนข้อความตอบกลับไปยังแอพ Android ยืนยันว่าได้ออกคำสั่งแล้ว นอกเหนือจากข้อเสนอแนะนี้เกี่ยวกับแอพ Android หุ่นยนต์ยังทำซ้ำคำสั่งบนจอแสดงผล LCD ขนาด 16x2 ของตัวเอง

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

ทางเลือกของแบตเตอรี่ 18650 นั้นขึ้นอยู่กับระดับพลังงานและความสะดวกในการรับแบตเตอรี่มือสองคุณภาพดีซึ่งมักจะมาจากแล็ปท็อปรุ่นเก่า บอร์ด Arduino เป็นโคลนมาตรฐาน เช่นเดียวกับตัวควบคุมมอเตอร์ L298N Dual Bridge มอเตอร์ DC นั้นเพียงพอสำหรับโครงการนี้ แต่ฉันรู้สึกว่ามอเตอร์ DC ขนาด 6V ที่ใหญ่กว่าพร้อมไดรฟ์ตรงจะทำงานได้ดีกว่า นี่เป็นการอัปเกรดโครงการในอนาคตที่เป็นไปได้

ขั้นตอนที่ 1: Fritzing Diagram

Fritzing Diagram
Fritzing Diagram

แผนภาพ Fritzing แสดงการเชื่อมต่อต่างๆ จากแบตเตอรี่ผ่านสวิตช์สองขั้วไปยัง Arduino Uno ตั้งแต่ Arduino Uno ไปจนถึงไดรเวอร์มอเตอร์ L298N จอแสดงผล LCD 16X2 บลูทูธ BT12 เครื่องส่งและรับสัญญาณโซนิค HC-SR04 เซอร์โวสำหรับกล้องและเครื่องส่งสัญญาณเสียง และสุดท้ายจาก L298N ไปจนถึงมอเตอร์กระแสตรง

หมายเหตุ: แผนภาพ Fritzing ไม่แสดงสายเคเบิล GND ใดๆ

ขั้นตอนที่ 2: การก่อสร้าง

การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง
การก่อสร้าง

การก่อสร้าง

โครงสร้างพื้นฐานประกอบด้วยฐานเดียว 240 มม. x 150 มม. x 5 มม. พร้อมรูเจาะสำหรับขาตั้ง M3 รูสำหรับ L298N, MPU-6050 และ Arduino Uno รองรับ เจาะรู 10 มม. เดียวที่ฐานเพื่อให้มีสายควบคุมและสายไฟ การใช้ขาตั้งจอ LCD, Arduino Uno และไดรเวอร์มอเตอร์ L298N ขนาด 10 มม. ที่ติดตั้งและต่อสายตามแผนภาพด้านบน

มอเตอร์กระแสตรงที่ติดตั้งบนแผ่นด้านล่างโดยใช้กาวร้อน หลังจากบัดกรีสายไฟของมอเตอร์แต่ละตัวที่เชื่อมต่อกับคอนเน็กเตอร์ด้านซ้ายและขวาของไดรเวอร์มอเตอร์ L298N ติดตั้งจัมเปอร์ไดรเวอร์มอเตอร์ L298 เพื่อให้สามารถจ่ายไฟ 5V ให้กับบอร์ด Arduino Uno ได้ ถัดมาที่ใส่แบตเตอรี่ 18650 ถูกติดกาวที่ด้านล่างของฐานและต่อสายผ่านสวิตช์สองขั้วไปยัง Arduino Uno และอินพุต 12V และกราวด์ของไดรเวอร์มอเตอร์ L298

สายเคเบิลเซอร์โวของกล้องที่เชื่อมต่อกับพิน 12 และ 13, สายเคเบิลเซอร์โว HC-SR04 ถูกต่อเข้ากับพิน 3 พิน 5, 6, 7, 8, 9 และ 11 ซึ่งต่ออยู่กับไดรเวอร์มอเตอร์ L298N โมดูลบลูทูธ BT12 เชื่อมต่อกับ Arduino Sensor Shield V5 พินเอาท์พุต Bluetooth, VCC, GND, TX และ RX โดยกลับด้านสาย TX และ RX ชุดพิน URF01 ใช้เพื่อต่อพิน HC-SR04, VCC, GND, Trig และ Echo ในขณะที่ชุดพิน IIC ใช้เพื่อเชื่อมต่อพิน LCD VCC, GND, SCL และ SCA สุดท้าย ไฟ LED 8 ชุดจะติด VCC, GND และ DIN โดยเชื่อมต่อกับพิน 4 และพิน VCC และ GND ที่เกี่ยวข้อง

เนื่องจากทั้งชุดแบตเตอรี่และสวิตช์เปิดปิดซึ่งติดตั้งอยู่ใต้ฐานจึงมีการเพิ่มไฟ LED สีแดงและตัวต้านทาน 220K แบบคู่ขนานกับสวิตช์เปิดปิดเพื่อให้ไฟส่องสว่างเมื่อเปิดสวิตช์ไฟ

ภาพถ่ายที่แนบมาแสดงขั้นตอนการก่อสร้างของหุ่นยนต์โดยเริ่มจากขาตั้ง M3 ที่ต่อเข้ากับ Arduino Uno และ L298N จากนั้นทั้งสองรายการจะแนบเข้ากับฐาน ใช้ขาตั้ง M3 เพิ่มเติมร่วมกับแผ่นทองเหลืองเพื่อสร้างแท่นสำหรับติดตั้ง HC-SR04 และเซอร์โวของกล้อง ภาพถ่ายเพิ่มเติมแสดงการเดินสายไฟและโครงสร้างของมอเตอร์ ที่ยึดแบตเตอรี่ และแถบไฟแบบนีโอพิกเซล

ขั้นตอนที่ 3: การเข้ารหัส Arduino และ Android

การเข้ารหัส Arduino และ Android
การเข้ารหัส Arduino และ Android
การเข้ารหัส Arduino และ Android
การเข้ารหัส Arduino และ Android

การเข้ารหัส ARDUINO:

การใช้ซอฟต์แวร์พัฒนา Arduino 1.8.5 โปรแกรมต่อไปนี้ได้รับการแก้ไขแล้วดาวน์โหลดไปยังบอร์ด Arduino Uno ผ่านการเชื่อมต่อ USB จำเป็นต้องค้นหาและดาวน์โหลดไฟล์ไลบรารีต่อไปนี้:

· LMotorController.h

· Wire.h

· LiquidCrystal_IC2.h

· Servo.h

· NewPing.h

· Adafruit_NeoPixel

(ไฟล์ทั้งหมดนี้มีให้จากเว็บไซต์

ภาพด้านบนแสดงวิธีแก้ไขง่ายๆ เพื่อให้สามารถดาวน์โหลดโค้ด Arduino ไปยังบอร์ด Arduino Uno ได้ ในขณะที่โมดูล BT12 ติดอยู่กับหมุด TX และ RX โปรแกรมดาวน์โหลดมักจะล้มเหลวเสมอ ดังนั้นฉันจึงเพิ่มการเชื่อมต่อแบบแบ่งอย่างง่ายบนสาย TX ซึ่งเสียในขณะที่ดาวน์โหลดโค้ดแล้วสร้างใหม่เพื่อทดสอบการสื่อสาร BT12 เมื่อหุ่นยนต์ได้รับการทดสอบอย่างสมบูรณ์แล้ว ฉันก็ลบลิงก์ที่แตกหักได้นี้ออก

ไฟล์ซอร์สโค้ด Arduino และ Android สามารถพบได้ที่ส่วนท้ายของหน้านี้

การเข้ารหัส Android:

ใช้ Android Studio บิลด์ 3.1.4 และความช่วยเหลือจากแหล่งข้อมูลทางอินเทอร์เน็ตมากมาย ซึ่งฉันขอขอบคุณ ฉันได้พัฒนาแอพที่อนุญาตให้ผู้ใช้เลือกและเชื่อมต่อกับแหล่งสัญญาณ WiFi สำหรับกล้องและแหล่ง Bluetooth เพื่อควบคุมการกระทำของ Robot อินเทอร์เฟซผู้ใช้แสดงไว้ด้านบน และลิงก์สองลิงก์ต่อไปนี้แสดงวิดีโอของหุ่นยนต์และกล้องขณะทำงาน ภาพหน้าจอที่สองแสดงตัวเลือกการสแกนและการเชื่อมต่อ WiFi และ Bluetooth หน้าจอนี้จะตรวจสอบว่าแอปมีสิทธิ์ที่จำเป็นในการเข้าถึงทั้งเครือข่าย WiFi และ Bluetooth และอุปกรณ์ สามารถดาวน์โหลดแอปผ่านลิงก์ด้านล่าง แต่ฉันไม่สามารถรับประกันได้ว่าแอปนี้จะทำงานบนแพลตฟอร์มอื่นใด ยกเว้นแท็บ Samsung 10.5 2 ปัจจุบันแอปถือว่าอุปกรณ์บลูทูธมีชื่อว่า "BT12" แอพ Android ส่งคำสั่งอักขระอย่างง่ายหนึ่งคำสั่งไปยังหุ่นยนต์ แต่จะได้รับสตริงการยืนยันคำสั่งเป็นการตอบแทน

ขั้นตอนที่ 4: เพื่อสรุป

รับชมวิดีโอการใช้งานพื้นฐานของหุ่นยนต์ You Tube ได้ที่

วิดีโอ You Tube ของการหลีกเลี่ยงอุปสรรคของหุ่นยนต์สามารถดูได้ที่:

สิ่งที่ฉันได้เรียนรู้:

การสื่อสารผ่านบลูทูธเป็นวิธีที่ดีที่สุดสำหรับการควบคุมหุ่นยนต์ แม้จะอยู่ในระยะสูงสุด 10 เมตรที่ BT12 มีก็ตาม การใช้แบตเตอรี่ 18650 ชุดหนึ่งสำหรับจ่ายไฟให้กับมอเตอร์ และอีกชุดสำหรับจ่ายไฟให้กับ Arduino, ชิลด์, เซอร์โว, BT12 และ LCD ช่วยยืดอายุการใช้งานแบตเตอรี่ได้อย่างมาก ฉันประทับใจกับแถบไฟ NEO Pixel ไฟ LED RGB สว่างและควบคุมได้ง่าย เช่นเดียวกับโมดูลบลูทูธ BT12 ซึ่งทำงานได้อย่างไม่มีที่ติตั้งแต่ได้รับมา

อะไรต่อไป:

โครงการนี้เกี่ยวกับการใช้ Bluetooth Communications มาโดยตลอด ตอนนี้ฉันมีรูปแบบการทำงานและสามารถควบคุมหุ่นยนต์ผ่าน Android App ได้แล้ว ฉันพร้อมที่จะเริ่มโครงการต่อไปซึ่งจะเป็นโครงการที่ซับซ้อนที่สุดที่ฉันได้พยายามทำ ได้แก่ หกขา 3 DOM ต่อขา Hexapod ซึ่งจะถูกควบคุมโดย Bluetooth และสามารถสตรีมวิดีโอแบบเรียลไทม์ผ่านหัวของมันเองได้ ซึ่งตัวมันเองจะสามารถเคลื่อนที่ในแนวตั้งและแนวนอนได้ ฉันยังคาดหวังให้หุ่นยนต์หลบหลีกสิ่งกีดขวาง

แนะนำ: