воскресенье, 16 октября 2011 г.

GPS-навигация под Linux

GPS-навигация под Linux

alt

В моем модеме для ноутбука есть GPS-приемник. Вот решил настроить, раз уж модемом стал заниматься, и заодно посмотреть какие-нибудь GPS-программы под Linux.

Сначала нужно установить программу mbm-gpsd, которая общается с модемом, при обращении к /dev/gps0 включает GPS и возвращает NMEA-данные от GPS-приемника, а при отключении -- выключает GPS. Поставить mbm-gpsd можно из GIT по инструкции по ссылке или из моего пакета в конце поста, если у вас Debian Stable/AMD64. Проверить можно так:

mbm-gpsd cat /dev/gps0 

И через время посыпется такое:

$GPGGA,,,,,,0,00,1.0,,M,,,,*04 $GPRMC,212235.34,V,,,,,,,151011,,,N*7A $GPGSV,3,1,11,32,36,124,28,01,12,186,26,23,76,330,,20,62,141,*79 $GPGSV,3,2,11,13,54,278,,04,31,297,,16,22,116,,07,16,211,*7F 

Теперь нужно поставить программу gpsd, она преобразует NMEA-поток в удобный формат и раздает клиентским программам по TCP/IP, имеется в Debian:

apt-get install gpsd gpsd-clients gpsd -b -N /dev/gps0 

Теперь надо запустить "xgps", подойти к окну, подождать пока поймаются спутники и поглядеть на них:


XGPS


Точное время и координаты есть, даже высота какая-то есть, если спутников достаточно. Теперь увидим себя на карте с помощью gpsdrive. В Debian старая версия gpsdrive, не понимающая новую версию gpsd. Поэтому gpsdrive надо установить с сайта.

Репозитарий там для Debian какой-то кривой, мне пришлось скачать и поставить вручную следующие пакеты:
openstreetmap-map-icons-classic.small_18403_all.deb
openstreetmap-map-icons-svg-png_18403_all.deb
openstreetmap-map-icons-japan-png_18403_all.deb
openstreetmap-map-icons-svg-twotone-png_18403_all.deb
openstreetmap-map-icons-japan_18403_all.deb
openstreetmap-map-icons-svg-twotone_18403_all.deb
openstreetmap-map-icons-square.big_18403_all.deb
openstreetmap-map-icons-svg_18403_all.deb
openstreetmap-map-icons-square.small_18403_all.deb

Если поискать тамже, то можно найти gpsdrive версии 2.12. Предварительно поставить зависимости:

aptitude install libboost-filesystem1.42.0 libboost-thread1.42.0 libmapnik0.7 libpq5 libspeechd2 

Отключаем недоделанный перевод интерфейса и запускаем:

export LANG=en_EN.UTF-8 gpsdrive 

Текущее положение будет отмечено на карте Земли. Считается скорость, показывается направление. Перемещаться по карте свободно можно в Explore Mode. Можно мерять расстояния, прокладывать путь, что-то там сохранять в SQL-базу данных и даже искать соседей через какие-то сервера. В меню Options - Maps - Download можно скачать разные карты, в том числе увидеть себя на OpenStreetMaps:


gpsdrive 2.12


Интересно, какие еще программы под Linux поддерживают GPS?

Блог: RU Linux

Комментариев нет:

Отправить комментарий