Sommario:
- Forniture
- Fase 1: COSTRUZIONE
- Passaggio 2: SOFTWARE
- Fase 3: CONCLUSIONE
- Passaggio 4: formati di file GPS e KML
Video: Tracciamento percorso GPS V2: 4 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:01
Progetto: Tracciamento percorso GPS V2
Data: maggio - giugno 2020
AGGIORNARE
La prima versione di questo progetto, sebbene funzionasse in linea di principio, presentava una serie di errori che dovevano essere corretti. Innanzitutto non mi piaceva la scatola quindi l'ho sostituita con un'altra. In secondo luogo, i calcoli per la velocità e la distanza non sono corretti. Ulteriori test sul campo con l'unità posizionata all'interno di un veicolo e consentito di mappare il percorso e quindi questo percorso mappato è stato mappato su GPS Visualizer e Google Earth Pro con ottimi risultati sia in termini di percorso effettivo mappato che distanza calcolata misurata rispetto all'opzione "righello" in Terra Pro
Inoltre la circuiteria è stata aggiornata in modo che le batterie 18650 fornissero alimentazione direttamente alla scheda ESP32 DEV, mentre l'unità NEO7M GSP fosse alimentata direttamente dal modulo Step Down anziché tramite la scheda DEV. Questo ha prodotto un sistema più stabile. Il software è stato generalmente riordinato, con l'opzione Email e successiva connessione al Router locale eseguita solo se l'unità ha trovato uno o più file disponibili per l'invio. Un ultimo miglioramento è stato quello di modificare il test "gps.location.isValid" in "gps.location.isUpdated" per garantire che solo le posizioni GPS aggiornate fossero salvate all'interno del file del percorso, anziché più posizioni GPS ciascuna con la stessa latitudine e longitudine
Vorrei notare a questo punto che questo è il primo sistema basato su GPS che ho creato e le versioni successive sostituirebbero in gran parte il cablaggio esistente con una scheda basata su PCB. Per garantire che tutti i collegamenti dei cavi non falliscano, durante la manipolazione approssimativa, tutti questi collegamenti sono stati incollati
Ho aggiornato i file ICO e Fritzing e aggiunto nuove foto per mostrare le modifiche che ho apportato
PANORAMICA
Questo progetto è stato un completo cambio di direzione per me, allontanandomi da Nixie Clocks e dai robot basati su WiFi. L'uso di un modulo Arduino basato su GPS mi ha incuriosito per un po' di tempo e poiché avevo del tempo libero in attesa di parti aggiuntive per il progetto principale su cui sto anche lavorando, ho deciso di costruire un dispositivo di tracciamento del percorso GPS, alimentato a batteria, leggero, portatile e in grado di trasferire le informazioni sul percorso tramite una scheda micro SD o, se era disponibile una rete WiFi, tramite e-mail e un file allegato. Questo progetto ha richiesto l'uso di quattro componenti che non avevo mai usato prima, vale a dire uno schermo oLED da 0,96 pollici, un lettore di schede SD, un modulo GPS e la scheda di sviluppo ESP32. La dimensione finale dell'unità, sebbene certamente portatile, potrebbe essere ulteriormente ridotta, del 25-50%, se il cablaggio che ho utilizzato fosse sostituito con una scheda PCB collegata direttamente alla scheda di sviluppo ESP32 e le batterie 18650 e step-down modulo è stato sostituito con una batteria agli ioni di litio da 5 V adatta.
Forniture
1. Scheda di sviluppo ESP32
2. Orologio RTC DS3231 con batteria di backup
3. Lettore basato su Micro SD Card SPI, con scheda micro SD da 1 GB
4. Schermo basato su OLED I2C da 0,96 pollici
5. Modulo GPS NEO-7M-0-000
6. Condensatore da 10uF
7. Resistori 2 x 10K, resistore 4.7K
8. Trasformatore step down DC-DC
9. 2 batterie 18650
10. Doppio portabatteria 18650
11. Interruttore unipolare
12. Interruttore a pulsante momentaneo
13. 2 scatole per progetti da 100 mm x 50 mm x 65 mm
14. Fili Dupont, colla a caldo.
Fase 1: COSTRUZIONE
Il diagramma di Fritzing allegato mostra il layout del circuito. Le due batterie 18650 e il modulo step-down possono essere sostituiti con una batteria agli ioni di litio che fornisce direttamente 5V. Raccomando il modulo NEO-7M con la presa dell'antenna esterna SMA integrata che consente di aggiungere un semplice pezzo di cavo lungo 30 cm che raccoglie le informazioni satellitari, questo spesso richiede alcuni minuti dopo l'accensione iniziale dell'unità. La parte inferiore delle due scatole del progetto ha aperture per lo schermo, l'antenna GPS, l'interruttore e la scheda SD, contiene anche l'orologio RTC, il lettore di schede SD, lo schermo oLED da 0,96 , il pulsante, il modulo GPS e la scheda PCB. La scatola del progetto superiore contiene la scheda di sviluppo ESP32, batterie 18650 e portabatterie, modulo step-down e un'unica apertura per l'interruttore unipolare. La parte superiore di questa scatola del progetto è tenuta in posizione con quattro viti a testa svasata che possono essere rimosse per consentire la rimozione, la ricarica e la sostituzione delle due batterie 18650 ricaricabili. L'unità non è impermeabile, tuttavia potrebbe esserlo. All'interno di questa scatola superiore del progetto potrebbe anche essere installato un adatto caricabatterie basato su USB, con un'apertura adeguata, per consentire la ricarica delle batterie all'interno senza la necessità di rimuovere il coperchio della scatola. Mentre il modulo GPS può fornire l'ora e la data, come ottenute dal satellite, ho deciso che l'ora e la data locali sarebbero state più adatte, quindi ho aggiunto un modulo RTC.
Alcune delle foto della costruzione mostrano lo sviluppo iniziale di questo progetto in cui stavo utilizzando una scheda WeMos D1 R2 e un semplice display a LED 16x2, entrambi sostituiti nella versione finale.
Passaggio 2: SOFTWARE
Il motivo per cui la scheda Arduino basata su ESP32 è stata che dopo alcune ricerche ho scoperto che ESP32 può inviare e-mail con successo a un account G-Mail, a condizione che le impostazioni dell'account vengano modificate in modo da consentire la ricezione di "e-mail meno sicure", ciò richiede una modifica nelle impostazioni dell'account G-Mail. Per accedervi, vai all'opzione di menu "Gestisci account Google", quindi seleziona "Sicurezza" e infine scorri verso il basso fino a visualizzare "Accesso app meno sicuro", attiva questa funzione.
Dovrai scaricare e installare i seguenti file include: TinyGPS++.h, SoftwareSerial.h, "RTClib.h", "ESP32_MailClient.h", "SPIFFS.h", WiFiClient.h, math.h, Wire.h, SPI.h, SD.h, Adafruit_GFX.h e Adafruit_SSD1306.h.
Il programma è stato sviluppato utilizzando la versione 1.8.12 dell'IDE Arduino e la scheda selezionata è stata la "DOIT ESP32 DEVKIT V1".
A causa delle dimensioni del programma non è possibile sviluppare questo programma su un Arduino UNO, inoltre durante il download del software è necessario rimuovere il cavo TX dal modulo GSP altrimenti il download fallirà. Un condensatore da 10uF è stato collegato ai pin "EN" e "GND" della scheda ESP32 in modo che non fosse necessario premere il pulsante "EN" ogni volta che veniva scaricato un nuovo programma software.
Il software Arduino è stato sviluppato per consentire all'utente del sistema di registrare uno o più percorsi all'interno dell'unità e quindi rimuovere la scheda SD e caricarli tramite un lettore di schede basato su PC, oppure selezionare l'opzione di menu E-Mail e avere tutti i file di percorso contenuti nell'unità inviati a un account G-Mail, un percorso allegato a ciascun messaggio di posta. I file di percorso sono formattati all'interno dell'Unità e possono assumere la forma di due diversi stili, formato “GPX” che può essere visualizzato direttamente utilizzando “GPS Viewer” un'applicazione google disponibile gratuitamente su Internet, o “KML” formato visualizzabile direttamente tramite l'applicazione “Google Earth Pro” scaricabile da Internet. Questa stessa applicazione può anche leggere e visualizzare i file di percorso basati su "GPX". Entrambi questi formati di file sono disponibili gratuitamente come schemi di formato di file e possono essere trovati su Internet su Wikipedia. Una volta che l'e-mail o le e-mail sono state inviate, l'unità tornerà al monitoraggio del percorso, tuttavia utilizzerà per impostazione predefinita il formato file GPX. Il pulsante viene utilizzato per selezionare l'opzione E-Mail, selezionare il formato file GPX o KML e avviare e interrompere la registrazione del percorso. Nella modalità di monitoraggio del percorso lo schermo oLED visualizzerà la longitudine e la latitudine della posizione corrente e quindi su un secondo schermo visualizzerà l'ora corrente, la data, l'altitudine in metri, il numero di satelliti utilizzati, la velocità in Km e infine la rotta data come una dei punti cardinali cardinali. Mentre nella modalità di registrazione della rotta lo schermo visualizzerà il file di rotta che ha aperto, quindi oltre alle due schermate precedentemente descritte verrà visualizzata una terza schermata che dettaglia il file di rotta in uso, il numero di waypoint che ha registrato e infine la distanza percorsa in Km.
Le immagini seguenti mostrano come le e-mail, create e inviate dall'unità, vengono ricevute e visualizzate da G-Mail.
Fase 3: CONCLUSIONE
Ho imparato molto dallo sviluppo di questo progetto, tuttavia questa unità può essere considerata solo un "back-end" per un sistema basato su App che prende i file GPX o KML e li visualizza. L'utilizzo di software di terze parti era un'alternativa accettabile all'ulteriore sviluppo di questo software. La disponibilità dell'opzione di menu "App meno sicura" nel menu Gestione account Google potrebbe essere limitata in quanto potrebbero verificarsi modifiche nel giugno del 2020, in tal caso potrebbe essere necessario reindirizzare l'e-mail a un account alternativo o utilizzando la porta 586 sul server di posta.
Passaggio 4: formati di file GPS e KML
Quanto segue mostra un tipico contenuto di file per ogni tipo di file generato dall'unità (i valori di latitudine e longitudine non cambiano molto in questi esempi perché l'unità è stazionaria). Entrambi i file contengono i dati minimi di intestazione e piè di pagina richiesti da GPS Viewer e Google Earth pro per visualizzare una semplice linea nera che mostra il percorso effettuato:
Il file KML:
Il file GPX:
Consigliato:
Interruzione dell'alimentazione CA, luce di percorso a LED con batteria tampone: 8 passaggi
Interruzione dell'alimentazione CA, luce di percorso a LED alimentata da batteria: durante una recente interruzione di corrente, nelle profondità più buie del mio seminterrato… una luce sarebbe stata davvero molto utile. Sfortunatamente la mia torcia era a poche stanze buie di distanza. Frugai un po', trovai la luce e mi diressi verso la camera familiare. Il mio wi
Dispositivo di sicurezza per donne con tracciamento GPS e avvisi con Arduino: 6 passaggi
Dispositivo di sicurezza per donne con tracciamento GPS e avvisi tramite Arduino: con tutta la tecnologia a nostra disposizione negli ultimi tempi, non è difficile costruire un dispositivo di sicurezza per le donne che non solo generi un allarme di emergenza, ma invii anche un messaggio ai tuoi amici, familiari , o persona interessata. Qui costruiremo una band
Raspberry Pi - Mars Rover autonomo con tracciamento di oggetti OpenCV: 7 passaggi (con immagini)
Raspberry Pi - Mars Rover autonomo con tracciamento di oggetti OpenCV: alimentato da un Raspberry Pi 3, riconoscimento di oggetti Open CV, sensori a ultrasuoni e motori CC con riduttore. Questo rover può tracciare qualsiasi oggetto per cui è addestrato e muoversi su qualsiasi terreno
Sistema di tracciamento bici con allarme uomo morto con Sigfox: 7 passaggi (con immagini)
Sistema di tracciamento bici con allarme uomo morto con Sigfox: sistema di sicurezza per ciclisti con funzioni di tracciamento e invio di avvisi. In caso di incidente viene inviato un allarme con posizione GPS. La sicurezza per i ciclisti è un must, con incidenti in bici da strada o mountain bike accadono e il prima possibile l'emergenza per
Luce del percorso del camion Tonka a LED solare: 8 passaggi (con immagini)
Solar LED Tonka Truck Path Light: nuova vita per i vecchi giocattoli! Riporta in vita i tuoi vecchi camion giocattolo con i segnapasso a LED. Non ho mai voluto separarmi dalla mia amata Tonka dump tuck ma da adulto è diventato sempre più difficile giustificare il mantenimento… fino ad ora