MultiWii

Владимир#
Art_Nesterov:

ПС… но вроде, как в мультивии в прошивке можно прописать, что в случае минимальной ширины импульса в канале газа, контроллер перейдет в ФС.

Вроде как вот так

Failsafe check pulses on four main control channels CH1-CH4. If the pulse is missing or bellow 985us (on any of these four channels)

Вообще, уже быстрее собрать схему на коленке и проверить.

Art_Nesterov
Владимир#:

Вообще, уже быстрее собрать схему на коленке и проверить.

200%! Вообще не понятно, что тут спрашивать и теоретизировать. В описании config.h все написано, есть еще мануалы… бери и делай. Но видимо писать вопросы и читать ответы - вот истинное хобби 😃!
оффтоп

Saradon
Art_Nesterov:

Просто в более менее приличных приемниках при потере связи, на выходе сигналы “замораживаются”, как бы… то есть воспроизводят последние значения.

Вот этого я не понимаю.
Давлю я газ и вперёд, коптер стремительно несётся вперёд и вверх, удаляясь от пилота, в какой-то момент теряет пульт, но сигналы замораживаются и коптер продолжает уносится вперёд и вверх, сводя к нулю шансы на спасение аппарата, вместо того, чтобы сбросить все значения в нули и просто относительно зависнуть в точке.
У самолётов немного по-другому, но тоже не вижу никакого смысла замораживать сигналы.

Владимир#:

Вообще, уже быстрее собрать схему на коленке и проверить.

Так получилось, что коптер и пульт в разных концах города сейчас 😃
Да и коптер временно не летучий.

Art_Nesterov:

200%! Вообще не понятно, что тут спрашивать и теоретизировать. В описании config.h все написано, есть еще мануалы… бери и делай. Но видимо писать вопросы и читать ответы - вот истинное хобби !

К большому сожалению, я слаб в программировании… Хотя нет, не слаб. Полный ноль.
Потому и прошу помощи более опытных товарищей.
Но обещаю, что выучу хотя-бы основы Arduino.

Владимир#
Saradon:

Вот этого я не понимаю.

Смысл в том что если хотите правильный набор функций, приобретайте более правильную аппаратуру. Можно еще типа такой шляпы приобрести.

Saradon
Владимир#:

Смысл в том что если хотите правильный набор функций, приобретайте более правильную аппаратуру.

Да нет, я просто не понимаю, зачем нужно замораживать сигналы… Какой смысл? Хорошая аппаратура - вопрос будущего.

Art_Nesterov
Saradon:

Вот этого я не понимаю.
Давлю я газ и вперёд, коптер стремительно несётся вперёд и вверх, удаляясь от пилота, в какой-то момент теряет пульт, но сигналы замораживаются и коптер продолжает уносится вперёд и вверх, сводя к нулю шансы на спасение аппарата, вместо того, чтобы сбросить все значения в нули и просто относительно зависнуть в точке.
У самолётов немного по-другому, но тоже не вижу никакого смысла замораживать сигналы.

Ну так не настраивайте вообще ничего, и даже не взлетите. И коптер будет целый!
Если сигналы не заморозятся, а сбросятся на минимальные значения, и коптер грохнется… Вам так легче будет?

Все нужно настраивать, тогда есть вероятность, что ваша модель будет нормально летать.
И в принципе с не настроенным коптером летать стремно.

Saradon:

Какой смысл?

Ну как “какой смысл”? Если сигналы не заморозить, отключатся все полетные режимы, включится разворот по яву, по питчу, и по ролу. газ упадет в ноль… Попытайтесь включить логику…😃

Saradon
Art_Nesterov:

Если сигналы не заморозятся, а сбросятся на минимальные значения, и коптер грохнется… Вам так легче будет?

Ну в целом, да. Коптер, хоть и пострадавший, но останется у меня, вместо ухода в неизвестном направлении.
Кроме того, при нулевых значениях газ встаёт на 50%, а не на ноль.
Редкий коптер при этом будет набирать высоту. Скорее, или повиснет, или снижаться будет потихоньку.

Art_Nesterov:

включится разворот по яву, по питчу, и по ролу.

Это с чего вдруг?

Art_Nesterov:

газ упадет в ноль…

Дык не в ноль, а на 50%

Art_Nesterov:

Попытайтесь включить логику…

Art_Nesterov

Saradon, учите матчасть! Средние положения стиков соответствуют 1500 мс, а минимальные сигналы соответствуют примерно 900, максимальные 1900-2000. 900 мс, это и есть крайние значения во всех каналах. И если канал газа не заморозить, он тоже упадет до 900 (примерно) что соответствует “0”. И кто вам сказал, что коптер при этом не грохнется? Даже 50% газа не гарантирует снижения или взлета.

Saradon

Ну да, всё так. Только “нулю” - среднему положению стиков, соответсвует 1500. 900 и 2000 - это крайние, не нулевые положения стиков.
Может я и не прав, конечно, может на более продвинутой аппаратуре всё по-другому, но на моей дешёвке именно так.
И при отсутствии пульта все значения равны 1500. Т.е. рысканье, крен, тангаж - нулевые, газ - 50%.
Но это только при включении коптера без пульта. Возможно, что при потере пульта на ходу параметры действительно заморозятся. И сие печаль.

Art_Nesterov
Saradon:

Ну да, всё так. Только “нулю” - среднему положению стиков, соответсвует 1500. 900 и 2000 - это крайние, не нулевые положения стиков.

Писатель вы хороший, много пишите! Ну очень прошу, попробуйте почитать, то что вам пишут… может прозрение наступит! Уже разжевываем, разжевываем…

Saradon
/********                          Failsafe settings                 ********************/
    /* Failsafe check pulses on four main control channels CH1-CH4. If the pulse is missing or bellow 985us (on any of these four channels)
       the failsafe procedure is initiated. After FAILSAFE_DELAY time from failsafe detection, the level mode is on (if ACC is avaliable),
       PITCH, ROLL and YAW is centered and THROTTLE is set to FAILSAFE_THROTTLE value. You must set this value to descending about 1m/s or so
       for best results. This value is depended from your configuration, AUW and some other params.  Next, after FAILSAFE_OFF_DELAY the copter is disarmed,
       and motors is stopped. If RC pulse coming back before reached FAILSAFE_OFF_DELAY time, after the small quard time the RC control is returned to normal. */
    //#define FAILSAFE                                // uncomment  to activate the failsafe function
    #define FAILSAFE_DELAY     10                     // Guard time for failsafe activation after signal lost. 1 step = 0.1sec - 1sec in example
    #define FAILSAFE_OFF_DELAY 200                    // Time for Landing before motors stop in 0.1sec. 1 step = 0.1sec - 20sec in example
    #define FAILSAFE_THROTTLE  (MINTHROTTLE + 200)    // (*) Throttle level used for landing - may be relative to MINTHROTTLE - as in this case

    #define FAILSAFE_DETECT_TRESHOLD  985

Почти то, что надо.
При отсутствии сигналов по каналам 1-4, или при значении газа меньше 985 в течении 1 секунды, автомат сбрасывает крен, тангаж, рысканье в ноль и выставляет минимальный газ + 200 на 20 секунд, после чего глушит движки.
Если за эти 20 секунд управление возвращается, то программа прерывается и продолжается штатный полёт.
Осталось только сделать так, чтобы вместо программы включения снижения каналу 6 присваивалось значение 2000 - там у меня активируется GPS_HOME.

Art_Nesterov:

Писатель вы хороший, много пишите! Ну очень прошу, попробуйте почитать, то что вам пишут… может прозрение наступит! Уже разжевываем, разжевываем…

Дык, вроде и картинку приложил с положением каналов при отсутствии пульта…
Чему-же верить? Тому, что пишут, или своим глазам?

Владимир#
Saradon:

И при отсутствии пульта все значения равны 1500. Т.е. рысканье, крен, тангаж - нулевые, газ - 50%.
Но это только при включении коптера без пульта.

При потере сигнала картина скорее всего будет другая.
Не понятно, у вас нет как таковой аппаратуры? В чем проблема включить/выключить пульт и понять что происходит?

Saradon
Владимир#:

Не понятно, у вас нет как таковой аппаратуры? В чем проблема включить/выключить пульт и понять что происходит?

Выше написал - пульт сейчас на другом конце города 😃
И, да, припоминаю, что положение каналов при потере сохраняется…

Владимир#
Saradon:

Выше написал - пульт сейчас на другом конце города
И, да, припоминаю, что положение каналов при потере сохраняется…

Думаю нужно дождаться пульта. Есть ещё вариант ФС. Когда газ всеж таки программируется или сбрасывается именно в ноль. А так рассуждать можно вечно.

Saradon

Не, ФС точно нет.
Ниже картинка программки пульта.
Думаю, проще и логичнее всего привязаться к активации ФС внутри самого Мультивия. По отсутствию 1-4 каналов.
Только вот как понимать фразу “If the pulse is missing” - если данные по каналам отсутствуют, или не изменяются?
Ведь при замораживании показателей при потере сигнала данные-то, фактически, есть…
С другой стороны, сильно подозреваю, что показатели замораживает не сам приёмник, а непосредственно сам Мультвий, а с приёмника, всё-же, так и идут нулевые данные. Хм. Надо на самолёте проверить…
Стоп, помнится, как-то я вырубил пульт и самолёт врубил газ на 50%, значит, всё-же, сам передатчик действительно выставляет все каналы в 1500, а “замораживание”, это функция полётного контроллера, а не аппаратуры…

Saradon

Привёз пульт.
Да, каналы замораживает не Мультвий, как я думал, а сам приёмник.
И на коптере, и на самолёте после “потери” пульта каналы остаются именно в том положении, в котором были в момент потери.
Сие печаль.
Ладно, буду пытаться заставить Мультивий при потере сигнала активировать не снижение, а AUX2.
Факультативно.
Вычитывал сегодня про то, как научить Мультивий читать напряжение батареи.
Несколько вопросов.
Не будет-ли делитель напряжения из двух резисторов способствовать усиленному разряду батареи, т.к. по сути образует замкнутую цепь с нагрузкой?
Как определить этот самый пресловутый пин А1 ( у меня пины не подписаны).
Как откалибровать напряжение в GUI и в OSD? Читал, что в Мегапирате надо просто измерить реальное напряжение и задать его в GUI, тогда софт будет пропорционально его пересчитывать. А как с этим в MultiwiiConfig?
Можно-ли в качестве датчика напряжения\тока использовать такое вот изделие? Или там ток мал? Или оно вообще не для этого?

Art_Nesterov
Saradon:

Да, каналы замораживает не Мультвий, как я думал, а сам приёмник.

Ай-Ай-яй… что вы говорите?.. поверить не возможно…

Saradon:

Вычитывал сегодня про то, как научить Мультивий читать напряжение батареи.

А чего же до конца не дочитали? Наверно с надеждой очередную ересь тут доказывать?
По этой теме столько инфы, столько перетирали… ну научитесь вы читать…

Saradon:

Не будет-ли делитель напряжения из двух резисторов способствовать усиленному разряду батареи, т.к. по сути образует замкнутую цепь с нагрузкой?

Вы про закон Ома слышали? Если нет, то сделайте тупо как написано в мануале.

Saradon:

Можно-ли в качестве датчика напряжения\тока использовать такое вот изделие? Или там ток мал? Или оно вообще не для этого?

Нет. нельзя! А чем вам датчики Алегро не угодили?

SPLESH2009
Saradon:

Или там ток мал?

Да там всего 3А ток и этот девайс просто сделает пшик когда через него пойдёт ток на порядок больше 😉

Saradon
Art_Nesterov:

Ай-Ай-яй… что вы говорите?.. поверить не возможно…

А я где-то утверждал обратное?

Art_Nesterov:

А чего же до конца не дочитали? Наверно с надеждой очередную ересь тут доказывать?
По этой теме столько инфы, столько перетирали… ну научитесь вы читать…

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

Art_Nesterov:

Вы про закон Ома слышали? Если нет, то сделайте тупо как написано в мануале.

Честно, физику в тот день прогулял. Я-бы с удовольствием сделал по мануалу, только вот мануала как такового нету. Инфу приходится по крупицам надёргивать.

Art_Nesterov:

Нет. нельзя! А чем вам датчики Алегро не угодили?

Не увидел по ссылке датчика…

SPLESH2009:

Да там всего 3А ток и этот девайс просто сделает пшик когда через него пойдёт ток на порядок больше

Я честно говоря, и не надеялся. Так, на всякий случай спросил.

Art_Nesterov
Saradon:

сильно подозреваю, что показатели замораживает не сам приёмник, а непосредственно сам Мультвий, а с приёмника, всё-же, так и идут нулевые данные.

Ваша фраза?

Saradon:

Не увидел по ссылке датчика…

Это сайт производителя, выберите себе датчик соответствующий вашему току и найдите на али или ебее.
А это кусочек из прошивки мультивия, вкладка config.h :

/**** battery voltage monitoring ****/
/********************************************************************/
/* for V BAT monitoring
after the resistor divisor we should get [0V;5V]->[0;1023] on analog V_BATPIN
with R1=33k and R2=51k
vbat = [0;1023]*16/VBATSCALE

Читать не царское дело, правда?

Saradon
Art_Nesterov:

Ваша фраза?

Утверждение от предположения не можете отличить?

Art_Nesterov:

А это кусочек из прошивки мультивия, вкладка config.h

Спасибо, постараюсь разобраться.

Art_Nesterov:

Читать не царское дело, правда?

А где я должен был это прочитать?
Ни одного “мануала”, где-бы это было написано я не встречал.