Obsah:

Raketová telemetria/sledovač polohy: 7 krokov
Raketová telemetria/sledovač polohy: 7 krokov

Video: Raketová telemetria/sledovač polohy: 7 krokov

Video: Raketová telemetria/sledovač polohy: 7 krokov
Video: planeTALK | Philip PLANTHOLT, VP Flightradar24 "The Facebook of Aviation" (С субтитрами) 2024, November
Anonim
Raketová telemetria/sledovač polohy
Raketová telemetria/sledovač polohy

Tento projekt je zameraný na zaznamenávanie letových údajov z modulu senzora 9 DOF na kartu SD a súčasný prenos jeho polohy GPS prostredníctvom mobilných sietí na server. Tento systém umožňuje nájsť raketu, ak je pristávacia plocha systému mimo LOS.

Krok 1: Zoznam dielov

Zoznam položiek
Zoznam položiek
Zoznam položiek
Zoznam položiek

Telemetrický systém:

1x mikrokontrolér ATmega328 (Arduino UNO, Nano)

1x Micro SD Breakout -

1x karta Micro SD - (na veľkosti nezáleží vo formáte FAT 16/32) - Amazon Link

1x Gy -86 IMU - odkaz Amazon

Sledovanie polohy:

1x mikrokontrolér ATmega328 (Arduino UNO, Nano) (každý systém potrebuje svoj vlastný mikro)

1x GSM GPRS modul Sim800L - Amazon Link

1x SIM karta (musí mať dátový plán) - https://ting.com/ (poplatky za používanie, ktoré používate)

1x GPS modul NEO 6M - Amazon LInk

Všeobecné diely:

1x 3,7v lipo batéria

1x 3,7-5v zosilňovač (ak nevybudujete PCB)

1x Raspberry pi alebo akýkoľvek počítač, ktorý môže byť hostiteľom php servera

-Prístup k 3D tlačiarni

-BOM pre PCB je uvedený v tabuľke

-Gerbers sú v repo github -https://github.com/karagenit/maps-gps

Krok 2: Subsystém 1: Sledovanie polohy

Testovanie:

Akonáhle budete mať súčasti systému (NEO-6M GPS, Sim800L) v ruke, budete musieť nezávisle otestovať funkčnosť systémov, aby vás pri bolestiach hlavy neprišlo na to, čo sa deje pri integrácii systémov.

Testovanie GPS:

Na testovanie prijímača GPS môžete použiť softvér poskytovaný spoločnosťou Ublox (U-Center Software)

alebo testovací náčrt prepojený s repo servera github (test GPS)

1. Ak chcete testovať so softvérom U-center, jednoducho pripojte prijímač GPS cez USB a vyberte port com v U-centre. Potom by mal systém automaticky začať sledovať vašu polohu.

2. Ak chcete testovať s mikroradičom, nahrajte skicu testovania GPS na arduino prostredníctvom IDE. Potom pripojte 5V a GND k označeným kolíkom na prijímači k pinu arduino a GPS RX k digitálu 3 a kolíku TX k digitálu 4 k arduinu. Nakoniec otvorte sériový monitor na IDE arduino, nastavte prenosovú rýchlosť na 9600 a overte správnosť prijatých súradníc.

Poznámka: Vizuálnym identifikátorom satelitného zámku na module NEO-6M je, že červená kontrolka LED bliká každých niekoľko sekúnd, čím signalizuje spojenie.

Testovanie SIM800L:

Na testovanie mobilného modulu budete potrebovať SIM kartu zaregistrovanú s aktívnym dátovým paušálom, odporúčam Ting, pretože účtujú iba to, čo používate namiesto mesačného dátového plánu.

Cieľom modulu Sim je odoslať požiadavku HTTP GET na server s umiestnením, ktoré prijíma prijímač GPS.

1. Ak chcete otestovať modul bunky, vložte do modulu simcard skoseným koncom smerom von

2. Pripojte sim modul k GND a zdroju 3,7-4,2v, nepoužívajte 5v !!!! modul nemôže pracovať na 5 V. Pripojte modul Sim RX k analógovému 2 a TX k analógovému 3 na Arduine

3. Odošlite náčrt sériového postupu z github, aby ste mohli odosielať príkazy do modulu bunky.

4. postupujte podľa tohto tutoriálu alebo si stiahnite skúšobnú verziu AT Command Tester a vyskúšajte si funkciu HTTP GET

Implementácia:

Keď overíte, že oba systémy fungujú nezávisle, môžete prejsť na odovzdanie celého náčrtu na github mikrokontroléra. môžete otvoriť sériový monitor na 9600 baudov a overiť, či systém odosiela údaje na webový server.

*Nezabudnite zmeniť ip a port servera na svoj vlastný a uistite sa, že nájdete APN pre poskytovateľa buniek, ktorého používate.

Prejdite na ďalší krok, kde sme nastavili server

Krok 3: Nastavenie servera

Nastavenie servera
Nastavenie servera

Na nastavenie servera na zobrazenie polohy rakety som ako hostiteľa použil malinový pi, ale môžete použiť ľubovoľný počítač.

Nasledujte tento návod na nastavenie lightphp na RPI a potom skopírujte súbory php z github do priečinka/var/www/html vášho RPI. Potom stačí použiť príkaz

sudo service lighttpd force-reload

znova načítať server.

Porty priradené k serveru na smerovači presmerujte, aby ste k údajom mali vzdialený prístup. Na RPI by to mal byť port 80 a externý port môže byť ľubovoľné číslo.

Je dobré nastaviť statickú ip pre RPI, aby porty, ktoré preposielate, vždy smerovali na adresu RPI.

Krok 4: Podsystém 2: Protokolovanie telemetrie

Program telemetrie beží na samostatnom mikrokontroléri od systému sledovania polohy. Toto rozhodnutie bolo urobené kvôli obmedzeniu pamäte na ATmega328, ktoré bránilo spusteniu oboch programov na jednom systéme. Ďalší výber mikrokontroléra s vylepšenými špecifikáciami by mohol tento problém vyriešiť a umožniť použitie jedného centrálneho procesora, ale chcel som použiť diely, ktoré som mal po ruke, na jednoduché použitie.

Popis: Tento program je založený na inom príklade, ktorý som tu našiel online.

  • Program natívne číta relatívnu nadmorskú výšku (výška sa pri spustení vynuluje), teplotu, tlak, zrýchlenie v smere X (smer čítania zrýchlenia budete musieť zmeniť na základe fyzickej orientácie snímača) a časovú pečiatku (v milisekundách)).
  • Aby sa zabránilo zaznamenávaniu údajov, zatiaľ čo sedíte na odpaľovacej podložke a plytváte úložným priestorom, systém začne zapisovať údaje len vtedy, keď zistí zmenu nadmorskej výšky (konfigurovateľné v programe) a prestane zapisovať údaje, akonáhle zistí, že sa raketa vrátila do pôvodnej polohy. nadmorskej výške alebo po uplynutí 5 minút letu.
  • Systém bude indikovať, že je zapnutý, a zapisovať údaje pomocou jedinej kontrolky LED.

Testovanie:

Na otestovanie systému najskôr pripojte rozbitú kartu SD

SD karta Arduino

Kolík 4 ---------------- CS

Kolík 11 -------------- DI

Pin 13 -------------- SCK

Pin 12 -------------- DO

Teraz pripojte GY-86 k systému cez I^2C

Arduino GY-86

Kolík A4 -------------- SDA

Kolík A5 -------------- SCL

Pin 2 ---------------- INTA

Na karte SD vytvorte v hlavnom adresári súbor s názvom datalog.txt, do ktorého bude systém zapisovať údaje.

Pred nahraním náčrtu Data_Logger.ino do mikrokontroléra zmeňte hodnotu ALT_THRESHOLD na 0, aby systém ignoroval nadmorskú výšku na testovanie. Po odoslaní otvorte sériový monitor na 9600 baudov, aby ste videli výstup systému. Zaistite, aby sa systém mohol pripojiť k senzoru a aby sa údaje zapisovali na kartu SD. Odpojte systém a vložte kartu SD do počítača, aby ste si overili, či boli na kartu zapísané údaje.

Krok 5: Integrácia systému

Integrácia systému
Integrácia systému
Integrácia systému
Integrácia systému

Po overení, že každá časť systému funguje v rovnakej konfigurácii, aká bola použitá na hlavnej doske s plošnými spojmi, je načase všetko spojiť a pripraviť sa na spustenie! Zahrnul som súbory Gerbers a EAGLE pre DPS a schému do githubu. budete musieť nahrať gerbery k výrobcovi, ako napríklad BOZP park alebo JLC, aby ich vyrobili. Tieto dosky sú dvojvrstvové a sú dostatočne malé, aby sa zmestili do väčšiny výrobcov lacných dosiek kategórie 10 cm x 10 cm.

Akonáhle budete mať dosky späť z výroby, je čas na dosku spájkovať všetky súčiastky nachádzajúce sa v tabuľke a zozname dielov.

Programovanie:

Keď je všetko spájkované, budete musieť nahrať programy do dvoch mikrokontrolérov. Aby som ušetril miesto na doske, neuviedol som žiadnu funkciu USB, ale ponechal som prerušený ICSP a sériové porty, aby ste mohli program stále nahrávať a monitorovať.

  • Ak chcete nahrať program, postupujte podľa tohto tutoriálu o použití dosky Arduino ako programátora. Nahrajte SimGpsTransmitter.ino na port ICSP_GPS a Data_Logger.ino na port ICSP_DL (Port ICSP na doske plošných spojov má rovnaké rozloženie, aké sa nachádza na štandardných doskách Arduino UNO).
  • Akonáhle sú všetky programy nahrané, môžete zariadenie napájať z batériového vstupu 3,7-4,2V a pomocou 4 kontroliek overiť, že systém funguje.

    • Prvé dve kontrolky 5V_Ok a VBATT_OK indikujú, že batéria a 5v koľajnice sú napájané.
    • Tretie svetlo DL_OK bude blikať každú 1 sekundu, čo znamená, že protokolovanie telemetrie je aktívne.
    • Posledná kontrolka SIM_Transmit sa zapne, keď sú mobilné moduly a moduly GPS prepojené a údaje sú odosielané na server.

Krok 6: Príloha

Ohrada
Ohrada

Raketa, okolo ktorej navrhujem tento projekt, má vnútorný priemer 29 mm, aby som ochránil elektroniku a umožnil montáž zostave do valcového telesa rakety, vyrobil som jednoduché dvojdielne 3D tlačené puzdro, ktoré je zoskrutkované a má zobrazovacie porty pre kontrolky. Súbory STL na tlač a pôvodné súbory.ipt sú v úložisku github. Nemodeloval som to, pretože som si nebol istý batériou, ktorú by som v tej dobe používal, ale ručne som vytvoril vybranie pre 120 mAh batériu, ktoré by sedelo v spodnej časti puzdra. Odhaduje sa, že táto batéria poskytuje systému maximálnu dobu prevádzky ~ 45 minút pri spotrebe energie ~ 200 mA (závisí to od využitia procesora a odberu energie pri prenose údajov, pri karte SIM800L sa uvádza, že počas komunikácie v dávkach narastá o 2A).

Krok 7: Záver

Tento projekt bol celkom jednoduchou implementáciou dvoch samostatných systémov, pretože som práve používal diskrétne moduly nachádzajúce sa na Amazone, celková integrácia systému je trochu nevýrazná, pretože celková veľkosť projektu je na to, čo robí, dosť veľká. Pri pohľade na ponuky niektorých výrobcov by využitie SIP, ktorý zahŕňa mobilné aj GPS, výrazne znížilo celkovú veľkosť balíka.

Som si istý, že po ďalších letových testoch budem musieť vykonať určité úpravy programu a určite aktualizujem repo Github o akýchkoľvek zmenách.

Dúfam, že sa vám tento projekt páčil, v prípade akýchkoľvek otázok ma neváhajte kontaktovať.

Odporúča: