Проект "Безколлекторная Лама4"

Genosse
HikeR:

в смысле температура моторов меньше чем акков?
просто я с большим подозрение отношусь ко всем постам на тему “холодные моторы” 😉

не верится, но факт… “Вложи перста свои”… (с) 😃
а регули пенитиум-10… микшер от ГВС… (правда, лётаю на А-73) 😃

HikeR

дык может микшер A-73 что-то свое привносит, типа полное отрубание сигнала на регули при положении ручки газа близко к нулю? автор ведь алгоритм работы похоже и на страшном суде не выдаст ;)
а с GWS микшером нормально проходит финт с калибровкой. заказывал, не себе правда, но попробовать успел. вообще, про микшеры я уже писал, правда несколько путанно. если вкратце, то дело обстоит так.

предположим, имеем идеальный микшер 1:1 и передатчик, который на канале газа дает точный диапазон 1.0…2.0 мкс. регули настроены без микшера и считают сигнал 1.0мкс полным газом, а 2.0мкс - его отсутсвием.

тогда в положении “RUD - середина, THR - нуль” правильно подключенный микшер на оба мотора даст 2.0мкс ровно, все хорошо, моторы стоят на месте.
“RUD - середина, THR - полный газ” на моторы пойдет 1.0мкс, моторы реагируют максимальными оборотами.

однако, если THR в нуле, а RUD занимает одно из крайних положений, то один мотор
получит 1.5мкс (полгаза), а второй - 2.3мкс (должно быть 2.5мкс, но у меня сервотестер больше не умеет мерить :), а это получается меньше, чем уже откалиброванный нуль. у меня в таком случае один регуль начинает попискивать сигнализируя о пропадании сигнала, в данном случае о выходе за пределы калибровки. (вылет за пределы вроде бы вы и обсуждали когда-то в топике про микшер от андрея, пардон, о безколлекторном команче)

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

микшер 0.5:0.5 в положении “RUD - середина, THR - нуль” вообще выдаст сигнал аналогичный “25% газа” в такой ситуации, поэтому калибровка через него строго обязательна.

Genosse:

а регули пенитиум-10…

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

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

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

WFrag
Genosse:

а регули пенитиум-10… микшер от ГВС… (правда, лётаю на А-73) 😃

A-73 — это что такое?

Volante24
HikeR:

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

Может покажется, что я влез не по делу, но я все читал, читал эти обсуждения, и в конце концов не могу не высказаться.

Конечно хорошо, что есть что-то, что можно купить, соединить и чтобы работало. Но все эти обсуждения скорее говорят, что реальность не всегда близка к этому. Честно говоря, мне, например, идея перекалибровывать ESC на какой-то странный интервал импульсов сильно не нравится, где-то это неправильно.

Почему все-таки никто из энтузиастов не написал простенькую программку для простейшего AVRа или PICа, которая бы делала все, что нужно и без всякой калибровки, предполагая, что входные сигналы имеют стандартный интервал длительностей? Такой контроллер сам будет держать моторы выключенными (независимо от раддера и гиро) при отсутствии газа, не давать газ меньше минимума на каждом моторе при включенном газе независимо от раддера и гиро, ограничивать сигнал от гиро, да еще и вдобавок осуществлять FailSafe по обоим моторам по потере сигнала.

Это все вместо покупного микшера!

Здесь делать-то почти нечего. Я в этом деле не профессионал, и то без особых проблем написал соответствующий кусок программы, который осуществляет все эти функции. И без каких-либо калибровок. Ну, конечно, кое-какие навыки здесь нужны, так ведь здесь какие спецы тусуются! Программа-то пишется один раз…

Ну а те, кто не хочет один раз спаять программатор на нескольких резисторах и диодах и припаять 8 ножек чипа в DIP корпусе – те могут мучиться с калибровками и дробями в микшерах… В этом смысле остается полная свобода выбора!

WFrag
Volante24:

Почему все-таки никто из энтузиастов не написал простенькую программку для простейшего AVRа или PICа, которая бы делала все, что нужно и без всякой калибровки, предполагая, что входные сигналы имеют стандартный интервал длительностей? Такой контроллер сам будет держать моторы выключенными (независимо от раддера и гиро) при отсутствии газа, не давать газ меньше минимума на каждом моторе при включенном газе независимо от раддера и гиро, ограничивать сигнал от гиро, да еще и вдобавок осуществлять FailSafe по обоим моторам по потере сигнала.

Так сделали уже. В каком-то из топиков (кажется, про безколлекторный комманч) и схема была, и прошивка для PIC-а (этот миксер и продаётся в Форсаже).

Алгоритм там прост. Всё отличие от v-mixer-а в двух пунктах:

  1. Есть настройка proportional-а. Т.е микширование осуществляется вот так:

A = thr - (gyro - prop)/4
B = thr + (gyro - prop)/4

где prop настраивается в районе 1.5мс.

  1. Если A < min, то делается так:

B -= (min - A)
A = min

Т.е на A добавляем (min - A) оборотов (и получаем минимум – 1мс), а на B – отнимаем. Насколько я понял, модификация B нужна для того, чтобы при резком развороте вертолет не просаживался по высоте (когда A уходит за минимум).

  1. Для B > max тоже похожий код, но почему-то там оброты от A отнимаются (а не добавляются), типа так:

A -= (B - max)
B = max

Т.е получается, что как-бы и от B и от A отнимается (B - max). Почему так – я не знаю, может просто не так понял код.

Вот и всё.

У меня была идея какой-нибудь готовый V-Tail (например, от Turnigy) перепрограммировать, но я пока не дошёл до реализации этого замысла, коплю деньги. Не факт, что получится, конечно.

Volante24
WFrag:

Так сделали уже.
этот миксер и продаётся в Форсаже.

Вот это по мне и имеет смысл. Только тогда я не понимаю, откуда у людей все эти проблемы с калибровками, вращениями на земле, и пр. Может, я не вник в описание алгоритма, но если все, о чем упоминалось, сделать, то вроде система должна работать Plug&Play…

HikeR
WFrag:

В каком-то из топиков (кажется, про безколлекторный комманч) и схема была, и прошивка для PIC-а

схема самая обычная, прошивка закрытая, автора пытали, но он так ничего и не сказал (в том топике, по крайней мере), все выводы основываются на догадках.

Volante24:

Почему все-таки никто из энтузиастов не написал простенькую программку для простейшего AVRа или PICа, которая бы делала все, что нужно и без всякой калибровки, предполагая, что входные сигналы имеют стандартный интервал длительностей?

давным давно имеется открытая и свободная схема с исходниками - www.gadgetparadise.com/121901/index.htm
разрешение - 1200 точек (а не 200-300 как в продающихся вариантах), fail-safe програмируется, калибровки не требует.

НО. у меня было 2 ламовских пульта, и ни один из них не выдавал стандартный интервал 1.0-2.0мкс на канале газа. в других пультах есть настройка конечных точек, но там какие-то мифические 120%, 150% и тд, сколько это в микросекундах мало кто указывает.

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

WFrag:

A = thr - (gyro - prop)/4
B = thr + (gyro - prop)/4

где prop настраивается в районе 1.5мс.

а вот этот prop меня до сих пор в непонимание вводит. зачем настраивать пропорциональность на микшере дублируя триммер на передатчике? фича, конечно, но безполезная.

Volante24:

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

все это встречается и в указанном микшере, почитайте топик.

Volante24
WFrag:

У меня была идея какой-нибудь готовый V-Tail (например, от Turnigy) перепрограммировать, но я пока не дошёл до реализации этого замысла

Вот это я не понял. А как его перепрограммировать? Он же, небось, в режиме защиты зашит, так что его прежде нужно полностью стереть, а для этого, наверное, нужен параллельный программатор? Или там PIC и у них с этим по-другому?

В любом случае, чего там recycle ить? Только разъемы? Новый сварганить, наверное, проще.

HikeR:

НО. у меня было 2 ламовских пульта, и ни один из них не выдавал стандартный интервал 1.0-2.0мкс на канале газа.

То есть проблема только в этом? Действительно, в моей Валкере, по-моему, импульс что-то вроде от 0.8мс (или 0.9? – уже не помню) до 2мс.

Так тогда, по-хорошему, нужно бы калибровать микшер, а не ESC…

HikeR
Volante24:

Так тогда, по-хорошему, нужно бы калибровать микшер, а не ESC…

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

Volante24
HikeR:

разрешение - 1200 точек (а не 200-300 как в продающихся вариантах), fail-safe програмируется, калибровки не требует.

Что-то я не понял насчет fail-safe: там же ATTINY13, все, конечно, можно запрограммировать – но выключил питание, и все сотрется! Или как?

А насчет разрешения – так можно хоть миллион точек сделать без проблем, только это все лажа, ни серво этого все равно не понимают, ни приемник с передатчиком (аналоговые) такого разрешения не дают. Да и хотелось бы посмотреть на пальцы того пианиста, который может стик подвинуть на 1/1000 хода.

HikeR:

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

Так потому, что это делается для НЕБОЛЬШИХ разбросов. А в ваших примерах там такие длительности фигурировали, что… Я не уверен, что стал бы полагаться в дорогой модели на то, что ESC будет всегда правильно вести себя при запредельных параметрах импульсов. Я ж их кода не видел, и рассчитывать, что они все на свете нештатные использования предусмотрели, не стал бы. Только в этом причина. Но, действительно, дело вкуса – может, ESC и на такой abuse раcсчитаны…

WFrag
HikeR:

схема самая обычная, прошивка закрытая, автора пытали, но он так ничего и не сказал (в том топике, по крайней мере), все выводы основываются на догадках.

Ну почему на догадках :] Я дизассемблировал и смотрел — там всё понятно.

HikeR:

а вот этот prop меня до сих пор в непонимание вводит. зачем настраивать пропорциональность на микшере дублируя триммер на передатчике? фича, конечно, но безполезная.

Я точно не знаю, как работает гироскоп, но триммер на руддере – это модификация входного значения гироскопа, а prop – это как бы сдвиг выходного значения гироскопа (~= предкомпенсации на классике). Думаю, разница всё-таки есть.

Если проводить параллель с предкомпенсацией, то в режиме HH он, возможно, и не нужен.

Volante24:

Вот это я не понял. А как его перепрограммировать? Он же, небось, в режиме защиты зашит, так что его прежде нужно полностью стереть, а для этого, наверное, нужен параллельный программатор? Или там PIC и у них с этим по-другому?

Да, есть большой риск, что вообще никак не получится.

Volante24:

В любом случае, чего там recycle ить? Только разъемы? Новый сварганить, наверное, проще.

В принципе, да. Просто там уже и плата, и спаяно всё и стоит копейки.

Volante24
WFrag:

Просто там уже и плата, и спаяно всё и стоит копейки.

Ну, если копейки, тогда имеет полный смысл. Но тогда чего копить?

WFrag
Volante24:

Ну, если копейки, тогда имеет полный смысл. Но тогда чего копить?

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

HikeR
Volante24:

но выключил питание, и все сотрется! Или как?

как-то сделано. в инструкции четко прописано, куда надо надеть джампер для переключения режимов.

Volante24:

А насчет разрешения – так можно хоть миллион точек сделать без проблем, только это все лажа, ни серво этого все равно не понимают, ни приемник с передатчиком (аналоговые) такого разрешения не дают

200 точек на турниджи, gws и blue nano очень легко заметны на серве с качалкой хотя бы в сантиметр. медленное перемещение стика вызывает сугубо дискретное перемещение качалки. при подключении регуля становится еще хуже, ибо 200 точек - это в расчете на нормальный диапазон, а большинство аппаратур его сужают, поэтому запустить безколлекторники на очень малых оборотах вобще нереально, а выставить ровно 15000 об/мин по тахометру на роторе мне никак не удавалось, все время +/- 300 было. зато без микшера легко выставлял +/- 40-50 об/мин, и это на стоковой искаевской аппе.

у меня разрешение больше 1000 тоже вызывает мысли “а надо ли оно на самом деле”, но 200 - это очень мало. к тому же открытый исходники позволяют сделать 512 точек, например.

Volante24:

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

то есть вы не уверены, что дорогие регули будут правильно работать при выходе сигнала за пределы? тогда юзайте дешевый регули, у них такой проблемы нет ;)
я ж писал, обычный 10-баксовый турниджи при выходе сигнала за откалиброванный диапазон снижает обороты, останавливается, и начинает пикать. при возрате в нормальное русло - работает как ни в чем не бывало.

WFrag:

триммер на руддере – это модификация входного значения гироскопа, а prop – это как бы сдвиг выходного значения гироскопа (~= предкомпенсации на классике). Думаю, разница всё-таки есть.

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

WFrag:

Как минимум, двигатели, регуляторы и гироскоп ещё нужны.

начните с гироскопа :) имеется тут один на примете, который довольно быстро инициализируется, что позволяет подключить его к блоку 4в1 вместе со штатной гирой (ессно, отключив штатную).

WFrag
HikeR:

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

Дело может быть не только в самом гироскопе, но и в разном реактивном моменте роторов при одинаковых оборотах. Ну т.е гироскоп неподижен и выдаёт центр (1.5мс?), при prop = 1.5мс получаем одинаковые обороты на роторах. При таких оборотах вертолёт наверняка будет крутить (так как у верхнего ротора момент должен быть больше из-за гироскопа).

Возможно это компенсируется триммером. Ну т.е с моей ламерской точки зрения простейший алгоритм гироскопа будет примерно такой out = in + f(w,gain), где w – скорость поворота хвоста от датчика, f – какая-то функция от датчика и чувствительности. В таком случае действительно разницы не должно быть, что сдвигать in или out.

Но с другой стороны, судя по статье www.rcdesign.ru/articles/radio/gyro_stady f может зависеть и от in (вернее, гироскоп может модифицировать gain в зависимости от in) и тогда сдвиг триммера будет означать не то же самое, что и сдвиг выхода.

SIBIRIADA

Почитал ваши тексты HikeR и Volante24 - сильно и углублённо!
К вам и вопрос. 😃
У меня складывается следующая ситуация, раз на раз не инициализируется правильно один из ESC (Pentium 10A), но стоит подергать ручку руддера, пропискивает как надо и после этого вроде как нормально всё работает.
Так же присутствует подергивание двигателей после посадки в режиме полного отключения газа. (спасаюсь только кнопкой на пульте “THR. Cut”)
Из выше вами сказанного могу слелать вывод что это не лечится подручными средствами т.е. без программаторов, написания программ и т.д. ?
Или всё таки стоит вернутся к пункту “калибровка ESC” описанная выше HikeRом? 😃

HikeR
SIBIRIADA:

не инициализируется правильно один из ESC (Pentium 10A)

подергивание двигателей после посадки в режиме полного отключения газа

вот вам и последствия 😉
если пульт позволяет, то немного увеличьте endpoint-ы для канала газа, а также привяжите Throttle-Cut к обнулению чувствительности гиры. если не позволяет, то без калибровки будете мучаться.

SIBIRIADA

Увеличил endpoint-ы для канала газа на 10% - помогло!!! Ура!!!
HikeRу - респект! 😃

Volante24
HikeR:

то есть вы не уверены, что дорогие регули будут правильно работать при выходе сигнала за пределы?

Да не дорогие регули, а дорогие модели (вертолетов, самолетов и пр.)! Мы ж на каком форуме находимся? И не модели будут работать или нет, а что с ними может случиться из-за того, что какой-нибудь гаджет на них откажет, в полете.

Genosse
WFrag:

A-73 — это что такое?

Это микшер сделанный Андреем Таволжанским (Андрей-73) 😃 Сократил, потому как думал все уже знают и поймут 😃

WFrag
Genosse:

Это микшер сделанный Андреем Таволжанским (Андрей-73) 😃 Сократил, потому как думал все уже знают и поймут 😃

А, точно.

Я думаю, с ним не получается отрегулировать т.к он сам входит в режим программирования при максимуме газа. А V-Tail миксеры просто выдают максимум газа дальше, на регуляторы.