Некоторое время назад, мне в руки попало вот такое радиоуправление. Точнее, только блок передатчика. Чем оно управляло - остается только догадываться.
Ничего особенного. Работает от двух батареек АА, частота - 49 МГц (кварц).
Энкодер TX-2 хорошо виден на фотографии. Ни одного настроечного элемента. Выходная катушка - на самом деле дроссель, без сердечника.
Так как с "наскока" документацию на микросхему TX-2 найти не удалось, то работоспособность была быстро проверена осциллографом. При нажатии на любую кнопку, зажигается светодиод и на 7-й и 8-й ноге микросхемы появляются пачки импульсов. На 11, 12, 13 - импульсы внутреннего генератора (5,5мкс, 7мкс и 11,5мкс, соответственно).
*** Схема, в данном случае, не имеет значения! Поэтому и не "снималась". Если есть желание, то "христоматию" по простейшим схемам радиуправления Вы можете посмотреть на members.shaw.ca (только схемы, нарисованы "от руки", минимум комментариев), плюс, на том же сайте для TX-2B. Оригинал документации - TX2/RX2 (PDF) с сайта hlec.com.cn То же, только от компании Realtek RX2/TX2 или от PT (Pericom Tech. PT8A977P,PT977W,PT978P,PT978LW, PT8A978BP). И простейшая схема на TX2, которую легко повторить и не требующая настройки - здесь.
Решено было проверить, что из себя представляет кодировочная последовательность и можно ли ее легко сэмулировать, скажем, с помощью внешнего микроконтроллера.
Дальше, осциллограммы с выхода микросхемы / входа модулятора, снятые с помощью бесплатной программы VA (Visual Analyser).
Нажата кнопка "Ход Вперед". 4-ре импульса синхронизации и 10 импульсов команды. Ширина импульса синхронизации - 1,053 мс, остальных - 0,35 мс. Интервал - 0,35 мс.
"Ход назад". 4-ре синхро импульса, 40 импульсов команды.
"Поворот, лево". 4-ре синхро, 58 - команды.
"Поворот, право". 4-ре синхро, 64 - команды.
Надо сказать, что это одна из самых простых цифровых кодировок. Ее очень просто повторить с помощью микроконтроллера.
Мой микроконтроллер формирует импульсы кратные 0,5 мсек. В оригинальном контроллере радиоуправляемой игрушки все импульсы кратны 0,75 мсек. Это легко посчитать по делениям на осциллограмме.
Если в руках оказалась плата ARDUINO или MSP430, то можно так же просто передавать команды по одному проводу. Идея программы будет приблизительно такая (задержку 1500 и 500 надо подобрать):
void setup()
{ pinMode(1, OUTPUT); }
void loop()
{ for(int i=0; i<=3; i++) // 4 pulses, ~1KHz, 75% duty cycle
{ digitalWrite(1, HIGH);
delayMicroseconds(1500);
digitalWrite(1, LOW);
delayMicroseconds(500); }
for(int i=0; i<10; i++) // 10 pulses, 50% duty cycle
{ digitalWrite(1, HIGH);
delayMicroseconds(500);
digitalWrite(1, LOW);
delayMicroseconds(500); } }
Остается вместо 10 подставить переменную, со значениями 4, 10(F), 16, 22, 28(FL), 34(FR), 40(B), 46(BL), 52(BR), 58(L), 64(R) и наблюдать как игрушка двигается в разных направлениях.
Я не сильный любитель Arduino, поэтому у меня работает MSP430 от TI. Короткое описание и программу Вы найдете на этой странице. И то же, только IR версия, с несущей 38kHz.
Интересно, конечно, наблюдать как игрушка реагирует на команды, но ловить ее по всей квартире и возвращать в центр комнаты - занятие еще то. Поэтому, очень полезный тестер, который показывает какие команды активны.
Опять же, ничего особенного. Радиоприемник с декодером извлечен из разбитой игрушки и вместо двигателей подключены двух-цветные светодиоды (через 100 Омные резисторы, конечно). Они показывают какой двигатель включен и в каком направлении.
К сожалению, не все кодировки такие простые.
---------------------------------------------------------------------------------------------------
/* Для примера, следующие осциллограммы показывают как работает более "продвинутое" радиоуправление. Основано на микросхеме кодера TS-6. В нем есть "Ход Вперед, скорость 1" и "Ход вперед, скорость 2". Остальные диаграммы - "ход назад", "влево", "вправо".
Можно растянуть последнюю осциллограмму по времени. И еще, немного, растянуть до 7,5 мс.
Конечно, если долго рассматривать последние осциллограммы, то можно найти какую то закономерность. Но это больше похоже на "медитирование". Проще скачать datasheet_TX6C_RX6C_new.pdf , от того же производителя, и не мучаться. В 5-й версии этой микросхемы кодировка та же, только добавлены две команды F3 и F4 (для примера - TX5 ATS305T/RX5 ATS305R.pdf).
Кстати, последнее радиуправление выглядело так (кодер TS-6, J4G3R и кварц на 27,145 МГц).
Система кодировки снована на передаче 0-й и 1-ц, которые кодируются по разному. На выходе получается многобитная последовательность, где есть начало, команда, четность и конец. Это, хоть и плохо, но описано в документе TX5/RX5.pdf.
Еще одна кодировка описана здесь. Она хоть и редкая, но позволяет управлять тремя электродвигателями одновременно. Ссылки на кодировку для вертолетов - в конце страницы.
---------------------------------------------------------------------------------------------------
Но вернемся к первому радиоуправлению. Что будет если одновременно передавать две команды. К примеру вперед и влево? В этом случае передается комбинационная команда. На осциллограммах последовательно показаны "Вперед, Лево", "Вперед, Право", "Назад, Лево" и "Назад, Право".
"Вперед, Лево" 4+28 импульсов.
"Вперед, Право" 4+34 импульса.
"Назад, Лево" 4+52 импульса.
"Назад, Право" 4+46 импульсов.
Судя по всему, в микросхему заложена возможность кодировать бОльшее число комбинаций. Но и этого достаточно.
*** Если Вы не такой ленивый как я, то Вы уже прочитали документацию на TX2/RX2 (ссылка в начале страницы) и знаете, что в микросхему заложен дополнительный режим "Турбо". ***
Так, в качестве "практической работы"
Конечно они из разных комплектов, и конечно, не работают вместе. Пока еще не работают.
Зачем все это?
Дело в том, что радиоуправляемые игрушки - уникальный материал для
всевозможных приводов. Будь это система слежения за солнцем или автомат
открывающий вентиляционные окна в теплице. В данном случае можно
использовать приводы и совершенно не задумываться о том, как все
устроено, в середине. Какие драйвера, мосты, усилители, согласование,
мощность, как это управляется и как к этому подключиться. Просто сигнал с
микроконтроллера подается на модулятор и по радиоканалу - в игрушку.
Остальные проблемы решает система радиоуправления, самостоятельно. И с
микроконтроллером получается очень удобно. Используются только два
выхода. Один на включение питания модулятора (передатчика), второй -
кодирующая последовательность. Конечно, при этом необходимо "питать"
приемник и передатчик. Но чего стоят потери миллиампер (0,5 мА приемник и
10 мА передатчик), когда система управляет моторами, которые потребляют
сотни миллиампер?
Рекомендую. Очень удобно : )
И последне, для любознательный, или как говорил мой папа - для эстетического разнообразия. На следующих страницах сверх-короткое описание IR пультов управления для разных игрушек, которые попадали мне в руки. Ничего сложного. На английском, так сложилось.
rc-toy1 -> то же самое, что здесь для TX2/RX2, только коротко;
rc-toy2 -> "Battle Tank";
rc-toy3 -> Turbo Hawk helicopter, 'PROTOCOL';
rc-toy4 -> 'Silver Bullet' helicopter from Brookstone;
rc-toy5 -> Gyro helicopter;
rc-toy6 -> 'Blach Spider XT' helicopter;
rc-toy7 -> 'Propel' helicopter;
rc-toy10 -> Remote on MSP430F2011 (encoding TX2/RX2);
rc-toy11 -> The same as rc-toy10, but for IR transmitter.
etc.
_
Make a free website with Yola