Inhoudsopgave:
- Stap 1: Gereedschap en onderdelen
- Stap 2: Theorie en schema
- Stap 3: Prototyping
- Stap 4: Solderen en bedrading
- Stap 5: De code
- Stap 6: testen, testen, testen
- Stap 7: Uw gegevens verrijken
- Stap 8: Conclusie en mogelijke verbeteringen
Video: RC Flight Data Recorder/Black Box - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:18
In deze instructable ga ik een op arduino gebaseerde vechtgegevensrecorder bouwen voor RC-voertuigen, met name RC-vliegtuigen. Ik ga een UBlox Neo 6m GPS-module gebruiken die is aangesloten op een Arduino pro mini en een SD-kaartschild om de gegevens op te nemen. Dit project gaat onder andere de Latitude, Longitude, Speed, Altitude en Battery voltage registreren. Deze gegevens worden verrijkt voor een betere kijkervaring met Google Earth Pro.
Stap 1: Gereedschap en onderdelen
Onderdelen
- Ublox NEO 6m GPS-module: ebay/amazon
- Micro SD-kaartmodule: ebay/amazon
- Micro SD-kaart (hoge snelheid of capaciteit niet nodig): amazon
- Arduino pro mini: ebay/amazon
- FTDI-programmeur en bijbehorende kabel: ebay/amazon
- Perfboard: ebay/amazon
- Aansluitdraad: ebay/amazon
- Header-pinnen: ebay/amazon
- Gelijkrichterdiode: ebay/amazon
- 2x 1K ohm weerstand: ebay/amazon
- 1500 micron karton
Gereedschap
- Soldeerbout en soldeer
- Heet lijmpistool
- Laptop of computer
- Multimeter (niet strikt noodzakelijk maar ongelooflijk nuttig)
- Helpende handen (weer niet nodig maar wel handig)
- Hobbymesje
Optioneel
- Items die worden gebruikt voor prototyping zijn niet nodig, maar erg handig
- Breadboard
- Arduino Uno
- Doorverbindingsdraden
Stap 2: Theorie en schema
Het brein van het apparaat is de Arduino pro mini, het wordt aangedreven door de RC-voertuigen (in mijn geval een vliegtuig) Li-Po-batterijbalanspoort. Ik heb dit ingesteld voor een 2s-batterij, maar dit kan eenvoudig worden gewijzigd om plaats te bieden aan andere batterijformaten.
Dit is een stuk dat niet compleet is. Ik zal dit instructable bijwerken wanneer het lezen van het stuuroppervlak is voltooid
Servo1 zal de elevon-motor van mijn vliegtuig zijn, terwijl servo 2 mijn servo-uitgang van de vluchtcontroller zal zijn
De GPS-module ontvangt gegevens van de GPS-satellieten in de vorm van NMEA-strings. Deze string bevat locatie-informatie, maar ook de exacte tijd, snelheid, koers, hoogte en tal van andere nuttige gegevens. Zodra een string is ontvangen, wordt de informatie die nuttig is voor dit project geëxtraheerd met behulp van de TinyGPS-codebibliotheek.
Deze gegevens worden samen met de batterijspanning en de positie van de elevon met een snelheid van 1 Hz naar de SD-kaart geschreven. Deze gegevens zijn geschreven in CSV-indeling (comma-separated value) en zullen worden geïnterpreteerd met behulp van Google Maps om een vliegroute uit te zetten.
Stap 3: Prototyping
OPMERKING: De aansluitingen van de GPS-module zijn hierboven niet weergegeven. GPS is als volgt bedraad:
GND naar Arduino-aarde
VCC naar Arduino 5V
RX naar Arduino digitale pin 3
TX naar Arduino digitale pin 2
Om te testen of alle componenten correct werken, kunt u het beste beginnen met alles op een breadboard te leggen, omdat u niet wilt weten dat u een defect onderdeel heeft nadat alles in elkaar is gezet. De extra codebibliotheek die nodig is, is de TinyGPS-bibliotheek, de link vindt u hieronder.
kleine gps
De onderstaande spanningstestercode test alleen het spanningsmeetcircuit. De aanpassingswaarde moet worden gewijzigd om de Arduino de juiste spanning te laten lezen.
De bestandscode wordt gebruikt om de SD-kaartmodule en micro SD-kaart te testen om te controleren of beide correct lezen en schrijven.
De gpsTest-code wordt gebruikt om ervoor te zorgen dat de gps de juiste gegevens ontvangt en correct is geconfigureerd. Deze code voert uw breedtegraad, lengtegraad en andere livegegevens uit.
Als al deze onderdelen correct samenwerken, kunt u doorgaan naar de volgende stap.
Stap 4: Solderen en bedrading
Voordat u gaat solderen of bedraden, legt u al uw componenten op een stuk karton en knipt u dit uit tot de buitenafmetingen van de componenten. Dit wordt je montageplaat voor al je stukken.
Maak de printplaat door de perfboard op de kleinst mogelijke maat te snijden, aangezien gewicht en grootte prioriteit hebben. Soldeer de koppennen op hun plaats langs de rand van het gesneden perfboard, dit is waar de batterijbalanspoort en in de toekomst de stuuroppervlakservo en vluchtcontroller zullen aansluiten. Soldeer de 2 1k Ohm weerstanden en de gelijkrichterdiode op hun plaats volgens het schakelschema.
Soldeer de micro SD-kaartmodule aan de pinnen van de arduino volgens het schakelschema en maak de verbindingen met behulp van de AWG 24-draad.
Maak de verbindingen tussen het perfboard en de arduino opnieuw volgens het schakelschema en gebruik meer van hetzelfde type draad.
OPMERKING: de GPS is een elektrostatisch gevoelig apparaat, wees voorzichtig tijdens het solderen en laat nooit stroom door een van de draden lopen tijdens het maken van verbindingen
Soldeer de pinnen van de GPS-modules aan de overeenkomstige pinnen op de Arduino met behulp van lengtes van ongeveer 3-4 cm (1-1,5 inch) draad, dit geeft de GPS-module voldoende speling om over te vouwen naar de andere kant van de achtergrondkaart.
Controleer en controleer nogmaals de continuïteit van alle verbindingen om er zeker van te zijn dat alles correct is aangesloten.
Monteer met behulp van hete lijm de SD-kaartmodule, de Arduino Pro Mini en je aangepaste perfboard aan de ene kant van het karton en de GPS-module en antenne aan de andere kant.
Zodra je al het stuk correct hebt aangesloten en op het karton hebt gemonteerd, is het tijd om verder te gaan met de code.
Stap 5: De code
Dit is de code die op het uiteindelijke apparaat draait. Terwijl deze code loopt, begint de LED op de GPS-module te knipperen zodra de gps een fix heeft met meer dan 3 satellieten. De LED op het Arduino-bord knippert eenmaal zodra de Arduino opstart om aan te geven dat het CSV-bestand met succes is gemaakt en dan knippert het op tijd met de GPS-LED wanneer het met succes naar de micro SD-kaart wordt geschreven. Als de LED-resten van de micro SD-kaart niet kunnen worden geïnitialiseerd en er is hoogstwaarschijnlijk een probleem met uw bedrading of micro SD-kaart.
Deze code zal elke keer dat het programma wordt uitgevoerd een nieuw CSV-bestand maken, ze krijgen het label "flightxx", waarbij xx een getal is tussen 00 en 99 dat elke keer dat het programma wordt uitgevoerd toeneemt.
Om ervoor te zorgen dat het huidige tijdveld in de spreadsheet correct is, moet u de UTC (Coordinated Universal Time) naar de juiste tijdzone voor u converteren. Voor mij is de waarde UTC +2.0 omdat dat de tijdzone is waarin ik me bevind, maar dit kan in de code worden gewijzigd door de "timezone" float te wijzigen.
Stap 6: testen, testen, testen
Je zou nu een werkend systeem moeten hebben, het is tijd om het te testen, zorg ervoor dat alles werkt zoals verwacht.
Zodra alles werkt en u een uitvoer op de spreadsheet krijgt die correct lijkt, is het tijd om eventuele fijne aanpassingen aan te brengen. Ik had het apparaat bijvoorbeeld oorspronkelijk met kabelbinders op de bodem van mijn vliegtuig gemonteerd, maar na enig onderzoek kwam ik erachter dat dit het aantal GPS-satellieten dat op elk moment kon zien met ongeveer 40% verminderde.
Test uw systeem om te controleren of alles werkt en verfijn het waar nodig.
Stap 7: Uw gegevens verrijken
Nu u een betrouwbaar systeem heeft, is het tijd om uit te zoeken hoe u die gegevens op een meer leesbare manier kunt weergeven. De spreadsheet is prima als u de exacte snelheid op elk moment wilt of als u precies wilt controleren hoe uw voertuig zich gedroeg toen u een bepaalde actie uitvoerde, maar wat als u een hele vlucht op een kaart wilt plotten of elk gegevenspunt wilt zien op een meer leesbare manier is dit waar gegevensverrijking nuttig is
Om onze gegevens op een meer leesbare manier te bekijken, gaan we google earth pro gebruiken, u kunt hier klikken om het te downloaden.
Nu moet je het CSV-bestand converteren naar een GPX-bestand dat gemakkelijker kan worden gelezen door Google Earth met behulp van GPS-visualizer. Selecteer output GPX, upload uw CSV-bestand en download het geconverteerde bestand. Open vervolgens het GPX-bestand in Google Earth en het zou automatisch alle gegevens moeten importeren en plotten in een mooie vliegroute. Dit bevat ook aanvullende informatie zoals de kop op elk moment.
OPMERKING: ik heb de lat, lange gegevens van de foto's verwijderd omdat ik mijn exacte locatie niet wil onthullen
Stap 8: Conclusie en mogelijke verbeteringen
Dus al met al ben ik erg blij met hoe dit project is verlopen. Ik geniet ervan om gegevens van al mijn vluchten te hebben. maar er zijn een paar dingen waar ik aan wil werken.
Het meest voor de hand liggend wil ik de exacte positie van de stuurvlakken kunnen lezen. Ik heb de meeste hardware hiervoor, maar ik moet het gebruik ervan in de code inschakelen. Er zijn nog enkele technische uitdagingen te overwinnen.
Ik zou ook graag een barometer toevoegen voor nauwkeurigere hoogtegegevens, aangezien de gps-hoogtegegevens momenteel niet veel meer lijken dan een goed onderbouwde gok.
Ik denk dat het toevoegen van een accelerometer met drie assen cool zou zijn, zodat ik precies zou kunnen zien hoeveel g-kracht het vliegtuig op elk moment doorstaat.
Misschien een soort omheining maken. Momenteel is het met de blootgestelde componenten en bedrading niet erg elegant of robuust.
Laat het me weten als je met verbeteringen of aanpassingen aan het ontwerp komt, ik zou ze graag zien.
Aanbevolen:
RADAR Lidar-systeem VL53L0X Laser Time-of-Flight: 9 stappen
RADAR Lidar-systeem VL53L0X Laser Time-of-Flight: In deze tutorial leren we hoe u een RADAR Lidar-systeem maakt met behulp van de VL53L0X Laser Time-of-Flight-sensor.Bekijk de video
Maak je eigen Spy Bug (Arduino Voice Recorder): 5 stappen (met afbeeldingen)
Maak je eigen Spy Bug (Arduino Voice Recorder): In dit project laat ik je zien hoe ik een Arduino Pro Mini combineerde met een aantal complementaire componenten om een voicerecorder te maken die ook misbruikt kan worden als spionagebug. Het heeft een looptijd van ongeveer 9 uur, is klein en supergemakkelijk te
Flight Monitor met behulp van een Raspberry PI en een DVB-stick: 3 stappen
Flight Monitor met behulp van een Raspberry PI en een DVB-stick: als je een frequent flyer bent, of gewoon een passie hebt voor vliegtuigen, dan zijn Flightradar of Flightaware 2 onmisbare websites (of apps, want er zijn ook mobiele apps) die je dagelijks zult gebruiken basis.Beide stellen u in staat om vliegtuigen in realtime te volgen, vlucht te zien
Advanced Model Rocket Flight Computer!: 4 stappen (met afbeeldingen)
Advanced Model Rocket Flight Computer!: Ik had een high-end model raketvluchtcomputer nodig voor mijn nieuwste raket die zichzelf bestuurde zonder vinnen! Dus ik bouwde mijn eigen! De reden dat ik besloot om dit te bouwen was omdat ik TVC (stuwkracht vector controle) raketten bouw. Dit betekent dat er
Impact Recorder voor voertuigen: 18 stappen (met afbeeldingen)
Impact Recorder voor voertuigen: Impact Recorder is ontworpen om de impact op het voertuig vast te leggen tijdens het rijden of stilstaan. De effecten worden in de database opgeslagen in de vorm van metingen en video/foto. Bij impact kan de externe gebruiker in realtime worden geverifieerd, en op afstand