RC Flight Data Recorder/Black Box: 8 stappe (met foto's)
RC Flight Data Recorder/Black Box: 8 stappe (met foto's)
Anonim
RC Flight Data Recorder/Black Box
RC Flight Data Recorder/Black Box

In hierdie instruksies gaan ek 'n arduino -gebaseerde vegdata -opnemer bou vir RC -voertuie, spesifiek RC -vliegtuie. Ek gaan 'n UBlox Neo 6m GPS -module gebruik wat gekoppel is aan 'n arduino pro mini en 'n SD -kaartskerm om die data op te neem. Hierdie projek gaan onder meer die breedtegraad, lengtegraad, snelheid, hoogte en batteryspanning opneem. Hierdie data word verryk vir 'n beter kykervaring met behulp van Google Earth Pro.

Stap 1: Gereedskap en onderdele

Gereedskap en onderdele
Gereedskap en onderdele
Gereedskap en onderdele
Gereedskap en onderdele

Dele

  • Ublox NEO 6m GPS -module: eBay/Amazon
  • Micro SD -kaartmodule: eBay/Amazon
  • Micro SD -kaart (hoë spoed of kapasiteit nie nodig nie): Amazon
  • Arduino pro mini: eBay/Amazon
  • FTDI programmeerder en ooreenstemmende kabel: eBay/Amazon
  • Perfboard: ebay/amazon
  • Aansluitdraad: eBay/Amazon
  • Kopspelde: eBay/Amazon
  • Gelykrigter: ebay/amazon
  • 2x 1K ohm weerstand: eBay/Amazon
  • 1500 mikron karton

Gereedskap

  • Soldeerbout en soldeer
  • Warm gom geweer
  • Skootrekenaar of rekenaar
  • Multimeter (nie streng nodig nie, maar ongelooflik nuttig)
  • Helpende hande (weereens nie nodig nie, maar behulpsaam)
  • Handwerkmes

Opsioneel

  • Artikels wat gebruik word vir prototipering is nie nodig nie, maar baie nuttig
  • Broodbord
  • Arduino Uno
  • Jumper Wires

Stap 2: Teorie en skematiese

Teorie en skematiese
Teorie en skematiese

Die brein van die toestel is die Arduino pro mini, dit word aangedryf deur die RC-voertuie (in my geval 'n vliegtuig) 'n Li-Po-batterybalanspoort. Ek het hierdie opstel vir 'n 2s -battery, maar dit kan maklik verander word vir ander batterygroottes.

Hierdie stuk is nie voltooi nie, ek sal hierdie instruksies opdateer wanneer die leesvlak van die bedieningsoppervlak voltooi is

Servo1 sal my motor se vliegtuigmotor wees, terwyl servo 2 my servo -uitset van die vlugbeheer sal wees

Die GPS -module ontvang data van die GPS -satelliete in die vorm van NMEA -snare. Hierdie string bevat liggingsinligting, maar ook die presiese tyd, spoed, koers, hoogte en baie ander nuttige data. Sodra 'n string ontvang is, word die inligting wat nuttig is vir hierdie projek onttrek met behulp van die TinyGPS -kodebiblioteek.

Hierdie data, tesame met die batteryspanning en die elevonposisie, word teen 'n snelheid van 1Hz aan die SD -kaart geskryf. Hierdie data is in CSV-formaat (deur komma-geskeide waarde) geskryf en sal met behulp van Google maps geïnterpreteer word om 'n vlugpad op te stel.

Stap 3: Prototipering

Prototipering
Prototipering
Prototipering
Prototipering

LET WEL: Die GPS -moduleverbindings word nie hierbo getoon nie. GPS is soos volg bedraad:

GND na Arduino -grond

VCC na Arduino 5V

RX na Arduino digitale pen 3

TX na Arduino digitale pen 2

Om te toets dat al die komponente korrek funksioneer, is dit die beste om alles op 'n broodbord neer te lê, aangesien u nie eers wil agterkom dat alles 'n defekte deel het nie. Die ekstra kodebiblioteek wat benodig word, is die TinyGPS -biblioteek, die skakel kan hieronder gevind word.

klein gps

Die onderstaande spanningstoetser toets slegs die spanningsmetingbaan. Die aanpassingswaarde moet verander word sodat die arduino die regte spanning kan aflees.

Die lêerskode word gebruik om die SD -kaartmodule en die mikro -SD -kaart te toets om seker te maak dat beide korrek lees en skryf.

Die gpsTest -kode wat gebruik word, word gebruik om seker te maak dat die gps korrekte data ontvang en korrek opgestel is. Hierdie kode gee u breedtegraad, lengtegraad en ander lewendige data weer.

As al hierdie dele korrek saamwerk, kan u na die volgende stap gaan.

Stap 4: Soldeer en bedrading

Soldeer en bedrading
Soldeer en bedrading
Soldeer en bedrading
Soldeer en bedrading
Soldeer en bedrading
Soldeer en bedrading

Voordat u enige van die soldeer of bedrading doen, lê al u komponente op 'n stuk karton en sny dit aan die buitekant van die komponente. Dit gaan u monteerplaat vir al u stukke wees.

Maak die printplaat deur die perfboard tot die kleinste grootte te sny, aangesien gewig en grootte prioriteite is. Soldeer die koppenne langs die rand van die snybord, dit is waar die poort vir die balans van die battery en in die toekoms die servo en die vlugbeheerder van die bedieningsoppervlak sal aansluit. Soldeer die 2 1k Ohm weerstande en die gelykrigter diode volgens die stroombaan diagram.

Soldeer die mikro -SD -kaartmodule aan die arduino se penne volgens die stroombaan -diagram, maak die verbindings met behulp van die AWG 24 -draad.

Maak weer die verbindings tussen die perfboard en die arduino volgens die kringdiagram en gebruik meer van dieselfde tipe draad.

LET WEL: die GPS is 'n elektrostatiese sensitiewe toestel, wees versigtig terwyl u soldeer en moet nooit 'n stroom deur die drade loop terwyl u verbindings maak nie

Soldeer die GPS-modules se penne aan die ooreenstemmende penne op die arduino met 'n lengte van ongeveer 3-4 cm (1-1,5 duim) draad, wat die GPS-module genoeg ruimte gee om oor te vou na die ander kant van die agterkantkaart.

Kontroleer en kontroleer die kontinuïteit van alle verbindings om seker te maak dat alles korrek bedraad is.

Monteer die SD -kaartmodule, The Arduino Pro Mini met warm gom, en u pasgemaakte perfboard aan die een kant van die karton en die GPS -module en antenna aan die ander kant.

As u al die stukke korrek bedraad en op die karton gemonteer het, is dit tyd om na die kode te gaan.

Stap 5: Die kode

Dit is die kode wat op die finale toestel loop. Terwyl hierdie kode gebruik word, sal die LED op GPS -module begin flits sodra die GPS 'n oplossing vir meer as 3 satelliete het. Die LED op die arduino -bord sal een keer knipper sodra die arduino begin om aan te toon dat die CSV -lêer suksesvol geskep is, en dan sal dit betyds met die GPS -LED knip as dit suksesvol aan die mikro -SD -kaart geskryf word. As die LED van die mikro -SD -kaart nie geïnisialiseer kan word nie en daar waarskynlik 'n probleem is met u bedrading of mikro -SD -kaart.

Hierdie kode sal 'n nuwe CSV -lêer skep elke keer as die program uitgevoer word, dit sal 'flightxx' genoem word, waar xx 'n getal is tussen 00 en 99 wat elke keer toeneem as die program uitgevoer word.

Om die huidige tydveld in die sigblad korrek te laat lyk, moet u die UTC (Coordinated Universal Time) na u korrekte tydsone omskakel. Vir my is die waarde UTC +2.0, aangesien dit die tydsone is waarin ek geleë is, maar dit kan in die kode verander word deur die "tydsone" float te verander.

Stap 6: Toets, toets, toets

Toets, toets, toets
Toets, toets, toets

Teen hierdie tyd behoort u 'n werkende stelsel te hê; dit is tyd om dit te toets, seker te maak dat alles werk soos verwag.

Sodra alles werk en u 'n uitset op die sigblad kry, lyk dit asof dit korrek is, om tydig aan te pas. Byvoorbeeld, ek het die toestel oorspronklik aan die onderkant van my vliegtuig met kabelbinders aangebring, maar na 'n ondersoek het ek agtergekom dat dit die hoeveelheid GPS -satelliete wat te alle tye te sien was, met ongeveer 40%verminder.

Toets u stelsel, maak seker dat alles werk en verfyn dit waar nodig.

Stap 7: Verryk u data

Verryking van u data
Verryking van u data
Verryking van u data
Verryking van u data
Verryking van u data
Verryking van u data
Verryking van u data
Verryking van u data

Noudat u 'n betroubare stelsel het, is dit tyd om uit te vind hoe u die data op 'n meer leesbare manier kan vertoon. Die sigblad is goed as u te alle tye die presiese snelheid wil hê, of as u presies wil kyk hoe u voertuig gedra het toe u 'n sekere aksie uitgevoer het, maar wat as u 'n hele vlug op 'n kaart wil teken of elke datapunt wil sien op 'n meer leesbare manier, is dit waar dataverryking nuttig is

Om ons data leesbaarder te sien, gaan ons google earth pro gebruik, klik hier om dit af te laai.

Nou moet u die CSV -lêer omskakel in 'n GPX -lêer wat makliker deur Google earth gelees kan word met behulp van GPS -visualiseerder. Kies uitvoer GPX, laai u CSV -lêer op en laai die omgeskakelde lêer af. Maak dan die GPX -lêer oop in google earth, en dit moet outomaties al die data invoer en in 'n mooi vlugpad plaas. Dit bevat ook bykomende inligting soos die opskrif op enige tydstip.

LET WEL: ek het die lang, lang data van die foto's verwyder, aangesien ek nie my presiese ligging wil bekend maak nie

Stap 8: Gevolgtrekking en moontlike verbeterings

Ek is dus oor die algemeen baie tevrede met hoe hierdie projek verloop het. Ek geniet dit om data van al my vlugte te hê. daar is egter 'n paar dinge waaraan ek wil werk.

Uiteraard wil ek die presiese posisie van die bedieningsoppervlakke kan lees. Ek het die meeste hardeware hiervoor, maar ek moet dit in die kode moontlik maak. Daar is nog 'n paar tegniese uitdagings wat ons moet oorkom.

Ek wil ook 'n barometer byvoeg vir meer akkurate hoogte -data, aangesien die GPS -hoogte -data tans nie veel meer as 'n opgevoede raaiskoot lyk nie.

Ek dink dat die toevoeging van 'n drie-as versnellingsmeter koel sou wees, sodat ek presies kon sien hoeveel g-krag die vliegtuig te eniger tyd verduur.

Skep miskien 'n omhulsel van een of ander aard. Tans met die blootgestelde komponente en bedrading is dit nie baie elegant of robuust nie.

Laat weet my asseblief as u verbeterings of aanpassings aan die ontwerp kry, ek sal dit graag wil sien.