Мощный передатчик 433 мгц своими руками. Радиоуправляемое реле своими руками. Шифрование или "привязка" пульта к приёмнику

  • Простота подключения. Рассматриваемые модули , в отличии от nRF24L01+ , питаются от напряжения 5 В.
  • Доступность. Радио модули выпускаются множеством производителей, в различном исполнении и являются взаимозаменяемыми.
  • Недостатки:

    • На частоте 433,920 МГц работают множество других устройств (радио люстры, радио розетки, радио брелки, радио модели и т.д.), которые могут «глушить» передачу данных между радио модулями .
    • Отсутствие обратной связи. Модули разделены на приёмник и передатчик . Таким образом, в отличии от модуля nRF24L01+ , приемник не может отправить передатчику , сигнал подтверждения приёма.
    • Низкая скорость передачи данных, до 5 кбит/сек.
    • Приёмник MX-RM-5V критичен даже к небольшим пульсациям на шине питания. Если Arduino управляет устройствами вносящими даже небольшие, но постоянные, пульсации в шину питания (сервоприводы, LED индикаторы, ШИМ и т.д.), то приёмник расценивает эти пульсации как сигнал и не реагирует на радиоволны передатчика. Влияние пульсаций на приёмник можно снизить одним из способов:
      • Использовать, для питания Arduino, внешний источник, а не шину USB. Так как напряжение на выходе многих внешних источников питания контролируется или сглаживается. В отличии от шины USB, где напряжение может существенно «проседать».
      • Установить на шине питания приёмника сглаживающий конденсатор.
      • Использовать отдельное стабилизированное питание для приёмника.
      • Использовать отдельное питание для устройств вносящих пульсации в шину питания.

    Нам понадобится:

    • Радио модули FS1000A и MX-RM-5V х 1 комплект.
    • Trema светодиод (красный , оранжевый , зелёный , синий или белый) x 1шт.
    • Набор проводов «мама-мама» для подключения радио модулей х 1 комплект.

    Для реализации проекта нам необходимо установить библиотеки:

    • Библиотека iarduino_RF433 (для работы с радио модулями FS1000A и MX-RM-5V).
    • Библиотека iarduino_4LED , (для работы с Trema четырехразрядным LED индикатором).

    О том как устанавливать библиотеки, Вы можете ознакомиться на странице Wiki - Установка библиотек в Arduino IDE .

    Антенна:

    Первый усилитель любого приёмника и последний усилитель любого передатчика, это антенна. Самая простая антенна - штыревая (отрезок провода определённой длины). Длина антенны (как приёмника, так и передатчика), должна быть кратна четверти длины волны несущей частоты. То есть, штыревые антенны, бывают четвертьволновые (L/4), полуволновые (L/2) и равные длине волны (1L).

    Длинна радиоволны вычисляется делением скорости света (299"792"458 м/с) на частоту (в нашем случае 433"920"000 Гц).

    L = 299"792"458 / 433"920"000 = 0,6909 м = 691 мм.

    Таким образом длина антенн для радио модулей на 433,920 МГц может быть: 691 мм (1L), 345 мм (L/2), или 173 мм (L/4). Антенны припаиваются к контактным площадкам, как показано на схеме подключения.

    Видео:

    Схема подключения:

    Приёмник:

    При старте (в коде setup) скетч настраивает работу радиоприёмника , указывая те же параметры что и у передатчика , а также инициирует работу с LED индикатором . После чего, постоянно (в коде loop), проверяет нет ли в буфере данных, принятых радиоприёмником . Если данные есть, то они читаются в массив data, после чего значение 0 элемента (показания Trema слайдера) выводится на LED индикатор , а значение 1 элемента (показания Trema потенциометра) преобразуются и используется для установки яркости светодиода .

    Код программы:

    Передатчик:
    #include // Подключаем библиотеку для работы с передатчиком FS1000A iarduino_RF433_Transmitter radio(12); // Создаём объект radio для работы с библиотекой iarduino_RF433, указывая номер вывода к которому подключён передатчик int data; // Создаём массив для передачи данных void setup(){ radio.begin(); // Инициируем работу передатчика FS1000A (в качестве параметра можно указать скорость ЧИСЛО бит/сек, тогда можно не вызывать функцию setDataRate) radio.setDataRate (i433_1KBPS); // Указываем скорость передачи данных (i433_5KBPS, i433_4KBPS, i433_3KBPS, i433_2KBPS, i433_1KBPS, i433_500BPS, i433_100BPS), i433_1KBPS - 1кбит/сек radio.openWritingPipe (5); // Открываем 5 трубу для передачи данных (передатчик может передавать данные только по одной из труб: 0...7) } // Если повторно вызвать функцию openWritingPipe указав другой номер трубы, то передатчик начнёт передавать данные по вновь указанной трубе void loop(){ data = analogRead(A1); // считываем показания Trema слайдера с вывода A1 и записываем их в 0 элемент массива data data = analogRead(A2); // считываем показания Trema потенциометра с вывода A2 и записываем их в 1 элемент массива data radio.write(&data, sizeof(data)); // отправляем данные из массива data указывая сколько байт массива мы хотим отправить delay(10); // пауза между пакетами }
    Приемник:
    #include // Подключаем библиотеку для работы с приёмником MX-RM-5V #include // Подключаем библиотеку для работы с четырёхразрядным LED индикатором iarduino_RF433_Receiver radio(2); // Создаём объект radio для работы с библиотекой iarduino_RF433, указывая номер вывода к которому подключён приёмник (можно подключать только к выводам использующим внешние прерывания) iarduino_4LED dispLED(6,7); // Создаём объект dispLED для работы с функциями библиотеки iarduino_4LED, с указанием выводов дисплея (CLK , DIO) int data; // Создаём массив для приёма данных const uint8_t pinLED=11; // Создаём константу с указанием вывода ШИМ к которому подключён светодиод void setup(){ dispLED.begin(); // Инициируем работу LED индикатора radio.begin(); // Инициируем работу приёмника MX-RM-5V (в качестве параметра можно указать скорость ЧИСЛО бит/сек, тогда можно не вызывать функцию setDataRate) radio.setDataRate (i433_1KBPS); // Указываем скорость приёма данных (i433_5KBPS, i433_4KBPS, i433_3KBPS, i433_2KBPS, i433_1KBPS, i433_500BPS, i433_100BPS), i433_1KBPS - 1кбит/сек radio.openReadingPipe (5); // Открываем 5 трубу для приема данных (если вызвать функцию без параметра, то будут открыты все трубы сразу, от 0 до 7) // radio.openReadingPipe (2); // Открываем 2 трубу для приёма данных (таким образом можно прослушивать сразу несколько труб) // radio.closeReadingPipe(2); // Закрываем 2 трубу от приёма данных (если вызвать функцию без параметра, то будут закрыты все трубы сразу, от 0 до 7) radio.startListening (); // Включаем приемник, начинаем прослушивать открытую трубу // radio.stopListening (); // Выключаем приёмник, если потребуется } void loop(){ if(radio.available()){ // Если в буфере имеются принятые данные radio.read(&data, sizeof(data)); // Читаем данные в массив data и указываем сколько байт читать dispLED.print(data); // Выводим показания Trema слайдера на индикатор analogWrite(pinLED, map(data,0,1023,0,255)); // Устанавливаем яркость свечения светодиода в соответствии с углом поворота Trema потенциометра } // Если вызвать функцию available с параметром в виде ссылки на переменную типа uint8_t, то мы получим номер трубы, по которой пришли данные (см. урок 26.5) }

    Кто из начинающих радиолюбителей не хотел сделать какое-нибудь устройство с управлением по радиоканалу? Наверняка многие.

    Давайте рассмотрим, как на базе готового радиомодуля собрать несложное радиоуправляемое реле.

    В качестве приёмо-передатчика я использовал готовый модуль. Купил его на AliExpress вот у этого продавца .

    Комплект состоит из пульта-передатчика на 4 команды (брелок), а также платы приёмника. Плата приёмника выполнена в виде отдельной печатной платы и не имеет исполнительных цепей. Их необходимо собрать самому.

    Вот внешний вид.

    Брелок добротный, приятный на ощупь, поставляется с батарейкой 12V (23А).

    В брелоке встроена плата, на которой собрана довольно примитивная схема пульта-передатчика на транзисторах и шифраторе SC2262 (полный аналог PT2262). Смутило то, что на микросхеме в качестве маркировки указано SC2264, хотя из даташита известно, что дешифратор для PT2262 - это PT2272. Тут же на корпусе микросхемы чуть ниже основной маркировки указано SCT2262. Вот и думай, что к чему . Что ж, для Китая это не удивительно.

    Передатчик работает в режиме амплитудной модуляции (АМ) на частоте 315 МГц.

    Приёмник собран на небольшой печатной плате. Радиоприёмный тракт выполнен на двух SMD-транзисторах с маркировкой R25 - биполярных N-P-N транзисторах 2SC3356. На операционном усилителе LM358 реализован компаратор, а к его выходу подключен дешифратор SC2272-M4 (она же PT2272-M4).

    Как работает устройство?

    Суть работы сего устройства такова. При нажатии на одну из кнопок пульта A, B, C, D передаётся сигнал. Приёмник усиливает сигнал, а на выходах D0, D1, D2, D3 платы приёмника появляется напряжение 5 вольт. Вся загвоздка в том, что 5 вольт на выходе будет только пока нажата соответствующая кнопка на брелоке. Стоит отпустить кнопку на пульте - напряжение на выходе приёмника пропадёт. Упс. В таком случае не получиться сделать радиоуправляемое реле, которое бы срабатывало при кратковременном нажатии кнопки на брелоке и отключалось при повторном.

    Связано это с тем, что существуют разные модификации микросхемы PT2272 (китайский аналог - SC2272). А в такие модули почему то ставят именно PT2272-M4, у которых нет фиксации напряжения на выходе.

    А какие же бывают разновидности микросхемы PT2272?

      PT2272-M4 - 4 канала без фиксации. На выходе соответствующего канала +5V появляется только тогда, пока нажата кнопка на брелоке. Именно такая микросхема используется в купленном мной модуле.

      PT2272-L4 - 4 зависимых канала с фиксацией. Если включается один выход, то другие отключаются. Не совсем удобно, если необходимо независимо управлять разными реле.

      PT2272-T4 - 4 независимых канала с фиксацией. Самый лучший вариант для управления несколькими реле. Поскольку они независимы, то каждое может выполнять свою функцию независимо от работы других.

    Что же сделать, чтобы реле срабатывало так, как нам нужно?

    Тут есть несколько решений:

      Выдираем микросхему SC2272-M4 и вместо неё ставим такую же, но с индексом T4 (SC2272-T4). Теперь выходы будут работать независимо и с фиксацией. То есть можно будет включить/выключить любое из 4 реле. Реле будут включаться при нажатии кнопки, и выключаться при повторном нажатии на соответствующую кнопку.

      Дополняем схему триггером на К561ТМ2. Так как микросхема К561ТМ2 состоит из двух триггеров, то понадобиться 2 микросхемы. Тогда будет возможность управлять четырьмя реле.

      Используем микроконтроллер. Требует навыков программирования.

    На радиорынке микросхему PT2272-T4 я не нашёл, а заказывать с Ali целую партию одинаковых микрух счёл нецелесообразным. Поэтому для сборки радиоуправляемого реле решил использовать второй вариант с триггером на К561ТМ2.

    Схема достаточно проста (картинка кликабельна).

    Вот реализация на макетной плате.

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

    Наверняка заметили, что в макетку я воткнул готовый блок с реле. Его я вытащил из охранной сигнализации. Блок оказался очень удобным, так как на плате уже было распаяно само реле, штыревой разъём и защитный диод (это VD1-VD4 на схеме).

    Пояснения к схеме.

    Приёмный модуль.

    Вывод VT - это вывод, на котором появляется напряжение 5 вольт, если был принят сигнал от передатчика. Я к нему подключил светодиод через сопротивление 300 Ом. Номинал резистора может быть от 270 до 560 Ом. Так указано в даташите на микросхему.

    При нажатии на любую кнопку брелока светодиод, который мы подключили к выводу VT приёмника, будет кратковременно вспыхивать - это свидетельствует о приёме сигнала.

    Выводы D0, D1, D2, D3; - это выходы микросхемы дешифратора PT2272-M4. С них мы будем снимать принятый сигнал. На этих выходах появляется напряжение +5V, если был принят сигнал от пульта управления (брелока). Именно к этим выводам подключаются исполнительные цепи. Кнопки A, B, C, D на пульте (брелоке) соответствуют выходам D0, D1, D2, D3.

    На схеме приёмный модуль и триггеры запитываются напряжением +5V от интегрального стабилизатора 78L05. Цоколёвка стабилизатора 78L05 показана на рисунке.

    Буферная цепь на D-триггере.

    На микросхеме К561ТМ2 собран делитель частоты на два. На вход С приходят импульсы с приёмника, и D-триггер переключается в другое состояние до тех пор, пока на вход С не придёт второй импульс с приёмника. Получается очень удобно. Поскольку реле управляется с выхода триггера, то и оно будет включено или выключено до тех пор, пока не придёт следующий импульс.

    Вместо микросхемы К561ТМ2 можно использовать К176ТМ2, К564ТМ2, 1КТМ2 (в металле с позолотой) или импортные аналоги CD4013, HEF4013, HСF4013. Каждая из этих микросхем состоит из двух D-триггеров. Их цоколёвка одинаковая, но вот корпуса могут быть разные, как, например, у 1КТМ2.

    Исполнительная цепь.

    В качестве силового ключа используется биполярный транзистор VT1. Я использовал КТ817, но подойдёт КТ815. Он управляет электромагнитным реле K1 на 12V. К контактам электромагнитного реле K1.1 можно подключать любую нагрузку. Это может быть лампа накаливания, светодиодная лента, электродвигатель, электромагнит замка и др.

    Цоколёвка транзистора КТ817, КТ815.

    Следует учесть, что мощность подключаемой к контактам реле нагрузки должна быть не меньше той мощности, на которую рассчитаны контакты самого реле.

    Диоды VD1-VD4 служат защитой транзисторов VT1-VT4 от напряжения самоиндукции. В момент отключения реле в его обмотке возникает напряжение, которое противоположено по знаку тому, которое поступало на обмотку реле от транзистора. В результате транзистор может выйти из строя. А диоды по отношению к напряжению самоиндукции оказываются открытыми и "гасят" его. Тем самым они берегут наши транзисторы. Не забывайте про них!

    Если хотите дополнить исполнительную цепь индикатором включения реле, то добавляем в схему светодиод и резистор на 1 кОм. Вот схема.

    Теперь, когда на обмотку реле будет подано напряжение, включится светодиод HL1. Это будет указывать на то, что реле включено.

    Вместо отдельных транзисторов в схеме можно использовать всего лишь одну микросхему с минимумом обвязки. Подойдёт микросхема ULN2003A . Отечественный аналог К1109КТ22 .

    Это микросхема содержит 7 транзисторов Дарлингтона. Удобно то, что выводы входов и выходов расположены друг против друга, что облегчает разводку платы, да и обычное макетирование на беспаечной макетной плате.

    Работает довольно просто. Подаём на вход IN1 напряжение +5V, составной транзистор открывается, и вывод OUT1 подключается к минусу питания. Тем самым на нагрузку подаётся напряжение питания. Нагрузкой может быть электромагнитное реле , электромотор, цепь из светодиодов, электромагнит и пр.

    В даташите производитель микросхемы ULN2003A хвастается, что ток нагрузки каждого выхода может достигать 500 мА (0,5А), что собственно, не мало. Тут многие из нас умножат 0,5А на 7 выходов и получат суммарный ток в 3,5 ампера. Да, здорово! НО . Если микросхема и сможет прокачать через себя такой существенный ток, то на ней можно будет жарить шашлык...

    На самом деле, если задействовать все выходы и пустить в нагрузку ток, то выжать без вреда для микросхемы можно будет около ~80 - 100мА на канал. Опс. Да, чудес не бывает.

    Вот схема подключения ULN2003A к выходам триггера К561ТМ2.

    Есть ещё одна широко распространённая микросхема, которую можно использовать - это ULN2803A.

    У неё уже 8 входов/выходов. Я её выдрал с платы убитого промышленного контроллера и решил поэкспериментировать.

    Схема подключения ULN2803A. Для индикации включения реле можно дополнить схему цепью из светодиода HL1 и резистора R1.

    Вот так это выглядит на макетке.

    Кстати, микросхемы ULN2003, ULN2803 допускают объединение выходов для увеличения максимально-допустимого выходного тока. Это может потребоваться, если нагрузка потребляет более 500 мА. Соответствующие входы также объединяются.

    Вместо электромагнитного реле в схеме можно применить твёрдотельное реле (SSR - S olid S tate R elay). В таком случае, схему можно существенно упростить. Например, если применить твёрдотельное реле CPC1035N, то отпадает необходимость в питании устройства от 12 вольт. Достаточно будет 5-вольтового блока питания для питания всей схемы. Также отпадает необходимость в интегральном стабилизаторе напряжения DA1 (78L05) и конденсаторах С3, С4.

    Вот так твёрдотельное реле CPC1035N подключается к триггеру на К561ТМ2.

    Несмотря на свою миниатюрность, твёрдотельное реле CPC1035N может коммутировать переменное напряжение от 0 до 350 V, при токе нагрузки до 100 mA. Иногда этого достаточно, чтобы управлять маломощной нагрузкой.

    Можно применить и отечественные твёрдотельные реле, я, например, экспериментировал с К293КП17Р.

    Выдрал его с платы охранной сигнализации. В данной релюшке, кроме самого твёрдотельного реле, есть ещё и транзисторная оптопара. Её я не использовал - оставил выводы свободными. Вот схема подключения.

    Возможности К293КП17Р весьма неплохие. Может коммутировать постоянное напряжение отрицательной и положительной полярности в пределах -230...230 V при токе нагрузки до 100 mA. А вот с переменным напряжением работать не может. То есть постоянное напряжение к выводам 8 - 9 можно подводить как угодно, не заботясь о полярности. Но вот переменное напряжение подводить не стоит.

    Дальность работы.

    Чтобы приёмный модуль надёжно принимал сигналы от пульта-передатчика, к контакту ANT на плате нужно припаять антенну. Желательно, чтобы длина антенны была равна четверть длины волны передатчика (то бишь λ/4). Так как передатчик брелока работает на частоте в 315 МГц, то по формуле длина антенны составит ~24 см. Вот расчёт.

    Где f - частота (в Гц), следовательно 315 000 000 Гц (315 Мегагерц);

    Скорость света С - 300 000 000 метров в секунду (м/c);

    λ - длина волны в метрах (м).

    Чтобы узнать, на какой частоте работает пульт-передатчик, вскрываем его и ищем на печатной плате фильтр на ПАВ (Поверхностно-акустических волнах). На нём обычно указана частота. В моём случае это 315 МГц.

    При необходимости антенну можно и не припаивать, но дальность действия устройства сократится.

    В качестве антенны можно применить телескопическую антенну от какого-нибудь неисправного радиоприёмника, магнитолы. Будет очень даже круто .

    Дальность, при которой приёмник устойчиво принимает сигнал от брелока небольшое. Опытным путём я определил расстояние в 15 - 20 метров. С преградами это расстояние уменьшается, а вот при прямой видимости дальность будет в пределах 30 метров. Ожидать чего-то большего от такого простого устройства глупо, схемотехника его весьма проста.

    Шифрование или "привязка" пульта к приёмнику.

    Изначально, брелок и приёмный модуль незашифрованы. Иногда говорят, что не "привязаны".

    Если купить и использовать два комплекта радиомодулей, то приёмник будет срабатывать от разных брелоков. Аналогично будет и с приёмным модулем. Два приёмных модуля будут срабатывать от одного брелока. Чтобы этого не происходило, применяется фиксированная кодировка. Если приглядеться, то на плате брелока и на плате приёмника есть места, где можно напаять перемычки.

    Выводы от 1 до 8 у пары микросхем кодеров/декодеров (PT2262/PT2272 ) служат для установки кода. Если приглядется, то на плате пульта управления рядом с выводами 1 - 8 микросхемы есть лужёные полоски, а рядом с ними буквы H и L . Буква H - означает High ("высокий"), то есть высокий уровень.

    Если паяльником накинуть перемычку от вывода микросхемы к полоске с пометкой H , то мы тем самым подадим высокий уровень напряжения в 5V на микросхему.

    Буква L соответственно означает Low ("низкий"), то есть, накидывая перемычку c вывода микросхемы на полоску с буквой L, мы устанавливаем низкий уровень в 0 вольт на выводе микросхемы.

    На печатной плате не указан нейтральный уровень - N . Это когда вывод микросхемы как бы "висит" в воздухе и ни к чему не подключен.

    Таким образом, фиксированный код задаётся 3 уровнями (H, L, N). При использовании 8 выводов для установки кода получается 3 8 = 6561 возможных комбинаций! Если учесть, что четыре кнопки у пульта также участвуют в формировании кода, то возможных комбинаций становится ещё больше. В результате случайное срабатывание приёмника от чужого пульта с иной кодировкой становится маловероятным.

    На плате приёмника пометок в виде букв L и H нет, но тут нет ничего сложного, так как полоска L подключена к минусовому проводу на плате. Как правило, минусовой или общий (GND) провод выполняется в виде обширного полигона и занимает на печатной плате большую площадь.

    Полоска H подключается к цепям с напряжением в 5 вольт. Думаю понятно.

    Я установил перемычки следующим образом. Теперь мой приёмник от другого пульта уже не сработает, он узнает только "свой" брелок. Естественно, распайка должна быть одинаковой как у приёмника, так и у пульта-передатчика.

    Кстати, думаю, вы уже сообразили, что если потребуется управлять несколькими приёмниками от одного пульта, то просто распаиваем на них такую же комбинацию кодировки, как на пульте.

    Стоит отметить, что фиксированный код не сложно взломать, поэтому не рекомендую использовать данные приёмо-передающие модули в устройствах доступа.

    На этом уроке мы решим задачу по передаче радиосигнала между двумя контроллерами Ардуино с помощью популярного приемопередатчика с частотой 433МГц. На самом деле, устройство по передаче данных состоит из двух модулей: приемника и передатчика. Данные можно передавать только в одном направлении. Это важно понимать при использовании этих модулей. Например, можно сделать дистанционное управление любым электронным устройством, будь то мобильный робот или, например, телевизор. В этом случае данные будут передаваться от пульта управления к устройству. Другой вариант — передача сигналов с беспроводных датчиков на систему сбора данных. Здесь уже маршрут меняется, теперь передатчик стоит на стороне датчика, а приемник на стороне системы сбора. Модули могут иметь разные названия: MX-05V, XD-RF-5V, XY-FST, XY-MK-5V, и т.п., но все они имеют примерно одинаковый внешний вид и нумерацию контактов. Также, распространены две частоты радиомодулей: 433 МГц и 315 МГц.

    1. Подключение

    Передатчик имеет всего три вывода: Gnd, Vcc и Data.
    Подключаем их к первой плате Ардуино по схеме: Собираем оба устройства на макетной плате и приступаем к написанию программ.

    2. Программа для передатчика

    Для работы с радиомодулями воспользуемся библиотекой RCSwitch . Напишем программу, которая будет каждую секунду по-очереди отправлять два разных сообщения. #include RCSwitch mySwitch = RCSwitch(); void setup() { mySwitch.enableTransmit(2); } void loop() { mySwitch.send(B0100, 4); delay(1000); mySwitch.send(B1000, 4); delay(1000); } Разберем программу. Первое что мы сделали — объявили объект для работы с передатчиком и назвали его mySwitch. RCSwitch mySwitch = RCSwitch(); Затем, внутри стандартной функции setup включили передатчик и указали вывод, к которому он подключен: mySwitch.enableTransmit(2); Наконец, в основном цикле программы loop отправляем сначала одно сообщение, а затем и второе с помощью функции send : mySwitch.send(B1000, 4); Функция send имеет два аргумента. Первый — это отправляемое сообщение, которое будет отправляться в эфир в виде пачки импульсов. Второй аргумент — это размер отправляемой пачки. В нашей программе мы указали сообщения в формате двоичного числа. На это указывает английская буква «B» в начале кода B1000. В десятеричном представлении это число превратится в восьмерку. Так что мы могли вызвать функцию send так: mySwitch.send(8, 4); Также send умеет принимать двоичные строки: mySwitch.send("1000", 4);

    3. Программа для приемника

    Теперь напишем программу для приемника. Для демонстрации факта передачи мы будем зажигать светодиод, подключенный к выводу №3 на плате Ардуино. Если приемник поймал код B1000 — включим светодиод, а если B0100 — выключим. #include RCSwitch mySwitch = RCSwitch(); void setup() { pinMode(3, OUTPUT); mySwitch.enableReceive(0); } void loop() { if(mySwitch.available()){ int value = mySwitch.getReceivedValue(); if(value == B1000) digitalWrite(3, HIGH); else if(value == B0100) digitalWrite(3, LOW); mySwitch.resetAvailable(); } } Функция available возвращает истину, если передатчик принял хоть какие-то данные: mySwitch.available() Функция getReceivedValue извлекает из потока данных одну пачку и декодирует её в число. В программе мы присваиваем полученное число переменной value : int value = mySwitch.getReceivedValue();

    Задания

    Теперь можно попробовать потренироваться и сделать разные полезные устройства. Вот несколько идей.
    1. Пульт для светильника. На стороне приемника , включенный в цепь питания светильника (осторожно, 220 Вольт!). На стороне передатчика: . Написать программы для приемника и передатчика, которые по нажатию кнопки будут включать удаленное реле. При повторном нажатии кнопки реле будет выключаться.
    2. Уличный термометр с радиоканалом. На стороне передатчика разместить . Предусмотреть автономное питание от батареек. На стороне приемника: . Написать программы для приемника и передатчика, которые позволят выводить показания температуры с удаленного датчика на дисплее.

    Заключение

    Итак, теперь мы знаем простой и недорогой способ передавать данные на расстоянии. К сожалению, скорость передачи и дистанция в таких радиомодулях весьма ограничены, так что мы не сможем полноценно управлять, например квадрокоптером. Однако, сделать радиопульт для управления простым бытовым прибором: светильником, вентилятором или телевизором, нам под силу. На основе приемопередатчиков с частотой 433 МГц и 315 МГц работает большинство радиоканальных пультов управления. Имея Ардуино и приемник, мы можем декодировать сигналы управления и повторить их. Подробнее о том, как это сделать мы напишем в одном из следующих уроков!

    Принципиальная схема системы радиоуправления, построенной на основе телефона-трубки, рабочая частота - 433МГц. В конце 90-х были очень популярны телефоны-трубки, да и сейчас они повсюду продаются. Но, сотовая связь болееудобна и сейчас повсеместно вытесняет стационарную.

    Купленные когда-то телефонные аппараты становятся ненужными. Если так образовался ненужный, но исправный телефон-трубка с переключателем «тон/пульс», на его основе можно сделать систему дистанционного управления.

    Чтобы телефон-трубка стал генератором DTMF-кода нужно его переключить в положение «тон» и подать на него питание, достаточное для нормальной работы его схемы тонального набора. Затем, с него подать сигнал на вход передатчика.

    Принципиальная схема

    На рисунке 1 показана схема передатчика такой системы радиоуправления. Напряжение на телефон-трубку ТА подается от источника постоянного тока напряжением 9V через резистор R1, который является в данном случае нагрузкой схемы тонального набора ТА. Когда нажимаем кнопки на ТА на резисторе R1 присутствует переменная составляющая сигнала DTMF.

    С резистора R1 НЧ сигнал поступает на модулятор передатчика. Передатчик состоит из двух каскадов. На транзисторе VТ1 выполнен задающий генератор. Его частота стабилизирована резонатором на ПАВ на 433,92МГц. На этой частоте и работает передатчик.

    Рис. 1. Принципиальная схема передатчика на 433МГц к телефонной трубке-номеронаберателю.

    Усилитель мощности выполнен на транзисторе VТ2. Амплитудная модуляция осуществляется в этом каскаде, путем смешения сигнала ЗЧ с напряжением смещения, поступающим на базу транзистора. НЧ-сигнал DTMF кода с резистора R1 поступает в цепь создания напряжения на базе VТ2, состоящую из резисторов R7, R3 и R5.

    Конденсатор С3 совместно с резисторами образует фильтр, разделяющий РЧ и НЧ. Нагружен усилитель мощности на антенну через П-образный фильтр C7-L3-C8.

    Чтобы радиочастота с передатчика не проникала в схему телефонного аппарата питание на него подается через дроссель L4, заграждающий путь РЧ сигналу. Приемный тракт (рисунок 2) сделан по сверхрегенеративной схеме. На транзисторе VТ1 выполнен сверхрегенеративный детектор.

    УРЧ нет, сигнал от антенны поступает через катушку связи L1. Принятый и продетектированный сигнал выделяется на R9, входящем в состав делителя напряжения R6-R9, создающего среднюю точку на прямом входе ОУ А1.

    Основное усиление НЧ происходит в операционном усилителе А1. Его коэффициент усиления зависит от сопротивления R7 (при налаживании им можно корректировать усиление до оптимального). Затем через резистор R10, которым регулируется уровень продетектирован-ного сигнала, DTMF - код поступает на вход микросхемы А2 типа КР1008ВЖ18.

    Схема декодера DTMF-кода на микросхеме А2 почти не отличается от типовой, разве что, используется только три разряда выходного регистра. Полученный в результате декодирования трехразрядный двоичный код поступает на десятичный дешифратор на мультиплексоре К561КП2. И далее, - на выход. Выходы обозначены соответственно номерам, которыми подписаны кнопки.

    Рис. 2. Схема приемника радиоуправления с частотой 433МГц и с дешифратором на К1008ВЖ18.

    Чувствительность входа К1008ВЖ18 зависит от сопротивления R12 (вернее, от соотношения R12/R13).

    При приеме команды логическая единица возникает на соответствующем выходе.

    В отсутствие команды выходы находятся в высокоомном состоянии, кроме выхода, соответствующего последней полученной команде, - на нем будет логический ноль. Это необходимо учесть при выполнении схемы подлежащей управлению. В случае необходимости все выходы можно подтянуть к нулю постоянными резисторами.

    Детали

    Антенна представляет собой проволочную спицу длиной 160 мм. Катушки L1 и L2 передатчика (рис. 1) одинаковые, они имеют по 5 витков ПЭВ-2 0,31, бескаркасные, внутренним диаметром 3 мм, намотаны виток к витку. Катушка L3 - такая же, но намотана с шагом в 1 мм.

    Катушка L4 - готовый дроссель на 100 мкГн или больше.

    Катушки приемника (рис.2) L1 и L2 при монтаже расположены вплотную друг к другу, на общей оси, так как будто бы одна катушка является продолжением другой. L1 - 2,5 витка, L2 - 10 витков, ПЭВ 0,67, внутренний диаметр намотки 3 мм, каркаса нет. Катушка L3 - 30 витков провода ПЭВ 0,12, она намотана на постоянном резисторе МЛТ-0,5 сопротивлением не менее 1М.

    Шатров С. И. РК-2015-10.

    Литература: С. Петрусь. Радиоудлинитель ИК ПДУ спутникового тюнера, Р-6-200.

    Простое решение для вашей задачи!

    Есть в наличии

    Купить оптом

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

    Рабочая частота (мГц) 433
    Тип питания постоянный
    Количество входов (шт) 1
    Количество выходов (шт) 1
    Рекомендованная температура эксплуатации (°С) -15...+60
    Напряжение питания приемника (В) 5
    Напряжение питания передатчика (В) 12
    Вес, не более (г) 20
    Ток потребления приемника (мА) 1,5
    Ток потребления передатчика (мА) 10
    Входная чувствительность (мкВ) 1,5
    Дальность действия (м) 100
    Длина приемника (мм) 19
    Длина передатчика (мм) 30
    Выходная мощность передатчика (мВт) 10
    Входной уровень данных передатчика (В) 5
    Выходной уровень данных приемника (В) 0,7
    Ширина передатчика (мм) 15
    Высота передатчика (мм) 10
    Ширина приемника (мм) 19
    Высота приемника (мм) 10
    Вес 22

    Схемы

    Использование комплекта без применения микроконтроллеров.

    Комплект поставки

    • Плата передатчика - 1 шт.
    • Плата приемника - 1 шт.
    • Инструкция - 1 шт.

    Что потребуется для сборки

    • Для подключения понадобится: провод, паяльник, бокорезы.

    Условия эксплуатации

    • Температура - -15С до +50С шт.
    • Относительная влажность - 20-80% без образования конденсата шт.

    Меры предосторожности

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

    Вопросы и ответы

    • Возможно ли приобрести несколько приемников к одному передатчику? Если в помещении будут стоять несколько приемников, то будут ли все они срабатывать от одного передатчика?
      • 1. Можно. 2. Будет.
    • Могу ли я управлять приемником, одним из предлогаемых пультов 433 МГц
      • Можно, но что бы не было ложных срабатываний необходимо за приемником установить микроконтроллер и запрограммировать его на купленный дополнительный пульт.
    • Доброго времени суток!!!Возможно ли на данном устройстве,уменьшить дальность действия до 30 см?
      • До 30 см не пробовали. Но дальность регулируется с помощью уменьшения длинны антенны на приемнике и передатчике.
    • Добрый день, подскажите пожалуйста, данный комплект приёмника с передатчиком подлежит программированию, или это аналаговые приборы.
      • Это аналоговые приборы. Предназначены для совместной работы с микроконтроллером.
    Loading...Loading...