Самодельный передатчик (часть 2)

Pav_13
Denn:

А то, что ручка продолжает двигаться, а машинка уже стоит - это нормально…

Не готов участвовать в дискуссии “математически” 😊… Но “логически” с вышеприведенным не согласен! Такого быть не должно - раз стик имеет возможность двигаться, значит машинка должна “выполнять его волю” пока СТИК не упрется! 😉
Иначе теряется ЛОГИКА управления…

Вся математика установки расходов, экспонент, триммеров, микшеров должна влиять только на ход машинок при ПОЛНОМ ходе стиков… (Имею Мнение Хрен Оспоришь 😁)

Denn

" …Не готов участвовать в дискуссии “математически” … Но “логически” с вышеприведенным не согласен! Такого быть не должно - раз стик имеет возможность двигаться, значит машинка должна “выполнять его волю” пока СТИК не упрется!
Иначе теряется ЛОГИКА управления…"

Поясню на примере: модель имеет элевоны, т.е. бесхвостка, где каждый элерон является и рулём высоты. Без микшеров всё понятно, но когда мы замикшируем руль высоты и элероны, то при одновременном отклонении ручек передатчика один элевон остаётся неподвижным, а другой отклоняется в 2 раза больше, чем при просто отклонении одной ручки. А такое большое отклонение элевона не нужно, поэтому ЕРА тут поможет.
“Вся математика установки расходов, экспонент, триммеров, микшеров должна влиять только на ход машинок при ПОЛНОМ ходе стиков…”
Да, так оно и есть,если двигать одним стиком, а когда двумя или больше - вот тут и срабатывают ограничения.

EagleB3

Да, EPA в этом случае обязан сработать как ограничитель.
И в любом случае - хоть для одного канала, хоть с микшированием. Это должен быть самый последний контроль перед выдачей переменной для формирования ШИМ.

Но не должно быть расчетов типа “EPA канала 1 установлен на 120%, а сам канал 1 100%, да микширование в него с канала 2 100%, значит 100 стика канала 1 это отклонение 60%, а еще 60% - это при 100% отклонении на канале 2 добавится.”

Misterio

подскажите какие крайние версии печатки и прошивки… хочу тоже заняться на досуге …

msv

раз стик имеет возможность двигаться, значит машинка должна “выполнять его волю” пока СТИК не упрется

Если бы мы жили в идеальном мире… 😃 Но увы… управляющие плоскости эффективны при отклонении не более некоторого угла, значит есть ограничения, в которые есть шанс упереться… Я не Пилот, а так… инструкторами не обучан, возможно все делаю не правильно… Но мне реально удобно иметь возможность отклонять упр. плоскости на мак угол при неполном ходе стика даже на классической схеме уравления без микшеров. Это удобно например при выполнении некоторых 3-д фигур, когда важнее скорость отклонения, а не точность.
Ну и с примером простешим элевонным микшером согласен. Для своего парк-джета активно пользуюсь и считаю весьма удобным иметь микшеры для разных режимов полета 60+60 (без ограничений), и 100+100(с ограниченим).
Вообщем пока только с EPA вопрос… Наверное все-таки он должен работать по принципу расходов- линейно масштабировать фунцию, в самом конце цепочки обработки (в этом отличие от расходов). Но это не такая тривиальная задача, как может показаться…

EagleB3

Вот-вот…

Pav_13:

машинка должна “выполнять его волю” пока СТИК не упрется!

А вот тут как раз вопрос: КАКОЙ стик упрется? Допустим, машинка канала 1, EPA 100%, подмикшированы каналы 2 (100%) и 4 (100%). И?
Теперь ее стик - это канал 1 или 1+2+4? По долям участия они абсолютно равноправны…
Теперь выражение “стик уперся” - это стик 1-го канала уперся или все три стика уперлись? Я упер стик первого канала - машинка должна отклониться на сколько процентов? На 100 или на 33?

Мое глубокое IMHO: мы должны сформировать функцию управления. И при этом не важно кто из стиков уперся, а кто нет. При данном примере настроек: уперся 1-й канал (остальные 2 в нулях) - на машинке 100%. Уперся 2-й (остальные 2 в нулях) - на машинке 100%. Отклонили 1-й и 4-й на 60% каждый - на машинку посчиталось по нашей функции 120%, но перед самой отправкой обрезалось до 100% (установленное значение EPA).

EagleB3
Misterio:

подскажите какие крайние версии печатки и прошивки… хочу тоже заняться на досуге …

И-и-и, батенька… Печатка “канонизированная” всего одна - “Coder v.2”. Но она уже не соответствует последней версии прошивки (последней я считаю от MSV, версия 1.8.а ). После нее было штуки так три с некоторыми модификациями.

А вопрос о последней версии упирается во встречный вопрос: “под какой дисплей”?

dollop

Я немного переделывал “канонизированную” печатку Coder v.2 под прошивку msv_1.8. Учтены все изменения. Вполне успешно работает. Выкладываю в sprintlayout.

Coder_v2_msv_1.8.zip

EagleB3

А может кто-нибудь подсказать: что за потенциометры используются в Sanva VG400?

По всему судя - ширпотреб; перерыл все свои запасы - не нашел ничего похожего.
Мой бесконтактный магнитный датчик угла на AS5043 уже готов покинуть самодельную “эвалуэйшн боард” и переехать в корпус. Но рука не поднимается кромсать живой резистор из живого кодера, не имея под руками замены…

Misterio
EagleB3:

И-и-и, батенька… Печатка “канонизированная” всего одна - “Coder v.2”. Но она уже не соответствует последней версии прошивки (последней я считаю от MSV, версия 1.8.а ). После нее было штуки так три с некоторыми модификациями.

А вопрос о последней версии упирается во встречный вопрос: “под какой дисплей”?

тут я смотрю делают на базе 3310… можно сделать на нём, но есть под руками два дисплея Siemens M35 и SL45 есть возможеость зацепить когонибуть из них? Или SE K750i 😃) в расход пустить 😃)

Aleksey_Gorelikov

Конечно возможность есть! Подключайте, да переписывайте граф. библиотеку под свои дисплеи. К750 - не стоит. ОЗУ не хватит, или слишком много переписывать придется.

jonison
Misterio:

тут я смотрю делают на базе 3310… можно сделать на нём, но есть под руками два дисплея Siemens M35 и SL45 есть возможеость зацепить когонибуть из них? Или SE K750i 😃) в расход пустить 😃)

можно и цветной прикрутить тока есть один минус на них ничего невидно на солнце
я пробовал на семене м55
а STN дисплеи очень дорого 😁

Misterio

нет,спасибо 😃 писальщик програм с меня очень плохой… если делают на 3310 то на ней и буду делать.

roma9112

А подскажите кто нибудь, я уже совсем запутался, про функцию двойных расходов. Когда их включаешь, то угол отклонения серв уменьшается пропорционально или увеличивается, и для каких ситуаций используется сей режим?

Pav_13
EagleB3:

…машинка канала 1, EPA 100%, подмикшированы каналы 2 (100%) и 4 (100%)…

Выше один из разработчиков кодера признался, что он “не Пилот”… Я тоже не Пилот, летаю без экстрима на простых моделях, поэтому совсем не пользуюсь микшерами… Воможно, отсюда мое недопонимание, что раньше должно упереться - машинка или стик 😛… Возможно поэтому я не понял и Вашего примера - зачем нужно 100% микширования одного канала (стика) на другой? Ведь это, практически, замена одного органа управления другим 😃… А привязка органов управления к управляющим поверхностям должна быть вполне определенной, иначе как управлять?!
Понятно, что настоящие Пилоты сюда вряд ли заглядывают, но, может кто из пользующихся микшерами скажет, какой реально процент микширования приходилось вводить?
Я, конечно, попытаюсь напрячь остатки серого вещества по озвученной проблеме, но пока остаюсь при своем ИМХО - машинка не должна останавливаться, если стик, влияющий на нее, еще имеет возможность двигаться!

EagleB3
Pav_13:

Возможно поэтому я не понял и Вашего примера - зачем нужно 100% микширования одного канала (стика) на другой?

Не важно ни разу. Мы говорим про ее величество Функцию… Она может быть любой, а кодер при любой функции должен работать правильно. Была фраза “машинка должна “выполнять его волю” пока СТИК не упрется” - а серва может управляться более более чем от одного стика. Как быть если один стик уперся, а другой еще нет?

Rакой реально процент микширования приходилось вводить?

Ну ладно, пусть микширование 100% + 50 %. EPA=140%. Первый стик уперся. Второй еще не уперся, но уже влил свои 40%. Серва пришла на EPA. Формально второму стику “до упора” осталось еще 10%. Что должна делать серва?
А можно навыворот. Второй стик уперся и дал свои +50%. Второй доехал до 90%. Он еще не уперся. А машинка типа все.

Если функция будет правильно работать в общем случае - и тогда никто не заморковится ни при каком частном случае. Ни при 100%+120%+100%, ни при 30%+140%-150%. Какой бы стик куда не уперся. При любом EPA.
А если закладываться в “больше ХХ% никому не потребуется” - тогда может реально и весьма неожиданно пострадать тот, кому все же потребуется.

В общем, еще раз мое IMHO: машинку не должно волновать, что в сумме она может получить 185%. Есть две ее EPA, которые задают зону работы машинки. Эта зона соответствует 200 тиков ее стика (как +100 и -100 от середины). Кто примикшировался, сколько примишкировалось - пофиг. Доехала до EPA с участием микшеров - и все. Пусть даже еще 2/3 ее родного стика осталось.
…Причем тики в одну сторону могут быть длиннее, чем тики в другую сторону. Если EPA стоит +140 - 80 (для простоты считаем, что это в точности равно градусам отклонения качалки), то тики в одну сторону это это 1,4 градуса качалки, а в другую - всего 0,8 градуса качалки.

roma9112:

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

Он не уменьшается и не увеличивается. Он вообще может не изменяться. Это просто отдельный режим, который включается выключателем DoubleRates.

Допустим , ты летаешь “блинчиком”, и во время такого полета тебе вполне достаточно иметь отклонение руля высоты ±20 градусов. Но вот приходит время повисеть и тебе необходимо на это время увеличить отклонение РВ до +60-50 градусов (заметь, утроить расход в одну сторону и удвасполовинить в другую). Ну так ты программируешь одно положение переключателя DoubleRates на расходы +60-50, а другое на ±20. Щелкнул тумблером - расходы поменялись. А множитель “два” вообще не при чем.

Если у тебя и в двойных, и в одинарных расходах стоят одинаковые настройки (скажем, +100-80), то сколько тумблером не щелкай - ничего не изменится вообще. Уж я то знаю. Я чуть не месяц тумблером щелкал, не понимая почему у меня положение рулей не меняется. 😊

В тутошнем самодельном кодере предусмотрены раздельные переключатели DoubleRates для каждого из каналов (РВ, РН, Элероны). А на заводских аппах попроще - один-единственный “на все”.
И уж, до кучи. На тутошнем кодере есть еще 3 режима пилотирования (Normal/Landing/Pilotage). Для каждого можно назначить расходы (двойные/индивидуальные) отдельно. Итого для одной модели получаем 6 (=3 режима*2 вида расходов) вариантов настройки расходов.

sslobodyan
Pav_13:

машинка не должна останавливаться, если стик, влияющий на нее, еще имеет возможность двигаться!

Это проверяется и настраивается процентами микширования еще на земле. Задача ЕРА - исключить проблемы механики, т.е. не дать качалке либо управляющей поверхности упереться во что-то. Если при проверке на земле вы видите, что стик еще имеет ход, а серва остановилась на ЕРА, то изменяйте проценты микширования.
По-простому - ЕРА это последний ограничитель хода сервы.

Pav_13

Для sslobodyan:

Немного не понял, зачем Вы мне все это объясняли? Рассказанное Вами очевидно, а речь ведется о проблеме “с точность до наоборот” 😉
Вы ведь предлагаете ограничивать ход машинки на ПОЛНЫЙ ход стика! Что вполне разумно и повышает точность управления… Здесь же обсуждается ситуация сознательного “загрубления” стиков - ибо, если ПРОГРАММНО ограничить ход машинки, когда ход стика еще не исчерпан, то это будет равносильно уменьшению разрядности АЦП и ухудшению точности управления… И каким бы “величеством” ни была та “Функция”, которая так поступает - мне кажется, она не права 😁!

DD

Вот мне тоже кажется что ЕРА должны конечные точки сервы выстанавливать, дальше которых серва при любом случае уходить не должна. Просто в текущей прошивке, как мне ход машинки на элероны например с помощью ЕРА ограничить, если я микшеров ни каких не использую, то просто у меня элероны будут двигаться только при меньшем угле отклонения стика. Вот еще какая то глупая мысль есть как микширование сделать: как в магнитофоне баланс громкости по каналам регулируется, выходная громкость всегда одна и таже, а вот каждый канал учавствует в этом по своему. Только у нас наоборот получается

msv

По-простому - ЕРА это последний ограничитель хода сервы.

Собсвенно в анотации к 1.8 я так и объяснял смысл EPA заложенный в этой версии, сделав разделение настроек на логический и физический уровень. Но уже на этапе реализации этой функции, задумывался, что если сделать EPA просто ограничителем, при конструировании микшера пользователю необходимо учитывать и допустимый ход, определяемый EPA. Т.е например, если я хочу сделать элевоны без ограничений, то при EPA<100 процентов нужно микшер ставить не 60+60 а меньше. По хорошему (и по изначальной задумке) конструируя логический канал, пользователь не должен задумываться, какой EPA он в конце-концов поставит, а значит EPA должен не просто обрезать, а масштабировать функцию на своем интервале. Проблема в том, что для этого надо знать значения конечных точек функции и ноля. Тупо обсчитывать для каждого фрейма вместо одного- три значения функции, может производительности не хватить. Делать это только после выбора модели, испугался что не будут учтены триммера, переключения режимов полета и может еще чего… Короче поленился и сделал на первое время просто резалку… 😃

если ПРОГРАММНО ограничить ход машинки, когда ход стика еще не исчерпан, то это будет равносильно уменьшению разрядности АЦП и ухудшению точности управления…

Ээээ… Ограничивать ход машинки без микширования, похоже нужно только мне. Давайте говорить все-таки о микшировании. Хуже что при программном (EPA<100) ограничении возможности машинки (точность, мощность) будут недоиспользованы… Это долго был мой аргумент в личке j нецелесообразности в принципе и вредности этой фичи… 😃

EagleB3

КМК, для стика своего канала и ТОЛЬКО для стика своего канала установленные границы EPA именно должны задавать масштабирование. Грех, поставив EPA +30-20 (на длинной качалке, например) получить мизерный рабочий угол хода джойстика.

А вот для функции в целом (например, когда в посчитанное значение добавилось микширование с других каналов) EPA должно работать как ограничитель.