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

smalltim
baychi:

Ввел бы ты хоть проверку КС, чтоль…

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

Но на старте телеметрия ресетится автопилотом, и в прошивке телеметрии стоит секундная пауза после старта.
Может быть, внешняя память по SPI долбится в чип, но это ей запрещено, и подтяжки на CS стоят.
В общем, разберусь подробно и отпишу.

В полете слетания прошивок ни разу не были зарегистрированы, всего слетание было замечено у ~5 человек, в момент подачи питания. Мало, но надо разобраться.

Вот сейчас обнаружил, что есть интервал в ~100 клоков на старте АП, когда состояние CS пина на внешней памяти не определено. Маловероятно, что это причина, но всё же.
Поправил, попробуй:

ChifAviator

Тимофей, стучусь в личку…как соловей, который ждет лета…

smalltim

В личку отчитался! 😃

Полезли первые приколы с наземной станцией.

  1. Умумукался ловить данные на земле, изнасиловал осциллограф, истыкал всю плату, но не вижу усиления на ОУ, и всё тут. Полез смотреть характеристики ОУ - всплакнул. Чем я вообще думал?
    Рабочая частота до 1 МГц, крутизна фронтов - 0.4В/мкс. А мне в идеале надо раз в 200 больше, а если не раскатывать губы - 100 или даже 50МГц пойдет. Меняем ОУ, переразвели плату.

  2. Разъем USB мешает уложить плату по фен-шую в механику поворотной антенны нашей разработки. Двигаем разъем USB.

  3. Линейник на плате пропускает ток с выхода на вход при питании платы от USB, далее со входа импульсник пытается питать от этого сервы. USB не надо обижать мощными сервами, ставим развязывающий диод.

blade
smalltim:

Меняем ОУ, переразвели плату.

А с этого места- нельзя поподробнее?
Цоколёвка ОУ не меняется уж как минимум лет 30?
Т.е. у одинарных: -2, +3, вых 7, g4, +7; ну и у двойных-четверных- своя…
Или- я что то пропустил?
При чём плата то?

smalltim

Я взял изначально SOT23-5, по цене был вкусен, ибо лоуэнд. А высокочастотных в SOT23-5 мало и дорогие, а в SOIC8 много разных, переходим на SOIC8.

pashteton
smalltim:

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

Просто многие об этом не пишут 😃
Например, у меня раз 5 было. Один из слетов был замечен, что при подключении чегото к ап (непомню уже чего, возможно ЮСБ), взялся за контакты подключения к телеметрии. Другой, был из за втыкания ЮСБ трясущимися руками, немного по уверенней надо 😃.

Diramil

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

baychi
Diramil:

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

Вверх или вниз? А при RTL как? У меня тоже уходит вниз (модель вниз) градусов на 10-15. Думал, что неправильно откалибровал или пиродатчик чем затенил, но модель старая - испытанная. Пока не разобрался… Но первое впечатлнение, что нейтрали стабилизации не совпадают с нейтралью в АП и ручном режиме.

Diramil

плоскость отконяется на верх градусов на 5-8. В ручном режиме все нормально.

baychi
Diramil:

плоскость отконяется на верх градусов на 5-8

Хм… Возможно у нас с Вами сервы в разные стороны настроены. А в режиме автовозврата не смотрели?

smalltim
Diramil:

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

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

baychi:

Думал, что неправильно откалибровал или пиродатчик чем затенил, но модель старая - испытанная. Пока не разобрался… Но первое впечатлнение, что нейтрали стабилизации не совпадают с нейтралью в АП и ручном режиме.

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

baychi
smalltim:

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

Проверю вечером. Ох уж эта калибровка! Меня уже в дрожь бросает, при мысли об этой операции. 😦 Тим, сжалься над нами, сделай что-нить более предсказуемое… 😃

Diramil

Получилось, но, канал газа работает с 50%

Diramil
smalltim:

Не понял, подробнее %)

то есть режим стабилизации работает, но,от 0 до 50% ручки газа мотор не реагирует, так же в ручном режиме.

smalltim

ОМГ. Надо видеоинструкцию делать 😃
Киньте, пожалуйста, текст с закладки “Диагностика” прямо в форум!

irone

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

smalltim

Можно, подумаем.
Если совсем упрощать калибровку до уровня детсада, то тогда пропадет возможность запоминать те миксы, которые вы сделали для своей модели. Летающее крыло, элероны с руддером, компенсация опрокидывающего момента винта, компенсация клевков/задирания носа при даче газа, и т.д.
Первым делом я порядок калибровки немного изменю и отделю газ, будет уже гораздо проще.

baychi
smalltim:

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

Так ведь она и так ничего не запоминает! Есть у меня микс газ->РВ, и чего? Приходится его отключать при калибровке иначе полный бред получается. Без знания причнно следственных связей, только элевоны однозначно распознаются. Тим, как показала практика, это “самообучающаеся калибровка” приносит больше вреда чем пользы. Лучше 2-3 однозначные классические схемы с жестким назначение первых 4 каналов и простейшая калибровка. А все экзотические завязки теперь можно с помощью микшеров делать.

baychi
smalltim:

Сравни запомненную автопилотом нейтраль в микросекундах на канале РВ с текущей нейтралью РВ в ручном режиме, глядя в тект в окошке калибровке Ру или команд управления. Перекалибровывать не надо, просто глянь.

Положение нейтралей не меняется.
Ошибка видна на нижней строчке картинки. Тангаж не равен 0, когда все стики в нейтрали, а газ на 0.
Это все следствие “умной калибровки”. Уже 4 раза пытаюсь перекалибровать так, что-бы в нейтрали были нули. Фиг-то! Тангаж от -1 до -0.2. Но не ноль. И это как-то завяано с газом, хотя по монитору передатчика и циферкам в КП - все четко. Боюсь, что нейтраль газа на стадии задания диапазонов не совпадает со стадией калибровки команд.
Тимофей, это уже эквилибристка какая-то. Ну невозможно так работать! Извини, за слишком эмоциональный пост, но калибровка с вероятностью успеха 5%, да еще когда все обнаруживается в полете - это перебор!

how-eee

Че вы панику нагоняете? Все отлично калибруется. Я тоже не сразу понял правильный алгоритм калибровки. Но потос разобрался и все стало ок. Ну конечно газ надо перенести в конец калибровки.

Но вот то что нету новых плат взамен сгоревших, уже почти месяц, наводит на мысли о панике!

Хотя я не понимаю зачем калибровать диапозоны с включенными микшерами? Кому это надо? Стабилизации? Что ж за такая стабилизация тогда, которая не может сама стабилизировать полет без ваших микшеров?