สารบัญ:
- ขั้นตอนที่ 1: สิ่งที่จำเป็น
- ขั้นตอนที่ 2: รื้อรถเก่าและติดตั้งเซอร์โวมอเตอร์
- ขั้นตอนที่ 3: สร้างบอร์ดอิเล็กทรอนิกส์ ติดตั้งบนรถ
- ขั้นตอนที่ 4: การอัปโหลดโค้ดบน Arduino และสร้างแอปบน Android
- ขั้นตอนที่ 5: เรียกใช้แอปพลิเคชันและแก้ไขปัญหารถยนต์
- ขั้นตอนที่ 6: บางสิ่งบางอย่างสำหรับโครงการในอนาคต
วีดีโอ: RC Car Hack ด้วย Android และ Arduino: 6 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
ในบทช่วยสอนนี้ เราจะให้ Android ควบคุม RC แบบเก่าธรรมดาของคุณ และมอบคุณสมบัติพิเศษให้กับมัน
บทช่วยสอนนี้มีสองสิ่งที่ไม่เหมือนใครจากการแฮ็กรถอื่นๆ
1. เรากำลังติดตั้งเซอร์โวเพื่อการควบคุมล้อที่ราบรื่น
2. เรากำลังใช้แอพ Android แบบกำหนดเองที่จะช่วยให้ค้นหาการตั้งค่าความเร็วและทิศทางการปรับจูน
นอกจากนั้น เราจะสร้างแตร เราจะปรับปรุงการบังคับเลี้ยวอย่างมากโดยใช้เซอร์โวมอเตอร์ รถ RC ราคาถูกไม่มีการบังคับเลี้ยวที่ราบรื่น พวกเขามักจะมีมอเตอร์ที่สามารถไปทางซ้ายหรือขวา และมันค่อนข้างยากที่จะควบคุม
แนวคิด:
- การควบคุมเซอร์โวมอเตอร์
- ใช้สะพาน H
- การสื่อสารผ่านบลูทูธ
- ใช้ตัวแบ่งแรงดันเพื่อวัดแรงดันไฟที่มากกว่า 5V
- เทคนิค PWM (พัลส์พร้อมมอดูเลต)
หากคุณจะสำรวจลิงก์ด้านบน คุณจะพบคำอธิบายโดยละเอียดเกี่ยวกับวิธีการทำงานของสิ่งเหล่านี้
นี่เป็นบทช่วยสอนขั้นสูง และฉันคิดว่าเหมาะสำหรับผู้ที่มีประสบการณ์การเขียนโปรแกรมที่ต้องการลองอะไรสนุกๆ และเรียนรู้อุปกรณ์อิเล็กทรอนิกส์ผ่านการฝึกฝน
ทักษะที่คุณต้องการ:
- การซ่อมแซม: เราจะรื้อรถเก่าโดยใช้เครื่องมือเดรเมลและไขควง คีมตัดลวด ฯลฯ
- อุปกรณ์อิเล็กทรอนิกส์พื้นฐาน: เราจะสร้างบอร์ดขนาดเล็กโดยใช้ Arduino nano และส่วนประกอบที่บัดกรี แล้วจึงต่อเข้ากับส่วนประกอบรถยนต์
- การเขียนโปรแกรม Arduino: การอัปโหลดโค้ดไปยังบอร์ด Arduino โดยใช้ Arduino IDE และอะแดปเตอร์ FTDI ทำการปรับเปลี่ยนโค้ดเล็กน้อย
- การสร้างแอป Android: เราจะดึงรหัสจาก Bitbucket สร้างแอปพลิเคชันและอัปโหลดไปยังอุปกรณ์มือถือ
ขั้นตอนที่ 1: สิ่งที่จำเป็น
อะไหล่:
1. Arduino pro mini รุ่น 16Mhz 5V (eBay) 2$
2. โมดูลบลูทูธ HC-05 (eBay) 3.3$
3. L298 สะพาน H (eBay) 2$
4. ออด (eBay) < 1$
5. PCB <1$ ต่อชิ้น
6. ตัวต้านทาน 2 x 1kOhm
7. แบตเตอรี่ LiPo 2 เซลล์ 1000mAh
8. L7805CV 5V regulator (eBay) < 1$ ต่อชิ้น
9. ตัวเชื่อมต่อ pcb ชายและหญิง <1 $ สำหรับสิ่งที่เราต้องการ
10. ขั้วต่อ LiPo ตัวเมีย XT-60 (eBay) 1.2$
11. SG90 9G ไมโครเซอร์โวมอเตอร์ (eBay)
เครื่องมือ:1. หัวแร้งสำหรับบัดกรีสายไฟเข้ากับขั้วต่อ LiPo
2. เครื่องตัดลวด
3. ไขควงเล็ก
4. เครื่องตัด
5. USB เข้ากับอะแดปเตอร์ FTDI อนุกรม FT232RL เพื่อตั้งโปรแกรม arduino pro mini
6. แล็ปท็อปที่ติดตั้ง ArduinoIDE เพื่อตั้งโปรแกรม Arduino
8. สมาร์ทโฟนแอนดรอยด์
ขั้นตอนที่ 2: รื้อรถเก่าและติดตั้งเซอร์โวมอเตอร์
เราจะเลือกรถ RC และรื้อถอน ทำการปรับเปลี่ยน ฯลฯ ฉันได้แนบรูปภาพด้านล่างเพื่อให้คุณได้เห็นกระบวนการทั้งหมด
ก่อนอื่น เราจะทำการถอดแยกชิ้นส่วนรถ และหลังจากนั้น เราจะถอดอุปกรณ์อิเล็กทรอนิกส์ภายในและช่องที่ไร้ประโยชน์ (เช่น ที่ใส่แบตเตอรี่และพวงมาลัยแบบเก่า)
สิ่งที่เราต้องระวังเมื่อเราทำสิ่งนี้:
- เรามีพื้นที่เพียงพอในรถที่จะติดตั้งบอร์ดของเราด้วยชิ้นส่วนอิเล็กทรอนิกส์ เซอร์โว สะพาน H และแบตเตอรี่ LiPo 2S
- สามารถติดตั้งเซอร์โวมอเตอร์ได้และสามารถปรับให้เข้ากับพวงมาลัยรถยนต์รุ่นเก่าได้ (หากดูจากภาพจะเห็นว่าผมทำมาได้อย่างไรในรถรุ่นใดรุ่นหนึ่งโดยเฉพาะ)
- เราไม่ทำลายโครงสร้างรถ พวงมาลัย และหรือระบบส่งกำลัง
ในตอนท้ายของขั้นตอนนี้ เราควรถอดเครื่องในรถยนต์ออกทั้งหมด บัดกรีสายไฟสองเส้นเข้ากับมอเตอร์ของรถยนต์ ติดตั้งเซอร์โวมอเตอร์และเชื่อมต่อกับกลไกการบังคับเลี้ยวของรถ
ขั้นตอนที่ 3: สร้างบอร์ดอิเล็กทรอนิกส์ ติดตั้งบนรถ
ฉันได้แนบแผนผังคร่าวๆ เพื่อให้สิ่งต่างๆ ง่ายขึ้น PCB แบบกำหนดเองจะประกอบด้วย Arduino pro mini, โมดูลบลูทู ธ HC-05, ตัวต้านทานสองตัวสำหรับตัวแบ่งแรงดันไฟฟ้า, piezo buzzer และตัวควบคุม l7805cv 5V
PCB ยังมีคอนเน็กเตอร์และสายไฟหลายแบบเพื่อให้เสียบปลั๊กได้ง่าย บอร์ดของเราจะเชื่อมต่อกับแหล่งจ่ายไฟ กับมอเตอร์ไฟฟ้าเก่าของรถยนต์ผ่าน H-Bridge และกับเซอร์โวมอเตอร์ นอกจากนี้ บลูทูธและ Arduino pro mini จะมีตัวเชื่อมต่อแบบกำหนดเองที่ทำจากตัวเชื่อมต่อ PCB ตัวผู้และตัวเมีย
ตัวแบ่งแรงดันไฟจากตัวต้านทานสองตัวที่เหมือนกันมีอยู่บน PCB ของเรา เพื่อลดแรงดันไฟฟ้าลงต่ำกว่า 5 โวลต์เพื่อให้ขาอนาล็อกของเราวัดได้ การวัดจะถูกส่งไปยังแอพ Android และจะแสดงบนหน้าจอ
แหล่งจ่ายไฟรถยนต์จะเป็นแบตเตอรี่ LiPo 2 เซลล์ที่มีความจุอย่างน้อย 1,000 mAh แบตเตอรี่จะขับมอเตอร์ของรถยนต์โดยตรงผ่าน PWM อุปกรณ์อิเล็กทรอนิกส์ที่เหลือจะใช้แบตเตอรี่ก้อนเดียวกัน แต่มีตัวควบคุม l7805cv 5V
ขั้นตอนที่ 4: การอัปโหลดโค้ดบน Arduino และสร้างแอปบน Android
ต้องอัปโหลดรหัส (รับที่นี่) ไปยัง Arduino pro mini โดยใช้อะแดปเตอร์ FTDI แบบ USB เป็นอนุกรม FT232RL
คุณจะต้องเชื่อมต่อพิน GND, VCC, Rx, Tx และ DTR เข้ากับ Arduino pro mini จากนั้นเปิดซอฟต์แวร์ Arduino เลือกเครื่องมือ/พอร์ต และพอร์ตใดก็ตามที่คุณใช้อยู่ แล้วก็ Tools/Board/Arduino Pro หรือ Pro Mini จากนั้น เครื่องมือ/บอร์ด/โปรเซสเซอร์/ATmega328 (5V 16Mhz)
สุดท้าย เปิดภาพร่างแล้วกดอัปโหลด
แล้วโปรแกรมนี้ทำงานอย่างไร? อันดับแรก จะฟังสายซีเรียล (ซอฟต์แวร์รองอนุกรม) สำหรับการส่งสัญญาณขาเข้า ข้อความจะถูกแยกวิเคราะห์และตีความว่าเป็นคำสั่งแตรหรือคำสั่งมอเตอร์ (ประกอบด้วยความเร็วและทิศทาง) หลังจากตีความข้อความแล้ว คำสั่งจะถูกส่งไปยังมอเตอร์/แตร นอกจากนี้ สเก็ตช์จะสำรวจพินอะนาล็อก A3 เป็นประจำเพื่อค้นหาแรงดันแบตเตอรี่และจะส่งข้อมูลผ่านบลูทูธ
สิ่งต่อไปคือการโคลนที่เก็บแอพ Android และสร้างโดยใช้ Android Studio URL ของ Bitbucket คือ:
สำหรับส่วน Android Studio มีบทช่วยสอนมากมายเช่นนี้:
ขั้นตอนคือ:
- ดาวน์โหลดและกำหนดค่า Android Studio
- รับโทรศัพท์ในโหมดการพัฒนา
- นำเข้าแหล่งที่มาไปยัง Android Studio
- สร้างและติดตั้งแอพ
ทางเลือกอื่นสำหรับ Android Studio อาจเป็น InteliJ หรือ Eclipse
ขั้นตอนที่ 5: เรียกใช้แอปพลิเคชันและแก้ไขปัญหารถยนต์
หลังจากติดตั้งแอพ Android สิ่งแรกที่ต้องทำคือจับคู่อุปกรณ์บลูทูธของคุณกับ Android ซึ่งจะเกี่ยวข้องกับขั้นตอนเหล่านี้:
- เปิดรถของคุณ
- ไปที่เมนู Android / Bluetooth
- สแกนหาอุปกรณ์บลูทูธ
- เลือกอุปกรณ์ของคุณและจับคู่ (ป้อนรหัสเมื่อได้รับแจ้ง)
ตกลง. หลังจากนี้เปิดแอป Android ให้คลิกปุ่ม "รายการที่จับคู่" คลิกอุปกรณ์บลูทูธที่เหมาะสมจากรายการและหน้าจอถัดไปจะปรากฏขึ้น
หน้าจอถัดไปจะควบคุมรถได้จริง เมื่อใช้ตัวเลื่อนแนวนอนด้านบน คุณจะสามารถควบคุมมุมของล้อและใช้ตัวเลื่อนแนวตั้งด้านล่างเพื่อกำหนดความเร็วและทิศทางได้ นอกจากนี้ ในการสตาร์ท/หยุดรถยังมีปุ่ม "เปิด/ปิด" และปุ่ม "กำหนดเอง1" คือแตรรถ ด้านล่างปุ่ม "custom1" จะมีข้อความขนาดเล็กแสดงแรงดันไฟฟ้าของแบตเตอรี่
การปรับเปลี่ยน:
- ถ้ารถถอยหลังแทนด้านหน้าและกลับกัน ให้ถอยหลัง A0 และ A1
- หากคุณต้องการปรับเปลี่ยนมุมสูงสุด/ต่ำสุดหรือมุมกลับด้าน ให้ปรับโค้ดนี้:
โมฆะ adjustDirection (ทิศทาง int) {
int newDirection = steeringMiddlePoint + แผนที่ (ทิศทาง, 0, 100, -35, 25); Serial.println (newDirection); พวงมาลัย.write(newDirection); ล่าช้า(15); }
ขั้นตอนที่ 6: บางสิ่งบางอย่างสำหรับโครงการในอนาคต
ฉันหวังว่าคุณจะได้เรียนรู้สิ่งใหม่ในโครงการนี้ และถ้าคุณชอบแนวคิดนี้ คุณสามารถตรวจสอบโครงการขั้นสูงนี้ด้วยหุ่นยนต์ที่สร้างขึ้นเองและแอป Android ที่ล้ำหน้ากว่า
หุ่นยนต์มีกล้องวิดีโอและทำการสตรีมสดผ่านอินเทอร์เน็ตไปยังแอพ สามารถควบคุมจากระยะไกลได้จากทุกที่หากมีอินเทอร์เน็ต
คุณจะพบโค้ด Arduino และแบ็กเอนด์ของไพ ธ อนที่นี่พร้อมกับคำแนะนำพื้นฐาน แอพ android ที่นี่ และแน่นอนวิดีโอสาธิต:)
หากคุณชอบวิดีโอ Youtube คุณสามารถรับข้อมูลเพิ่มเติมได้โดยสมัครรับข้อมูลจากช่องของฉันที่นี่
แนะนำ:
วิธีสร้าง Battlebot ด้วย Cardboard และ Arduino: 7 ขั้นตอน (พร้อมรูปภาพ)
วิธีสร้าง Battlebot ด้วย Cardboard และ Arduino: ฉันสร้าง battlebots โดยใช้ Arduino UNO และใช้กระดาษแข็งเพื่อสร้างร่างกาย ฉันพยายามใช้อุปกรณ์ราคาไม่แพงและให้อิสระในการสร้างสรรค์แก่เด็กๆ ในการออกแบบบอทต่อสู้ของพวกเขา Battlebot ได้รับคำสั่งจากคอนโทรลเลอร์ไร้สาย
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
ควบคุม Arduino ด้วย Android และ USB: 5 ขั้นตอน
ควบคุม Arduino ด้วย Android และ USB: คำแนะนำนี้เป็นเพียงการสาธิตอย่างรวดเร็วของ "Arduino USB Serial Extension" ที่สร้างขึ้นโดยนักพัฒนา Thunkable, Pavitra มันยังอยู่ระหว่างการพัฒนา ดังนั้นให้คิดว่านี่เป็นรุ่นเบต้า สรุปง่ายๆ ตอนนี้คุณสามารถค
การบันทึกข้อมูลแบบเรียลไทม์ MPU-6050/A0 ด้วย Arduino และ Android: 7 ขั้นตอน (พร้อมรูปภาพ)
เรียลไทม์ MPU-6050/A0 การบันทึกข้อมูลด้วย Arduino และ Android: ฉันสนใจที่จะใช้ Arduino สำหรับการเรียนรู้ของเครื่อง ในขั้นแรก ฉันต้องการสร้างการแสดงข้อมูลแบบเรียลไทม์ (หรือใกล้เคียงกัน) และตัวบันทึกด้วยอุปกรณ์ Android ฉันต้องการเก็บข้อมูลมาตรความเร่งจาก MPU-6050 ดังนั้นฉันจึงออกแบบ