Автопилот Arduplane - открытое ПО
Ну раз GPS есть, значит и скорость есть.
И з вашего файла:
ALT_HOLD_RTL,10000
Да, само собой это высота кружения над стартом.Но я имел ввиду несколько другое. при включении APM, он запоминает значение с барометра. И по этому “на столе” он считает что высота 0 и не будет включать мотор в RTL.
А где прописана высота срабатывания RTL? Нигде! Картинку с вкладки failsafe в студию! Слева газ на полную, справа режим RTL. Если у вас газ справа на столе выключается, а в воздухе все нормально, значит мне стоит ковырять настройки.
А где прописана высота срабатывания RTL? Нигде!
Ни где не прописана.
Картинку с вкладки failsafe в студию!
У меня нет картинки. Самолет в машине и разбирать нет желания. На земле (на столе) в режиме RTL газ не включается. В полете отлично возвращается, строго выдерживая заданную скорость. Не верите ? Право ваше.
Черт, пришлось ковыряться.
Attitude.pde:
/* We want to supress the throttle if we think we are on the ground and in an autopilot controlled throttle mode.
Disable throttle if following conditions are met:
* 1 - We are in Circle mode (which we use for short term failsafe), or in FBW-B or higher
* AND
* 2 - Our reported altitude is within 10 meters of the home altitude.
* 3 - Our reported speed is under 5 meters per second.
* 4 - We are not performing a takeoff in Auto mode or takeoff speed/accel not yet reached
* OR
* 5 - Home location is not set
*/
static bool suppress_throttle(void)
{
.....
}
Там же, ниже:
if (suppress_throttle()) {
// throttle is suppressed in auto mode
channel_throttle->servo_out = 0;
вот и имеем RTL>FBW-B && altitude < 10 метров && GPS Скорость < 5 мс && RTL != takeoff в auto
Еще, очень может быть, на закладке “Калибровка радио” поставить галочку реверс на канале газа. Как раз в ручных режимах управляться будет, а в автоматических вместо дачи газа будет уборка
Но это все мои догадки, а изучение значений всех параметров никто не отменял (ИМХО)
Уважаемый vhod00
Вот в этом комментарии кроется ответ на вашу проблему. Прочитайте внимательно ,Не спешите и правильно откалибруйте канал газа
Ни где не прописана.
У меня нет картинки. Самолет в машине и разбирать нет желания. На земле (на столе) в режиме RTL газ не включается. В полете отлично возвращается, строго выдерживая заданную скорость. Не верите ? Право ваше.
Черт, пришлось ковыряться.
Attitude.pde:/* We want to supress the throttle if we think we are on the ground and in an autopilot controlled throttle mode. Disable throttle if following conditions are met: * 1 - We are in Circle mode (which we use for short term failsafe), or in FBW-B or higher * AND * 2 - Our reported altitude is within 10 meters of the home altitude. * 3 - Our reported speed is under 5 meters per second. * 4 - We are not performing a takeoff in Auto mode or takeoff speed/accel not yet reached * OR * 5 - Home location is not set */ static bool suppress_throttle(void) { ..... }
Там же, ниже:
if (suppress_throttle()) { // throttle is suppressed in auto mode channel_throttle->servo_out = 0;
вот и имеем RTL>FBW-B && altitude < 10 метров && GPS Скорость < 5 мс && RTL != takeoff в auto
Уважаемый X3_Shim, я уже упоминал, что очень слабо разбираюсь в параметрах, а в этих логах и того хуже. Объясните, пожалуйста, что мы “имеем” по-простому.
Уважаемый vhod00
Вот в этом комментарии кроется ответ на вашу проблему. Прочитайте внимательно ,Не спешите и правильно откалибруйте канал газа
Я пробовал сделать реверс на канал газа - результат получился своеобразный. На выходе не шевелится ни один канал вообще, а газ мертво стоит почти на максимуме.
эээм, у меня у одного режим РТЛ работает адекватно?
Я его около земли прям включал, но самолет уже летал достаточно долго до этого, он набирает высоту спиралью или по прямой, зависимость я пока не увидел,выходит на целевую высоту разгоняется до настроенных 22 м/с и начинает кружить над базой, постоянно управляя мотором, и выключая его.
На земле двигатель не запускает, ни в одном из режимов, только по команде с РУ.
Датчик воздушной скорости пока не подключен…
Сегодня не удалось полетать: ветер и дождь.
Объясните, пожалуйста, что мы “имеем” по-простому.
Это не лог, это комментарий в исходном коде прошивки:
/* We want to supress the throttle if we think we are on the ground and in an autopilot controlled throttle mode.
Disable throttle if following conditions are met:
* 1 - We are in Circle mode (which we use for short term failsafe), or in FBW-B or higher
* AND
* 2 - Our reported altitude is within 10 meters of the home altitude.
* 3 - Our reported speed is under 5 meters per second.
* 4 - We are not performing a takeoff in Auto mode or takeoff speed/accel not yet reached
* OR
* 5 - Home location is not set
*/
Это означает: “мы хотим выключить газ, если нам кажется что мы на земле, но включен режим который может управлять газом”. И подробнее список условий, при выполнении которых мотор не включится:
если у нас режим выше FBWB (например RTL выше FBWB ) и одновременно с этим высота отличается меньше чем на 10 метров от начальной и одновременно с этим скорость меньше 5 мс и мы в это время НЕ в режиме автовзлета, то ставим выход газа принудительно в 0.
у меня у одного режим РТЛ работает адекватно?
Скорее только у одного он работает неадекватно.
Прочитайте внимательно ,Не спешите и правильно откалибруйте канал газа
цитирую “Маркса”:
code.google.com/p/…/APM2ReversingTop
нажмите калибровка и переместите ручки управления по всем крайним положениям. При этом отклонения индикаторов радиоканалов должно соответствовать направлению перемещения ручек, за исключением канала тангажа (руля высоты) руль высоты от себя - индикатор канала - растет вверх, руль на себя индикатор вниз. В случае несоответствия следует установить флажок “REV” в нужном канале. незабываем переключить на все положения переключатель режима. Перед завершением калибровки переместите газ в нижнюю позицию, а остальные ручки в среднюю, после чего следует нажать кнопку “завершить” (complete) Процедура калибровки автопилота требуется для того чтобы направления и уровни воздействия автопилота на приводы в автоматических режимах соответствовали их значениям в ручном режиме.
цитирую “Маркса”:
code.google.com/p/…/APM2ReversingTop
нажмите калибровка и переместите ручки управления по всем крайним положениям. При этом отклонения индикаторов радиоканалов должно соответствовать направлению перемещения ручек, за исключением канала тангажа (руля высоты) руль высоты от себя - индикатор канала - растет вверх, руль на себя индикатор вниз. В случае несоответствия следует установить флажок “REV” в нужном канале. незабываем переключить на все положения переключатель режима. Перед завершением калибровки переместите газ в нижнюю позицию, а остальные ручки в среднюю, после чего следует нажать кнопку “завершить” (complete) Процедура калибровки автопилота требуется для того чтобы направления и уровни воздействия автопилота на приводы в автоматических режимах соответствовали их значениям в ручном режиме.
У меня во всех автоматических режимах газ ‘автоматически’ вырубается и на ру не реагирует (на столе).
У меня во всех автоматических режимах газ ‘автоматически’ вырубается и на ру не реагирует (на столе).
У всех так. Я даже выше объяснил почему так происходит, что это задумка такая у разработчиков. Очень здравая причем задумка. Что бы никому пальцы не по отрубало “на столе”.
Я пробовал сделать реверс на канал газа - результат получился своеобразный.
так и не получилось? Давайте подробнее:
что у вас за аппаратура? каналы 1-?, 2-?, 3-?
как подключен приемник к АПМ: 1 в 1?, 2 в 2?, 3 в 3? или 1 в 3?, 2 в 1?, 3 в 2? или по PPM?
какие значения в листе параметров: RCMAP_ROLL? RCMAP_PITCH? RCMAP_TROTTLE?
при калибровке канала газа на вкладке калибровки радио индекс канала газа двигается в напрвлении движения стика на аппе???
какие значения в листе параметров: RCMAP_ROLL? RCMAP_PITCH? RCMAP_TROTTLE?
За него отвечу
RCMAP_PITCH,2
RCMAP_ROLL,1
RCMAP_THROTTLE,3
RCMAP_YAW,4
За него отвечу
вроде Виктор пробовал их переназначать, лучше уточнить
так и не получилось? Давайте подробнее:
Нет смысла. У него самолет летает, в стабилайзе выравнивается. Значит в принципе все верно настроено (в калибровке аппы). Реверс газа он проверял. Не в калибровке дело, а вот в этом:
TECS_CLMB_MAX,0
TECS_SINK_MAX,0
TECS_SINK_MIN,0
TECS_TIME_CONST,0
так и не получилось? Давайте подробнее:
что у вас за аппаратура? каналы 1-?, 2-?, 3-?
как подключен приемник к АПМ: 1 в 1?, 2 в 2?, 3 в 3? или 1 в 3?, 2 в 1?, 3 в 2? или по PPM?
какие значения в листе параметров: RCMAP_ROLL? RCMAP_PITCH? RCMAP_TROTTLE?
при калибровке канала газа на вкладке калибровки радио индекс канала газа двигается в напрвлении движения стика на аппе???
Подключены каналы 123 и 5. 123 в соответствующие на апм, а 5 в 8 на апм. Газ двигается при настройке правильно.
в стабилайзе выравнивается
значит питч и ролл в норме
Реверс газа он проверял
только на столе, на столе он не газует
только на столе, на столе он не газует
Так вот же он писал “Я пробовал сделать реверс на канал газа - результат получился своеобразный. На выходе не шевелится ни один канал вообще, а газ мертво стоит почти на максимуме.”
Раз “на столе” после реверса газ стоит на максимуме (на выходе), значит реверс был не нужен для газа 😃
Нет смысла. У него самолет летает, в стабилайзе выравнивается. Значит в принципе все верно настроено (в калибровке аппы). Реверс газа он проверял. Не в калибровке дело, а вот в этом:
TECS_CLMB_MAX,0
TECS_SINK_MAX,0
TECS_SINK_MIN,0
TECS_TIME_CONST,0
За что отвечают эти параметры?
я бы не парился а перепрошился и заново откалибровался. ВНИМАТЕЛЬНО
За что отвечают эти параметры?
Цитирую: “TECS stands for Total Energy Control System and for Arduplane refers to a new control algorithm that coordinates throttle and pitch angle demands to control the aircraft’s height and airspeed.”
Почитать подробнее можно здесь: …ardupilot.com/…/tecs-total-energy-control-system-…
я бы не парился а перепрошился и заново откалибровался. ВНИМАТЕЛЬНО
Вы не поверите 😃 rcopen.com/forum/f90/topic132831/4833
Только я бы еще после прошивки сделал бы reset в терминале, ну так, во избежание недоразумений.
UPD:
Я вот детальнее в коде посмотрел про TECS_TIME_CONST. Она может быть от 3 до 10. Если там стоит 0, то в коде явно видно, что получается деление на 0 при вычислении коэффициента участвующего в управлении газом.
Сделаю tecs как по умолчанию были и попробую полетать - вдруг получится
Вы не поверите
Это уже третий раз советуем? но мы не привыкли отступать😁
вдруг получится
а вдруг другие параметры косячные???😁😁😁там их мнооого, можно долго перебирать