Делаю OSD, автопилот и инерциалку...

Diman_Y
AndyBig:

Буду рад признать, что ошибся и у Вас что-то получилось Делайте…

В процессе! 😃

msv
Diman_Y:

А у Вас есть компас или акселерометр?

Нет, только пиро+GPS.

Diman_Y:

К стати, тут идея пришла компас использовать как гироскоп.

Эта идея приходит похоже всем… (в тч. мне) 😃 Это, наверное, как всем детям (в тч. мне) приходит гениальная мысль соединить мотор и генератор и получится вечный двигатель…
Носитель готов, облетан?

AndyBig
msv:

как всем детям (в тч. мне) приходит гениальная мысль соединить мотор и генератор и получится вечный двигатель…

Увы, не только детям 😃 Уже даже на этом форуме предлагалось что-то подобное 😃

leprud
Diman_Y:

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

Гироскоп меряет что? Правильно…

Musgravehill
Diman_Y:

Можно ли рулить самолетом не имея гироскопа, а имея только показания высоты, абсолютные показания высоты, абсолютный компас, 3D компас, координаты, направление и значение ускорения, и скорость вращения по осям - рулить самолетом?

Акселерометр покажет “направление и значение ускорения” - особенно в повороте! Суммарный вектор будет не перпендикулярен горизонту, а самолетик-то летит горизонтально, без крена.

Магнетометр - вполне работающая вещь, особенно, если вектор маг. поля не под 90 градусов в землю.

Скорость вращения по осям косвенно даст именно гироскоп, после интегрирования мгновенной скорости изменения угла. Интегрирование накапливает ошибку.

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

Товарищи Гуру, кто точно скажет, какие параметры нужны для автопилота? Для полета, для посадки?

blade
Musgravehill:

кто точно скажет, какие параметры нужны для автопилота

Дык, это давно не секрет: пиджак замшевый тьфу, ДУС (датчик угловых скоростей , а вовсе не гироскоп, как его неГуры называют), -три, акселерометр- три, магнетометр-три (для динамической коррекции ошибки ДУС) ЖПС- чем быстее, тем лучше 5-10Гц- для того же самого. Т.Е. для проверки наличия-отсутствия скольжения в те моменты, когда ДУС+акселерометры показывают горизонтальный полёт.
А на самом деле-эроплан летит криво 😦
Ко всему этому- присобачить матрицу Калмана (лично-не знаком) и будет-щастье.

serj

Давно не был… “конструктор” системы симпатичный… прямо как у Риссы… 😃
Дмитрий, у вас есть систематическая проблема- вы сначала что-то делаете- потом думаете КАК это будет работаь. Не разобравшись в ФИЗИЧЕСКИХ И МАТЕМАТИЧЕСКИХ принципах- очень тяжело построить.

Было очень печально услышать от вас, что вы принцип работы МЕМС ДУС-ов поняли лишь после постройки всей системы…

Ну посмотрите вы тот же ardupilot в конце концов! очень многое решено до вас и за вас…

А вы пытаетесь изобрести велосипед с квадратными колесами… Но к нему специальную дорожку надо будет приделать 😃

Musgravehill
serj:

велосипед с квадратными колесами

по шпалам ездить 😁

blade:

ДУС (датчик угловых скоростей , а вовсе не гироскоп, как его неГуры называют), -три, акселерометр- три, магнетометр-три (для динамической коррекции ошибки ДУС) ЖПС- чем быстее, тем лучше 5-10Гц- для того же самого. Т.Е. для проверки наличия-отсутствия скольжения в те моменты, когда ДУС+акселерометры показывают горизонтальный полёт.

  1. Угловые скорости по 3м осям. ДУС + процессор = гироскоп в привычном понимании.
  2. Проекции всех действующих сил на 3 оси. Акселерометры.
  3. Вектор магнитного поля {x,y,z}. Магнетометр.
  4. Координаты в системе ШД+высота. GPS.

В итоге: быстрые вращения отслеживает гироскоп, плавные наклоны - акселерометр. По магнетометру делается коррекция уплывающих ДУС, акселерометров при наличии ускорений. По GPS отслеживается скольжение и высота. Можно бародатчик+УЗ датчик расстояний.

Объясните, пожалуйста, как быть, если:

  1. самолет делает плавный поворот без крена? ДУС не отследили медленно меняющееся возмущение.
  2. самолет делает быстрый поворот без крена так, что акселерометр начинает врать. Суммарный вектор = g+a_центростремительное, получается под углом 45 к вертикали, к примеру. Аксели отключить, дождаться окончания виража и сделать коррекцию?
  3. Самолет хочет стать морковкой в грядке. По осям акселерометра 0 в невесомости. Куда тянуть нос, чтобы выровняться?
blade
Musgravehill:

самолет делает плавный поворот без крена? ДУС не отследили медленно меняющееся возмущение.

Дык, на это ЖПС и приставлен: ему то всё равно, какой разворот-плавный-неплавный: он свою 0,1* выдаст. И компас 3Д не дремлет? Ему тоже плавность пофигу.
Опять же, высота хоть по ЖПС, хоть по баро меняется?
Караул! Падаем!!!
А УЗ в реальной жизни- годится только для посадки, работать начинает где то с 5 метров и врёт- как депутат: отражение от земли шибко от характера поверхности зависит, влажности и прочего…

Musgravehill
blade:

А УЗ в реальной жизни- годится только для посадки, работать начинает где то с 5 метров и врёт

У меня DYP-ME007 работают до 3 метров. Дальше бывают сбои. В Ардуино, кстати, функция измерения миллисекунд кривая, по второму фронту плохо работает.

msv
blade:

Караул! Падаем!!!

Ну если цель системы в предсмертном крике, то конечно… 😃 А вот восстановить сбитый горизонт,а значит адекватно управлять самолетом, уже вряд ли получится…

blade
msv:

уже вряд ли получится…

😢

Diman_Y
serj:

Было очень печально услышать от вас, что вы принцип работы МЕМС ДУС-ов поняли лишь после постройки всей системы…

Не заморачивайтесь. 😃

Папка с материалами, которые были использованны уже на данный момент, по автопилоту уже сейчас перевалила за 2 гига. Одних даташитов и т.д. только на 300 МБт. Если я упустил такой пустяк как оффсет ADC то это просто мелочи.
Еще я на пример забыл подсоединить ресет TMSa куданибудь и он у меня болтался в воздухе. Но это ведь не значит что автопилота не будет. 😃

Короче, сделал я видео ОСД (мое первое видео на ютюбе). 😃

Хотел сделать еще несколько роликов о том как система работает, но оказалось что микрофон не работает, и создание роликов нереносится.

ОСД работает в тестовом режиме. Просто что-то выводит.
При этом пик, который это обсчитывает, может нормально принимать команды. Фактически софт на этот пик уже доделан.

Короче, вот:

Вверху бугут направления домой и на вейпоинт.

Да, забыл. ОСД работает полностью. Если ДСП будет посылать команды, то эти команды нормально будут отображатьося. Я проверял. 😃

Diman_Y

Вчера прикол обнаружил.

Короче, когда стал испытывать все вместе вместе с сервами, то сервы у меня как-то странно дергались с очень большой задержкой. Я уже было про xBee плохо подумал, что типа это она вносит задержку.
Все оказалось гараздо проще. Оказывается сервы не понимают резкое изменение ширины импулься и думают что это ошибка, поэтому отрабатывают ее с ошибкой.
В итоге мне пришлось поставить что-то типа ФНЧ на обновление значений серв, чтобы сервы не сходили с ума. 😃
Сейчас все работает без задержек. 😃
Для джойстика осталось доделать писишный софт, тоторый будет отвечать за микширование серв, установку значений триммеров и всяких там экспонент. 😃

SGordon

а что за сервы? и насколько резко импульсы менялись?

Diman_Y
SGordon:

а что за сервы? и насколько резко импульсы менялись?

Сервы самые обычные, А импульсы менялись довольно резко, в половину всего диапазона за один раз. Был импульс 1 мс, а потом вдруг резко стал 1.5 или 2 мс. В итоге сервы начинала глючить и отрабатывать операцию с задержкой.

Diman_Y
SGordon:

не жизненные какие то изменения

Почему?
Вот была связь, потом пропала, а потом снова появилась… 😃
Для цифровой связи, которая сейчас, вполне жизненные. 😃