РадиоКот :: "Поехали кататься!" или машинка на радиоуправлении
Например TDA7294

РадиоКот >Схемы >Цифровые устройства >Игрушки >

Теги статьи: РадиоуправлениеAVRДобавить тег

"Поехали кататься!" или машинка на радиоуправлении

Автор: VanyaSV, vanyasv2313@gmail.com
Опубликовано 21.09.2015
Создано при помощи КотоРед.
Участник Конкурса "Поздравь Кота по-человечески 2015!"

Дорогой радиокот! Поздравляю тебя с Днём Рождения! Желаю тебе всего самого наилучшего! Безо всяких преувеличений, я
обожаю этот сайт! Здесь я научился очень многому, даже первую схемку бегущих огней я нашёл и собрал с этого сайта.
И вот, чуть чуть набравшись мозгов (совсем чуть чуть), я решил тебе преподнести небольшой подарок... Вот он:


 Здорово выглядит, неправда ли? Передвигается сие чудо великой инженерной мысли по принципу танка. На ней можно мышей катать, хозяина дразнить, подкатить к какой-нибудь кошечке) Ну да ладно! Хватит юморить... Перейдём от слов к делу!

 Всё началось пару лет тому назад, занимался я в радиокружке и захотелось мне сконструировать машинку, только на ИК-управлении. Вот только получилось слишком узконаправленное управление. Пришлось гуглить( 

 Лазил я значит по интернету, лакомился рыбкой, запивал молчком и наткнулся на очень интересные радиомодули. Их наверное видел каждый из вас:

 Очень уж цена вкусной показалась (на тот момент комплект стоил 63 рубля).

 Технические характеристики передатчика

  1. Напряжение питания – от 3,6 до 15 В;
  2. Ток потребления – 10 мА;
  3. Тип модуляции – амплитудная;
  4. Рабочая частота – 315 МГц;
  5. Мощность – 10 мВт;
  6. Максимальная скорость передачи данных – 4 кбит/с;

 Технические характеристики приёмника:

  1. Напряжение питания – 5 В;
  2. Ток потребления – 4 мА;
  3. Рабочая частота, соответственно – 315 МГц;
  4. Чувствительность – 105 Дб;

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

 Следовательно, необходимо передавать данные последовательностью нулей и едениц, то есть пакетами.

 После долгих мучений экспериментов родились следующие схемы:

1. Схема передатчика

 Работает на удивление просто: При нажатии соответствующий кнопки генерируется команда, которая передаётся по радиоканалу. Так как это "китайское чудо" работает минимум от 3,6 В, а литиевый аккумулятор имеет рабочее напряжение в диапазоне от 4,2 В до 3 В, то необходим повышающий импульсный стабилизатор. Он посторен на микросхеме max856. Так же нельзя забывать о том, что минимальное напряжение на банки литиевого аккумулятора должно быть не менее 3 В. На этот случай использован компаратор микроконтроллера и обратная связь на основе подстроечного резистора R6. В случае, если напряжение достигнет 3 В, микроконтроллер начнёт мигать красным светодиодом и прекратит передачу команд.

Настройка

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

2. Схема машинки

 Схема так же работает очень просто. Управление двигателями осуществляется с помощью мостовой схемы на полевых транзисторах. Самоиндукционные выбросы подавляются внутренними диодами полевых транзисторов, а так же цепочками резисторов и конденсаторов. Так же для защиты от самоиндукционных выбросов цифровой части в схеме реализовано аналоговое и цифровое питание. В качестве источника питания была использована батарея из двух литевых аккумуляторов. В качестве стабилизатора питания была выбрана микросхема LM2940 с низким падением напряжения. Выбрана именно она, а не обычная КРЕНка, не с проста. Дело в том, что рабочее напряжение на двух литиевых аккумуляторах составляет 7,4 В, а падение напряжение на КРЕНке составляет 2,5 В, таким образом рабочее напряжение составило бы 4,7 В... Дальше меньше( А падение напряжение на LM2940 составляет 0,5 В, что не может не радовать! При движении машинки в прямом направлении и при поворотах светятся белые светодиоды спереди, а при движении в обратном направлении горят жёлтые светодиоды сзади. Красные светодиоды сзади горят постоянно. Да! А вы как хотели? Это же "автомобиль", а в нём все должно быть по-настоящему!

Настройка

Настройка аналогична, что и с передатчиком. Только на вход подаём не 3 В, а 6 В)

Немного о кодировке и передаче данных

Для кодирования дынных был выбран манчестерский код, так как он является самосинхронизирующимся, то есть не требует специальной кодировки синхроимпульса. При манчестерском кодировании каждый такт делится на две части. Информация кодируется перепадами потенциала в середине каждого такта, где логическому нулю соответствует переход в центре бита из нуля в единицу, а логическая единица соответствует переходу в центре бита из единицы в ноль. Обязательное наличие перехода в центре бита позволяет легко выделить синхросигнал. Допустимое расхождение частот передачи - до 25 % . Это означает,что код Манчестер самый устойчивый к рассинхронизации, он самосинхронизуется в каждом бите передаваемой информации.

 Всё выглядит довольно просто, но у данного способа кодировки есть пара недостатков:

 1. При последовательной кодировке одноименных битов информации происходит удвоение частоты, что явно видно на рисунке выше;

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

Мяу! Не совсем понятно, не правда ли? Объясню более наглядно. 

Рассмотрим пример передачи 1 байта данных. Возьмём, например байт 0х33. Перекодируем, согласно данному закону. Этот сигнал поступает на вход передатчика.

 Возможны два варианта принятого сигнала. Рассмотрим первый, когда сигнал пришёл без потери первого бита. В контроллере програмно реализован детектор изменений входного сигнала. В тот момент, когда происходит переход из 1 в 0 или из 0 в 1 на выходе этого детектора на короткое время устанавливается логическая единица. Так же в контроллере реализован программный счётчик, который считает от 0 до 15. Далее идёт программное сравнение значения счётчика с 8 и вычленение каждого второго значения. С полученным сигналом и с принятыми данными происходит операция логическое “И”. Результатом этой операции является сигнал, принятый с передатчика.

Рассмотрим случай, когда сигнал пришёл с потерей первой половины бита. По принципу выделения байта данных мы видим, что полученый сигнал является инверсным.

 Так как же нам быть? Как же нам расшифровать сигнал правильно? Для того, чтобы расшифровать сигнал правильно необходимо реалилизовать пакет, состоящий из 6 байт. Первый байт может быть любым. Он необходим для выхода передатчика на рабочую частоту. Договариваемся сами с собой, что следующие 2 байта – байты синхронизации и будут численно равны 0хАА и 0х55. И, соответственно 3 байта данных. Изначально, контроллер приёмника сравнит принятые 2 байта синхронизации. Если байты синхронизации не совпали – это свидетельствует о том, что возможно появилась помеха. В момент приёма данных могут возникать ошибки. Для того, чтобы этого избежать необходимо передавать, как минимум 3 байта данных. В этом случае мы можем выявить ошибку и расшифровать принятый байт данных.

Фьюзы

Сбрасываем все, кроме SPIEN)

Немного фотографий

Сам "Автомомбиль":

Внутренности передатчика:

Печатные платы и прошивка


Файлы:
Архив RAR


Все вопросы в Форум.




Как вам эта статья?

Заработало ли это устройство у вас?

120 11 4
1 0 4

Эти статьи вам тоже могут пригодиться: