Πίνακας περιεχομένων:

Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με Arduino: 7 βήματα (με εικόνες)
Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με Arduino: 7 βήματα (με εικόνες)

Βίντεο: Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με Arduino: 7 βήματα (με εικόνες)

Βίντεο: Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με Arduino: 7 βήματα (με εικόνες)
Βίντεο: Extract GPS location in Arduino with Ublox Neo-6 and Neo 7m GPS modules 2024, Δεκέμβριος
Anonim
Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με το Arduino
Πώς να διασυνδέσετε μονάδα GPS (NEO-6m) με το Arduino

Σε αυτό το έργο, έχω δείξει πώς να διασυνδέσω μια μονάδα GPS με το Arduino UNO. Τα δεδομένα για το γεωγραφικό πλάτος και το γεωγραφικό πλάτος εμφανίζονται στην οθόνη LCD και η τοποθεσία μπορεί να προβληθεί στην εφαρμογή.

Κατάλογος υλικού

  • Arduino Uno ==> 8 $
  • Μονάδα GPS Ublox NEO-6m ==> 15 $
  • 16x2 LCD ==> 3 $
  • Breadboard ==> $ 2
  • Καλώδια άλτη ==> $ 2

Το συνολικό κόστος του έργου είναι $ 30 δολάρια.

Βήμα 1: Σχετικά με το GPS

Σχετικά με το GPS
Σχετικά με το GPS
Σχετικά με το GPS
Σχετικά με το GPS
Σχετικά με το GPS
Σχετικά με το GPS

Το Global Positioning System (GPS) είναι ένα δορυφορικό σύστημα πλοήγησης που αποτελείται από τουλάχιστον 24 δορυφόρους. Το GPS λειτουργεί σε οποιεσδήποτε καιρικές συνθήκες, οπουδήποτε στον κόσμο, 24 ώρες την ημέρα, χωρίς συνδρομή ή τέλη εγκατάστασης.

Πως λειτουργεί το GPS Οι δορυφόροι GPS κάνουν τον γύρο της Γης δύο φορές την ημέρα σε ακριβή τροχιά. Κάθε δορυφόρος μεταδίδει ένα μοναδικό σήμα και τροχιακές παραμέτρους που επιτρέπουν στις συσκευές GPS να αποκωδικοποιούν και να υπολογίζουν την ακριβή θέση του δορυφόρου. Οι δέκτες GPS χρησιμοποιούν αυτές τις πληροφορίες και τον τριμερισμό για τον υπολογισμό της ακριβούς τοποθεσίας ενός χρήστη. Ουσιαστικά, ο δέκτης GPS μετρά την απόσταση από κάθε δορυφόρο με το χρονικό διάστημα που απαιτείται για τη λήψη ενός εκπεμπόμενου σήματος. Με μετρήσεις απόστασης από μερικούς ακόμη δορυφόρους, ο δέκτης μπορεί να καθορίσει τη θέση του χρήστη και να την εμφανίσει.

Για να υπολογίσετε τη δισδιάστατη θέση σας (γεωγραφικό πλάτος και γεωγραφικό μήκος) και την κίνηση της διαδρομής, ένας δέκτης GPS πρέπει να είναι κλειδωμένος στο σήμα τουλάχιστον 3 δορυφόρων. Με 4 ή περισσότερους δορυφόρους, ο δέκτης μπορεί να καθορίσει την τρισδιάστατη θέση σας (γεωγραφικό πλάτος, γεωγραφικό μήκος και υψόμετρο). Γενικά, ένας δέκτης GPS θα παρακολουθεί 8 ή περισσότερους δορυφόρους, αλλά αυτό εξαρτάται από την ώρα της ημέρας και το πού βρίσκεστε στη γη.

Μόλις καθοριστεί η θέση σας, η μονάδα GPS μπορεί να υπολογίσει άλλες πληροφορίες, όπως:

  • Ταχύτητα
  • Ρουλεμάν
  • Πίστα
  • Ταξίδι σε απόσταση
  • Απόσταση από τον προορισμό

Ποιο είναι το σήμα;

Οι δορυφόροι GPS μεταδίδουν τουλάχιστον 2 ραδιοσήματα χαμηλής ισχύος. Τα σήματα ταξιδεύουν με οπτική επαφή, πράγμα που σημαίνει ότι θα περάσουν από σύννεφα, γυαλί και πλαστικό αλλά δεν θα περάσουν από τα περισσότερα στερεά αντικείμενα, όπως κτίρια και βουνά. Ωστόσο, οι σύγχρονοι δέκτες είναι πιο ευαίσθητοι και συνήθως μπορούν να παρακολουθούν σπίτια.

Ένα σήμα GPS περιέχει 3 διαφορετικούς τύπους πληροφοριών:

  • Ο ψευδοτυχαίος κώδικας είναι Δ. Δ. κωδικός που προσδιορίζει ποιος δορυφόρος μεταδίδει πληροφορίες. Μπορείτε να δείτε από ποιους δορυφόρους λαμβάνετε σήματα στη σελίδα δορυφόρου της συσκευής σας.
  • Τα δεδομένα Ephemeris χρειάζονται για τον προσδιορισμό της θέσης ενός δορυφόρου και δίνουν σημαντικές πληροφορίες σχετικά με την υγεία ενός δορυφόρου, την τρέχουσα ημερομηνία και ώρα.
  • Τα δεδομένα του Almanac αναφέρουν στον δέκτη GPS πού πρέπει να βρίσκεται κάθε δορυφόρος GPS ανά πάσα στιγμή κατά τη διάρκεια της ημέρας και δείχνει τις τροχιακές πληροφορίες για αυτόν τον δορυφόρο και κάθε άλλο δορυφόρο του συστήματος.

Βήμα 2: Arduino, Neo6m GPS και 16x2 LCD

Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD
Arduino, Neo6m GPS και 16x2 LCD

1. Arduino

Το Arduino είναι μια ηλεκτρονική πλατφόρμα ανοιχτού κώδικα που βασίζεται σε εύχρηστο υλικό και λογισμικό. Οι πίνακες Arduino είναι σε θέση να διαβάζουν εισόδους - φως σε έναν αισθητήρα, ένα δάχτυλο σε ένα κουμπί ή ένα μήνυμα Twitter - και να το μετατρέπουν σε έξοδο - ενεργοποιώντας έναν κινητήρα, ενεργοποιώντας ένα LED, δημοσιεύοντας κάτι στο διαδίκτυο. Μπορείτε να πείτε στον πίνακα τι να κάνει στέλνοντας ένα σύνολο οδηγιών στον μικροελεγκτή στον πίνακα. Για να το κάνετε αυτό, χρησιμοποιήστε τη γλώσσα προγραμματισμού Arduino (με βάση την καλωδίωση) και το λογισμικό Arduino (IDE), με βάση την επεξεργασία.

Απαιτούμενες βιβλιοθήκες για να λειτουργήσει το GPS στο Arduino IDE.

SoftwareSerial

TinyGPS

Μπορείτε επίσης να φτιάξετε το δικό σας προσαρμοσμένο Arduino uno.

2. Μονάδα GPS NEO-6m (όπως φαίνεται στην εικόνα i2)

Φύλλο δεδομένων ενότητας GPS NEO-6m

3. LCD 16x2

Η οθόνη LCD (Liquid Crystal Display) είναι μια ηλεκτρονική μονάδα οθόνης και βρίσκει ένα ευρύ φάσμα εφαρμογών. Μια οθόνη LCD 16x2 είναι πολύ βασική μονάδα και χρησιμοποιείται πολύ συχνά σε διάφορες συσκευές και κυκλώματα. Αυτές οι ενότητες προτιμώνται σε σχέση με επτά τμήματα και άλλα LED πολλαπλών τμημάτων. Οι λόγοι είναι: Οι οθόνες LCD είναι οικονομικές. Εύκολα προγραμματιζόμενο? δεν έχουν περιορισμούς στην εμφάνιση ειδικών και ακόμη και προσαρμοσμένων χαρακτήρων (σε αντίθεση με επτά τμήματα), κινούμενων εικόνων και ούτω καθεξής. Μια LCD 16x2 σημαίνει ότι μπορεί να εμφανίσει 16 χαρακτήρες ανά γραμμή και υπάρχουν 2 τέτοιες γραμμές. Σε αυτήν την οθόνη LCD κάθε χαρακτήρας εμφανίζεται σε μήτρα 5x7 pixel. Αυτή η οθόνη LCD διαθέτει δύο καταχωρητές, συγκεκριμένα, Command και Data. Ο καταχωρητής εντολών αποθηκεύει τις οδηγίες εντολών που δίνονται στην οθόνη LCD. Μια εντολή είναι μια εντολή που δίνεται στην οθόνη LCD για να κάνει μια προκαθορισμένη εργασία όπως η προετοιμασία της, η εκκαθάριση της οθόνης της, η ρύθμιση της θέσης του δρομέα, ο έλεγχος της οθόνης κ.λπ. Ο καταχωρητής δεδομένων αποθηκεύει τα δεδομένα που πρέπει να εμφανίζονται στην οθόνη LCD. Τα δεδομένα είναι η τιμή ASCII του χαρακτήρα που θα εμφανιστεί στην οθόνη LCD.

Διάγραμμα καρφιτσών και περιγραφή καρφίτσας (όπως φαίνεται στην εικόνα i3 και i4)

Λειτουργία 4-bit και 8-bit της LCD Η οθόνη LCD μπορεί να λειτουργήσει σε δύο διαφορετικές λειτουργίες, συγκεκριμένα τη λειτουργία 4-bit και τη λειτουργία 8-bit. Σε λειτουργία 4 bit στέλνουμε τα δεδομένα να τσιμπάνε με τσιμπήματα, πρώτα πάνω τσιμπήματα και μετά κάτω. Για όσους από εσάς δεν γνωρίζετε τι είναι το nibble: το nibble είναι μια ομάδα τεσσάρων bits, οπότε τα κάτω τέσσερα bits (D0-D3) ενός byte σχηματίζουν το κάτω nibble ενώ τα πάνω τέσσερα bit (D4-D7) μιας μορφής byte το υψηλότερο τσίμπημα. Αυτό μας δίνει τη δυνατότητα να στείλουμε δεδομένα 8 bit. Ενώ σε λειτουργία 8 bit μπορούμε να στείλουμε τα δεδομένα 8 bit απευθείας με μία διαδρομή αφού χρησιμοποιούμε και τις 8 γραμμές δεδομένων.

Λειτουργία ανάγνωσης και εγγραφής LCD Η ίδια η οθόνη LCD αποτελείται από ένα IC διασύνδεσης. Το MCU μπορεί είτε να διαβάσει είτε να γράψει σε αυτό το IC διεπαφής. Τις περισσότερες φορές θα γράφουμε απλώς στο IC, καθώς η ανάγνωση θα το κάνει πιο περίπλοκο και τέτοια σενάρια είναι πολύ σπάνια. Πληροφορίες όπως θέση δρομέα, διακοπές ολοκλήρωσης κατάστασης κ.λπ.

Βήμα 3: Συνδέσεις

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Διασύνδεση της μονάδας GPS με το Arduino

Arduino ===> NEO6μ

GND ===> GND

Digitalηφιακό pin (D3) ===> TX

Digitalηφιακή ακίδα (D4) ===> RX

5Vdc ===> Vcc

Εδώ, σας προτείνω να χρησιμοποιήσετε εξωτερική τροφοδοσία για την τροφοδοσία της μονάδας GPS επειδή η ελάχιστη απαίτηση ισχύος για τη λειτουργία της μονάδας GPS είναι 3,3 V και το Arduino δεν είναι ικανό να παρέχει τόσο μεγάλη τάση. Για την παροχή τάσης χρησιμοποιήστε εύφορο USB TTL όπως φαίνεται στο σχήμα i5 Το

Πρόγραμμα οδήγησης USB

Ένα άλλο πράγμα που έχω διαπιστώσει ενώ η κεραία GPS συνοδεύεται από μονάδα είναι ότι δεν λαμβάνει σήμα μέσα στο σπίτι, οπότε χρησιμοποίησα αυτήν την κεραία - είναι πολύ καλύτερο.

Κεραία

Για τη σύνδεση αυτής της κεραίας, πρέπει να χρησιμοποιήσετε το σύνδεσμο που φαίνεται στην εικόνα i6.

Διασύνδεση Arduino UNO και JHD162a LCD

LCD ===> Arduino Uno

VSS ===> GND

VCC ===> 5V

VEE ===> Αντίσταση 10K

RS ===> A0 (Αναλογική καρφίτσα)

R/W ===> GND

Ε ===> Α1

D4 ===> A2

D5 ===> A3

D6 ===> A4

D7 ===> A5

LED+ ===> VCC

LED- ===> GND

Βήμα 4: Αποτέλεσμα

Αποτέλεσμα
Αποτέλεσμα
Αποτέλεσμα
Αποτέλεσμα

Βήμα 5: Επίδειξη

Συνιστάται: