Smalltim OSD and autopilot (часть 2)

smalltim
StormAlex:

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

Я в полете по точкам изначально приблизительно так и хотел сделать - показывать расстояние и курс не домой, а на выбранную точку. Но потом подумал и решил, что это не так уж здорово. А потом и вовсе отказался. Пусть пилот в любой момент времени знает, где именно дом, а не какие-то там точки. Графические возможности моей телеметрии слабенькие, так что сильно с показом и дома и точек одновременно не разбежишься.

StormAlex

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

Annex
StormAlex:

отказаться от одного из трех экранов

Кстати да, и еще +1 к неиспользованию переключения в полете!
Если кто и пишет в высоком качестве, то не с курсовой а дополнительной камеры, на онбордовую писалку.
Думаю тех кто щелкает экранами единицы… 😃

Ильвир

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

maloii
Pavel_K:

А вот отображать на экране точку, где предположительно самолет коснется земли, это вопрос не только и не столько в расчетах точки, а сложные расчеты по определению места ее рисования на экране, камеры-то у всех с разными линзами, разными углами установки, а у некоторых они еще и поворачиваются…

Во первых эта не точка касания, а все таки курс 😃. Грубо говоря у вас есть угол атаки 5 градусов, морда смотрит на 5 градусов вверх а летите вы с углом на 5 градусов вниз, получается что эта метка должна быть ниже центра экрана на сколько то пикселов (тут уже расчет).
теперь про камеры. Пут все стандартизировано, объективов не много, а используемых ещё меньше, плюс размеры матрицы, все это забивается как коэффициенты в расчеты и все под любую камеру настраивается за 5 секунд. В угле поворота тоже нет сложности, выставить центр и крайние положения, ну может ещё экспоненту. Я понимаю что точность не будет зашкаливать, но я думою что она будет в допустимых приделах.

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

Oliver
Ильвир:

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

Там все сделано красиво. Те, кто пользовался 3хх версией автономной ТМ и конфигуратором обратили, наверное, внимание на то, что координат положения на экране у каждого элемента всего две пары. Так что честных экрана - всего два. Но одна координата занимает не 1 байт целиком, а только 5 бит. В итоге остается еще 3 бита, и вот 2 из них использованы для того, чтобы определять, включен или выключен элемент. Т.е. имеем дополнительно для каждого экрана еще 2 “подэкрана” - с неизменным положением элемента, но с индивидуальной настройкой “вкл-выкл”. Места не занимает, а возможность добавляется.
По поводу кода - сейчас если убрать алгоритмы настроек экрана и вернуться к фиксированному положению - сэкономим по большому счету только настройки второго экрана и 14 команд (28байт). А потеряем возможность что-то куда-то передвинуть, скрыть и, что САМОЕ ГЛАВНОЕ, возможность настроить предупреждающее мигание элемента на экране, т.к. проверки на границы мигания выполняются в одном блоке с общей настройкой вывода элемента. Ну вернее не совсем потеряем, можно будет все переколбасить, но выхлопа будет чуть.

Сейчас из хотелок для автономной ТМ вижу только:

  • вывод небольшой шкалы, показывающей положение входного канала (при этом в настройках отключается возможность переключать экраны и настраивать привязку шкал при включении)
  • коэф. (А/B-)х+C для ADC входов, чтобы можно было подключать на незадействованные входы любые датчики и подгонять отображаемые значения под нужные.
    Но второе мне уже кажется что проще сделать железом. ADC7 в последней версии уже будет иметь такую возможность и будет отображаться палочками вместо к-ва RC сигнала, что позволяет подключить любой доп.датчик от счетчика оборотов до посадочных сонаров, а для мониторинг батарей больше чем 3C проще наштамповать платок за 5 $ с хвостиками, разъемами и нужными делителями.

Все вышесказанное - ИМХО, может у кого мысли дельные будут.

baychi
Oliver:

Но второе мне уже кажется что проще сделать железом.

kX+b железом не сделать.
А все-же не проще ли поставить мегу помощней? C 16 кБ флэша к примеру? Цена кристалла - копейки…
Интерфейс отображения можно совершенствовать долго. 😃 Если ориентироваться на лучшие образцы OSD, то можно столько хотелок навыдумывать…

Oliver
baychi:

А все-же не проще ли поставить мегу помощней? C 16 кБ флэша к примеру? Цена кристалла - копейки…

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

SAV=
Oliver:

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

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

maloii

А не хотите выпустить плату новой версии? Стоимость нынешней OSD в большей степени составляют датчики, сама же плата стоит копейки. Выпустить новую плату и чисто её продавать на замену. Но в ней уже заложить ресурсов на годы вперед.

Oliver
maloii:

А не хотите выпустить плату новой версии?

Это к Тимофею. 😃 Но у него, думаю, забот хватает и с ИМУ, чем думать о телеметриях. С телеметриями уж как-нить разберемся. 😉

Annex
SAV=:

вход RSSI

Таки да! 😃
Эг си си ай (RSSI) это уже пгосто священно;)
Один из жизнено важных параметров, для тех кто любит летать в ручную:)
Иначе, “ай” и мы уже отлетали;)

StormAlex

Сейчас заказал и опалтил Arducopter-2 стал листать доки и наткнулся на то что при полете по точкам GPS в ПО нужно указывать магнитное отклонение своего местонахождения! Этот как раз то, о чем я писал нескольккими постами выше про географический и магнитный север!

Поэтому, Тимофей, закладывайтесь сразу же на магнитное отклонение иначе летать нормально по карте не будет!

Алексей_Сергеевич
Алексей_Сергеевич:

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

Здравствуйте. Продолжил попытки полетов с автопилотом от Smalltim. Проблема та же: в горизонтальном полете линия горизонта колеблется от 45 до 90 градусов к реальному горизонту, сей час это наблюдаю и на земле и в полете, от направления полета не меняется, причем если поднести ладонь снизу к датчику Z, то линия горизонта становится горизонтально (как надо), а если поднести ладонь сверху, то горизонт переворачивается на 180 градусов- тоесть вроде все работает. Попробовал заклеить скотчем нижний пиромет- ни какой разницы. Может попробовать перепаять верхний и нижний пирометр местами (как тут предлогали), или есть еще варианты, что можно сделать?

Ильвир
Алексей_Сергеевич:

Может попробовать перепаять верхний и нижний пирометр местами (как тут предлогали), или есть еще варианты, что можно сделать?

Просто плату датчика нужно перевернуть на 180 гр. И потом поиграть с настройками по подключению шлейфа, ну типа там плата чипом вниз шлейфом назад(играть нужно соответственно с подключенным самолетом к бортовому питанию и Р/У).

baychi
Алексей_Сергеевич:

Проблема та же: в горизонтальном полете линия горизонта колеблется от 45 до 90 градусов к реальному горизонту,

Видео можно посмотреть? Или скриншот.
Хочется понять: горизонт просто перекошен, или перевернут и перекошен?

Ильвир:

Просто плату датчика нужно перевернуть на 180 гр

Произвольно переворачивать можно только плату с 4-мя горизонтальными пирометрами.
Если дело в них - поможет переворот платы или изменение соответствующей настройки в КП.

Алексей_Сергеевич

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

Ильвир
baychi:

Произвольно переворачивать можно только плату с 4-мя горизонтальными пирометрами.

У меня реально в перевернутом виде стоит уже полгода. Как в НН на фестивале ребята из Троицка мне ее перевернули, так я ее и не трогал. До переворачивания СТ думала что самолет у меня в перевернутом виде находится и перекашивал до упора горизонт и рули.

baychi
Ильвир:

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

Может так оно и лучше. 😃

Алексей_Сергеевич

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

baychi
Алексей_Сергеевич:

может погода облачная

Это неблагоприятный фактор. Но для вывода из строя правильного пиро-АП, маловато. Нужена очень низкая облачность или туман. Или редкое стечение обстаятельств, когда небо теплей земли. 😃