ArduCopter Mega: порт на обычную Arduino (тестим)
Спасибо! Сейчас установлю на бук убунту и попробую. Если не возражаешь, еще немного тебя помучаю, тк в линуксе не очень…
а чем винда не устраивает?
оффтоп: у меня просто релегиозная неприязнь и в целом не любит она меня - ниодного веб проекта успешного (в особенности с другими мелкософтовыми поделками вроде iis и mssql), максимум для игр (и то сохранялки метро 2033 убились вместе с полупройденой гта4)
А высота выдаваемая GPS как-то учитывается? У нас местность горная, взлетел с одной высотой и ни учтя местность, можно в горку впиндюриться.
Тут кто-то уже писал про этот прикол, но найти не получилось.
Проблема такая - компас нормально отрабатывает повороты в планере, но тут же ползет обратно и замирает на исходной позиции. При неподвижном уже коптере естественно.
Главное не так давно, пока с одной платкой игрался - все ок было. Куда копать?
а чем винда не устраивает?
На буке тормозит планер при захвате видео.
но тут же ползет обратно
Я делал CLI-ERASE
На буке тормозит планер при захвате видео.
не уверен что видео в планере в моно под убунтой вообще будет работать =)
бюджетный модуль пишущий на SD есть?
Во во! Схема постом ниже, карточку нужно Микро СиДи с переходником. Переходник припаиваем по схеме, а карточку читаем на компе через другой переходник. Личео у меня карточка для Олимпуса на 2 гига. Валялась я и присобачил. Правда из спортивного интереса, не подумал как то, что и на Коптер можно.
но тут же ползет обратно
У меня такое было из-за магнита вблизи компаса, в gps антенне стоял.
У меня тоже было. На Вие. Победить не смог,сменил платку на Аллинон.
По компасу странно, в прошивке Олега Б8, такого эффекта нет, тобишь дело не в железе…
На буке тормозит планер при захвате видео.
Я делал CLI-ERASE
Сделал erase, прогнал setup заново. Теперь не плывет. НО: если резко дернуть, то компас потом еще пару секунд доплывает до искомого значения. И еще, как мне показалось - постепенно “плывет” вообще. Т.е. направление на север теряет. Кстати вспомнил: пока с голой платкой игрался - не вводил declination и offsets компаса. И оно как-то работало. Похоже на правду. А сейчас настроил и то и другое, и получил такую бяку 😃
Кстати влияния GPS антенны не увидел. Но на всякий случай пока что подальше положил.
не вводил declination и offsets компаса
Я ввожу только деклинейшин, офсет не делал. У меня тоже доплывает, но в полете все нормально
не уверен что видео в планере в моно под убунтой вообще будет работать =)
Блин, а я уже убунту поставил 😃
Т.е. направление на север теряет. Кстати вспомнил: пока с голой платкой игрался - не вводил declination и offsets компаса. И оно как-то работало. Похоже на правду. А сейчас настроил и то и другое, и получил такую бяку
Я ввожу только деклинейшин, офсет не делал.
В Планнере на вкладке HardWare есть изображение компаса с галкой в чекбоксе и значение деклинации. У меня оно 11,3 градуса. Но в таблице слева, где показаны все параметры, это значение деклинации преобразуется в 0,197 единиц. Компас показывает правильно. Поэтому не надо вписывать в таблицу “11,3” - компас с ума сойдет, эти градусы надо вводить справа рядом с картинкой компаса и ссылкой на сайт деклинации.
Я думаю, что оффсет вычисляется автоматически после “колбасни” коптера. Я делаю erase, выставляю все с нуля. Покручу плату во всех направлениях - компас стабильно показывает правильное направление.
Нашел интересные данные, как повысить точность ВМР085 до 1.5 дюйма (во что слабо верится). Вечером испытаю алгоритм, который использует калибровочные коэффициенты и текущую температуру датчика.
Давление в состоянии покоя до и после использования нового алгоритма. Неужели правда(?)
Почему то после установок в Хардвере, хотя данные и запоминаются в таблице (но теряются после перезагрузки, но далеко не всегда) на экране с авиагоризонтом не всегда изменения заметны. Как будто система учитывает только то, что вписано в КЛИ режиме.
И Левел после установки в КЛИ работает, вроде, но стоит в Хардвере нажать на Левел и авиагоризонт перекашивает. Вправо на 35-45 градусов.
Почему то после установок в Хардвере, хотя данные и запоминаются в таблице (но теряются после перезагрузки, но далеко не всегда) на экране с авиагоризонтом не всегда изменения заметны. Как будто система учитывает только то, что вписано в КЛИ режиме.
И Левел после установки в КЛИ работает, вроде, но стоит в Хардвере нажать на Левел и авиагоризонт перекашивает. Вправо на 35-45 градусов.
Тоже замечал такое! В hardware прописывал несколько раз и проверял на refresh. Левел тоже чудит иногда.
Товарищи, через APC220 вообще возможно пиды записывать во время работы коптера?
Мне он пишет ошибку Failed set ИМЯ_ПАРАМЕТРА
А я брал эту фиговину именно с расчетом, что можно будет настраивать не подключая по усб.
он пишет ошибку
Попробуй в другой версии планера. И проверь пиды: у меня ругался, но пиды менял
Напоминаю, что для MegaPiratesNG 2.0.40 подходит планер версии 66 (не выше).
Нашел интересные данные, как повысить точность ВМР085 до 1.5 дюйма (во что слабо верится).
Точные данные получить наверное можно, только вот с какой задержкой, мы их получим?
Почему то после установок в Хардвере, хотя данные и запоминаются в таблице (но теряются после перезагрузки, но далеко не всегда) на экране с авиагоризонтом не всегда изменения заметны. Как будто система учитывает только то, что вписано в КЛИ режиме.
Да, я то же заметил этот косячок в планере. Там совершенно неочевидно, когда деклинейшен записывается в коптер, кнопки “Сохранить” там нету. Возможно деклинейшн записывается, когда мы например PIDы меняем или еще при каких то действиях…
Я тут подумал, что наш дешевый сонар, можно применить разве что для автопосадки. При полетах на низкой высоте, велика вероятность оказаться в земле. Особенно в ветреною погоду. Т.к. при относительно небольшом наклоне коптера относительно земли, сонар перестает работать…
Либо как вариант, на низкой высоте, ограничивать максимальный угол наклона коптера…
Товарищи, через APC220 вообще возможно пиды записывать во время работы коптера?
Мне он пишет ошибку Failed set ИМЯ_ПАРАМЕТРА
Да, проверено много раз! И не только ПИД, но и Левел, деклинацию. Ругается, если в качестве разделителя ставить “,”, а не точку: 2.887
Точные данные получить наверное можно, только вот с какой задержкой, мы их получим?
Используется не фильтрация, а калибровочные данные датчика, текущая температура и MSB, LSB и XLSB.
s = T − 25
x = x2*s^2 + x1*s + x0
y = y2*s^2 + y1*s + y0
z = pu − x \ y, где Pu - измеренное давление без корректировки
p2, p1, p0 - коэффициенты из мат.модели датчика.
P = p2*z^2 + p1*z + p0 = истинное давление.
Да, проверено много раз! И не только ПИД, но и Левел, деклинацию. Ругается, если в качестве разделителя ставить “,”, а не точку: 2.887
Не знаю, как именно планер передает значения, но если в текстовом виде, то тогда понятно откуда ноги растут. В зависимости от региональных настроек винды, числа могу вводится с точкой или запятой. А коптер понимает всегда только с точкой (или с запятой, надо проверить). Поэтому у некоторых людей, наблюдаются глюки с планером (если разделитель не совпадают).
Используется не фильтрация, а калибровочные данные датчика, текущая температура и MSB, LSB и XLSB. s = T − 25 x = x2*s^2 + x1*s + x0 y = y2*s^2 + y1*s + y0 z = pu − x \ y, где Pu - измеренное давление без корректировки p2, p1, p0 - коэффициенты из мат.модели датчика. P = p2*z^2 + p1*z + p0 = истинное давление.
если так, то почему сам датчик не вычисляет давление по этим калибровочным данным?
если так, то почему сам датчик не вычисляет давление по этим калибровочным данным?
не знаю точно. Сказано, что калибровочные данные уникальны для каждого датчика (в его EEPROM хранятся коэффициенты смещения, температурной компенсации…всего 176 бит). Он выплевывает калибровки, raw_ температуру и давление. Остальное - сам, ручками. Наверное, в датчике простая логика, которую не нагружают дополнительными вычислениями.
Кстати, желательно обращаться к датчику с частотой не более 40Гц, лучше 20Гц (50 мс). Если oss=3 (максимальное разрешение), то время обработки запроса 25.5 мс.
Нужно или выставить малое oss и самому фильтровать\усреднять, зато иметь частоту опроса до 128Гц. Или использовать высокое разрешение oss=3, но частота опроса падает.
Температура сенсора используется только для корректировки показаний (она влияет на сам сенсор, а не на давление), поэтому не играет роли, где стоит барометр. Еще, чтоб не забыть: “при делении на степени двойки путем сдвига вправо не мультиплицировал знаковый разряд, а просто посылал туда 0. Это приводило к тому, что отрицательные числа при делении на степени двойки становились положительными! Для положительных чисел все работает нормально. Спасибо, ошибка была вызвана скорее невнимательностью: не привел тип unsigned к signed до вычислений, оставив это компилятору (avr-gcc). И самое удивительное, что при комнатной температуре ошибка почти не проявляла себя.”