А давайте обсудим Arducopter - APM

macrokernel

Мне это всё понятно. Я напомнил, в чём был изначально вопрос, т.к. обсуждение ушло слегка в сторону, по-моему:

usup:

недавно был вопрос,что если убирать развесовку рамы,тримерами аппы,то возможны улеты в автомат режимах,по питчу тример пришлось крутануть почти на 50%,но ничего,в альтхольде и лойтер висит ровно,как так?

alexeykozin

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

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

для корекции ровновисения используется корекция горизонта контроллера выполняемая в ходе программного повророта “горизонта контроллера” за счет параметров ahrs_trim_x y
или процедуры автоматического расчета этих параметров “автотрим”

при игнорировании этого правила и последующего использования режимов RTL LOITER или режима SIMPLE MODE вы гарантировано получите серьезные проблемы

😃
бывают же настырные попадаются, и не переубедишь!

zatorax
minii:

Возвращаемся к вопросу: можно ли использовать тримы в ручном режиме, не испортит ли это авторежимы?
Ответ: если вы делаете savetrim в контроллере (со сбросом тримов потом), то ДА, ведь тримов у вас нет.
Если вы не используете savetrim в контроллере и он у вас настроен по-умолчанию (т.е. 1500 - это “0”), то 1600, которые выдает аппа - для контроллера это +100. Т.е. авторежимы будут подпорчены.

Если не использовать savetrim, то тримы использовать так же нельзя.

Вы заблуждаетесь сами и что хуже, вводите людей в заблуждение.
Save - сохранить trim - подравнивание. Команда Save Trim сохраняет тримы, т.е. нет, они у вас есть, больше того, они сохранены в памяти контроллера.
Еще раз повторю, 1500 это не обязательно то значение которое обязано держать коптер в горизонтали, это надо понять. +100 - это не для контроллера, это для ESC, контроллеру вообще все равно. Он тут выступает посредником вообще то, он прибавляет к тому что пришло с приемника или убавляет. Если надо добавить к сигналу NN с приемника +100 он прибавит. Если надо добавить -100 он убавит.
Трим не портит авторежимы, если не использовать save trim то можно использовать тримы.

К слову, в AIOP v2 вообще такого понятия как save trim нет, так как же он тогда летает по вашему?

macrokernel

Я понял, что ничего не понял. Ладно, понимание придёт с опытом, а пока буду следовать инструкциям: трим на аппе, сейв трим, трим на аппе в ноль.

zatorax
alexeykozin:

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

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

для корекции ровновисения используется корекция горизонта контроллера выполняемая в ходе процедуры автотрим, программного повророта “горизонта контроллера” за счет параметров ahrs_trim_x y
или процедуры автоматического расчета этих параметров “автотрим”

при игнорировании этого правила и последующего использования режимов RTL LOITER или режима SIMPLE MODE вы гарантировано получите серьезные проблемы

😃
бывают же настырные попадаются, и не переубедишь!

Извините, но здравый смысл и собственные наблюдения для меня более авторитетны. Это как со сковородкой на огне. Какие бы авторитеты меня не убеждали что скоровода холодная… ну в общем вы поняли.

Каждый раз когда мы меняем трим пульта не требуется калибровка радио. С какой стати? Что там калибровать то? Есть кнопка Save trim которая запишет новые значения нулей имени minii. А на крайние значения трим никак не повлияет.
Можно использовать тримы для коррекции баражирования коптера, это никак не мешает ему поддерживать высоту.

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

Никакое это не правило, а скорее фенечка, без которой коптер отлично летает в RTL, LOITER, а вот SIMPLE MODE я не пробовал. Но пожалуйста расскажите, с высоты своего авторитета, какие могут быть проблемы при тримах с SIMPLE MODE?

Да. Переубедить очень сложно, если не можешь предоставить железобетонные доказательства.

alexeykozin
zatorax:

Да. Переубедить очень сложно, если не можешь предоставить железобетонные доказательства.

мне кажется вы со временем сможете разобраться в разнице между параметрами rc1_ и ahrs_trim_
ум у вас пытливый, а характер настрыный

zatorax
alexeykozin:

мне кажется вы со временем сможете разобраться в разнице между параметрами rc1_ и ahrs_trim_
ум у вас пытливый, а характер настрыный

да разница то более чем очевидна, результат только один и тот же

alexeykozin
zatorax:

да разница то более чем очевидна, результат только один и тот же

результат разный в случаях если вы летаете в полуавтоматических или автоматических режимах

  1. после перехода в лоитер триммер будет восприниматься как команда к “навигации” к движению в сторону трима
  2. после поворота на 180 градусов по курсу в режиме симпл коптер понесет в сторону с удвоенной силой
  3. в ртл и авто режимах трим будет восприниматься как указание к коррекции маршрута

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

zatorax
alexeykozin:
  1. после перехода в лоитер триммер будет восприниматься как команда к “навигации” к движению в сторону трима
  2. после поворота на 180 градусов по курсу в режиме симпл коптер понесет в сторону с удвоенной силой
  3. в ртл и авто режимах трим будет восприниматься как указание к коррекции маршрута

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

  1. Эта команда будет всего лишь компенсировать перекос рамы и ничего большего. Ни на что большее ее силы не хватит, это все, финиш: приподняла/опустила коптер до горозонта и конец.
  2. Не понесет, так как команда уже отработала, выставив раму в горизонт. С какой стати она удвоится?
  3. Пусть воспринимается. Сила вмешательства будет только компенсировать перекос рамы, команды трима будет недостаточно чтобы хоть как то изменить курс.

Вообще, для контроллера абсолютно нормально получать какие то команды от приемника и вносить свои коррективы. Это его нормальный режим работы. Если бы это было не так, то коптер просто терял бы равновесие при любом движении стиками. Но этого как раз не происходит потому что контроллер корректирует сигналы с приемника, если пользователь кренит борт на опасный угол, контроллер самостоятельно убавит значение сигнала на ESC и не даст бпла перевернутся. Такие дела.

Физический горизонт рамы выставляется с помощью пузырькового уровня и никак иначе. А то что выставляет автотрим - это виртуальный уровень с корректировкой на кривизну рамы. Тримирование корректирует тягу на двигателях чтобы борт держал горизонт.

  1. А кстати да, тут я сам с собой не согласен. SM ориентируется уже не по геометрии корпуса, а относительно его положения, так что да, тут вполне возможно получить непредсказуемый результат в виде того что трим изменит тягу вовсе не в ту сторону в какую надо, надо проверить. AIOPv2 проблем вроде бы не доставлял, но ручаться не буду.
minii

По-моему, вы путаете понятия несколько.
Под тримом мы здесь (и вопрос про это был) понимаем кнопочку такую 3-хпозиционную около стика. Значение которой выливается в то, что аппа передает, когда стик в центре находится.
Все, что хранится где-то еще (в памяти контроллера, как вы говорите) не есть трим. Т.е. можете его называть как хотите, только народ вас не поймет, если речь идет о том “можно ли использовать тримы в аппе”.
Так вот, вы можете что угодно использовать и называть в аппе при настройке, если после ее окончания аппа в центре стика будет выдавать 0 (т.е. трим = 0).

usup
alexeykozin:

после перехода в лоитер триммер будет восприниматься как команда к “навигации” к движению в сторону трима

ну почему же у меня никуда не летит?никаких сейвтримов и автотримов не использовал,может у меня контроллер какой то “кривой”?)))ну да ладно черт с ним,а то и так накатали на прау стр.,у меня другой вопрос созрел,подключил rssi,но в адвансед параметр нет пункта rssi range,соответсвено не могу выставить значение 3.3 и поэтому рсси отображает только 50% при полном сигнале,куда делсяэтот параметр,или его где то надо включать?

minii

Юсуп, я уже писал выше, почему он может никуда не лететь после использования тримов.
Если аппа выдает 0 (1500± небольшая мертвая зона), то коптер никуда не летит в loiter.
Формулу я тоже писал:
канал = положение стика + трим + ошибка калибровки + ошибка передатчика и приемника + ошибка контроллера.
У вас получается, что
0 = 0 + трим + ошибка калибровки + другие ошибки (которые обычно невелики, если у вас все исправно).
Т.е. у вас трим + ошибка калибровки + другие ошибки = 0
Т.е. либо трим у вас 0, либо в аппе настроено не примешивать его к каналу в указанном режиме, либо трим у вас компенсирует ошибка калибровки + другие ошибки.

zatorax
minii:

По-моему, вы путаете понятия несколько.
Под тримом мы здесь (и вопрос про это был) понимаем кнопочку такую 3-хпозиционную около стика. Значение которой выливается в то, что аппа передает, когда стик в центре находится.
Все, что хранится где-то еще (в памяти контроллера, как вы говорите) не есть трим. Т.е. можете его называть как хотите, только народ вас не поймет, если речь идет о том “можно ли использовать тримы в аппе”.
Так вот, вы можете что угодно использовать и называть в аппе при настройке, если после ее окончания аппа в центре стика будет выдавать 0 (т.е. трим = 0).

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

minii:

Юсуп, я уже писал выше, почему он может никуда не лететь после использования тримов.
Если аппа выдает 0 (1500± небольшая мертвая зона), то коптер никуда не летит в loiter.
Формулу я тоже писал:
канал = положение стика + трим + ошибка калибровки + ошибка передатчика и приемника + ошибка контроллера.
У вас получается, что
0 = 0 + трим + ошибка калибровки + другие ошибки (которые обычно невелики, если у вас все исправно).
Т.е. у вас трим + ошибка калибровки + другие ошибки = 0
Т.е. либо трим у вас 0, либо в аппе настроено не примешивать его к каналу в указанном режиме, либо трим у вас компенсирует ошибка калибровки + другие ошибки.

В том и дело, Максим, что у коллеги аппа выдает не 1500, он же пишет что тримил. А почему при этом в LOITER коптер висит на месте объяснил уже я без формулы.

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

IceMiner

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

zatorax
IceMiner:

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

гироскоп проклятый…

alexeykozin подсказал метод который в принципе может творить с горизонтом что угодно rcopen.com/forum/f123/topic233564/19217
вламываем ahrs_trim_x y по 180* на каждую ось и вроде бы как все должно получится… но, разумеется, там еще задом вперед надо будет контроллер то развернуть, чтобы лево и право не спутались

IceMiner
zatorax:

и вроде бы как все должно получится…

по ссылке рецепт на другую тему. Должно получаться при калибровке акселя. ahrs_trim попробую, но что то опасаюсь. Не без оснований)

Стоп. Куда вламывать. Там 0.175 радиан. Диапазон от -10 до 10. Крутится APM по одной оси. X или Y хоть так хоть так на 180 градусов вверх ногами. Совсем не понял)

zatorax
IceMiner:

по ссылке рецепт на другую тему. Должно получаться при калибровке акселя. ahrs_trim попробую, но что то опасаюсь. Не без оснований)

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

ufk

Блин, я всю жисть считал что сэйвтрим и автотрим это суть одно и тоже, только при автотриме оно само горизонт выставляет(как пиды при автотюне) путем использования каких то там алгоритмов, а сэйв трим тоже самое только вместо алгоритмов “человек с пультом”…

Вопрос остаеться, есмли сэйв трим(контроллера, не аппы) по сути вносит искажения в автоматические режимы и вообще им пользоваться нельзя то зачем его сделали и почему оно работает(у меня правда там тримы обычно не больше пары кликов, но все же)?

IceMiner

Внимательно. Если он

zatorax:

вверхтормашками все нормально показывае

то вопрос и не вскочил бы. Он не показывает нормально.

zatorax
IceMiner:

Стоп. Куда вламывать. Там 0.175 радиан. Диапазон от -10 до 10. Крутится APM по одной оси. X или Y хоть так хоть так на 180 градусов вверх ногами. Совсем не понял)

так это, 3.14 же 180 градусов, т.е. к тому значению которое у вас сечас по X и по Y надо число Пи прибавить

да, перепроверил, 3.14159265

alexeykozin
zatorax:

alexeykozin подсказал метод который в принципе может творить с горизонтом что угодно А давайте обсудим Arducopter вламываем ahrs_trim_x y по 180* на каждую ось и вроде бы как все должно получится… но, разумеется, там еще задом вперед надо будет контроллер то развернуть, чтобы лево и право не спутались

не говорил я такого.
есть на это copter.ardupilot.com/…/arducopter-parameters/#boar…
но лучше размещать классически