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

alexeykozin
SergDoc:

да магия всё это, никто никуда не летит )))

я тут давеча трое суток потерял на одной очень тупой вещи.
в с++ ATAN2(y,x)
в vb, excel где я делал контроль ATAN2(x,y)

SergDoc

А это все потому, что ты ворочаешь не вокруг своей оси, а относительно левого верхнего угла экрана)))

rual
SergDoc:

если ты несёшься на 160 тонном х…абазе с ускорением 9G в плоскости планеты - то это магия и аксель у тебя будет показывать явную хрень - но при отсутствии угловой скорости, алгоритм будет править это несоответствие и ты не воткнёшься в планету…

Тут кабэ всё просто: если несёшься с ускорением 9G, то аксель покажет тебе направление вниз длинной 8G, оч. плохо когда -1g (свободное падение) и аксель кажет НУЛЬ. Вот НУЛЬ как не верти, понятней не станет )) Щас как раз виртуальную ракету гоняю.

alexeykozin:

угловые скорости сильно шумная величина особенно если есть вибрации

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

SergDoc
rual:

Тут кабэ всё просто: если несёшься с ускорением 9G, то аксель покажет тебе направление вниз длинной 8G, оч. плохо когда -1g (свободное падение) и аксель кажет НУЛЬ. Вот НУЛЬ как не верти, понятней не станет )) Щас как раз виртуальную ракету гоняю.

мы тут издевались над DCM алгоритмом и вот что получилось:
таскаю по столу вперёд - назад, влево - вправо
соответственно по тангажу и крену горизонт уходит - правый верхний экран:

rual
SergDoc:

мы тут издевались над DCM алгоритмом и вот что получилось:

не могу посмотреть

У Вас нет прав для просмотра этой страницы или для выполнения этого действия.

Хотя зарегистрировался(

SergDoc

мля сейчас:
мелкая
но тут ерунда ±1 градус, у Алексея на арду до 10 градусов уплывает…

rual

Мда… видимо вес акселя большой. И дус по Z тоже скачет

SergDoc
rual:

И дус по Z тоже скачет

я же всю трёху тягал по столу - не удивительно)))

oleg70
SergDoc:

да магия всё это,

Я так размышляю (абстрагируясь от формул) по этой проблеме: по факту имеем два типа исходных данных

  1. угловая скорость(гира)
  2. смесь линейного и гравитационного ускорений (аксель)
    Задача - отделить у акселя одно от другого.
    Математика должна быть такова, чтоб в “отделяющем алгоритме” данные акселя (“разделяемое”) присутствовали только как аргумент , но никак не попадали в цепь обратной связи прямо или косвенно…
    Иначе получим эффект “мюнхаузена” или иными словами “замкнутый круг” и далее тупик…
    Достаточно ли для решения проблемы данных с гиры - вопрос открытый… , если нет то напрашивается “третья сила”…
rual
oleg70:

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

Это неправильно, а последнее неправда, читаем про “взрослые” системы (см.стр.8)

oleg70
rual:

Это неправильно, а последнее неправда, читаем про “взрослые” системы (см.стр.8)

Посмотрел… речь в документе (как я понял, опять же) идёт о калибровке гировертикали по гидроуровню (роль которого в нашем случае исполняет акселерометр)… НО речь идет о статической калибровке , т.е. сама платформа в процессе калибровки находится в состоянии покоя и линейно не перемещается. Да, “взрослые системы” на самолете так и работают, сначала на земле раскручивают гироскопы, затем их один раз калибруют и потом уже взлетают…
Так что “это неправильно” пока правильно…

SergDoc

во чё самое главное во всей установке )))

Для того, чтобы уменьшить указанную погрешность, в ЦГВ -10 предусмотрена возможность выключения поперечной коррекции при действии ускорений.

oleg70
SergDoc:

во чё самое главное во всей установке

Смотрим пост #6023 (😃)

SergDoc

неа… ещё раз - чё писал в алгоритме:
чем выше угловые скорости тем больше доверие акселю, а чем ниже тем больше доверие ДУС…
аксель нужен к сожалению…

oleg70
SergDoc:

неа… ещё раз - чё писал в алгоритме:

Конечно, нельзя отключать (если только не лететь “на ручках”, и то не факт что кульбит получится…), а надо сначала в акселе разделить ускорения а потом “подмешивать” в гиру.
Короче с чего начали тем пока и закончили - “как разделить ускорения ?”…

rual
oleg70:

НО речь идет о статической калибровке , т.е. сама платформа в процессе калибровки находится в состоянии покоя и линейно не перемещается. Да, “взрослые системы” на самолете так и работают, сначала на земле раскручивают гироскопы, затем их один раз калибруют и потом уже взлетают…
Так что “это неправильно” пока правильно…

Коррекция горизонта присутствует постоянно, иначе самоль пролетев 3-4 часа от приполярных районов на юг к экватору будет иметь +60-70 градусов по тангажу. К сожалению не могу найти скан древней книги по классификации гировертикалей и приборов ориентации. Дык там написано, что БЕЗ коррекции работают только системы ориентации в “коротко, но ярко живущих” устройствах типа авиабомб и ракет ВВ и ВП (не крылатых, не баллистических).

oleg70:

“как разделить ускорения ?”…

Я писал обобщенный алгоритм, мат.реализация немного отличается, но логику вроде верно описал. И вообще постоянная времени коррекции должна быть достаточно большой, в профсистемах она больше “периода Шулера” (>5600 сек)

SergDoc
oleg70:

Конечно, нельзя отключать (если только не лететь “на ручках”, и то не факт что кульбит получится…)

вот старое моё кино без акселя

ничё так…

oleg70
rual:

Коррекция горизонта присутствует постоянно

Это, и ниже сказанное, абсолютно верно… но эта коррекция идёт (уверен) уже не по “строительному уровню с пузырьком воздуха” а х.з. как… в космосе наверно по звёздам, в атмосфере ещё как то и чем то…
Но мы то всё пытаемся решить одним и тем же “строительным уровнем”, который решает в динамике проблему ошибки интегрирования угловых скоростей, но не может решить проблему влияния линейных ускорений на горизонт…
И по факту: нет у нас >5600 секунд на коррекцию, земля-матушка очень близко.

SergDoc:

ничё так…

В данном случае роль “абсолютного датчика положения” исполняет (и довольно неплохо 😃)сам пилот НЛО…

alexmos
oleg70:

Задача - отделить у акселя одно от другого.

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

Но вообще непонятно, почему такой вопрос стоит - у полетников есть же GPS, он отлично помогает с определением, какие ускорения линеные, а какие - сила тяжести.

oleg70
alexmos:

без доп. сенсоров,

Была у меня идея: а вот магнитометр находится внутри статического магнитного поля и “своими осями” в принципе может за него неплохо цепляться, нельзя ли математически с ним поработать и “подсунуть” его к гироскопу ??
Или я чё туплю ??

alexmos
oleg70:

Была у меня идея: а вот магнитометр находится внутри статического магнитного поля и “своими осями” в принципе может за него неплохо цепляться, нельзя ли математически с ним поработать и “подсунуть” его к гироскопу ?? Или я чё туплю ??

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