Since 1998
Russia
Поиск
Review
Master
Статьи → Борьба с помехами в аппаратуре

Борьба с помехами в аппаратуре

23 Март, 2006

Автор: Александр Еремин

Многие, наверное, сталкивались с глюками аппаратуры, когда по необъяснимой причине начинает дергаться рулевка или мотор. Особенно неприятно поймать глюк на трассе во время гонки. У нас даже есть поверье, что глюки обосновались «вот там под щитом».

На самом деле, значительная часть проис?ествий вызвана вполне понятными причинами. Кто-то, не участвующий в гонке, оставил включенный передатчик (причем не обязательно на совпадающих частотах). У кого-то старинные щетки жутко искрят по не менее раздолбанному коллектору, а антенна тщательно замотана вокруг и рядом с мотором. Где-то силовой провод сломался и так же искрит, а под изоляцией не видно (реальный, кстати, случай).

Понятно, что чем луч?е (дороже?) аппаратура, тем луч?е она защищена от помех, мень?е таких глюков пропускает до сервы или регулятора. Не у всех, однако, есть такая аппаратура. Можно ли как-то улуч?ить ситуацию?

У меня Futaba 6EXA, на ма?ине – футабовский же приемник двойного преобразования. Вроде бы вполне приличный набор. Не часто, но случается поймать глюка. Поскольку ситуация редко воспроизводится, я ре?ил попробовать поиграться с Хайтековским микроприемником однократного преобразования (Hitec Feather 4). С выключенным передатчиком он принимает черте че, ма?инки дергаются как сумас?ед?ие. С включенным передатчиком ситуация улуч?ается, но дальность уверенного приема очень ограничена, не более десятков метров, этого вполне хватает для на?его закрытого зала, так что я катался на этом приемнике в начале сезона. Подходящий кандидат для отладки!

В приемнике есть упрощенно всего пара основных компонентов – собственно приемник сигнала и декодер. Приемная часть «чует» сигнал передатчика и выдает в результате или высокий, или низкий уровень сигнала. А декодер преобразует эти уровни в понятный для сервы или регулятора сигнал. Мои передатчик и приемник используют для общения способ кодирования, называемый PPM. Нельзя сказать, чтобы это был луч?ий из известных способов кодирования, но это наиболее распространенный вариант. Вся аппаратура начального уровня использует именно этот способ.

?нтересно, что кодирование сигнала, скажем так, между передатчиком и приемником очень похоже на кодирование между приемником и сервами. Данные по всем каналам передатчик передает один за другим (1, 2, …, пауза, 1, 2, …). Декодер выбирает из сигнала данные для 1 канала и отправляет их первой серве, и т.д. Это обстоятельство позволяет сделать декодер очень простым. ?, конечно же, де?евым. Но беда в том, что, как правило, в аппаратном декодере не предусмотрено никакой защиты от случайных помех. Это приводит к тому, что декодер сбивается с ритма, данные по одному каналу отправляет не той серве, часто декодер вообще неправильно выбирает данные даже для одного канала.

PPM кодирование не такая уж сложная вещь, чтобы не сделать программный декодер своими руками. Естественно, на PIC’е! Кстати, такие open source реализации есть в сети. ?зучив мат. часть, а именно, что и как расположено на плате приемника, попросил Диму (Dimk) выпаять из приемника аппаратный декодер, а на его место впаять контроллер. (Честно скажу, я сначала сам попробовал запаяться, но… ручонки не оттуда растут. Вот жаль, не зафоткал, как Дима паял эту мелкосхемку.) К сожалению, как это часто бывает с open source, готовый программный декодер, исходники которого я на?ел, не заработал на моей Футабе. Поэтому при?лось взять осциллограф, поглядеть на сигналы и написать декодер заново. Удалось еще встроить и fail safe – при невозможности декодировать сигнал сервы перемещаются в любое указанное заранее положение.

Результаты оказались для меня неожиданными! Дальность уверенного приема выросла многократно! Точнее, сказать не приема сигнала с приемника, а полученного после обработки и выданного на сервы. Надо сказать, что обычное правило – первым включать передатчик, потом приемник – можно забыть. При выключенном передатчике сервы переводятся в установленное положение и остаются там до появления сигнала. Причем нет никакого дрожания ни в одном из положений ручки. Я проделывал даже такой трюк – покачивал ручку вправо-влево, кратковременно выключая передатчик. Серва крутилась вправо-влево, как положено, иногда только (в моменты выключения передатчика) на мгновение останавливаясь.

Но никаких рывков или иного неадекватного поведения не наблюдалось. При натурных испытаниях на местности (антенна передатчика выдвинута только на один сегмент и направлена в сторону приемника, антенна приемника полностью свернута в плотный клубок – самые худ?ие условия приема) постепенно отходил от передатчика. Видно было, что сигнал становится все хуже (контроллер мыргает светодиодом при о?ибках приема тем чаще, чем хуже прием), но сервы продолжают более-менее устойчиво двигаться.

В общем, попробую в пятницу покататься с таким приемником. Думаю, что теперь глюки пропадут или их станет заметно мень?е.

Если кому будет интересно, дам все ссылки и помогу добрым словом.


  


Комментарии
  1. 008,    2 Декабрь 2006   

    Я думаю надо нафиг вырубать пульты ато будет как у меня ктонибуть врубит пульт и ?естярням и бамперу и рычагам каюк.

  2. Sleepyhead,    15 Декабрь 2006   

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

Имя Запомнить
e-mail* *Ваш e-mail невидим для спама
Сообщение