Taula de continguts:
- Pas 1: llista de peces
- Pas 2: subsistema 1: seguiment de posició
- Pas 3: Configuració del servidor
- Pas 4: subsistema 2: registre de telemetria
- Pas 5: integració del sistema
- Pas 6: recinte
- Pas 7: Conclusió
Vídeo: Telemetria de coets / localitzador de posicions: 7 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Aquest projecte està destinat a registrar dades de vol des d’un mòdul de sensor de 9 DOF a una targeta SD i transmetre simultàniament la seva ubicació GPS a través de xarxes cel·lulars a un servidor. Aquest sistema permet trobar el coet si la zona d'aterratge del sistema està més enllà de LOS.
Pas 1: llista de peces
Sistema de telemetria:
1x microcontrolador ATmega328 (Arduino UNO, Nano)
1x Micro SD Breakout:
1x targeta Micro SD - (la mida no té format FAT 16/32 format) - Amazon Link
1x Gy-86 IMU: enllaç Amazon
Seguiment de la posició:
1x microcontrolador ATmega328 (Arduino UNO, Nano) (cada sistema necessita el seu propi micro)
1 mòdul GPRS Sim800L GSM: Amazon Link
1x targeta SIM (ha de tenir un pla de dades) - https://ting.com/ (només cobra el que utilitzeu)
1 mòdul GPS NEO 6M: Amazon LInk
Parts generals:
1 bateria lipo de 3,7 v
1x convertidor amplificador de 3,7-5 v (si no construïu el PCB)
1x Raspberry pi o qualsevol ordinador que pugui allotjar un servidor PHP
-Accés a la impressora 3D
-La llista de materials per a PCB apareix al full de càlcul
-Els gerents es troben al repositori de github -
Pas 2: subsistema 1: seguiment de posició
Proves:
Un cop tingueu a mà les peces del sistema (NEO-6M GPS, Sim800L), heu de provar la funcionalitat dels sistemes de manera independent per tal que no tingueu mal de cap intentant esbrinar què no funciona quan s’integren els sistemes.
Proves GPS:
Per provar el receptor GPS, podeu utilitzar el programari subministrat per Ublox (U-Center Software)
o l'esbós de la prova enllaçat al repositori de github (prova GPS)
1. Per fer proves amb el programari U-center, només cal que connecteu el receptor GPS mitjançant USB i seleccioneu el port de com a U-center; el sistema hauria de començar automàticament el seguiment de la vostra ubicació.
2. Per provar amb un microcontrolador, pengeu l'esbós de proves de GPS a un arduino mitjançant l'IDE. A continuació, connecteu 5V i GND als pins etiquetats del receptor a l’arduino i el pin RX GPS al digital 3 i el pin TX al digital 4 de l’arduino. Finalment, obriu el monitor sèrie a l'IDE arduino i configureu la velocitat de transmissió en 9600 i verifiqueu que les coordenades rebudes siguin correctes.
Nota: Un identificador visual del bloqueig de satèl·lit al mòdul NEO-6M és que l'indicador de led vermell parpellejarà cada pocs segons per indicar una connexió.
Proves SIM800L:
Per provar el mòdul cel·lular, haureu de tenir una targeta SIM registrada amb un pla de dades actiu, us recomano Ting perquè només cobren el que feu servir en lloc d’un pla de dades mensual.
L’objectiu del mòdul Sim és enviar una sol·licitud HTTP GET al servidor amb la ubicació que rep el receptor GPS.
1. Per provar el mòdul de cel·la, inseriu la targeta sim al mòdul amb l'extrem bisellat cap a fora
2. Connecteu el mòdul sim a GND i una font de 3.7-4.2v, no utilitzeu 5v !!!! el mòdul no pot funcionar a 5v. Connecteu el mòdul Sim RX a Analog 2 i TX a Analog 3 a l'Arduino
3. Pengeu l'esbós de passatge en sèrie des del github per poder enviar ordres al mòdul de cel·la.
4. seguiu aquest tutorial o descarregueu la prova de AT Command Tester per provar la funcionalitat HTTP GET
Implementació:
Un cop hàgiu comprovat que tots dos sistemes funcionen de forma independent, podeu passar a carregar l'esbós complet al github del microcontrolador. Podeu obrir el monitor sèrie a 9600 bauds per verificar que el sistema envia dades al servidor web.
* No us oblideu de canviar la IP i el port del servidor al vostre i assegureu-vos de trobar l'APN del proveïdor de cèl·lules que utilitzeu.
Aneu al pas següent on configurem el servidor
Pas 3: Configuració del servidor
Per configurar un servidor per mostrar la ubicació del coet, he utilitzat un raspberry pi com a amfitrió, però podeu utilitzar qualsevol ordinador.
Seguiu aquest tutorial per configurar lightphp en un RPI i, a continuació, copieu els fitxers php del github a la carpeta / var / www / html del vostre RPI. Després només heu d'utilitzar l'ordre
servei sudo lighttpd recàrrega forçada
per tornar a carregar el servidor.
Assegureu-vos de reenviar els ports associats al servidor del vostre encaminador perquè pugueu accedir a les dades de forma remota. Al rpi hauria de ser el port 80 i el port extern pot ser un nombre arbitrari.
És una bona idea establir un IP estàtic per a l'RPI, de manera que els ports que reenvieu sempre apunten cap a l'adreça de l'RPI.
Pas 4: subsistema 2: registre de telemetria
El programa de telemetria s’executa en un microcontrolador separat del sistema de seguiment de posició. Aquesta decisió es va prendre a causa de les limitacions de memòria de l'ATmega328 que impedia que ambdós programes poguessin executar-se en un sistema. Una altra opció de microcontrolador amb especificacions millorades podria resoldre aquest problema i permetre l’ús d’un processador central, però volia utilitzar les parts que tenia a mà per facilitar-ne l’ús.
Característiques: aquest programa es basa en un altre exemple que he trobat en línia aquí.
- El programa llegeix de forma nativa l’altitud relativa (lectura de l’altitud posada a zero a l’inici), la temperatura, la pressió, l’acceleració en la direcció X (haureu de canviar la direcció de l’acceleració llegida en funció de l’orientació física del sensor) i una marca de temps (en mil·lis)).
- Per evitar que es registrin dades mentre està assegut al llançador i malgastant espai d’emmagatzematge, el sistema només començarà a escriure dades un cop detecti un canvi d’altitud (configurable al programa) i deixarà d’escriure dades un cop detecti que el coet ha tornat al seu original d'altitud o després que hagi transcorregut un temps de vol de 5 min.
- El sistema indicarà que està encès i que escriu dades mitjançant un únic LED indicador.
Proves:
Per provar el sistema, primer heu de connectar la targeta SD
Targeta SD Arduino
Pin 4 ---------------- CS
Pin 11 -------------- DI
Pin 13 -------------- SCK
Pin 12 -------------- FER
Ara connecteu el GY-86 al sistema mitjançant I ^ 2C
Arduino GY-86
Pin A4 -------------- SDA
Pin A5 -------------- SCL
Pin 2 ---------------- INTA
A la targeta SD, creeu un fitxer al directori principal anomenat datalog.txt, aquí és on el sistema escriurà les dades.
Abans de penjar l'esbós Data_Logger.ino al microcontrolador, canvieu el valor de ALT_THRESHOLD a 0 perquè el sistema ignori l'altitud per a la prova. Després de carregar-lo, obriu el monitor sèrie a 9600 baud per veure la sortida del sistema. Assegureu-vos que el sistema es pugui connectar al sensor i que s’estiguin escrivint dades a la targeta SD. Desconnecteu el sistema i introduïu la targeta SD a l'ordinador per verificar que hi hagi dades escrites a la targeta.
Pas 5: integració del sistema
Després de verificar que cada part del sistema funciona amb la mateixa configuració que s'utilitza a la placa principal, és hora de reunir-ho tot i preparar-se per al llançament. He inclòs els fitxers Gerbers i EAGLE per al PCB i l'esquema al github. haureu de carregar els gerbers a un fabricant com OSH park o JLC perquè es produeixin. Aquests taulers són de dues capes i són prou petits per adaptar-se a la majoria de fabricants de la categoria de 10cmx10cm per obtenir taulers econòmics.
Un cop hàgiu tornat a fabricar els taulers, és hora de soldar tots els components del full de càlcul i de la llista de peces al tauler.
Programació:
Després de soldar-ho tot, haureu de carregar els programes als dos microcontroladors. Per estalviar espai a la placa, no he inclòs cap funcionalitat USB, però he deixat els ports sèrie i ICSP trencats perquè pugueu pujar i supervisar el programa.
- Per carregar el programa, seguiu aquest tutorial sobre l'ús d'una placa Arduino com a programador. Pengeu SimGpsTransmitter.ino al port ICSP_GPS i Data_Logger.ino al port ICSP_DL (El port ICSP del PCB té el mateix disseny que el que es troba a les plaques Arduino UNO estàndard).
-
Un cop carregats tots els programes, podeu alimentar el dispositiu des de l'entrada de la bateria amb 3,7-4,2 V i utilitzar els 4 indicadors lluminosos per verificar que el sistema funcioni.
- Els dos primers llums 5V_Ok i VBATT_OK indiquen que la bateria i els rails de 5v estan alimentats.
- La tercera llum DL_OK parpellejarà cada 1 segon per indicar que el registre de telemetria està actiu.
- L'últim llum SIM_Transmit s'encendrà quan es connectin els mòduls cel·lulars i GPS i s'enviïn dades al servidor.
Pas 6: recinte
El coet que estic dissenyant al voltant d’aquest projecte té un diàmetre intern de 29 mm, per tal de protegir l’electrònica i permetre que el muntatge s’adapti a l’interior del cos cilíndric del coet, vaig fer una senzilla caixa impresa en dues parts que es cargola i que té ports de visualització dels llums indicadors. Els fitxers STL per imprimir i els fitxers.ipt originals es troben al repositori de github. No el vaig modelar, ja que no estava segur de la bateria que faria servir en aquell moment, però vaig crear manualment un recés per a una bateria de 120 mAh que quedés al mateix nivell que la part inferior de la caixa. S’estima que aquesta bateria proporciona un temps d’execució màxim de ~ 45 minuts per al sistema amb un consum d’energia de ~ 200 mA (depèn de l’ús del processador i de l’energia consumida per a la transmissió de dades, el SIM800L es calcula per obtenir més de 2A en ràfegues durant la comunicació).
Pas 7: Conclusió
Aquest projecte va suposar una implementació força senzilla de dos sistemes separats, ja que només feia servir mòduls discrets trobats a Amazon, la integració general del sistema és una mica escassa, ja que la mida general del projecte és bastant gran pel que fa. Si mirem les ofertes d’alguns fabricants, l’ús d’un SIP que inclogui tant mòbils com GPS reduiria considerablement la mida global del paquet.
Estic segur que després de fer més proves de vol, hauré de fer algunes modificacions al programa i estaré segur d’actualitzar la reposició de Github amb qualsevol canvi.
Espero que us hagi agradat aquest projecte, no dubteu a posar-vos en contacte amb mi sobre qualsevol dubte que pugueu tenir.
Recomanat:
Llançador de coets controlat per veu basat en Alexa: 9 passos (amb imatges)
Llançador de coets controlat per veu basat en Alexa: a mesura que s’acosta la temporada d’hivern; arriba aquella època de l'any en què se celebra la festa de les llums. Sí, parlem de Diwali, que és un veritable festival indi celebrat a tot el món. Aquest any, Diwali ja s’ha acabat i veurem persones
Llançador de coets de seguretat sense fils: 8 passos
Llançador de coets de seguretat sense fils: Hola, he fet un interessant projecte de llançador de coets sense fils i espero que a vosaltres us encantarà aquest. La placa de relés de quatre canals s’utilitza per llançar quatre coets petards un per un sense fils o alhora sense risc d'un runni
Localitzador / localitzador GPS LoRa: 9 passos (amb imatges)
Localitzador GPS / Localitzador LoRa: --- Dispositiu que combina el seguiment de la ubicació en temps real i el localitzador bidireccional, a través d’una xarxa de malla LoRa .--- M’han contactat amb diverses persones en recerca i rescat Estic interessat en els altres projectes de malla Ripple LoRa que he estat treballant
Mesurar les posicions dels dits en un violí amb ESP32: 6 passos
Mesurar les posicions dels dits en un violí amb ESP32: com a violinista sempre he volgut una aplicació o una eina que em pogués mostrar la posició dels meus dits sobre el violí molt precisa. Amb aquest projecte vaig intentar construir això. Tot i que aquest és un prototip i encara podeu afegir moltes funcions. També he intentat
Carregador de Qi sense fils de 4 posicions: 9 passos (amb imatges)
Carregador Qi inalàmbric de 4 posicions: l'estació de càrrega es talla làser de fusta contraxapada de diferents gruixos i polietilè, i després es munta amb una mà plena d'acer inoxidable # 2 x 3/8 "; i # 4 x 1/2 " cap pla, cargols de xapa. Un làser de CO2 de 60 W és suficient contraxapat de bedoll baltic a