Мне действительно нужен гироскоп для системы стабилизации полета самолета?

9

Я работаю над базовой системой стабилизации полета самолета, как предшественник полной системы автопилота. Я использую спасенные Wii Motion Plus и Nunchuk для создания 6DOF IMU. Первая цель - сохранить уровень крыльев, а затем смешать команды пользователей. Правильно ли я сказал, что для этого не понадобится гироскоп, только акселерометр с 3 (2?) Осями, чтобы обнаружить тангаж и крен, а затем отрегулировать элероны и лифт для компенсации?

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

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

Крис
источник
Планируете ли вы использовать акселерометр для измерения ориентации относительно силы тяжести или интегрировать, чтобы получить скорость?
Джо Бейкер
1
@JoeBaker Ориентация относительно силы тяжести. По сути, самолет должен лететь ровно к земле и быть устойчивым к изменениям крена, вызванным ветром.
Крис

Ответы:

5

Правильно ли я сказал, что для этого не понадобится гироскоп, только акселерометр с 3 (2?) Осями, чтобы обнаружить тангаж и крен, а затем отрегулировать элероны и лифт для компенсации?

Нет. Верно обратное. Акселерометр будет почти бесполезен для обнаружения вращений на платформе, которая испытывает неизвестные ускорения. Ваш самолет будет подвержен двум векторам силы: сила тяжести и лифт + сопротивление. Лифт + сопротивление будет сильно зависеть от шага самолета.

Но вот более общий способ, которым вы можете знать, что это невозможно, и вы можете использовать этот метод во многих других случаях, а не только в IMU. Датчик или набор датчиков дает вам N значений. Вы не можете интерпретировать это в пространство с более чем N измерениями.

Тривиальный пример: вы хотите, чтобы датчик измерял чье-то положение в комнате. Будет ли достаточно одного ультразвукового дальномера? Нет. Положение в комнате требует двух значений (X, Y) координат. Но ультразвуковой датчик дает вам только одно значение - длину. Невозможно настроить этот датчик для решения вашей проблемы. Но если бы у вас было два датчика, то это могло бы быть возможно.

Теперь давайте посмотрим на самолет. Не ускоряющаяся плоскость подвержена только одной силе, гравитации. Направление гравитации относительно плоскости - трехмерный вектор, но, к счастью (если вы находитесь на Земле), вы знаете его величину. Это 1 значение, оставляя 2 неизвестных, так что вы можете теоретически обойтись без 2-осевого акселерометра, чтобы составить эти 2 неизвестных и рассчитать вектор гравитации.


Как насчет самолета в полете. Гравитация и лифт + перетаскивание - это трехмерные векторы, которые дают вам 6 чисел. ОК, вы знаете величину гравитации, так что 5 цифр. Вам понадобится какой-то датчик, который даст вам как минимум 5 значений. Поэтому трехосного акселерометра не может быть достаточно.

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

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

Rocketmagnet
источник
5

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

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

Jakob
источник
Спасибо, я посмотрю на это! Я нашел бесплатный фильтр на форумах Arduino, который я вставил, так как у меня нет математики, чтобы самому его кодировать, посмотрим, как это получится. Я думаю, что завтра смогу пройти летные испытания ...
Крис