PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Разработка программ (http://pccar.ru/forumdisplay.php?f=27)
-   -   GPS трекер для CarPC (http://pccar.ru/showthread.php?t=11815)

Vic58 01.06.2010 10:04

Цитата:

Сообщение от Dmitry02 (Сообщение 144273)
Индикатор появился в свежей сборке.

Версию с обновлениями я конечно скачаю и попробую.
Но вопрос немного другой, т.е. я находился в дороге более 7 часов, буфер треккера заполнен, пусть даже последними 5 часами (так?), потом появляется соединение с интернетом, для передачи данных на сервер возможно потребуется какое-то время, причем интернет может быть неустойчивым. Как гарантированно сохранить данные о движении и переправить их на сервер с использованием устойчивого соединения? А может эти данные будет необходимость использовать в другой программе, скажем ОзиЭкспрлорер.
Насколько я знаю из опыта работы с аппаратными треккерами, это возможно. Там то-же есть буфер данных и проблемы с интернетом, но он не теряет данные пока не отправитт их на сервер, более того данные можно считать поключив треккер к компьютеру. Таким образом обеспечивается и сохранность данных и затем их можно использовать с различными ПО.

vihr76 02.06.2010 18:06

здравствуйте .а с aver pilot трекер будет работать (fm tv.gps)

Dmitry02 02.06.2010 19:37

vihr76, об этом устройстве идет речь?
Если с ним работает iGo, то будет работать и BiTreker

Vic58,
сравнивать аппаратные трекеры с программными не совсем корректно. В них изначально известна матчасть, вы же, к примеру, не впаиваете в них WiFi модуль, не подключаете 3G модем.
Думаю, для ваших потребностей вполне подойдет копирование в буфер на диск или сменный носитель и кнопка принудительной отправки данных.

Vic58 03.06.2010 00:13

Цитата:

Сообщение от Dmitry02 (Сообщение 144487)
сравнивать аппаратные трекеры с программными не совсем корректно.

Дык я их как будто и не сравнивал. Просто говорил, что задачи у них одни и те же, и при этом данные не теряются.

Цитата:

Сообщение от Dmitry02 (Сообщение 144487)
Думаю, для ваших потребностей вполне подойдет копирование в буфер на диск или сменный носитель и кнопка принудительной отправки данных.

Можно и так. Главное чтобы было понятно состояние буфера, процесс отправки данных на сервер, сохранение данных при невозможности отправки. Поэтому я и говорил, что буфер должен быть достаточно объемным, тогда будет возможность их хранения. Думаю что с протоколом передачи данных на сервер должно быть все корректно, но тогда не понятно как он теряет данные?

PS Насчет кнопки, это по моему лишнее, желательно чтобы процесс шел автоматически. Мне за рулем еще не хватало ждать устойчивого соединения модема и жать кнопку отправки, пусть уж треккер этим сам занимается.

vihr76 03.06.2010 10:04

[QUOTE=Dmitry02;144487]vihr76, об этом устройстве идет речь?
Если с ним работает iGo, то будет работать и BiTreker

да это он и igo с ним работпает а как правильноего настроить (В форме форме Параметры объекта заполните:
1) Наименование объекта - название устройства, которое будет отображаться на карте.
2) Модель трекера - выберите из списка GlobalSat TR-151
3) IMEI трекера - введите 15-ти значный уникальный код (IMEI своего мобильного телефона)
Сохраняем изменения, выходим на карту. Сервер настроен и ожидает данные от трекера.
)как узнать IMEI этого устройства

Vic58 03.06.2010 10:43

Цитата:

Сообщение от vihr76 (Сообщение 144564)
3) IMEI трекера - введите 15-ти значный уникальный код (IMEI своего мобильного телефона)
Сохраняем изменения, выходим на карту. Сервер настроен и ожидает данные от трекера.[/COLOR])как узнать IMEI этого устройства

У этого устройства нет ИМЕя как и нет собственно устройства, я пробовал ввести случайный набор цифр, получил ответ - "неверный имей", ввел имей своего телефона и все заработало. Для работы с GPS-trace нужно указывать не треккер TR-151, а собственно BiTreker.

vihr76 03.06.2010 10:50

Цитата:

Сообщение от Vic58 (Сообщение 144567)
У этого устройства нет ИМЕя как и нет собственно устройства, я пробовал ввести случайный набор цифр, получил ответ - "неверный имей", ввел имей своего телефона и все заработало. Для работы с GPS-trace нужно указывать не треккер TR-151, а собственно BiTreker.

а телефон подключен как модем или как

Vic58 03.06.2010 10:52

Цитата:

Сообщение от vihr76 (Сообщение 144568)
а телефон подключен как модем или как

телефон вообще-то не при делах. От него только имей требуется.

NiMar 05.06.2010 14:12

А что за иконка серго земного шара на кнопке свет?
Возможно добавить обновление индикатора соединения с сервером трекинга в RoadRunner? могу дать пример кода, если пишете на си билдере.

Dmitry02 05.06.2010 15:55

Цитата:

А что за иконка серго земного шара на кнопке свет?
Это луна, значит у вас сейчас ночь. Ночью программа сама включает фары (или противотуманки, или что вы там сами захотите включить) в автомобиле. Днем иконка поменяется на солнце, соответственно, фары выключатся.
У меня в машине так настроено, если не вдаваться в подробности.

Цитата:

Возможно добавить обновление индикатора соединения с сервером трекинга в RoadRunner? могу дать пример кода, если пишете на си билдере.
Опишите подробнее, что за индикатор вы хотите вывести и пример кода, я сделаю.

NiMar 05.06.2010 22:52

Цитата:

Сообщение от Dmitry02 (Сообщение 144803)
Опишите подробнее, что за индикатор вы хотите вывести и пример кода, я сделаю.

Просто нужно установить переменную через OLE, остальное уже сделает RoadRunner - просто будет включаться одна иконка когда связь есть и вторая когда ее нет.

Вот такой код будет работать.

Код:

    try
    {
      HWND RRwnd = FindWindow(NULL, "RideRunner");

      if(RRwnd!=NULL){
        Variant RR = CreateOleObject("RoadRunner.SDK");

        RR.OleFunction("Execute", "SETIND;!BiTreker;OFF"); // код выключения
        RR.OleFunction("Execute", "SETIND;!BiTreker;ON"); // код включения индикатора

        RR = Unassigned;
      }
    }
    catch(...)
    {
    }

Еще заметил небольшой глюк - иногда пропадает фон и кнопки по углам внизу, пока не понял от чего зависит.

Dmitry02 06.06.2010 02:16

Цитата:

Сообщение от NiMar (Сообщение 144849)
Просто нужно установить переменную через OLE, остальное уже сделает RoadRunner - просто будет включаться одна иконка когда связь есть и вторая когда ее нет.

Вот такой код будет работать.

Добавил код в BiTreker)))). А как проверить?

NiMar 06.06.2010 23:24

Над установить RideRunner
и в скине добавить строчки
Код:

I02,278,552,32,16,"!BiTreker"
IND,!BiTreker,icons\offline.gif,icons\online.gif

если роадранне получит от вас состояние - то будет отображен соответствующий гиф в скине.

Думаю будет проще выложить сюда, я проверю...

C пропаданием скина и кнопок, выяснил! Такое происходить если запускать программу из батника их другой папки. например
start "BiTreker/treker.exe"

Dmitry02 07.06.2010 15:00

Цитата:

C пропаданием скина и кнопок, выяснил! Такое происходить если запускать программу из батника их другой папки. например
start "BiTreker/treker.exe"
Ну да, рабочей папкой программы становится папка в которой bat-файл лежит.

NiMar 07.06.2010 16:41

Ну дайте прогу потестировать? руки чешутся:)

NiMar 09.06.2010 08:57

Dmitry02
Помогите, какие-то непонятки.
Прога ездит в машине, пользуюсь сервисом gps-trace-com. Интернет через 3g-модем, связь периодически рвется. Ситуация: вчера, ездил за город. в городе позиция обновляется скачками:

http://i.imgur.com/4dz3Z.jpg
Я так понимаю программа должна скидывать трек из буфера при появлении интернета? По программе наблюдал так: Горит восклицательный знак на кнопке Трекинг - появляется инет, потом восклицалельный знак гаснет - значит трек, который был записан пока нет инета скинут на сервер?
Такое впечатление что на сервер уходит только то что было при наличии инета. И потом не понятно: там где стоит машинка - я проезжал по пути домой, около дома, я проверил - инет есть, восклицательных знаков в проге не горит, но машина как была посреди дороги, так и осталась.

Может ли быть дело в настройке на gps-trace-com:
Код:

Включить фильтрацию информации о положении объекта в сообщениях -галочка стоит
Пропускать невалидные сообщения- галочка стоит
Минимальное кол-во спутников: 4
Максимальное значение HDOP: 2
Максимальное значение скорости:0

может плохая связь со спутниками или что-то вроде этого? как это проверить?

Vic58 09.06.2010 10:20

Цитата:

Сообщение от NiMar (Сообщение 145272)
в городе позиция обновляется скачками:

Я так понимаю программа должна скидывать трек из буфера при появлении интернета?

Я уже задавал, Дмитрию вопрос, что как-то не корректно сбрасываются данные. Часть данных регулярно теряется. Пробовал и GPS-trace и GPSHome. Причем я какое-то время не пользовался модемом, сбрасывал данные по окончании поездки через WiFi соединение, иногда все получалось, потом стал пользоваться 3G-модемом, стало все оч. плохо, связь рвется данные теряются.

Dmitry02 09.06.2010 22:44

NiMar,Vic58
Потери точек связаны с простой процедурой отправки данных на сервер и особенностью ОС Windows:
1)Точки хранятся в оперативной памяти и накапливаются при отсутствии соединения.
2)Точки считаются отправленными сразу после отправки пакета.

Последние несколько дней я активно работаю над процедурой. Есть некоторые наработки по обеим пунктам. Проявите терпение пару дней.

Удивлен таким поведением 3g модема. Модем моего навигатора без 3g держит связь стабильней.

Vic58 10.06.2010 00:29

Цитата:

Сообщение от Dmitry02 (Сообщение 145385)
1)Точки хранятся в оперативной памяти и накапливаются при отсутствии соединения.

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

Цитата:

Сообщение от Dmitry02 (Сообщение 145385)
Проявите терпение пару дней.

Ждем с нетерпением.

NiMar 10.06.2010 13:01

Цитата:

Сообщение от Dmitry02 (Сообщение 145385)
1)Точки хранятся в оперативной памяти и накапливаются при отсутствии соединения.

Несколько раз было - программа вылетает с сообщением об ошибке с просьбой отправить отчет. Это из-за переполнения буфера?
Может если буфер заполнен более чем на половину, то начинать писать не через 5, а через 15-20-30 сек?

Цитата:

Сообщение от Dmitry02 (Сообщение 145385)
2)Точки считаются отправленными сразу после отправки пакета.

Тогда понятно - инет через модем бывает еле шевелится. Иногда страничку приходится по 2-3 раза открывать... надо подтверждение о приеме точек.

Dmitry02 10.06.2010 13:49

Программа будет скидывать точки трека в файл.

Цитата:

Несколько раз было - программа вылетает с сообщением об ошибке с просьбой отправить отчет. Это из-за переполнения буфера?
Может если буфер заполнен более чем на половину, то начинать писать не через 5, а через 15-20-30 сек?
Сейчас буфер в памяти имеет размер порядка 30кбайт, не думаю, что в нем причина. В машине у меня стоит компьютер на Windows CE (под него делаю отдельную сборку программы). Версию x86 отлаживаю на домашнем компе, так что в полевых условиях протестировать затрудняюсь.

Цитата:

Тогда понятно - инет через модем бывает еле шевелится. Иногда страничку приходится по 2-3 раза открывать... надо подтверждение о приеме точек
А у меня бывает, что модем совсем не шевелится, хотя соединение активно. Помогает только передергивание соединения в ручном режиме.

NiMar 10.06.2010 16:06

Цитата:

Сообщение от Dmitry02 (Сообщение 145474)
А у меня бывает, что модем совсем не шевелится, хотя соединение активно. Помогает только передергивание соединения в ручном режиме.

Да, у меня программка автоматически передергивает если узел не пингуется.

Dmitry02 10.06.2010 23:40

NiMar, Vic58
отправил в личку ссылку на скачивание новой сборки BiTreker 1.1(rev0).

Новая версия:
1) все точки сохраняет на диск
2) считает точку отправленной на сервер только после подтверждения доставки
3) посылает состояние связи с сервером в RideRunner

пункт 2 проверил только на домашнем компьютере в тепличных условиях
пункт 3 мной не проверен

NiMar 11.06.2010 14:27

функционирует!!!
Часок поездил... вроде как нормально передает:)
за город еще сьезжу поглядим.
В RR статус соединения тоже передается - только при выходе из проги надо чтоб посылал что связи нет.

Вопрос в догонку - а не завышает ли прога скорость?
или это в принципе невозможно?

Dmitry02 11.06.2010 16:58

Да, последняя сборка меня тоже порадовала, только что прокатился с ней.

Проверить скорость очень просто. На форме GPS в верхней строке отображается скорость в км/ч. Проверить скорость, которая отсылается на сервер, так же просто. Достаточно прокатиться с постоянной скоростью (на круизе, к примеру) на каком-либо участке дороги и потом сверить скорость с треком на сервере.

Отправку статуса сервера при выходе из программы добавлю.
А как быть, если RR запускается после старта трекера?

NiMar 12.06.2010 00:44

Цитата:

Сообщение от Dmitry02 (Сообщение 145665)
Да, последняя сборка меня тоже порадовала, только что прокатился с ней.

Проверить скорость очень просто. На форме GPS в верхней строке отображается скорость в км/ч. Проверить скорость, которая отсылается на сервер, так же просто. Достаточно прокатиться с постоянной скоростью (на круизе, к примеру) на каком-либо участке дороги и потом сверить скорость с треком на сервере.

хорошо, проверю при случае.

Цитата:

Сообщение от Dmitry02 (Сообщение 145665)
Отправку статуса сервера при выходе из программы добавлю.
А как быть, если RR запускается после старта трекера?

Обновлять статус раз в минуту, можно и после каждой посылки.

сегодня ехал обратно - программа постоянно вылетала с ошибкой через 1-2 минуты после запуска. Зависимость пока не установил.
Если прога вылетит, то трек сохраненный в файле отправится на сервер при следушем запуске?

Dmitry02 12.06.2010 01:24

OLE такая ненадежная штука... чем меньше ее дергаешь, тем лучше.

Трек пишется в папку chunks кусками. При падении программы последний кусок просто не запишется на диск.
Лечить стоит не последствия, а причины падения. Попробуйте прибить эту папку или прокатиться без RideRunner.

Что-то Vic58 молчит, его отчет о поездки был бы сейчас очень кстати, ведь новая версия под CarPC есть только у вас двоих.

Vic58 12.06.2010 17:17

Цитата:

Сообщение от Dmitry02 (Сообщение 145730)
Что-то Vic58 молчит, его отчет о поездки был бы сейчас очень кстати, ведь новая версия под CarPC есть только у вас двоих.

Прошу прощения, еще даже не установил обновленную прогу. Работа, гости, семья, чет эти дни некогда было. Но с интересом слежу за процессом.

Vic58 12.06.2010 18:56

Цитата:

Сообщение от Dmitry02 (Сообщение 145730)
Что-то Vic58 молчит, его отчет о поездки был бы сейчас очень кстати, ведь новая версия под CarPC есть только у вас двоих.

Все поставил прокатился, но ничего не заработало. Т.е. все светится координаты определены, интернет работает, а данных на сайте GPSHome нет. При этом там же светится что данные поступают, но позиция не определена. Буду разбираться.
Что удалось выяснить:
- при работе с GPSHome, на треккере светится треугольник с восклицательным знаком. Хотя все настройки присутствуют, и кроме того сайт треккер видит, но данных от него не получает.
- при переключении на GPS-trace, треугольничек с восклицательным знаком исчез, данные стали уходить, во всяком случае маневры возле гаража отобразились нормально, дальше пока не прокатился.

NiMar 12.06.2010 22:23

Цитата:

Сообщение от Dmitry02 (Сообщение 145730)
OLE такая ненадежная штука... чем меньше ее дергаешь, тем лучше.

поэтому я вызов OLE и закрываю в try-catch
Две мои программы точно также дергают RoadRunner, причем одна из них даже чаще раза в секунду.

Цитата:

Сообщение от Dmitry02 (Сообщение 145730)
Трек пишется в папку chunks кусками. При падении программы последний кусок просто не запишется на диск.
Лечить стоит не последствия, а причины падения. Попробуйте прибить эту папку или прокатиться без RideRunner.

сегодня упала только пару раз - ездил много.
На треке заметил пару точек - которые ушли вообше не в ту степь (предположительно как раз когда была потеря данных или вылет).

Вообще тема очень понравилась:)

Hamster 13.06.2010 20:08

Дмитрий, у меня есть трабл, не пойму какой. И именно на одном компе.
В общем, описываю ситуацию.
Есть аккаунт на gps-trace. Все настроено как в твоем мануале.
Есть настроенный BiTreker на флешке (чтоб тестить на разных компах один и тот же экземпляр).
Есть 2 карписи (Цивик, МДХ)
Есть 3 компа дома.

Так вот, везде, на всех 4 компах (3 дома, один в Цивике), окромя компа в МДХ трекер работает, в gps-trace инфа обновляется. На компе в МДХ - хрен. Т.е. в МДХ трекер работет, видно, что трекер отправляет в инет пакеты.

Для чистоты эксперимента на всех компах в качестве транспорта один и тот же Skylink модем. Винда дома Win7, в карписи XP (одна и та же).

Куда копать? :)

Vic58 13.06.2010 22:04

Покатался сегодня с мониторингом на GPS-trace, вроде все точки трека на месте. При том в течении дня несколько раз комп был в ждущем режиме и в спящем, после всех режимов восстанавливался нормально.

Dmitry02 15.06.2010 16:16

Цитата:

Сообщение от Hamster (Сообщение 145869)
Дмитрий, у меня есть трабл, не пойму какой. И именно на одном компе.

видно, что трекер отправляет в инет пакеты.

Насколько я помню, BiTreker 1.0.3.1 показывает соединение с сервером, но не отправку данных.

Возможно, COM порт чудит.

Hamster 15.06.2010 16:22

Цитата:

Сообщение от Dmitry02 (Сообщение 146062)
Насколько я помню, BiTreker 1.0.3.1 показывает соединение с сервером, но не отправку данных.

Возможно, COM порт чудит.

Не, я в свойствах подключения смотрел - кто-то шлет инфу :)
Если трекер выключить - никто не шлет. Вывод - это трекер :)

Да, забыл сказать - используется GPSGate для размножения портов. Но, на Цивике такая же конфигурация и там все работает...

А со стороны сервера я как обычный юзер не могу никак посмотреть какие пакеты идут от конкретного ip?
В журнале естессно ничего нет...

Dmitry02 15.06.2010 16:48

Цитата:

Сообщение от Hamster (Сообщение 146064)
А со стороны сервера я как обычный юзер не могу никак посмотреть какие пакеты идут от конкретного ip?
В журнале естессно ничего нет...

Посмотреть можно только точки трека.
GPS приемники какие на машинах?

Hamster 15.06.2010 16:53

BU-353 (Цивик) и ET-332(МДХ)
Дома когда пробовал использовал симулятор, встроенный в GPSGate.

Dmitry02 15.06.2010 17:02

Ну дак вот он корень проблемы - ET-332
Есть возможность выслать NMEA лог с приемника с определенными координатами и без?

Hamster 15.06.2010 17:07

Ага, попробую!
Правда без координат - не знаю, получится ли - антенна приемника не доступна. Попробую фольгой ее закрыть :)
Куды слать?

Dmitry02 15.06.2010 17:16

Адрес в личке.

Про лог без спутников спросил потому, что мой навигатор, к примеру, при отсутствии связи со спутниками шлет координату (0,0) :smile2:
Не критично, но вдруг получится. Нет, значит нет.

Hamster 15.06.2010 19:24

Отправил.
На сколько я понял если связи нет со спутниками, то приемник ничо не пишет, просто запятые, без значений.
Цитата:

$GPGSA,A,1,,,,,,,,,,,,,50.0,50.0,50.0*05
Я вот думаю, если дело в приемнике, то что тогда трекер шлет на сервер? Попробую завтра сниффером посмотреть :)


Часовой пояс GMT +4, время: 21:24.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot