Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Failsafe по потере управления с наземной станции




термин GCS означает Наземная станция управления, она может быть реализована как в виде отдельного контроллера, так и в виде переносного компьютера с установленным п/о "Missoin Planner" с подключенным беспроводным модемом

Как это работает. При полете при использовании телеметрии на GCS, APM может быть запрограммирован таким образом, чтобы перейти в безопасный режим, если он теряет радиосигнал телеметрии. В случае, если APM прекращает прием контрольных сообщений MAVlink (протокол телеметрии) в течение более 20 сек, GCS Failsafe (FS_GCS_ENABL, 0 = отключено, 1 = включено) инициирует переход APM режим указанный в настройках для длительного failsafe, по умолчанию это RTL (возврат к месту запуска).

Настройка.

1. установите параметр FS_GCS_ENABL равным 1 для использования этой функции.

2. Подключитесь из "Missoin Planner" по телеметрии. Проверьте на HUD (табло полета) в нижнем углу что вы используете не автоматический режим (подойдут Manual, Stabilize, FBW).

3. Отключите радиомодем от USB. Через несколько минут отключите контроллер APM. (Помним что APM не входит в failsafe до истечения 20 секунд отсутствия связи по радиомодему).

4. Подключите APM к "mission planner" убедитесь что в логе зарегистрирован переход в режим RTL.

Фрагмент программного кода

Short Failsafe. events.pde line 4

static void failsafe_short_on_event()
{
// This is how to handle a short loss of control signal failsafe.
failsafe = FAILSAFE_SHORT;
ch3_failsafe_timer = millis();
gcs_send_text_P(SEVERITY_LOW, PSTR("Failsafe - Short event on"));
switch(control_mode)
{
case MANUAL:
case STABILIZE:
case FLY_BY_WIRE_A: // middle position
case FLY_BY_WIRE_B: // middle position
set_mode(CIRCLE);
break;

case AUTO:
case GUIDED:
case LOITER:
if(g.short_fs_action == 1) {
set_mode(RTL);
}
break;

case CIRCLE:
case RTL:
default:
break;
}
gcs_send_text_fmt(PSTR("flight mode = %u"), (unsigned)control_mode);
}

Long Failsafe. events.pde line 35

static void failsafe_long_on_event()
{
// This is how to handle a long loss of control signal failsafe.
gcs_send_text_P(SEVERITY_LOW, PSTR("Failsafe - Long event on"));
APM_RC.clearOverride(); // If the GCS is locked up we allow control to revert to RC
switch(control_mode)
{
case MANUAL:
case STABILIZE:
case FLY_BY_WIRE_A: // middle position
case FLY_BY_WIRE_B: // middle position
case CIRCLE:
set_mode(RTL);
break;

case AUTO:
case GUIDED:
case LOITER:
if(g.long_fs_action == 1) {
set_mode(RTL);
}
break;

case RTL:
default:
break;
}
}

 

 

Тюнинг для вашей модели

С настройками PID по умолчанию ArduPlane сможет приемлемо летать с большинством авиамоделей. Но для того чтобы получить высококачественное пилотирование, достичь точного соблюдения заданного маршрута даже в условиях сильного ветра потребуется настроить коэффициенты соответствующие специфике вашей модели для автопилота.

Кратчайший путь сделать это - использовать экран PID настроек в программе "Mission Planner":

На экране сверху некоторые (но не все) из наиболее часто изменяемых параметров.

Вы заметите, что некоторые из этих параметров настраивают ПИД-регуляторы самолета.

Если вы не вполне знакомы с PID тюнингом, в первую очередь следует знать, что простейший ПИД-регулятор имеет только P составляющую (I и D равны нулю, а INT_MAX не используется, когда I равна нулю).

Коррекция (P) применяется пропорционально к текущей ошибке, в соответствии со значением "P". Значение 1 является своего рода реакцией 1:1, менее 1 представляет собой ослабление реакции, увеличение свыше 1 усиливает реакцию на ошибку, и 0 отключает использование коэффициента. I Представляет из себя коэффициент устраняющий постоянную составляющую ошибки, действующую длительное время. Например если речь о системе стабилизации рамы по крену, При наличии небольшого несоблюдения центра тяжести воздействия P может не хватать для его выдерживания (а на больших углах отклонений он может быть уже избыточен) то воздействие небольшой ошибки накапливаемое со скоростью I в величине ограниченной параметром IMAX способствует доведению системы до желаемых показателей, т.е. I в какой-то мере работает как амортизатор-доводчик. Составляющая D это уровень быстрого и короткого воздействия при возникновении ошибки (Например для компенсации инерции при разгоне при перемещении привода и нагруженной на него рулевой плоскости (или инерции разгона винта в мультикоптерах)

Более продвинутые параметры (которые в большинстве случаев не понадобятся) находятся на экране "Advanced Params". На этом экране вы также можете загружать и сохранять конфигурацию в файл (на компьютер), а также производить сравнение ваших текущих настроек с настройками сохраненными в файл ранее, отметить те из них которые вы хотите обновить на сохраненные и выполнить обновление. (после изменения параметров измененные, но не сохраненные параметры подсвечиваются. Изменения параметров передаются на подключенный автопилот, в тот момент вы нажмете кнопку "write paramerers" (запись параметров), многие влияют на текущий полет немедленно, и сохраняются в энергонезависимую память EEPROM.

Мы предлагаем несколько готовых конфигураций для типовых моделей самолетов здесь, Но если ваша модель отсутствует в приведенном списке, то применять эти настройки категорически нельзя! Здесь краткое руководство по процессу точной настройки:

Для того чтобы начать с нуля настройку на новой модели самолета:

1. Совершите полет в ручном режиме просто для того чтобы убедиться что все подключено правильно.

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

3. Попробуйте осуществить взлет в ручном режиме и на безопасной высоте проверьте полет в режиме стабилизации. увеличивайте SERVO_ROLL_P для увеличения парирования крена и SERVO_PITCH_P для увеличения парирования тангажа до тех пор пока их увеличение не приведет к возникновению осцилляций (раскачка) а затем немного снизьте эти коэффициенты (порядка 10-15%) - это будут оптимальные значения.

4. проверьте установку максимально допустимого уровня газа, в некоторых прошивках значение по умолчанию занижено до 70%, если ваш самолет использует полный газ, например во время взлета установите значение THR_MAX = 100. Не сделав этого самолет не сможет использовать полную мощность в автоматических режимах.

5. проверьте установку уровня газа необходимого для горизонтального полета со средней скоростью для модели Throttle cruise (TRIM_THROTTLE). Совершите полет в ручном режиме и посмотрите насколько отклонена ручка газа в горизонтальном полете вашего самолета с номинальной скоростью, и установите ее положение в качестве этого параметра, например 50 для ручки находящейся ровно посередине, или 60 для ручки установленной выше середины на один щелчок. Неверная установка этого параметра в меньшую сторону непрерывному снижению.

6. совершите полет в режиме Fly-By-Wire A (FBW-A), проверьте управление по крену и тангажу. Самолет должен удерживать высоту которую вы ему задали. ручки передатчика должны точно задавать углы крена и тангажа самолета. Из горизонтального полета отклоните ручку крена на пульте в сторону до упора, самолет должен быстро накрениться на угол 45 градусов и удерживать это положение. если самолет входит в раскачку следует уменьшить SERVO_ROLL_P если самолет медленно или неточно слушается управления этот параметр следует увеличить. Повторите эту же процедуру с регулировкой коэффициента по рулю высоты SERVO_PITCH_P.

7. Максимально допустимые углы управления задаются в параметрах LIM_ROLL_CD - максимальный крен, LIM_PITCH_MAX - максимальное кабрирование, LIM_PITCH_MIN максимальное пикирование. Единицы измерения этих параметров сотые доли градусов.

8. Далее, оставаясь в режиме Fly-By-Wire, попробуйте полностью отклонить ручку крена и посмотрите как самолет сохраняет высоту, если происходит просадка попробуйте увеличить PITCH_COMP за один раз рекомендуется добавлять порядка 0.10. Этой настройкой вы должны достичь нулевой потери высоты при максимальных кренах.

9. Теперь попробуйте режим RTL (возврат к точке запуска). Отлетите метров на 50-100 метров в сторону, на высоте порядка 30 метров и активируйте этот режим. По идее самолет должен вернуться в сторону точки взлета и встать в круг над вами если вы правильно настроили SERVO_ROLL_P на предыдущем шаге. Но если он летит несколько неточно увеличивайте NAV_ROLL_P порядка 25% за раз. Если дальнейшее увеличение приводит к движению самолета "волнами" или "змейкой" а нужной точности навигации не достигнуто следует уменьшить NAV_ROLL_P и попробовать немного добавить NAV_ROLL_I. Если все это не помогло увеличьте значение параметра XTRACK_GAIN.

10. Наконец, стоит отметить, что если вы значительно измените параметр отвечающий за крейсерскую скорость то вам может понадобиться перенастроить коэффициенты заново. Так что, если вы испытывали на 1/3 заслонки, но станете летать на полном газу, вы можете обнаружить, что настройки не оптимальны. Лучшие настройки должны соответствовать скорости на которой вы обычно будете эксплуатировать модель.





Поделиться с друзьями:


Дата добавления: 2016-11-12; Мы поможем в написании ваших работ!; просмотров: 1031 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студент всегда отчаянный романтик! Хоть может сдать на двойку романтизм. © Эдуард А. Асадов
==> читать все изречения...

2465 - | 2202 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.