PIXHAWK PX4 Autopilot еще одна летающая железка

karadjia

Молодец, запустил.Но насколько я помню GPS_CHECK это тип проверки перед запуском. И ставя 200 Вы просто маскируете изначальную проблему или комплекс проблем. Поверьте это, рано или поздно, сыграет с Вами злую шутку. Рекомендую выставить дефолт значения проверок арминга и все таки посмотреть в messages что мешает глобально. И попытайтесь все это исправить.
Косяк в прошивке - запросто может быть. По 3.4.6 (если не ошибаюсь с номером) вообще много нареканий по различным форумам проскакивает. Меняйте на последнюю стабильную. Хотя лично я пересел на DEW вариант. Там много плюшек коих нет в стабильной. (Тот же RPM фильтр, что очень меня порадовал своей работой). По компасу - это отдельная песня. У меня включен только внутренний. Внешний зимой безбожно глючил постоянно. То температура ему низкая, то просто на ровном месте, то хр…ен его откалибруеш. Модуль NEO 8M. Забил на это и летаю только на внутреннем. Если есть подозрения на I2C то переезжайте на GPS порт полностью. Освободите I2C и заодно проверите модуль GPS
ППС. В большинстве случаев (по форумам инфа) COMAND REJECTED BY MAV решается с помощью “разборок” с GPS а не компасом.

Мечтатель

Спасибо большое! Похоже буду использовать только внутренний компас. В более поздних прошивках моторы совсем отказываются калиброваться.

karadjia

Так там все по другому с калибровкой. Какие ESC используете (марка)? Стукнись в телеграмм - быстрее подскажу.

Cossack
Мечтатель:

Ура! Моторы запустились. Путем увеличения погрешности GPS <EK2 check scale> установив параметр 200%.Но радость моя была не долгой.Моторы армятся только только при отключенном ARMING CHECK. Пишет error compase variance. Компас 1(внешний) вообще не хочет колиброватся При попытке калибровки вообще не появлятся зеленая полоса. Крутишь вертишь а толку ноль.Вопрос: бывает ли такое что косяк в прошивке или порт I2C не работает? GPS в помещении ловит до 15 спутников.

Не надо путать зелёное с квадратным! GPS работает на SERIAL порту, компасы по I2C! Если компас не калибруется, варианты: 1. он физически умер; 2. На шине I2C два устройства с одним адресом. 3. Если компас совмещён с GPS модулем, не забывать, что питание, как правило, подаётся через разъём GPS, пины 1 и 6, если нет питания на GPS? соответственно, и компас без питания…

karadjia
Мечтатель:

Может китайцы SDA и SCL перепутали. Придется разбирать.

А зачем разбирать? (это если решили корпус M8N разбирать). Достаточно просто местами поменять провода на разьеме I2C
Ну и выложите все таки лист сообщений из меседжера (в МП вкладка) или еще лучше сообщения и лог когда все это происходило (с компасом). А то гадаем тут … Вон Виктор предположил-написал про питание GPS и компаса… (а спутники то ловит судя по Вашим словам постами выше). ППС. У Вас на вкладке компас в МП видно 2 компаса? Один 303 и второй на шине I2C должен (тот который внешний). Ну и еще. Если бы были перепутаны SDA и SCL то как бы полетник увидел внешний компас и соответственно дал его калибровать? На I2C два одинаковых устройства… опять с индификатором компаса в МП ничего бы не получилось (по моему).
Лог и лист меседжера в студию.
И поставьте посвежее чем 3…6 прошивку. Смысл Вам за нее держаться? не вижу абсолютно. Одни минусы в виде отсутствия новых возможностей и исправления старых багов.

karadjia

Есть вопрос. Pixhawk 2.4.7 на DEW 4.1.0 Поставил и настроил RPM фильтр. Все работает вроде бы. Попробовал полетать и по FPV получил вот такие сообщения


и потом

Я так понимаю что это что-то с кайманом и показанием датчика. Помогите разобраться. Вот лог полета. Реальный полет с 09:27:42 до 09:40:56 Время вывода сообщений 09:40:39 - 09:40:56. Все что с 09:48:19 это уже на земле после приземления события.
Вот лог полета www.mediafire.com/file/pgyzlflynarsf6p/…/file

karadjia
kasatka60:

может dev версия?

Таки да - очепятка. Читать нужно dev 4.1.0 версия

Мечтатель
karadjia:

Так там все по другому с калибровкой. Какие ESC используете (марка)? Стукнись в телеграмм - быстрее подскажу.

Иван , Спасибо большое за отклик на мои вопросы!Перепрошил на крайнюю прошивку, теперь компас калибруется, а ESC ни в какую. ESC LittleBee 30a BLHeli S

karadjia

ESC, сами настройки внутренние, удобно калибровать (вернее настраивать параметры самих регулей - это напишу завтра) через прогу BlHeli. Для этого заходиш на сайт арду и читаеш что нужно сделать и что скачать. Сори - комп заглючил и чет не хочет копировать, а писать ссылки вручную еще то… Просто идеш на ардукоптер и набираеш BlHeli в поисковике. и читаеш. Но перед этим стоит привести все подключения ESC к божескому виду.

  1. У тебя ESC BLHeli S. Они умеют DShot протокол. Это новые протоколы и с ними коптер летает, просто сказано без подробностей, намного стабильнее,плавнее… Какой DShot протокол крайний для твоих регулей - набери в гугле модель регулей и посмотри. Для твоих скорее всего крайним будет DShot 600. запоминаеш или записываеш.
  2. Наши пиксы не работают с DShot по классическим выходам. По инструкции ты подключил по классике регули в 1-4 порты (servo1-servo4) эти порты работают только с оншотом. Если нужно работать с DShot то поты с servo9 до servo14 (aux1 это servo9 и так далее по возрастанию номера идут) Подключаеш свои регули как и в случае с класикой 1-2-3-4 регули подключаеш на aux1-2-3-4 )выхода на пиксе в белой рамке)
  3. Идеш в параметр лист и ищеш параметр servo(1-4)_functions. Там стоят значения указывающие на номер мотора. Просто запомни или запиши их. И потом поставь там 0 (убери привязку к моторам). Ну и теперь заново пропиши-привяжи моторы уже к servo(9-12)_functions везде поставив номера моторов в порядке как для 1-4 (записывал-запоминал) Прописывать только номера моторов и не трогать остальные параметры этих servo
    Все - можеш идти на вкладку setup и пробовать мотор тест - проверить работу.Не забудь перед проверкой активировать сафети свитч (кнопка на самом коптере) иначе тест не запустится 😃 Если работает - то идеш на вкладку esc calibrations. выбираеш свой протокол DShot и жмеш там calibrate esc. далее отключаеш от коптера USB шнур и акб и заново подключаеш только акб. И сразу нажимаеш и держиш кнопку (на коптере) сафети свитч (та что с лампочкой) через секунд 10-15 будет долгий сигнал секунд 5 примерно. Короче держиш кнопку пока не прекратятся сигналы и потом для контроля еще секунд 10 (там будет длинный -калибруются регули и потом через пару секунд может быт короткий - типа принял настройки) А может короткого и не быть - все зависит от твоих регулей и их прошивок. У меня на моих razor только длинный.
    Все - ты регули откалибровал.
    Там еще можно прошивать и настраивать регули через прогу но это уже завтра напишу. Пока сделай подключение и калибровку.
    ППС. Да - написал много и тебе конечно страшно. Но поверь - там нет ничего страшного а результат поверь стоит того что бы заморочится.
    И еще у Вас можно прошить двусторонний Dshot, тем самым подняв телеметрию. И потом настроить RPM фильтрацию. Поверьте это вообще бомба функция. Себе поставил - тряска и прочее ушли сразу. Коптер летает намного стабильнее даже чем просто с DShotom
Shuricus

Многа букаф - а результат один. Дшот не подлежит калибровке.

karadjia

Дык и не надо калибровать (что калибровать то если в понимании простого PWM). Их нужно “инициализировать” и все. Я написал выше КАК переключится на новые протоколы и “уйти” от старых нонейм и оншотов. Ну если очень нужно откалибровать (читаем инициализировать-подключить) PWM то делаем во вкладке калибровки ESC тоже самое только выбрав протокол Normal вместо DShot. И естественно не заморачиваемся с переключением серво выходов на полетнике и потом их настройкой. А настройки регулей правятся и выставляются в проге от BlHeli. Время “пиков” прошло уже давно 😃 тем более для настроек BlHeli ESC. Там “заблудишся” по пикам с их реверсами, размагничиванием, и частотой шины 😃 Для “особенных” в мануале на реги есть и эти заветные “пики” и как с ними работать. Но лично мне анунах эти пики. Проще прога.Тем более что там и прошивки обновить можно сразу.
Вот тут про настройку через полетник. Правда там для 32 BlHeli и будет ли это работать (прога а не настройки) с обычным BlHeli s не знаю - надо самому пробовать. Естественно нужно запускать прогу для своих ESC. ardupilot.org/copter/docs/common-dshot.html и ardupilot.org/…/common-blheli32-passthru.html и телеметрию включить на полетнике ardupilot.org/…/common-dshot-blheli32-telemetry.ht…
Вот тут примерно показано как прошить двухсторонний DShot и запустить телеметрию на ESC. Ну и потом RPM фильтр

Сопоставив инфу по включению телеметрии на арду с инфой видео с ютуба (ссылка выше) можно запустить RPM фильтр. Тем самым прийти к искомому желанию не покупая дорогие 32 esc

Мечтатель

Доброе утро всем! Вообщем закрутились моторчики , причем как таковой ( в смысле проигрыша мелодии)калибровки не было. На регулях мелкими буквами написано DShot.хотя сигнольные провода подключены через аналоговый выход и протокол указал OneShot 125. Главное закрутилтсь! Буду дальше настраивать.Всем огромное спасибо. Особенно Иван тебе.Всем добра!

karadjia

Да не за что. Кстати - привязку движков можно делать без МП и компа. Просто передернул акб и процедура с нажатым сафети свитч. И все - привязку сделаеш.
Сергей. У тебя регули подключены в 1-4 серво выходы (разьем помеченный 1-8) или 1-4 AUX выходы (разьем помеченный 1-6)?. дело в том что, уже писал выше постом, на 1-4 серво DShot не работает. Это особенность наших пиксов и про это сказано в арду мануале.А твои регули прошиты 14 прошивкой (если не ошибаюсь и не изменилось что-то). Она заточена под DShot. И даже выбрав DShot в калибровке ESC в МП ты все равно останешся на PWM. Хотя МП тебе покажет что типа да - стоит DShot (эт если ты вернешся назад на вкладку калибровки то там увидиш выбранный тобой ранее режим. Дело в том что эти регули САМИ решают на каком протоколе им работать и начинают проверять этот протокол от высшего к низшему. И активируя ESC привязку на полетнике (сафети свитч + акб) ты подключаешся к протоколу который выдает порт полетника. А вот порт ты настраиваеш через МП . И тут как раз этот ньюанс порты серво с 1 по 8 работают только с PWM. Что бы понять как это то вот пример. Ты выбрал DShot 600 а сервовыход может давать только PWM или оншот. Твой ESC инициализирует протокол в момент когда ты передернул акб и зажал сафети свитч. И он подключится к тому протоколу который будет на этом порту выставлен и какой протокол этот порт может дать в данный момент. А это будет PWM или оншот максимум. И плевать им обоим, регулю и порту, на буковки DShot в МП которые ты выставил.
ППС. Сам так пол года летал на оншоте а думал 1200 DShot работает. Пока не зацепился по телеметрии и вроде бы все выставил по мануалу а оно (телеметрия и настройка через BlHeli конфигуратор не работала) и на телеграме один человек не ткнул носом в не правильное подключение ESC
По RPM фильтру - задумайся про его установку-активацию. В качестве плюшек получиш “по фигу” (для полетника а не для подшипников моторов конечно) балансировку пропов, движков, дребезг рамы, желе на видео полетной камеры. Все это уберет RPM. Поверь - оно того стоит. Тем более пока коптер находится в состоянии сборки и поменять местами разьемы не составляет большого труда.

karadjia:

Есть вопрос. Pixhawk 2.4.7 на DEV 4.1.0 …понимаю что это что-то с кайманом и показанием датчика.

Пока отвечаю сам себе и может кому пригодится. Виновник сего помирающий баро датчик. Пока сливал логи и “готовился с духом” баро сдох окончательно и заблокировал все датчики и I2C тоже. Замена на рабочий баро с АРМ оживило все. Пока екф молчит. Сегодня на даче полетаю, а там посмотрим - решил проблему или нет.

karadjia

Упустил, забыл, главное по DShot двухстороннему. Дело в том что для его реализации нужна отдельная прошивка. В мастере для некоторых моделей ее уже выложили на гюнсхабе. Но для Pixhawk1 или fmuv3 ее пока нет. И реализовать телеметрию на этих пиксах и дешевых BlHeli-S регуляторах пока не получится. Но это пока, выложат со временем прошивки. Пока из ближайших сородичей выложили для пиксрейсера. А вот нормальный DShot запустить на ESC и пользоваться уже можно. Плюс пробросить (подготовить) функции BlHeli тоже. Вроде бы мелочь - управление и настройка параметров ESC но, блин, когда с этим сталкиваешся (перенастроить ESC, обновить прошивку) на уже собранном коптере то руки опускаются когда подумаеш про разборку аппарата, отпайку-отсоединение ESC, программаторе…
Ну и по посту выше про настройку протокола управления ESC. Проверить какой порт что выдает по протоколам просто. Открываеш МП и на вкладке messages видиш такую строку

Где видно что для 1-8 порта активен-выдается PWM протокол а для 9-12 выдается DS1200 (DShot 1200). Соответственно если ESC инициализированы то работают тоже на протоколах порта (к какому они подключены). Это для моего сетапа так. Для Вашего это будет по другому. Вот по этим данным Вы точно будете знать на каком протоколе работает Ваш ESC в текущий момент.
А так работает RPM фильтр без точных доводок и поправок. Рама DJI-450 (говнопластик), движки 2212, пропы 9545. Движки и пропы балансированы.
Это без RPM полет (PosHold mode)

Это c RPM полет (PosHold mode)

Еще по RPM фильтр и рамы с 450+. Болезнь коптеров - расколбас при быстром снижении (1 и более метров в сек) Да - убирается пидами и прочим но убирается не полностью. C RPM и на стоковых пидах у меня расколбас ушел полностью. Правда пока снижаться вертикально выше 3 м/сек не пробовал (летун моя еще не опытный 😃 )

Cossack

Всем привет! Завалялся у меня сенсор GY-US42v2 (ультразвуковой дальномер), решил к пиксу подключить по i2c и использовать в качестве высотомера. Установил на коптер, подключил, как RANGEFINDER1 в соответствии с ardupilot.org/…/common-rangefinder-gy-us42.html, настроил параметры. Верчу коптер в руках- расстояние до препятствия определяется нормально, взлетаю - получаю показания, соответствующие RNGFND1_MIN_CM (т.е. ноль). Что не так? Кто-нибудь подключал подобное?

22 days later
suris2009
egunak95:

Проверка работоспособности цифрового датчика воздушной скорости MS4525DO с преобразователем уровней PCA9306 dual bidirectional I2C−bus voltage−level translator. Поскольку интефейсы I2C полётного контроллера Holybro Pixhawk 4 работают с уровнями сигнала 3,3 В, а цифровой датчик MS4525DO на 5 В, необходимо применить транслятор уровней. Для проверки использована Raspberry 3, через которую можно узнать адрес MS4525DO. Уровень сигнала транслятора на контактах SCL и SDA измерялся по осциллографу. Определён адрес MS4525DO 0х28Н, уровень сигнала 3,3 В. Ссылка видео:

Digital airspeed sensor 4525D 5 with PCA9306 dual bidirectional I2C−bus voltage−level translator

Добрый день. Насколько актуально ставить преобразователь сигналов? У меня тоже Holybro Pixhawk 4 и датчик скорости MS4525DO. MS4525DO нормально работает и калибруется без преобразователя. Или преобразователь влияет на долговечность и стабильность работы Holybro Pixhawk 4 ?

egunak95

Об актуальности транслятора уровней даже не думал, на работе сказали ставь я и поставил, однако для стабильной работы лучше проверить на отсутствие выбросов по уровням, также всё зависит на какою длину устанавливается датчик. По-любому если сделать правильно по схемотехнике можно избежать ошибок по I2C

Если посмотреть схемы старых АПМ2 там стоят трансляторы уровней, зачем они нужны наверное разработчики посчитали что надо

Об актуальности транслятора уровней даже не думал, на работе сказали ставь я и поставил, однако для стабильной работы лучше проверить на отсутствие выбросов по уровням, также всё зависит на какою длину устанавливается датчик. По-любому если сделать правильно по схемотехнике можно избежать ошибок по I2C

Если посмотреть схемы старых АПМ2 там стоят трансляторы уровней, зачем они нужны наверное разработчики посчитали что надо

Вот схема транслятор в красном кружке