สารบัญ:
- ขั้นตอนที่ 1: เครื่องมือและชิ้นส่วน
- ขั้นตอนที่ 2: ทฤษฎีและแผนผัง
- ขั้นตอนที่ 3: การสร้างต้นแบบ
- ขั้นตอนที่ 4: การบัดกรีและการเดินสาย
- ขั้นตอนที่ 5: รหัส
- ขั้นตอนที่ 6: การทดสอบ การทดสอบ การทดสอบ
- ขั้นตอนที่ 7: เสริมข้อมูลของคุณ
- ขั้นตอนที่ 8: บทสรุปและการปรับปรุงที่เป็นไปได้
วีดีโอ: RC Flight Data Recorder/Black Box: 8 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
ในคำแนะนำนี้ฉันกำลังจะสร้างเครื่องบันทึกข้อมูลการต่อสู้ที่ใช้ Arduino สำหรับยานพาหนะ RC โดยเฉพาะเครื่องบิน RC ฉันจะใช้โมดูล GPS UBlox Neo 6m ที่เชื่อมต่อกับ Arduino pro mini และการ์ด SD เพื่อบันทึกข้อมูล โปรเจ็กต์นี้จะบันทึกค่าละติจูด ลองจิจูด ความเร็ว ระดับความสูง และแรงดันแบตเตอรี่ ข้อมูลนี้จะได้รับการปรับปรุงเพื่อประสบการณ์การรับชมที่ดียิ่งขึ้นโดยใช้ Google Earth Pro
ขั้นตอนที่ 1: เครื่องมือและชิ้นส่วน
อะไหล่
- โมดูล GPS Ublox NEO 6m: ebay/amazon
- โมดูลการ์ด Micro SD: ebay/amazon
- การ์ด Micro SD (ไม่จำเป็นต้องใช้ความเร็วสูงหรือความจุ): amazon
- Arduino pro mini: ebay/amazon
- โปรแกรมเมอร์ FTDI และสายเคเบิลที่เกี่ยวข้อง: ebay/amazon
- Perfboard: ebay/amazon
- สายเชื่อมต่อ: ebay/amazon
- หมุดส่วนหัว: ebay/amazon
- วงจรเรียงกระแสไดโอด: ebay/amazon
- ตัวต้านทาน 2x 1K โอห์ม: ebay/amazon
- กระดาษแข็ง 1500 ไมครอน
เครื่องมือ
- หัวแร้งและหัวแร้ง
- ปืนกาวร้อน
- แล็ปท็อปหรือคอมพิวเตอร์
- มัลติมิเตอร์ (ไม่จำเป็นอย่างยิ่ง แต่มีประโยชน์อย่างเหลือเชื่อ)
- การช่วยเหลือ (ไม่จำเป็น แต่มีประโยชน์อีกครั้ง)
- มีดหัตถกรรม
ไม่จำเป็น
- รายการที่ใช้สำหรับการสร้างต้นแบบไม่จำเป็นแต่มีประโยชน์มาก
- เขียงหั่นขนม
- Arduino Uno
- สายจัมเปอร์
ขั้นตอนที่ 2: ทฤษฎีและแผนผัง
สมองของอุปกรณ์คือ Arduino pro mini ซึ่งขับเคลื่อนจากยานพาหนะ RC (ในกรณีของฉันคือเครื่องบิน) พอร์ตสมดุลแบตเตอรี่ Li-Po ฉันได้ตั้งค่านี้สำหรับแบตเตอรี่ 2 วินาทีแล้ว แต่สามารถเปลี่ยนได้อย่างง่ายดายเพื่อรองรับขนาดแบตเตอรี่อื่นๆ
ชิ้นส่วนนี้ไม่สมบูรณ์ฉันจะอัปเดตคำแนะนำนี้เมื่อการอ่านพื้นผิวการควบคุมเสร็จสิ้น
Servo1 จะเป็นเครื่องบินของฉันที่ระดับความสูงมอเตอร์ในขณะที่เซอร์โว 2 จะเป็นเอาต์พุตเซอร์โวของตัวควบคุมการบินของฉัน
โมดูล GPS กำลังรับข้อมูลจากดาวเทียม GPS ในรูปแบบของสตริง NMEA สตริงเหล่านี้ประกอบด้วยข้อมูลตำแหน่ง แต่ยังรวมถึงเวลา ความเร็ว หัวเรื่อง ระดับความสูง และข้อมูลที่เป็นประโยชน์อื่นๆ อีกมากมาย เมื่อได้รับสตริงแล้ว ข้อมูลที่เป็นประโยชน์ต่อโปรเจ็กต์นี้จะถูกดึงออกมาโดยใช้ไลบรารีโค้ด TinyGPS
ข้อมูลนี้พร้อมกับแรงดันแบตเตอรี่และตำแหน่งระดับความสูงจะถูกเขียนลงในการ์ด SD ที่อัตรา 1Hz ข้อมูลนี้เขียนในรูปแบบ CSV (ค่าที่คั่นด้วยเครื่องหมายจุลภาค) และจะถูกตีความโดยใช้ Google Maps เพื่อวางแผนเส้นทางการบิน
ขั้นตอนที่ 3: การสร้างต้นแบบ
หมายเหตุ: การเชื่อมต่อโมดูล GPS ไม่ได้แสดงไว้ด้านบน GPS มีสายดังนี้:
GND ถึงกราวด์ Arduino
VCC เป็น Arduino 5V
RX ถึง Arduino พินดิจิตอล 3
TX เป็นขาดิจิตอล Arduino 2
เพื่อทดสอบว่าส่วนประกอบทั้งหมดทำงานอย่างถูกต้อง วิธีที่ดีที่สุดคือเริ่มต้นด้วยการวางทุกอย่างบนเขียงหั่นขนม เนื่องจากคุณไม่ต้องการที่จะค้นหาหลังจากที่ทุกอย่างถูกประกอบเข้าด้วยกันแล้วว่าคุณมีส่วนที่บกพร่อง ไลบรารีโค้ดเพิ่มเติมที่จำเป็นต้องใช้คือไลบรารี TinyGPS ซึ่งลิงก์อยู่ด้านล่าง
gps จิ๋ว
รหัสเครื่องทดสอบแรงดันไฟฟ้าด้านล่างเป็นเพียงการทดสอบวงจรวัดแรงดันไฟฟ้า ต้องเปลี่ยนค่าการปรับเพื่อให้ Arduino อ่านแรงดันไฟฟ้าที่ถูกต้อง
รหัสไฟล์ใช้เพื่อทดสอบโมดูลการ์ด SD และการ์ด micro SD เพื่อให้แน่ใจว่าทั้งคู่อ่านและเขียนอย่างถูกต้อง
รหัส gpsTest ใช้เพื่อให้แน่ใจว่า gps ได้รับข้อมูลที่ถูกต้องและมีการกำหนดค่าอย่างถูกต้อง รหัสนี้จะส่งออกละติจูด ลองจิจูด และข้อมูลสดอื่นๆ ของคุณ
หากทุกส่วนเหล่านี้ทำงานร่วมกันอย่างถูกต้อง คุณสามารถไปยังขั้นตอนถัดไปได้
ขั้นตอนที่ 4: การบัดกรีและการเดินสาย
ก่อนทำการบัดกรีหรือเดินสายใดๆ ให้วางส่วนประกอบทั้งหมดของคุณบนแผ่นกระดาษแข็งแล้วตัดให้ได้ขนาดภายนอกของส่วนประกอบ นี่จะเป็นแผ่นยึดสำหรับชิ้นส่วนทั้งหมดของคุณ
ทำแผงวงจรโดยการตัดแผ่นไม้อัดให้เล็กที่สุดเท่าที่จะเป็นไปได้เนื่องจากน้ำหนักและขนาดมีความสำคัญ บัดกรีหมุดส่วนหัวให้เข้าที่ตามขอบของแผ่นไม้อัดที่ตัดแล้ว ซึ่งเป็นที่ที่พอร์ตสมดุลของแบตเตอรี่และในอนาคตเซอร์โวพื้นผิวควบคุมและตัวควบคุมการบินจะเชื่อมต่อกัน ประสานตัวต้านทาน 2 1k Ohm และไดโอดเรียงกระแสเข้าที่ตามแผนภาพวงจร
ประสานโมดูลการ์ด micro SD เข้ากับหมุดของ Arduino ตามแผนภาพวงจรทำการเชื่อมต่อโดยใช้สาย AWG 24
ทำการเชื่อมต่อระหว่าง perfboard กับ Arduino อีกครั้งตามแผนภาพวงจรและใช้ลวดประเภทเดียวกันมากขึ้น
หมายเหตุ: GPS เป็นอุปกรณ์ที่มีความไวต่อไฟฟ้าสถิต โปรดใช้ความระมัดระวังในขณะที่ทำการบัดกรีและอย่าให้กระแสไฟฟ้าไหลผ่านสายไฟใด ๆ ในขณะทำการเชื่อมต่อ
ประสานโมดูล GPS เข้ากับหมุดที่เกี่ยวข้องบน Arduino โดยใช้ลวดยาวประมาณ 3-4 ซม. (1-1.5 นิ้ว) ทำให้โมดูล GPS หย่อนพอที่จะพับไปอีกด้านหนึ่งของการ์ดสำรอง
ตรวจสอบและตรวจสอบความต่อเนื่องอีกครั้งสำหรับการเชื่อมต่อทั้งหมดเพื่อให้แน่ใจว่าทุกอย่างต่อสายอย่างถูกต้อง
ใช้กาวร้อนติดโมดูลการ์ด SD, Arduino Pro Mini และคุณกำหนดเอง perfboard ที่ด้านหนึ่งของกระดาษแข็งและโมดูล GPS และเสาอากาศที่อีกด้านหนึ่ง
เมื่อคุณวางสายและติดตั้งบนกระดาษแข็งอย่างถูกต้องแล้ว ก็ถึงเวลาดำเนินการต่อไปที่โค้ด
ขั้นตอนที่ 5: รหัส
นี่คือรหัสที่ทำงานบนอุปกรณ์สุดท้าย ในขณะที่รหัสนี้กำลังทำงาน LED บนโมดูล GPS จะเริ่มกะพริบทันทีที่ gps มีการแก้ไขด้วยดาวเทียมมากกว่า 3 ดวง ไฟ LED บนบอร์ด Arduino จะกะพริบหนึ่งครั้งทันทีที่ Arduino เริ่มทำงานเพื่อแสดงว่าไฟล์ CSV ได้รับการสร้างขึ้นสำเร็จแล้ว จากนั้นจะกะพริบตามเวลากับ LED GPS เมื่อเขียนลงในการ์ด micro SD ได้สำเร็จ หากไฟ LED ยังคงอยู่ของการ์ด micro SD ไม่สามารถเริ่มต้นได้ และมักมีปัญหากับการเดินสายหรือการ์ด micro SD
รหัสนี้จะสร้างไฟล์ CSV ใหม่ทุกครั้งที่เรียกใช้โปรแกรม โดยจะมีข้อความกำกับว่า "flightxx" โดยที่ xx เป็นตัวเลขระหว่าง 00 ถึง 99 ที่เพิ่มขึ้นทุกครั้งที่เรียกใช้โปรแกรม
หากต้องการให้ฟิลด์เวลาปัจจุบันในสเปรดชีตถูกต้อง คุณต้องแปลง UTC(Coordinated Universal Time) เป็นเขตเวลาที่ถูกต้องสำหรับคุณ สำหรับฉันค่าคือ UTC +2.0 เนื่องจากเป็นเขตเวลาที่ฉันอยู่ แต่สามารถเปลี่ยนแปลงได้ในรหัสโดยเปลี่ยนทุ่น "เขตเวลา"
ขั้นตอนที่ 6: การทดสอบ การทดสอบ การทดสอบ
ถึงตอนนี้คุณควรจะมีระบบการทำงานแล้ว ได้เวลาทดสอบแล้ว ตรวจสอบให้แน่ใจว่าทุกอย่างทำงานได้ตามที่คาดไว้
เมื่อทุกอย่างทำงานและคุณได้รับผลลัพธ์ในสเปรดชีตที่ดูเหมือนถูกต้องถึงเวลาทำการปรับเปลี่ยนอย่างละเอียด ตัวอย่างเช่น ตอนแรกฉันมีอุปกรณ์ติดตั้งไว้ที่ด้านล่างของเครื่องบินด้วยสายรัดเคเบิล แต่หลังจากการตรวจสอบบางอย่าง ฉันพบว่านั่นทำให้จำนวนดาวเทียม GPS ที่สามารถมองเห็นได้ตลอดเวลาลดลงประมาณ 40%
ทดสอบระบบของคุณเพื่อให้แน่ใจว่าทุกอย่างทำงานและปรับแต่งตามความจำเป็น
ขั้นตอนที่ 7: เสริมข้อมูลของคุณ
เมื่อคุณมีระบบที่เชื่อถือได้แล้ว ก็ถึงเวลาค้นหาวิธีแสดงข้อมูลดังกล่าวในรูปแบบที่อ่านง่ายขึ้น สเปรดชีตนั้นใช้ได้ถ้าคุณต้องการความเร็วที่แน่นอน ณ เวลาใดเวลาหนึ่ง หรือหากคุณต้องการตรวจสอบว่ายานพาหนะของคุณมีพฤติกรรมอย่างไรเมื่อคุณดำเนินการบางอย่าง แต่ถ้าคุณต้องการวางแผนเที่ยวบินทั้งหมดบนแผนที่หรือดูแต่ละจุดข้อมูล ในรูปแบบที่อ่านง่ายขึ้น นี่คือจุดที่การเพิ่มข้อมูลมีประโยชน์
หากต้องการดูข้อมูลของเราในลักษณะที่อ่านง่ายขึ้น เราจะใช้ Google Earth Pro คุณสามารถคลิกที่นี่เพื่อไปดาวน์โหลด
ตอนนี้ คุณต้องแปลงไฟล์ CSV เป็นไฟล์ GPX ที่ Google Earth สามารถอ่านได้ง่ายขึ้นโดยใช้ตัวสร้างภาพ GPS เลือกเอาต์พุต GPX อัปโหลดไฟล์ CSV ของคุณและดาวน์โหลดไฟล์ที่แปลงแล้ว จากนั้นเปิดไฟล์ GPX ใน Google Earth และควรนำเข้าและลงจุดข้อมูลทั้งหมดลงในเส้นทางการบินที่ดีโดยอัตโนมัติ นอกจากนี้ยังมีข้อมูลเพิ่มเติม เช่น หัวเรื่อง ณ เวลาใดเวลาหนึ่ง
หมายเหตุ: ฉันได้ลบข้อมูล lat ที่ยาวออกจากภาพถ่ายแล้ว เนื่องจากฉันไม่ต้องการเปิดเผยตำแหน่งที่แน่นอนของฉัน
ขั้นตอนที่ 8: บทสรุปและการปรับปรุงที่เป็นไปได้
โดยรวมแล้วฉันมีความสุขมากกับโครงการนี้ ฉันสนุกกับการมีข้อมูลจากเที่ยวบินทั้งหมดของฉัน อย่างไรก็ตาม มีบางสิ่งที่ฉันอยากจะทำ
เห็นได้ชัดว่าฉันต้องการอ่านตำแหน่งที่แน่นอนของพื้นผิวการควบคุม ฉันมีฮาร์ดแวร์ส่วนใหญ่พร้อมสำหรับสิ่งนี้ แต่ฉันต้องเปิดใช้งานการใช้งานในโค้ด ยังมีความท้าทายทางเทคนิคบางอย่างที่ต้องเอาชนะ
ฉันยังต้องการเพิ่มบารอมิเตอร์สำหรับข้อมูลระดับความสูงที่แม่นยำยิ่งขึ้น เนื่องจากขณะนี้ข้อมูลระดับความสูงของ gps ดูเหมือนจะไม่มากไปกว่าการคาดเดาอย่างมีการศึกษา
ฉันคิดว่าการเพิ่มตัวตรวจวัดความเร่งแบบสามแกนจะดีมาก เพื่อที่ฉันจะได้เห็นว่าระนาบกำลังแรง g อยู่เท่าใดเมื่อใดก็ได้
อาจสร้างกรงบางประเภท ขณะนี้ส่วนประกอบที่เปิดโล่งและการเดินสายไฟนั้นไม่ได้สวยงามหรือแข็งแกร่งมากนัก
โปรดแจ้งให้เราทราบหากคุณมีการปรับปรุงหรือปรับเปลี่ยนการออกแบบใด ๆ ที่ฉันอยากเห็น
แนะนำ:
DIY Flight Sim Switch Panel: 7 ขั้นตอน (พร้อมรูปภาพ)
แผงสวิตช์ซิมเครื่องบิน DIY: หลังจากใช้เวลาหลายปีในชุมชนซิมบินและมีส่วนร่วมในเครื่องบินที่ซับซ้อนมากขึ้นเรื่อย ๆ ฉันพบว่าตัวเองโหยหาความสามารถในการจับสวิตช์ทางกายภาพแทนที่จะพยายามบินด้วยมือขวาในขณะที่ใช้ NS
Arduino Nano Voice Recorder พร้อมไมโครโฟน MAX9814: 3 ขั้นตอน
เครื่องบันทึกเสียง Arduino Nano พร้อมไมโครโฟน MAX9814: ฉันได้รับไมโครโฟน MAX9814 จากการจัดส่ง AZ ใน Amazon และต้องการทดสอบอุปกรณ์ ดังนั้นฉันจึงสร้างโปรเจ็กต์ง่ายๆ นี้ที่สร้างขึ้นจาก Spy Bug ของ Great Scott (เผยแพร่ภายใต้ใบอนุญาตครีเอทีฟคอมมอนส์นี้) ฉันแก้ไขโครงสร้างโครงการค่อนข้าง
คอมพิวเตอร์ Rocket Flight ขั้นสูง!: 4 ขั้นตอน (พร้อมรูปภาพ)
Advanced Model Rocket Flight Computer!: ฉันต้องการคอมพิวเตอร์บินจรวดรุ่นไฮเอนด์สำหรับจรวดใหม่ล่าสุดของฉันที่ควบคุมตัวเองได้โดยไม่ต้องใช้ครีบ! ฉันเลยสร้างมันขึ้นมาเอง! เหตุผลที่ฉันตัดสินใจสร้างสิ่งนี้ก็เพราะฉันสร้างจรวด TVC (การควบคุมเวกเตอร์แรงขับ) ซึ่งหมายความว่าเ
DIY Arduino ควบคุม Multiwii Flight Controller: 7 ขั้นตอน (พร้อมรูปภาพ)
DIY Arduino ควบคุม Multiwii Flight Controller: โปรเจ็กต์นี้คือการสร้างบอร์ดลอจิกโดรน multicopter ที่ใช้งานได้หลากหลายแต่กำหนดเองตาม Arduino และ Multiwii
Quadcopter พร้อม Nodemcu และ Blynk (ไม่มี Flight Controller): 5 ขั้นตอน (พร้อมรูปภาพ)
Quadcopter With Nodemcu and Blynk (Without Flight Controller): สวัสดีทุกคน.การค้นหาเพื่อสร้างเสียงพึมพำโดยไม่มีตัวควบคุมการบินสิ้นสุดที่นี่ ฉันกำลังสร้างเสียงพึมพำสำหรับโครงการของฉันซึ่งเกี่ยวข้องกับการอยู่รอด ฉันท่องเน็ตข้ามคืนเพื่อให้ทำงานได้โดยไม่ต้อง ผู้ควบคุมการบินและรู้สึกผิดหวังมาก