MultiWii
Что у вас там не то творится.
Вия заливаю версии 2.3 … Может тут что то не так?
2 Alex1888, возможно у вас что то напутано в файлах прошивки.
Скачайте мультивий заново, удалите старый, разархивируйте новый.
Очистите EEPROM, залейте мультивия по новой.
2 Alex1888, возможно у вас что то напутано в файлах прошивки. Скачайте мультивий заново, удалите старый, разархивируйте новый. Очистите EEPROM, залейте мультивия по новой.
Еще могу посоветовать лить прошивку не через консоль Arduino, а напрямую .hex заливать через программатор например USBasp, он все почистит и нормально прошивку зальет.
Вия заливаю версии 2.3 … Может тут что то не так?
Попробовал 2.3, тоже без проблем.
Очистите EEPROM, залейте мультивия по новой.
Да,да,да это обязательно!
Датчики можно проверить i2c сканером playground.arduino.cc/Main/I2cScanner. Только придется полазить по даташитом на датчики установленные у Вас для выяснения их адресов.
да неправильно реагируют . для начала установите коптер на ровную горизонтальную площадку. откройте MultiWiiConf. ( для этой прошивки) включите примерно 10 секунд его не трогайте Потом калибровка ACC потом калибровка компаса ( крутить на 360 градусов) можно перед началом калибровок нажать сброс (все делается из MultiWiiConf ) Перед заливкой eeprom чистили? коптер мордой на север . приподняли коптер и смотрим( в MultiWiiConf) на компас при вращении по яву как он реагирует. повернули на 90 градусов и компас должен показать поворот на 90 градусов если убегает то скорее всего оси X и Y не совпадают.( надо несколько раз попробовать от калибровать) при наклоне вперед ( по питчу) как реагирует горизонт (при наклоне вперед полоска горизонта уходит ввверх) и компас ( не должен убегать) . если все адекватно то тогда арминг газ на половину выставить что бы нагляднее было видно. и наклоны в конфиге при наклоне вперед переднии движки убыстряются ( импульс увеличивается) смотрим в конфиг и слушаем звук от движков. все это удобнее проделывать через блютуз. если в конфиге правильно реагируют а ускоряются не те движки то ошибки в разводке платы.
Собственно поигрался я со своим коптером. Выяснил следующее:
- Коптер правильно реагирет на стики, правильно запускает обороты двигателей.
https://youtu.be/aTiAJbWXbJg - В GUI тоже правильно реагирует на наклоны, горизонт плавает в нужные стороны.
- Подключение двигателей тоже правильное, на слух они правильно реагируют на стики.
и 4-ое двигатели никак не реагируют на гироскоп.
https://youtu.be/uX9cBG0fpxA
Компас и гироскоп откалибровал. Не помогло.
Датчики можно проверить i2c сканером
Так это вроде как раз и находит адреса устройств а не проверяет сами устройства. Или я не понял, тогда можно подробнее.
4-ое двигатели никак не реагируют на гироскоп
У вас на видео сильная трясучка. Сделайте тоже самое только с четкой фиксацией по наклонам.
P.S. Все равно не понимаю зачем вам раскоментировнные дефайны. Плата да, самодельная. Но датчики стоят в одной плоскости по одной оси. Плата наверняка лежит а не стоит.
Датчики можно проверить i2c сканером playground.arduino.cc/Main/I2cScanner. Только придется полазить по даташитом на датчики установленные у Вас для выяснения их адресов.
Тож прошу объяснить. И куда эти адреса потом вводить?
Я так залил этот сканнер на Crius - получил “i2c devices not found”.
Так это вроде как раз и находит адреса устройств а не проверяет сами устройства
Именно, надо ведь хотя бы понимать видит ли плата датчики или нарушен где-то контакт.
Тож прошу объяснить. И куда эти адреса потом вводить? Я так залил этот сканнер на Crius - получил “i2c devices not found”
Их вводить никуда не надо, просто сравнить с даташитом что-бы убедиться что полетник правильно видит правильные датчики. То что он их не видит - печаль, надо искать почему.
У вас на видео сильная трясучка. Сделайте тоже самое только с четкой фиксацией по наклонам. P.S. Все равно не понимаю зачем вам раскоментировнные дефайны. Плата да, самодельная. Но датчики стоят в одной плоскости по одной оси. Плата наверняка лежит а не стоит.
К сожалению у меня нечем его зафиксировать по осям.
Да, датчики то на одной оси, но они не правильно расположены. Например наклоняешь коптер вперед, а в GUI горизонт уходит вправо. Поэтому мне и пришлось изменять оси вращения.
Мне не понятно почему двигатели не реагируют на гироскоп? Ведь в GUI все датчики нормально отрабатывают.
получил “i2c devices not found”.
Да это плохо! Должен писать найден на таком то порту, найден на таком то порту. Поскольку терять уже нечего рекомендую всё же разобрать и работать с голой платой, возможно влияние внешних устройств. Кстати, вот на вашем скрине почему газ на 40%?
Мне не понятно почему двигатели не реагируют на гироскоп? Ведь в GUI все датчики нормально отрабатывают.
Не знаю как реализованно в гуи отображение работы моторов но могу сказать, я сечас у себя смотрю, если крутит так как вы крутите то тоже нифига не понятно. Понятно только после фиксации с заданным углом, даже не большим.
но они не правильно расположены
Ну а просто плату на 90 градусов повернуть?
Ну вот что то начинает получаться. Я отключил компас и оставил только одну строчку:
#define ACC_ORIENTATION(X, Y, Z) {accADC[ROLL] = -Y; accADC[PITCH] = -X; accADC[YAW] = Z;}
Остальные закомментировал. Коптер начал взлетать:) перестал переворачиваться, но при этом он постоянно вращается параллельно полу и его сносит в одну сторону. Это из-за отключенного компаса?
но они не правильно расположены
У меня датчики расположены в разные стороны, поэтому поворот платы не исправит проблему.
Это из-за отключенного компаса?
Нет, просто летать компас нафиг не нужен.
И если у вас направление осей не совпадает поидее нужно X|Y местами менять не +/-
Нет, просто летать компас нафиг не нужен.
А из-за чего вращение? Нужно калибровать акселерометр? Я думал что за положение коптера в пространстве отвечает компас.
Да это плохо! Должен писать найден на таком то порту, найден на таком то порту. Поскольку терять уже нечего рекомендую всё же разобрать и работать с голой платой, возможно влияние внешних устройств. Кстати, вот на вашем скрине почему газ на 40%?
40% - наверное, просто стик был поднят в это время…
Короче, все отсоединил, подключил голую плату к компу, и… все приборы работают, i2c ошибок нет! Чудеса? 😃
А также:
I2C device found at address 0x1E !
I2C device found at address 0x68 !
I2C device found at address 0x77 !
А я уже боялся, что спалил что-то походу:)😃
Короче, все отсоединил, подключил голую плату к компу, и… все приборы работают, i2c ошибок нет! Чудеса?
Встречал я такие “чудеса”. Собираешь системный блок компьютера, все засунул в корпус, подключил, запускаешь и ничего не работает. Все вытаскиваешь и собираешь просто на столе и все работает:) Короче просто микротрещина в плате. При установке в корпус происходит деформация платы и контакт пропадает. Поэтому я и говорил что нужно прозванивать дорожки. С такой платой не хорошо летать.
Я думал что за положение коптера в пространстве отвечает компас.
Компас только помогает и всякие там хендс фри обеспечивает. Крутит обычно из-за кривого железа. Если крутит не сильно, можно триммировать. Если сильно смотреть лучи, моторы. Я летаю без компаса. Активирую только вместе с хендс фри.
Короче, все отсоединил, подключил голую плату к компу, и… все приборы работают, i2c ошибок нет! Чудеса?
А я вам на это уже не раз намекал.
С такой платой не хорошо летать.
Может, BEC регуля неправильное напряжение какое-то подает?
А я вам на это уже не раз намекал.
Ну ок, только пока непонятно, куда копать дальше 😃.
Встречал я такие “чудеса”. Собираешь системный блок компьютера, все засунул в корпус, подключил, запускаешь и ничего не работает. Все вытаскиваешь и собираешь просто на столе и все работает Короче просто микротрещина в плате. При установке в корпус происходит деформация платы и контакт пропадает. Поэтому я и говорил что нужно прозванивать дорожки. С такой платой не хорошо летать.
Тут не факт. Такие “чудеса” тож часто ловил в частности на сборке компов. Но частенько они из разряда западло. Когда хочешь сделать всё красиво и аккуратно отвлекаешься от технической стороны. А иногда это просто наказание “свыше” за то что все собрал окончательно, не проверив перед “упаковкой”.
Ну ок, только пока непонятно, куда копать дальше .
Думаю нужно подключать поэлементно и проверять на каждом этапе. Может есть какие косяки, типа развязки по питанию.
Может, BEC регуля неправильное напряжение какое-то подает?
Он может его просаживать. Нужно мерить.
Ну ок, только пока непонятно, куда копать дальше .
А что тут не понятно? Если на столе все работает, то ставьте на коптер и начинайте постепенно подключать всех потребителей и смотреть, анализировать. Сначала просто контроллер пустой подключить ипосмотреть, потом двигатели, потом приемник.
Тут не факт. Такие “чудеса” тож часто ловил в частности на сборке компов. Но частенько они из разряда западло. Когда хочешь сделать всё красиво и аккуратно отвлекаешься от технической стороны. А иногда это просто наказание “свыше” за то что все собрал окончательно, не проверив перед “упаковкой”.
Да, и начинаются танцы с бубном. Фаза луны не так совпала:)
Думаю нужно подключать поэлементно и проверять на каждом этапе. Может есть какие косяки, типа развязки по питанию.
Сейчас BEC померил, вроде дает как надо, ок. 5V. К сожалению, точнее не могу китайским ширпотребом замерить.
А не подскажете, одновременно подключать питание от регуля и к компу по USB можно? Извините за дурацкий вопрос.
А не подскажете, одновременно подключать питание от регуля и к компу по USB можно? Извините за дурацкий вопрос. Сейчас BEC померил, вроде дает как надо, ок. 5V. К сожалению, точнее не могу китайским ширпотребом замерить.
Не желательно. Питание лучше подавать от чего нить одного. И BEC лучше под нагрузкой измерьте.