Turinys:
- 1 žingsnis: dalių sąrašas
- 2 žingsnis: 1 posistemis: padėties stebėjimas
- 3 veiksmas: serverio sąranka
- 4 žingsnis: 2 posistemis: telemetrijos registravimas
- 5 žingsnis: sistemos integravimas
- 6 žingsnis: gaubtas
- 7 žingsnis: Išvada
Video: Raketų telemetrija/padėties stebėjimas: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Šis projektas skirtas registruoti skrydžio duomenis iš 9 DOF jutiklio modulio į SD kortelę ir tuo pačiu metu perduoti jo GPS vietą korinio ryšio tinklais į serverį. Ši sistema leidžia raketą rasti, jei sistemos nusileidimo zona yra už LOS.
1 žingsnis: dalių sąrašas
Telemetrijos sistema:
1x ATmega328 mikrovaldiklis („Arduino UNO“, „Nano“)
1x „Micro SD Breakout“-
1x „Micro SD“kortelė - (dydis nesvarbu FAT 16/32 formatu) - „Amazon Link“
1x Gy -86 IMU - „Amazon Link“
Padėties stebėjimas:
1x ATmega328 mikrovaldiklis („Arduino UNO“, „Nano“) (kiekvienai sistemai reikia savo mikro)
1x Sim800L GSM GPRS modulis - „Amazon Link“
1x SIM kortelė (turi turėti duomenų planą) - https://ting.com/ (tik apmokestinama už tai, ką naudojate)
1x NEO 6M GPS modulis - „Amazon LInk“
Bendrosios dalys:
1x 3,7v lipo baterija
1x 3.7-5v pakopinis keitiklis (jei nestatote PCB)
1x „Raspberry pi“arba bet kuris kompiuteris, kuriame gali būti php serveris
-Prieiga prie 3D spausdintuvo
-BOM PCB yra išvardytas skaičiuoklėje
-Gerbers yra github repo -https://github.com/karagenit/maps-gps
2 žingsnis: 1 posistemis: padėties stebėjimas
Bandymas:
Kai turėsite sistemos dalis (NEO-6M GPS, Sim800L), turite savarankiškai išbandyti sistemų funkcionalumą, kad jums neskaudėtų galvos, bandant išsiaiškinti, kas neveikia integruojant sistemas.
GPS testavimas:
Norėdami išbandyti GPS imtuvą, galite naudoti „Ublox“pateiktą programinę įrangą („U-Center Software“)
arba „Github“repo susietas bandymo eskizas (GPS testas)
1. Norėdami išbandyti naudodami „U-center“programinę įrangą, tiesiog prijunkite GPS imtuvą per USB ir pasirinkite „com“prievadą „U-centre“, po to sistema turėtų automatiškai pradėti sekti jūsų buvimo vietą.
2. Norėdami išbandyti naudodami mikrovaldiklį, įkelkite GPS testavimo eskizą į arduino per IDE. Tada prijunkite 5 V ir GND prie imtuvo kaiščių prie arduino ir GPS RX kaiščio prie skaitmeninio 3 ir TX kaiščio prie skaitmeninio 4 arduino. Galiausiai atidarykite serijinį monitorių „arduino IDE“ir nustatykite duomenų perdavimo spartą į 9600 ir patikrinkite, ar gautos koordinatės teisingos.
Pastaba: vizualus palydovinio užrakto identifikatorius NEO-6M modulyje yra tas, kad raudonas indikatorius mirksi kas kelias sekundes, rodydamas ryšį.
SIM800L bandymas:
Norėdami išbandyti korinį modulį, turėsite turėti SIM kortelę, užregistruotą aktyviame duomenų plane, rekomenduoju „Ting“, nes jie ima mokestį tik už tai, ką naudojate, o ne mėnesinį duomenų planą.
„Sim“modulio tikslas yra nusiųsti HTTP GET užklausą į serverį su vieta, kurią gauna GPS imtuvas.
1. Norėdami patikrinti ląstelių modulį, įdėkite simcard kortelę į modulį taip, kad jos galas būtų nukreiptas į išorę
2. Prijunkite sim modulį prie GND ir 3.7-4.2v šaltinio, nenaudokite 5v !!!! modulis negali veikti esant 5 V įtampai. Prijunkite „Sim“modulį RX prie „Arduino“2 ir „TX“prie 3 analogo
3. Įkelkite nuoseklaus perdavimo eskizą iš „github“, kad galėtumėte siųsti komandas į ląstelių modulį.
4. vadovaukitės šia pamoka arba atsisiųskite „AT Command Tester“bandomąją versiją, kad patikrintumėte HTTP GET funkcionalumą
Įgyvendinimas:
Kai įsitikinsite, kad abi sistemos veikia nepriklausomai, galite pereiti prie viso eskizo įkėlimo į mikrovaldiklio github. galite atidaryti nuoseklųjį monitorių esant 9600 baudų, kad patikrintumėte, ar sistema siunčia duomenis į žiniatinklio serverį.
*nepamirškite pakeisti serverio IP ir prievado į savo ir būtinai suraskite naudojamo mobiliojo ryšio teikėjo APN.
Pereikite prie kito veiksmo, kuriame nustatėme serverį
3 veiksmas: serverio sąranka
Norėdami nustatyti serverį, kad būtų rodoma raketos buvimo vieta, aš kaip šeimininką naudojau aviečių pi, bet galite naudoti bet kurį kompiuterį.
Vykdykite šią pamoką, kaip nustatyti „lightphp“RPI, tada nukopijuokite php failus iš „github“į savo RPI aplanką/var/www/html. Tiesiog naudokite komandą
sudo tarnyba lighttpd jėgos perkrovimas
iš naujo įkelti serverį.
Būtinai persiųskite prievadus, susietus su maršrutizatoriaus serveriu, kad galėtumėte pasiekti duomenis nuotoliniu būdu. Rpi turėtų būti 80 prievadas, o išorinis prievadas gali būti savavališkas skaičius.
Gera idėja nustatyti statinį RPI IP, kad jūsų siunčiami prievadai visada nukreiptų į RPI adresą.
4 žingsnis: 2 posistemis: telemetrijos registravimas
Telemetrijos programa veikia atskirame mikrovaldiklyje nuo padėties stebėjimo sistemos. Šis sprendimas buvo priimtas dėl atminties apribojimų ATmega328, todėl abi programos negalėjo veikti vienoje sistemoje. Kitas pasirinktas mikrovaldiklis su patobulintomis specifikacijomis galėtų išspręsti šią problemą ir leisti naudoti vieną centrinį procesorių, tačiau norėjau patogiau naudoti turimas dalis.
Savybės: Ši programa pagrįsta kitu pavyzdžiu, kurį radau internete čia.
- Programa iš pradžių nuskaito santykinį aukštį (aukščio rodmenys nuliui paleidžiant), temperatūrą, slėgį, pagreitį X kryptimi (turėsite pakeisti pagreičio nuskaitymo kryptį, pagrįstą fizine jutiklio orientacija), ir laiko žymę (milis).
- Kad duomenys nebūtų registruojami sėdint paleidimo skydelyje ir eikvojant saugyklos vietą, sistema pradės rašyti duomenis tik nustačiusi aukščio pasikeitimą (galima konfigūruoti programoje) ir nustos rašyti duomenis, kai aptiks, kad raketa grįžo į pradinę padėtį aukštyje arba praėjus 5 minučių skrydžio laikui.
- Sistema parodys, kad yra įjungta ir įrašo duomenis per vieną indikatoriaus šviesos diodą.
Bandymas:
Norėdami išbandyti sistemą, pirmiausia prijunkite SD kortelės pertrauką
„Arduino“SD kortelė
4 kaištis ---------------- CS
11 kaištis -------------- DI
Smeigtukas 13 -------------- SCK
12 kaištis -------------- DARYTI
Dabar prijunkite GY-86 prie sistemos per I^2C
„Arduino GY-86“
Smeigtukas A4 -------------- SDA
Smeigtukas A5 -------------- SCL
2 kaištis ---------------- INTA
SD kortelėje sukurkite failą pagrindiniame kataloge pavadinimu datalog.txt, į kurį sistema įrašys duomenis.
Prieš įkeldami „Data_Logger.ino“eskizą į mikrovaldiklį, pakeiskite ALT_THRESHOLD reikšmę į 0, kad sistema nekreiptų dėmesio į bandymo aukštį. Įkėlę atidarykite 9600 baudų serijos monitorių, kad pamatytumėte sistemos išvestį. Įsitikinkite, kad sistema gali prisijungti prie jutiklio ir kad duomenys įrašomi į SD kortelę. Atjunkite sistemą ir įdėkite SD kortelę į kompiuterį, kad patikrintumėte, ar kortelėje įrašyti duomenys.
5 žingsnis: sistemos integravimas
Patikrinus, ar kiekviena sistemos dalis veikia ta pačia konfigūracija, kuri naudojama pagrindinėje PCB, atėjo laikas viską sujungti ir pasiruošti paleidimui! Aš įtraukiau „Gerbers“ir „EAGLE“failus į PCB ir schemą į „github“. turėsite įkelti gerbėjus į gamintoją, pvz., OSH parką ar JLC, kad jie būtų pagaminti. Šios plokštės yra dviejų sluoksnių ir yra pakankamai mažos, kad tilptų į daugumą 10 cm x 10 cm gamintojų pigių plokščių.
Sugrąžinus lentas nuo gamybos laiko, reikia ant lentos lituoti visus skaičiuoklėje ir dalių sąraše esančius komponentus.
Programavimas:
Kai viskas bus sulituota, turėsite įkelti programas į du mikrovaldiklius. Norėdami sutaupyti vietos plokštėje, neįtraukiau jokių USB funkcijų, tačiau palikau nesugadintus ICSP ir nuoseklius prievadus, kad vis tiek galėtumėte įkelti ir stebėti programą.
- Norėdami įkelti programą, vadovaukitės šia pamoka, kaip naudoti „Arduino“plokštę kaip programuotoją. Įkelkite SimGpsTransmitter.ino į ICSP_GPS prievadą ir Data_Logger.ino į ICSP_DL prievadą (PCSP ICSP prievadas yra toks pat, kaip ir standartinėse „Arduino UNO“plokštėse).
-
Įkėlę visas programas, galite įjungti įrenginį iš akumuliatoriaus įvesties 3,7–4,2 V įtampa ir naudoti 4 indikatoriaus lemputes, kad patikrintumėte, ar sistema veikia.
- Pirmosios dvi lemputės 5V_Ok ir VBATT_OK rodo, kad baterija ir 5v bėgeliai yra maitinami.
- Trečioji lemputė DL_OK mirksės kas 1 sekundė, nurodydama, kad telemetrijos registravimas yra aktyvus.
- Paskutinė lemputė SIM_Transmit įsijungs, kai bus prijungti koriniai ir GPS moduliai ir duomenys bus siunčiami į serverį.
6 žingsnis: gaubtas
Raketos, kuria aš planuoju šį projektą, vidinis skersmuo yra 29 mm, kad būtų apsaugota elektronika ir kad agregatas tilptų į raketos cilindrinį korpusą, aš padariau paprastą dviejų dalių 3D spausdintą dėklą, kuris yra prisukamas ir pritvirtintas indikatorių peržiūros prievadai. Spausdinti skirti STL failai ir originalūs.ipt failai yra „github“saugykloje. Aš to nemodeliavau, nes nebuvau tikras dėl baterijos, kurią tuo metu naudosiu, tačiau rankiniu būdu sukūriau įdubą 120 mAh talpos baterijai, kad ji būtų lygi korpuso apačiai. Apskaičiuota, kad ši baterija suteikia ~ 45 min. Maksimalų sistemos veikimo laiką, kai sunaudojama ~ 200 mA energijos (tai priklauso nuo procesoriaus naudojimo ir energijos perdavimo duomenų perdavimui).
7 žingsnis: Išvada
Šis projektas buvo gana paprastas dviejų atskirų sistemų įgyvendinimas, atsižvelgiant į tai, kad aš tik naudojau „Amazon“rastus atskirus modulius, todėl bendra sistemos integracija yra šiek tiek silpna, nes bendras projekto dydis yra gana didelis. Žvelgiant į kai kurių gamintojų pasiūlymus, naudojant SIP, apimantį ir korinį, ir GPS, bendras pakuotės dydis labai sumažėtų.
Esu tikras, kad po daugiau bandymų skrydžio metu turėsiu atlikti tam tikrus programos pakeitimus ir būtinai atnaujinsiu „Github“atpirkimo sandorį su bet kokiais pakeitimais.
Tikimės, kad jums patiko šis projektas, nedvejodami susisiekite su manimi visais kilusiais klausimais.
Rekomenduojamas:
„Alexa“balsu valdoma raketų paleidimo priemonė: 9 žingsniai (su paveikslėliais)
„Alexa“balsu valdoma raketų paleidimo priemonė: artėjant žiemos sezonui; ateina tas metų laikas, kai švenčiama šviesų šventė. Taip, mes kalbame apie Diwali, kuris yra tikra Indijos šventė, švenčiama visame pasaulyje. Šiais metais Diwali jau baigėsi ir mato žmones
„Magicbit“[Magicblocks] dviračio atramos padėties jutiklis: 8 žingsniai
Dviračio atramos padėties jutiklis iš „Magicbit“[„Magicblocks“]: paprastas „pasidaryk pats“projektas, skirtas atraminio stovo padėties jutikliui su „Magicbit“sukurti naudojant „Magicblocks“. Šiame projekte, kuris grindžiamas ESP32, mes naudojame „Magicbit“kaip kūrimo lentą. Todėl šiame projekte gali būti naudojama bet kuri ESP32 kūrimo plokštė
RC plokštumos aukščio matuoklis (suderinamas su „Spektrum“telemetrija): 7 žingsniai
RC lėktuvo aukščio matuoklis (suderinamas su „Spektrum“telemetrija): aš padariau šį aukščio matuoklį, kad pilotas žinotų, jog JAV RC lėktuvuose jie yra žemiau 400 pėdų ribos. Mano draugas buvo susirūpinęs, nes negalėjo tiksliai pasakyti, kad visada buvo mažesnis nei 400 pėdų, ir norėjo papildomo patikinimo, kad jutiklis turi
Belaidis saugos raketų paleidimo įrenginys: 8 žingsniai
Belaidis saugos raketų paleidimo įrenginys: Sveiki, aš sukūriau įdomų belaidžio raketų paleidimo projektą ir tikiuosi, kad jums tai tikrai patiks. Keturių kanalų relės lenta naudojama keturioms petardų raketoms paleisti belaidžiu būdu arba vienu metu be rizikos vieno bėgimo
Aplinkos telemetrija „Cohete De Agua“: 8 žingsniai
„Ambiental“nuotolinio valdymo pultas „Cohete De Agua“: „Hola soy Fabi“ir „Picado Garc“, „quiero mostrarles c & oacute“, „elaborar un system de telemetr í“; aplinkos aplinkos mediante el empleo de un cohete de agua dos komponentai: