Проект "Безколлекторная Лама4"
Почему все-таки никто из энтузиастов не написал простенькую программку для простейшего AVRа или PICа, которая бы делала все, что нужно и без всякой калибровки, предполагая, что входные сигналы имеют стандартный интервал длительностей? Такой контроллер сам будет держать моторы выключенными (независимо от раддера и гиро) при отсутствии газа, не давать газ меньше минимума на каждом моторе при включенном газе независимо от раддера и гиро, ограничивать сигнал от гиро, да еще и вдобавок осуществлять FailSafe по обоим моторам по потере сигнала.
Так сделали уже. В каком-то из топиков (кажется, про безколлекторный комманч) и схема была, и прошивка для PIC-а (этот миксер и продаётся в Форсаже).
Алгоритм там прост. Всё отличие от v-mixer-а в двух пунктах:
- Есть настройка proportional-а. Т.е микширование осуществляется вот так:
A = thr - (gyro - prop)/4
B = thr + (gyro - prop)/4
где prop настраивается в районе 1.5мс.
- Если A < min, то делается так:
B -= (min - A)
A = min
Т.е на A добавляем (min - A) оборотов (и получаем минимум – 1мс), а на B – отнимаем. Насколько я понял, модификация B нужна для того, чтобы при резком развороте вертолет не просаживался по высоте (когда A уходит за минимум).
- Для B > max тоже похожий код, но почему-то там оброты от A отнимаются (а не добавляются), типа так:
A -= (B - max)
B = max
Т.е получается, что как-бы и от B и от A отнимается (B - max). Почему так – я не знаю, может просто не так понял код.
Вот и всё.
У меня была идея какой-нибудь готовый V-Tail (например, от Turnigy) перепрограммировать, но я пока не дошёл до реализации этого замысла, коплю деньги. Не факт, что получится, конечно.
Так сделали уже.
этот миксер и продаётся в Форсаже.
Вот это по мне и имеет смысл. Только тогда я не понимаю, откуда у людей все эти проблемы с калибровками, вращениями на земле, и пр. Может, я не вник в описание алгоритма, но если все, о чем упоминалось, сделать, то вроде система должна работать Plug&Play…
В каком-то из топиков (кажется, про безколлекторный комманч) и схема была, и прошивка для PIC-а
схема самая обычная, прошивка закрытая, автора пытали, но он так ничего и не сказал (в том топике, по крайней мере), все выводы основываются на догадках.
Почему все-таки никто из энтузиастов не написал простенькую программку для простейшего AVRа или PICа, которая бы делала все, что нужно и без всякой калибровки, предполагая, что входные сигналы имеют стандартный интервал длительностей?
давным давно имеется открытая и свободная схема с исходниками - www.gadgetparadise.com/121901/index.htm
разрешение - 1200 точек (а не 200-300 как в продающихся вариантах), fail-safe програмируется, калибровки не требует.
НО. у меня было 2 ламовских пульта, и ни один из них не выдавал стандартный интервал 1.0-2.0мкс на канале газа. в других пультах есть настройка конечных точек, но там какие-то мифические 120%, 150% и тд, сколько это в микросекундах мало кто указывает.
именно поэтому все регуляторы первым делом необходимо калибровать на диапазон имеющейся в наличии связки передатчик+приемник. и нет ничего страшного в том, что некоторые аппаратные ограничения можно исправить калибровкой, специально для этого предусмотренной.
A = thr - (gyro - prop)/4
B = thr + (gyro - prop)/4где prop настраивается в районе 1.5мс.
а вот этот prop меня до сих пор в непонимание вводит. зачем настраивать пропорциональность на микшере дублируя триммер на передатчике? фича, конечно, но безполезная.
Только тогда я не понимаю, откуда у людей все эти проблемы с калибровками, вращениями на земле, и пр.
все это встречается и в указанном микшере, почитайте топик.
У меня была идея какой-нибудь готовый V-Tail (например, от Turnigy) перепрограммировать, но я пока не дошёл до реализации этого замысла
Вот это я не понял. А как его перепрограммировать? Он же, небось, в режиме защиты зашит, так что его прежде нужно полностью стереть, а для этого, наверное, нужен параллельный программатор? Или там PIC и у них с этим по-другому?
В любом случае, чего там recycle ить? Только разъемы? Новый сварганить, наверное, проще.
НО. у меня было 2 ламовских пульта, и ни один из них не выдавал стандартный интервал 1.0-2.0мкс на канале газа.
То есть проблема только в этом? Действительно, в моей Валкере, по-моему, импульс что-то вроде от 0.8мс (или 0.9? – уже не помню) до 2мс.
Так тогда, по-хорошему, нужно бы калибровать микшер, а не ESC…
Так тогда, по-хорошему, нужно бы калибровать микшер, а не ESC…
а как быть тем, кто летает без микшеров, на вертолетах с хвостовым винтом, например?
регули имеют штатную ф-ию калибровки, все инструкции к регулям начинаются со слов “первым делом откалибруйте регуль”, почему же вас так пугает необходимость произвести эту процедуру после подключения микшера, к тому же всего один раз?
разрешение - 1200 точек (а не 200-300 как в продающихся вариантах), fail-safe програмируется, калибровки не требует.
Что-то я не понял насчет fail-safe: там же ATTINY13, все, конечно, можно запрограммировать – но выключил питание, и все сотрется! Или как?
А насчет разрешения – так можно хоть миллион точек сделать без проблем, только это все лажа, ни серво этого все равно не понимают, ни приемник с передатчиком (аналоговые) такого разрешения не дают. Да и хотелось бы посмотреть на пальцы того пианиста, который может стик подвинуть на 1/1000 хода.
регули имеют штатную ф-ию калибровки, все инструкции к регулям начинаются со слов “первым делом откалибруйте регуль”, почему же вас так пугает необходимость произвести эту процедуру после подключения микшера, к тому же всего один раз?
Так потому, что это делается для НЕБОЛЬШИХ разбросов. А в ваших примерах там такие длительности фигурировали, что… Я не уверен, что стал бы полагаться в дорогой модели на то, что ESC будет всегда правильно вести себя при запредельных параметрах импульсов. Я ж их кода не видел, и рассчитывать, что они все на свете нештатные использования предусмотрели, не стал бы. Только в этом причина. Но, действительно, дело вкуса – может, ESC и на такой abuse раcсчитаны…
схема самая обычная, прошивка закрытая, автора пытали, но он так ничего и не сказал (в том топике, по крайней мере), все выводы основываются на догадках.
Ну почему на догадках :] Я дизассемблировал и смотрел — там всё понятно.
а вот этот prop меня до сих пор в непонимание вводит. зачем настраивать пропорциональность на микшере дублируя триммер на передатчике? фича, конечно, но безполезная.
Я точно не знаю, как работает гироскоп, но триммер на руддере – это модификация входного значения гироскопа, а prop – это как бы сдвиг выходного значения гироскопа (~= предкомпенсации на классике). Думаю, разница всё-таки есть.
Если проводить параллель с предкомпенсацией, то в режиме HH он, возможно, и не нужен.
Вот это я не понял. А как его перепрограммировать? Он же, небось, в режиме защиты зашит, так что его прежде нужно полностью стереть, а для этого, наверное, нужен параллельный программатор? Или там PIC и у них с этим по-другому?
Да, есть большой риск, что вообще никак не получится.
В любом случае, чего там recycle ить? Только разъемы? Новый сварганить, наверное, проще.
В принципе, да. Просто там уже и плата, и спаяно всё и стоит копейки.
Просто там уже и плата, и спаяно всё и стоит копейки.
Ну, если копейки, тогда имеет полный смысл. Но тогда чего копить?
Ну, если копейки, тогда имеет полный смысл. Но тогда чего копить?
Как минимум, двигатели, регуляторы и гироскоп ещё нужны. А у меня пока выделенный месячный бюджет только на запчасти и лопасти уходит 😁
но выключил питание, и все сотрется! Или как?
как-то сделано. в инструкции четко прописано, куда надо надеть джампер для переключения режимов.
А насчет разрешения – так можно хоть миллион точек сделать без проблем, только это все лажа, ни серво этого все равно не понимают, ни приемник с передатчиком (аналоговые) такого разрешения не дают
200 точек на турниджи, gws и blue nano очень легко заметны на серве с качалкой хотя бы в сантиметр. медленное перемещение стика вызывает сугубо дискретное перемещение качалки. при подключении регуля становится еще хуже, ибо 200 точек - это в расчете на нормальный диапазон, а большинство аппаратур его сужают, поэтому запустить безколлекторники на очень малых оборотах вобще нереально, а выставить ровно 15000 об/мин по тахометру на роторе мне никак не удавалось, все время +/- 300 было. зато без микшера легко выставлял +/- 40-50 об/мин, и это на стоковой искаевской аппе.
у меня разрешение больше 1000 тоже вызывает мысли “а надо ли оно на самом деле”, но 200 - это очень мало. к тому же открытый исходники позволяют сделать 512 точек, например.
Я не уверен, что стал бы полагаться в дорогой модели на то, что ESC будет всегда правильно вести себя при запредельных параметрах импульсов.
то есть вы не уверены, что дорогие регули будут правильно работать при выходе сигнала за пределы? тогда юзайте дешевый регули, у них такой проблемы нет ;)
я ж писал, обычный 10-баксовый турниджи при выходе сигнала за откалиброванный диапазон снижает обороты, останавливается, и начинает пикать. при возрате в нормальное русло - работает как ни в чем не бывало.
триммер на руддере – это модификация входного значения гироскопа, а prop – это как бы сдвиг выходного значения гироскопа (~= предкомпенсации на классике). Думаю, разница всё-таки есть.
гира запоминает входной сигнал при включении и считает его точкой отсчета. нормальная гира сигнал никуда не сдвигает, хреновая гира может дать сигнал со сдвигом, даже если верт неподвижен. в этом случае согласен, корректировка пропорциональности нужна.
однако такое поведение хреновой гиры - прямой повод для ее замены, я так считаю.
ситуация когда начинает сдыхать один из моторов тоже должна полностью компенсироваться гирой, ее и ставят, чтобы компенсировать любые возмущения, ветер там дует, или мотор дохнет потихоньку.
Как минимум, двигатели, регуляторы и гироскоп ещё нужны.
начните с гироскопа :) имеется тут один на примете, который довольно быстро инициализируется, что позволяет подключить его к блоку 4в1 вместе со штатной гирой (ессно, отключив штатную).
гира запоминает входной сигнал при включении и считает его точкой отсчета. нормальная гира сигнал никуда не сдвигает, хреновая гира может дать сигнал со сдвигом, даже если верт неподвижен. в этом случае согласен, корректировка пропорциональности нужна.
однако такое поведение хреновой гиры - прямой повод для ее замены, я так считаю.
ситуация когда начинает сдыхать один из моторов тоже должна полностью компенсироваться гирой, ее и ставят, чтобы компенсировать любые возмущения, ветер там дует, или мотор дохнет потихоньку.
Дело может быть не только в самом гироскопе, но и в разном реактивном моменте роторов при одинаковых оборотах. Ну т.е гироскоп неподижен и выдаёт центр (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) и тогда сдвиг триммера будет означать не то же самое, что и сдвиг выхода.
Почитал ваши тексты HikeR и Volante24 - сильно и углублённо!
К вам и вопрос. 😃
У меня складывается следующая ситуация, раз на раз не инициализируется правильно один из ESC (Pentium 10A), но стоит подергать ручку руддера, пропискивает как надо и после этого вроде как нормально всё работает.
Так же присутствует подергивание двигателей после посадки в режиме полного отключения газа. (спасаюсь только кнопкой на пульте “THR. Cut”)
Из выше вами сказанного могу слелать вывод что это не лечится подручными средствами т.е. без программаторов, написания программ и т.д. ?
Или всё таки стоит вернутся к пункту “калибровка ESC” описанная выше HikeRом? 😃
не инициализируется правильно один из ESC (Pentium 10A)
…
подергивание двигателей после посадки в режиме полного отключения газа
вот вам и последствия 😉
если пульт позволяет, то немного увеличьте endpoint-ы для канала газа, а также привяжите Throttle-Cut к обнулению чувствительности гиры. если не позволяет, то без калибровки будете мучаться.
Увеличил endpoint-ы для канала газа на 10% - помогло!!! Ура!!!
HikeRу - респект! 😃
то есть вы не уверены, что дорогие регули будут правильно работать при выходе сигнала за пределы?
Да не дорогие регули, а дорогие модели (вертолетов, самолетов и пр.)! Мы ж на каком форуме находимся? И не модели будут работать или нет, а что с ними может случиться из-за того, что какой-нибудь гаджет на них откажет, в полете.
A-73 — это что такое?
Это микшер сделанный Андреем Таволжанским (Андрей-73) 😃 Сократил, потому как думал все уже знают и поймут 😃
Это микшер сделанный Андреем Таволжанским (Андрей-73) 😃 Сократил, потому как думал все уже знают и поймут 😃
А, точно.
Я думаю, с ним не получается отрегулировать т.к он сам входит в режим программирования при максимуме газа. А V-Tail миксеры просто выдают максимум газа дальше, на регуляторы.
дошли таки руки, чтобы потестить собственноручно перемотанные turndigy d1811-3800 (подробности здесь)
до перемотки на холостом ходу моторы выдавали почти 31000 об/мин, соединение обмоток треугольником, полученный kV - 3780.
после перемотки получилось 27000 об/мин, обмотки соединил звездой, kV - 3290.
то есть технически kV упал, но звезда позволяла надеятся на увеличение крутящего момента. так и вышло, на стоковых лопастях отвисел почти 13 минут, для меня это рекорд, на этих же моторах первоначально не больше 10 получалось. запас тяги стал явно не меньше, чем раньше. перепутав при первом запуске реверс гиры верт с места в карьер долбанулся в потолок, причем взлетев на одном роторе и какое-то время подолбился там, пока я не опомнился и не вырубил газ.
на стоковых лопастях отвисел почти 13 минут, для меня это рекорд, на этих же моторах первоначально не больше 10 получалось
Ну правильно, я поэтому всегда хотел иметь kV без особого избытка. Чем выше kV, тем, при той же нагрузке, меньше duty cycle PWM импульсов в моторе, соответственно, растут потери в моторе.
31000 об/мин, соединение обмоток треугольником, полученный kV - 3780.
после перемотки получилось 27000 об/мин, обмотки соединил звездой, kV - 3290.
Тут у Вас несоответствие по числам. kV меняется сильнее при изменении со звезды на треугольник (падает в Sqrt[3] раз, примерно 1.7). Так, как Вы его измеряете, это очень неточно. Просто при таких оборотах скорость коммутации огромная и мотор просто не развивает ожидаемых оборотов kV*V из-за побочных эффектов (регулятор и т.д.). Когда я переключил таким образом обмотки в хорошем менее оборотистом моторе и измерил kV на низком напряжении, у меня получилось падение в kV ровно как нужно. А на большем напряжении kV занижалось.
А вообще-то, лучший способ измерять эффективный kV должен быть раскручивая мотор с постоянной скоростью (скажем, от синхронного сетевого мотора) и измеряя темтером напряжение на фазах отсоединенного мотора.
Тут у Вас несоответствие по числам.
скорее всего вы не прочитали мою ссылку 😉
изначально мотор имел 20 витков, я его более толстым проводом перематывал, поэтому влезло только 13 витков. вот и несоответсвие.
а вот сейчас попробовал на холостом ходу погонять со звездой этот же мотор - 44000-45000 об/мин. неточно так как все на весу делал. вот и ожидаемое увеличение kV, правда мотор стало можно остановить касаясь спичкой боковой части, до этого он еще как-то сопротивлялся 😉
и измеряя темтером напряжение на фазах отсоединенного мотора.
в смысле “тестером”? у меня нет такого тестера, который может померить килогерцовый переменный ток, а обычный, подозреваю, будет врать.
скорее всего вы не прочитали мою ссылку .
изначально мотор имел 20 витков.
Прочитал внимательно, но этого не извлек (потому как в том посту этого нет – это где-то в предыдущих). При нормальном чтении создавалось впечатление, что главная модификация – это треугольник в звезду, плюс как муторно перематывать моторы. Теперь-то все стало на свои места.
в смысле “тестером”? у меня нет такого тестера, который может померить килогерцовый переменный ток, а обычный, подозреваю, будет врать.
Скорее всего, не будет, нет таких диодов в тестере, у которых граничная частота килогерц. Ну а если есть сомнения, можно на одном диоде сделать выпрямитель и откалибровать (в нижней части, при напряжении около вольта может подвирать).