Проект Мегапират на самик!

dundel1

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

Syberian
dundel1:

варианты прошивок как-нибудь обозначайте

Абсолютно все варианты поршивок 2.24 лежат тут + короткое описание
code.google.com/p/ardupirates/source/list?path=/br…

Для полного описания, что поменялось, см. release_notes.txt в архиве.

dundel1
Syberian:

Абсолютно все варианты поршивок 2.24 лежат тут

От оно чё! 😮 А я эту вкладку как-то не замечал даже…😊 Спасибо за подсказку.

Syberian

Вернул ручную калибровку компаса. Поправил стрелку домой в Е-ОСД.
Проект обновлен.

ViktorDoma

Вопросы и предложения Олегу.

  1. При включении параметра g.mix_mode в 1 должен включатся режим летающего крыла. Как будет себя вести система - если мы пропишем похожие параметры в таблицу миксов ?

  2. Таблица миксов из АРМ_CONFIG.h сделана на выходе обсчитанных сигналов на сервы, а система стабилизации о миксах ничего не знает. Соответственно как будет вести себя система стабилизации - если миксы изменят физическую модель полета ?
    (как пример - не указываем системе, что это крыло, а поведение рулей прописываем в миксах, или допустим выдвинули закрылки, и прочее)

  3. Как в исходниках обозначены пины ПАН и ТИЛЬТ на плате Вортекса, чёт не нашел 😦

  4. В каком разделе искать систему стабилизации КАМЕРЫ (наклон, поворот) ?

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

У нас наконец то закончились дожди, есть вероятность, что получится завтра поехать в поле полетать.

alex-ber
ViktorDoma:

У нас наконец то закончились дожди, есть вероятность, что получится завтра поехать в поле полетать.

Ага!
Ждем отчета!
ПС Купил себе новую забавку - писалку Майджик Бокс (обсуждают в Кто чем пишет видео) - сижу тестчу, если погода позволит - в выходные пойду проверять в поле и новую прошивку и новую писалку…

ViktorDoma

Сначала о грустном, полеты не случились.
Во первых, налетели “белые мухи”, при этом на улице 0 +1 по цЭльсию. Это усё течёт и в поле хрен выберешься.
Во вторых дернули на арбайтЭн и если быб не “мухи”, мож но б на работу было и подзабить.

Но есть и положительные моменты - пока сервак на работе кряхтит над базами, можно посидеть и покодить над “ПИРАТОМ”.

На текущий момент Миксер ВЫХОДных каналов доработан до 8 каналов. То есть можно заюзать ВСЕ ноги М1-М8 по своему усмотрению.
Ща бьюсь над ногами ПАН и Тильт, дабы их тоже заюзать в миксер. Пока не получаиЦО 😦

Пока что таблица миксоФ ОДНА на все полетные режимы, но уже придумал как сделать разные мискы для полетных режимов автопилота.

Теперь вопрос к тем кто планирует юзать МИКСЫ.

Как лучше или правильнее сделать:
Вариант 1 - Транслировать диапазон входных каналов в выходные как есть (Тоесть то что получает радио).
(напимер ВХОД от 954 до 1875 и середина 1543, на выход подавать тот же диапазон и та же середина (или правильнее ТРИМ));

Вариант 2 - Устанавливать ДИАПАЗОН Выходных каналов в таблице, а входные каналы использовать как основу для пересчета в правильный диапазон
(напимер ВХОД от 954 до 1875 и середина 1543, на выход подавать диапазон от 1000 до 2000 и середина 1500 (ТРИМ) - сответственно сделаю таблицу диапазонов и середины для всех Выходных каналов);

Поскольку программированием на Сях я занимался ище при советской власти - процесс идет трудно, но “мы не привыкли отступать” (с) как гриЦо.

Еще момент - оказывается есть режим АВТО ТРИМ, как он работает, я пока не разобрался, но он есть - может кто пользовал - просветите пожалуйста.

Может стоит сделать режим ручной фиксации виртуальных тримеров по команде оператора (пилота), то есть летим в мануале - решили что борт идет как надо, нажимаем кнопку, и АП запоминает положения каналов.
После чего можно бросить стики. Эдакое полуавтоматическое тримирование. Соответственно миксы будуть потом считаться от ТРИМЕРОВ или начальных или установленных по команде.

А возможно я туплю и это уже есть.

Syberian
ViktorDoma:

Ща бьюсь над ногами ПАН и Тильт, дабы их тоже заюзать в миксер. Пока не получаиЦО

APM_RC.outputch(ch_5,xx);
APM_RC.outputch(ch_6,xx);

  • это на пантилт камеры. В вортексе они выходят прямо на одноименные разъемы.

Автотриммирование где-то закопано в коде.
И прошу, не спрашивай меня “как будет вести себя самоль, если…” 😃 Я сам дальше одной проверки RTH и полетов в стабилизе не уехал.

Как будет готов миксер, сбрось, включу в сборку. И вообще, спасибо за участие в проекте 😃

ViktorDoma

Олег, спасибо за ответ.
Я в тоже библиотеке раскопал, что этоch_5 и ch_6 - вот только я походу черти чё намутил в миксере, ща разбираюсь.

Олег, хотелось бы почитать Ваше мнение о вариантах пересчетов МИКСОВ. Прокоментируйте пожалуйста.

Как лучше или правильнее сделать:

ViktorDoma:

Как лучше или правильнее сделать:
Вариант 1 - Транслировать диапазон входных каналов в выходные как есть (Тоесть то что получает радио).
(напимер ВХОД от 954 до 1875 и середина 1543, на выход подавать тот же диапазон и та же середина (или правильнее ТРИМ));

Вариант 2 - Устанавливать ДИАПАЗОН Выходных каналов в таблице, а входные каналы использовать как основу для пересчета в правильный диапазон
(напимер ВХОД от 954 до 1875 и середина 1543, на выход подавать диапазон от 1000 до 2000 и середина 1500 (ТРИМ) - сответственно сделаю таблицу диапазонов и середины для всех Выходных каналов);

Олег, к Вам еще один вопрос. Только теперь по прерываниям.

Подскажите какая функция запускается после подсчета длины импульса по входным радио каналам ?
Как часто она вызывается ? (меня интересует отслеживание каждого импульса в отдельном канале)

Для чего нужна:
У меня аппа турнига, перешита прошивкой от ВитГо rcopen.com/blogs/50021/9239.
В прошивке есть Фича - УПЛОТНЕНИЕ КАНАЛОВ 4 в 1.
Как это происходит:
Отправляем маркер начала уплотненной посылки и кладем в первую пачку на отправку на борт.
Затем берем 4-ре управляющих сигнала из аппы и отправляем каждый управляющий сигнал в новой пачке по очереди.
По идее на борту получаем все четыре канал, Каждые 5 пачек сериал ППМ.
Из минусов - каналы на борту обновляются с частотой не 50Гц а 10Гц, но для “медленных” каналов (моды, закрылки, камера, свет и прочее) это не критично.
За то позволяет из 8-ми канальной аппы сделать 11-ти канальную и более.

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

Syberian
ViktorDoma:

Как лучше или правильнее сделать:

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

ViktorDoma:

какая функция запускается после подсчета длины импульса

В APM_RC есть прерывание ISR(PCINT2_vect) на изменение порта, там все 8 каналов, обсчитывается каждый импульс и кладется в свой буфер.

ViktorDoma

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

Я тут выяснил почему у меня ПАН И ТИЛТ не работали. Оказалось все просто - на плате я сразу пропаял перемычку (+)сов, а перемычку (-) почему то решил не паять, вот и вылезла 😦 трабла.

Оказывается минусы тоже нужно пропаивать с ножками ® или подавать на сервы внешнее питание.

Кароче вынул плату из “платформы” - сидю паяю, примус починяю.

LeonVS

А присутствует ли переменная отношения расходов управляющих поверхностей к скорости? Допустим на минимальной скорости пиды при одинаковых расходах будут одни, при увеличении же скорости раза в два-три, на этих же самых пидах планер будет ходить волнами… Правда для сие дела уже без датчика воздушной скорости будет уже тяжко 😃
К стати Олег, как там дела обстоят с датчиком тока и ОСД для вортекса?
Облетали в общем с коллегой полный цикл не трогая кроме включения АВТО режима пульта вообще, что сказать, все тип топ, взлетел пролетел сел 😃 Единственное что автопосадка уфигачить может метров на 100 от предполагаемого места приземления легко 😃 К нулю по высоте он как то особо не стремится, предпоследняя точка была 10 метров, подошел он к ней где то на метрах 15-20, и пошел к точке посадки уже особо не снижаясь, при пролете точки посадки оно просто вырубило двиг и пофигачило в поле по прямой 😃 Садиться плавненько и аккуратно, но крайне не там где бы хотелось 😃
Вот думаю может закрылки замутить? Как только программа доходит до команды автопосадки, с выключением двигла самуль выпускает закрылки, при этом растояние которое придется профигачить по полю пешем, можно сильно сократить 😃

alex-ber

Леонид!
Молодцы! У меня в эти выхи не срослось на поле выехать …
За то закончил наземку!
Вы лог полета писали? Скинь посмотреть…
Какая прошивка?
Спасибо.

LeonVS

Прошивку не менял, как залит тогда 26 так она и крутится 😃
Не залить… файл весит 1.9мб, форум позволяет только 972кб…

dpiter.info/35.rar

Там несколько полетов, в середине автопосадка улетела в кусты 😃)) Тот что вконце, полная автономка, сел на поле, но все равно крайне не близко 😃

Еще заметил что в полете глючил передатчик, врубался РТЛ… видимо из багажника авто дальность крайне сокращается 😃

Syberian
LeonVS:

при пролете точки посадки

Маленкое уточнение 😃 воспринимай точки в мисси как команды. Т.е. LAND это не точка посадки, а команда выключить движок и поддерживать нулевой тангаж и сохранять курс. Предполагается, что самоль сам сядет. Однако, в прошиве есть режим авто-флаперонов при посадке. Надеюсь, Виктор нас чем-нибудь порадует в плане миксера 😉

LeonVS
Syberian:

Маленкое уточнение воспринимай точки в мисси как команды.

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

Syberian:

Однако, в прошиве есть режим авто-флаперонов при посадке.

Хм… а где сие активируется? Только как пользоваться если элероны висят на одном канале??? По идее нужен еще задействовать один канал, или специально для закрылок, или чтоб задействовать по каналу на элерон…

dundel1
LeonVS:

просто вырубило двиг и пофигачило

Из мануала

Auto landing instructions

To land the plane, simply add a NAV_LAND command to the end of your mission indicating the latitude, longitude and altitude of your desired touchdown point. In most cases, the altitude should be set to 0. During landing, the APM will shut down the throttle and hold the current heading as soon as the plane is within 2 seconds of the touchdown point horizontally, or as soon as the plane is lower than 3 meters above the touchdown point, whichever occurs first.

On approach, the APM will fly normally if you have an airspeed sensor. If you do not have an airspeed sensor, the APM will hold 0 pitch.

Мой вольный перевод:), как я это понял
"Инструкции автоприземления

Чтобы посадить самолёт. добавьте в конце миссии команду NAV_LAND, укажите широту, долготу и высоту желаемой точки приземления. В большинстве случаев высота устанавливается в 0. Во время приземления APM убирает обороты и и удерживает текущее положение, как только самолёт находится “в горизонте” в течение 2 секунд после точки приземления , или как только самолёт ниже чем на 3 метра высоты точки приземления, (что произойдёт раньше).

На подходе, APM будет лететь нормально, если есть датчик воздушной скорости. Если у вас нет датчика воздушной скорости, APM удерживает тангаж 0."

Получается, при наличии бароскорости он будет управлять тангажом на посадке и сажать гораздо ближе к назначенной точке, не уфигачивать так? Или я ошибаюсь?

LeonVS

Олег, есть новости по обвесам для вортекса? Датчик тока, бароскорость, ОСД?

ViktorDoma

Господа, временно (дня 2-3) я не смогу заняться проектом и миксами, так как работаю в конторе торгующей в том числе и конфетами. У нас щас ДУРДОМ круглосуточный.
И эта хрень прекратится только 30-го ночером.

Так что звиняйте дядьки, в энтом годе уже выложить скорее всего не успею. 😦

Чё успел. У меня заработали ВСЕ каналы на выход (можно миксовать любые каналы по желанию).

Возникла трабл - почему то при калибровке радио каналов (Вход из приемника), не эрегирует на 6-й канал (R6) соответственно. Проверил выход из приемника осцилом - журчит, но Вортекс его не видит упорно.

Разбираться почему - пока нет возможности 😦 по причинам изложенным выше.

Как тока цунами голодных прекратится - примусь за проект.

Жду прихода из буржуинства радио модемоФ. Присмотрел Авиа-Джой с 6-ю пропорциональными каналами и туевой хучи кнопок - эх, ещуб да магаза вырвацО.

alex-ber

Такая же беда - конец году…
С наземкой разобрался, обещал Олегу фотосесию - постараюсь на днях выложить…
Олег, коробчонкой рад немеряно, но - жена тоже очень довольна! Встает проблема - как у жены на поле отобрать…
Свои бабки (перед женой…) коробчонка уже откасила полностью…
По проекту - как только вырвусь с работы вплотную займусь перестановкой платы (по уровню и с использованием нанотехнологий…).
ПС Просмотрел логи Леонида - тоже траблы с курсом самика по компасу… Хорошо, что Олег вернул калибровку в ручную… Жду погоды и свободной минутки…
ППС С Наступающим!

LeonVS

Господа, а можно как то вызвать LAND режим, дабы протестировать кой чего?
Хочу выпустить закрылки при включении сие режима. У кого есть навыки кодинга в пирате, подскажите 😃?

case MAV_CMD_NAV_LAND:
calc_nav_roll();

if (g.airspeed_enabled == true){
calc_nav_pitch();
calc_throttle();
}else{
calc_nav_pitch(); // calculate nav_pitch just to use for calc_throttle
calc_throttle(); // throttle based on altitude error
nav_pitch = landing_pitch; // pitch held constant
}

if (land_complete){
g.channel_throttle.servo_out = 0;
Сюда вставляем допустим 8 канал отклонить на 50%
}
break;

Это нужный кусок кода???