Радиосвязь
Это:
https://varjag2007su.livejournal.com/5428902.html
Уф…
Эти штуки, конечно, для поиграться:
https://amperkot.ru/spb/catalog/radiomoduli_433mhz_peredatchik_mxfs03v_i_priemnik_mx05v-23869814.html
…потому что при такой частоте дальность до 200 метров.
Тут пример программного кода:
http://imelnikov.ru/radio/arduino-rc/
Вначале там подключается вот эта библиотека:
#include <VirtualWire.h>
… которая, судя по всему, и занимается отправкой и приёмом информации.
Цифровой сигнал это примитивный аналоговый (насколько понимаю). Этакая «морзянка» состоящая из нуля (ничего не передаётся) и единицы (некоторое время на этой частоте идут волны). Сколько времени передаётся ноль или единица определяется вот этим параметром:
vw_setup(1000); // бит в секунду
Бит в секунду, что при желании можно перевести в длительность сигнала а, зная частоту, в количество волн, которые должны подтвердить, что был передан (или получен) именно ноль или единица.
Все библиотеки там написаны на Си. При желании можно посмотреть текст и узнать, как сигнал (т.е напряжение на неком порте в течение кого-то времени) преобразуется в нули с единицами а значит и в символы цифровой передачи.
Поняв это, можно сделать свой приёмник и передатчик, передающий информацию на любой частоте, в т.ч и на средних волнах, позволяющих передавать эту информацию намного дальше. Ведь от принимающего или передающего устройства нужно то же самое – некоторое время передавать или не передавать что-то в эфир.
Для радиолюбителей есть специальный диапазон. Средневолновый диапазон, если интересно, сейчас почти свободен (нет там радиостанций)..
Не возьмусь сказать, почему его перестали использовать. Насколько понимаю, дело в качестве связи, в её нестабильности. Для повышения качества (уверенного определения ноль передан или единица) надо понижать скорость передачи данных (т.е увеличивать количество волн, которые должны принести информацию, чтобы точно её идентифицировать). А медленно работающая связь далеко не всегда приемлема. Подозреваю, что она годится для SMS, т.е коротких текстов. Этой проблемы, так понимаю, нет при передаче аналогового звука. Вопрос качества возникает только при передаче цифровой информации, при которой нет уха, способного отличить «а» от «о» и исправить ошибку, если она вдруг возникла.
Что касается скорости передачи информации, то есть какая-то формула, позволяющая определить необходимую скорость по частоте. При скорости передачи, рассчитанной по этой формуле можно надеяться на то что передача информации будет достаточно стабильна. Это вызвано, скорее всего, спецификой радиообщения. Точнее тем, что нет обычно никакого общения. Есть передатчик и множество приёмников, которые должны слышать передаваемое. Скорость и выбирается так, чтобы все слышали.
При передаче сетевых пакетов есть другой метод. Связь в данном случае это «общение» двух устройств. Про пакетную передачу данных было тут:
http://akostina76.ucoz.ru/blog/2016-10-02-3481
Тут нет ничего широковещательного. Все «письма» - «пакеты» передаются от кого-то конкретному кому-то не менее конкретному. Прочая информация игнорируется уже на уровне IP-пакета.
TCP – надстройка над IP пакетом позволяет контролировать качество связи. Т.е если какой-то пакет пришёл с ошибкой принимающая сторона запрашивает его второй раз. Если ошибок при передаче информации слишком много можно снизить скорость, что обычно автоматически и делается. Поскольку в данном случае происходит общение двух устройств их можно переводить в тот или иной режим (скорость) по обстановке а не выбирать что-то медленное и надежное или быстрое но рискованное раз и навсегда. Скорее всего, этот режим при средних волн будет определяться расстоянием между общающимися.
Схема передатчика, видимо, такая:
https://gemischtwaren-haendler.de/shopdateien/5299_1.pdf
.. Стандартный колебательный контур тоже передаёт, но очень недалеко.
|