Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: алгоритм определения движения/останова GPS
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
brag
Добрый день!
Не совсем относится к dsp, но тем не мение каким-то боком отностися..
стоит задача определить стоит обьект или нет используя gps. я пробовал по граффикам скорости и курса, но не совсем корректно.
конечно,я бы влепил туда акселерометр и все бы решилось,но возможности такой нету.
за ранее,спасибо!
стоим
Нажмите для просмотра прикрепленного файла
дивжемся
Нажмите для просмотра прикрепленного файла

на граффиках курс - это изменение курса(дельта).
интервал - 1сек.

пробовал юзать скорость и/или среднюю скорость,но не помогло. при стоянке скорость может прыгать и до 8км/ч. а двигаться можно уже со скоростью 1км/ч.
MAXvaLL
Можно городить интегральный датчик координаты. (считать координату зная курс и скорость)

Но глядя на эти графики я что-то не увидел проблемы использования средней скорости... Интервал усреднения побольше взять, и все получится.
brag
ну желательно вложится в 5 сек. если скорость средняя будет около 1км/ч, и скачек под 5км/ч,то ничего дельного не выйдет sad.gif
вот,скажем на месте возле 2241 значения скорости
5,28
6,15
5,46
3,56
0,74
0,74
1,15
взяв 5 первых выборок, мы получим скорость 4,238, что явно не соответствует действительности.
полные трейсы
Нажмите для просмотра прикрепленного файла

хотел как-то оттолкнуться от того,что скачек курса не может быть больше 90градусов при маленьких скоростях(да и при больших тоже).
MAXvaLL
Попробуйте посмотреть спектры сигналов, может удасться эффективно подавить шумы фильтром? (если много шума в ВЧ области например)

Да, кстати, и правда, можно принять, что во время движения курс меняется достаточно медленно и редко.
HARMHARM
Цитата(MAXvaLL @ May 15 2009, 12:38) *
Да, кстати, и правда, можно принять, что во время движения курс меняется достаточно медленно и редко.

Вполне реально изменение курса на 180 за секунду-две. Для автомобиля.
MAXvaLL
Цитата(HARMHARM @ May 15 2009, 14:02) *
Вполне реально изменение курса на 180 за секунду-две. Для автомобиля.

Так я же не против, но ОДИН раз в N секунд/минут. На то и фильтрация/усреднение.
Я думаю постоянно по кругу мало кто ездит biggrin.gif
HARMHARM
Цитата(MAXvaLL @ May 15 2009, 13:18) *
Так я же не против, но ОДИН раз в N секунд/минут. На то и фильтрация/усреднение.
Я думаю постоянно по кругу мало кто ездит biggrin.gif

В общем да, но бывают еще развязки...
MAXvaLL
Цитата(HARMHARM @ May 15 2009, 14:38) *
В общем да, но бывают еще развязки...

Ну там как правило радиус достаточно большой, и соотв-но скорость изменения курса гораздо меньше.
brag
спасибо за ответы

Цитата(HARMHARM @ May 15 2009, 13:02) *
Вполне реально изменение курса на 180 за секунду-две. Для автомобиля.

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

да,радиус большой,а изменение курса на 180 градусов означает резкое движение назад. иначе никак. но вот в пределах до 90градусов повернуть за секунду не реально
MAXvaLL
Цитата(brag @ May 15 2009, 15:12) *
как? даже круто крутанув руль на большой скорости врядли удастся за секунду нормально повернуть...

за две легко. и как раз на достаточно малой скорости (20-40км/ч)

Представьте, машина движется прямолинейно и подъезжает к перекрестку, водитель решает развернуться, и не снижая скорости разворачивается. (перекресток свободен) Каково время разворота?

А вот часто так делать не получиться =)
Так что это фильтруется.
brag
да, за 2 секунды успеет...если бы gps был,чаще,чем секунда smile.gif

самая большая загвоздка в том,что чем выше скорость, тем стабильнее курс sad.gif при стоянке.. по граффикам видно,что на подьемах скорости снижается уровень шума курса...
Oldring
Цитата(brag @ May 15 2009, 15:25) *
самая большая загвоздка в том,что чем выше скорость, тем стабильнее курс sad.gif при стоянке.. по граффикам видно,что на подьемах скорости снижается уровень шума курса...


Ну так перейдите в декартовы координаты для начала.
brag
поробую. перевести широту/долготу в нормальные единицы и там поработать. главное,чтоб атмега на 7мгц это потянула(а там еще и ось крутится). частоту можно увеличить,только может памяти не хватить.
Oldring
Цитата(brag @ May 15 2009, 16:09) *
главное,чтоб атмега на 7мгц это потянула(а там еще и ось крутится).


Это уже в основном зависит от Ваших способностей как программиста.
MAXvaLL
Цитата(brag @ May 15 2009, 16:09) *
поробую. перевести широту/долготу в нормальные единицы и там поработать. главное,чтоб атмега на 7мгц это потянула(а там еще и ось крутится). частоту можно увеличить,только может памяти не хватить.

Посмотрите, помоему фильтрация может помочь. Даже простейший БИХ фильтр дает неплохие результаты.
Кроме того еще поиграться с ХУ можно.
Построил траектории, и правда во время стоянки наблюдаются отчетливые прямолинейные ложные перемещения на приличное расстояние. Да и вообще координата плывет.

Кстати, а ваш приемник, что, координаты не выдает?!
brag
Цитата
Это уже в основном зависит от Ваших способностей как программиста.

и от свободных ресурсов smile.gif

Цитата
Посмотрите, помоему фильтрация может помочь. Даже простейший БИХ фильтр дает неплохие результаты.
Кроме того еще поиграться с ХУ можно.

спасибо, фильтрацию попробую..

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

да..тут,я думаю, фильтр высоких может помочь..других зацепок пока не видно
brag
мучался с фильтром - ничего дельного не получается из за резкого снижения шума курса и скорости при ложном перемещении..
построил траектории. получается обьект меньше, чем за час катается примерно в радиусе 60м (диаграмма3). причем обрисовывает достаточно правдоподобные траектории.
пробовал обрисовывать круг радиусом 50м с центром в какой-то из точек низкой скорости (до 1км/ч). далее, при выходе с этого круга, через некоторое время(5-8сек) строил новый, уже на новой точке (при условии низкой средней скорости - до 6км/ч). движение в пределах этого круга считал стоянкой. для пробок вполне нормально работает. для стоянки так-себе..если выйдет за круг и быстро вернется,то хорошо.а если начинает блуждать (такое обычно происходит при нахождении девайса между домами из за отражения сигнала), то спасает не особо.
для езды по кварталам вообще не катит.маршурт - черти что выходит smile.gif
к стати, не имея карты и отрисовывая траекторию постепенно, по первах даже глазами достаточно тяжело определить, двигается оно или стоит. только после некоторого накопления точек уже можно что-то определить. может стоит как-то воспользоватся этим? т.е. использовать ранее накопленный опыт...
надо подумать как..
странно,что в инете особо нету инфы по фильтрации этих "звезд":)
Diz
Фильтр Калмана ? http://en.wikipedia.org/wiki/Kalman_filter
Не знаю только, хватит ли производительности atmega.
brag
вот только калмана и встречал. производительности не хватит...там кроме этого еще ось вертится с кучей задач
litv
Цитата(brag @ May 23 2009, 01:41) *
вот только калмана и встречал. производительности не хватит...там кроме этого еще ось вертится с кучей задач

Пацаны добавьте сигнал со спидометра(торчит из компов авто) машины в вашу тему - все станет лучше.
brag
нет такой возможности. да и если бы была - не стал бы юзать его для данной цели. как доп. инфа - то,что надо. чем больше, тем лучше. а вот как показатель стоит/едет - нет. думаю, сами догадываетесь почему
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.