Как сделать радиоканал между двумя компьютерами
Давайте соединим два компьютера с помощью дешёвых радиопередатчика и радиоприёмника и передадим по радиоканалу между компьютерами некоторые данные, например, файл. Мы будем использовать передатчик FS1000A и приёмник XY-MK-5V. Их цена в интернет-магазине, если заказывать в Китае – меньше 1 доллара, что, согласитесь, делает их весьма и весьма привлекательными для домашних экспериментов.
Нам понадобится:
- компьютер (или два компьютера),
- радиопередатчик FS1000A и радиоприёмник XY-MK-5V (или аналогичные), приобретаются на этом сайте,
- два преобразователя USB-UART (или COM-порт компьютера), приобретаются здесь,
- соединительные провода (рекомендую вот такой набор, включены все виды соединителей, хватит надолго).
1Передатчик FS1000A и приёмник XY-MK-5V
Краткие технические характеристики передатчика FS1000A:
- напряжение питания – 3,5…12 Вольт;
- рабочая частота – 433,92 МГц;
- расстояние передачи – от 20 до 200 метров (в зависимости от напряжения питания и окружающей среды);
- мощность передачи – 10 мВт.
Краткие технические характеристики радиоприёмника XY-MK-5V:
- напряжение питания – 5 Вольт;
- потребляемый ток – 4 мА;
- частота сигнала – 433,92 МГц.
«Из коробки» модули идут без антенн, так что их придётся сделать и припаять самостоятельно.
Сделать антенны можно из медного провода длиной 17,3 см. Эта длина соответствует четверти длины волны передаваемого сигнала и максимальной эффективности антенны. Паять их следует к специальным контактным площадкам, которые на модулях обозначены маркировкой ANT.
2Схема радиоканаламежду компьютерами
Теперь объясню суть идеи. Мы будем передавать цифровой последовательный сигнал через радиоканал от одного компьютера к другому. Данные будем заводить на радиопередатчик с помощью обычного USB-UART преобразователя (или COM-порта компьютера). Принимать данные с радиоприёмника также будем с помощью USB-UART преобразователя.
Если нет второго компьютера – не беда, можно использовать один. Передатчик и приёмник будут у нас на разных последовательных портах.
Соберём схему. Вот, например, как это выглядит у меня:
3Демонстрация работы радиоканала между компьютерами
Теперь на компьютере, к которому подключён модуль приёмника, подключимся с помощью монитора последовательного порта к порту с USB-UART преобразователем. Вы увидите постоянный шум, принятый из эфира. Дело в том, что на частоте 933,92 МГц передаёт большинство бытовых приборов, которые используют радиоканал. Это и системы охраны, и погодные датчики, и автоматические ворота и т.д. Приёмник пытается усилить сигнал, и поэтому усиливает только шум. Когда начнёт передачу наш передатчик, он будет превышать окружающий шум, и приёмник сможет его принимать. Конечно, имеет значение расстояние между приёмником и передатчиком, а также какие предметы или стены находятся между ними. Это будут ослабляющие сигнал факторы, и они могут привести к ошибкам в данных при приёме.
На компьютере, к которому подключён передатчик, с помощью любой терминальной программы, давайте передадим в порт нашего преобразователя UART любой файл. В мониторе порта приёмника вид принимаемых данных изменился. Но достаточно трудно понять, где кончается шум и начинаются полезные данные.
Чтобы выделить из шума данные одно из простых решений – записать в начало и в конец файла некоторое количество нулей. На иллюстрации видно, что отделить шум от данных в этом случае не составляет труда.
Мы рассмотрели один из самых простых способов выделения данных из шума. Для более надёжного приёма можно разработать некоторый пакетный протокол и передавать данные частями, с проверкой целостности каждого пакета, возможно даже с корректирующими данными типа кода Рида-Соломона и т.п. Но это уже выходит за рамки статьи.