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

oleg70
rual:

А что можно сказать про инет-видео?

У них H.264 сжатие на борту, в принципе 1080р получается реальным…

rual:

многие не могут через мёбиус смотреть

Ды понятно что свои минусы есть(я же писал “типа этого”), но сам концепт заслуживает уважения. (жаль что там плата 10 слоев и моу ЛУТ не прокатит, а тоб сделал 😃)

djdron
oleg70:

(жаль что там плата 10 слоев и моу ЛУТ не прокатит, а тоб сделал 😃)

надо 10 ЛУТов, метализировать отверстия и под пресс )))).

Astellar

Скажите пожалуйста, измерял ли кто-нибудь как сильно вибрация влияет на работу ahrs? Интересно именно после всяких фильтров.
Смотрю все ролики на ютубе и там вроде контроллер прикручен намертво к раме квадрика.
При этом все летает, все стабилизируется.
У меня же какая-то хрень происходит: на столе – стучу, кручу – показывает достаточно аккуратно.
А на раме с запущенными двигателями – вертикаль «волчком ходит».
Вибрирует ощутимо, и пока не придумал как её сильно погасить (жду балансир для пропеллеров из китая).
Может это я что-то накодил не то?

SergDoc
Astellar:

Может это я что-то накодил не то?

Может… rual где-то тут кино кидал жестко контроллер прикручен… у меня тоже контроллер жестко на раме работает как с DSM так и с EKF нормально… ДУС не боятся вибраций, вибраций боится акселерометр - вывод: больше доверия ДУС… т.е. в краткосрочной перспективе работают ДУС, в долгосрочной - аксель (грубо коррекция уплывания ДУС)

Astellar
SergDoc:

больше доверия ДУС…

Вроде так и есть… Проверю еще раз все параметры…

Спасибо.

oleg70
Astellar:

и пока не придумал как её сильно погасить

Пусть “ходит”…, так и должно быть…, для стабилизации она не используется, там крен и тангаж нужен…

Astellar:

Может это я что-то накодил не то?

В AHRS надо только Kp и Ki немного подобрать, если углы уже показывает правильно , ошибиться в принципе негде…

k0der

Добрый день.
Не могу найти формулу компенсации магнитометра по акселерометру.
Не подкинете методику?
Спасибо

rual
k0der:

Не могу найти формулу компенсации магнитометра по акселерометру.

Странная какая то постановка ) Что можно компенсировать в компасе акселем?

В магнитометре смещение осей компенсируется по мин/макс значениям.

oleg70
k0der:

Не могу найти формулу компенсации магнитометра по акселерометру.

xh=MX * cos(Pitch) - MZ * sin(Pitch);
yh=MX *sin(Pitch)*sin(-Roll) + MY * cos(-Roll)-MZ*sin(-Roll)*cos(Pitch);

Azimut=atan2(yh,xh)*TooGRD;

if(Azimut<0){Azimut=360+Azimut;}

где

TooGRD - константа перевода из радиан в градусы

Надо только знаки Pitch и Roll правильно подобрать, в зависимости от физического расположения сенсоров, и будет азимут с компенсацией наклонов. (если об этом речь была(?))…

rual
oleg70:

(если об этом речь была(?))…

это главный вопрос! )) … и тема акселя не раскрыта.

Да ещё… формула вроде из одного известного алгоритма. Олег, как она в перевернутом состоянии себя чувствует?

oleg70
rual:

… и тема акселя не раскрыта

Откуда и как получать углы крена и тангажа - это по желанию, я например, себе взял “честные” углы по расчетам IMU (гира+аксель), а потом их использовал для коррекции магнитометра и получения угла направления…

rual:

как она в перевернутом состоянии себя чувствует?

вроде “как положено”…, типа: перевернул - “полетел обратно”, правда при углах близких к 90 гр. наблюдается приличный дрейф (видимо свойство cos/sin)…, а так, свои 3-5 градусов точности вполне достижимы…

k0der

добрый день. а есть код для ардуины, который на выходе выдает все углы? (компас, наклон) соотвественно с компесацией

k0der

нашел проект DIY_Headtracker
исходники както более понятны.
за, против?

12 days later
ssh

Немного не по теме, но тут эксперты собрались. Вопрос простой, можно ли использовать CC3D (или ардупилот) с коптером на щеточных моторах? Вместо регулей - мосфеты, но главное - прошивка. Я так подозреваю, что можно, раз уж это открытые проекты. Вроде как сигналы на ESC идут немного другие, чем ипользуются для щеточных моторов. Вопрос простоты внесения требуемых изменений в код прошивки, если таковые потребуются.

mataor

легко. так как ppm сигнал изначально делается шимом

HikeR

на таких моторах PWM, а не PPM. не нужно трогать CC (или ардупилот), нужны просто регули для коллекторников (если речь идет про двупроводные моторы).

ssh
HikeR:

на таких моторах PWM, а не PPM. не нужно трогать CC (или ардупилот), нужны просто регули для коллекторников (если речь идет про двупроводные моторы).

Странно, я думал сигнал там отличается только частотой. И на ESC-ах всегда указывают почему-то PWM, а не PPM. На коптере 2-х проводные моторы. Померил частоту сигнала, идущего на них - в районе 3,75кГц.
Контроллеров подходящих не встречал, да и это уж слишком, по-моему.

HikeR

моторы управляются не частотой, а скважностью.
что именно “слишком” — не понял.

ssh
HikeR:

что именно “слишком”

Ну у обычного ESC вроде бы задача обрабатывать входящий сигнал и на его основе управлять тремя фазами. Что из себя может представлять контроллер щеточным 2х проводном движком я как-то смутно представляю (в плане стыковки с полетным контроллером). Если только конвертор PPM to PWM, но врядли такие существуют, а если и существуют, то это большая редкость.

да, почитал про PPM, вроде стало понятно, в чем различие. Но как его преобразовать не программным путем в PWM, я не представляю

HikeR

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

но если вопрос только в программной части, т. е. сам драйвер уже есть и он ждет не дождется готового PWM на входе, то все проще. в GSC нужно сделать что-то вроде:

  1. ActuatorSettings —> ChannelUpdateFreq для выбранных каналов выставить в 4 кГц, к примеру
  2. на закладке Outputs для этих же каналов задать минимум и максимум как 0 и 250 мкс

вроде бы CC и его потомки работают минимум с микросекундами, поэтому для увеличения разрешения нужно снижать частоту, 2 кГц позволит задать 500 промежуточных значений, а 8 кГц — всего 125.