flybrain. передатчик + приемник + автопилот. powered by stm32

AlexSneg
Drinker:

А вот сетап - дело посложнее.

Я и не спорю, что сетап важен. Я лишь говорю о том, что не вижу зависимости между разделением ОСД и горизонта и правильным сетапом.

Drinker:

И на какое расстояние летать с ними?

Некоторые на 15 км умудряются 😉

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

AlexSneg

Вот архив с платой, схемой, списком компонентов. Отдельно указал, где можно купить.
есть темные места с некоторыми номиналами резисторов на модуле согласования. Их номиналы будут после того, как я резистивные делители подберу на реальной плате. Возможно так же некоторые номиналы электролитов будут двигаться вверх или вниз. Пилить на 4 части по обозначенной линии. Нижние две платы - это модуль + АП, слева верх - это датчик тока. Если кому надо, я отдельно дам схему и список деталей. Он до 30 Ампер. Справа вверх - это мой будущий приемник, оно вам скорее всего не надо на данном этапе. Можете оставить до лучших времен. Тема приемника и передатчика, будет продолжена после автопилота.

Если АП + модуль планируется держать вместе, то реально их можно не разделять. Разъемы разведены так, чтобы просто перемычки бросить параллельные.

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

посмотрел сейчас на элитане цены
stm32f405rgt6 - 350 руб
atmega1281-16au - 387 руб
😃
Я конечно давно с мегой не работал и знал, что там все плохо. Но но чтоб на столько!?

flyingbrain-1.1_plus_module-1.0.zip

ViktorDoma

Входящих Каналов из стандартного модельного приемника будет только 6-ть ?

Маловато будет 😦

Или я не нашел ?

Выходных тоже как то не густо, но если не жадничать - хватит.

Датчик тока - как показала практика, все же нуна на 50А.

Может стоит заменить или сделать на выбор.

Какие предполагаются внешние модули ЖЭПЭСЭ ?
1, 5, 10 Гц ?
Какой стандарт будет поддерживаться ?

Dikoy
Oliver:

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

Ну, тут выбор - дёшево или качественно. И опять же, STM8+ПЛИС по цене процентов на 20 выше того же на м8. Так что не вижу причин паники. При том, что ПЛИС позволяет на голову выше возможностей.

Oliver:

Так же как CAN ради CAN

Что вы все до кана домотались? Какой ещё интерфейс предложите для межплатной коммуникации, если специально для этого сделанный не люб?

Oliver
Dikoy:

Что вы все до кана домотались?

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

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

Алекс, относительно схем. Если стремитесь все собрать на одной платке- чем продиктован такой зоопарк с напряжениями? Как минимум все-таки LDOшки с обвязкой худо-бедно, но место занимают?

Dikoy
AlexSneg:

В чем засада не пойму?

Через казань в рязань.

AlexSneg:

моя цель - НЕ иметь много разных модификаций плат

Куды ж ты денесси (с) 😃

AlexSneg:

а иметь все в одном месте.

Гироскопы вы не сможете иметь в том же месте.

AlexSneg:

Какая разница с точки зрения финального результата развертку ПЛИС делает или DMA микроконтроллера?

Задержки. Скорость реакции на событие. Вы не думали, почему в ПК видеокарту выносят в отдельный блок?
Расскажите как вы собираетесь вашим ДМА анализировать пиксель, предшествующий символу, определять каким уровнем серого его надо притушить для наиболее контрастного восприятия символа и выдать на ЦАП необходимый сигнал, дабы притушить. И всё это успеть за время прохождения этого пикселя и невосприимчиво для юзера.
Даже интересно стало. Особенно роль ДМА интересует. Я как-то всегда считал, что оно таким вещам только мешает.

AlexSneg:

Только у себя я имею существенный запас по софтовой гибкости. … Вы же будете вынуждены переписывать прошивку ПЛИС каждый раз + перешивать свой микроконтроллер.

Сфига? Большинство простых ПЛИС не прошиваются, а загружаются. То есть мой МК заливает в неё “прошивку” при каждом старте. Да, это занимает порядка 7 секунд. Но и GPS быстрее не стартует. Так что ничего не надо прошивать. Но даже если и надо, я объединю все МК и ПЛИС в JTAG daisy chain и буду шить через один разъём.
Плюс плис заточена на опр. функцию - ловить строб, выводить буфер, анализировать изображение. Зачем её каждый раз перешивать?

AlexSneg:

зачем мне мучить пользователя ПЛИСами, если я могу тихо и мирно решить все софтово?

Тогда и от прерываний стоит отказаться. Зачем, когда можно 100500 раз мониторить лапу? На 300 МГц то милое дело.

AlexSneg:

Не нужна она по большому счету.

Ещё как нужна.

AlexSneg:

Качественный искусственный горизонт на MEMS датчиках без вычислительной мощности в плавучке вы не получите никогда.

Ви таки удивитесь, но уход БСО от вычислительных мощностей зависит в последнюю очередь.

AlexSneg:

Кстати почему тогда не сделали все на , КР580ВМ80А ?

Ви таки удивитесь, но была версия моего АП на 1886ВЕ3У. Для вояк. И нормально летала.

AlexSneg:

Если пользователь полетает на штатной аппе, а потом ему понравится и он захочет пойти дальше, то ему достаточно будет просто убрать модуль, и поставить мой приемник - все!

И всё это чтобы не впаивать на плату 1 разъём…
Почитайте работы Ю. И. Сабо на тему авиационного резервирования. За одно про грабли вопросы снимутся.

AlexSneg:

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

А я как бы пытаюсь объяснить, что 7 лет назад думал точно также. Потом передумал.

AlexSneg:

Здесь ведь не только скорость но и накопительная точность и плотность кода важна.

Плотность кода на экране или в командах? 😉

AlexSneg:

Вычислите мне в целых числах ln(8.456321 * 10e18 / 0.88941) ???

Зачем? В целочисленной системе числу с точкой просто неоткуда взяться. Логарифм на АВР вычисляется за 16 тактов. Умножение на 10:
X0 = (X*4 + X) * 2
X00 = ((X*2 + X)*8 + X) * 4
X000 = ((X*32 - X)*4 + X) * 8
X0000 = (((X*4 + X)*8 - X)*16 + X) * 16
И т.д.
Ваша страшная формула при подходе НЕ через зад вычислится в восьмибитнике тактов за 40. В 32 битнике тактов за 15. Сколько занимают флоты?

AlexSneg:

потому что, АТМега128 стоит 250руб, а STM32F100RBT6 стоит 130 руб, вот и вся суть.

Когда я выбирал СТМ32, я оперировал такими характеристиками:

  1. Не убивается статикой как ARM.
  2. Не нужно кучу разных напряжений питания.
  3. относительно сильные лапы.
  4. Быстрый (для подобной архитектуры) доступ к пинам из софта.

И цена тут была лишь как бонус.
Если говорить о цене, то STM8, на котором легко можно поднять тимометрию, стОит 30р. Есть аргументы против этого?

AlexSneg:

написать простенький драйвер для PCI железки под винду?

И что в этом сложного, особенно под винду?
Я так то и писал, и железки для PCI делал. И всё это в году 2004-м. Сложностей не заметил, кроме необходимости выравнивания длин проводников на плате.

Oliver:

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

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

Oliver:

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

Да я просто парня пытаюсь от граблей отвести. Бескорыстно. А он упирается… Ну пусть как Ленин идёт своим путём.

AlexSneg:

Вот эти 1,5 ватта лезут в видео сигнал композитный.

Что мешает поставить ФНЧ? Какая частота передатчика?
У вас ещё БП шумит. 10 мкГн для СТ10 мало на таких токах.

AlexSneg
Dikoy:

Сколько занимают флоты?

Любая флоат операция вычисляется не более 2 тактов аппаратно.

Dikoy:

Есть аргументы против этого?

Есть. Таких стм8 надо будет много, и я не хочу подвигов в стиле smalltim. Мне время дороже абстрактных нафталиновых принципов.
У меня нет желания писать на асме, если можно все в сях.
Не экономя на вычислительных ресурсах, я экономлю время. Если у кого-то присутствует желание считать такты МК выпуска 10 летней давности, так я не против, но пусть это будет без моего участия. Упорных трудов превращения вычисления логарифма в 40 тактов на 8 битнике в целых числах, когда можно сделать за 5 тактов не пудря себе мозг, просто написав прямое математическое выражения на сях, в конечном счете никто не оценет. Я не строю баллистическую ракету, стоящую на боевом дежурстве. Мне не нужно резервирование, у меня гражданская система. Гордость мне совершенно спокойно позволяет взять современную элементную базу, разом решить множество проблем, а не выискивать припарки и городить костыли в коде по каждому случаю. Или вы серьезно считаете, что вот это вот -> X0 = (X*4 + X) * 2… не есть костыль от недостатка вычислительных мощностей?

Dikoy:

Гироскопы вы не сможете иметь в том же месте.

Не понял, это почему? Сейчас имю их в том же месте, проблем не наблюдаю, все летает.

Dikoy:

Да я просто парня пытаюсь от граблей отвести

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

Dikoy:

Что мешает поставить ФНЧ? Какая частота передатчика? У вас ещё БП шумит. 10 мкГн для СТ10 мало на таких токах.

Куда поставить ФНЧ? 900МГц. Что такое БП? Блок питания? На каких токах? Там ток выше 200ма не поднимается. Даташиты производителя врут? Они предлагают ставить 4мкГн для 3А при выходе 3V и входном 12В. У меня максимум 200ма.
В принципе у меня тоже есть подозрение, что опорное на компараторе плавает в детекторе синхры из-за сильного радиофона, потому что без работающего передатчика, развертка стоит нормально на экране. У меня вчера не было времени этой темой позаниматься. Проработаю этот вопрос на днях. На крайняк заведу в опорное в МК с линейника 1,8. Оно все равно есть на плате.

Dikoy:

В целочисленной системе числу с точкой просто неоткуда взяться.

А тригонометрия?

===========
Мне тут справедливо заметили что stm32f100r8 отсутствует в элитане по разумным ценам.
Его спокойно меняем на stm32f100rb. Оно даже лучше будет, там флешка 128кб. По распиновке они одинаковые абсолютно.

Oliver
AlexSneg:

Не экономя на вычислительных ресурсах, я экономлю время.

Вот это уже слова не мальчика, а… А то все флоат да флоат…

Да, скорость разработки - несомненный и весьма существенный плюс. Причем как за счет более высокоуровневого (блин, словечко… читай - более понятного) кода, так и в большей степени за счет того, что нет необходимости задумываться о ресурсах.

AlexSneg
ViktorDoma:

Входящих Каналов из стандартного модельного приемника будет только 6-ть ?

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

ViktorDoma:

Выходных тоже как то не густо

Больше не помещается.

ViktorDoma:

Выходных тоже как то не густо

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

ViktorDoma:

Датчик тока

Берете свой на 50А, подключайте, нет никаких проблем. Полно ADC входом. Сделаем настройку через конфиг мин/мах и формулу. Будет работать и считать.

ViktorDoma:

Какие предполагаются внешние модули ЖЭПЭСЭ ?

Любые по uart работающие в стандарнте сообщений nmea. Не паяйте eb-500, если не хотите. Тогда запаяйте pls разъем в плату АП, втыкайте свой. Сделаем в конфиге команду, которая будет засылаться в ваш GPS. Я скажу потом, что мне нужно будет от той команды (в целом поставить скорость на 30к, частоту обновления на максимум и вырубить все сообщения за исключением двух, какие я скажу).
Хотя я вот попробовол в поле eb-500 работает хорошо. В течение 40 секунд находит спутники с керам. антенной прямо на плате, то есть я никуда ничего не выносил. РУ ГПСу не мешает, срывов ни разу не было в полете. С видео пока нет результатов на эту тему, надеюсь, что тоже будет работать.

Oliver:

чем продиктован такой зоопарк с напряжениями?

на плате АП зоопарка нет. Там 3,3 основное. 1,8 требует компас. На модуле только 3,3В. 5В только для бародатчика скорости. Мне на плате 5В не нужно для работы.

Oliver:

Да, скорость разработки - несомненный и весьма существенный плюс.

Да. А барометр я для примера привел, не знаю чего тут все к нему докопались. Ну удобно мне писать чистые математические формулы. Так я понимаю что у меня, где и зачем. Читаемость кода в разы выше, чем то же самое на асме. Тем более, что держать в голове приходится около 5 задач одновременно. У меня в проекте кода сейчас вагон и маленькая тележка.

Oliver
AlexSneg:

для примера привел

Видимо, неудачный пример. 😃

AlexSneg:

Там 3,3 основное. 1,8 требует компас.

По даташиту вроде максимально допустимое VDD+0.1 Нет?

Бародатчики под 3.3 не делают чтоль?
Ну даже если и так, запитывать все что кушает 5в от разъемов серв. Или я фигню говорю?

AlexSneg
Oliver:

VDD+0.1 Нет?

Это i2с интерфейс, а ядро 1,8 требует отдельно. Я боюсь эксперименты ставить.

Oliver:

Бародатчики под 3.3 не делают чтоль?

Не знаю. Я не для себя. Мне дали наиболее распространенный, который все пользуют. От этого и плясал.

Oliver:

Или я фигню говорю?

Боюсь что так 😉. От серв не надо, там все плохо. Сервы пусть транзитом от BEC питаются как хотят и живут самостоятельно.

Oliver
AlexSneg:

Боюсь что так

Вам виднее, но 5 стабов (считая бек и не считая того, что еще впереди) на борту - перебор.

Drinker

Да тут страсти какие.
Но у меня вот пара вопросов возникло.

AlexSneg:

В течение 40 секунд находит спутники с керам. антенной прямо на плате

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

AlexSneg:

РУ ГПСу не мешает, срывов ни разу не было в полете

Если ты “летал” без осд, то окуда знаешь про отсутствие срывов?

AlexSneg:

Чем еще АП должен управлять кроме газа и рулей?

Это, а камерой?

Или на камеру нужен отдельный стаб? В обход?

Dikoy
Oliver:

Бародатчики под 3.3 не делают чтоль?

Их таких большинство 😁

AlexSneg:

Таких стм8 надо будет много, и я не хочу подвигов в стиле smalltim. Мне время дороже абстрактных нафталиновых принципов.

Зато себистоимость платы падает на 200р сразу, при том что подумать надо будет раза в полтора больше. Для серии есть смысл.

AlexSneg:

Любая флоат операция вычисляется не более 2 тактов аппаратно.

А Логарифм? 😉 А умножение на 10? 😉 Или в чудо-стм и умножитель на 10 аппаратный появился?

AlexSneg:

Или вы серьезно считаете, что вот это вот -> X0 = (X*4 + X) * 2… не есть костыль от недостатка вычислительных мощностей?

Читай выше.

AlexSneg:

А тригонометрия?

Дык для неё кордик ну просто родной. Я на СТМ также пользуюсь кордиком, до флотов и встроенных функций не опускаюсь 😉

AlexSneg:

Если у кого-то присутствует желание считать такты МК выпуска 10 летней давности,

Забавна эта ваша война с ветряной мельницей. Я ещё в 1 сообщении упомянул, что атмел больше не использую. И привожу мегу лишь как пример того, что все ваши мега функции реализуемы на меге, надо лишь немного подумать. Могу пик привести. Это ещё жёстче. Но вы всё равно упорно гоните на мегу 😃

AlexSneg:

Я не строю баллистическую ракету, стоящую на боевом дежурстве.

Ей как раз пофиг стоимость платы. Там одна камера сгорания дороже всей электроники.

AlexSneg:

Сейчас имю их в том же месте, проблем не наблюдаю, все летает.

Жигули тоже ездят 😃
Термостатирование решили? Оси совмещены? В центр масс поставлены? В любой летап становятся в центр масс?

AlexSneg:

Сергей, я как бы уже на стадии летных испытаний, а не теоретических изысканий.

И что?

AlexSneg:

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

Значит ударят по затылку а не в лоб.

AlexSneg:

Куда поставить ФНЧ? 900МГц.

В ваши линии, которые глушатся. Кроме видео что ещё есть и какие там “нормальные” частоты?

AlexSneg:

Там ток выше 200ма не поднимается. Даташиты производителя врут? Они предлагают ставить 4мкГн для 3А при выходе 3V и входном 12В. У меня максимум 200ма.

Дык чем ниже ток тем больше дроссель 😉 Вот что выдаёт родной дизайнер.

i034.radikal.ru/1205/ee/815a203ffe4c.png
10 мкГн, это минимум для 200 мА чтобы тока работало. Посмотрите риплю по току нагрузки. Я бы взял в одну руку осциллограф, в другую наборчик катушек 10, 22, 47 и потыкал. Разницу увидите.
Опять же вы не указали тип С30. На таких частотах тантал скончается и пробьётся с кАзой. Тут полимерник нужен или керамика. Но с керамикой тоже сюрпрайз. Очень многим ВЧ импульсникам (особенно LT) нужна индуктивная нагрузка. LT и TI в своих дизайнерах аж окрыто пишут какой ESR нужен кондёру. Сделаешь меньше, получишь возбуд.
TI в своих источниках рекомендует полимерники. www-images.panasonic.com/…/ABE0000CE6.pdf TPS5420 на таком у меня работает.

Опять же вы ставите на выход ST 220 мкФ. Даже если представить, что кондёр на этих частотах эффективнее дросселя, вы увеличиваете стартовый ток и замедляете фидбек.
Чтобы этого небыло, импульсник нагружают на ту ёмкость, какую ему минимально надо. Потом ставять ещё один дроссель на 3-5 мкГн и за ним уже хоть мульён микрофарад. За счёт смещения фазы на этом дросселе фидбек ST не будет чуять ёмкость за дросселем. См., например, стр. 8 www.national.com/ds/LM/LM2596.pdf

Про ФНЧ завтра. Домой пора 😃

Dikoy

Плюс керамика обладает выраженным пьезоэффектом. От вибрации она генерит шум, этот шум сводит с ума фидбек ИБП.
Так что с керамикой надо осторожно…

ПС. А катушка в ИБП то бронированная? Какой модель?

ALB_RF
Dikoy:

Плюс керамика обладает выраженным пьезоэффектом. От вибрации она генерит шум, этот шум сводит с ума фидбек ИБП.
Так что с керамикой надо осторожно…

ПС. А катушка в ИБП то бронированная? Какой модель?

керамика тоже разная бывает. C0G или NP0 ему подойдет

Dikoy
ALB_RF:

C0G или NP0 ему подойдет

На 22+ мкФ? 😃 НПО будет с коробок спичек примерно…

serj

Поучайте лучше ваших паучат 😃 (С)

AlexSneg
Drinker:

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

на окне в правильную погоду, находит и сейчас.

Drinker:

то окуда знаешь про отсутствие срывов?

У меня передатчик показывает всю телеметрию. Я вижу, что на борту происходит.

Drinker:

Это, а камерой?

Зачем мне камерой управлять, я не понял? Втыкай свои каналы управления камерой напрямую в камеру и управляй. Я тебе не запрещаю.

Dikoy:

Вот что выдаёт родной дизайнер.

Угу, а производитель этого стабилизатара наверно не знает как оно работает, потому для емкостной высокотоковой нагрузки рисует вот такой дизайн в ДШ. Так ST нам всем врет, а вы лучше его знаете какой там дроссель нужен?

The ST1S10 has been designed to perform best with ceramic capacitors. Under typical
application conditions a minimum ceramic capacitor value of 22 μF is recommended on the
output, but higher values are suitable considering that the control loop has been designed to
work properly with a natural output LC frequency provided by a 3.3 μH inductor and 22 μF
output capacitor. If the high capacitive load application circuit shown in Figure 3 is used, a
47 μF (or 2 x 22 μF capacitors in parallel) could be needed as described in the OCP and
SCP operation section 5.8.5. of this document.

Нигде из формул выбора индуктивности не следует зависимость меньше ток - больше индуктивность.

Панкратов_Сергей
AlexSneg:

Нигде из формул выбора индуктивности не следует зависимость меньше ток - больше индуктивность.

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

ALB_RF
Dikoy:

На 22+ мкФ? 😃 НПО будет с коробок спичек примерно…

Ее нужно для шунтирования использовать а не как основную емкость после стаба…