Inhoudsopgave:

Old Man en de Arduino GPS: 6 stappen (met afbeeldingen)
Old Man en de Arduino GPS: 6 stappen (met afbeeldingen)

Video: Old Man en de Arduino GPS: 6 stappen (met afbeeldingen)

Video: Old Man en de Arduino GPS: 6 stappen (met afbeeldingen)
Video: 50 MEEST INNOVATIEVE PERSOONLIJKE TRANSPORTEN 2021 - 2022 2024, Juni-
Anonim
Oude man en de Arduino GPS
Oude man en de Arduino GPS
Oude man en de Arduino GPS
Oude man en de Arduino GPS
Oude man en de Arduino GPS
Oude man en de Arduino GPS

Dus deze Lazy Old Geek (L. O. G.) heeft al een paar jaar geen Instructable kunnen doen. Op 70-jarige leeftijd werken de hersenen niet meer zo goed als vroeger en is het moeilijk om je op grote projecten te concentreren, laat staan om erover te schrijven.

(Ik doe mee aan de Arduino-wedstrijd.)

Maar met de hulp van mijn liefhebbende hond, Sadie en mijn CPAP-machine, ga ik het proberen. Sadie is mijn antidepressivum, houdt me op de been en we lopen elke ochtend. Mijn CPAP helpt me om beter te slapen en daardoor een beetje beter te denken.

GPS: Nou, ik ben altijd al geïnteresseerd geweest in GPS. De meeste commerciële GPS kan slechts 2-3 meter nauwkeurig lokaliseren. Mijn neef, die een grote boer is, zegt dat zijn apparatuur veel beter kan. Ik weet dat een van de lokale boeren zijn John Deere-tractoren gebruikt om gewassen in voren te planten met behulp van aangepaste GPS.

Ik breng veel tijd door met surfen op internet en heb gelezen over redelijk geprijsde GPS's die tot op centimeters kunnen meten! Ongelooflijk. Aan de praktische kant heb ik dat niet echt nodig. Als ik ga wandelen, hoef ik niet precies te weten waar ik ben. Zelfs op roadtrips gebruik ik mijn smartphone met Android Auto om me te laten weten waar ik ben.

Maar ik ben ook een technogeek, dus ik begon te kijken naar GPS's voor hobbyisten. Een van de meest populaire was Adafruit Ultimate GPS.

www.adafruit.com/?q=ultimate

Stap 1: Adafruit-veer

Adafruit Veer
Adafruit Veer
Adafruit Veer
Adafruit Veer
Adafruit Veer
Adafruit Veer
Adafruit Veer
Adafruit Veer

Welnu, een van de versies van de Adafruit Ultimate GPS is de Featherwing. Nu heb ik nog nooit van de Adafruit Feather serie gehoord, dus meer surfen. Wow, Adafruit en Lady Ada hebben een hele reeks microcontrollers en accessoires ontwikkeld op basis van een klein platform genaamd Feather. Voor Arduinoites is het vergelijkbaar met het basis Arduino UNO-platform, maar kleiner en meer up-to-date. Adafruit heeft ook alle software ontwikkeld, zodat ze compatibel kunnen zijn met de Arduino-software.

Ik waardeer het werk dat Adafruit en Lady Ada hebben gedaan voor doe-het-zelvers enorm en ik vond de Feather M4 Express erg leuk:

www.adafruit.com/product/3857

In tegenstelling tot de standaard Arduino met een klok van 16 MHz, is hij supersnel met een klok van 120 MHz. Het is 3,3 V, wat vrijwel de nieuwe standaard is voor nieuwe doe-het-zelf-elektronica. Het is compatibel met Arduino, waar ik redelijk bekend mee ben, en het kan ook worden geprogrammeerd met Circuit Python (Adafruit's aangepaste versie van Python). Ik ben oud en heb het moeilijk om nieuwe dingen te leren, maar dit zou me een kans geven om uit te breiden.

Dus ik bestelde een gebruikte op ebay en bestelde er ook een bij Mouser. Amazon, Mouser en DigiKey voeren een deel van de Adafruit-producten. Ik had er graag een rechtstreeks van Adafruit gekocht, maar in die tijd hadden ze niet alle FeatherWings die ik wilde hebben. In dit geval is het voordeliger om veel spullen in één keer te bestellen waardoor je minder verzendkosten hoeft te betalen. In mijn geval kosten drie items evenveel om te verzenden als één.

PROBLEEM: JST2.0-batterijconnector op M4express. Een lange tijd geleden kocht ik een aantal JST2.0-stroomconnectoren zoals op de afbeelding. Helaas is het rood / zwart het tegenovergestelde van wat de M4express gebruikt, en ik heb veel batterijen en projecten die deze polariteit gebruiken.

Oh nou ja. Het is een fluitje van een cent om de draden van de connector te verwijderen en van positie te wisselen. Dit deed ik dus met meerdere accu's en een LiPo-oplader. Ik heb er wat rode nagellak op gedaan, dus hopelijk krijg ik ze niet door elkaar.

Voor de M4express heb ik ervoor gekozen om de vrouwelijke headers met lange pinnen te gebruiken. Zie foto. Hierdoor kon FeatherWings zoals mijn GPS in de bovenkant worden aangesloten. Bovendien kan de M4express worden aangesloten op FeatherWings zoals de 3,5-inch TFT die ik heb gekocht.

Voor deze toepassing worden de pinnen niet gebruikt, dus ik had een klein Protoboard en heb de M4express hierop aangesloten, zodat de pinnen niet zichtbaar zijn en niet kunnen verbogen worden als ik het ronddraag.

Stap 2: Mijn GPS FeatherWing

Mijn GPS FeatherWing
Mijn GPS FeatherWing
Mijn GPS FeatherWing
Mijn GPS FeatherWing
Mijn GPS FeatherWing
Mijn GPS FeatherWing

Adafruit Ultimate GPS Featherwing

www.adafruit.com/product/3133

Een van de geweldige dingen die ik leuk vind aan Adafruit is dat ze hun producten uitgebreid documenteren, ik neem aan dat hobbyisten hun eigen producten kunnen bouwen. Nu heeft de M4express een SMD-microcontroller die te klein is voor een oude man zoals ik om mee te werken, dus kocht ik er een paar in plaats van er een te maken. Maar de FeatherWing Ultimate GPS is een beetje beter, dus besloot ik om er zelf een te maken. Dus bestelde ik een MediaTek (GlobalTop) GPS MTK3339-module van Ebay of Aliexpress (kan het me niet herinneren). Soms wordt het LadyBird1 genoemd.

Dus met Eagle Cadsoft, (nu Autodesk) software heb ik het schema van Adafruit gekopieerd en aangepast. Ten eerste kan ik alleen enkelzijdige PCB's maken en ten tweede heb ik niet veel SMD-componenten, dus ik heb het vereenvoudigd.

GPS_MTK3339.zip

Dus maakte ik de PCB met behulp van mijn toneroverdrachtsmethode:

www.instructables.com/id/Vinyl-Sticker-PCB-How-To/

PROBLEMEN: Zoals ik me soms herinner, ben ik oud en hier zijn enkele problemen die ik heb. Meestal kan ik close-up niet zo goed zien, dus ik gebruik een van deze hobbyistentools en een verlicht vergrootglas (zie foto's) die ik van Aliexpress heb gekregen. Ik gebruik een Aoyue-soldeerbout, zodat ik de temperatuur kan regelen en soldeerpunten kan kiezen.

Zelfs met dit alles had ik veel problemen met het solderen van de pinnen van de GPS-module en de u.fl-antenneconnector. Ik gebruik ook een Dremel-kloontool om de gaten te boren. Ik kan nooit rechte gaten boren, maar heb gelukkig alles werkend kunnen krijgen.

Trouwens, ik heb wat SMD 0805 ferrietkralen besteld, maar heb ze nooit gekregen, dus ik wacht op nog wat meer. Ondertussen soldeerde ik een draad over de contacten om het te laten werken. De ferrietkraal zou de ruis op de spanningspen naar de GPS-chip moeten verminderen.

Stap 3: MicroSD-kaartlezer

MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer
MicroSD-kaartlezer

Oké, dus de GPS werkte redelijk goed, maar hij werkte alleen als hij aan een computer was gekoppeld, zodat je kunt zien wat er aan de hand is. Om nuttiger te zijn, heb ik iets nodig dat niet aan een computer is vastgemaakt, zoals een beeldscherm of een micro SD-kaart. Voor nu wilde ik GPS-informatie opslaan. Adafruit heeft enkele FeatherWings met microSD-kaarten, zoals het 3,5-inch scherm en de RTC-kaart. Maar ik wilde FeatherWings niet stapelen, dus ik kopieerde het microSD-circuit van de RTC-kaart en maakte het mijne.

Omdat ik niet nog een FeatherWing wilde stapelen, bedacht ik een plan om deze aan mijn GPS-printplaat te bevestigen. Omdat het circuit vrij eenvoudig is, heb ik het gemaakt met vijf pads, zodat ik draden aan deze PCB en aan mijn GPS-bord kan bevestigen.

MijnDataLogger.zip

Dus om dit te bevestigen, plaatste ik het onder mijn GPS-printplaat, soldeerde ik wat draadwikkeldraden en verbond ze met mijn GPS-printplaat. Voor sommigen heb ik een deel van de isolatie op de header-pinnen weggesneden, zodat ik de draden kon solderen zonder de PCB-fitting op de M4express te verstoren. Dat zou je op de foto moeten kunnen zien. Daarna heb ik wat Gorilla-lijm gebruikt om de twee kaarten voorzichtig aan elkaar te lijmen. Wees heel voorzichtig als Gorilla Glue uitzet.

PROBLEMEN: Nou, dit is eigenlijk met de microSD-kaarten. Ik heb op ebay een aantal microSD-kaarten besteld. Ik ontdekte dat er een verschil is tussen eenvoudige microSD-kaarten en microSDHC-kaarten. Ten eerste kunnen sommige van de oudere adapters zoals ik (waarschijnlijk) de HC-versies niet lezen. Ten tweede zijn de microSDHC-versies van 4gB tot 32gB. Er is een andere versie genaamd microSDXC met 64gB en grotere formaten. Welnu, ik heb een aantal 64 GB-kaarten ontvangen, maar kon ze niet lezen met mijn adapters. Ik kon niet achterhalen wat er mis was. Maar nadat ik de verschillen had ontdekt, dacht ik dat mijn adapters de HC-versie misschien niet konden lezen, maar verder onderzoek zei dat de HC-versie maximaal 32 gB is en zoals de afbeelding laat zien, zijn deze microSDHC 64 gB gelabeld. Zelfs al staat er Kingston dat dit nep is. Ik heb contact opgenomen met de verkoper en hij heeft mijn geld direct teruggestort. Op internet kun je veel vinden over nep-microSD-kaarten.

Hoewel ze nep zijn, betekent dit niet dat ze niet zullen werken. Ik wacht op een paar nieuwe adapters die sommige HC-kaarten zouden moeten kunnen lezen, en ik heb ook een aantal andere HC-kaarten besteld.

Stap 4: GPS-antenne:

GPS-antenne
GPS-antenne
GPS-antenne
GPS-antenne
GPS-antenne
GPS-antenne

Weer een oude man ramp. Dus bestelde ik een actieve GPS-antenne en een RP-SMA naar u.fl-adapter van ebay/Aliexpress. Ik was trouwens vergeten dat ik al een van deze adapters had. Hoe dan ook, ik heb eindelijk de antenne binnen en deze paste niet in de adapter. Nu denk ik dat veel van deze Chinese leveranciers niet echt begrijpen wat ze verkopen. Velen identificeren bijvoorbeeld de connectoren op antennes niet en sommige laten het zelfs niet duidelijk op de foto's zien. Welnu, ik denk dat degene die ik kreeg de connector redelijk goed liet zien, maar niet identificeerde. Nou, na wat onderzoek, (denk ik) dat ik het identificeerde als een MCX-connector. Hoe dan ook, ik heb een andere antenne besteld en uiteindelijk ontvangen en deze paste ook niet. Ik denk nogmaals dat dit grotendeels mijn schuld is, hoewel er veel verwarring is tussen SMA en RP-SMA mannelijk en vrouwelijk en pluggen en jacks.

Het komt erop neer dat ik nu geen aparte werkende antenne heb.

WAARSCHUWING: De u.fl-connectoren op de Adafruit en mijn GPS-kaart zijn erg kwetsbaar en het wordt aanbevolen om de verbinding fysiek te ontlasten.

Stap 5: Alles samenbrengen

Alles bij elkaar zetten
Alles bij elkaar zetten

Adafruit heeft een aantal uitstekende tutorials over hoe je de M4express kunt krijgen zodat deze met Arduino werkt.

Mijn Arduino-schets is bijgevoegd:

GPSDatalogger.zip

Het doet het volgende:

Schrijft GPS-strings naar een bestand op de microSD-kaart met de naam data.nmea

Eens per minuut schrijft het ook enkele andere gegevens, zoals tijd, #satellieten, signaalkwaliteit, snelheid naar een bestand met de naam misc.txt. Ik heb wat aanpassingen gedaan, zoals het grofweg omzetten naar Mountain Standard-tijd en knopen naar mph.

Beide bestanden zijn tekstbestanden.

Trouwens, ik heb geprobeerd wat dingen te doen met Circuit Python. Ik kon de voorbeelden uitvoeren, maar leek wat problemen te hebben met het verzenden van opdrachten naar de GPS-module. Kan in de toekomst opnieuw bezoeken.

Stap 6: Gebruik

Gebruik
Gebruik
Gebruik
Gebruik
Gebruik
Gebruik

GPS's gebruiken iets dat efemeridengegevens en almanak wordt genoemd om de locatie te berekenen. Bij de eerste keer opstarten duurt het even voordat deze informatie is verwerkt. Dit kan enkele minuten duren. Welnu, de MTK3339 GPS-module heeft een back-upbatterij om deze informatie op te slaan. Ik raad nog steeds hoe dit werkt, maar wat ik doe is ongeveer 5 minuten voor onze wandeling, ik sluit mijn M4express/GPS aan op de pc zonder de microSD-kaart. Als ik klaar ben om te vertrekken, trek ik de stekker uit het stopcontact, plaats de microSD-kaart en voed hem met een batterij en vertrek.

Probleem: ik denk dat ik een van mijn M4express-modules heb beschadigd, mogelijk met statische elektriciteit. Wanneer het op een computer is aangesloten, knippert de oplaadstatus-LED. (De M4express heeft een LiPo-batterijladercircuit). Welnu, ik vermoed dat het oplaadcircuit niet werkt, hoewel ik het niet heb gecontroleerd. Hoe dan ook, behalve de knipperende LED lijkt het prima te werken, zowel op de computer als op batterijstroom, het knippert niet, dus ik kan ermee leven.

Google Earth Pro

Een van de redenen waarom ik het nmea-bestand heb gemaakt, is zodat ik het kan gebruiken met Google Earth Pro. Ik haal de microSD-kaart uit de GPS-module, steek hem in een van mijn adapters en steek hem in mijn computer.

Om te gebruiken, start u Google Earth Pro, selecteert u (BESTAND)(OPEN). Naast het vak Bestand is er een selectie voor bestandstypen. Selecteer (GPS). Blader om het data.nmea-bestand te vinden en open het.

Er verschijnt een ander venster. Ik selecteer alle KML-tracks maken, KML-lijnstrings maken, hoogtes aanpassen aan grondhoogte.

Het eerste voorbeeld toont een voorbeeld. De blauwe lijn die eraf schiet, zijn foutieve gegevens, waarschijnlijk ruis.

In het tweede voorbeeld is er een grote metalen schuur. De blauwe banen hebben normaal gesproken pijlen die de rijrichting aangeven, maar rond de schuur veranderen ze in vierkanten. Ik neem aan dat dit signaalverlies is, omdat we niet door de schuur liepen, maar langs de bovenkant van de schuur gingen.

De misc.txt kan door Excel worden gelezen als een door komma's gescheiden bestand (of als een tekstbestand). Zie bijgevoegd voor een voorbeeld genomen in een auto tijdens het rijden.

Wat me opviel was dat de breedtegraad en lengtegraad te veel decimalen waren, ik weet niet hoe nauwkeurig dat is. Snelheid lijkt te werken. Meestal tijdens mijn wandelingen, satellieten is rond de 10, in de auto was het 7, want vanwege het metalen dak. HDOP in de auto leek hoger in de auto. Op wandelingen was het meer rond de 1 of lager (beter).

Ik begrijp Hoek niet. Voor een stuk toen Latitude hetzelfde bleef, zou ik denken dat de hoek 0, 90, 180 of 270 zou zijn en niet 66.

Conclusie: het lijkt redelijk goed te werken. Ik denk dat de M4express zoveel sneller is dan de Atmega328s die ik gewend ben. Het kan waarschijnlijk wat ruisfiltering doen om enkele van de NMEA-trackglitches te verwijderen zonder de samplefrequenties van één seconde te verknoeien. Ik zal waarschijnlijk niet de moeite nemen. Een van mijn toekomstige projecten zou zijn om wat 'landmetingen' te doen. Ik woon in een boerenland met veel velden. Soms zou ik willen weten hoeveel hectare er in een veld staat. Ik zou waarschijnlijk mijn GPS kunnen gebruiken met mijn 3,5-inch touchscreen voor die toepassing.

Wil ook eens kijken of een externe antenne veel verschil maakt. Ik merkte dat sommige van mijn NMEA-tracks niet helemaal zijn waar ze zouden moeten zijn.

Overigens is de MTK3339 niet nauwkeuriger dan andere GPS'en zoals de uBlox.

Een ander project is dat ik een aantal L80 GPS-modules heb gekocht die goedkoper lijken dan de MTK3339, maar in wezen hetzelfde zouden moeten zijn. Misschien zijn het klonen? Een groot voordeel voor mij is dat ze een afstand van 0,1 inch hebben op de pinnen, wat een stuk gemakkelijker is om mee te werken.

Aanbevolen: