Полетные режимы вашего квадрика и направление на экране аппы

strizhmax
HATUUL:

СПАСИБО

Спасибо еще не за что говорить. Это прошивку кроме SergDoc никто и не видел.

HATUUL:

Вопрос.На сколько 64 кастрирована?

Вырезал сплешскрин, потом начал вставлять куски, пока не появился 5й экран телеметрии и инициализация этой телеметрии. Камень забит под 99%. Так что лучше разобрать и перепаять на 128ю.

HATUUL:

2.Насчет ардуинки на борту.(Предложение)

Я уже не лелаю на 3.1, все на 3.2. В моем полетнике места еще валом. Весь код из внешней ардуины я перекинул в полетник. Так что этот вопрос скорее к топик стартеру.

Ну а если по поводу подсветки, то мне больше такие ленты по душе (~30$ метр за 144 диода/метр).
Еще с подсветкой и внешней арду Влад что-то выдумывает.

www.youtube.com/watch?v=JIgfx2zUcPY

HATUUL

Сори.
Мне показалось,что вы с Виктором в одной команде.
Виктор ,спасибо за ваш проект.Извените если обидел.
СПАСИБО

strizhmax
HATUUL:

Мне показалось,что вы с Виктором в одной команде.

Я пытаюсь подключиться.

4refr0nt

Ну вот, как и обещал, выкладываю следующую версию 1.1.114
Скачать можно с гугла с помощью svn. Для тех, у кого возникали затруднения со скачиванием прошивок с гугла, прикрепляю архив с прошивками к этому посту.

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

Возможны небольшие недоразумения с отображением направления на точку взлета, в связи с тем, что у меня “нелетная погода” и протестировать в поле не было возможности. По тем же причинам не тестировалось расстояние до wp и home.

Обратите внимание, что появились отметки о направлении “домой” и “на waypoint”. Home_dist рассчитывается так же, как и в ArduCAM и MinimOSD.

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

Поддерживаются все полетные режимы текущей версии 1.3.3-dev ардукоптера, включая FLIP, AutoTune и PosHold.

Поддержка 24 сообщений уровня SEVERITY_HIGH (все PreArm, AutoTune, а также новые ESC Cal, Low Battery и Lost GPS)

Поддержка DGPS и RTK режимов.

Остальное всё видно на фото.

Ну, в общем, всё как обычно: комменты, вопросы, пожелания - вэлкам!

Mavlink_to_FrSky-1.1.114.zip

HATUUL

Красотища!!!😇😃😃😃
Виктор,еще раз СПАСИБО за проделанную работу.
Уже поставил.64К

Появилось пару вопросов.

1.“Переходник ардуинку” обязательно прошивать,вроде память теперь увеличилась с 15к до 22Кб.

2.Что означает % ЦП под радаром?

3.Что теперь урезанно в 64к версии?

4.К АРМ у меня подключена и телеметрия-433 и ОСД,короче сыкотно соединять еще и фриску к RX-APMа,на данном этапе это критично.
Т.Е. АРМ общается с ардумодулем?

5.У меня на пульте стоит говорилка,есть какая-то возможность научить говорилку сообщать алармы?

6.И на ардумодуль световые сообщения ,хотя-бы два канала,трудно?
1-АРМИНГ.(Загорается).
2-Если есть проблемы.(Мигает).

4refr0nt
HATUUL:

1.“Переходник ардуинку” обязательно прошивать,вроде память теперь увеличилась с 15к до 22Кб.

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

2.Что означает % ЦП под радаром?

это загрузка проца APM. Полезно тем, у кого много всего навешано на контроллер, особенно если задействованы оба UART

3.Что теперь урезанно в 64к версии?

Из стандартной 812 прошивки полностью убраны HELI и TEMPLATES, в моих доработках все направления считаются с высокой погрешностью, отключена индикация “здоровья” сенсоров, полностью отключена система передачи сообщений (PreArm и остальные)

4.К АРМ у меня подключена и телеметрия-433 и ОСД,короче сыкотно соединять еще и фриску к RX-APMа,на данном этапе это критично.
Т.Е. АРМ общается с ардумодулем?

Критично по питанию - да, возможно, лучше питание разнести (самая прожорливая - телеметрия 433, лучше ее отдельно запитывать).
А по каналу TX,RX - смело подключайте (не забудьте про землю). Если не подключать канал передачи от ардуины к ардупилоту могут наблюдаться задержки с отображением информации и отсутствие отображения некоторых параметров, однако при подключении на ОСД будут задержки с отображением горизонта accX, accY, accZ.

5.У меня на пульте стоит говорилка,есть какая-то возможность научить говорилку сообщать алармы?

С удовольствием бы сделал, но у меня пульт без говорилки.

6.И на ардумодуль световые сообщения ,хотя-бы два канала,трудно?
1-АРМИНГ.(Загорается).
2-Если есть проблемы.(Мигает).

Да, это можно сделать. Пендосы уже давно у меня просят - понакупали себе jd IO Board. Надо бы подумать нам всем вместе что именно требуется и сделаем.

😃
Еще у меня есть идея вот такого развития проекта:

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

HATUUL

Ну вот сделал маленький тест видео.

Вроде все хорошо,кроме альтитуды.
И если не трудно HDOP X.XX можно сделать вместо XXX.

4refr0nt:

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

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

4refr0nt:

Да, это можно сделать.

Спасибо очень буду ждать,поверьте лампочки всегда привлекают.:devil:

4refr0nt:

все направления считаются с высокой погрешностью

В имеете виду радар?

П.с.Почемуто при арме линия на радаре прыгает влево,по идее она должна была смотреть вверх.На видео видно.

Protez1999

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

froller
Protez1999:

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

Arduino IDE - не самый лучший софт для прошивки, если не надо компиллять из исходников, которые используют ардуиновские либы (то еще гуано, надо сказать).
Для заливки бинарей и хексов в AVR очень хороша CodeVision AVR. Умеет кучу программаторов (от bit-bang через LPT до JTAG) и позволяет компиллять из Цэ и ассемблера.

P.S. 9XR и свои платы на ATtiny шил именно через CodeVision.

4refr0nt
Protez1999:

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

Почитайте это (раздел про XLoader). Проверял сам лично, все работает.

Используйте USB->TTL конвертер на базе чипов FTDI, CH340 или CP2104 с линией DTR (чтобы не мудрить с reset) вроде этого, или возьмите такой комплект. Получается по деньгам очень демократично: ардуина 100 руб + USB->TTL 100 руб. с бесплатной почтовой доставкой 😃

Если будете шить ардуину из исходников, то для текущей версии используйте ArduinoIDE 1.0.6 (предыдущий релиз был собран на более ранней версии, ссылка, указанная в начале топика устарела)

Турнигу я шью этим с помощью eePe.

4refr0nt

Исправил замеченные ошибки и выложил новую версию.

Сейчас поддерживается 8-канальная подсветка.

4 канала подсветки на лучи: FRONT (arduino pin 7), REAR - 8, LEFT - 9, RIGHT - 10.
Подсветка настраивается по “паттернам” (об этом ниже)

4 канала для цветных светодиодов вроде этих
Белый светодиод (pin 2) включается при арминге
Голубой светодиод (pin 3) включается при 3D Fix и hdop <= 200
Красный светодиод (pin 4) включается при получении любого сообщения от APM уровня CRITICAL
Зеленый светодиод (pin 13) и светодиод на ардуине повторяют светодиоды переднего луча

По паттернам. Подсветка настраивается только в исходниках, настраивать через специальную программу как в jd IO_Board возможности нет, PWM тоже не реализовано (т.е. нельзя плавно включать-выключать светодиоды)
В файле APM_Mavlink_to_FrSky.ino начиная где-то со строки 60 вы найдете

char LEFT_STAB[]   PROGMEM = "1111111110";   // pattern for LEFT  light, mode - STAB
char RIGHT_STAB[]  PROGMEM = "1111111110";   // pattern for RIGHT light, mode - STAB
char FRONT_STAB[]  PROGMEM = "1111111110";   // pattern for FRONT light, mode - STAB
char REAR_STAB[]   PROGMEM = "1111111110";   // pattern for REAR  light, mode - STAB

char LEFT_AHOLD[]  PROGMEM = "111000";  // medium blink
char RIGHT_AHOLD[] PROGMEM = "111000";
char FRONT_AHOLD[] PROGMEM = "111000";
char REAR_AHOLD[]  PROGMEM = "111000";

char LEFT_RTL[]    PROGMEM = "10";  // fast blink
char RIGHT_RTL[]   PROGMEM = "10";
char FRONT_RTL[]   PROGMEM = "10";
char REAR_RTL[]    PROGMEM = "10";

char LEFT_OTHER[]  PROGMEM = "1";  // always ON
char RIGHT_OTHER[] PROGMEM = "1";
char FRONT_OTHER[] PROGMEM = "1";
char REAR_OTHER[]  PROGMEM = "1";

Это настройка подсветки левого луча в режиме STABILIZE. Один символ в строке - это 0,1сек времени. По умолчанию сейчас 0,9сек подсветка горит, затем на 0,1сек тухнет для всех лучей. Соответственно, строка типа “1111100000” будет означать 0,5сек вкл затем 0,5сек выкл, строка “01” 0,1сек выкл затем 0,1сек вкл и т.д. Строки могут быть разной длины. Суммарная длина всех таких строк ограничена размером флеш памяти на ардуине. Для подсветки осталось около 500 байт - довольно много.
Сейчас реализована настройка подсветки в четырех режимах: stab, althold, rtl и все остальные. Каждый из четырех лучей настраивается индивидуально.

Подсветка по умолчанию сейчас: STAB - медленно мигает (0.9+0.1),
ALTHOLD - средне (0,3+0,3), RTL - быстро (0,1+0,1), на остальных режимах горит постоянно.

Делайте свои красивые паттерны, выкладывайте видео. Самые прикольные сделаю в прошивке по умолчанию.

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

Mavlink_to_FrSky-1.1.117.zip

Protez1999

все получилось спасибо. Диоды на ардуинке подрубал через транзисторы кп 505. правда давно было

HATUUL

Еще не пробовал,программатор забрали,завтра пропишу.
А я ленты подключаю через ULN2003.
как то так.

HATUUL

Наконец прошил пульт,и ардуинку,огни пока не подключал,вроде все нормально . Постараюсь выйти на поле,и там потестить.
Пока настроен заменить мегу64 на 128.

4refr0nt
HATUUL:

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

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

HATUUL:

Пока настроен заменить мегу64 на 128

отличная идея

Freepooh

4refr0nt, THR и AIL всегда включены, наверное это неправильно, в прошивке не учтен FrSky-мод
9X, FrSky-мод, м128, v1.1.117

4refr0nt
Freepooh:

4refr0nt, THR и AIL всегда включены, наверное это неправильно.
9X, м128, v1.1.117

Прочитайте это

HATUUL

Наконец вчера смог выгулять своего питомца.😁
Экран,очень помог.😃
Правда в полете надписи мелковаты,чтоб на миг глянуть,что да как.Приходиться сосредотачиваться.
Из своих наблюдений.
Бортовое питание наверно лучше скинуть вниз отдельно,под радар.Сверху слева стока всяких питаний ,не успеваю понять,где на аппе,где на пульте.
И походу индикация бортовухи не совсем правильно работает,в начале показал,что акк разряжен,а под конец наоборот полный.Но это со слов напарника.
Да Виктор,не можете чуть подробней описать индикацию самого радара.Что-то недопонял…Что означают полоски кружечки?
Из ненужны параметров для меня.
Высота жпса.
Так и не понял,что показывает полоска под хдоп?

4refr0nt
HATUUL:

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

Да, я так же думаю. Только как найти компромисс между набором отображаемых параметров и размерами шрифтов?

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

Оставшийся заряд аккумулятора, ток и напряжение ардуине выдает APM. Ардуина отправляет его в пульт в неизменном виде. У меня неоригинальный PowerModule. Я его калибрую в MP при подключенном акке: Initial Setup -> Optional Hardware -> Battery Monitor: указываю свою емкость акка, измеренные тестером напряжение и ток, а MP сам выставляет Voltage Divider и Amps per Volt. Далее все работает примерно так: когда подключаете акк, APM считает, что тот полностью заряжен. Выдает вам на пульт напряжение с учетом дивайдера, рассчитаного при калибровке. Далее, под нагрузкой, считает ток и время - получаются амперчасы, которые он вычитает из введенной емкости акка. Поэтому если отключить/подключить разряженный акк - будет каша. Если нет PowerModule то эти данные, скорее всего, вообще не имеют смысла. Не могу точно сказать, как APM в этом случае считает. Без PowerModule ориентируйтесь по напряжению CPU.

Да Викор,не можете чуть подробней описать индикацию самого радара.Что-то недопонял…Что означают полоски кружечки?

На радаре три указателя: большой, маленький в одну полоску и маленький в три полоски.
Большой указатель показывает направление носа по компасу. До арминга направление соответствует обычному компасу (север вверху). После арминга работает как в SIMPLE режиме, т.е. вверху уже не север, а то положение, в котором находились до арминга, т.е. в точке взлета. Теоретически, чтобы вслепую вернуть коптер, который уже не видно куда повернут носом, нужно по пульту дать ему направление точно “на юг” и аппарат должен лететь в направлении к точке взлета и появится в зоне уверенной видимости. Вся затея с этой телеметрией мною задумывалась именно ради этого, а потом уже “обрасла” остальным.

Маленький указатель в одну линию - направление на текущий WP. Имеет смысл, если летаете по заранее спланированному маршруту в MP. Отдается в том виде, как его выдает APM.

Маленький указатель в три линии - направление домой. Находится в стадии тестирования, жду отзывов. Рассчитывается как и расстояние “до дома” по разнице текущих GPS координат и точки взлета (алгоритм тот же, что и в различных OSD).

Так и не понял,что показывает полоска под хдоп?

Это что-то типа “сердцебиения”. Индикатор приема данных. Заполнение этой полоски обратно пропорционально времени, прошедшему с момента приема последнего пакета данных телеметрии.
Полоска почти полностью заполнена - все ок, данные приходят. Не заполнена - превышено время ожидания, т.е. либо FrSky модуль не передает данные, либо ардуина. Попробуйте на земпле, когда все уже подключено и работает, сбросить ардуину кнопкой, при этом отслеживайте показания на аппе, вот тогда сразу все понятно станет.

Freepooh

Спасибо! Все работает четко, включая питание и иллюминацию (добавил все используемые режимы), только временные параметры мне кажется не соответствуют, но это не существенно.
По паттернам, кстати, замечание - длина паттерны должна быть одинакова для всех четырех каналов настраиваемого режима

4refr0nt:

как найти компромисс между набором отображаемых параметров и размерами шрифтов?

Может размер радара уменьшить?
“CPU” - нужен ли?

4refr0nt:

Индикатор приема данных

Не расточительно отдавать под него 4 пикселя?

HATUUL:

Сверху слева стока всяких питаний

да, не разберешься… я бы напряжение пульта вообще убрал
Еще хотелось бы стрелочку на радаре более “сглаженную”, если не трудно 😃

4refr0nt
Freepooh:

я бы напряжение пульта вообще убрал

это напряжение в этом месте на всех страницах телеметрии. Из стандартной er9x. Переключаясь между экранами телеметрии вы всегда видите напряжение аппы в этом месте. Вот я и не взял на себя смелость это изменить. Тем кто привык, что напряжение аппы в этом месте, по другому покажется нелогичным. Так что попробуйте привыкнуть.

Freepooh:

Еще хотелось бы стрелочку на радаре более “сглаженную”, если не трудно 😃

Если у вас версия для 64 меги, то сгладить можно, но нам не хватает памяти меги для подключения библиотеки расчета синусов и косинусов. А вырезать что-то другое ради красивости стрелок будет не очень разумно. Сейчас в этой версии углы считаются с точностью до 15 градусов. Синусы рассчитаны вручную и берутся из табличных значений. Поэтому, да, выглядит не очень.

Если у вас версия для 128 меги, то менее ломанную линию сделать невозможно - мы ограничены разрешением экрана. Правда есть вариант с использованием более красивых, заранее прорисованных не линий, а стрелок, но боюсь, мы опять будем расточительно расходовать все виды памяти меги (оперативки там тоже впритык). Хотя, быть может, готовые стрелки займут меньший размер, чем math библиотека. Кстати такой способ используется в OSD. Если кто-нибудь нарисует 16 или, хотя бы, 12 стрелок для радара (его размер 47х47) и они получатся симпатичней простых линий, то я постараюсь их запихать в существующий код.