Создание собственной системы стабилизации

SergDoc
Samer:

Чтоб летать только по гирам то с пульта надо слать не абсолютные угы наклона, а ошибку по осям.( плюс убрать коррекцию гир ) Чем больше отклонение стика от нулевой оси , тем больше ошибку должны слать. Будет постоянное вращение по оси , пока не вернём стик в 0.

да и угол считать не надо, достаточно пропорции с угловых скоростей в управление мешать - это велосипед КУК
а если ещё аксель добавить со своими пропорциями, то это КК2 (второй КУК)

rual
SergDoc:

да и угол считать не надо, достаточно пропорции с угловых скоростей в управление мешать - это велосипед КУК
а если ещё аксель добавить со своими пропорциями, то это КК2 (второй КУК)

Дык я вот эти формулы выше и написал))) Нафиг все синусы-косинусы, всё вообще можно считать с фиксированнной запятой (целочисленной математикой).

alexeykozin

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

SergDoc
alexeykozin:

обсуждаем как деградировать до кука

эээ не скажи, там в KK2 довольно интересный регулятор (ПИД в смысле)…

oleg70
Samer:

Проделал опыт : Наклонил по X на 30гр а потом на 30 по Y , смотрел по гирам.

Сергей, мне тоже стало интересно: а почему не сделать “как положено” для нормальной ИНС ? В этом какой то глубинный замысел ? что б тратить на это время… в чем прикол то ?
(если уж идти по пути упрощения математики то можно вообще две гиры китайских на раму поставить будет летать “на ручках” тоже неплохо…)

Samer
oleg70:

Сергей, мне тоже стало интересно: а почему не сделать “как положено” для нормальной ИНС ?

На что хватает понимания то и делаю, а просто брать кусок кода не зная что и как работает не хочется ( в смысле математики ).
В принципе у меня все работает нормально.
Тогда надо брать готовые прошивки и возится с настройками.
Тема называется :
Создание СОБСТВЕННОЙ системы стабилизации.
Плохая или хорошая , но СОБСТВЕННАЯ .

alexmos
Samer:

На что хватает понимания то и делаю, а просто брать кусок кода не зная что и как работает не хочется ( в смысле математики ). В принципе у меня все работает нормально. Тогда надо брать готовые прошивки и возится с настройками. Тема называется : Создание СОБСТВЕННОЙ системы стабилизации. Плохая или хорошая , но СОБСТВЕННАЯ .

Хорошая позиция, но только тогда непонятно упорство с которым вы отрицаете то решение, что вам предлагают. Вы же сами задали вопрос, почему так происходит - все отлично при движении раздельно по осям, но возникает ошибка при сложном движении. Вам говорят как это решается - и это единственный способ. И не настолько уж и сложный, алгоритм DCM к примеру достаточно прост. Но вы пытаетесь решить проблему вводом каких то посторонних сущностей и поправочных коэффициентов без какого-либо обоснования, повторяя то, что прошли самодельшики 10 лет назад и резльтатом которого стали рабочие автопилоты типа Мультивия или Ардупилота.

rual
oleg70:

Сергей, мне тоже стало интересно: а почему не сделать “как положено” для нормальной ИНС ? В этом какой то глубинный замысел ? что б тратить на это время… в чем прикол то ?

Я хоть и не Сергей, своё мнение выскажу: качество применяемых нами датчиков не позволяет сделать 100% ИНС, с удержанием позиции без опоры хотя бы десятки минут. В основном борьба идет за плавность и точность перемещения с опорой на ГНСС, при достаточно сложных алгоритмах и местами весьма неустойчивых. КУКовские же алго весьма просты и устойчивы, некоторая проблема возникает если хотим прикрутить навигацию, но и это решаемо. Когда читал ветку про немецкий полетнег (МК вроде), то сложилось впечатление что алго там именно такой, и у мелкой китайшины тоже.
Ну и самое главное:

Samer:

Тема называется :
Создание СОБСТВЕННОЙ системы стабилизации.
Плохая или хорошая , но СОБСТВЕННАЯ .

К тому же если пока (или вообще ) нет желания заниматься навигацией, то нафига козе баян? Сначала закручивать вектора в оператор ориентации ( а некоторые это делают ещё и синусами-косинусами), а потом обратно раскручивать в вектора моментов стабилизации, ради чего, когда их можно взять сразу с датчиков?

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

SergDoc
rual:

но увидев, что большинство на форуме обсуждает цветовую гамму нового фантика - забил…

Жги есчё )))
del - rcopen.com/forum/f123/topic363499/15 пдф-ки открываются нет?
вроде у меня глюк просто
что бы не потерялось:
rcopen.com/forum/f123/topic363499/15
rcopen.com/forum/f123/topic363499/18
rcopen.com/forum/f123/topic363499/19
rcopen.com/forum/f123/topic363499/22
rcopen.com/forum/f123/topic363499/26
rcopen.com/forum/f123/topic363499/28
rcopen.com/forum/f123/topic363499/31
rcopen.com/forum/f123/topic363499/32
s3.amazonaws.com/…/Certificate.pdf
у меня остались ещё куски кода на питоне от задач, но смысла в них нет без среды…

alexmos
rual:

К тому же если пока (или вообще ) нет желания заниматься навигацией, то нафига козе баян? Сначала закручивать вектора в оператор ориентации ( а некоторые это делают ещё и синусами-косинусами), а потом обратно раскручивать в вектора моментов стабилизации, ради чего, когда их можно взять сразу с датчиков?

Хм, может я чего то не понимаю, но при чем тут ИНС и удержание позици? Да самая элементарная вещь - коррекция по акселю - требует знания ориентации в виде хотя бы вектора. Как можно скорректировать две непонятные величины, которые мы получим после интегрирования гироскопа раздельно по осям, и связать их с ВЕКТОРОМ гравитации? В этом нет никакого математического смысла, кроме идеалных одномерных случаев.

rual
alexmos:

коррекция по акселю - требует знания ориентации в виде хотя бы вектора

Ориентацию дает нормированный вектор акселя - вертикаль (0,0,1). Отклонение от вертикали создает проекцию оси гравитации на горизонтальные оси акселя, вот они в качестве пропорциональной и интегральной составляющей вводятся в ПИД, составляющая Д берется с оси ДУСа. Для мелких и шустрых может понадобится составляющая Д’ (угловое ускорение) - численное дифференцирование оси ДУС.

alexmos:

Как можно скорректировать две непонятные величины, которые мы получим после интегрирования гироскопа раздельно по осям, и связать их с ВЕКТОРОМ гравитации?

Почему непонятные? Вполне понятные, если ДУС не интегрировать. ДУС в данном случае выполняет роль демпфера угловой скорости, т.е. стремится удержать установленное положение с нулевой угловой скоростью, не важно как расположенное к вектору гравитации. Дополняя его проекциями вектора гравитации на горизонтальные оси акселя получаем двумерный синус отклонения от вертикали, который даст ПИ-составляющие, которые будут возвращать коптер в горизонт. Если сюда добавить дестабилизацию от РУ, то получим управление в горизонте(в АПМ вроде ЛИВЕЛ называется), если убрать аксель - получим управление угловыми скоростями (АКРО). Есть мат.модель, будет время соберу ардумодельку (хотел про это статью написать, но придется размазывать).
Ну и демпфер газа - смесь РУ_газа с вертикальной ось акселя (совпадающей с осью тяги), позволяет сделать более плавное руление по газу. Китайцы, которые этого не знают, будут в восторге.
Формулы я выше писал, они рабочие.

alexmos
rual:

Отклонение от вертикали создает проекцию оси гравитации на горизонтальные оси акселя, вот они в качестве пропорциональной и интегральной составляющей вводятся в ПИД

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

rual:

очему непонятные? Вполне понятные, если ДУС не интегрировать

  • изначально речь шла про интегрирование и “непонятную” ошибку после этого.
oleg70
rual:

качество применяемых нами датчиков не позволяет сделать 100% ИНС

Добавлю к этому: у меня ни стого ни ссего подох акселерометр (видимо от старости)) в BMX055… долго не мог понять в чем дело и в конце концов обнаружил что появилось КЗ на ножках датчика (именно на ножках а не на плате)…
Т.е. работал работал и умер! … хорошо что не в полете а на столе. Так что имеем в виду, что и такое бывает… , Во

mahowik
SergDoc:

у меня остались ещё куски кода на питоне от задач, но смысла в них нет без среды…

я ранее писал создателю курса Юргену по поводу исходников их SIM-а и он меня заредиректил на их девелопера… если интересно, то могу покопаться…

jShadow
mahowik:

В MIT разработали систему позиционирования по сигналу Wi-Fi с дециметровой точностью
geektimes.ru/post/273686/

Впечатляет!

rual
SergDoc:

у кого есть F4BY могут поучавствовать в увлекательном мероприятии )))

Я уже гдето такое видел) Вроде на ХК и с безаксельным КУКом. Хороший способ настроить пиды!

12 days later