Телеметрия (часть 1)
Хотелось бы посмотреть, как Вы будете туда графику впихивать.
Как впихивать - не вопрос: скомпилили и залили. - Было бы только чего (точнее, с чем) компилить. 😃 Вот как вы пихивать поизящнее - действительно надо подумать.
Но принципиальных препятствий нет никаких, и если навскидку не найдется какой-нибудь однокристаллки с достаточным ОЗУ, то сделать это на одном внешнем корпусе памяти и на одной ПЛМ’ке - точно не фокус.
Главная проблема - где взять девкит…
А я не вижу тут два серийника и пяток GPIO: www.efo.ru/images/…/Block-diagramm_NEO-4S.jpg
Не туда смотрю?
Дык, uBlox - это целое семейство, и на самом мелком НЕО свет клином не сошелся…
Кстати, безо всяких китов вы можете пользовать 500 кБ флеша в ЛЕА под свои нужды 😉
Как именно ее можно использовать ? - Если записать туда внешней командой свои пяток байтов, а потом такой же командой считать их обратно, - то нафиг оно не сдалось. А если что-то более серьезное, то расказывайте !
У меня нет, но могу попробовать спросить.
В инете видел проект автопилота для машинки. Всё работало только на одном GPS модуле, но там не блоха была, кажется…
Все зависит от того, какой именно прибор и до какой степени расковыряли.
А то я тоже встречал ссылки (правда, сейчас уже дохлые) на девкиты для каких-то приемников. Однако, поскольку ссылки эти - примерно трехлетней давности, то приемники там были по нынешним временам непомерно большие, тяжелые, жручие, и не очень производительные. Да и не продающиеся уже на сегодняшний день…
Впрочем, буду рад любой информации.
>Вот как выпихивать поизящнее
В этом и вопрос 😉
Между тем, свежекупленный приемничек заработал сразу, на подоконнике видит 7 спутников, все строки кроме GPGSV передает раз в секунду, GPGSV раз в пять секунд.
Мигает светодиодиком, если доступен 2Д или 3Д фикс. При снятии питания и подаче питания обратно делает горячий старт - отыскивает все спутники в течение пяти секунд.
На переворачивание под 90 градусов к горизонту или вверх тормашками реагирует потерей одного из 7 спутников. Лапочка!
В общем, вовсю отлаживаемся. Косяков в GPS коде хватало 😃
Вылеченная от косяков, но пока не облетанная прошивка с поддержкой GPS:
Наверху - абсолютные перемещения относительно базы в метрах, по оси Х (запад-восток) и У (север-юг).
походил с жпс, мои наблюдения:
-
индикатор дальности от базы - мне показалось данные удваиваются
(отходил от места старта на 100 метров гдето, показания за 200 показывало) -
высота , я так понимаю, относительно точки старта меряется
(у меня по Ози порядка 191 метра над уровнем) высота от датчика и от жпс стояла стабильно боль мень на уровне старта тобиш 0 -
индикация на базу (карта)
пока я дальше 50 метров гдето от точки старта - показует четко ! подхожу ближе - начинает шалить (база убегает)
а что означает строка меж жпс (высода и дальность) и параметрическими (высота, скорость,темпиратура)
типа D00000
она тож както изменяется
с ув
Ростислав
некоторые поравки в результате полевых (типа) испытаний
поездил на авто посмотрел
скорость - показания по жпс раза в 2 занижены относительно Ози (рядом кпк работал с жпс своим)
удаление от базы - непонятным образов прыгает - немогу систематизировать но точно правду не говорит
относительное смещение (то которое в верхней строчке ) похоче на правду
высота похожа на правду
с ув
Ростислав
Спасибо за помощь!
скорость - показания по жпс раза в 2 занижены относительно Ози (рядом кпк работал с жпс своим)
удаление от базы - непонятным образов прыгает - немогу систематизировать но точно правду не говоритотносительное смещение (то которое в верхней строчке ) похоче на правду
высота похожа на правду
с ув
Ростислав
Скорость - а в каких единицах Ози показывает? GPRMC выдает узлы, мне приходится умножать почти на 2, чтобы получить кмч. Больше никакой математики со скоростью не делаю.
Апдейт: я дебил, скорость в узлах на 1.852 умножил, в память сохранил, а вывожу - по-прежнему скорость в узлах 😃
высота похожа на правду - это хорошо 😃
Странно, что удаление от базы прыгает, в то время как перемещения по Х и по У похожи на правду. Для удаления от базы там считается только корень из суммы квадратов, и всё. Проверю.
Строка типа D00012 - это азимут текущей скорости в градусах. Вектор текущей скорости правильно показывает? Направление на базу правильно показывает?
ТО, что вектор на базу прыгает, когда база недалеко, это понятно, поскольку данные с ГПС приходят с шумом. Но 50 метров шума с определением - не ожидал. У Вас какой режим навигации (2D/3D) показывала телеметрия и сколько спутников было?
Хм, может, еще и HDOP/VDOP на экран выводить для полноты картины?
Сегодня попытаюсь убедить детеныша со мной в машине покататься, проведу “полетные испытания”.
Ози показует в км/ч
с D0000 разабралсо - тож самое показует ози (Hdg)
данные 3D спутиков - 7-9
HDOP/VDOP можно дето так чтоб не сильно мешало
мож под индикатором захвата базы и режимом приема ?
вектор по карте показует боль мень правду (с учетом минимального порога (около 20-50 метров))
а вот с шумами … идея такая
покрайней мере так хочу сделать у ся в автопилоте
передавать при холодном старте (или по кнопке) строку иницилизации на модуль жпс
вырубать лишние строки и уменьшить промежуток передачи данных
с ув
Ростислав
>а вот с шумами … идея такая
>покрайней мере так хочу сделать у ся в автопилоте
>передавать при холодном старте (или по кнопке) строку иницилизации на модуль жпс
>вырубать лишние строки и уменьшить промежуток передачи данных
Ну, от шумов, мне кажется, это не спасет. А вот передавать данные чаще - пожалуйста. Я думаю на старте телеметрии устроить перебор скоростей USART - 4800,9600, 19200 - и останавливаться на нужной, когда приходят корректные данные. Так можно будет больше всяких разных приемников подключать. С приемниками, передающими данные не 1 раз в секунду, а 4-5, проблем быть не должно, у меня на частоту приема NMEA строк ничего не завязано. Приходит новая строка - обрабатываем и обновляем карту.
У EM406А, похоже, еще один прикольный штрих обнаружился. Он, похоже, внутри как-то фильтрует данные. Когда я утаскивал приемник подальше от балкона, шумы позиции увеличивались, но позиция не скакала вокруг базы, а этак плавно ползала, и при возвращении приемника на балкон, плавно, за 3-4 секунды, приползала к базе.
Обновил прошивку с поддержкой GPS:
- пофикшено отбражение скорости, раньше показывалась скорость в узлах, теперь км/ч.
- пофикшен парсинг широты, раньше смещение по оси север-юг считалось криво, именно из-за этого расстояние от базы было показано сильно больше чем есть на самом деле
- скорость по GPS и удаление от базы по GPS поменяны местами на экране
- полностью переписан парсинг NMEA
Думаю, что можно рекомендовать EM406A TTL (именно А в конце, он 5-вольтовый!) к покупке. Хороший приемничек, замечательно работает с моим вариантом телеметрии.
“Балконное” видео : vimeo.com/1215809
походный тест
(маршрут порядка 100-150 метров)
скорость - похожа на правду
высота - тоже
удаление от базы - 3-5 метров дальше нету (застыло)
карта - правда
буду ехать на работу - проведу “полевые” испытания
с ув
Ростислав
полевые провел
результат
спутников 7-5
режим 3D
скорость - отлично
высота - непонятно у меня был перепад со 101 до 89 - непоказало всевремя 0
карта - непрально все гуляет
дальность тож неправда уехал от старта(по прямой) на 400 метров - показует 44
уехал на 800 - 44
и таки про координаты , думаю они нужны
поясню зачем
ситуевина
вылетели - летаем , нештатка, координаты передаюццо
если апарат напичканный електроникой - значит дорогой , значит запись полета поидее будет вестись на земле
тобто видно все шо было до нештатки
и по координатам последним (если отрубился борт) или текущим - можна направить спасательную группу
а тама вкинул данные в кпк - и по нему как по компасу на место нештатки
таки вот мысли
с ув
Ростислав
Огромное спасибо за помощь!
>и по координатам последним (если отрубился борт) или текущим
Да, надо выводить, надо только найти хорошее место. Проблема в том, что при переключении в крупный шрифт места на экране остается не так уж много. Буду подумать 😃
>высота - непонятно у меня был перепад со 101 до 89 - непоказало всевремя 0
Так и задумано, если высота относительно стартовой точки уходит в минус, я ее обнуляю, не вывожу отрицательные значения.
>карта - непрально все гуляет
>дальность тож неправда уехал от старта(по прямой) на 400 метров - показует 44
>уехал на 800 - 44
Ну, из-за каких-то косяков в расчете дальности кривится и позиция базы и дальность. Бум лечить, пациент всё живее и живее.
Скажите, пожалуйста, какой у Вас GPS модуль? Есть небольшая вероятность того, что он нетрадиционное число знаков после точки выдает в широте и долготе, отсюда и глюки.
Огромное спасибо за помощь!
да мне то за что 😃
на экране остается не так уж много. Буду подумать 😃
вот тут предложение выводить тока при мелком шрифте
>высота - непонятно у меня был перепад со 101 до 89 - непоказало всевремя 0
Так и задумано, если высота относительно стартовой точки уходит в минус, я ее обнуляю, не вывожу отрицательные значения.
тут тож вариант такой
а если летаем на горе , старт с горы и уходим в подножье - таки приятно наверно будет видеть высоту хоть и в - 😃)
модуль у меня em-411 + Max232 для связки с мегой (в результате тоже что и Ваш 406 😃) )
>да мне то за что 😃
Да мне реально стыдно - что это за горе-разработчик, который не может найти возможность самостоятельно проверить свою разработку 😦
>таки приятно наверно будет видеть высоту хоть и в - 😃)
Да нивапрос, лишних 5 строчек кода, сделаем 😃
>вот тут предложение выводить тока при мелком шрифте
Да, так будет проще всего. Наверху есть место между указателем качества приема и таймером. Пойдет?
>Да мне реально стыдно - что это за горе-разработчик, который не может найти возможность самостоятельно проверить >свою разработку 😦
не стоит нагавариветь ! не у каждого есть усидчивость копаццо в коде !
респектище !
> Наверху есть место между указателем качества приема и таймером. Пойдет?
очень гуд !
кстати если сильно мусорю в топик - могу перейти в личку с результатами и предложениями 😃
Полетал с мелким шрифтом - кажется его более чем достаточно, не вижу смысла включать большой.
А после добавления GPS данных на экране остается все меньше места для самого изображения, посему предлагаю свое рационализаторское предложение 😃 Не представляю насколько его реализация трудоемка, оцените сами:
Сделать несколько вариантов отображения различной информации на экране, а при прошивке пользователь сам решит какие варианты ему нужны и в определенные участки eeprom поставит единичку. Затем выбранные экраны будут доступны при циклической прокрутке с помощью ppm-сигнала с применика (как это происходит сейчас)
спутников 7-5
А это в городе? В смысле, на улице между домами или небо хорошо видно?
Сколько каналов у GPS приёмника?
Нашёл - 20 каналов.
Тогда это очень мало… У меня блоха с торпедо меньше 10 не видит. В городе…
Попробуйте под приёмником постелить лист фольги не менее 55 мм.кв., соединённый с общим проводом. Что получится?
Хотя… От антенны растояние большое… 😦
5-7 ето кода как
обычно еду 7-9 вижу
как на кпк (асус 636) так и на модуле ЕМ-411
(все стоит в авто под лобовым стеклом)
на природе поидее должно быть больше
Всё равно маловато… 😦
5-7 ето кода как
обычно еду 7-9 вижу
как на кпк (асус 636) так и на модуле ЕМ-411
(все стоит в авто под лобовым стеклом)
аналогично. Навигатор видит 9 в лучшем случае. В городе между домами 3-5 и все прекрасно работает. Зачем нужно видеть 10 и больше - ума не приложу
Прокатился с платой телеметрии в машинке. Скорость, высоту и курс показывает отлично, направление на базу и расстояние до базы - пока косячит.
vimeo.com/1228052
Камера, оказывается, неплохо ночью работает 😃
В середине ролика, перед и после поворота налево за дом, приемник теряет все спутники, и информация на секунду-две на экране не обновляется - приемник в соответствующих этому времени строках говорит, что инфа неактуальна, и поэтому я просто отбрасываю эти данные.
А вот показатель “3D/2D/na” не успевает перейти в “na”.
Приемник при потере спутников сразу говорит, что отсылаемая инфа неактуальна, но еще секунду или две тормозит перед тем, как сказать, что фикс не 3Д и не 2Д, а вообще недоступен.
Судя по картинке, информация о курсе и скорости тоже запаздывает на секунду-две. Это стандартная фича приемника, я же при получении строки с валидными данными сразу пересчитываю всё что надо.