Inhoudsopgave:
- Benodigdheden
- Stap 1: BOUW
- Stap 2: SOFTWARE
- Stap 3: CONCLUSIE
- Stap 4: GPS- en KML-bestandsindelingen
Video: GPS-routetracking V2: 4 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:15
Project: GPS-route volgen V2
Datum: mei - juni 2020
UPDATE
De eerste versie van dit project, hoewel het in principe werkte, had een aantal fouten die moesten worden verholpen. Ten eerste vond ik de doos niet leuk, dus ik heb hem vervangen door een andere. Ten tweede klopten de berekeningen voor snelheid en afstand niet. Aanvullende veldtesten waarbij het apparaat in een voertuig werd geplaatst en de route in kaart kon brengen en vervolgens werd deze in kaart gebrachte route in kaart gebracht op GPS Visualizer en Google Earth Pro met uitstekende resultaten, zowel in termen van de werkelijke route in kaart gebracht als de berekende afstand gemeten tegen de "liniaal" -optie in EarthPro
Bovendien werd het circuit bijgewerkt, zodat de 18650-batterijen rechtstreeks stroom leverden aan het ESP32 DEV-bord, terwijl de NEO7M GSP-eenheid rechtstreeks vanuit de Step Down-module werd gevoed in plaats van via het DEV-bord. Dit leverde een stabieler systeem op. De software was over het algemeen netjes, met de optie E-mail en daaropvolgende verbinding met de lokale router alleen uitgevoerd als het apparaat een bestand of bestanden vond die beschikbaar waren om te verzenden. Een laatste verbetering was het veranderen van de "gps.location.isValid"-test in "gps.location.isUpdated". Dit zorgde ervoor dat alleen bijgewerkte GPS-locaties werden opgeslagen in het routebestand, in plaats van meerdere GPS-locaties die allemaal dezelfde lengte- en breedtegraad hebben
Ik zou op dit punt willen opmerken dat dit het eerste op GPS gebaseerde systeem is dat ik heb gemaakt, en volgende versies zouden de bestaande bedrading grotendeels vervangen door een op PCB's gebaseerd bord. Om ervoor te zorgen dat alle draadverbindingen niet bezwijken, zijn bij ruwe behandeling al deze verbindingen gelijmd
Ik heb de ICO- en Fritzing-bestanden bijgewerkt en nieuwe foto's toegevoegd om de wijzigingen te laten zien die ik heb aangebracht
OVERZICHT
Dit project was een complete verandering van richting voor mij, weg van Nixie Clocks en op WiFi gebaseerde robots. Het gebruik van een op GPS gebaseerde Arduino-module heeft me al een tijdje geïntrigeerd en omdat ik wat vrije tijd had om te wachten op extra onderdelen voor het hoofdproject waar ik ook aan werk, besloot ik een GPS-routevolgapparaat te bouwen, op batterijen, lichtgewicht, draagbaar en in staat om de route-informatie over te dragen via een micro SD-kaart of, als er een WiFi-netwerk beschikbaar was, via e-mail en een bijgevoegd bestand. Dit project vereiste het gebruik van vier componenten die ik nog niet eerder had gebruikt, namelijk een 0,96-inch oLED-scherm, SD-kaartlezer, GPS-module en het ESP32-ontwikkelbord. De uiteindelijke grootte van de eenheid, hoewel zeker draagbaar, zou verder kunnen worden verminderd, met een volledige 25-50%, als de bedrading die ik gebruikte zou worden vervangen door een printplaat die rechtstreeks op het ESP32-ontwikkelbord en de 18650-batterijen is aangesloten en stap-down module vervangen door een geschikt Li-ion 5V batterijpakket.
Benodigdheden
1. ESP32-ontwikkelbord
2. DS3231 RTC-klok met batterijback-up
3. Micro SD-kaart SPI-gebaseerde lezer, met 1 GB micro SD-kaart
4. 0,96-inch oLED I2C-gebaseerd scherm
5. NEO-7M-0-000 GPS-module
6. 10uF condensator:
7. 2 x 10K weerstanden, 4,7K weerstand
8. DC-DC step-down transformator
9. 2 x 18650-batterijen
10. Dubbele 18650 batterijhouder
11. Enkelpolige schakelaar
12. Tijdelijke drukschakelaar
13. 2 x 100mmx50mmx65mm projectdozen
14. Dupont-draden, hete lijm.
Stap 1: BOUW
Het bijgevoegde Fritzing-diagram toont de lay-out van het circuit. De twee 18650-batterijen en de step-down-module kunnen worden vervangen door een Li-ion-batterijpakket dat direct 5V levert. Ik raad de NEO-7M-module aan met de geïntegreerde SMA externe antennestekker waarmee je een eenvoudig stuk draad van 30 cm kunt toevoegen dat de satellietinformatie oppikt, dit duurt vaak een paar minuten nadat het apparaat voor het eerst is ingeschakeld. De onderste van de twee projectboxen heeft openingen gemaakt voor het scherm, GPS-antenne, schakelaar en SD-kaart, het bevat ook de RTC-klok, SD-kaartlezer, 0,96-inch oLED-scherm, knop, GPS-module en printplaat. De bovenste projectdoos bevat het ESP32-ontwikkelbord, 18650-batterijen en batterijhouder, step-down-module en een enkele opening voor de enkelpolige schakelaar. De bovenkant van deze projectdoos wordt op zijn plaats gehouden met vier verzonken schroeven die kunnen worden verwijderd zodat de twee 18650 oplaadbare batterijen kunnen worden verwijderd, opgeladen en vervolgens worden vervangen. Het apparaat is niet waterdicht, maar het zou zo kunnen worden gemaakt. In deze bovenste projectdoos kan ook een geschikte op USB gebaseerde batterijlader worden geïnstalleerd, met een geschikte opening, zodat de batterijen erin kunnen worden opgeladen zonder dat het deksel van de doos hoeft te worden verwijderd. Hoewel de GPS-module de tijd en datum kan leveren, zoals verkregen van de satelliet, besloot ik dat de lokale tijd en datum geschikter zouden zijn, dus heb ik een RTC-module toegevoegd.
Sommige van de constructiefoto's tonen de vroege ontwikkeling van dit project waarbij ik een WeMos D1 R2-bord en een eenvoudig 16x2 LED-display gebruikte, beide werden vervangen in de definitieve versie.
Stap 2: SOFTWARE
De reden voor het op ESP32 gebaseerde Arduino-bord was dat ik na enig onderzoek ontdekte dat de ESP32 met succes kan e-mailen naar een G-Mail-account, op voorwaarde dat de accountinstellingen worden gewijzigd zodat "minder veilige e-mails kunnen worden ontvangen", vereist dit een wijziging in de instellingen van het G-Mail-account. Om toegang te krijgen, gaat u naar de menuoptie "Google-account beheren", selecteert u vervolgens "Beveiliging" en scrolt u ten slotte naar beneden tot u "Minder veilige app-toegang" ziet, schakelt u deze functie in.
U moet de volgende bestanden downloaden en installeren: TinyGPS++.h, SoftwareSerial.h, "RTClib.h", "ESP32_MailClient.h", "SPIFFS.h", WiFiClient.h, math.h, Wire.h, SPI.h, SD.h, Adafruit_GFX.h en Adafruit_SSD1306.h.
Het programma is ontwikkeld met versie 1.8.12 van de Arduino IDE en het geselecteerde bord was de "DOIT ESP32 DEVKIT V1".
Vanwege de omvang van het programma kun je dit programma niet ontwikkelen op een Arduino UNO, ook bij het downloaden van de software is het noodzakelijk om de TX-draad van de GSP-module te verwijderen, anders mislukt de download. Een 10uF-condensator werd bevestigd aan de "EN"- en "GND"-pinnen van het ESP32-bord, zodat het niet nodig was om de "EN" -knop telkens in te drukken wanneer een nieuw softwareprogramma werd gedownload.
De Arduino-software is ontwikkeld om de gebruiker van het systeem in staat te stellen een route of routes binnen het apparaat op te nemen en vervolgens de SD-kaart te verwijderen en deze te uploaden via een pc-kaartlezer, of om de menuoptie E-mail te selecteren en alle routebestanden die op het apparaat staan, worden naar een G-Mail-account gestuurd, met aan elke e-mail een route. De routebestanden zijn geformatteerd binnen de Unit en kunnen de vorm aannemen van twee verschillende stijlen, "GPX"-formaat dat direct kan worden bekeken met behulp van "GPS Viewer", een google-applicatie die gratis te gebruiken is op internet, of "KML" formaat dat direct kan worden bekeken met behulp van de "Google Earth Pro"-applicatie die kan worden gedownload van internet. Deze zelfde applicatie kan ook de op "GPX" gebaseerde routebestanden lezen en weergeven. Beide bestandsformaten zijn vrij beschikbaar als bestandsformaatschema's en zijn te vinden op internet op Wikipedia. Zodra de e-mail of e-mails zijn verzonden, keert het apparaat terug naar de routebewaking, maar het zal standaard het GPX-bestandsformaat gebruiken. De drukknop wordt gebruikt om de optie E-mail te selecteren, het GPX- of KML-bestandsformaat te selecteren en om de routeregistratie te starten en te stoppen. In de routebewakingsmodus geeft het oLED-scherm de lengte- en breedtegraad van de huidige positie weer en vervolgens op een tweede scherm de huidige tijd, datum, hoogte in meters, aantal satellieten dat wordt gebruikt, snelheid in km en tenslotte de koers als één van de kardinale kompaspunten. Terwijl in de routeregistratiemodus het scherm het geopende routebestand toont, zal naast de twee eerder beschreven schermen een derde scherm worden weergegeven met details over het gebruikte routebestand, het aantal waypoints dat het heeft opgenomen en tot slot de afgelegde afstand in Km.
De volgende afbeeldingen laten zien hoe de e-mails, gemaakt en verzonden door het apparaat, worden ontvangen en weergegeven door G-Mail.
Stap 3: CONCLUSIE
Ik heb veel geleerd van het ontwikkelen van dit project, maar dit apparaat kan alleen worden beschouwd als een "back-end" naar een app-gebaseerd systeem dat de GPX- of KML-bestanden gebruikt om ze weer te geven. Het gebruik van software van derden was een acceptabel alternatief voor de verdere ontwikkeling van deze software. De beschikbaarheid van de "Minder veilige app" menu-optie in het Google Account Management-menu kan beperkt zijn omdat er in juni 2020 wijzigingen kunnen plaatsvinden. Als dit het geval is, kan het nodig zijn om de e-mail door te sturen naar een alternatief account of door de 586-poort op de mailserver te gebruiken.
Stap 4: GPS- en KML-bestandsindelingen
Het volgende toont een typische bestandsinhoud voor elk type bestand dat het apparaat genereert (de breedte- en lengtegraadwaarden veranderen niet veel in deze voorbeelden omdat het apparaat stationair is). Beide bestanden bevatten de minimale kop- en voettekstgegevens die GPS Viewer en Google Earth pro nodig hebben om een eenvoudige zwarte lijn weer te geven die de afgelegde route weergeeft:
Het KML-bestand:
Het GPX-bestand:
Aanbevolen:
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Hoe de GPS-module (NEO-6m) met Arduino te interfacen: 7 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe een GPS-module (NEO-6m) te interfacen met Arduino: In dit project heb ik laten zien hoe een GPS-module met Arduino UNO kan worden gekoppeld. De gegevens voor lengte- en breedtegraad worden weergegeven op het LCD-scherm en de locatie kan worden bekeken op de app.Lijst van materiaal Arduino Uno ==> $8 Ublox NEO-6m GPS-module ==> $15 16x
Een computer demonteren met eenvoudige stappen en afbeeldingen: 13 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een computer demonteren met eenvoudige stappen en afbeeldingen: dit is een instructie over het demonteren van een pc. De meeste basiscomponenten zijn modulair en gemakkelijk te verwijderen. Wel is het belangrijk dat je er goed over georganiseerd bent. Dit zal helpen voorkomen dat u onderdelen kwijtraakt, en ook bij het maken van de hermontage e
Kindle als GPS met hoog contrast (werkt voor elk e-boek): 5 stappen (met afbeeldingen)
Kindle als GPS met hoog contrast (werkt voor elk e-boek): ik laat zien hoe je je e-boek (Kindle, Kobo, Sony, ipad, tablet) als GPS kunt gebruiken. Alle software draait op je telefoon (Android is nodig), dus het e-boek is ongewijzigd. Je hoeft alleen maar een paar apps op je telefoon te installeren. Het e-boek gebruikt alleen de interne
PCB-ontwerp met eenvoudige en gemakkelijke stappen: 30 stappen (met afbeeldingen)
PCB-ontwerp met eenvoudige en gemakkelijke stappen: HELLO VRIENDEN Het is een zeer nuttige en gemakkelijke tutorial voor diegenen die PCB-ontwerp willen leren, laten we beginnen