Innehållsförteckning:
- Steg 1: Om GPS
- Steg 2: Arduino, Neo6m GPS och 16x2 LCD
- Steg 3: Anslutningar
- Steg 4: Resultat
- Steg 5: Demo
- Steg 6: Programmera
Video: Hur man gränsar GPS-modul (NEO-6m) med Arduino: 7 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
I detta projekt har jag visat hur man kopplar en GPS -modul till Arduino UNO. Data för longitud och latitud visas på LCD -skärmen och platsen kan ses i appen.
Lista över material
- Arduino Uno ==> $ 8
- Ublox NEO-6m GPS-modul ==> $ 15
- 16x2 LCD ==> $ 3
- Brödbräda ==> $ 2
- Bygeltrådar ==> $ 2
Den totala kostnaden för projektet är $ 30 dollar.
Steg 1: Om GPS
Vad är GPS Global Positioning System (GPS) är ett satellitbaserat navigationssystem som består av minst 24 satelliter. GPS fungerar i alla väderförhållanden, var som helst i världen, 24 timmar om dygnet, utan abonnemangsavgifter eller installationsavgifter.
Hur GPS fungerar GPS -satelliter kretsar jorden två gånger om dagen i en exakt bana. Varje satellit sänder en unik signal och orbitalparametrar som gör att GPS -enheter kan avkoda och beräkna satellitens exakta plats. GPS -mottagare använder denna information och trilateration för att beräkna en användares exakta plats. I huvudsak mäter GPS -mottagaren avståndet till varje satellit med den tid det tar att ta emot en överförd signal. Med avståndsmätningar från några fler satelliter kan mottagaren bestämma en användares position och visa den.
För att beräkna din 2-D-position (latitud och longitud) och spårrörelse måste en GPS-mottagare vara låst på signalen från minst 3 satelliter. Med fyra eller fler satelliter i sikte kan mottagaren bestämma din 3D-position (latitud, longitud och höjd). I allmänhet kommer en GPS -mottagare att spåra 8 eller fler satelliter, men det beror på tiden på dagen och var du befinner dig på jorden.
När din position har fastställts kan GPS -enheten beräkna annan information, till exempel:
- Fart
- Lager
- Spår
- Resa dist
- Avstånd till destination
Vad är signalen?
GPS-satelliter sänder minst 2 lågeffektradiosignaler. Signalerna rör sig genom siktlinjen, vilket innebär att de kommer att passera genom moln, glas och plast men kommer inte att gå igenom de flesta fasta föremål, såsom byggnader och berg. Moderna mottagare är dock mer känsliga och kan vanligtvis spåra genom hus.
En GPS -signal innehåller tre olika typer av information:
- Pseudoslumpkod är en I. D. kod som identifierar vilken satellit som överför information. Du kan se vilka satelliter du får signaler från på din enhets satellitsida.
- Ephemeris -data behövs för att bestämma en satellits position och ger viktig information om en satellits hälsa, aktuellt datum och tid.
- Almanakdata berättar för GPS -mottagaren var varje GPS -satellit ska vara när som helst under dagen och visar orbitalinformationen för den satelliten och alla andra satelliter i systemet.
Steg 2: Arduino, Neo6m GPS och 16x2 LCD
1. Arduino
Arduino är en elektronisk plattform med öppen källkod baserad på lättanvänd maskinvara och programvara. Arduino -kort kan läsa ingångar - ljus på en sensor, ett finger på en knapp eller ett Twitter -meddelande - och göra det till en utgång - aktivera en motor, slå på en LED, publicera något online. Du kan berätta för ditt kort vad du ska göra genom att skicka en uppsättning instruktioner till mikrokontrollern på kortet. För att göra det använder du programmeringsspråket Arduino (baserat på ledningar) och Arduino -programvaran (IDE), baserat på bearbetning.
Obligatoriska bibliotek för att GPS ska fungera i Arduino IDE.
SoftwareSerial
TinyGPS
Du kan också göra din egen anpassade Arduino uno.
2. NEO-6m GPS-modul (som visas på bild i2)
NEO-6m GPS-modul datablad
3. 16x2 LCD
LCD -skärmen (Liquid Crystal Display) är en elektronisk displaymodul och hittar ett brett spektrum av applikationer. En 16x2 LCD -skärm är en mycket grundläggande modul och används mycket i olika enheter och kretsar. Dessa moduler är att föredra framför sju segment och andra flersegment -lysdioder. Anledningarna är: LCD -skärmar är ekonomiska; lätt programmerbar; har ingen begränsning av att visa speciella och till och med anpassade tecken (till skillnad från i sju segment), animationer och så vidare. En 16x2 LCD betyder att den kan visa 16 tecken per rad och det finns 2 sådana rader. I denna LCD visas varje tecken i 5x7 pixlar matris. Denna LCD har två register, nämligen kommando och data. Kommandoregistret lagrar kommandoinstruktionerna som ges till LCD -skärmen. Ett kommando är en instruktion som ges till LCD för att utföra en fördefinierad uppgift som att initiera den, rensa skärmen, ställa in markörpositionen, styra displayen etc. Dataregistret lagrar data som ska visas på LCD -skärmen. Data är ASCII -värdet för tecknet som ska visas på LCD -skärmen.
Stiftdiagram och stiftbeskrivning (som visas i bild i3 och i4)
4-bitars och 8-bitars läge på LCD-skärmen LCD-skärmen kan fungera i två olika lägen, nämligen 4-bitars och 8-bitars läge. I 4 bitars läge skickar vi datanibbar efter nibble, först övre nibble och sedan nedre nibble. För er som inte vet vad en nibble är: en nibble är en grupp med fyra bitar, så de nedre fyra bitarna (D0-D3) i en byte bildar den nedre nibble medan de övre fyra bitarna (D4-D7) av en byte från den högre nibble. Detta gör att vi kan skicka 8-bitars data. I 8-bitars läge kan vi skicka 8-bitars data direkt i ett slag eftersom vi använder alla de 8 dataraderna.
Läs- och skrivläge för LCD -skärmen i sig består av ett gränssnitt IC. MCU kan antingen läsa eller skriva till detta gränssnitt IC. Oftast kommer vi bara att skriva till IC, eftersom läsning kommer att göra det mer komplext och sådana scenarier är mycket sällsynta. Information som markörens position, statusavbrott avbryts etc.
Steg 3: Anslutningar
Gränssnitt för GPS -modul med Arduino
Arduino ===> NEO6m
GND ===> GND
Digital stift (D3) ===> TX
Digital stift (D4) ===> RX
5Vdc ===> Vcc
Här föreslår jag att du använder extern strömförsörjning för att driva GPS -modulen eftersom minimikravet för att GPS -modulen ska fungera är 3,3 V och Arduino kan inte ge så mycket spänning..
USB -drivrutin
En sak till som jag har hittat när jag arbetar med GPS -antenn kommer med modul är att den inte tar emot signal inuti huset så jag använde denna antenn - det är mycket bättre.
Antenn
För att ansluta denna antenn måste du använda kontakten som visas i bild i6.
Gränssnitt för Arduino UNO och JHD162a LCD
LCD ===> Arduino Uno
VSS ===> GND
VCC ===> 5V
VEE ===> 10K motstånd
RS ===> A0 (analog stift)
R/W ===> GND
E ===> A1
D4 ===> A2
D5 ===> A3
D6 ===> A4
D7 ===> A5
LED+ ===> VCC
LED- ===> GND
Steg 4: Resultat
Steg 5: Demo
Rekommenderad:
Hur man skapar en Linux -boot -enhet (och hur man använder den): 10 steg
Hur man skapar en Linux Boot Drive (och hur man använder den): Detta är en enkel introduktion om hur man kommer igång med Linux, särskilt Ubuntu
Hur man gränsar en MAX7219 driven LED -matris 8x8 med ATtiny85 mikrokontroller: 7 steg
Hur man kopplar en MAX7219-driven LED-matris 8x8 med ATtiny85-mikrokontroller: MAX7219-styrenheten tillverkas av Maxim Integrated är en kompakt, seriell ingång/utgång gemensam-katodskärmdrivrutin som kan ansluta mikrokontroller till 64 individuella lysdioder, 7-segment numeriska LED-skärmar med upp till till 8 siffror, stapeldiagram
Hur man använder Mac Terminal och hur man använder viktiga funktioner: 4 steg
Så här använder du Mac Terminal och hur du använder viktiga funktioner: Vi visar dig hur du öppnar MAC Terminal. Vi kommer också att visa dig några funktioner i terminalen, till exempel ifconfig, ändra kataloger, komma åt filer och arp. Ifconfig låter dig kontrollera din IP -adress och din MAC -annons
HUR MAN GÖR ARDUINO NANO/MINI - Hur man bränner bootloader: 5 steg
HUR MAN GÖR ARDUINO NANO/MINI | Hur man bränner bootloader: I denna instruktionsbok kommer jag att visa dig hur man gör en Arduino MINI från Scratch.Förfarandet som skrivs i denna instruktion kan användas för att göra alla arduino -brädor för dina anpassade projektkrav.Se videon för bättre förståelse
Hur man gränsar en 16x4 LCD -skärm med en Arduino: 6 steg
Hur man gränsar en 16x4 LCD -skärm med en Arduino: Introduktion Jag fick nyligen några gratis LCD -prover från mina vänner på FocusLCDs.com. En av dem är en 16x4 LCD; P/N: C164AXBSYLY6WT. Den använder en ST7066U -styrenhet (se datablad här) istället för HD44780 som vanligtvis finns i LCD -skärmar. Jag är inte