[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

анализ gps-треков



преамбула - решили организовать gps-мониторинг авторанспорта предприятия. по железкам ничего сложного (готовый модуль на sirf3, плата dlink dir-320 в качестве маленького linux-хоста и самопальный блок питания от автомобильной сети). на самом приёмнике с софтом тоже ничего особенного - openwrt в качестве дистрибутива, стандартный gpsd и простенький клиент, пишущий трек на usb flash. сбрасываем трек на сервер (благо wifi у нас "бесплатно" есть в составе dir-320, хотя при желании можно подключть usb gprs-модем и обеспечить онлайн).

теперь возникает вопрос - что с этим делать в дальнейшем.

1. подсчитать километраж по треку.
с первого взгляда ничего сложного, формулы расчёта расстояния между двумя точками по их координатам находятся без проблем. но наверняка тут есть стандартные грабли, на которые можно наткнуться. сходу - gps-приёмник выдаёт показания достаточно часто (раз в секунду), если считать длину трека как кучу маленьких отрезков - не будет ли страдать точность? может быть стоит "упрощать" трэк? да и в городе бывает "мотает" gps-приёмик - наверняка есть алгоритмы отбрасывания "кривых" точек. уверен - есть библиотеки (не обязательно сишные - можно модули для perl, etc), которые предназначены для решения этой задачи. но сходу не нашёл.

2. визуализация трэка.
2.1. первая идея - десктоп-приложение.
например генерировать gpx-файл, который можно грузить в viking. в общем неплохо, карты openstreetmap вполне на уровне, но:
a. не видно направление движения;
b. маловато статистики по треку, что сходу не нашлось:
- хочется показывать информацию о местах остановки - время прибытия и время стоянки (сейчас подумалось - может быть waypoint'ы дл этого можно использовать?); - не нашёл как подсчитать путь между двумя точками на трэке (или скажем среднюю скорость на каком-то участке). c. настройки по умолчанию - viking стартует со своими настройками, а не так, как хочется - нужно добавлять слои с картой, устанавливать параметры отображения трека... (наверное можно вместо стандартного gpx-файла создавать файл для викинга).

кроме viking - на что ещё стоит посмотреть?

2.2. можно сделать веб-интерфейс, благо есть такие вещи, как google maps api (тут скорее всего проблема с лицензией) и openlayers. толком не смотрел, но похоже те же самые проблемы (хочется большего контроля над отображением трека).

2.3. предыдущие два варианта слишком "навороченные" для постоянного использования - требуют или открывать приложение или грузить "тяжёлую" страничку. чаще всего было бы достаточно статичной картинки относительно небольшого размера - куска карты с наложенным на неё треком. с первого взгляда задача более простая, чем первые две - но ничего для её решения не нашёл.
плохо искал?

ps: на самом деле написанное выше никак не привязано к задаче наблюдения за автотранспортом предприятия - с треками своих путешествий автомобиле (и поездок на велосипеде) возникали ровно те же вопросы.


Reply to: