433 MHz радио схеми и описание. Домашен комплект за радиоуправление на базата на телефонна слушалка (433 MHz)

433/315 MHz, ще разберете в това кратко ревю. Тези радиомодули обикновено се продават по двойки - с един предавател и един приемник. Можете да закупите чифт от eBay за $4 или дори $2 за чифт, ако купите 10 наведнъж.

Повечето от информацията в интернет е откъслечна и не много ясна. Затова решихме да тестваме тези модули и да покажем как да постигнем надеждна USART -> USART комуникация с тях.

Разпределение на радиомодула

Като цяло всички тези радиомодули имат връзка от 3 основни контакта (плюс антена);

Предавател

  • Напрежение vcc (захранване +) 3V до 12V (работи при 5V)
  • GND (земя -)
  • Приемане на цифрови данни.

Приемник

  • Напрежение vcc (захранване +) 5V (някои могат да работят при 3,3V)
  • GND (земя -)
  • Извеждане на получените цифрови данни.

Трансфер на данни

Когато предавателят не получава данни на входа, осцилаторът на предавателя се изключва и консумира около няколко микроампера в режим на готовност. По време на тестването 0,2 µA излезе от 5 V захранване в изключено състояние. Когато предавателят получи въведени данни, той излъчва на носител от 433 или 315 MHz и при захранване от 5 V черпи около 12 mA.

Предавателят може да се захранва и от по-високо напрежение (например 12 V), което увеличава мощността на предавателя и съответно обхвата. Тестовете показаха с 5V захранване до 20m през няколко стени вътре в къщата.

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

Важно е да знаете, че приемникът прекарва известно време в регулиране на усилването, така че няма "изблици" на данни! Предаването трябва да започне с "въведение" преди основните данни и след това приемникът ще има време автоматично да регулира усилването, преди да получи важните данни.

Тестване на RF модули

При тестване на двата модула от +5V DC източник, както и с 173 мм вертикална антена. (за честота от 433.92 MHz това е "1/4 вълна"), реални 20 метра са получени през стени и типът на модулите не влияе много на тези тестове. Следователно можем да предположим, че тези резултати са типични за повечето блокове. Цифров източник на сигнал с прецизна честота и работен цикъл 50/50 беше използван за модулиране на данните от предавателя.

Моля, обърнете внимание, че всички тези модули, като правило, работят надеждно само до 1200 бода или максимум 2400 бода при серийно предаване, освен ако разбира се комуникационните условия са идеални (висока сила на сигнала).

Показаната по-горе е проста версия на блок за серийно предаване на информация към микроконтролер, който ще бъде получен от компютър. Единствената промяна е добавянето на 25V 10uF танталов кондензатор към захранващите щифтове (Vcc и GND) на двата модула.

Заключение

Много хора използват тези радиостанции във връзка с контролери Arduino и други подобни, тъй като това е най-лесният начин да получите безжична комуникация от микроконтролер към друг микроконтролер или от микроконтролер към компютър.

Обсъдете статията RF РАДИО МОДУЛИ НА 433 MHz

Този приемник е проектиран като "уикенд дизайн" и е предназначен за
наблюдение на честота 433 MHz, оценка на обстановката в ефир, прослушване на сигнали от AM/WFM/PWM предаватели, както и при работа с насочена антена за пеленгиране и търсене на радиофарове и радиомикрофони. Приемникът е направен по суперрегенераторна схема с транзистор, работещ в бариерен режим, който е многократно тестван в оборудване за радиоуправление. ULF използва широко използвания операционен усилвател LM358, един от неговите усилватели работи като предварителен усилвател с контрол на усилването, а вторият като ретранслатор за съгласуване със слушалки с нисък импеданс със съпротивление на бобината от 20-50 ома. За разлика от подобни приемници за радиоуправление, граничната честота на нискочестотния филтър след детектора е намалена до 3-4 kHz, за да се намали шумът при липса на сигнал, а капацитетът на кондензатора, който шунтира входа на антената, е увеличен, за да се намали влиянието на резонансно насочената антена "вълнов канал" върху настройката на веригата на детектора. Чувствителността на приемника е приблизително няколко микроволта, честотната лента е около 1 MHz. Сигналът от 423 MHz предавател с мощност 80 mW от разстояние >2 m се приема на ниво, сравнимо с нивото на шума (когато приемникът е настроен на 433 MHz). Честотата на приемане се определя от настройката на бобината L2 и може да се променя в широки граници.

Принципна схема на приемника
Жълт светодиод с изправено напрежение около 2V служи за стабилизиране на режима на суперрегенератор и също така служи като индикатор за включване. Диапазонът на захранващото напрежение е 3,7-0V, консумацията на ток при захранване от 9V при липса на сигнал е 4mA, при получаване на сигнал и пълен обем е 12mA. Настройката на приемника се свежда до настройка (чрез компресиране и разтягане на завоите на бобината L2) веригата на суперрегенератора до необходимата честота.


Снимка на сглобената приемна платка.



Приемник с 3-елементна антена "вълнов канал".

Първоначално беше планирано да се свърже насочена антена чрез лентови комуникационни линии върху двустранно фолио от фибростъкло, но поради нестабилната работа на приемника при докосване на елементите на антената трябваше да се направи връзка на активния вибратор към входа на приемника на 2-проводна линия (от плоски кабелни проводници) с дължина 160 мм.

Връзката се осъществява с помощта на винтове, тъй като монтажните размери на BNC конектора надвишават размера на платката на приемника.


Това е снимка на приемника с обикновена 17 см камшична антена.

Чертеж на печатна платка.
Монтажът се извършва върху 2-странен фолиен фибростъкло с дебелина 1 мм. Маркираните в бяло контакти са свързани към фолиото от долната страна на платката (земята) с къси проводници. внимание! Отпечатайте дъската за LUT в ОГЛЕДАЛО!

Забавен факт!Има други, но съвместими предаватели на 433 MHz, особено един и два. Освен това има алтернативен приемник. Но не е напълно съвместим, тъй като изходът Винагипроизвежда някакъв вид сигнал, независимо дали предаването действително се извършва или не.

За моите експерименти използвах и гаражно дистанционно, закупено от eBay с вътрешен DIP превключвател:

С малко късмет такива дистанционни все още могат да бъдат намерени както в eBay, така и в AliExpress с търсене като „отварящо устройство за гаражни врати 433 mhz с превключвател“. Но наскоро те бяха заменени от „програмируеми“ дистанционни управления, които могат да приемат и копират сигнала от други дистанционни управления. Стига се дори до точката, в която продавачите изпращат дистанционни управления без DIP превключвател, дори ако това е ясно показано на предоставената от тях снимка и е посочено в описанието на продукта. Не трябва да разчитате и на външната прилика на дистанционното с това, което използвах. Ако обаче решите да повторите стъпките от тази бележка, присъствието или отсъствието DIP превключвателняма да играе голяма роля.

Модулите са изключително лесни за използване във вашите проекти:

И приемникът, и предавателят имат VCC, GND и DATA пинове. В приемника щифтът DATA се повтаря два пъти. Модулите се захранват от 5 V. На снимката вляво е показана схема, в която светодиодът е свързан към DATA pin на приемника. Вдясно е схема с предавател, чийто щифт DATA е свързан към бутон и издърпващ резистор. Освен това и двете схеми използват стабилизатора LM7805. Не може да бъде по-просто.

Нека да запишем сигнала с помощта на Gqrx и да отворим получения файл в Inspectrum:

Тук виждаме същите къси и дълги сигнали, които осцилоскопът ни показа. Между другото, този метод на кодиране на сигнала се нарича On-Off Keying. Това е може би най-простият начин за предаване на информация с помощта на радиовълни, който можете да си представите.

Пускаме го и на Scope Plot виждаме:

Почти същия сигнал, който ни показа осцилоскопа!

Както можете да видите, евтините радиомодули на 433 MHz ни дават огромно поле за творчество. Те могат да се използват не само помежду си, но и с много други устройства, работещи на същата честота. Можете да ги използвате доста успешно в чисто аналогови устройства без микроконтролер, например с таймер 555. Можете да внедрите свои собствени протоколи с контролни суми, компресия, криптиране и т.н., без никакви ограничения, да речем, за дължина на пакета, като NRF24L01. И накрая, модулите са чудесни за изпращане на излъчвани съобщения.

Какви невероятни приложения за тези радио модули ви идват на ум?

Допълнение:Може също да се интересувате от публикации

Принципна схема на система за радиоуправление, изградена на базата на телефонна слушалка, работна честота - 433 MHz. Мобилните телефони бяха много популярни в края на 90-те години и все още се продават навсякъде. Но клетъчните комуникации са по-удобни и сега заместват стационарните навсякъде.

Веднъж закупените телефони стават ненужни. Ако това създава ненужна, но годна за обслужване слушалка с превключвател за тон/импулс, можете да направите система за дистанционно управление въз основа на нея.

За да може слушалката да се превърне в генератор на DTMF кодове, трябва да я превключите в положение “тон” и да й подадете достатъчно захранване за нормална работа на веригата й за тонално набиране. След това изпратете сигнал от него към входа на предавателя.

Схематична диаграма

Фигура 1 показва диаграма на предавателя на такава система за радиоуправление. Напрежението към телефона на слушалката се подава от източник 9V DC през резистор R1, който в случая е товарът на веригата за тонално набиране на телефона. Когато натискаме бутоните на TA, на резистор R1 има променлива компонента на DTMF сигнала.

От резистора R1 нискочестотният сигнал отива към модулатора на предавателя. Предавателят се състои от две степени. Транзисторът VT1 се използва като главен осцилатор. Честотата му се стабилизира от SAW резонатор на 433,92 MHz. Предавателят работи на тази честота.

Ориз. 1. Принципна схема на 433 MHz предавател за телефонна слушалка за набиране.

Усилвателят на мощността е направен с помощта на транзистор VT2. Амплитудната модулация се извършва в този етап чрез смесване на AF сигнала с преднапрежението, подадено към основата на транзистора. Нискочестотният сигнал на DTMF кода от резистор R1 влиза във веригата за генериране на напрежение на базата на VT2, състояща се от резистори R7, R3 и R5.

Кондензатор C3, заедно с резистори, образува филтър, който разделя RF и LF. Усилвателят на мощността се зарежда на антената през U-образен филтър C7-L3-C8.

За да се предотврати проникването на радиочестотата от предавателя в телефонната верига, към него се подава захранване през индуктор L4, който блокира пътя на RF сигнала. Приемащият път (Фигура 2) е направен по суперрегенеративна схема. Супер регенеративен детектор е направен на транзистор VT1.

Няма контрол на RF честотата, сигналът от антената идва през комуникационната бобина L1. Полученият и открит сигнал се разпределя към R9, който е част от делителя на напрежението R6-R9, който създава средна точка на директния вход на операционния усилвател A1.

Основното LF усилване се осъществява в операционния усилвател A1. Усилването му зависи от съпротивлението R7 (когато се регулира, може да се използва за регулиране на усилването до оптималното). След това чрез резистор R10, който регулира нивото на открития сигнал, DTMF кодът се изпраща към входа на микросхемата A2 от тип KR1008VZh18.

Веригата на декодера на DTMF код на чипа A2 почти не се различава от стандартната, с изключение на това, че се използват само три бита от изходния регистър. Трибитовият двоичен код, получен в резултат на декодиране, се подава към десетичен декодер на мултиплексора K561KP2. И тогава - на излизане. Изходите са обозначени според номерата, с които са обозначени бутоните.

Ориз. 2. Електрическа схема на приемник за радиоуправление с честота 433 MHz и с декодер на базата на K1008VZh18.

Чувствителността на входа K1008VZh18 зависи от съпротивлението R12 (или по-скоро от отношението R12/R13).

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

При липса на команда изходите са във високоомно състояние, с изключение на изхода, съответстващ на последната получена команда - той ще бъде логическа нула. Това трябва да се има предвид при изпълнение на схемата, която ще се контролира. Ако е необходимо, всички изходи могат да бъдат изтеглени до нула с помощта на постоянни резистори.

Подробности

Антената е телена спица с дължина 160 мм. Предавателните бобини L1 и L2 (фиг. 1) са еднакви, имат 5 навивки от PEV-2 0,31, без рамка, с вътрешен диаметър 3 mm, навита витка на витка. Намотката L3 е същата, но навита на стъпки от 1 mm.

Бобината L4 е готов индуктор от 100 µH или повече.

Когато са монтирани, приемните намотки (фиг. 2) L1 и L2 са разположени близо една до друга, на обща ос, сякаш едната намотка е продължение на другата. L1 - 2,5 оборота, L2 - 10 оборота, PEV 0,67, вътрешен диаметър на намотката 3 мм, без рамка. Намотка L3 - 30 оборота на проводник PEV 0.12, навита е на постоянен резистор MLT-0.5 със съпротивление най-малко 1M.

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

Литература: С. Петрус. Радио удължител за инфрачервен сателитен тунер за дистанционно управление, R-6-200.

  • Лесен за свързване. Въпросните модули, за разлика от nRF24L01+, се захранват с напрежение 5 V.
  • Наличност. Радиомодулите се произвеждат от много производители, в различни дизайни и са взаимозаменяеми.
  • недостатъци:

    • На честота от 433.920 MHz работят много други устройства (радио полилеи, радио гнезда, радио ключодържатели, радиомодели и др.), Които могат да „заглушат“ предаването на данни между радио модулите.
    • Липса на обратна връзка. Модулите са разделени на приемник и предавател. По този начин, за разлика от модула nRF24L01+, приемникът не може да изпрати сигнал за потвърждение към предавателя.
    • Ниска скорост на трансфер на данни, до 5 kbit/sec.
    • Приемникът MX-RM-5V е критичен дори за малки вълни на захранващата шина. Ако Arduino контролира устройства, които въвеждат дори малки, но постоянни вълни в захранващата шина (серво, LED индикатори, ШИМ и т.н.), тогава приемникът разглежда тези вълни като сигнал и не реагира на радиовълни от предавателя. Ефектът от пулсациите върху приемника може да бъде намален по един от следните начини:
      • Използвайте външен източник за захранване на Arduino, а не USB шината. Тъй като изходното напрежение на много външни захранвания се контролира или изглажда. За разлика от USB шината, където напрежението може значително да „падне“.
      • Инсталирайте изглаждащ кондензатор на захранващата шина на приемника.
      • Използвайте отделно стабилизирано захранване за приемника.
      • Използвайте отделно захранване за устройства, които въвеждат пулсации в захранващата шина.

    Ще ни трябва:

    • Радиомодули FS1000A и MX-RM-5V х 1 комплект.
    • Trema LED (червен, оранжев, зелен, син или бял) x 1бр.
    • Комплект проводници жена-жена за свързване на радио модули х 1 комплект.

    За да реализираме проекта, трябва да инсталираме библиотеките:

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

    Можете да разберете как да инсталирате библиотеки на Wiki страницата - Инсталиране на библиотеки в Arduino IDE.

    Антена:

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

    Дължината на една радиовълна се изчислява чрез разделяне на скоростта на светлината (299"792"458 m/s) на честота (в нашия случай 433"920"000 Hz).

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

    Така дължината на антените за радиомодули при 433,920 MHz може да бъде: 691 мм(1л), 345 мм(L/2), или 173 мм(L/4). Антените са запоени към контактните площадки, както е показано на схемата за свързване.

    Видео:

    Схема на свързване:

    Приемник:

    Когато се стартира (в кода за настройка), скицата конфигурира работата на радиоприемника, като показва същите параметри като предавателя, а също така инициира работа с LED индикатора. След което непрекъснато (в кода на цикъла) проверява дали в буфера има данни, получени от радиоприемника. Ако има данни, те се четат в масива от данни, след което стойността на елемент 0 (отчитания на плъзгача Trema) се показва на LED индикатора, а стойността на елемент 1 (отчитания на потенциометъра Trema) се преобразува и използва за настройка на светодиода яркост.

    Програмен код:

    Предавател:
    #включи // Свързване на библиотеката за работа с предавателя FS1000A iarduino_RF433_Transmitter radio(12); // Създаване на радио обект за работа с библиотеката iarduino_RF433, посочващ пин номера, към който е свързан предавателят int data; // Създаване на масив за предаване на данни void setup())( radio.begin(); // Иницииране на работата на предавателя FS1000A (можете да посочите скорост от NUMBER бита/сек като параметър, тогава нямате за извикване на функцията setDataRate) radio.setDataRate (i433_1KBPS); // Посочете скоростта на трансфер на данни (i433_5kbps, i433_4kbps, i433_3kbps, i433_2kbps, i433_1kbps, i433_500bps, i433_100bps), i433_1kbps - 1kbit /второ Radio.openwritingpipe (5); // Отворете 5 канал за пренос на данни (предавателят може да прехвърля данни само по един от канали: 0...7) ) // Ако отново извикате функцията openWritingPipe, като посочите различен номер на канал, предавателят ще започне да предава данни през новото указана тръба void loop())( data = analogRead(A1); // чете показанията на плъзгача Trema от пин A1 и ги записва в 0 елемент от масива данни data = analogRead(A2); // чете показанията на Trema потенциометър от пин A2 и ги запишете в 1 елемент от масива с данни radio.write(&data, sizeof(data)); // изпращане на данни от масива с данни, показващи колко байта от масива искаме да изпратим delay(10); // пауза между пакетите)
    Приемник:
    #включи // Свързване на библиотеката за работа с приемника MX-RM-5V #include // Свързване на библиотеката за работа с четирицифрен LED индикатор iarduino_RF433_Receiver radio(2); // Създаване на радио обект за работа с библиотеката iarduino_RF433, указващ номера на щифта, към който е свързан приемникът (може да бъде свързан само с щифтове, които използват външни прекъсвания) iarduino_4LED dispLED(6,7); // Създаване на обект dispLED за работа с функциите на библиотеката iarduino_4LED, указващ щифтовете на дисплея (CLK, DIO) int data; // Създаване на масив за получаване на данни const uint8_t pinLED=11; // Създаване на константа, указваща изхода на PWM, към който е свързан светодиодът 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 - 1kbit/sec радио 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)); // Прочетете данни в масива с данни и посочете колко байта да се четат dispLED.print(data); // Показване на показанията на плъзгача Trema на индикатора analogWrite(pinLED, map(data,0,1023,0,255)); // Задаване на яркостта на светодиода в съответствие с ъгъла на въртене на потенциометъра Trema) / / Ако извикаме наличната функция с параметър под формата на препратка към променлива от тип uint8_t, тогава ще получим номера на тръбата, през която дойдоха данни (вижте урок 26.5)
    Зареждане...Зареждане...