LRS модуль Expert RC 433 MHz

PabloID

А нафига такой конфиг, простите за каламбур?

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

baychi

Завершил исследования Tiny LRS. Полностью удовлетворил свое любопытство.
Итоговые данные разместил в дневнике: rcopen.com/blogs/39565

Кратко добавлю, то что не вошло в предыдущие обзоры.

  1. Проверял устойчивость к внеполосным помехам. Вплотную (до 10 см от антенны приемник) поднось работающие видеопередатчики 1.2, 2.4 и 5.8 ГГц с мощностями от 500 до 1000 мВт, при нахождение приемника на границе устойчивой связи. Влияния не выявил.
  2. Провел тест на разбежку частот кварцев. Передатчик охлажден до -15 С, приемник при комнатной температуре. Коррекция частоты отрбатывает четко.
  3. Многкратные переходы через границу связи и обратно, никаиких сбоев в настройках или отработки FS не выявили.

Результатами тестов и комплектом в целом - доволен. 😃

В заключении несколько слов о разрядности и задержках (по результатам анализа протокола).

  1. Разрядность 9 бит на каналах 1-7 можно легко увеличить до 10 бит за счет управляющего байта. Там сейчас используется всего 1 бит, 7 гонятся впутсую.
  2. Можно увеличить разрядность в представлени до 12-14 бит, в режиме PPM8, так как данные 4-х неиспользуемых каналов все равно гонятся впустую. Или соотвествующим образом уменьшить длину пакета.
  3. Само по себе увеличение разрядности обходится относительно дешево (непонятно, почему так много сломано здесь копий), так как добавление 1 байта увеличивает количество положений сервы вдвое ( по 1 бит на первые 8 каналов), а цена - увеличение задержки распространения на 1 мс или падение чувсствительности на 0.5 дБ - мизерная. Другое дело, насколько точно процессор передатчика может измерять входной PPM, а приемник воспроизводить? Дмитрий пишет, что точность захвата/генерации PPM у 2-го поколения 0.1% - это 10 бит. Можно ли поднять - не знаю, но перевести LRS в 10 битный режим, ИМХО стоит.
  4. Минимизировать максимальную задержку передачи, не меняя протокола - нельзя. Однако можно уменьшить минимальну и среднюю задержки, если генерить пакет на лету. Сейчас передаваемый пакет полностью формируется в буфере FIFO и отсылается 27 мс. Если за это время придут новые PPM данные они будут задержаны до след. пакета.
  5. Можно уменьшить максимальную задержку на 4 мс за счет сокращения кол-ва передаваемых каналов в режиме PPM8.
    Или увеличить бодовую скорость до 9600-19200, выиграв еще 7-17 мс, за счет ухудшения чувствительности на 3-9 дБ. Для тех кому это важнее.
Панкратов_Сергей
baychi:
  1. Провел тест на разбежку частот кварцев. Передатчик охлажден до -15 С, приемник при комнатной температуре. Коррекция частоты отрбатывает четко.

Александр , коррекция частоты за счет АПЧ или программно за счет калиброванного графика зависимости частоты от температуры ?
Понимаю что это можно понять по записи в регистры, описанные Вами выше, но под рукой нет документации.

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

коррекция частоты за счет АПЧ или программно

Похоже и то и другое. Бит AFC в положении Enabled. Непосредственно регистры 73-74 (коррекция частоты) не читаются и не пишутся (если тока очень изредка, я не увидел). Зато в каждом цикле пишется регистр 09 - емкостная нагрузка на кварц. Похоже именно этот тонкий тюнинг и использует алгоритм температурной компенсации.
И вообще судя по истории прошивок, AFC - одна из самых тонких частей всего алгоритма, ибо совершенствуется постоянно. Да и в телеметрии с приемника есть несколько сообщений на эту тему. Глубже копать не планировал, но видно, что корекцию частоты Дмитрий долго “вылизовал”. 😃

Shuricus
baychi:

Можно ли поднять - не знаю, но перевести LRS в 10 битный режим, ИМХО стоит.

Александр, это делается только софтверно, я правильно понимаю?

Тогда я полностью присоединяюсь к пожеланию!

И Дмитрию стоит знать, что есть люди не купившие его комплект именно по этой причине, а предпочтение отдавшие Рмилеку.

baychi
Shuricus:

это делается только софтверно, я правильно понимаю?

Да, причем это можно сделать даже не теряя совместимости с существующей прошивкой (передатчик с новой прошивкой сможет работать с приемникими старой и наоборот). Просто пишем младшие биты первых 7-ми каналов в старшие 7 разрядов упр. байта. Если прошивки обновлены на обоих концах - работает 10 бит, если нет - 9. 😃

PS: Если, конечно удастся аппаратно захватить и выдать PPM/PWM с 10 битной точностью. Это я оценить не могу - в Мегах не силен. 😦

Shuricus
baychi:

Итоговые данные разместил в дневнике

Потрясающе!

Если бы в таком виде виде информация была на сайте производителей, это было бы серьезно по взрослому и круто!
К кому не зайдешь, ничего не понятно… А по моему для любого технически развитого человека, это отличный маркетинг и просто приятно. Не любят нас производители! У Слона, вот помнится, было не плохо. Но по другим причинам.

nyc73

Потому что там не дерут внаглую 200р!! за разъемы 😃

Shuricus
baychi:

Да, причем это можно сделать даже не теряя совместимости с существующей прошивкой

Интересно почему Дмитрий этого не делает? Вроде бы само просится…

nyc73:

Потому что там не дерут внаглую 200р!! за разъемы

Не понял, шутка это или нет, но тем кому нравится платить по 200р за разьем стоимостью 6р, объясню - если мне нужно купить пять приемников, то только на разъемы я потрачу 1000р. Это практически стоимость одного приемника. Конечно что такое 1000р - копейки. Я на обед трачу больше. Или все-таки меньше???

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

Под мои бы нужды Tiни хватило бы за глаза. Если бы там разрешение увеличили. Я бы даже 200р за разьем тогда заплатил. 😃

nyc73

Я посмотрел на свои люфты в сервоприводах и решил, что мне не нужно разрешение в 1К. Делал бочки и петли, разницы не увидел (по сравнению со штатной турнигой), хотя чисто визуально перемещения приводов более “шершавые”. Мне кажется, что если бы увеличить разрядность стоило бы каких-нибудь 30 строк кода без потери дальности - Дмитрий не сделал бы это? И не дописал бы пару обличающих строк в обзор рмилека? Вероятно, на все есть свои причины, и вряд ли многие станут сидя дома крутить 3Д над своей дачей.

AlexSneg
baychi:

Зато в каждом цикле пишется регистр 09 - емкостная нагрузка на кварц.

Если Дмитрий допер сам своим умом путем тестов, как и на что это влияет, то снимаю шляпу. В свое время я плюнул и не стал ковыряться без документации. Чтобы понять что и как влияет в этом регистре нужно либо украсть внутреннюю документацию на Si у производителя, либо провести несколько сотен тестов с каждым параметром, причем с непонятными критериями результатов. Поэтому поставил значение, как производитель рекомендует и забыл.

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

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

Ничего не нужно красть или изобретать- все разжевано и опубликовано. К примеру - про компенсацию ухода частоты от температуры.
www.silabs.com/Support Documents/…/AN593.pdf

AlexSneg

Да, значит в свое время 2 года назад не нашел, или искал плохо. Спасибо почитаю.

msv

Позволю свои комменты:

  1. ИМХО Странно, считал что включение AFC освобождает от геморроя с термо-компенсацией… Цена- требуется увеличенная преамбула.
  2. По разрядности- (как мне показалось) народу не нравится не столько недостаточная точность (реальная точность большинства серв ниже), а джиттер (который и меня по началу жутко раздражал в моем проекте), но это легко лечится софтово, на тех же 8-ми битах.
  3. По латентности: Опять же, меня категорически не устроил первоначальный вариант асинхронной передачи по отношению к принятой ППМ-последовательности… Передача “на лету” (по терминологии Александра) дало совсем другое ощущение от системы. Думаю можно и с коптерами справится…
baychi
msv:

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

Сергей, а до какого уровня можно cнизить джиттер на меге 16 МГц-ровой?

msv

Если джиттер незаметен после срабатывания FS (те если это не проблема генерации импульса PWM), то установка гистерезиса при округлении исходного значения в половину значащего разряда, устраняет проблему на 100%.
(До этого использовал только аналоговую аппу, и полное отсутствие всякого зудения даже по первой напрягало… 😃 )

Панкратов_Сергей
msv:
  1. ИМХО Странно, считал что включение AFC освобождает от геморроя с термо-компенсацией… Цена- требуется увеличенная преамбула.

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

how-eee

Вы запарили писать чушь про коптеры! Уже все обсудили. И видео выкладывали. Вче летает прекрасно даже на первом поколении експерта. Ну не надо коптеру 3дшных скоростей. Можно вообще на дискретной аппе летать.

msv:

Думаю можно и с коптерами справится…

Shuricus:

Дело не в 3Д а в коптерах.

baychi
msv:

Если джиттер незаметен после срабатывания FS

Скачал новое ПО для своего осцилла и замерял параметры PWM на пару порядков точнее.
Джиттер ширины PWM на выходе приемника в режиме FaiLSafe менее 0.2 мкс!
Джиттер при работе, либо такой-же, либо равен шагу изменения - 2 мкс (неопределенность в один бит на одном шаге из 4-х - видимо разрядная сетка Футабы не совпадает с представлением Expert-а).
То есть сейчас это четкие 9 разрядов, с возможностью увеличения до 12-ти (если захват не подкачает). Есть куда расти! 😃

baychi

Попробывал поиграть с регистром мощности 6D. Нашел в прошивке, где Дмитрий загружет туда либо максимальное значение 0F, либо на 1-2 шага меньше (0E или 0D). (Кстати, удивило что вариантов 3! Возможно все-таки 3-х позиционное управлене не полносстю отключено). Поставил вместо 0E/0D минимально возможное значение 0. Загрузил хакнутую прошивку и померял. Теперь мощность в минимальном режиме падает в 11-12 раз (на 11 дБ), до 70-80 мВт, а потребляемая мощность на 1 Вт (с 2.2 до 1.2 Вт). Следствий из этого дела 3:

  1. Режим Range Check (существенное понижение мощности в 100-1000 раз) реализовать на Tiny программно невозможно.
  2. Можно уменьшить минимальную мощность на 6-10 дБ и почти вдвое сократить потребление энергии (для меня это важно, так ка питаю модуль от передатчика и лишние 150-200 мА очень напрягают, особенно во время предполетной подготовки).
  3. Дмитрий не проверяет целостность прошивки передатчика во время самотестирования. Чему я неприятно удивлен в серийном изделии. 😦

PS: Если кому надо, могу рассказать, где и что нужно изменить в прошивке, что-бы получить реально пониженную мощность.