Innehållsförteckning:
- Tillbehör
- Steg 1: Anslut Raspberry Pi med PC
- Steg 2: En kort information. Om UBlox NEO-M8N GPS-modul
- Steg 3: GPS -modul för gränssnitt med Raspberry Pi
- Steg 4: Konfigurera UART i Raspberry Pi
- Steg 5: Inaktivera Raspberry Pi Serial Getty Service
- Steg 6: Aktivera Ttys0
- Steg 7: Installera Minicom och Pynmea2
- Steg 8: Testa utdata
- Steg 9: Skriv Python -kod
- Steg 10: Slutlig utmatning
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Hej killar !! Vill du ansluta en GPS -modul till Raspberry Pi? Men har du svårt att göra det? “Oroa dig inte, jag är här för att hjälpa dig! Du kan börja med att använda följande delar:
Tillbehör
- Raspberry Pi 4 Model-B med 4 GB RAM
- UBlox NEO-M8N GPS-modul
- En dator
Steg 1: Anslut Raspberry Pi med PC
Anslut först ditt Raspberry Pi -kort med en dator. Du kan besöka https://www.raspberrypi.org/blog/getting-started-raspberry-pi/ för information om installationen av Raspberry Pi Imager.
Steg 2: En kort information. Om UBlox NEO-M8N GPS-modul
Detta är en UBlox NEO-M8N GPS-modul med keramisk aktiv antenn. Denna GPS-modul har en 72-kanals Ublox M8-motor i mottagaren. Modulen har 4 stift: VCC (matningsspänning), GND (jord), Tx (sändare) och Rx (mottagare).
Denna modul tillhandahåller nonstop NMEA (National Marine Electronics Association) datasträngar till TX -stiftet vilket resulterar i GPS -information. För att veta mer om den här modulen kan du ladda ner dess datablad här.
Steg 3: GPS -modul för gränssnitt med Raspberry Pi
För gränssnitt, gör anslutningarna enligt följande:
- Anslut GPS -modulens Vcc till nätaggregat nr 2 (5V) på Raspberry Pi.
- Anslut Tx (sändarstift) för GPS -modulen till stift nr 10 på Raspberry Pi.
- Anslut GPS -modulens GND (Ground Pin) till Pin No 6 Raspberry Pi.
Du kan också välja andra Raspberry Pi -kort, men var noga med att kolla in lämpliga pin -nummer medan du gör anslutningar.
Steg 4: Konfigurera UART i Raspberry Pi
Det första vi kommer att göra under detta är att redigera filen /boot/config.txt. För att göra detta, kör kommandona nedan:
sudo nano /boot/config.txt
Längst ner i filen config.txt lägger du till följande rader
dtparam = spi = på
dtoverlay = pi3-disable-bt
core_freq = 250
enable_uart = 1
force_turbo = 1
ctrl+x för att avsluta och tryck på y och enter för att spara.
Det andra steget under detta UART -installationsavsnitt är att redigera boot/cmdline.txt
Jag föreslår att du gör en kopia av cmdline.txt och sparar först innan du redigerar så att du kan återgå till det senare om det behövs. Detta kan göras med;
sudo cp boot/cmdline.txt boot/cmdline_backup.txtsudo nano /boot.cmdline.txt
Ersätt innehållet med;
dwc_otg.lpm_enable = 0 konsol = tty1 root =/dev/mmcblk0p2 rootfstype = ext4 hiss = deadline fsck.repair = ja rootwait tyst stänk plymouth.ignore-serial-consoles
Tryck på ctrl+x för att avsluta och tryck på y och enter för att spara.
Starta om pi nu för att se ändringarna
Steg 5: Inaktivera Raspberry Pi Serial Getty Service
a. Om i din utmatning är Serial0 länkad med ttyAMA0, för att inaktivera den använder du kommandot nedan,
sudo systemctl stop [email protected] systemctl inaktivera [email protected]
b. Om Serial0 är kopplad till ttys0 i din utdata, använd kommandot nedan för att inaktivera det,
sudo systemctl stop [email protected] systemctl inaktivera [email protected]
Steg 6: Aktivera Ttys0
För att aktivera ttyso använder du följande kommando,
sudo systemctl aktivera [email protected]
Steg 7: Installera Minicom och Pynmea2
Använd minicom python -biblioteket för att ansluta till GPS -modulen och förstå informationen.
sudo apt-get install minicom
Använd pynmea2 python -bibliotek för att analysera de mottagna NMEA -data.
sudo pip installera pynmea2
Steg 8: Testa utdata
För att testa GPS, kör kommandot sudo cat /dev /ttyAMA0, Du får utmatningen enligt ovan.
Steg 9: Skriv Python -kod
Skriv nu pythonkoden för gränssnittet mellan GPS -modulen och Raspberry pi
importera serie
Importera tid
importsträng import pynmea2
medan True: port = “/dev/ttyAMAO”
ser = serial. Serial (port, baudrate = 9600, timeout = 0,5)
dataout = pynmea2. NMEAStreamReader ()
newdata = ser.readline ()
om newdata [0: 6] == "$ GPRMC":
newmsg = pynmea2.parse (newdata)
lat = newmsg.latitude
lng = newmsg.longitude
gps = “Latitude =” +str (lat) +“och Longitude =” +str (lng)
skriva ut (gps)
Steg 10: Slutlig utmatning
Fönstret som visas ovan är den slutliga utmatningen. Det ger information om din exakta position när det gäller latitud och longitud.
Detta projekt är baserat på en artikel GPS -modul med Arduino och Raspberry Pi - Av Priyanka Dixit. Besök den här artikeln för att veta mer om GPS, hur det fungerar, förklaring av nyckelbegrepp longitud och latitud, skillnaden mellan GPS -chip och GPS -modul och mycket mer!