Arduino 433 радио модуль

Публикация 31.12.2015

Приемник XD-RF-5V и передатчик FS1000A/XD-FST для радио частоты 433 МГц используется для передачи данных между двумя устройствами. Очень часто применяются для связи нескольких Arduino устройств.

Радио передатчик XD-RF-5V 433Mhz

Характеристики XD-RF-5V

Рабочее напряжение: 3V ~ 12V
Рабочий ток: 20 мА ~ 28mA
Резервное течение: 0mA
Рабочая частота: 433MHz
Расстояние передатчика: >500 м (чувствительность может быть выше-103dBm если в широком поле)
Выходная мощность: 16dBm (40 мВт)
Скорость Передатчик: Режим модуляции: ООК (AM)
Рабочая температура: -10 ° C ~ +70 ° C
Размер: 19 х 19 х 8 мм

Для подключения имеет выводы PIN1 DATA, PIN2 VCC, PIN3 GND. Встроенной антенны нет, но есть контакт для ее подключения. Зачастую для увеличения дальности передачи изготоваливают проволочные антенны.Передатчик применяется в устройствах умного дома, автоматических системах сбора данных. Главным преимуществом является неприхотливость, стабильность в работе и низкое энергопотребление. Из минусов стоит отметить его "аналоговость". Нужно усложнять программный код для кодирования потока данных, но это же и является преимуществом т.к. нет никаких ограничений на протокол связи.

Радио передатчик XD-RF-5V 433Mhz

Радио приемник FS1000A/XD-FST 433Mhz

Характеристики FS1000A/XD-FST

Рабочее напряжение: DC 5V
Рабочий ток: 4 мА
Режим модуляции: ООК (AM)
Рабочая температура: -10 ° C ~ +70 ° C
Получать чувствительность:-110dB
Рабочая частота: 433MHz
Размер: 30 х 14 х 7 мм

Приемник работает на основе колебательного контура с усилителем. Подключается с помощью выводов PIN1 VCC, PIN2/3 DATA, PIN5 GND. Выход радио модуля логический по уровню, но сигнал принимает аналоговый. По тому задача декодирования послания лежит на плечах устройства (обычно Arduino) которое принимает сигнал.

Характеристики FS1000A/XD-FST

Схема подключения радио модулей 433 Mgz к Arduino представлена ниже. Выходы выходы приемника и передатчика подключаются к Digital портам Arduino, которые способны обрабатывать модулированный сигнал.

Схема подключения радио модулей 433 Mgz к Arduino

Для существенного увеличения дальности приема можно к приемо-передающим устройствам подпаять антенну. Самый простой вариант - кусок провода длиной 17 см с сопротивлением 50 Ом. Такая длина будет резанировать на частоте 433 Mgz т.к. ее длина равна 1/4 волны.

Для кодирования.декодирования передаваемого сигнала на Arduino удобно применять библиотеку VirtualWire.h
Приведу пару примеров использования библиотеки для передачи цифровых данных.

Передатчик:

#include "VirtualWire.h"

const int led_pin = 13; // Пин светодиода
const int transmit_pin = 12; // Пин подключения передатчика

void setup()
{
	vw_set_tx_pin(transmit_pin);
	vw_setup(2000); // Скорость передачи (Бит в секунду)
	pinMode(led_pin, OUTPUT);
}

void loop()
{
	const char *msg = "Hello, Arduinomania"; // Передаваемое сообщение
	digitalWrite(led_pin, HIGH); // Зажигаем светодиод в начале передачи
	vw_send((uint8_t *)msg, strlen(msg)); // Отправка сообщения
	vw_wait_tx(); // Ожидаем окончания отправки сообщения
	digitalWrite(led_pin, LOW); // Гасим светодиод в конце передачи
	delay(1000); // Пауза 1 секунда
}

Приемник:

#include "VirtualWire.h"

byte message[VW_MAX_MESSAGE_LEN]; // Буфер для хранения принимаемых данных
byte messageLength = VW_MAX_MESSAGE_LEN; // Размер сообщения

const int led_pin = 13; // Пин светодиода
const int receiver_pin = 11; // Пин подключения приемника

void setup()
{
	Serial.begin(9600); // Скорость передачиданных
	Serial.println("Read 433mHz begin");
	vw_set_rx_pin(receiver_pin); // Пин подключения приемника

	vw_setup(2000); // Скорость передачи данных (бит в секунду)
	vw_rx_start(); // Активация применика
}
void loop()
{
	if (vw_get_message(message, &messageLength)) // Если есть данные..
	{
		digitalWrite(led_pin, HIGH); // Зажигаем светодиод в начале приема пакета
		for (int i = 0; i < messageLength; i++)
		{
			Serial.write(message[i]); // выводим их в одной строке
		}
		Serial.println();
		digitalWrite(led_pin, LOW); // Гасим светодиод в конце
	}
}
Файлы для скачивания:
* комментарии публикуются после модерации
Нет комментариев