При приеме сверхдлинноволновых сигналов часто возникает проблема в распознавании наличия слабого сигнала, которого почти не видно на спектрограмме-"водопаде", которая строится популярной у любителей сверхдлинных волн программой Spectrum Lab.
Я решил использовать тот факт, что спектр помех случаен, что позволит, накапливая результаты наблюдений, распознать наличие слабого полезного сигнала. При этом я предполагаю, что анализируемый радиосигнал подается на вход звуковой карты компьютера с выхода предварительного усилителя.
Скрипт-анализатор спектра
Код скрипта vlf.m для математического пакета MATLAB  я разместил в репозитарии на GitHub:
https://github.com/Dreamy16101976/VLF_MATLAB
Частота оцифровки (в герцах) задается жестко заданным в скрипте параметром Fs (желательно, чтобы звуковая карта позволяла использовать частоту не ниже 96 кГц).
При запуске скрипта запрашиваются:
- нижняя частота среза ФВЧ (по умолчанию 6000 Гц)

 
- интервал для анализа спектра dt (по умолчанию 20 мс)

 
- число анализируемых интервалов N (по умолчанию 5000)

 
- нижняя частота интервала для построения спектрограммы
 
- верхняя частота интервала для построения спектрограммы
 
Скрипт непрерывно производит анализ спектра и записывает результаты в текстовые и png-файлы (с именем вида YYYYMMDDHHMMSS.xxx) с картинками спектра.
Для прерывания работы скрипта необходимо нажать сочетание клавиш CTRL-C в командном окне MATLAB или окне консоли, в котором выполняется скомпилированное приложение.
Компиляция скрипта
Скрипт можно компилировать в исполняемый exe-файл посредством команды:
mcc -mv -o vlf vlf.m
Для распространения полученного приложения необходимы:
- исполнимый файл vlf.exe
 
- архив vlf.ctf
 
- инсталлятор MCRInstaller.exe (MATLAB Component Runtime 7.7 installer for Windows)
 
Результаты работы скрипта
Вот такие результаты я получил при запуске скрипта с параметрами dt=500 и N=1800:
(антенна ориентирована в направлении "северо-восток - юго-запад")

А вот соответствующая спектрограмма-"водопад":

1 - 18,3 кГц
2 - 18,9 кГц
3 - 19,6 кГц
4 - помеха
5 - 20,3 кГц
6 - 20,9 кГц
7 - 22,1 кГц
8 - 23,4 кГц
9 - 24,0 кГц
Скрипт для мониторинга
Для облегчения мониторинга сигнала выбранной СДВ-радиостанции я разработал скрипт vlf_mon.m (на основе скрипта vlf.m) для MATLAB и разместил его в репозитарии на GitHub:
https://github.com/Dreamy16101976/vlfmon
Скрипт запрашивает размер интервала (dt) для анализа спектра, число интервалов (N) и наблюдаемую частоту (f):

Он непрерывно выполняет измерения:

Результаты записываются в текстовый файл:
f = 22100 Hz
dt = 500 msec
N = 1800
Level:    80u
Time: 16.12.2017 21:25
Level:    86u
Time: 16.12.2017 21:43
Level:    93u
Time: 16.12.2017 22:01
..........................
Компиляция скрипта
Скрипт можно компилировать в исполняемый exe-файл посредством команды:
mcc -mv -o vlf_mon vlf_mon.m
Для распространения полученного приложения необходимы:
- исполнимый файл vlf_mon.exe
 
- архив vlf_mon.ctf
 
- инсталлятор MCRInstaller.exe (MATLAB Component Runtime 7.7 installer for Windows)
 
Исследование прохождения сверхдлинных радиоволн
Для изучения условий распространения сверхдлинных радиоволн я выбрал сигнал частотой 22,1 кГц. Он излучается британской станцией (позывной GQD), расположенной в Skelton (N 54° 43' 54.48" W 002° 52' 58.92") на большом расстоянии от Гомеля (места приема сигнала).
Сначала я использовал мой скрипт-анализатор спектра и вручную измерял соответствующие уровни сигнала на спектрограммах.
Я провел 9 декабря 2017 года замеры уровня сигнала станции GQD с интервалом 1-2 часа, начиная примерно с 16 часов местного времени
(закат в день измерения наступил примерно через час после начала наблюдений):
| t, ч | 
0 | 
1 | 
2 | 
3 | 
4 | 
5 | 
7 | 
9 | 
| уровень, x10-4 | 
0,34 | 
0,31 | 
0,31 | 
0,56 | 
0,72 | 
0,81 | 
0,95 | 
1,04 | 
Графически изменение уровня сигнала при наступлении темного времени суток имеет вид:

Как видно, уровень сигнала в светлое время суток намного слабее, чем ночью.
Вот так можно показать это изменение наглядно:


(слева - бледная полоска сигнала станции на спектрограмме, справа - сильный сигнал в темное время суток)
Это различие объясняется различными условиями прохождения радиоволн в разное время суток. Подробно я описал причину этого здесь.
Вот соответствующие примеры двух спектрограмм (слева - в дневное время, справа - в ночное время):

13 декабря я сделал серию измерений утром, начиная с 8:15 (восход Солнца наступил в 9:00).
| T, чч:мм | 
08:33 | 
08:51 | 
09:09 | 
09:26 | 
09:44 | 
10:02 | 
11:14 | 
11:32 | 
| уровень, x10-4 | 
0,74 | 
0,76 | 
0,61 | 
0,37 | 
0,25 | 
0,25 | 
0,26 | 
0,30 | 

18 декабря я сделал измерения от предрассветного времени до заката с интервалом в один час:
| T, чч:мм | 
07:17 | 
08:17 | 
09:18 | 
10:17 | 
11:18 | 
12:17 | 
13:19 | 
14:17 | 
15:25 | 
16:19 | 
17:19 | 
| уровень, x10-4 | 
0,78 | 
0,74 | 
0,53 | 
0,27 | 
0,26 | 
0,32 | 
0,30 | 
0,29 | 
0,30 | 
0,30 | 
0,30 | 

Эти измерения совпали с предыдущими - в дневное время уровень сигнала незначительно отличается от 0,30x10-4.
Продолжение следует