Runtime calibration inav что это

Обновлено: 06.07.2024

ДИСКЛЕЙМЕР
Во многих аспектах, данная статья выражает субъективное мнение автора. Спорить с ним бесполезно, он упёртый.

Настраивать ранние версии было достаточно сложно, так как использовался Cleanflight Configurator, в то время как по коду iNAV уже очень сильно отличался от прародителя и бОльшую часть команд надо было вводить через CLI. Позднее (примерно, в августе 2016) iNAV обзавёлся собственным конфигуратором iNAV Configurator, что заметно упростило первичную настройку. Также iNAV обладает подробной документацией, часть которой переведена на русский:

Последняя версия прошивки на сегодняшний день - 1.5 и именно её я рассматриваю в данной статье. Далее мои варианты настроек с пояснениями.

Вкладка Setup

Здесь производится калибровка датчиков и именно с неё и надо начинать. Начиная с версии 1.5, в прошивку добавлена неотключаемая "защита от дурака", не позволяющая запустить двигатели, если не откалиброваны компас и акселерометр. Процесс очень доступно описан на этой странице. Компас лучше калибровать на улице, где меньше помех. Делается это, как и в Cleanflight, переводом левого стика передатчика в верхний правый угол, а правого - вниз. Квадрокоптер при этом должен быть не заармлен.

Вкладка Ports

Минимум изменений: включил MSP для порта UART3 и GPS для UART2. Скорость для GPS выбрал 57600 (или 19200 при использовании softserial, но такое подключение не рекомендуется).

iNAV Configurator, вкладка Ports

iNAV Configurator - Ports

Вкладка Configuration

Здесь настроек много, чтобы было проще, разделю их по блокам.

ESC/Motor Features

  • Включил опцию "Enable motor and servo output". Это своего рода защитный механизм, вообще отключающий моторы, чтобы поберечь сервы на самолётных моделях.
  • Выбрал протокол регуляторов ONESHOT125 и частоту обновления 1кГц.
  • Отключил MOTOR_STOP, чтобы моторы всегда вращались в заармленном состоянии.
  • Включил опцию "Disarm motors regardless of throttle value", так как буду делать арминг моторов на отдельном канале. Она позволяет дизармить моторы независимо от уровня газа.
  • Уменьшил значение "Minimum Throttle" до 1050. Это обороты холостого хода, подбирал субъективно.

Sensors

Здесь ничего не менял, прошивка сама распознала мои датчики.

Board and Sensor Alignment

Указал, что мой ПК повёрнут на 90 градусов по оси yaw. Корректность этого параметра потом можно проверить во вкладке Setup. Компас у той модели U-blox NEO-M8N, что использую я, бывает повёрнут на 270 или 180 градусов. Кроме того, он расположен на нижней части платы, что тоже надо учитывать. Так что для компаса надо выбирать CW270 FLIP или CW180 FLIP.

Battery Voltage

Включил опцию "Battery voltage monitor" для активации индикатора заряда батареи. Остальные параметры я не менял, так как показания заряда соответствуют действительности. Если же в них есть погрешность, её можно убрать настройкой "Voltage Scale".

Reciever Mode

Выбрал протокол радиоприёмника RX_PPM.

  • Активировал GPS, включив опцию "GPS for navigation and telemetry".
  • Установил UBLOX в качестве протокола.
  • Задал угол магнитного отклонения. Узнать его для своего местоположения можно здесь.

Other Features

Активировал только одну опцию - "Multi-color RGB LED strip support".

iNAV Configurator, вкладка Configuration

iNAV Configurator - Configuration

Вкладка Failsafe

О нюансах и настройке этого режима на приёмнике и ПК, я подробно писал тут. В данном случае кое-что изменилось. Во-первых, iNAV предлагает ещё один сценарий поведения - RTH (он же "Return To Home"). Во-вторых, мой новый приёмник Turnigy TGY-iA6C не такой "умный" и не передаёт на ПК сигнал о потере связи. Единственное, что он умеет - эмулировать предустановленные положения стиков/тумблеров. Поэтому единственный вариант настройки в моём случае - назначить Failsafe, как полётный режим, и активировать его на приёмнике при потере сигнала. У себя я это сделал на канале AUX4, к которому не привязан ни один тумблер. Подробности уже писал.

В итоге из настроек я только активизировал "Failsafe Stage 2" и выбрал сценарий RTH в "Failsafe Procedure". Важно, чтобы в разделе "Channel Fallback Settings" для Throttle было установлено значение Hold, иначе ПК будет вырубать моторы.

iNAV Configurator, вкладка Failsafe

iNAV Configurator - Failsafe

Вкладка Modes

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


Если какой-то из сенсоров не обнаруживается, из списка полётных режимов исчезнут те, которые этот сенсор используют. Например, без барометра не будет режима ALTHOLD, а без GPS - режима POSHOLD. Для начала кратко о некоторых из режимов.

  • ANGLE - режим со стабилизацией, для которого можно задать максимальный допустимый угод наклона ЛА.
  • HORIZON - тоже стабилизация, но предполагающая более агрессивное управление.
  • AIRMODE - вспомогательный режим, пришедший из Betaflight.
  • POSHOLD - удержание позиции по GPS.
  • ALTHOLD - удержание высоты по барометру. Важный нюанс: "целевая" высота (которую квадрокоптер будет пытаться удерживать) запоминается при активации режима, а не при арминге. Кроме того, стик газа в этом режиме контролирует не газ, а вертикальную скорость с висением на 50% газа. Учитывая всё это, не стоит взлетать в этом режиме.
  • MAG - удержание курса по компасу.
  • HEAD LOCK - более жесткое удержание курса без использования компаса (актуально только для трикоптеров и, возможно, самолетов классической схемы).

В ранних версиях iNAV режимы удержания высоты и позиции не были самостоятельными и их надо было добавлять к ANGLE или HORIZON. Сейчас они самодостаточны, но, тем не менее, я всё же включу ANGLE и AIRMODE. Дело в том, что при первом полёте у меня не включился POSHOLD (как предположил Константин, была ошибка компаса) и я получил режим ACRO.

Переключателя режимов у меня два трёхпозиционных, но управляющих одним каналом (AUX1). Это даёт мне возможность настроить до пяти режимов или их комбинаций, чем я и воспользовался:

  • ANGLE - для взлётов и посадок
  • ANGLE + AIRMODE
  • POSHOLD + ANGLE + AIRMODE
  • POSHOLD + ALTHOLD + ANGLE + AIRMODE
  • ALTHOLD + ANGLE + AIRMODE - основной полётный режим

Также я повесил на тумблеры арминг (AUX2) и пищалку (AUX3), а Failsafe на "безтумблерный" AUX4.

Пара слов о приоритетах режимов. Наивысший, разумеется, у Failsafe, далее идёт RTH, третим - WP, и затем уже режимы вроде POSHOLD и ALTHOLD. AIRMODE в отличии от Betaflight, здесь не имеет приоритета над MOTOR_STOP. То есть, если MOTOR_STOP включен, моторы в любом случае будут останавливаться при нулевом газе.

iNAV Configurator, вкладка Modes

iNAV Configurator - Modes

Вкладка LED Strip

Тут всё очень субъективно. Для своего квадрика я настроил подсветку синего цвета с эффектом Larson Scanner.

Подсветка с эффектом Larson Scanner

Вкладка Sensors

Настраивать тут ничего не надо, но вот проверить работу датчиков можно. В первую очередь, барометра. Единственное, что надо знать - барометр начинает отображать данные только после арминга, а до этого высота принудительно подтягивается к нулю. Сделано для того, чтобы высота "дома" всегда нулевой.

Вкладка CLI

Несмотря на удобный конфигуратор, здесь тоже предстоит кое-что сделать. Для начала надо откалибровать каналы. Я уже писал как сделать это на передатчике, но, как оказалось, лучше делать это в прошивке ПК. Итак, сперва надо во вкладке Reciever посмотреть и запомнить крайние показатели всех четырёх каналов управления. Например, они такие:

roll 1050 - 1950
pitch 990 - 1992
yaw 990 - 2015
throttle 1070 - 1980

Затем нужно сообщить эти диапазоны прошивке. Делается это следующими командами:

rxrange 0 1050 1950
rxrange 1 990 1992
rxrange 2 990 2015
rxrange 3 1070 1980

Крайние точки теперь настроены, а вот центральные всё равно придётся настраивать на передатчике. Далее я ввёл некоторые настройки, адаптированные для маленьких рам. Их список находится здесь.

set p_pitch = 55
set i_pitch = 40
set d_pitch = 15
set p_roll = 55
set i_roll = 40
set d_roll = 15
set p_yaw = 90
set i_yaw = 45
set d_yaw = 20
set p_level = 20
set i_level = 15
set d_level = 75
set gyro_lpf = 256hz
set tpa_rate = 10
set tpa_breakpoint = 1650
set looptime = 1000
set gyro_sync = on
set gyro_sync_denom = 8

Опытным путём (то есть, в поле) надо определить газ висения и задать как значение переменной nav_mc_hover_thr. Оно будет использовано в режиме ALTHOLD. Если фактический газ висения будет отличается от заданного, то при активации режима удержания высоты, квадрокоптер будет сильно просаживатся или подпрыгивать.

Чтобы квадрокоптер армился в любом положении (даже вверх ногами), надо прописать:

set small_angle = 180

В iNAV много внимания уделено всевозможной защите. Выше уже упоминалась блокировка запуска моторов при неоткалиброванных датчиках. Кроме этого, есть переменные inav_gps_min_sats и nav_extra_arming_safety. Первая отвечает за минимальное количество спутников GPS, которые надо "поймать" для арминга, вторая разрешает/запрещает арминг при полном отсутствии сингала GPS. В процессе настройки, зачастую полезно отключить nav_extra_arming_safety, но потом надо не забыть включить обратно.

Ещё одна интересная переменная - nav_user_control_mode. Она отвечает за то, как будут интерпретироваться pitch/roll в режиме POSHOLD. Её значение по умолчанию ATTI - правый стик контролирует угол наклона коптера как в режиме ANGLE. Также возможен вариант CRUISE - правый стик контролирует скорость и направление полета. Я предпочитаю ATTI.


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

Я же сам начну перевод с наиболее слабо освещенного раздела - микширования. Как установить прошивку, подключить и настроить дополнительное оборудование, отладить ПИДы - все это можно найти, а вот как настроить экзотические конфигурации - информации на русском практически нет.
Итак, поехали.

Микширование.
iNAV поддерживает несколько конфигураций микширования, а также пользовательские микшеры. Конфигурации микшеров определяют, как сервомоторы и двигатели будут реагировать на сигналы управления.

Конфигурация.
Чтобы использовать встроенную настройку микширования, вы можете использовать графический интерфейс конфигуратора. Он включает в себя изображения различных типов летательных аппаратов, чтобы помочь в правильном подключении. Дополнительную информацию о графическом интерфейсе см. В разделе «Конфигурация» документации.
Вы также можете использовать интерфейс командной строки (CLI) для установки типа ЛА:
Используйте список микшеров, чтобы просмотреть поддерживаемые варианты.
Выберите микшер. Например, чтобы выбрать настройку трикоптера, используйте микшер TRI.
Не забудьте дать команду save для сохранения изменений.

Стандартные типы микширования
Название Расшифровка Моторы Сервоприводы
TRI Трикоптер M1-M3 S1
QUADP Квадрокоптер + M1-M4 None
QUADX Квадрокоптер Х M1-M4 None
BI Бикоптер (правый/левый мотор) M1-M2 S1, S2
GIMBAL Управление подвесом камеры N/A S1, S2
Y6 Гексакоптер Y6 M1-M6 None
HEX6 Гексакоптер + M1-M6 None
FLYING_WING Летающее крыло (элевоны) M1 S1, S2
Y4 Квадрокоптер Y4 M1-M4 None
HEX6X Гексакоптер X M1-M6 None
OCTOX8 Октокоптер X (сдвоенные моторы) M1-M8 None
OCTOFLATP Октокоптер + M1-M8 None
OCTOFLATX Октокоптер Х M1-M8 None
AIRPLANE Классический самолет; Ax2, R, E M1 S1, S2, S3, S4
HELI_120_CCPM Вертолет с CCPM АП
HELI_90_DEG Вертолет с отдельным приводом общего шага
VTAIL4 Квадрокоптер с V-хвостом M1-M4 N/A
HEX6H Гексакоптер H M1-M6 None
PPM_TO_SERVO PPM-декодер
DUALCOPTER Dualcopter M1-M2 S1, S2
SINGLECOPTER Вертолет с флайбаром (режим гироскопа хвоста) M1 S1
ATAIL4 Квадрокоптер с А-хвостом M1-M4 N/A
CUSTOM Пользовательские установки
CUSTOM AIRPLANE Пользовательские установки самолета
CUSTOM TRICOPTER Пользовательские установки трикоптера

Настройка сервоприводов
Команда cli servo определяет настройки для сервоприводов. Команда smix в cli определяет, как микшер транслирует внутренние данные полетного контроллера (RC-вход, выход стабилизации ПИД-регулятора, переадресацию каналов и т.д.) на сервовыходы.

Сервофильтрация.
Для сервоприводов может быть включен фильтр низких частот. Это может быть полезно, например, для подавления раскачки.
В настоящее время его можно настроить только через CLI:
Для включения фильтрации используйте set servo_lpf_hz = 20. Это установит фильтр низких частот сервопривода на 20 Гц.
Один из способов настройки частоты отсечки фильтра:
Подвесьте ваш аппарат в районе центра тяжести. Убедитесь, что он может двигаться вокруг неблагополучной оси достаточно свободно. Например, если у вас есть колебания по курсу на трикоптере, убедитесь, что аппарат подвешен таким образом, чтобы он мог вращаться влево и вправо. Можно просто полетать, стараясь вызвать проблемное состояние, которое вы пытаетесь устранить, хотя настройка будет более утомительной.
Качните модель по оцениваемой оси. Также можно использовать прямое управление сервоприводом для перемещения. В примере с трикоптером, коснитесь конца хвостовой балки сбоку или дайте команду рыскания, используя ваш передатчик.
Если модель колеблется в течение нескольких секунд или даже продолжает колебаться бесконечно, частота отсечки фильтра должна быть уменьшена. Уменьшите значение servo_lowpass_freq на половину его текущего значения и повторите предыдущий шаг.
Если колебания затухают в течение примерно секунды или больше не возникают, настройка завершена. Обязательно сохраните настройки командой save.

Индивидуальное микширование двигателей.
Индивидуальное микширование двигателя позволяет настроить любую конфигурацию двигателей. Каждый мотор должен быть определен с помощью специальной таблицы для настройки этого двигателя. Микшер должен отражать, насколько близко каждый мотор находится к ЦТ (Центр тяжести). Двигатель, расположенный ближе к ЦТ, должен будет проходить меньшее расстояние, чем двигатель, расположенный дальше.

Шаги по настройке микшера в CLI:
Используйте пресеты Custom для включения пользовательского микширования.
Введите mmix reset для удаления любого существующего пользовательского микширования моторов.
Произведите настройку mmix для каждого двигателя.
Командная строка mmix имеет следующий синтаксис: mmix n THROTTLE ROLL PITCH YAW, где n - номер двигателя; THROTTLE – реакция на газ (все активные двигатели устанавливаются в 1.0, для неактивных - значение 0.0); ROLL - указывает, насколько насколько активно этот мотор должен использоваться для управления по крену (значения от 1,0 до -1,0); PITCH – реакция на управление в канале тангажа (от 1,0 до -1,0); YAW -указывает направление вращения двигателя (1.0 = CCW, -1.0 = CW).

Примечание: команда mmix может задавать неактивное микширование моторов. Пользовательские микшеры двигателей активны только для моделей, использующих специальные микшеры.

Пользовательское микширование сервоприводов.
Пользовательские правила микширования сервоприводов могут применяться к любому сервоприводу. Правила задаются в CLI с использованием команды smix. Правила связывают стабилизацию и сигналы приемника с физическим выходом PWM на плате полетного контроллера. В настоящее время идентификаторы 0 и 1 выводов могут использоваться только для выходов двигателя. Другие порты могут отсутствовать, в зависимости от используемой вами платы.

Оператор smix имеет следующий синтаксис: smix n SERVO_ID SIGNAL_SOURCE RATE SPEED Например, smix 0 2 0 100 0 создаст номер правила 0, назначая Stabilized Roll третьему выходу PWM на плате контроллера, с полными расходами и без ограничения скорости.
id Источники сигналов полетного контроллера
0 Stabilised ROLL (стабилизированный канал крена)
1 Stabilised PITCH (стабилизированный канал тангажа)
2 Stabilised YAW (стабилизированный канал рысканья (курса))
3 Stabilised THROTTLE (сигнал газа, устанавливаемый автопилотом)
4 RC ROLL (прямое управление по каналу крена)
5 RC PITCH (прямое управление по каналу тангажа)
6 RC YAW (прямое управление по каналу курса)
7 RC THROTTLE (прямое управление по каналу газа)
8 RC AUX 1 (дополнительный канал 1)
9 RC AUX 2 (дополнительный канал 2)
10 RC AUX 3 (дополнительный канал 3)
11 RC AUX 4 (дополнительный канал 4)
12 GIMBAL PITCH (наклон подвеса вверх-вниз)
13 GIMBAL ROLL (наклон подвеса вправо-влево)
14 FEATURE FLAPS (активация режима закрылков)

id Опциональные настройки сервовыходов
0 GIMBAL PITCH
1 GIMBAL ROLL
2 ELEVATOR / SINGLECOPTER_4
3 FLAPPERON 1 (LEFT) / SINGLECOPTER_1
4 FLAPPERON 2 (RIGHT) / BICOPTER_LEFT / DUALCOPTER_LEFT / SINGLECOPTER_2
5 RUDDER / BICOPTER_RIGHT / DUALCOPTER_RIGHT / SINGLECOPTER_3
6 THROTTLE (опирается только на сигнал газа первого мотора!)
7 FLAPS

Диапазон правил сервоприводов

Диапазон правила сервопривода следует понимать как вес микшера. Для получения полного расхода, сумма всех весов микшеров smix для сервопривода должна быть равна 100. Например, сервопривод №2 должен управляться источниками 0 и 1 (стабилизированный крен и стабилизированный тангаж) с одинаковой силой:
smix 0 2 0 50 0
smix 1 2 1 50 0
Чтобы усилить влияние одного источника, увеличьте вес этого источника и уменьшите остальные. Например, чтобы сервопривод №2 отрабатывал на 75% хода от источника 0 и на 25% от источника 1, правильные установки:
smix 0 2 0 75 0
smix 1 2 1 25 0
Если сумма весов будет больше 100, может проявиться ограничение хода сервомеханизма.

Примечание: пользовательские настройки сервомеханизмов активны только для моделей, которые используют специальные микшеры.

Скорость сервопривода.
Пользовательские сервомикшеры позволяют установить скорость изменения управляющего сигнала для данного сервопривода. По умолчанию для всех машинок установлено значение 0, это означает, что ограничение не применяется, а источник сигнала напрямую передается на сервовыходы. Это означает, что, если, например, канал (AUX) изменяется от 1000 до 2000нс за один цикл, управляющий сигнал на сервовыходе также будет меняться от 1000 до 2000 за один цикл. В этом случае скорость ограничивается только самим сервомеханизмом.

Если значение, отличное от 0, устанавливается как скорость правила, скорость изменения будет соответственно уменьшена. Каждая единица в поле скорости соответствует изменению длины импульсов на 10нс за 1с.

Пример значений скорости
0 = без ограничения
1 = 10нс / с -> полный ход сервопривода (от 1000 до 2000) выполняется за 100 секунд
10 = 100нс / с -> полный ход (от 1000 до 2000) выполняется за 10 секунд
100 = 1000нс / с -> полный ход за 1 с
200 = 2000нс / с -> полный ход за 0,5 с

Ограничение скорости может быть полезно для закрылков, выпуска шасси и других функций, где максимальная скорость сервопривода слишком велика.

Реверс сервопривода.
Чтобы поменять направление отработки сервопривода, можно использовать команду реверсирования.
Например, чтобы сервомашинка отклоняла хвостовой ротор трикоптера в другую сторону, используйте команду:
smix reverse 5 2 r
т. е. при микшировании порта сервопривода руля (5) с использованием источника стабилизированного входного сигнала YAW (2) изменить направление (r)

smix reverse применяется по мере необходимости и устанавливается для каждой конкретной модели индивидуально.

Последние пол года я в основном летал на своем маленьком кавдрокоптере от Eachine, и как то совсем забросил 10-ти дюймовый самосбор для медленных высоких полетов. Вспомнить про него меня заставило недавнее крушение моего Трашкана . Так как мелколет у меня всего один, я решил опробовать новую прошивку Inav, тем более что практически все блогеры ее сейчас нахваливают (я почти год не запускал этот квадрокоптер, на нем у меня стояла актуальная год назад прошивка версии 1.9).

Для начала я сохранил все свои старые настройки (в том числе принтскринами), и перепрошил полетный контроллер.

Попытка номер раз:

Через командную строку заливаю настройки с версии 1.9 (для сохранения настроек использовал команду Dump в командной строке, сохранил выведенные настройки в блокнот, а после перепрошивки вставил настройки в командную строку и нажал Enter). После этого обновил калибровки, проверил все ли настроено, сделал кое какие поправки в режимах и на этом успокоился.

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

У меня всегда с собой USB кабель и ЩЕП адаптер для телефона, а на телефоне стоит программа SpeedyBee для настройки в поле. Подключаю, проверяю работу пульта, настройки, работу моторов, все идеально, но коптер при этом летать не хочет. Коптер убрал, походный чемоданчик сложил и убрал к коптеру.

Попытка номер два:

Вернувшись домой, я подключил коптер к компьютеру и решил настроить его с нуля. Перепрошиваю плату полетного контроллера (на 10-ти дюймовом квадрике у меня стоит Matek STD), выбираю пресет для 10-ти дюймовых квадрокоптеров, заново вручную без использования командной строки провожу всю настройку и калибровку квадрокоптера, проверяю работу компаса, двигателей, каждого стика на пульте управления, настраиваю холостой ход двигателей. По новой настраиваю OSD и решаю проверить не выходя из квартиры (хорошо что мои кошки не рассматривают большой квадрокоптер как предмет охоты), а для этого отключаю проверку навигации (спутники в квартире коптеру не поймать).

Подключаю аккумулятор, но при этом аккумулятор не креплю к квадрокоптеру, чтобы если что, он сам отключился (5,2 Ач весят пол кило, достаточно чтобы под весом этого аккумулятора отсоединился разъем). тумблером включаю arming, коптер дико начинает мотать из стороны в сторону, при этом два винта крутятся постоянно, еще 2 то раскручиваются, то останавливаются. Выключаю, лезу в комп пересматривать Саню (
areyouroo ) и Юлиана ( RCSchoolmodels ).

Попытка номер три:

После пересмотра видео я решил, что возможно проблема в фильтрах, которые добавились в прошивке 2.5. Перечитал кучу инструкций, посмотрел картинку в черном ящике, которую записал полетный контроллер при прошлых тестах и попробовал выставить фильтры. Арм, подрыв коптера в квартире на пол метра, отсоединение аккумулятора и перепуганные кошки. Лезу настраивать дальше.перечитал и пересмотрел еще несколько видео по фильтрам, в том числе фильтрам в Betafly. Очередная попытка настроить, протестировать в квартире и очередной неудачный подрыв квадрокоптера.

Попытка номер четыре:

На всякий случай решил попробовать использовать настройки PID, на которых мой квадрокоптер летал с прошивкой 1.9. Вбил настройки, проверка, неудача. на все про все у меня ушла почти неделя. Вчера утром изрядно психанув, я снес прошивку 2.5, скачал конфигуратор для прошивки 2.3 (у меня сложилось четкое ощущение, что проблема в фильтрах, а они появились частично в прошивке 2.4 и дополнились в 2.5) и перепрошил коптер на последнюю прошивку без фильтров. Через командную строку вставил настройки с прошивки 2.5. Опять отключаю проверку 3DFix (навигацию) армлю коптер и моторы аккуратно плавно и равномерно раскручиваются. Пробую прибавить газ, коптер плавно поднимается и позволяет контролировать себя в сантиметре от пола.

Тема раздела Полеты по камере, телеметрия в категории Cамолёты - Общий; Спасибо. Все получилось.

Опции темы
А LED выключено в настройках? Просто в доке написано что по PWM если включен LED то каналов 5. Вообще в последнее время лучше аппаратуру подключать не по PWM а по PPM или лучше SBUS, проблем меньше.

Вот, проверю. Хорошая зацепка. Отпишу по результату.
А по РРМ - может быть подскажете, как подключить по РРМ приемник Futaba R617FS (или его аналог FrSky)? Нигде не могу найти для этого приедмника подключение, хотя эти приемники должны работать по РРМ.

servo 0 1000 2000 1500 100 -1
servo 1 1000 2000 1500 100 -1
servo 2 1000 2000 1500 100 -1
servo 3 1000 2000 1500 -100 -1
servo 4 1000 2000 1500 100 -1
servo 5 1000 2000 1500 100 -1
servo 6 1000 2000 1500 100 -1
servo 7 1000 2000 1500 100 -1
smix reset

feature -RX_PPM
feature -VBAT
feature -RX_SERIAL
feature -MOTOR_STOP
feature -SERVO_TILT
feature -SOFTSERIAL
feature -GPS
feature -TELEMETRY
feature -CURRENT_METER
feature -3D
feature -RX_PARALLEL_PWM
feature -RX_MSP
feature -RSSI_ADC
feature -LED_STRIP
feature -DASHBOARD
feature -BLACKBOX
feature -CHANNEL_FORWARDING
feature -TRANSPONDER
feature -AIRMODE
feature -SUPEREXPO
feature -VTX
feature -RX_SPI
feature -SOFTSPI
feature -PWM_SERVO_DRIVER
feature -PWM_OUTPUT_ENABLE
feature -OSD
feature VBAT
feature MOTOR_STOP
feature RX_PARALLEL_PWM
feature PWM_OUTPUT_ENABLE
beeper GYRO_CALIBRATED
beeper HW_FAILURE
beeper RX_LOST
beeper RX_LOST_LANDING
beeper DISARMING
beeper ARMING
beeper ARMING_GPS_FIX
beeper BAT_CRIT_LOW
beeper BAT_LOW
beeper GPS_STATUS
beeper RX_SET
beeper ACTION_SUCCESS
beeper ACTION_FAIL
beeper READY_BEEP
beeper MULTI_BEEPS
beeper DISARM_REPEAT
beeper ARMED
beeper SYSTEM_INIT
beeper ON_USB
beeper LAUNCH_MODE
map AETR1234
serial 20 1 115200 38400 0 115200
serial 0 1 115200 38400 0 115200
serial 2 0 115200 38400 0 115200
aux 0 0 0 1000 2100
aux 1 1 0 1450 2100
aux 2 14 0 975 1075
aux 3 28 0 1700 1850
aux 4 11 0 2050 2100
aux 5 0 0 900 900
aux 6 0 0 900 900
aux 7 0 0 900 900
aux 8 0 0 900 900
aux 9 0 0 900 900
aux 10 0 0 900 900
aux 11 0 0 900 900
aux 12 0 0 900 900
aux 13 0 0 900 900
aux 14 0 0 900 900
aux 15 0 0 900 900
aux 16 0 0 900 900
aux 17 0 0 900 900
aux 18 0 0 900 900
aux 19 0 0 900 900
adjrange 0 0 0 900 900 0 0
adjrange 1 0 0 900 900 0 0
adjrange 2 0 0 900 900 0 0
adjrange 3 0 0 900 900 0 0
adjrange 4 0 0 900 900 0 0
adjrange 5 0 0 900 900 0 0
adjrange 6 0 0 900 900 0 0
adjrange 7 0 0 900 900 0 0
adjrange 8 0 0 900 900 0 0
adjrange 9 0 0 900 900 0 0
adjrange 10 0 0 900 900 0 0
adjrange 11 0 0 900 900 0 0
rxrange 0 1349 1827
rxrange 1 909 1969
rxrange 2 1101 1931
rxrange 3 1118 1938
set looptime = 2000
set gyro_sync = ON
set gyro_sync_denom = 2
set align_gyro = DEFAULT
set gyro_hardware_lpf = 188HZ
set gyro_lpf_hz = 60
set moron_threshold = 32
set align_acc = DEFAULT
set acc_hardware = MPU6000
set acc_lpf_hz = 15
set acczero_x = 60
set acczero_y = 25
set acczero_z = -537
set accgain_x = 4121
set accgain_y = 4112
set accgain_z = 4031
set align_mag = DEFAULT
set mag_hardware = NONE
set mag_declination = 0
set magzero_x = 0
set magzero_y = 0
set magzero_z = 0
set mag_calibration_time = 30
set baro_hardware = NONE
set baro_use_median_filter = ON
set mid_rc = 1500
set min_check = 1100
set max_check = 1900
set rssi_channel = 0
set rssi_scale = 30
set rssi_invert = OFF
set rc_smoothing = ON
set serialrx_provider = SPEK1024
set sbus_inversion = ON
set spektrum_sat_bind = 0
set rx_min_usec = 885
set rx_max_usec = 2115
set min_throttle = 1150
set max_throttle = 1850
set min_command = 1000
set motor_pwm_rate = 400
set motor_pwm_protocol = STANDARD
set failsafe_delay = 5
set failsafe_recovery_delay = 5
set failsafe_off_delay = 200
set failsafe_throttle = 1000
set failsafe_throttle_low_delay = 100
set failsafe_procedure = SET-THR
set failsafe_stick_threshold = 50
set failsafe_fw_roll_angle = -200
set failsafe_fw_pitch_angle = 100
set failsafe_fw_yaw_rate = -45
set align_board_roll = 0
set align_board_pitch = 0
set align_board_yaw = 0
set gimbal_mode = NORMAL
set battery_capacity = 0
set vbat_scale = 110
set vbat_max_cell_voltage = 43
set vbat_min_cell_voltage = 34
set vbat_warning_cell_voltage = 36
set current_meter_scale = 400
set current_meter_offset = 0
set multiwii_current_meter_output = OFF
set current_meter_type = ADC
set yaw_motor_direction = 1
set yaw_jump_prevention_limit = 200
set 3d_deadband_low = 1406
set 3d_deadband_high = 1514
set 3d_neutral = 1460
set servo_center_pulse = 1500
set servo_pwm_rate = 50
set servo_lpf_hz = 20
set flaperon_throw_offset = 200
set tri_unarmed_servo = ON
set reboot_character = 82
set imu_dcm_kp = 2500
set imu_dcm_ki = 50
set imu_dcm_kp_mag = 10000
set imu_dcm_ki_mag = 0
set small_angle = 180
set fixed_wing_auto_arm = ON
set disarm_kill_switch = ON
set auto_disarm_delay = 5
set gps_provider = UBLOX
set gps_sbas_mode = NONE
set gps_dyn_model = AIR_1G
set gps_auto_config = ON
set gps_auto_baud = ON
set gps_min_sats = 6
set deadband = 5
set yaw_deadband = 5
set pos_hold_deadband = 20
set alt_hold_deadband = 50
set 3d_deadband_throttle = 50
set fw_autotune_overshoot_time = 100
set fw_autotune_undershoot_time = 200
set fw_autotune_threshold = 50
set fw_autotune_ff_to_p_gain = 10
set fw_autotune_ff_to_i_tc = 600
set inav_gravity_cal_tolerance = 5
set inav_use_gps_velned = ON
set inav_gps_delay = 200
set inav_reset_altitude = FIRST_ARM
set inav_max_sonar_altitude = 200
set inav_w_z_sonar_p = 3.500
set inav_w_z_sonar_v = 6.100
set inav_w_z_baro_p = 0.350
set inav_w_z_gps_p = 0.200
set inav_w_z_gps_v = 0.500
set inav_w_xy_gps_p = 1.000
set inav_w_xy_gps_v = 2.000
set inav_w_z_res_v = 0.500
set inav_w_xy_res_v = 0.500
set inav_w_acc_bias = 0.010
set inav_max_eph_epv = 1000.000
set inav_baro_epv = 100.000
set nav_disarm_on_landing = OFF
set nav_use_midthr_for_althold = OFF
set nav_extra_arming_safety = ON
set nav_user_control_mode = ATTI
set nav_position_timeout = 5
set nav_wp_radius = 100
set nav_wp_safe_distance = 10000
set nav_auto_speed = 300
set nav_auto_climb_rate = 500
set nav_manual_speed = 500
set nav_manual_climb_rate = 200
set nav_landing_speed = 200
set nav_land_slowdown_minalt = 500
set nav_land_slowdown_maxalt = 2000
set nav_emerg_landing_speed = 500
set nav_min_rth_distance = 500
set nav_rth_climb_first = ON
set nav_rth_climb_ignore_emerg = OFF
set nav_rth_tail_first = OFF
set nav_rth_allow_landing = ON
set nav_rth_alt_mode = AT_LEAST
set nav_rth_abort_threshold = 50000
set nav_rth_altitude = 1000
set nav_mc_bank_angle = 30
set nav_mc_hover_thr = 1500
set nav_mc_auto_disarm_delay = 2000
set nav_fw_cruise_thr = 1400
set nav_fw_min_thr = 1200
set nav_fw_max_thr = 1700
set nav_fw_bank_angle = 20
set nav_fw_climb_angle = 20
set nav_fw_dive_angle = 15
set nav_fw_pitch2thr = 10
set nav_fw_loiter_radius = 5000
set nav_fw_launch_velocity = 300
set nav_fw_launch_accel = 1863
set nav_fw_launch_detect_time = 40
set nav_fw_launch_thr = 1700
set nav_fw_launch_idle_thr = 1000
set nav_fw_launch_motor_delay = 500
set nav_fw_launch_spinup_time = 100
set nav_fw_launch_timeout = 5000
set nav_fw_launch_climb_angle = 18
set telemetry_switch = OFF
set telemetry_inversion = OFF
set frsky_default_latitude = 0.000
set frsky_default_longitude = 0.000
set frsky_coordinates_format = 0
set frsky_unit = IMPERIAL
set frsky_vfas_precision = 0
set frsky_vfas_cell_voltage = OFF
set hott_alarm_sound_interval = 5
set ibus_telemetry_type = 0
set ltm_update_rate = NORMAL
set i2c_overclock = OFF
set debug_mode = NONE
set throttle_tilt_comp_str = 0
set input_filtering_mode = OFF
set mode_range_logic_operator = OR
profile 1

set mc_p_pitch = 40
set mc_i_pitch = 30
set mc_d_pitch = 23
set mc_p_roll = 40
set mc_i_roll = 30
set mc_d_roll = 23
set mc_p_yaw = 85
set mc_i_yaw = 45
set mc_d_yaw = 0
set mc_p_level = 20
set mc_i_level = 15
set mc_d_level = 75
set fw_p_pitch = 30
set fw_i_pitch = 30
set fw_ff_pitch = 4
set fw_p_roll = 45
set fw_i_roll = 30
set fw_ff_roll = 3
set fw_p_yaw = 0
set fw_i_yaw = 0
set fw_ff_yaw = 0
set fw_p_level = 20
set fw_i_level = 15
set fw_d_level = 75
set max_angle_inclination_rll = 300
set max_angle_inclination_pit = 300
set dterm_lpf_hz = 40
set yaw_lpf_hz = 30
set dterm_setpoint_weight = 0.000
set fw_iterm_throw_limit = 165
set fw_reference_airspeed = 0
set pidsum_limit = 500
set yaw_p_limit = 300
set iterm_ignore_threshold = 200
set yaw_iterm_ignore_threshold = 50
set rate_accel_limit_roll_pitch = 0
set rate_accel_limit_yaw = 10000
set heading_hold_rate_limit = 90
set nav_mc_pos_z_p = 50
set nav_mc_pos_z_i = 0
set nav_mc_pos_z_d = 0
set nav_mc_vel_z_p = 100
set nav_mc_vel_z_i = 50
set nav_mc_vel_z_d = 10
set nav_mc_pos_xy_p = 65
set nav_mc_pos_xy_i = 120
set nav_mc_pos_xy_d = 10
set nav_mc_vel_xy_p = 180
set nav_mc_vel_xy_i = 15
set nav_mc_vel_xy_d = 100
set nav_fw_pos_z_p = 50
set nav_fw_pos_z_i = 0
set nav_fw_pos_z_d = 0
set nav_fw_pos_xy_p = 75
set nav_fw_pos_xy_i = 5
set nav_fw_pos_xy_d = 8
set rc_expo = 70
set rc_yaw_expo = 0
set thr_mid = 50
set thr_expo = 0
set roll_rate = 55
set pitch_rate = 55
set yaw_rate = 20
set tpa_rate = 0
set tpa_breakpoint = 1500


То есть квадрик не летит домой, не завис, а дрейфует со скоростью 19км/ч ! На последнем кадре расстояние уже 505 метров .


Так что искал я его совсем не в том месте . Куда его унесло ветром теперь одному Богу известно . Спасибо тебе, Inav за четкую работу, тебе можно всецело доверять…Гори в аду мразь !

Комментарии 54


сегодня словил почти тоже самое.
Была опция включена nav_extra_arming_safety = OFF. Заармил не дождавшись GPS FIX. На 300 метрах словил FS, видео одновременно потерял с потерей сигнала аппаратуры. куда полетел коптер, и где его теперь искать — незнаю. в месте где видел последний раз, в радиусе 200 метров прочесал всё, не нашел. В последний момент показалось что полетел вверх резко при срабатывании FS. и исчез из виду. но не очень уверен что он полетел вверх а не вперед. Хотя отключение резко видео и аппаратуры больше напоминало что он решил приземлится быстро, очень быстро.
В настройках менял только высоты возврата до 50м. по FS включено RTH.сегодня предприму ещё попытки его поиска. но сильно подозреваю что он перешёл в режим angel и просто продолдил свой полет дальше .


В моем случае он запомнил точку дом . При арме на видео видны координаты точки дома . Они точно соответствуют координатам данного места . В Вашем случае, если арм произошел до записи точки дом, то в случае ф.с., квадрик должен лететь к ранее заполненной точке . Там где летали в прошлый раз . Кстати такая же вот хрень у меня происходила ещё раза два или три . Слава Богу это был эксперимент и проходил он в контролируемых условиях


Ну скажем так я не очень уверен что GPS FIX не прошел. т.к. я его включил, положил, пока шлем включил, потом якрость на аппаратуре выкрутил. так же до этого настроил модуль на европу. он в поле за полминуты спутники находит, и когда армил, взял шлем и там уже были координаты. Так что фикс возможно был до арма. Просто не на 100% уверен. В итоге очень даже похоже на Ваш случай.
Вообщем квадрик сегодня еще скал, в радиусе метрах 500 от точки где последний раз видел его, и ничего. тоже не дешевый долголет был с хорошей дорогой камерой.


Очень жаль, очень . По человечески сочувствую . Ну на фиг, теперь на Inav только облет нового квадрика, а дальше только Ардукоптер


Соболезную… Айнав дело тонкое…надо многое предусмотреть, и угол при возврате, и тягу моторов… меня вообще смутило, что полёт в режиме холда… фс бывает некорректно срабатывает когда включены другие режимы… Допустим в холде прописан один угол и тяга, в фс другой…при сработке фс как бы должны вкл его режимы, но он не переключает и вообще режим движения вылетает… Тут скорее так и получилось… Фс врубился, а движение осталось холдовское… вот и лег в дрейф…


В том то и дело…я бы пенял на себя, если бы включился режим возврата, но например квадрику не хватило бы например угла наклона, что бы совладать с ветром . НО ! Во первых, ветра в тот день практически не было, 2-3м/с, второе (и главное) на ОСД видно, что сработал F.S., но возврат домоу (En route to home ) не включился ! Кстати, в нелюбимом многими ( кстати неясно почему) Ардукоптере нет таких заморочек . Ставите максимальную скорость в режиме навигации такую то и квадрик полети с этой скоростью домой не взирая на внешние условия …


У меня при фс так же, как на скринах, , на осд высвечивается только !FS. Но валит домой как ракета.

Мне и арду не нравится и айнав…)))


У меня он тоже валил, до этого он акумов 50-70 отлетал . Арду в плане навигации на несколько порядков лучше . Даже сравнивать не хочется .


Так то меня айнав устраивает, нормально, долголеты держатся, ещё не терялись… видно поэтому и не перехожу на арду…летают, нормально, падают — нахожу… всё настроено, всё работает — ну и пусть работает. )))


Ну честно говоря, навигация у него мягко говоря так себе . Я сколько не бился с настройками, заставить адекватно лететь коптер в круизе так и не смог . Перешел на Арду и там просто все настолько по другому работает…даже не могу сравнить


У меня главное FS и RTH… я практически постоянно в АирМоде летаю…не получается у меня тихо/гладко/плавно…покуражить люблю. )))


Да я тоже . Для этих целей квадрик на бете лежит . Inav в акро больно тормозит



У меня аналогичный случай был в 2019 году. Квадрик летел, связь видео зашумилась и пропала, также пропала связь с пультом. И это был INAV 2.3 вроде. Видео

На сколько я понял по остаточным видео кадрам, он начал резко снижаться и падать. Стоял HOR мод и была включена функция RTH при обрыве связи, но этого не произошло. Было много народу, где он упал, видимо забрали.


Я раньше летал на AT9, там красота . При пропадании связи приемник сам RTL включал . А с этим говенным Open Tx такое не работает


В Ардупилот разве нет возврата домой? Все его хвалят, вроде стоящая вещь по сравнению с INAV?


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



Вот его думаю поставить. Мне кажется получше INAV. На акро все равно не летаю, у меня все и без акро падает в труху. Вот кстати новое видео:


Сразу несколько вопросов: В курсе, что на прошивках, использующих компас, GPS (если он на одной плате с компасом ) нужно ставить строго горизонтально ? Не ловит ли компас наводки от силовых цепей ? Контролер не на процессоре F7 ?


Аналогичная история с inav 2.5, но мне написал "En route to home", но никуда не полетел, впал в дрейф и через 15 секунд выключил движки". GPS-трекер спас) Я даже пробовал RTH с тумблера включить, но увы — "он же уже летел домой". До этого rth проверял неоднократно. Спутников был около 20. Жалко карточку из блекбокса вынул, так бы хоть что-то можно было прояснить.
Все же считаю есть какие-то баги-коллизии в Inav. На ардупилоте никогда такого не было, всерьез думаю опять перейти на него. Да и сам квадрик летает стабильнее (плавнее)


В том то и дело, что от версии к версии разработчики добавляют не очень нужные вещи и не решают главных проблем . Вспомните хотя бы уплывающий горизонт . По поводу ардукоптера . Стоит такая прошивка у меня на Дискавери . Летает приятно, плавно и мягко . А вот увы, для 260 квадрика, если нужен возврат, альтернативы Inav нет . В бете возврат еще хуже


Я также потерял свой дрон на inav. Причем тоже метрах в 300 от себя. Может заглушили сигнал или перехватили его?


Перехватить управление невозможно (по крайней мере ниодного примера с внятными пруфами я не видел ) . Да и если заглушили сигнал управления, и что ? Спутники на месте, точка взлета определена, чего домой не лететь то ?


Сам я конечно не перехватывал и пруыов нет, но по логике это реально через тот же самый burpsuite и hackrfone. Если не перехватить то выявить частоту и поставить помехи легко. Но согласен что это маловероятно


Заглушить, согласен . Без вопросов . Но, при этом должен сработать F.s., чего не произошло . А вот сделать дистанционный бинд под другой передатчик и при этом отвязать родной…огромные сомнения .



Ну…это ведь не первый, и даже не десятый полет этого коптера . Конечно RTH включен . При чем интересно вот что…коллеги из группы в ВК обратили мое внимание, что надпись FS есть, а вот надписи " En route to home " нет . При чем ее никогда не было . Даже когда квадрик возвращался . Когда летал на Radiolink, делал настойку что бы приемник сам включал RTH при пропадании связи, минуя FS . 100% рабочая схема . Увы для Frsky такое недоступно и приходится полагаться на Inav…

Читайте также: