Автопилот Arduplane - открытое ПО

alexeykozin
NinjaFoX:

Спасибо. Вопрос такой возник, у меня упреавление RMILEC 433мгц, не будет ли он и модули телеметрии на 433 душить друг друга? РМилек при бинде имеет алгоритм выбора частоты, меньше всего забитой помехами, но насколько я понял телеметрия прыгает по частотам во время работы.

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

РД00

Коллеги,
облетал вчера ArduPilot. Плата Crius AIO v1 (с HobbyKing), прошивка ArduPlaneNG v2.x R5. Использовал режимы Stabilize и FBW_A. Самолет - метровый тренер классической компоновки. Все на исходных настройках, назначил только полетные режимы на управляющий канал.

Стабилизация работает великолепно, никаких нареканий - “ветер выключается тумблером”. А вот режим FBW_A поставил в тупик. По моим понятиям, он должен держать заданные ручками углы тангажа и крена. Вместо этого он не дает задать крен вообще. В какую сторону копать ?

alexeykozin
РД00:

FBW_A

по описанию так и есть,
я этот режим пока не пробовал.
копать в исходниках ArduPlaneNG

в исходниках NG
code.google.com/p/megapirateng/…/ArduPlane.pde
строка 1266
логика fbw_a

case FLY_BY_WIRE_A:
// set nav_roll and nav_pitch using sticks
nav_roll = g.channel_roll.norm_input() * g.roll_limit;
nav_pitch = g.channel_pitch.norm_input() * (-1) * g.pitch_limit_min;
// We use pitch_min above because it is usually greater magnitude then pitch_max. -1 is to compensate for its sign.
nav_pitch = constrain(nav_pitch, -3000, 3000); // trying to give more pitch authority
if (inverted_flight) nav_pitch = -nav_pitch;
break;

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

ps: впоследствии полученное значение nav_roll будет использовано в функциях навигации и стабилизации для осуществления маневра

alexeykozin

а ктонибудь на летающем крыле этот режим пробовал?

Inverted flight channel (ArduPlane:INVERTEDFLT_CH)
A RC input channel number to enable inverted flight. If this is non-zero then the APM will monitor the correcponding RC input channel and will enable inverted flight when the channel goes above 1750.

Values
Value Meaning
0 Disabled
1 Channel1
2 Channel2
3 Channel3
4 Channel4
5 Channel5
6 Channel6
7 Channel7
8 Channel8

было бы удобно поставить зеркалку на какой нить крупное ЛК объективом вверх чтоб не повредить фотик на взлете и посадке, а в ходе полета переворчиваться фотиком вниз

IgorTim
alexeykozin:

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

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

alexeykozin

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

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

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

в принципе могу сделать клон последней прошивки и поправить чтобы в авторежиме на стадии takeoff газ был полностью вручную
вопрос: это еще кому - нибудь кроме меня надо?

IgorTim

Преимущество от этого режима вижу в отсутствии вероятности что самолет скрутит на старте от резкой подачи газа.

Алексей, я хочу автовзлет попробовать. У меня катапульта. Пока из пластиковых труб, в работе из ал.профиля. Для взлета на стадии takeoff было бы логичным принудительное управление газом. К примеру: спокойно поставил на направляющие, проверил правильность работы элевонов (для ЛК), включил режим AUTO, установил требуемый начальный уровень газа и нажал на педаль. И потом по мере набора скорости, равномерно увеличивать газ вручную.

alexeykozin
IgorTim:

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

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

IgorTim
alexeykozin:

в режиме взлета положение стика не определяет уровень газа

Так об этом и разговор, как я понял. Чтобы принудительно газом управлять на стадии takeoff. Правда тогда отпадает весь смысл автостарта. Можно просто в ручном подняться на 60-100 метров и включить АВТО.

vjick

распайка облегчается. а телеметрию и осд подключать через Y кабель?

РД00
alexeykozin:

поворот в этом режиме будет зависеть от параметра LIM_ROLL_CD

Да, все верно. Посмотрел внимательно на поведение самолета в руке и на график Tuning в Plannere - целевые углы ограничены текущими LIM_xxx, а они по умолчанию небольшие. В полете это воспринималось как “не дает рулить”.

btframework
alexeykozin:

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

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

Alex-13
vjick:

батарею подключают к камере, а если ее подключить к трансмитеру?

Надо питание подать на видео передатчик, а он питает камеру. Если подать питание на камеру , на видео передатчике питания не будет.
Посмотрите на распиновку что идет с видео передатчиком

HATUUL

Ребята,Почему в стаб.режиме вместе с элеронами миксуется руль направления?И где это можно отключить?

alexeykozin
btframework:

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

большое спасибо, пошел читать код!
как же мог прозевать… ведь так ждал

zipman

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

karabasus
zipman:

Приобрёл подобную штуку.

Подобную это какую? В теме обсуждалось ранее плата APM1 - к ней нужны датчики отдельно. Если вы приобрели APM 2.5 то к ней не нужно покупать набор датчиков (ну кроме gps , датчика тока, датчика скорости - но они не обязательное условия для полета, но датчик gps очень необходим). А гироскопы как вы считаете должны выглядеть? На плате APM2 (2.5) стоит микросхема MPU6000 которая совмещает в себе гироскоп и акселерометр и блок обработки.

zipman
karabasus:

Подобную это какую? В теме обсуждалось ранее плата APM1 - к ней нужны датчики отдельно. Если вы приобрели APM 2.5 то к ней не нужно покупать набор датчиков (ну кроме gps , датчика тока, датчика скорости - но они не обязательное условия для полета, но датчик gps очень необходим). А гироскопы как вы считаете должны выглядеть? На плате APM2 (2.5) стоит микросхема MPU6000 которая совмещает в себе гироскоп и акселерометр и блок обработки.

Спасибо, у мня как раз 2.5 + uBlox gps, пойду ковыряться)

SSergo

Коллеги, подскажите пожалуйста… Имею на самодельном ЛК контроллер hobbyking.com/…/__26588__MultiWii_PRO_Flight_Contr… с установленным ArduPlaneNG V2x R5 отсюда www.rcgroups.com/forums/showpost.php?p=23674081&po…. В теме люди весьма успешно летают, а у меня проблемс… В ручном и стабилизированном режиме крыло летит нормально, но как только включаю режим RTL, Loiter или FBWB тут же выключается двигатель. Крыло пытается выполнять маневр, но снижается и садится на землю либо, возвращаясь в manual/stabilize, продолжаю полет. В режиме FBWA двигатетель работает. Видел это в воздухе и воспроизводил на земле, отходя от точки старта. Перечитал кучу тем, перепробовал разные настройки и загрузки рабочих конфигураций. Зашел в тупик. Буду очень признателен за посыл в верном направлении.😃 PID’ы и Advanced Parameters List прилагаются.
P.S. Тема diydrones.com/…/autonomous-flight-mission-with-the… изучена, как и многочисленные wiki, сайты “Уголок самоделкина”, “Камышловский сайт” и др.

My_Schleicher.rar

alexeykozin
btframework:

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

вобщем ничего не пофикшено, тупо добавили детектор броска по акселю, газ все равно максимальный на старте.
смотрел по коду на github
модуль github.com/diydrones/ardupilot/…/ArduPlane.pde
строка 1054

SSergo:

Коллеги, подскажите пожалуйста… Имею на самодельном ЛК контроллер www.hobbyking.com/hobbyking/s...PS_Module.html с установленным ArduPlaneNG V2x R5 отсюда www.rcgroups.com/forums/showp...&postcount=633. В теме люди весьма успешно летают, а у меня проблемс… В ручном и стабилизированном режиме крыло летит нормально, но как только включаю режим RTL, Loiter или FBWB тут же выключается двигатель. Крыло пытается выполнять маневр, но снижается и садится на землю либо, возвращаясь в manual/stabilize, продолжаю полет. В режиме FBWA двигатетель работает. Видел это в воздухе и воспроизводил на земле, отходя от точки старта. Перечитал кучу тем, перепробовал разные настройки и загрузки рабочих конфигураций. Зашел в тупик. Буду очень признателен за посыл в верном направлении. PID’ы и Advanced Parameters List прилагаются.
P.S. Тема diydrones.com/profiles/blogs/...age=3#comments изучена, как и многочисленные wiki, сайты “Уголок самоделкина”, “Камышловский сайт” и др.

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

а мотор точно выключается? может просто обороты падают? я смотрю у вас средний газ стоит на 40% а максимальный на 60%
на одной из первых моделей у меня было чтото похожее пока не поднял круизный газ до 60 а максимальный до 100