строю свой автопилот, интересуют несколько вопросов

stalcer

Зная вектор Vgps (направление и модуль), мы фактически знаем расположение земли относительно модели, т.е. тот вектор который нам дает магнитометр - тоже можно вычислить. Значит магнитометр не нужен 😛.

Вот в pdf, ссылка на который лежит у тебя на сайте, написано:

An accelerometer and magnetometer will measure the earth’s gravitational and magnetic elds respectively and so provide an absolute reference of orientation.

Замени здесь “magnetometer” на “GPS sensor” - ниче не изменится.

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

Я рассматриваю систему из GPS, 3dof акселерометра и 3dof гироскопа. И пока все. Интуитивно кажется, что их должно быть достаточно для определения положения/направления модели.

ЗЫ: вчера с дочкой изучили проблему 😁

kaveg
stalcer:

Я рассматриваю систему из GPS, 3dof акселерометра и 3dof гироскопа. И пока все. Интуитивно кажется, что их должно быть достаточно для определения положения/направления модели.

ЗЫ: вчера с дочкой изучили проблему 😁

будет достаточно пока

  1. отсутствует ветер изменяющий направление вектора скорости относительно того куда смотрит самалёт
  2. нет скольжения - вчера только наблюдал когда попозже поднялся ветерок когда самолет летел фактически крылом впёрд))))
    те компенсация возможна только в определённые моменты, вопщемто для “только определённые” магнетометр подходит лучше, с компенсацией магнетометром фишка в том что если предположить что самаолёт летает примерно равномерног - одинаковое количество левых и правых виражей и других изменяющих показания акселерометров возмущений когда среднее значение вектора ускорения соотвествует G и направлено в низ
stalcer
kaveg:

отсутствует ветер изменяющий направление вектора скорости относительно того куда смотрит самалёт

Да не прав ты в этом. Мне все равно какой стороной вперед летит самолет. Более того, используя систему из трех датчиков (GPS, акселерометр и гироскоп) я могу это определить (а определив это, я могу даже аналитически вычислить, куда дует ветер (ну примерно)).

Тут придумалась такая метафора: немного жестоко, но, надеюсь, никто не обидится 😇:

Вот поймали тебя (ну ладно, пусть меня 😵) бандиты. Поставили посередине комнаты, завязали глаза. А потом пнули ногой в живот.
Вопрос: смогу ли я (с завязанными глазами) оценить:

  1. насколько я отлетел? Ну примерно смогу. Скажем, мне показалось, что метра на два.
  2. какой стороной я летел? Конечно смогу! Я же знаю, что меня пнули в живот, т.е. летел я задницей вперед.

Т.е., другими словами, пусть даже я и не знаю куда именно я отлетел (на серев или на северо-запад или еще куда), я вот что знаю точно: то что направление “вектора моей задницы” совпадает с направлением “полета”.

Страшилки продолжаются: Далее, бандит по кличке “GPS” 😁 вдруг сообщает в эфир (другому бандиту, ну и я тоже слышу): “Ооо! Круто пошел 😈, прямо в направлении севера 😁”.

Все, блин! Получив эту информацию, я знаю что в конечной точке я стою лицом на юг.

kaveg
stalcer:

Далее, бандит по кличке “GPS” вдруг сообщает в эфир (другому бандиту, ну и я тоже слышу): "Ооо! Круто пошел , прямо в направлении севера ".

дадада прямо в направлениии севера, но правом боком задницей или или как все передом неясно, бандюган по кличьке жпс тебе этого не скажет, он говорит что целиком ты переместился на север

stalcer:

какой стороной я летел? Конечно смогу! Я же знаю, что меня пнули в живот,

пнули один раз от боли курс в мосгу сбился на градус, пнули второй ещё и так далее, если пинать примерно одинаково с разных сторон то всё будет пучком в среднем матожидание ошибки будет равно нулю, но представь что тебя пнули так что ты выруюбился после чего тебя оттащили неизвесно как тебе(зашкалили гиры), хотя даже без этого дрейф будет так как пинать тебя аккуратно по кругу никто не будет а бандит жпс может выдать твой курс с погрешностью 180 градусов(случай когда сильный ветер в морду и ты летишь в потоке хвостом вперёд относитенльно земли и жпс показывает не туда куда ты собираешся лететь а совсем в обратную сторону)

blade
kaveg:

бандюган по кличьке жпс тебе этого не скажет

Ребяты, не парьтесь: всё давно украдено (до вас) 😃
Надо корректировать “0” гироскопов (или- горизонта, как нравится) по двум ориентирам :
3Д компасу (грубовато) и наличию-отсутствию скольжения (по ЖПС).
Только не раз в 10 сек, (как тут пИсали) а пять раз в секунду (т.е. с каждым приходом пачки координат с ЖПС модуля) .
И будет- Щастье.

msv

Может пора к формулкам перейти, а то что-то не врублюсь в все эти аналогии… кто и зачем пнул мой самолет… И как он почувствовал куда его пнули… И тем более как из этого или из определения наличия скольжения получить текущий крен… Правильно ли понял, что зреет аналитическое решение а не вероятностное? Это было бы действительно счастье…

stalcer
kaveg:

дадада прямо в направлениии севера, но правом боком задницей или или как все передом неясно, бандюган по кличьке жпс тебе этого не скажет, он говорит что целиком ты переместился на север

Дык, мне этого знать и не нужно.

kaveg:

а бандит жпс может выдать твой курс с погрешностью 180 градусов(случай когда сильный ветер в морду и ты летишь в потоке хвостом вперёд относитенльно земли и жпс показывает не туда куда ты собираешся лететь а совсем в обратную сторону)

Никак мы не находим понимание по этому вопросу. ЖПС мне дает курс меня относительно земли (т.е. как ты и сказал - меня целиком). Он естественно не говорит мне о том, в какую сторону относительно себя же я двигался (передом, задом или боком).
Но мне этого и не нужно знать: давай изменим эксперимент. Пусть после того как мне завязали глаза, меня раскрутили и остановили. Все, я больше не знаю куда изначально повернут. Но, этого мне и не нужно, все остальное все равно будет верно и в конце я буду знать, что повернут лицом на юг.

Т.е. я узнаю это за один шаг алгоритма. Следовательно я буду повернут лицом на юг с точностью равной дрефу датчиков на одном GPS шаге (и даже более точно, если этот шаг не первый; но это уже другая история).

пнули один раз от боли курс в мосгу сбился на градус, пнули второй ещё и так далее

Ну, и еще раз про тоже самое: Каждый раз, когда меня пинают, я, извините, заново чувствую куда мне попали (в пузо или в бок). И, следовательно, заново понимаю, каким боком я лечу туда, куда я лечу (я еще не знаю, куда я лечу, но каким боком я туда лечу - знаю). Заново - значит без накопления погрешности.

Только не раз в 10 сек, (как тут пИсали) а пять раз в секунду (т.е. с каждым приходом пачки координат с ЖПС модуля) .

Я просто хотел сказать, что интервал времени, удовлетворяющий двум следующим условиям, вполне существует:

  1. достаточно большой, чтобы фильтровать погрешность GPS.
  2. достаточно маленький, чтобы ошибка дрейфа была приемлема.
msv

Равномерный прямолинейный полет… Ветерок (пусть тоже равномерный) соизмеримый или больше скорости модели. Как по по GPS узнать каким боком я лечу? И тем более с каким креном? Может все-таки формулки?

blade
msv:

Как по по GPS узнать каким боком я лечу

По ЖПС- никак 😦
Именно за этим ставятся три гиры, три акселя и три компаса (ИМУ), которые в сумме (через фильтр Калмана) дают эту информацию.
А ЖПС- дополнительно показывает (если сравнивать с показаниями ИМУ)-есть ли в данный момент скольжение (т.е. изменение курса+высоты) И если скольжения нет, а ИМУ- показывает равномерно-прямолинейный полёт, значит ничего корректировать не надо, всё в норме 😃 А если показания расходятся- тут то и вступает в силу секретный алгоритм коррекции горизонта.
Формулок у меня нет- я математику с детства ненавижу.
А всё это- знаю от Н.В.Чистякова, начальника “Новик XXI”
Который автопилот сделал аж лет 10 назад.
Те же принципы использует и автопилот “Текнол”.
И- хоть обдрищ…э…что хочешь делай- нормальной гироплатформы без всего этого- не получится 😢
Пример- мучения народа с ФИ20-21.
Коррекции - нет, через 10 минут- летим на боку.

msv

имхо фильтр Калмана выдает оценочный результат и требует вероятностную модель объекта, а значит всегда могут появиться условия, при которой он не сработает… Мне показалось народ пытается найти именно аналитическое решение, выдающее однозначный результат…

Frr
msv:

Может все-таки формулки?

У Вас уже есть “железка”? (какие датчики и проц?)

kaveg
msv:

Мне показалось народ пытается найти именно аналитическое решение, выдающее однозначный результат…

однозначного результата не будет, будет оценка, а народ стремиться привести матожидание оценочного резщультата к реальному значению параметра, а его среднеквадратичное отклонение к минимуму

kaveg

хех сижу вот привинчиваю жпс а оно чтото ну совсем никаких байтиков не шлёт))) часа три искалд баг в коде пока не выяснил что тупа smd разъемчик не пропаялся)))
И ведь зараза мелкосхемки с куда более мелким шагом безногии нормально прилепил, а эту фигнотень с кучей ног и не пропаял)))

1 month later
11 days later
kaveg

успехи - железка почти готова к первым испытаниям. заказал большой самолёт который ее поднимет. А пока на свою видавшую кучу аварий цесну поставил вот это и полетал в очках разок))) tamila.linux-rusnet.org/simple_osd
тяжко но летит))))

kaveg

эххх, когдаже большой самолёт привезут…
А пока вот - замонстрячил хедтрекер из того что дома нашёл)))
tamila.linux-rusnet.org/home/cam_tracker
Дороговатые детальки конечно использовал и крупный получился, но что же поделать если ничё другого дома не нашлось более подходящего)))

kaveg

возник вопрос с радиочастотной совместимостью. Опыты с мини-осд показали что FPV оборудование неплохо может тролить GPS - вопрос соответсвенно на каких частотах тролинг? из того что удалось выяснить - жпс находясь рядом с микросхемкой OSD даже в режиме внутренней синхронизации(передатчик и камера отключены, на видеовыход подается серая картинка с телеметрией) гасит жпс(практически не работает, спутников не ловит или ловит по полчаса). проблему решил выносом жпс на длинных проводках сантиметров на 30 от osd микросхемки и 3мя витками вокруг феррита непосредственно перед GPS модулем+ завернул OSD в алюминиевую фольгу. в результате получил - высота 200м удаление около 250±50 управление 2.4 работает, видео на развороте погасло, погасло резко как понос без снега - 900МГц 100мВ штатная китайская антенна(подозреваю скотч люминиевый закрыл антенну или на вираже антенна была неудачно ориентированна). управление 2.4 гасло один раз - заметил по остановившемуцся на экране пропеллеру секунды ена 2 при полете немного за спиной метрах на 70ти - скорее всего люминий закрыл антенку приемника.

Суть вопроса - на какой частоте OSD гасит GPS. кварц на OSD 27 МГц, сам по себе осд ложит свой 20мбит spi интерфейс если его подключить к контролеру проводками длиннее 10см. включенный передатчик с видео гпс вроде не давит или давит но не так сильно как OSD. Имел ли кто-то подобные проблемы и как решал?

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

blade
kaveg:

антенна активная подключается коаксиалом.

Скорее всего проблема в неправильной разводке питания, особенно- “земли”
Общий принцип: все “земли” и “плюсы” должны вестись к каждому потребителю отдельным проводом и объединяться- только в районе источника питания.
Следует избегать близкой и параллельной прокладки силовых и информационных проводов.
Фольга- не может “заслонить” антенну, если только она не обмотана вокруг неё (и заземлена при этом).
Про это- даже есть специальная теорема Остроградского-Гаусса.
Касательно активной антенны GPS (ИМХО)- она на летательном аппарате только вредит, поскольку летаем мы под открытым небом, и спутники- заведомо видны, а дополнительный усилитель- только лучше ловит помехи, которые рядом.

Володимир
kaveg:

на таком растоянии помошника не видел нормально не то что самалёт

ЛПД рации вам в помощь 😃

kaveg:

Суть вопроса - на какой частоте OSD гасит GPS.

А сколько между видео_антенной и антенной ГПС?

kaveg
Володимир:

А сколько между видео_антенной и антенной ГПС?

сантиметров 40 примерно, но фокус в том что проблемы создает вроде как не передатчик, жпс тухнет с отключенным видеопередатчиком, его включение видимого эффекта по ухудьшению качества жпс не дает.

blade:

Фольга- не может “заслонить” антенну, если только она не обмотана вокруг неё (и заземлена при этом).

фольга заземлена, размер модуля котый ей обмотан 8х5х2 см, антенну на 2.4 приемника управления затенять точно будет, антенна видеопередатчика на сантиметр-два длинней но думаю такой большой(геометрически) кусок металла рядом с антенной на 900 тоже не должен закрывать, располоджена экранированный моджуль osd на растоянии <10см от антенны приемника\видеопередатчика, опятьже диаграмма направленности штыря при наличии такого противовеса рядом может наверно сильно искажаться.
но суть не в этом, в принципе в плане дальности управления и видеотракта я доволен(более 300 метров по лучу при 100 миливатах думаю неплохо) - суть в том чем давится gps? то что ето OSD его давит однозначно - с выключенным OSD и включеным контролером к которому подключен gps и злополучный OSD жпс ловит на открытом небе моментально, если gps непосредственно приклеен скотчем сверху OSD то даже время не определяет gps))) или определяет через полчаса

blade
kaveg:

более 300 метров по лучу при 100 миливатах думаю неплохо)

в моих замерах- 60мВт давало 600-700 метров 😃

kaveg:

суть в том чем давится gps?

А взять анализатор спектра и просмотреть диапазон 1500-1600 мГц- не судьба?
На вопрос “где его взять”, ответ: в солидной мастерской по ремонту сотовых- он есть. www.eliks.ru/kio/index.php?SECTION_ID=1196&ELEMENT… (не реклама, естественно)
Подойти туда с самолётом, дать ремонтнику немного денег- он посмотрит.
Всё займёт- не более 5 минут.
ЗЫ: но, клянусь своей треуголкой- дело не в радиопомехах: нету в ОСД такого, чтобы 1575 мгц- заглушить. В питании собака зарыта 😦
Я бы посмотрел осциллографом, что на шинах питания делается :наверняка “борода” висит.