- PVSM.RU - https://www.pvsm.ru -
Привет.
Тема приема и анализа сверхдлинных волн весьма интересна, но на Хабре она упоминается весьма редко. Попробуем восполнить пробел, и посмотрим как это работает.
Передатчик VLF в Японии (с) en.wikipedia.org/wiki/Very_low_frequency [1]
Сверхнизкими считаются частоты радиодиапазона частотой менее 30 КГц. Интерес к ним со стороны военных появился еще давно, когда выяснилось что радиоволны столь большой длины (длина волны до 100 км!) могут проникать сквозь воду, и их можно использовать для связи с подводными лодками. Кто придумал такой способ, сказать сложно, но уже в 1943 г в Германии был запущен передатчик Goliath [2], передающий данные подводным лодкам на частотах 15-25 КГц. После войны передатчик был разобран, перевезен в СССР и запущен заново, причем согласно Википедии, он работает и до сих пор.
Эффективность любой антенны зависит от длины волны, и для сверхдлинных волн КПД антенны также является сверхнизким — при мощности в мегаватт, излучаемая мощность (EIRP) составляет всего лишь 30-50 КВт. Однако, возможность скрытной передачи сигналов подводным лодкам является весьма привлекательной, так что это никого не остановило — такие системы, разумеется, работают и сейчас. Передать сигналы диапазона VLF очень сложно, однако принять их может любой желающий. Для этого даже не нужен радиоприемник, частоты 20-30 КГц вполне доступны для обычной звуковой карты ПК. Придется взять кабель подлиннее, подключить его ко входу звуковой карты и пойти с ноутбуком куда-нибудь в лес или в поле, где нет индустриальных помех. Хотя современные технологии предоставляют куда более удобный способ приема — онлайн с помощью SDR. Для примера можно посмотреть панораму приемника голландского университета Twente [3]:
Все вертикальные линии — это действующие на данный момент системы. Результат удивительный, спектр СДВ «забит» ничуть не меньше, чем вечерний эфир на вещательном FM-диапазоне. Посмотрим, что мы здесь можем увидеть.
На частотах 12-15 КГц мы видим метки, относящиеся к российской радио-навигационной системе Альфа (полное название РСДН-20 [4] — Радиотехническая Система Дальней Навигации). Согласно Википедии, передатчики «Альфы» работают на частотах 11.9, 12.6 и 14.8 КГц, система обеспечивает точность определения положения до 1.5 км. Впрочем, на панораме никаких импульсов не видно, может у них выходной приемник в Twente недостаточно чувствителен для этого сигнала, или же радиосигналы передаются по какому-то расписанию. Следующим на частоте 16.4 КГц работает передатчик Noviken [5], расположенный в Норвегии. Перечислять остальные смысла нет, список можно посмотреть в Википедии [6].
Как принимаются сигналы сверхнизких частот, вопрос не менее интересный. Но по понятным причинам, в открытых источниках подробной информации об аппаратуре связи с ПЛ практически нет. Общую идею можно понять из картинки:
Загоризонтное распространение сигналов © IEEE Communications Magazine 1981
Как можно видеть, в качестве антенны используется длинный провод, который либо просто тянется за лодкой, либо удерживается на определенной глубине специальным буем. Сами антенны, очевидно, секретными не являются, pdf с описанием довольно легко находится гуглом:
Длина кабеля 700 м впечатляет, но к счастью для нас, «на суше» все гораздо проще, и столь гигантские антенны не требуются, принять сигналы VLF можно даже на портативную антенну MiniWhip, расположенную на балконе.
Посмотрим теперь структуру передаваемого радиосигнала. Для примера я взял наугад сигнал DHO38 [7], передающийся на частоте 23.4 КГц из Германии. Для записи мы выбираем частоту и модуляцию как показано на рисунке, и нажимаем кнопку Audio Recording.
Полученный файл можно открыть в бесплатной программе Signals Analyser [8]. Из картинки очевидно, что в сигнале используется частотная модуляция (FSK):
Применим FSK-демодулятор, получаем последовательность бит:
Кстати, скорость передачи составляет 200 бит в секунду — чтобы посмотреть youtube, определенно не хватит, но для подводной лодки на глубине 30м даже так и то неплохо. И как нетрудно догадаться, VLF-связь односторонняя — ответить экипаж лодки из-под воды не может.
Рассмотрим сигнал более подробно. Сохраним полученный после FSK-декодера файл в WAV. Разумеется, получить содержимое передачи мы не сможем — сигнал скорее всего зашифрован. Но можно посмотреть структуру битового потока, «развернув» его в 2D-изображение с помощью Python. Если в данных присутствуют какие-либо повторяющиеся фрагменты (например, поток разбит на пакеты определенной длины), то на изображении это будет хорошо видно.
from scipy.io import wavfile
import matplotlib.pyplot as plt
from PIL import Image
_, data = wavfile.read('websdr_recording_2020-11-06T15_00_00Z_23.4kHz_.wav')
print("WAV: %d samples" % data.shape[0])
for iw in range(400, 1024, 2):
print("Saving: {} of {}...".format(iw, 1024))
w, h = iw, 800
image = Image.new('RGB', (w, h))
px, py = 0, 0
for p in range(data.shape[0]):
image.putpixel((px, py), (0, data[p]//16, 0))
px += 1
if px >= w:
px = 0
py += 1
if py >= h:
break
image.save("image-%d.png" % iw)
Мы не знаем параметры передачи, так что просто переберем все варианты вывода. Результатом будет набор файлов, который выглядит примерно так:
Нетрудно видеть, что при определенной ширине картинки легко угадываются некоторые закономерности. Битовый поток в увеличенном виде:
Желающие могут поэкспериментировать с шириной картинки самостоятельно, принцип, надеюсь, понятен. Наклон линий обусловлен тем, что частоты передатчика и приемника не совпадают. Разумеется, чтобы получить полноценный битовый поток, 20 строчек кода явно недостаточно, а написание цифрового демодулятора с PLL явно выходит за рамки этой статьи. Да и по большому счету, смысла в этом не так уж много — сигнал все равно зашифрован, и даже имея битовые данные, больше мы ничего не сделаем. Хотя желающие могут попробовать поискать закономерности самостоятельно.
Как можно видеть, изучение подобных систем связи представляет не только технический, но и исторический интерес. А на сверхнизких частотах еще немало интересных сигналов, как искусственного (передатчик Зевс [9] на частоте 82 Гц), так и природного происхождения, например резонансы Шумана [10] на частотах 10-20 Герц.
Как бонус для тех, кто дочитал досюда: желающие увидеть «вживую», как работает передача и прием на таких частотах, могут попробовать принять немецкую станцию Pinneberg [11], передающую метеосводки в открытом виде на частоте 147.3 КГц. Декодировать сигнал можно с помощью разных программ, например MultiPSK. Можно рассмотреть и декодирование с помощью Python, если есть желающие, пишите в комментариях.
Как обычно, всем удачных экспериментов.
Автор: DmitrySpb79
Источник [12]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/358614
Ссылки в тексте:
[1] en.wikipedia.org/wiki/Very_low_frequency: https://en.wikipedia.org/wiki/Very_low_frequency
[2] Goliath: https://en.wikipedia.org/wiki/Goliath_transmitter
[3] Twente: http://websdr.ewi.utwente.nl:8901/
[4] РСДН-20: https://en.wikipedia.org/wiki/Alpha_(navigation)
[5] Noviken: https://en.wikipedia.org/wiki/Noviken_VLF_Transmitter
[6] Википедии: https://en.wikipedia.org/wiki/List_of_VLF-transmitters
[7] DHO38: https://en.wikipedia.org/wiki/VLF_transmitter_DHO38
[8] Signals Analyser: http://signals.radioscanner.ru/info/item21/
[9] Зевс: https://en.wikipedia.org/wiki/ZEVS_(transmitter)
[10] резонансы Шумана: https://en.wikipedia.org/wiki/Schumann_resonances
[11] Pinneberg: https://de.wikipedia.org/wiki/Sendeanlage_Pinneberg
[12] Источник: https://habr.com/ru/post/526824/?utm_source=habrahabr&utm_medium=rss&utm_campaign=526824
Нажмите здесь для печати.