Система стабилизации DJI для вертолетов классической схемы и не только!

vik500

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

btr1209

Алексей вам надо скачать вот от сюда arduino.cc/en/Main/Software вот это Windows ZIP file for non admin install
весит 202 метра и подключит от туда все библиотеки тогда многое заработает более корректно там практически все функции которыми пользуются мультивии есть

там неплохие исходники для управления сервами

alekseii

Виктор, гадать какой будет алгоритм (такой или иной) - гадать без толку !!!
Сделать плату со входами и выходами и подключённым экраном, далее “тупое” (это я про себя:) ) сидение перед изменяющимися цифрами (при изменении положений джойстиков на пульте). Именно так.
По поводу алгоритмов, да он понадобится, но после осознания “увиденных” сигналов (конкретно по поводу программы для адаптера, в ней нет обработки данных ГПС (ГЛОНАСС), в целом, будет гораздо проще). Посоветуетесь, Вам всё расскажут, главное выбрать МК (микроконтроллер) . На самом деле, как я написал, можно (практически) любой МК, в том же хеликоманде (в блоке с “проводами”) стоит старенькая мега48, но надо “с уметь” “запустить” свою программу на на тех так сказать “дровах”. Всё можно сделать, нет аппаратного таймера - “делаем” программный, нет встроенного интерфейса - “пишем” его сами, итд. Как говорится, МК не сможет только кофе сварить 😃 Но для этого нужны знания и опыт. Если его нет - то лучше “взять” современный МК, в котором многое реализовано в “железе”, то есть аппаратно.

alekseii

P.S. есть люди для которых важен процесс управления моделью, а есть для которых важен сам процесс изготовления 😃

vik500

Люди помогите дописать этот бред. Программист видел вертолет только на витрине детского мира, и ему надо рассказать всё до последней мелочи.
Техническое задание для программиста.

  1. В состоянии покоя когда мы не трогаем ручки управления все сигналы на выходе НАЗЫ одинаковые, и они должны повторятся на выходах микроконтроллера 1,2,3,4.

Управление Шаг-Газ
При изменении газа на всех шести выходах НАЗЫ сигналы изменяется одинаково (меняется скважность) и на выходах 1,2,3 нашего микроконтроллера должны быть такие же, но при этом надо учитывать что выход НАЗЫ

М1,М4 управляют выходом 1 микроконтроллера,

М2,М5 управляют выходом 2 микроконтроллера,

М3,М6 управляют выходом 3 микроконтроллера,

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

При изменение длительности импульсов сигнала между выходами НАЗЫ (при развороте) они меняются, на М1,М2,М3, скважность уменьшается а на М4,М5,М6 увеличивается или наоборот это зависит от направления разворота, а на выходах 1,2,3 сигнал не должен меняться.

Управление Курсом

4 канал не зависит от предыдущих трех. Выход 4 микроконтроллера, при изменении газа сигналы на выходе М1, М2, М3, М4, М5,М6 изменяются одинаково а на выходе 4 нашего микроконтроллера сигнал не должен меняться и только при повороте когда сигналы на выходах НАЗЫ М1,М2,М3 будут отличатся от М4,М5,М6 по длительности импульса на выходе 4 длительность сигнала тоже будет меняться. Тем самым будет управление хвостом.

Управление креном.

При изменении сигнала между М2 и М5 а также между М3 и М6 сигнал на выходе 1 и 3 также меняется. (пояснение: на М2 длительность сигнала уменьшается на М5 увеличивается, на М3 увеличивается а на М6 уменьшается то есть сервоприводы должны вращаются в разные стороны)

Управление тангажом.

  1. На все четырёх выходах микроконтроллера надо сделать

а) регулировку конечных точек.

б) регулировку центральной точки.

в) а также реверс.

robis
alekseii:

P.S. есть люди для которых важен процесс управления моделью, а есть для которых важен сам процесс изготовления

А есть еще те, для кого важно и одно и другое 😉

alekseii:

похоже у меня не получится собрать этот “адаптер” на уже купленном контроллере m32u4, нужен m2561

Почему? Задача Y6=>H3 вроде не архисложная (хотя все относительно), но Вы и сами пришли к выводу, что тип контроллера не сильно важен - иногда можно менять просто подход (например, таймер аппаратный или программный). Можно и на меге 328.
Мне думается, что при выборе МК важнее его вес с обвязкой, размер, цена, доступность, и удобство применения для наших целей (например, возможность менять параметры в поле).

vik500:

Я только что разговаривал со специалистом с ИРИС www.pkpiris.ru в понедельник или вторник надо уже конкретную дать информацию.

Виктор, если Вы ставите задачу программисту, то лучше предварительно определиться с МК (тут важно мнение Алексея, т.к. он ближе всех касался темы). Далее, я тоже готов финансово поддержать этот проект, но не стоит надеяться, что первая версия вот так замечательно и сразу заработает. Практически всегда “всплывают” мелкие и крупные неожиданности как по части постановки задачи так и в программ или сама Наза “выкинет” сюрприз. Обычно бывает несколько версий (~10-30) и за каждую платить?
Поэтому, лучше будет, предварительно согласовать железо (МК), еще раз “вылизать” начальный алгоритм (его надо максимально именно закончить), предать все это дело программисту, ну и сразу договориться о передаче исходников и готовой среды программирования для нас.

P.S. С логикой пока “заминка”. Есть сложности, поначалу показалось, что все проще, но когда нарисовал на бумаге возникли вопросы.

vik500

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

btr1209
vik500:

Люди помогите дописать этот бред. Программист видел вертолет только на витрине детского мира, и ему надо рассказать всё до последней мелочи.
Техническое задание для программиста.

  1. В состоянии покоя когда мы не трогаем ручки управления все сигналы на выходе НАЗЫ одинаковые, и они должны повторятся на выходах микроконтроллера 1,2,3,4.

Будим считать что на входе одинаковые а вот на выходах разные должны быть

vik500:

Управление Шаг-Газ
При изменении газа на всех шести выходах НАЗЫ сигналы изменяется одинаково (меняется скважность) и на выходах 1,2,3 нашего микроконтроллера должны быть такие же, но при этом надо учитывать что выход НАЗЫ

не должны быть такие же , если по уму они должны быть одинаковы в процентном соотношении по отношению к входным

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

vik500:

М1,М4 управляют выходом 1 микроконтроллера,

элеватор

vik500:

М2,М5 управляют выходом 2 микроконтроллера,

элерон

vik500:

М3,М6 управляют выходом 3 микроконтроллера,

пич или шаг (кто как привык)

vik500:

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

При изменение длительности импульсов сигнала между выходами НАЗЫ (при развороте) они меняются, на М1,М2,М3, скважность уменьшается а на М4,М5,М6 увеличивается или наоборот это зависит от направления разворота, а на выходах 1,2,3 сигнал не должен меняться.

плевать на выходы 1,2,3 полетный контролер с механической обратной связью так что это уже проблемы назы если верт даст крен наза выровняет вы и не заметите

vik500:

Управление Курсом

4 канал не зависит от предыдущих трех. Выход 4 микроконтроллера, при изменении газа сигналы на выходе М1, М2, М3, М4, М5,М6 изменяются одинаково а на выходе 4 нашего микроконтроллера сигнал не должен меняться и только при повороте когда сигналы на выходах НАЗЫ М1,М2,М3 будут отличатся от М4,М5,М6 по длительности импульса на выходе 4 длительность сигнала тоже будет меняться. Тем самым будет управление хвостом.

баба яга против на 4 канале то есть руль направления но рудер короче правда, так вот на рудере должен быть постояный сигнал нуля сервы

и по возможности стоб был выбор между 1520 , 760 и третий не помню допишите кто знает это центр сервы значить тоже в процентном прибавляться или отнимается от середины
пример разница между верхним и нижнем составит 10% значит 1520+10%= 1748 это одно направление или 1520-10%=1292 это другое направление итак для всех возможных
серв

vik500:

Управление креном.

При изменении сигнала между М2 и М5 а также между М3 и М6 сигнал на выходе 1 и 3 также меняется. (пояснение: на М2 длительность сигнала уменьшается на М5 увеличивается, на М3 увеличивается а на М6 уменьшается то есть сервоприводы должны вращаются в разные стороны)

мне кажется здесь ошибка как то лишено логике на столе может и так
а воздухе вряд ли кто мерил разве что назовцы М6,3 это один луч М5,2 второй луч логичнее М5,2 убавить а М6,3 добавить газу чтоб получился крен и при этом центр коптёра сохранил свое положение , проверьте плиз свои наблюдения на этот счет

реверс нужен на все 4 канала

vik500:

Управление тангажом.

  1. На все четырёх выходах микроконтроллера надо сделать

а) регулировку конечных точек.

б) регулировку центральной точки.

не вижу необходимости в центральной точке вообще если считаете что нужна объясните зачем то есть практическое применение

vik500:

в) а также реверс.

vik500:

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

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

1 ISR(TIMER0_COMP_vect) // Прерывание по совпадению
2{
3 if (servo_state) // Если не нулевое состояние то
{
OCR0 = ServoNextOCR[servo_state]; // В регистр сравнения кладем
4 PORTA &= ~ServoPortState[servo_state]; // Сбрасываем биты в порту, в
//соответствии с маской в массиве масок.

vik500

ТИПОВОЙ СОСТАВ ТЕХНИЧЕСКОГО ЗАДАНИЯ

Название или цель проекта. Должно вкратце отражать суть задания: что должна делать разрабатываемая программа или устройство на её основе.
Предмет разработки. Опишите, что конкретно Вы хотите получить от нас в качестве результата: только ПО для микроконтроллеров, либо ПО и схему устройства на бумаге, либо готовое устройство, и так далее. Для готовых устройств укажите количество экземпляров, изготавливаемых при заказе разработки.
Чётко укажите границы разрабатываемой части системы: какие конкретно части системы разрабатываем мы, а какие уже существуют или будут созданы Вами (разработаны, приобретены и т. д.) самостоятельно. Один из хороших способов сделать это – нарисовать функциональную схему всей системы (в виде «квадратиков» и связей между ними) и обвести пунктиром те её части, которые должны разработать мы.
Тип микроконтроллера, язык программирования. Укажите тип микроконтроллера, который должен будет использоваться (если он известен), либо укажите, что выбор микроконтроллера оставлен на наше усмотрение. Также укажите язык программирования, который должен использоваться (если для Вас он имеет значение), либо укажите, что выбор языка программирования оставлен на наше усмотрение.
Если эти вещи не имеют для Вас принципиального значения, мы рекомендуем оставлять их на наш выбор. При этом Вы можете указать свои требования или пожелания к выбираемым микроконтроллерам (тип корпуса, напряжение, температурные характеристики, цена, и т. п.).
Технологии изготовления (для устройств). У Вас уже выбраны требуемые типы корпусов и внешних разъёмов разрабатываемого нами устройства, или они остаются на наше усмотрение (либо не нужны совсем)? Требуется ли создать дизайн внешнего вида устройства, или он не имеет значения?
Нужно ли делать разводку печатных плат, или устройство можно собрать на макетной плате? Какие технологии должны использоваться – обычная пайка или поверхностный монтаж? Если Вам трудно определиться с этим, укажите, какое количество таких устройств планируется производить в будущем и где Вы будете их делать (сами или у нас), и мы поможем Вам выбрать оптимальные технологии изготовления.

Детали реализации программы или устройства. Чётко поясните следующую информацию:
· Какие сигналы от каких устройств и в каком виде получает микроконтроллер или устройство (АЦП, датчики, другие контроллеры и т. п.).
· Какие сигналы формирует микроконтроллер или устройство (управляет какими-то другими устройствами и т. п.).
· Связывается ли микроконтроллер (устройство) с ЭВМ. Если да, то каким образом (по какому протоколу) и какая программа будет с ним взаимодействовать.
· Алгоритм работы программы или устройства (что конкретно в какой момент она должна делать и т. п.). Например, можно составить и приложить блок-схему, либо описать алгоритм словесно.
· Характеристики питания микроконтроллера или устройства (напряжение питания контроллера, предельный потребляемый ток, нужен ли энергосберегающий режим, и т. п.).
Укажите все известные Вам подробности – конкретные типы и модели устройств и элементов схемы, протоколы связи, и другую известную Вам техническую информацию о проекте. Если у Вас есть функциональная или электрическая схема устройства, желательно приложить её, т. к. это поможет нам понять задачи, решаемые микроконтроллером, и алгоритмы его работы. Вы также можете указать, какие технические вопросы Вы оставляете на наше усмотрение. Если проект подразумевает, что мы должны разработать также программу для ЭВМ, необходимо описать требования к ней.
Прошивка и отладка. Как будет происходить прошивка микроконтроллеров: сможете ли Вы прошить микроконтроллеры самостоятельно, или это должны делать мы (в последнем случае, вышлете ли Вы нам чистые микроконтроллеры или мы должны приобрести их сами).
Те же вопросы возникают в отношении тестирования и отладки ПО или работы устройства: будем ли мы производить их сами, либо эту работу будете выполнять Вы. Учтите, что отладка, как правило, многоэтапна и требует определённых технических навыков. В подавляющем большинстве случаев отладка производится на стороне разработчика. Однако в некоторых случаях какие-то части конечной системы (управляемое оборудование, датчики, источники специфических сигналов и т. п.) могут у нас отсутствовать. Как в таком случае можно будет проверить и отладить работу изготавливаемого ПО или оборудования? Можете ли Вы предоставить нам такие средства на время выполнения работ? Может ли мы сами сымитировать их работу? Или конечная отладка возможна только у Вас?
Другая информация. Опишите любые другие Ваши пожелания, касающиеся проекта (например, что важнее – повысить надёжность или быстродействие устройства, снизить цену, повысить скорость выполнения заказа и т. п.).
Полнота описания. Опишите задачу настолько полно и точно, насколько можете. При необходимости наш специалист свяжется с Вами и уточнит детали, не отражённые в ТЗ.

btr1209

тут столько написано что проще сказать “вертолетная наза с возвратом домой”

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

vik500

Это типовое задание а нам надо написать своё, вот я выложил своё и попросил проверить и дописать как я назвал бред.

vik500

Завтра еду на встречу с программистом.

13 days later
vik500

Здравствуйте. Что то наша тема возвращение вертолёта на автопилоте совсем заглохла, или стала всем совсем неинтересна? Китайцы прислали мне GPS, теперь буду ставить НАЗУ на бензиновый вертолёт. Я также продолжаю разработку контроллера к НАЗЕ, и кто что не говорил я всё же вернулся к схеме на дискретных элементах, не хочу хвастаться но прогресс я думаю есть. “Огород” не такой уж и большой пока плата 8х8 см. после испытания и приведения её в порядок она уменьшится как минимум в два раза. А сейчас для меня вес и размер не какой роли не играет, мой Radikal подымет и не такое. Главное что бы всё работало на все сто.

robis
vik500:

Что то наша тема возвращение вертолёта на автопилоте совсем заглохла, или стала всем совсем неинтересна?

Виктор приветствую! Разумеется интересна! Просто все видимо, в силу причин, разбрелись по своим “песочницам” ) Лично я был сильно занят, просто не до хобби. Тоже есть новости.
Приехала Наза, но я еще ничего не смотрел. Вот кстати, ссылка как сделать самому GPS для Назы (бюджетно), но самое интересное в этом то, что можно сделать GPS/Glonass, а это очень положительно скажется на качестве работы GPS. Пока переключился на альтернативный контроллер - Vector. Смысл в том, что с ним задача на порядок проще. Там есть трикоптер, а это уже готовый вертолет (RTH, гибкие настройки + очень хороший OSD). Проблема только в настройке конечных точек и центрального положения серв, но вот есть один из вариантов решения.
Наза тоже интересна по двум причинам: 1) хорошая виброразвязка, а это надежность. 2) это бюджетно. Виктор, если уже есть наработки по схемотехнике, то очень любопытно взглянуть.
www.*************/blogs/view_entry/10771/
P.S. почему то ссылка на паркфлаер.ру сохраняется в виде звездочек 😇

Дима=

Я слежу за данной темой очень плотненько, так как свой бензиныч затачиваю под ФПВ потэтому тоже хочу поставить систему с возратом домой (надежную), но так как мои знания в электронике полный ноль то соответственно предложение то же ноль.
На сегоднешний день стоит 3ГХ + АПС отлетал (блином ) наней вес предыдущий сезон , но в стабилизацию и возрат домой так и неиспользовал так как до сегодняшнего дня не могу заставить работать гувенер.

10 days later
vik500

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

yasin

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

Только вопрос что за диоды по входу от назы? Или что это?

Принцип я понял, один 555 (верхний) задает среднюю точку всех серв а на микросхемах идет упровление здвигом других 4 . Принцип сервотестера на 555. Только упррвление не резистором а логикой

Правильно?

vik500

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

Пока TL431

Там аналоговый сигнал (изменение напряжения).

555 хочу заменить на 558

yasin

Просто уменьшить кол-во деталей. Это 4 555 в одном корпусе. Ладно, попробую сейчас нарисовать, может и подскажу чего толкового. просто у меня есть наза Н, но люблю колупаться.