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

baychi

Еще одна мелочь - показания некоторых величин, например потребляемого тока слишком резво меняются. У меня этот показатель пляшет на 1-2 А со скоростью 2-3 раза в секунду. Какой длины там фильтр? Нелья ли замедлить раза в 3 для тока? Как я понимаю усреднение (фильтрация) для всех измеряемых величин одно и тоже, просто на напряжениях АКБ это не так заметно. По выcоте и скорости - как раз и нужна быстрая реакция, а вот по току, ИМХО, стоит увеличить фильтр усреднения.
Кстати, Тимофей, как ты усредняешь значения U и I: как среднее арифметическое; корень из среднего квадрадратичного или еще как?

Timofey
baychi:

как среднее арифметическое; корень из среднего квадрадратичного или еще как?

На мой взгляд оптимальнее всего установить фильтр “скользящее среднее” когда выдается результат усреднения ПОСЛЕДНИХ точек (к примеру 5 сек) такой метод имеет плавную хар-ку изменения, и выглядит обычно наиболее привлекательно…

ChifAviator
pdv=:

Зачем так все усложнять? пищалку можно повесить на отдельный канал и настроить фс на включение этого канала (те при выключенной аппе когда самолет лежит уже в траве пищалка начнет делать свое дело!)

Целый канал на включение пищалки??? Потеря сигнала RC (выключеная аппа)- еще не факт что модель на земле, да и фс не на всех аппах присутствует, например на Esclipse7 его нет. Мне орущая пищалка на летящем домой самолете (при включеном АП) ни к чему. В АП есть режим, “на земле”, при этом на 3-х контактный разъем , Тимофей пообещал выводить лог 1, это и будет включением пищалки. И корректно, и для всех подойдет.

smalltim:

Доваяю - буду готов сказать, что наземка готова.

Я в очереди за девайсом!!!

smalltim
baychi:

Кстати, Тимофей, как ты усредняешь значения U и I: как среднее арифметическое; корень из среднего квадрадратичного или еще как?

В телеметрической прошивке для работы без АП на все параметры стоит и оверсэмплинг на 64 сэмпла АЦП и ФСС на 8 сумм.
В телеметрической прошивке для работы с АП нет усреднения ни по одному из параметров. Есть оверсэмплинг - 64 сэмпла с АЦП берутся подряд и суммируются.
Нивапрос, в математике АП сделаю усреднение (ФСС) для показа тока. Для подсчета мАч и логов останется без усреднения. Сейчас мАч считаются очень точно, а что будет с усреднением, я не берусь предсказать.

baychi:

Еще одна мелочь - показания некоторых величин, например потребляемого тока слишком резво меняются. У меня этот показатель пляшет на 1-2 А со скоростью 2-3 раза в секунду

Да, датчик тока там “скоростной”, успевает реагировать на броски по току от серв, от мотора и т.д.

Ильвир:

Где в данное время можно заказать АП?

На smalltim.ru появляется по капле, в некоторых магазинах может чуть-чуть появиться. Это остатки партии АП. Новая партия ориентировочно будет готова в продаже через 2-3 недели. Мы уже и на сайте попросили прощения, и на форуме я несколько раз каялся. Не рассчитали, что остаток партии начнет разлетаться так быстро и не начали готовить новую заранее 😦

dundel1

Вопрос по старой телеметрии.

Уважаемые коллеги, пожалуйста, подскажите

Завалялся у меня модуль GPS Медиатек с подпаленым портом Rx. Всё работает, но только на заводских установках, (скорость 9600 бод, обновление 1 раз в секунду), любые команды по входу RX не воспринимает.

Насколько я понял из описания прошивок, в версии 2.52 (от которой доступны исходники), ТМ выставляет для модуля GPS режим 38400 бод и 5 раз в секунду обновление.

Собственно, вопрос:

  • чтобы ТМ начала принимать данные с моего модуля GPS, мне достаточно закомментировать строки в файле smalltim.asm, в которых проводится настройка USART на повышенную скорость?

Вот так: (жирным выделены строки, которые я сделал комментариями)

LDI R17, HIGH(103) ; Initializing USART
LDI R16, LOW(103) ; 9600 baud, 16MHz core clock
OUT UBRRH, R17
OUT UBRRL, R16

LDI R16, (1<<RXEN) ;| (1<<TXEN) ; Enable receiver & transmitter
OUT UCSRB,R16
LDI R16,(1 << URSEL) | (1 << UCSZ1) | (1 << UCSZ0) ; 8N1
OUT UCSRC,R16

RCALL wait_for_NMEA_sign ; just calling it to wait 1 sec

; выключаем весь блок настройки GPS не “по умолчанию”, остаётся 9600 бод и 1 Гц обновление

;LDI ZL, LOW(VHZ_STRING1*2)
;LDI ZH, HIGH(VHZ_STRING1*2)
;RCALL send_string_through_USART ; switching the module to 38400 baud

;LDI ZL, LOW(VHZ_STRING1*2)
;LDI ZH, HIGH(VHZ_STRING1*2)
;RCALL send_string_through_USART ; switching the module to 38400 baud

;LDI ZL, LOW(VHZ_STRING1*2)
;LDI ZH, HIGH(VHZ_STRING1*2)
;RCALL send_string_through_USART ; switching the module to 38400 baud

;LDI R17, HIGH(25) ;
;LDI R16, LOW(25) ; 38400 baud, 16MHz core clock

;OUT UBRRH, R17
;OUT UBRRL, R16

;RCALL wait_for_NMEA_sign ; just calling it to wait 1 sec

;LDI ZL, LOW(VHZ_STRING3*2)
;LDI ZH, HIGH(VHZ_STRING3*2)
;RCALL send_string_through_USART ; switching the module to only RMC/GGA/GSA output

;LDI ZL, LOW(VHZ_STRING3*2)
;LDI ZH, HIGH(VHZ_STRING3*2)
;RCALL send_string_through_USART ; switching the module to only RMC/GGA/GSA output

;LDI ZL, LOW(VHZ_STRING3*2)
;LDI ZH, HIGH(VHZ_STRING3*2)
;RCALL send_string_through_USART ; switching the module to only RMC/GGA/GSA output

;RCALL wait_for_NMEA_sign ; just calling it to wait 1 sec

;LDI ZL, LOW(VHZ_STRING2*2)
;LDI ZH, HIGH(VHZ_STRING2*2)
;RCALL send_string_through_USART ; switching the module to 5 Hz update rate

;LDI ZL, LOW(VHZ_STRING2*2)
;LDI ZH, HIGH(VHZ_STRING2*2)
;RCALL send_string_through_USART ; switching the module to 5 Hz update rate

;LDI ZL, LOW(VHZ_STRING2*2)
;LDI ZH, HIGH(VHZ_STRING2*2)
;RCALL send_string_through_USART ; switching the module to 5 Hz update rate

;RCALL wait_for_NMEA_sign ; calling it to detect “$GP” sign
;CPI R16, 1
;BREQ _skip_falling_back_to_4800

;LDI R17, HIGH(207) ; Initializing USART
;LDI R16, LOW(207) ; 4800 baud, 16MHz core clock
;OUT UBRRH, R17
;OUT UBRRL, R16
;LDI R16, (1<<RXEN) ; Enable receiver
;OUT UCSRB,R16

;_skip_falling_back_to_4800:

;reading ADC channel 6 value, if it’s lower than 1024/3=341 (say 256),

Или нужно что-то ещё менять?

Ильвир
smalltim:

Новая партия ориентировочно будет готова в продаже через 2-3 недели.(

Если это точный срок, то это радует. Спасибо!

AlxDs
ChifAviator:

Вчера проверил дома-супер, точки рисуются, маршрут прокладывается… Один вопрос можно ли точку старта задавать самостоятельно, зная координаты, а то летаю я далеко от дома, да и таскать ноут в поле что б привязаться к точке старта и нарисовать маршрут как то не гуд. Да, если можно так сделать, тогда уж и библиотеку сохраненных точек старта с маршрутами. Заранее thanks.

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

smalltim:

Пока нет. С этой штукой есть риск, что наши игрушки могут оказаться совсем не игрушками.

Для тех у кого “не игрушки” как раз никаких проблем с заданием точек с ноута в поле или машине проблем не вызовет. Наоборот им так лучше - если повяжут по дороге, то никаких библиотек с координатами или заранее проложенного полета по точкам нет, а на нэт и суда нэт.
Нам же - наоборот лучше дома с картой посидеть, план полета обдумать, что с какой стороны снимать и т.д. Заранее загрузить точки в автопилот, а потом на поле летай на здоровье, а не борись с комарами и ноутом на котором на солнце ничего не видно.

Ильвир
smalltim:

Новая партия ориентировочно будет готова в продаже через 2-3 недели. Мы уже и на сайте попросили прощения, и на форуме я несколько раз каялся. Не рассчитали, что остаток партии начнет разлетаться так быстро и не начали готовить новую заранее 😦

Просьба, как появиться на smalltim.ru новая партия, отписаться здесь, если не затруднит. Народ чаще просматривает эту тему, и хотелось бы быть в курсе о поступлении девайса. Спасибо!

Pav_13
ChifAviator:

…фс не на всех аппах присутствует, например на Esclipse7 его нет.

Прошу прощения за офф, но просто “резануло слух” 😃
Файлсейв - это свойство приемника системы радиоуправления…
Eclipse7 - это название пульта
У меня тоже Eclipse7, но файлсейв у меня есть 😉! Просто, я использую “Assan” и сейчас экспериментирую с “FrSky”… Для мегагерцового диапазона тоже есть модели приемников с декодером на микроконтроллере, в которых функция “файлсейв” присутствует…

smalltim
dundel1:

чтобы ТМ начала принимать данные с моего модуля GPS, мне достаточно закомментировать строки в файле smalltim.asm, в которых проводится настройка USART на повышенную скорость?

Да.

AlxDs:

Для тех у кого “не игрушки” как раз никаких проблем с заданием точек с ноута в поле или машине проблем не вызовет. Наоборот им так лучше - если повяжут по дороге, то никаких библиотек с координатами или заранее проложенного полета по точкам нет, а на нэт и суда нэт. Нам же - наоборот лучше дома с картой посидеть, план полета обдумать, что с какой стороны снимать и т.д. Заранее загрузить точки в автопилот, а потом на поле летай на здоровье, а не борись с комарами и ноутом на котором на солнце ничего не видно.

Я подумаю, посоветуюсь с людьми, но ничего не буду обещать, хорошо?

ChifAviator:

В АП есть режим, “на земле”, при этом на 3-х контактный разъем , Тимофей пообещал выводить лог 1, это и будет включением пищалки. И корректно, и для всех подойдет.

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

ChifAviator
smalltim:

Так что лог.1 будет уже после того, как добью поддержку наземной станции.

Бум ждать. Да, хотелось бы узнать ориент. стоимость наземки, комплектность и т.д., фотки девайса…

IRONSAMSON

Подскажите плиз, в Украине можно преобрести полный комплект от Тима с бародатчиками высоты и скорости?
Или как и где лучше это сделать, с учетом нашей таможни (ограничение в 200 евро по стоимости за посылку)?

neon_exe
neon_exe:

Примерно так должно быть запитано оборудование или питание тоже в экране пустить 2-х жильным и экран отдельно на минус аккума посадить?

Никак не могу победить. как только подключаю RC кабель от ТМ к приемнику давит сигнал на приемнике. Питание от разных источников, пробовал соединять шлейфы и в экране и без результат не многим лучше. Приемники тоже менял корона и вфлай 35 мГц. Без экрана даже лучше но 300 м это нечто. Кто, что порекомендует.

ChifAviator
Pav_13:

Файлсейв - это свойство приемника системы радиоуправления…
Eclipse7 - это название пульта…

Спасибо, просветили… Я вот четвертый год его использую и приемник к нему комплектный в коробке фирменной, и еще прикупил чуть позже один, с фс не так повезло как Вам, наверное это потом стали комплектовать эту аппу ( я имею ввиду все содержимое, а не токо пульт) приемниками с ФС.
To Smalltim: Тимофей, “пропал” Crl2, не определяется при калибровке. Менял местами с Ctr1, - не помогло. Че может быть? Непропай на плате или где-то в настройках накосячил?

smalltim
ChifAviator:

“пропал” Crl2, не определяется при калибровке. Менял местами с Ctr1, - не помогло. Че может быть? Непропай на плате или где-то в настройках накосячил?

Второй управляющий канал идет на плату телеметрии, ею оцифровывается и результат вместе с данными от датчиков идет на АП. С телеметрией Вашей самодельной всё в порядке?

neon_exe:

как только подключаю RC кабель от ТМ к приемнику давит сигнал на приемнике.

Если не подключать к приемнику, то всё ок? Очень странно. Телеметрия самодельная или заводская?
Варианты:

  1. Попробовать использовать только сигнальный вывод с приемника. Может быть, петля по земле идет.
  2. Поставить в сигнальную цепь от приемника последовательно резистор 10кОм, а перед ним - керамический конденсатор 0.001-0.01 мкф на землю.
    Есть шанс, что через вход PPM на телеметрии, “подтянутый” к питанию через встроенный в процессор подтягивающий резистор, на приемник могут идти пульсации встроенного питания телеметрии.
ChifAviator
smalltim:

Второй управляющий канал идет на плату телеметрии, ею оцифровывается и результат вместе с данными от датчиков идет на АП. С телеметрией Вашей самодельной всё в порядке?

Блин, во где собака порылась. Я ж плату ТМ отсоединил вааще, и без нее пробовал. На выходных все ж фунциклировало, а тут вдруг нету…ТМ у меня действительно переразведенная под разъемы АП, но работало же ж… Пойду пробовать.

smalltim

Налаживаю передачу данных между АП и ТМ в новом формате. Постоянно вижу битые данные при передаче данных между АП и ТМ. Ужесточаю и ужесточаю проверки. Дошел до того, что ввел полноценный CRC-16-CCITT. Всё равно битые данные.
Ну не может такого ж быть, CRC16 не тупые люди придумывали! Пошел по ассемблерному коду прямо по шагам. Ну так и есть. Проверки работают, и успешно детектят битые данные, но при выводе данных на экран результаты проверок просто игнорируются. Поправил, теперь всё красиво и ровно.
Времени только жалко. Ну ладно, зато у меня теперь используется CRC16, индустриальный, понимаешь, стандарт 😃

baychi
smalltim:

Проверки работают, и успешно детектят битые данные, но при выводе данных на экран результаты проверок просто игнорируются. Поправил, теперь всё красиво и ровно.

То есть и старой версии обмена АП-ТМ, если исправить проверку, все станет ровно и красиво? Или уйдут только “выпрыгивания” циферок в произвольное место, а вздрагивания (стирание без перересовки) останутся?
Я к тому, что если такое исправление режит проблемы отображение на текущей прошивке, может стоит выпустить промежуточный вариант (до полноценного с поддержкой наземки)? Просто всегда опасаюсь радикальных изменений в прошивках, - за ними как правило следует каскад проблем и долгое их исправление. 😃

neon_exe

как только подключаю RC кабель от ТМ к приемнику давит сигнал на приемнике.

Телеметрия smalltim. Втом то и дело 1 вариант уже пробовал не помогло. Номер 2 попробую. Непойму почему у меня у одного не стыкуется, у знакомого еще старая ТМ стоит подключена по колхозному и все ок никаких помех и частота приемника таже. 😃😵

smalltim
baychi:

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

Здесь в АП меняется всего 2 функции: prepare_telemetry_screen_data и do_telemetry_communication. Ни на что другое изменение общения с телеметрией не влияет 😃

Морфеус

Наконец всё подключил. Ручное управление работает, а вот в автомотических режимах управления плоскостями нет. В контрольной панели датчики работают.
Что делать?