Mục lục:
- Quân nhu
- Bước 1: Kết nối Raspberry Pi với PC
- Bước 2: Thông tin tóm tắt. Giới thiệu về Mô-đun GPS UBlox NEO-M8N
- Bước 3: Giao diện Mô-đun GPS với Raspberry Pi
- Bước 4: Thiết lập UART trong Raspberry Pi
- Bước 5: Vô hiệu hóa dịch vụ Raspberry Pi Serial Getty
- Bước 6: Kích hoạt Ttys0
- Bước 7: Cài đặt Minicom và Pynmea2
- Bước 8: Kiểm tra đầu ra
- Bước 9: Viết mã Python
- Bước 10: Đầu ra cuối cùng
Video: Giao diện mô-đun GPS với Raspberry Pi: 10 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:30
Này các cậu!! Bạn có muốn kết nối mô-đun GPS với Raspberry Pi không? Nhưng phải đối mặt với một số khó khăn để làm điều đó? “Đừng lo lắng, tôi ở đây để giúp bạn! Bạn có thể bắt đầu bằng cách sử dụng các phần sau:
Quân nhu
- Raspberry Pi 4 Model-B với RAM 4 GB
- Mô-đun GPS UBlox NEO-M8N
- Máy tính
Bước 1: Kết nối Raspberry Pi với PC
Trước hết, hãy kết nối Bảng Raspberry Pi của bạn với PC. Bạn có thể truy cập https://www.raspberrypi.org/blog/getting-started-raspberry-pi/ để biết thông tin liên quan đến việc cài đặt Raspberry Pi Imager.
Bước 2: Thông tin tóm tắt. Giới thiệu về Mô-đun GPS UBlox NEO-M8N
Đây là Mô-đun GPS UBlox NEO-M8N với Ăng-ten hoạt động bằng gốm. Mô-đun GPS này có một động cơ Ublox M8 72 kênh trong bộ thu. Mô-đun có 4 chân: VCC (Điện áp cung cấp), GND (Mặt đất), Tx (Máy phát) và Rx (Máy thu).
Mô-đun này cung cấp các chuỗi dữ liệu NMEA (Hiệp hội Điện tử Hàng hải Quốc gia) không ngừng tới chân TX dẫn đến thông tin GPS. Để biết thêm về mô-đun này, bạn có thể tải xuống biểu dữ liệu của nó tại đây.
Bước 3: Giao diện Mô-đun GPS với Raspberry Pi
Đối với giao diện, hãy thực hiện các kết nối như sau:
- Kết nối Vcc của mô-đun GPS với Chân cấp nguồn số 2 (5V) của Raspberry Pi.
- Kết nối Tx (Chân máy phát) của mô-đun GPS với Chân số 10 của Raspberry Pi.
- Kết nối GND (Chân đất) của mô-đun GPS với Chân số 6 Raspberry Pi.
Bạn cũng có thể chọn các bảng Raspberry Pi khác, nhưng hãy nhớ kiểm tra số pin thích hợp trong khi thực hiện kết nối.
Bước 4: Thiết lập UART trong Raspberry Pi
Điều đầu tiên chúng ta sẽ làm trong phần này là chỉnh sửa tệp /boot/config.txt. Để thực hiện việc này, hãy chạy các lệnh dưới đây:
sudo nano /boot/config.txt
Ở cuối tệp config.txt, thêm các dòng sau
dtparam = spi = on
dtoverlay = pi3-disable-bt
core_freq = 250
enable_uart = 1
force_turbo = 1
ctrl + x để thoát và nhấn y và enter để lưu.
Bước thứ hai trong phần thiết lập UART này là chỉnh sửa boot / cmdline.txt
Tôi sẽ đề nghị bạn tạo một bản sao của cmdline.txt và lưu trước khi chỉnh sửa để bạn có thể hoàn nguyên về sau nếu cần. Điều này có thể được thực hiện bằng cách sử dụng;
sudo cp boot / cmdline.txt boot / cmdline_backup.txtsudo nano /boot.cmdline.txt
Thay thế nội dung bằng;
dwc_otg.lpm_enable = 0 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 lift = deadline fsck.repair = yes rootwait yên tĩnh giật gân plymouth.ignore-serial-console
Nhấn ctrl + x để thoát và nhấn y và enter để lưu.
Bây giờ khởi động lại pi để xem các thay đổi
Bước 5: Vô hiệu hóa dịch vụ Raspberry Pi Serial Getty
Một. Nếu trong đầu ra của bạn, Serial0 được liên kết với ttyAMA0, thì để tắt nó, hãy sử dụng lệnh dưới đây,
sudo systemctl dừng [email protected] systemctl vô hiệu [email protected]
NS. Nếu trong đầu ra của bạn Serial0 được liên kết với ttys0, thì để tắt nó, hãy sử dụng lệnh dưới đây,
sudo systemctl dừng [email protected] systemctl vô hiệu [email protected]
Bước 6: Kích hoạt Ttys0
Để kích hoạt ttyso, hãy sử dụng lệnh sau,
sudo systemctl cho phép [email protected]
Bước 7: Cài đặt Minicom và Pynmea2
Sử dụng thư viện python minicom để kết nối với mô-đun GPS và hiểu dữ liệu.
sudo apt-get install minicom
Sử dụng thư viện python pynmea2 để phân tích cú pháp dữ liệu NMEA đã nhận.
sudo pip cài đặt pynmea2
Bước 8: Kiểm tra đầu ra
Để kiểm tra GPS, hãy chạy lệnh sudo cat / dev / ttyAMA0, Bạn sẽ nhận được kết quả như hình trên.
Bước 9: Viết mã Python
Bây giờ, hãy viết mã python cho giao diện của mô-đun GPS với Raspberry pi
nhập nối tiếp
Thời gian nhập khẩu
nhập chuỗi nhập pynmea2
trong khi True: port = “/ dev / ttyAMAO”
ser = serial. Serial (cổng, tốc độ truyền = 9600, thời gian chờ = 0,5)
dataout = pynmea2. NMEAStreamReader ()
newdata = ser.readline ()
if newdata [0: 6] == “$ GPRMC”:
newmsg = pynmea2.parse (newdata)
lat = newmsg.latitude
lng = newmsg.longitude
gps = “Vĩ độ =" + str (lat) + “và Kinh độ =" + str (lng)
in (gps)
Bước 10: Đầu ra cuối cùng
Cửa sổ hiển thị ở trên là kết quả cuối cùng. Nó cung cấp dữ liệu về vị trí chính xác của bạn về Vĩ độ và Kinh độ.
Dự án này dựa trên một bài báo Mô-đun GPS với Arduino và Raspberry Pi - của Priyanka Dixit. Hãy truy cập bài viết này để biết thêm về GPS, cách hoạt động của nó, giải thích các thuật ngữ chính kinh độ & vĩ độ, sự khác biệt giữa chip GPS và mô-đun GPS, và nhiều hơn thế nữa!
Đề xuất:
Esp8266 dựa trên Boost Converter với giao diện người dùng Blynk tuyệt vời với bộ điều chỉnh phản hồi: 6 bước
Esp8266 dựa trên Boost Converter với giao diện người dùng Blynk tuyệt vời với bộ điều chỉnh phản hồi: Trong dự án này, tôi sẽ chỉ cho bạn một cách hiệu quả và phổ biến cách tăng điện áp DC. Tôi sẽ cho bạn thấy việc xây dựng một bộ chuyển đổi tăng cường có thể dễ dàng như thế nào với sự trợ giúp của Nodemcu. Hãy xây dựng nó. Nó cũng bao gồm một vôn kế trên màn hình và một phản hồi
Chuyển giao việc học với NVIDIA JetBot - Vui vẻ với các nút giao thông: 6 bước
Chuyển giao học tập với NVIDIA JetBot - Vui vẻ với các nón giao thông: Hướng dẫn robot của bạn tìm đường trong mê cung các nón giao thông bằng cách sử dụng máy ảnh và mô hình học sâu hiện đại
Bắt đầu với giao diện cảm biến I2C ?? - Giao diện MMA8451 của bạn bằng ESP32s: 8 bước
Bắt đầu với giao diện cảm biến I2C ?? - Giao diện MMA8451 của bạn bằng cách sử dụng ESP32s: Trong hướng dẫn này, bạn sẽ tìm hiểu tất cả về Cách khởi động, kết nối và nhận thiết bị I2C (Gia tốc kế) hoạt động với bộ điều khiển (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
Giao diện ESP32 với SSD1306 Oled Với MicroPython: 5 bước
Giao diện ESP32 với SSD1306 Oled Với MicroPython: Micropython là sự tối ưu hóa của python và dấu chân nhỏ của python. Có nghĩa là để xây dựng cho thiết bị nhúng có hạn chế về bộ nhớ và tiêu thụ điện năng thấp.Micropython có sẵn cho nhiều họ bộ điều khiển bao gồm ESP8266, ESP32, Ardui
Màn hình Nextion - Giải thích về giao diện và giao thức với PIC và Arduino: 10 bước
Màn hình Nextion | Giải thích về giao diện và giao thức với PIC và Arduino: Nextion Display rất dễ sử dụng và giao diện dễ dàng với bộ điều khiển vi mô. sẽ hành động trên để hiển thị