MultiWii

Musgravehill

Глеб, я так и не нашел там Калмана. Возможно, он там хитро спрятан, завуалирован под сложение\умножение без видимых признаков. В коде есть нечто похожее на фильтр скользящего среднего: gyroData[axis] = (gyroADC[axis]*3+gyroADCprevious[axis]+16)/4/8;

Комментатор Andres “I hate to be “that guy”, but there is nothing similar to a kalman filter in that code. The whole point of a kalman filter is that it continuously adapts the weights for the averaging using the covariance. Without that it’s just a linear dynamic system with a low-pass filter.”

Сам Starlino (автор этого алгоритма) пишет “Andres, this is correct , THIS IS NOT KALMAN filter, the filter in this article can be found it in literature as “complementary filter”. To quote myself , I like to call it “simplified Kalman filter”, but you don’t have to. I call it this way because of the same principles of weighted fusing of post and pre-estimates, however as you noted the real Kalman filter will update the coefficient matrix which this filter does not (by default). I also call it this way so people looking for an alternative to Kalman can find it. Hope this clarifies the subject.”

SovGVD

только там на схеме аксель не из нунчака…это стоит проигнорировать, а нунчак соединить с вмп: www.multiwii.com/?page_id=103
в остальном - раскомментировать/закомментировать плюшки в прошивке и соединить как указано на схеме (входы/выходы все подписаны)
главное поиграться потом с частотой, интерливингом и чето там про пулапс - чтобы Cycle time в настройщике не скакал

vtumane

По BMP085, игрался на столе, не вдохновил.
При изменении высоты на метр показания меняются примерно на 10 попугаев
При этом без изменения высоты показания плавают в пределах 5 все тех же попугаях.
А самое неприятное что показания со временем плывут.
Это мой сандвич ADXL345 @ BMP085

Covax

да, bmp085 по паспорту ±60см, а на деле все 90… надо другой искать

SovGVD

надо делать 2х ядерный multiwii, чтобы одна платка просчитывала кальмана, другая занималась управлением и прочими плюшками =)

Covax

www.google.ru/search?q=Kalman+Arduino&ie=utf-8&oe=… Что-то даже с реализацией кода для Арудино

SovGVD:

надо делать 2х ядерный multiwii

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

Musgravehill

Зачем нужны и акселерометр, и инклинометр:

www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=125045841…

The accelerometers suffer very little drift over time compared to the gyro but are very sensitive, even at rest. Small movements can be lost. The Gyro’s are very accurate in short bursts, but rapidly (compared to accelerometer drift) get distorted by drift… One could say the two sensors exhibit the complimentary behavior of each other.

SovGVD:

2х ядерный multiwii

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

SovGVD

так целый вычислительный центр будет летать, а не простенький контроллер =) в принципе проблем то особых нет разделить код и по txrx передавать, если все меги, то там штуки 4-5 можно вместе соеденить и каждый чето делает - проблема только в синхронизации сигналов… но есть ли смысл? вроде и с псевдо кальманом у народа не плохо летает всё

Covax:

а не производительность.

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

Covax

Да Бог с ним с калманом, я вообще, в масштабах галактики 😃

virtex

короче у меги просто нехватает мощности на калмана …

вобщем пихаю всё в телефон =) … хмм прощай мобильничек P.S. а у него сенсоры уже есть =) да и за такие деньги как всё это стоит можно купит реальный китайский телефон с процессором в 200mhz+ с windows mobile и т д + у него уже есть сенсоры + у него уже есть всё всё что нужно и gprs и т д и смс уведомления о координатах за цену в 7000р

  • usb + флешка + интернет + убогая камера ещё куча интерфейсов …

усё пошол дисплей выковыривать вместе с батареей =)

SovGVD

какой телефон? что пихается? как управляться будет? чето типа андроид+блутуз+ардуинка?

Covax

Парни, идите создайте топик “Коптер из китайского телефона”, пожалейте тему.

SovGVD

ну нафиг =) у меня весь коптер 7-10к, а тут только мозги за 7к, да еще и геморая… лучше 2х мозговый multiwii наковырять (можно кстаии на досуге попробовать, всеравно 2 ардуинки есть, главное определиться что куда напихать)

Volver

Люди, кто нибудь уже использовал PPM SUM на Wii, т.к. хочу соединить только 1 спектрумовский сателлит (т.е. клон от ХК), да ипроводов будет меньше.

Или поделитесь ссылкой на то, что кто-то использовал?

Piranha
Volver:

Люди, кто нибудь уже использовал PPM SUM на Wii, т.к. хочу соединить только 1 спектрумовский сателлит (т.е. клон от ХК), да ипроводов будет меньше.

Дык вроде с сателитом спектрумовским не пашет, я алексу вопрос задавл он сказал что чегото там в мелкой ардуине не хватает 😦

Musgravehill
gena_g:

Исходя из кода программы

Я находил выкладки, по которым тригонометрия multiwii адекватно работает на углах до 25, а потом точность становится “не очень”.

Musgravehill

Starlino (автор алгоритма в multiwii) пишет " the filter in this article can be found it in literature as “complementary filter”.
Нашел пример как раз для коптера и небольшой график. funtik26 Александр Цыплаков писал про переруливание и недоруливание…

Covax

кстати да! помню когда я подключал wm+ и bma020 и не соеденил их жестко друг с другом (или неправильно сориентировал бма) у меня был странный график, именно с переруливанием! сейчас когда мозги готовы, то нет такого.

Панкратов_Сергей
SovGVD:

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

На 5 вольтах - он на 20-ти будет работать. Только совместимость с ардуиной - пропадет. Точнее придется править библиотеку - что не просто.

SovGVD:

надо делать 2х ядерный multiwii, чтобы одна платка просчитывала кальмана, другая занималась управлением и прочими плюшками

Я подобно хотел автопилот организовать для мотопланера. На одном ядре - стабилизация , на другом пилот по точкам.

RW9UAO

PPM_SUM я пробовал. сигнал брал с ассановского приемника, объединял с каналов через диоды. родная мультиви процедурка работает криво, т.к. следит только за нарастанием сигнала, а с приемника не гарантируется одинаковая синхропауза между пакетами. переписал процедуру на работу с обоими фронтами импульсов, работает но как-то криво. забил. пользую мегу128, у нее 8 входов на прерывания.
по поводу правки встроенных библиотек. не так все страшно. 1) в файле boards.txt правим частоту кварца. а уже потом при сильных глюках идем править делители для PWM и системного таймера. сам правил библиотеки под мегу128.