Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Koble Raspberry Pi til PC
- Trinn 2: En kort informasjon. Om UBlox NEO-M8N GPS-modul
- Trinn 3: Grensesnitt GPS -modul med Raspberry Pi
- Trinn 4: Sett opp UART i Raspberry Pi
- Trinn 5: Deaktiver Raspberry Pi Serial Getty Service
- Trinn 6: Aktiver Ttys0
- Trinn 7: Installer Minicom og Pynmea2
- Trinn 8: Test utgang
- Trinn 9: Skriv Python -kode
- Trinn 10: Sluttutgang
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Hei folkens!! Ønsker du å koble til en GPS -modul med Raspberry Pi? Men har du problemer med å gjøre det? Ikke bekymre deg, jeg er her for å hjelpe deg! Du kan starte med å bruke følgende deler:
Rekvisita
- Raspberry Pi 4 Model-B med 4 GB RAM
- UBlox NEO-M8N GPS-modul
- En datamaskin
Trinn 1: Koble Raspberry Pi til PC
Først av alt, koble Raspberry Pi -kortet til en PC. Du kan besøke https://www.raspberrypi.org/blog/getting-started-raspberry-pi/ for informasjon om installasjon av Raspberry Pi Imager.
Trinn 2: En kort informasjon. Om UBlox NEO-M8N GPS-modul
Dette er en UBlox NEO-M8N GPS-modul med keramisk aktiv antenne. Denne GPS-modulen har en 72-kanals Ublox M8-motor i mottakeren. Modulen har 4 pinner: VCC (forsyningsspenning), GND (jord), Tx (sender) og Rx (mottaker).
Denne modulen gir nonstop NMEA (National Marine Electronics Association) datastrenger til TX -pinnen, noe som resulterer i GPS -informasjon. For å vite mer om denne modulen, kan du laste ned databladet her.
Trinn 3: Grensesnitt GPS -modul med Raspberry Pi
For tilkobling, gjør tilkoblingene som følger:
- Koble Vcc på GPS -modulen til strømforsyningspinne nr. 2 (5V) på Raspberry Pi.
- Koble Tx (senderpinne) på GPS -modulen til pin nr. 10 på Raspberry Pi.
- Koble GND (Ground Pin) på GPS -modulen til Pin No 6 Raspberry Pi.
Du kan også velge andre Raspberry Pi -kort, men sørg for å sjekke ut riktige pin -tall mens du kobler til.
Trinn 4: Sett opp UART i Raspberry Pi
Det første vi vil gjøre under dette er å redigere /boot/config.txt -filen. For å gjøre dette, kjør kommandoene nedenfor:
sudo nano /boot/config.txt
Legg til følgende linjer nederst i config.txt -filen
dtparam = spi = på
dtoverlay = pi3-deaktiver-bt
core_freq = 250
enable_uart = 1
force_turbo = 1
ctrl+x for å avslutte, og trykk på y og enter for å lagre.
Det andre trinnet under denne UART -oppsettdelen er å redigere boot/cmdline.txt
Jeg vil foreslå at du tar en kopi av cmdline.txt og lagrer først før du redigerer, slik at du kan gå tilbake til det senere om nødvendig. Dette kan gjøres ved å bruke;
sudo cp boot/cmdline.txt boot/cmdline_backup.txtsudo nano /boot.cmdline.txt
Erstatt innholdet med;
dwc_otg.lpm_enable = 0 console = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 elevator = deadline fsck.repair = ja rootwait stille sprut plymouth.ignore-serial-consoles
Trykk ctrl+x for å avslutte, og trykk på y og enter for å lagre.
Start pi på nytt for å se endringene
Trinn 5: Deaktiver Raspberry Pi Serial Getty Service
en. Hvis Serial0 i utgangen din er koblet til ttyAMA0, bruker du kommandoen nedenfor for å deaktivere den.
sudo systemctl stopp [email protected] systemctl deaktiver [email protected]
b. Hvis Serial0 er koblet til ttys0 i utgangen din, bruker du kommandoen nedenfor for å deaktivere den.
sudo systemctl stopp [email protected] systemctl deaktiver [email protected]
Trinn 6: Aktiver Ttys0
For å aktivere ttyso bruk følgende kommando,
sudo systemctl aktivere [email protected]
Trinn 7: Installer Minicom og Pynmea2
Bruk minicom python -bibliotek for å koble til GPS -modulen og forstå dataene.
sudo apt-get install minicom
Bruk pynmea2 python -bibliotek til å analysere mottatte NMEA -data.
sudo pip installer pynmea2
Trinn 8: Test utgang
For å teste GPS, kjør kommandoen sudo cat /dev /ttyAMA0, får du utgangen som vist ovenfor.
Trinn 9: Skriv Python -kode
Skriv nå python -koden for grensesnittet mellom GPS -modulen og Raspberry pi
importer serie
Importer tid
import streng import pynmea2
mens True: port = “/dev/ttyAMAO”
ser = serial. Serial (port, baudrate = 9600, timeout = 0,5)
dataout = pynmea2. NMEAStreamReader ()
newdata = ser.readline ()
hvis newdata [0: 6] == "$ GPRMC":
newmsg = pynmea2.parse (newdata)
lat = newmsg. breddegrad
lng = newmsg.longitude
gps = “Latitude =” +str (lat) +“og Longitude =” +str (lng)
skrive ut (gps)
Trinn 10: Sluttutgang
Vinduet vist ovenfor er den endelige utgangen. Den gir dataene for din nøyaktige posisjon når det gjelder breddegrad og lengdegrad.
Dette prosjektet er basert på en artikkel GPS -modul med Arduino og Raspberry Pi - Av Priyanka Dixit. Besøk denne artikkelen for å vite mer om GPS, hvordan det fungerer, forklaring av nøkkelbegrepene lengdegrad og breddegrad, forskjellen mellom GPS -brikke og GPS -modul, og mye mer!