Оглавление:
- Запасы
- Шаг 1. Подключите Raspberry Pi к ПК
- Шаг 2: Краткая информация. О GPS-модуле UBlox NEO-M8N
- Шаг 3: Интерфейс GPS-модуля с Raspberry Pi
- Шаг 4: Настройте UART в Raspberry Pi
- Шаг 5. Отключите службу Getty Serial Raspberry Pi
- Шаг 6: активируйте Ttys0
- Шаг 7: Установите Minicom и Pynmea2
- Шаг 8: тестовый вывод
- Шаг 9: напишите код Python
- Шаг 10: окончательный результат
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Эй, ребята!! Вы хотите связать модуль GPS с Raspberry Pi? Но столкнулись с некоторыми трудностями? «Не волнуйся, я здесь, чтобы помочь тебе! Вы можете начать со следующих частей:
Запасы
- Raspberry Pi 4 Model-B с 4 ГБ оперативной памяти
- Модуль GPS UBlox NEO-M8N
- Компьютер
Шаг 1. Подключите Raspberry Pi к ПК
Прежде всего, подключите Raspberry Pi Board к ПК. Вы можете посетить https://www.raspberrypi.org/blog/getting-started-raspberry-pi/ для получения информации об установке Raspberry Pi Imager.
Шаг 2: Краткая информация. О GPS-модуле UBlox NEO-M8N
Это модуль GPS UBlox NEO-M8N с керамической активной антенной. Этот модуль GPS имеет 72-канальный двигатель Ublox M8 в приемнике. Модуль имеет 4 контакта: VCC (напряжение питания), GND (земля), Tx (передатчик) и Rx (приемник).
Этот модуль непрерывно передает строки данных NMEA (Национальная ассоциация морской электроники) на вывод TX, что приводит к информации GPS. Чтобы узнать больше об этом модуле, вы можете скачать его техническое описание здесь.
Шаг 3: Интерфейс GPS-модуля с Raspberry Pi
Для сопряжения выполните соединения следующим образом:
- Подключите Vcc модуля GPS к контакту питания № 2 (5 В) Raspberry Pi.
- Подключите Tx (контакт передатчика) модуля GPS к контакту № 10 Raspberry Pi.
- Подключите GND (заземляющий контакт) модуля GPS к контакту № 6 Raspberry Pi.
Вы также можете выбрать другие платы Raspberry Pi, но не забудьте проверить соответствующие номера контактов при подключении.
Шаг 4: Настройте UART в Raspberry Pi
Первое, что мы сделаем при этом, - это отредактируем файл /boot/config.txt. Для этого выполните следующие команды:
судо нано /boot/config.txt
Внизу файла config.txt добавьте следующие строки
dtparam = spi = on
dtoverlay = pi3-disable-bt
core_freq = 250
enable_uart = 1
force_turbo = 1
ctrl + x для выхода и нажмите y и enter для сохранения.
Второй шаг в этом разделе настройки UART - отредактировать файл boot / cmdline.txt
Я предлагаю вам сделать копию cmdline.txt и сохранить ее перед редактированием, чтобы вы могли вернуться к нему позже, если это необходимо. Это можно сделать с помощью;
sudo cp boot / cmdline.txt boot / cmdline_backup.txtsudo nano /boot.cmdline.txt
Замените содержимое на;
dwc_otg.lpm_enable = 0 console = tty1 root = / dev / mmcblk0p2 rootfstype = ext4 elevator = deadline fsck.repair = yes rootwait quiet splash plymouth.ignore-serial-consoles
Нажмите ctrl + x для выхода и нажмите y и enter для сохранения.
Теперь перезагрузите пи, чтобы увидеть изменения.
Шаг 5. Отключите службу Getty Serial Raspberry Pi
а. Если в вашем выводе Serial0 связан с ttyAMA0, то для его отключения используйте следующую команду:
sudo systemctl stop [email protected] systemctl отключить [email protected]
б. Если в вашем выводе Serial0 связан с ttys0, то для его отключения используйте следующую команду:
sudo systemctl stop [email protected] systemctl отключить [email protected]
Шаг 6: активируйте Ttys0
Чтобы включить ttyso, используйте следующую команду,
sudo systemctl включить [email protected]
Шаг 7: Установите Minicom и Pynmea2
Используйте библиотеку python minicom для подключения к модулю GPS и анализа данных.
sudo apt-get install minicom
Используйте библиотеку python pynmea2 для анализа полученных данных NMEA.
sudo pip установить pynmea2
Шаг 8: тестовый вывод
Чтобы проверить GPS, выполните команду sudo cat / dev / ttyAMA0, вы получите результат, как показано выше.
Шаг 9: напишите код Python
Теперь напишите код Python для взаимодействия модуля GPS с Raspberry pi
импортный серийный номер
Время импорта
строка импорта import pynmea2
в то время как True: порт = «/ dev / ttyAMAO»
ser = serial. Serial (порт, скорость передачи = 9600, тайм-аут = 0,5)
dataout = pynmea2. NMEAStreamReader ()
newdata = ser.readline ()
если newdata [0: 6] == «$ GPRMC»:
newmsg = pynmea2.parse (новые данные)
lat = newmsg.latitude
lng = newmsg.longitude
gps = "Широта =" + str (широта) + "и долгота =" + str (lng)
печать (GPS)
Шаг 10: окончательный результат
Окно, показанное выше, является окончательным результатом. Он предоставляет данные о вашем точном местоположении с точки зрения широты и долготы.
Этот проект основан на статье «Модуль GPS с Arduino и Raspberry Pi» - Автор Приянка Диксит. Посетите эту статью, чтобы узнать больше о GPS, его работе, объяснении ключевых терминов долгота и широта, разнице между чипом GPS и модулем GPS и многом другом!