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

Oliver
laser:

а где прошивка то?

Чистил вложения, случайно потер не то. 😦 Выкладываю снова. Версия 302.

smalltim302.zip

Прораб

Скажите а ограничение полета по точкам нельзя увеличить с 3 до 20 км и для чего оно вообще надо.

baychi
Прораб:

ограничение полета по точкам нельзя увеличить с 3 до 20 км и для чего оно вообще надо

Что-бы полеты были “по камере” а не “в камере” и чтоб Вас под статью не подвести. 😃

Прораб

Скажите а чем коректно прочитать бортовой журнал может прога какая есть. Спасибо.

baychi
Прораб:

а чем коректно прочитать бортовой журнал может прога какая есть.

Microsoft Excel.

Прораб

А можно кому нибудь свой отправить а то у меня не показания а бред какойто получается. И КУДА?

Oliver

Коллеги, пока Тимофей не вернулся и пока я не начал приставать по поводу размещения кода для наземки в автономную телеметрию - прошу накидать хотелки.
Что уже было в теме:

  • Программные коэф. деления для всех аналоговых входов
  • Подстройка полей вывода (сдвиг всей картинки вправо/влево вверх/вниз)
  • По умолчанию баро/гпс для тех, у кого не выведен управляющий канал.
    Что еще?

Давайте скорее, пока у меня есть время - запрограммирую.

302 пробовал кто-нить запускать? У меня запускается. 😃

grom-off

Есть вопрос: для перестановки АП на лет. крыло хочется настроить управление так: элевоны - как элевоны, но направление полёта менять не креном, а воздушными тормозами на законцовках (типа Руля Направления), управление креном оставить лишь для стабилизации. С ФИ-20 так прокатывает, а вот как с автопилотом реализовать? Да и глайдер тож лучше рулём поворачивает.

baychi
Oliver:

Программные коэф. деления для всех аналоговых входов

Удобнее всего линейное преобразование: Y=kX+b.
Но требует 2-х коэффициентов.

Timofey
grom-off:

лучше рулём поворачивает

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

Hrissto

Добрии вечер ГОСПОДА:)
ОГРОМНОЕ спасибо автору ТИМОФЕЙ для его труд и всем в етом форуме. Повторил ТМ-все работает нормльно у меня. Понадобилось поменят скорость порта для GPS. У меня стоит как в самом начале раработки ЕМ 411(следуящая версия после ЕМ406). Спасибо и Олега кории облекчил задачу с настройки ШП через софт. Датчик тока у меня ACS756 CSA = 100B. Думаю будет работат, только надо PCB наделать а времени не хватает:)
P.S.Извините для мой плохой русский:)
Ещо раз СПАСИБО ВСЕМ

baychi
grom-off:

С ФИ-20 так прокатывает, а вот как с автопилотом реализовать? Да и глайдер тож лучше рулём поворачивает.

Пустите РН в обход АП. Или через АП, но объявите его “сквозным каналом”. АП не будет вмешиваться.

Прораб

Скажите пожалуйста перевод верхней строки бортового журнала. Спасибо.

grom-off
baychi:

Пустите РН в обход АП. Или через АП, но объявите его “сквозным каналом”. АП не будет вмешиваться.

В том и суть, чтоб АП “рулил” направлением с помощью РН, а не крена, крен хочется для стабилизации и только. Просто убрал со слингера “законцовки” - мне “летающая палка” больше нравится, нет рыскания и лишние детали убраны, только вот развороты креном автопилот не сможет адекватно реализовать, ибо там замедленная реакция курса от крена, будет гулять однозначно.
Реализация видится такой - добавить при калибровке не только левый-правый крен, пикирование-кабрирование, но и направление лево-право, а там уж кому-как…(90% юзеров будет курс менять элеронами, но на планере удобнее РН).
ЗЫ:На глайдере у меня РН сейчас и идёт напрямую, без автопилота (и Тимофей об этом знает;)).

baychi
grom-off:

В том и суть, чтоб АП “рулил” направлением с помощью РН, а не крена, крен хочется для стабилизации и только.

Такой логики там пока нет. Руление по курсу осуществляется выставлением и поддержанием требуемого уровня тангажа.

grom-off:

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

Запраллелить РН с креном (через микшера или при калибровке) - и пожалуйста.
Так-же можно РВ замиксовать…

grom-off:

Реализация видится такой - добавить при калибровке не только левый-правый крен, пикирование-кабрирование, но и направление лево-право, а там уж кому-как…(90% юзеров будет курс менять элеронами, но на планере удобнее РН).

Реализовать можно только явным введением режима “управление курсом через РН” (отдельная галочка в КП).

PS: Не очень понятно, зачем Вам руление только РН (!) в режимах АП (RTL и ПКТ). Разве не достаточно этой возможности, при ручном управлении (в том числе при активной стабилизации)?

grom-off
baychi:

Запраллелить РН с креном (через микшера или при калибровке) - и пожалуйста.

Перекрестные связи - при стабилизации крена будет рыскать (у меня газ и РВ были чуть-чуть замиксованы при калибровке - при резкой даче газа получился УЖЖОС!!!)
Повторюсь -

grom-off:

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

это надо видеть как оно летает без законцовок…
Ну я пока сильно не настаиваю, но подумать о такой галочке стОит…

baychi
grom-off:

Перекрестные связи - при стабилизации крена будет рыскать (у меня газ и РВ были чуть-чуть замиксованы при калибровке - при резкой даче газа получился УЖЖОС!!!)

Попробуйте явные связи, через матрицу микширования. Должно помочь. Фактически там можно сделать так-же как в РУ. Если микшеры РУ Вас устраивают, АП тоже будет работать.
А вот неявные миксы - дают чудеса. Хорошо хоть в последних версиях КП отсекаются “слабые зависимости”. 😃

Timofey
Timofey:

Во вложении лог кому интересно помочь разобраться.

10 человек посмотрело, а никто не подсказал что можно подчеркнуть из этого лога (((

Oliver
Oliver:
  • Программные коэф. деления для всех аналоговых входов
baychi:

Удобнее всего линейное преобразование: Y=kX+b. Но требует 2-х коэффициентов.

Коэф. хочу сделать три, все целые 1байт. Т.е. Y=aX/b+c

Значицца дальше есть два пути.

  • Вводим линейное преобразование сразу же на этапе чтения сэмплов со входа. Для всех входов. Всю остальную логику, связанную с тем, какие физически датчики висят на входе не трогаем. Плюсы: можно почти все, что угодно, можно подбирать датчики исходя из того, что есть в магазинах, а не из того, что подходит по параметрам, можно любым входом мониторить наиболее подходящее по диапазону напряжение, а датчик со низковольтного(без делителя) входа перевесить на другой свободный и т.д. Минусы: при настройке всего этого надо быть вдвойне аккуратным, (особенно помнить, на каком входе какой железный делитель и не превышать допустимого напряжения), потеря точности при делении/умножении при подключении низкого напряжения на вход с делителем и т.п.
  • Вводим преобразование уже при расчете конкретных физических величин. Только для напряжений, тока, возможно - температуры. Плюсы - не потеряем в точности на тех же баро, заранее будем знать, сколько потеряем на остальных. Минусы - залезание в логику расчетов (а там и усреднения и т.д. и т.п., а я в асме только подмастерье пока), невозможность свободно перетаскивать что хошь куда хошь, ну и вообще некрасиво.
    Я начинаю делать по первому варианту. Если кто заранее предупредит о подводных камнях - скажу пасибки.

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

smalltim
Timofey:

Первое: еще глюк в Бетта версии КП: Не снимает логи с АП выдает ошибку с предложением продолжить или закрыть приложение. Второе: как “правильно” читать логи, не смог правильно интерпретировать дату с GPS, да и многие пункты не понятными остались. P.S. Сегодня был первый полет с АП. Итоги: Самолет на АП начал разворачиваться по длинному пути, улетев за зону действия пульта, начал крутить круги примерно в 1,5 км от точки старта и сел в траву там. 1,5 часа поиска из-за несовпадения типа координат АП и навигатора. Пытаюсь проанализировать полет. Во вложении лог кому интересно помочь разобраться.

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

Других причин посадки в 1.5км, кроме не нахождения спутников на старте АП, я просто не вижу. Если АП не обнаружил спутники, то автовозврат просто не включается, а включается режим стабилизации.

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

Oliver:

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

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

Oliver:

если вдруг код Тимофея для наземки окажется больше, чем мы ожидаем - часть рюшечек придется почикать обратно…

194 байта сейчас. Может быть, будет еще на 30-40 байт больше, введу еще одну проверку контрольных сумм для пущей помехозащищенности.
Много?