Innholdsfortegnelse:

Old Man and the Arduino GPS: 6 trinn (med bilder)
Old Man and the Arduino GPS: 6 trinn (med bilder)

Video: Old Man and the Arduino GPS: 6 trinn (med bilder)

Video: Old Man and the Arduino GPS: 6 trinn (med bilder)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Old Man and the Arduino GPS
Old Man and the Arduino GPS
Old Man and the Arduino GPS
Old Man and the Arduino GPS
Old Man and the Arduino GPS
Old Man and the Arduino GPS

Så denne Lazy Old Geek (L. O. G.) har ikke vært i stand til å gjøre en instruks på noen få år. Ved 70 år fungerer hjernen ikke så bra som den pleide, og det er vanskelig å fokusere på store prosjekter, enn si prøve å skrive om dem.

(Jeg deltar i Arduino -konkurransen.)

Men ved hjelp av min kjærlige hund, Sadie og CPAP -maskinen min, skal jeg prøve det. Sadie er min antidepressive, holder humøret oppe og vi går hver morgen. CPAP -en min hjelper meg å sove bedre og tenker derfor litt bedre.

GPS: Vel, jeg har alltid vært interessert i GPS. De fleste kommersielle GPS-er kan bare finne ned til 2-3 meter. Fetteren min, som er en stor bonde, sier at utstyret hans kan gjøre mye bedre. Jeg vet at en av de lokale bønder bruker John Deere -traktorene sine til å plante avlinger i furer ved hjelp av tilpasset GPS.

Jeg bruker mye tid på å surfe på Internett og har lest om rimelige GPS -er som kan måle ned til centimeter! Utrolig. På den praktiske siden trenger jeg ikke det. Når jeg går turer trenger jeg egentlig ikke vite nøyaktig hvor jeg er. Selv på bilturer bruker jeg smarttelefonen min med Android Auto for å fortelle meg hvor jeg er.

Men jeg er også en teknogeek, så jeg begynte å se på GPS -er for hobbyfolk. En av de mest populære var Adafruit Ultimate GPS.

www.adafruit.com/?q=ultimate

Trinn 1: Adafruit fjær

Adafruit fjær
Adafruit fjær
Adafruit fjær
Adafruit fjær
Adafruit fjær
Adafruit fjær
Adafruit fjær
Adafruit fjær

Vel, en av versjonene av Adafruit Ultimate GPS er Featherwing. Nå har jeg aldri hørt om Adafruit Feather -serien, så mer surfing. Wow, Adafruit og Lady Ada har utviklet en hel haug med mikrokontrollere og tilbehør basert på en liten plattform som heter Feather. For Arduinoites ligner den den grunnleggende Arduino UNO -plattformen, men mindre og mer oppdatert. Adafruit utviklet også all programvaren slik at de kunne være kompatible med Arduino -programvaren.

Jeg setter stor pris på jobben Adafruit og Lady Ada har gjort for byggmester og jeg likte Feather M4 Express veldig godt:

www.adafruit.com/product/3857

I motsetning til standard Arduino med 16mHz klokke, er den superrask med 120mHz klokke. Det er 3,3V som er ganske mye den nye standarden for ny DIY -elektronikk. Den er kompatibel med Arduino, som jeg er ganske kjent med, pluss at den også kan programmeres med Circuit Python (Adafruits tilpassede versjon av Python). Jeg er gammel og har vanskelig for å lære nye ting, men dette vil gi meg en sjanse til å forgrene meg.

Så jeg bestilte en brukt på ebay og bestilte også en fra Mouser. Amazon, Mouser og DigiKey har noen av Adafruit -produktene. Jeg skulle gjerne kjøpt en direkte fra Adafruit, men den gangen hadde de ikke alle FeatherWings jeg ønsket å få. I dette tilfellet er det billigere å bestille mange ting samtidig, slik at du ikke trenger å betale så mye fraktkostnader. I mitt tilfelle koster tre varer like mye å sende som en.

PROBLEM: JST2.0 batterikontakt på M4express. For lenge siden kjøpte jeg en haug med JST2.0 strømkontakter som bildet. Dessverre er det rødt/svart motsatt det M4express bruker, og jeg har mange batterier og prosjekter som bruker denne polariteten.

Jaja. Det er ganske enkelt å fjerne ledningene fra kontakten og bytte posisjon. Så jeg gjorde dette med flere batterier og en LiPo -lader. Jeg la på litt rødt neglelakk på dem, så forhåpentligvis vil jeg ikke blande dem.

For M4express valgte jeg å bruke kvinnelige overskrifter med lange pinner. Se bilde. Dette tillot FeatherWings som min GPS å koble til toppen. Pluss at M4express kan kobles til FeatherWings som 3,5”TFT som jeg kjøpte.

For denne applikasjonen brukes ikke pinnene, så jeg hadde en liten Protoboard og plugget M4express inn i denne slik at pinnene ikke blir synlige og ikke kan bøyes når jeg bærer den rundt.

Trinn 2: Min GPS FeatherWing

Min GPS FeatherWing
Min GPS FeatherWing
Min GPS FeatherWing
Min GPS FeatherWing
Min GPS FeatherWing
Min GPS FeatherWing

Adafruit Ultimate GPS Featherwing

www.adafruit.com/product/3133

En av de store tingene jeg liker med Adafruit er at de dokumenterer produktene sine sterkt. Jeg antar at hobbyfolk kan bygge sine egne. Nå har M4express en SMD -mikrokontroller som er for liten til at en gammel mann som meg kan jobbe med, så jeg kjøpte et par i stedet for å prøve å lage en. Men FeatherWing Ultimate GPS er litt bedre, så jeg bestemte meg for å prøve å lage min egen. Så jeg bestilte en MediaTek (GlobalTop) GPS MTK3339 -modul fra Ebay eller Aliexpress (husker ikke). Noen ganger kalles det LadyBird1.

Så ved å bruke Eagle Cadsoft, (nå, Autodesk) programvare kopierte jeg Adafruits skjema og endret den. Først kan jeg bare lage ensidige PCB -er, og for det andre har jeg ikke mange SMD -komponenter, så jeg forenklet det.

GPS_MTK3339.zip

Så jeg laget kretskortet ved hjelp av toneroverføringsmetoden min:

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

PROBLEMER: Som jeg noen ganger husker, er jeg gammel, og her er noen problemer jeg har. Stort sett kan jeg ikke se nærbilde så godt, så jeg bruker et av disse hobbyverktøyene og et opplyst forstørrelsesglass (se bilder) jeg fikk fra Aliexpress. Jeg bruker et Aoyue loddejern slik at jeg kan kontrollere temperaturen og velge loddetips.

Selv med alt dette hadde jeg mange problemer med å lodde GPS -modulpinnene og u.fl -antennekontakten. Jeg bruker også et Dremel-klon-verktøy for å bore hullene. Jeg er aldri i stand til å bore rette hull, men heldigvis klarte jeg å få alt til å fungere.

Forresten, jeg bestilte noen SMD 0805 ferrittperler, men fikk dem aldri så ventet på noen flere. I mellomtiden loddet jeg en ledning over kontaktene for å få det til å fungere. Ferritperlen skal redusere støy på spenningspinnen til GPS -brikken.

Trinn 3: MicroSD -kortleser

MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser
MicroSD -kortleser

Ok, så GPS -en fungerte ganske bra, men den fungerte bare når den var knyttet til en datamaskin, slik at du kan se hva som skjer. For å være mer nyttig, trenger jeg noe som ikke er koblet til en datamaskin, for eksempel en skjerm eller et micro SD -kort. For nå ønsket jeg å lagre GPS -informasjon. Adafruit har noen FeatherWings med microSD -kort, som 3,5”-skjermen og RTC -kortet. Men jeg ville ikke stable FeatherWings, så jeg kopierte microSD -kretsene fra RTC -kortet og lagde mitt eget.

Siden jeg ikke ønsket å stable en annen FeatherWing, kom jeg med en plan for å feste dette til GPS -PCB -en min. Siden kretsen er ganske enkel, lagde jeg den bare med fem pads, slik at jeg kan feste ledninger til denne PCB og til GPS -kortet mitt.

MyDataLogger.zip

Så for å feste dette, plasserte jeg det under GPS-kretskortet mitt, loddet på noen wire-wrap-ledninger og koblet dem til min GPS-kretskort. For noen kuttet jeg ut noe av isolasjonen på toppnålene, slik at jeg kunne lodde ledningene uten å forstyrre kretskortmonteringen på M4express. Du bør kunne se det på bildet. Deretter brukte jeg litt Gorilla -lim til å lime de to kortene forsiktig sammen. Vær veldig forsiktig da Gorilla Lim utvides.

PROBLEMER: Vel, dette er faktisk med microSD -kortene. Jeg bestilte noen microSD -kort på ebay. Jeg fant ut at det er en forskjell mellom enkle microSD -kort og microSDHC -kort. For det første kan noen av de eldre adapterne som jeg har (sannsynligvis) ikke lese HC -versjonene. For det andre er microSDHC -versjonene fra 4 GB til 32 GB. Det er en annen versjon som heter microSDXC med 64 GB og større størrelser. Vel, jeg mottok noen 64 GB kort, men kunne ikke lese dem med adapterene mine. Jeg kunne ikke finne ut hva som var galt. Men etter å ha funnet ut om forskjellene, tenkte jeg at adapterene mine kanskje ikke kunne lese HC -versjonen, men videre forskning sa at HC -versjonen er maksimalt 32 gB, og som bildet viser, er disse merket med microSDHC 64 gB. Selv om det står Kingston at dette er forfalskninger. Jeg kontaktet selgeren, og han refunderte pengene mine umiddelbart. Du kan finne mye på Internett om falske microSD -kort.

Selv om de er falske, betyr det ikke at de ikke vil fungere. Jeg venter på et par nye adaptere som skal kunne lese noen HC -kort, pluss at jeg bestilte noen forskjellige HC -kort.

Trinn 4: GPS -antenne

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

Nok en gammel katastrofe. Så jeg bestilte en aktiv GPS-antenne og en RP-SMA til u.fl-adapter fra ebay/Aliexpress. Forresten, jeg hadde glemt at jeg allerede hadde en av disse adapterene. Uansett, jeg fikk endelig inn antennen, og den passet ikke til adapteren. Nå tror jeg mange av disse kinesiske leverandørene ikke helt forstår hva de selger. Mange identifiserer for eksempel ikke kontaktene på antenner, og noen viser det ikke engang tydelig på bildene. Vel, jeg tror den jeg fikk viste kontakten ganske bra, men identifiserte den ikke. Vel, etter litt undersøkelse (tror jeg) jeg identifiserte det som en MCX -kontakt. Uansett, jeg bestilte en annen antenne og mottok den til slutt, og den passet heller ikke. Jeg tror igjen at dette for det meste er min feil, selv om det er mye forvirring mellom SMA og RP-SMA hann og hunn og plugger og kontakter.

Poenget er akkurat nå, jeg har ikke en separat fungerende antenne.

ADVARSEL: u.fl -kontaktene på Adafruit og GPS -kortet mitt er veldig skjøre, og det anbefales at du fysisk belaster forbindelsen.

Trinn 5: Sett alt sammen

Sette alt sammen
Sette alt sammen

Adafruit har noen gode opplæringsprogrammer om hvordan du får M4express slik at den fungerer med Arduino.

Min Arduino -skisse er vedlagt:

GPSDatalogger.zip

Det gjør følgende:

Skriver GPS -strenger til en fil på microSD -kortet som heter data.nmea

En gang i minuttet skriver den også noen andre data som tid, #satellitter, signalkvalitet, hastighet til en fil som heter misc.txt. Jeg gjorde noen modifikasjoner, som å omtrent konvertere til Mountain Standard -tid og knop til mph.

Begge filene er tekstfiler.

Forresten, jeg prøvde å gjøre noen ting med Circuit Python. Jeg klarte å kjøre eksemplene, men syntes å ha problemer med å sende kommandoer til GPS -modulen. Kan komme tilbake igjen i fremtiden.

Trinn 6: Bruk

Bruk
Bruk
Bruk
Bruk
Bruk
Bruk

GPS -er bruker noe som kalles ephemeris -data og almanakk for å beregne plassering. Når den først slås på, tar det en stund før denne informasjonen blir behandlet. Dette kan ta et par minutter. MTK3339 GPS -modulen har et batteri for å lagre denne informasjonen. Jeg gjetter fortsatt hvordan dette fungerer, men det jeg gjør er omtrent 5 minutter før turen, jeg kobler min M4express/GPS til PC uten microSD -kort. Når jeg gjør meg klar til å dra, trekker jeg ut kontakten, setter inn microSD -kort og slår på batteriet og tar av.

Problem: Jeg tror jeg ødela en av mine M4express -moduler muligens med statisk elektrisitet. Når den er koblet til en datamaskin, blinker ladestatus -LED -en. (M4express har en LiPo batterilader krets). Vel, jeg tipper at laderkretsen ikke fungerer, selv om jeg ikke har sjekket det. Uansett, i tillegg til den blinkende LED -en ser det ut til å fungere fint både på datamaskinen og på batteristrøm, den blinker ikke, så jeg lever med den.

Google Earth Pro

En av grunnene til at jeg lagde nmea -filen er slik at jeg kan bruke den med Google Earth Pro. Jeg fjerner microSD -kortet fra GPS -modulen, kobler det til en av adapterene mine og kobler det til datamaskinen min.

For å bruke, start Google Earth Pro, velg (FILE) (OPEN). Ved siden av Fil -boksen er det et utvalg for filtyper. Velg (GPS). Bla for å finne data.nmea -filen og åpne den.

Et annet vindu dukker opp. Jeg velger alle Create KML Tracks, Create KML LineStrings, Adjust Altitudes to ground height.

Det første eksemplet viser et eksempel. Den blå linjen som skyter av er feil data, sannsynligvis støy.

I det andre eksemplet er det en stor metallfjøs. De blå sporene har normalt piler som viser kjøreretning, men rundt låven vender de seg til torg. Jeg antar at dette er tap av signal da vi ikke gikk gjennom låven, men gikk langs toppen av låven.

Den misc.txt kan leses av Excel som en kommaavgrenset fil (eller som en tekstfil). Se vedlagt for et eksempel tatt i en bil under kjøring.

Ting jeg la merke til var at breddegrad og lengdegrad var for mange desimaler, vet ikke hvor nøyaktig det er. Hastigheten ser ut til å virke. Vanligvis på mine turer er Satellites rundt 10, i bilen var det 7 som gjør siden på grunn av metalltak. HDOP i bilen virket høyere i bilen. På turer var det mer rundt 1 eller under (bedre).

Jeg forstår ikke Angle. For en strekning da Latitude forble den samme, ville jeg tro at vinkelen ville være 0, 90, 180 eller 270 ikke 66.

Konklusjoner: Det ser ut til å fungere ganske bra. Jeg tror M4express er så mye raskere enn Atmega328s som jeg er vant til. Det kan trolig gjøre noe støyfiltrering for å bli kvitt noen av NMEA -sporene uten å ødelegge prøvetaktene på ett sekund. Jeg gidder nok ikke. Et av mine fremtidige prosjekter ville være å gjøre noen 'undersøkelser' jeg bor i et land med mange felt. Noen ganger vil jeg gjerne vite hvor mange dekar som er i et felt. Jeg kan sannsynligvis bruke min GPS med min 3,5”berøringsskjerm for det programmet.

Vil også se om en ekstern antenne gjør stor forskjell. Jeg la merke til at noen av NMEA -sporene mine ikke er helt der de burde være.

MTK3339 er forresten ikke mer nøyaktig enn andre GPS -er som uBlox.

Et annet prosjekt er at jeg kjøpte noen L80 GPS -moduler som ser ut til å være billigere enn MTK3339, men som egentlig skal være det samme. Kanskje de er kloner? En stor fordel for meg er at de har 0,1”mellomrom på pinnene, noe som er mye lettere å jobbe med.

Anbefalt: