|
Разместил: |
ramelito |
Авторские права |
ramelito |
|
Грубая калибровка
rtl_test -p (на время 15 минут, пока не устоится значение)
Это значение будет использовано для ввода первичной грубой оценки ошибки для поиска каналов БС и для поиска точной оценки ошибки на выборке каналов БС.
Пример:
$ rtl_test -p
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000064
Using device 0: Generic RTL2832U OEM
Found Elonics E4000 tuner
Supported gain values (14): -1.0 1.5 4.0 6.5 9.0 11.5 14.0 16.5 19.0 21.5 24.0 29.0 34.0 42.0
Sampling at 2048000 S/s.
Reporting PPM error measurement every 10 seconds...
Press ^C after a few minutes.
Reading samples in async mode...
lost at least 168 bytes
real sample rate: 2048046 current PPM: 22 cumulative PPM: 22
… 15 минут спустя …
real sample rate: 2048003 current PPM: 2 cumulative PPM: -7
real sample rate: 2047986 current PPM: -6 cumulative PPM: -7
Точная калибровка
Для точной калибровки по известным частотам БС используется программа kalibrate-sdr
Код программы - https://github.com/steve-m/kalibrate-rtl
В двух словах про установку на примере ОС Ubuntu:
apt-get update
apt-get install autoconf automake libtool pkg-config g++ libfftw3-dev
git clone https://github.com/steve-m/kalibrate-rtl
cd kalibrate-rtl
./bootstrap
./configure
make && make install
Теперь, имея грубую оценку ошибки донгла, с помощью установленной программы отсканируем эфир GSM900 - kal -s GMS900 -e <значение_грубой_оценки_ошибки>
Пример:
kal -s GSM900 -e -7
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Elonics E4000 tuner
Exact sample rate is: 270833.002142 Hz
kal: Scanning for GSM-900 base stations.
GSM-900:
chan: 25 (940.0MHz - 12.754kHz) power: 1195494.10
chan: 27 (940.4MHz - 12.726kHz) power: 1313585.34
chan: 29 (940.8MHz - 12.793kHz) power: 2622784.32
chan: 32 (941.4MHz - 13.004kHz) power: 2501760.19
chan: 33 (941.6MHz - 12.791kHz) power: 2341235.09
chan: 35 (942.0MHz - 12.798kHz) power: 3599261.35
chan: 36 (942.2MHz - 12.768kHz) power: 2533106.61
chan: 38 (942.6MHz - 12.665kHz) power: 2668924.36
chan: 45 (944.0MHz - 12.919kHz) power: 4897575.62
chan: 77 (950.4MHz - 12.835kHz) power: 4938613.27
chan: 80 (951.0MHz - 12.924kHz) power: 2036843.37
chan: 81 (951.2MHz - 12.913kHz) power: 1197102.26
chan: 85 (952.0MHz - 12.952kHz) power: 1744011.19
chan: 93 (953.6MHz - 12.885kHz) power: 2107663.79
chan: 95 (954.0MHz - 12.925kHz) power: 1423451.71
chan: 96 (954.2MHz - 12.868kHz) power: 2339060.64
chan: 98 (954.6MHz - 12.900kHz) power: 2414656.12
chan: 117 (958.4MHz - 12.930kHz) power: 2930568.71
chan: 119 (958.8MHz - 12.977kHz) power: 4310151.76
Выберем канал (можно несколько) для проведения ряда замеров для точной калибровки.
Команда - kal -c <номер_канала> -e <значение_грубой_оценки_ошибки> -v.
Пример (измерение по 3 самым мощным каналам):
kal -c 77 -e -7 -v
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Elonics E4000 tuner
Exact sample rate is: 270833.002142 Hz
kal: Calculating clock frequency offset.
Using GSM-900 channel 77 (950.4MHz)
average [min, max] (range, stddev)
- 12.886kHz [-12906, -12864] (41, 11.101701)
overruns: 0
not found: 0
average absolute error: 6.559 ppm
kal -c 45 -e -7 -v
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Elonics E4000 tuner
Exact sample rate is: 270833.002142 Hz
kal: Calculating clock frequency offset.
Using GSM-900 channel 45 (944.0MHz)
average [min, max] (range, stddev)
- 12.858kHz [-12884, -12824] (60, 15.817154)
overruns: 0
not found: 0
average absolute error: 6.621 ppm
kal -c 119 -e -7 -v
Found 1 device(s):
0: Generic RTL2832U OEM
Using device 0: Generic RTL2832U OEM
Found Elonics E4000 tuner
Exact sample rate is: 270833.002142 Hz
kal: Calculating clock frequency offset.
Using GSM-900 channel 119 (958.8MHz)
average [min, max] (range, stddev)
- 12.961kHz [-12986, -12935] (52, 11.771488)
overruns: 0
not found: 0
average absolute error: 6.518 ppm
На выходе получаем точную оценку ошибки в ppm, которую уже можно подставлять в командную строку или графическое приложение. У меня получилось +6.5 ppm.
P.S. В моих примерах грубая и точная оценки разошлись слабо и в абсолютном значении ppm не вышел за 10 единиц, однако как показывает практика разброс значения ppm может достигать 150 единиц.
|
|
Автор |
Комментарий |
suppressor Участник
|
29 Мар 2015 17:07
N.B. по этой ссылке можно скачать сборку kalibrate-rtl для Windows. Собирать же это приложение под Win из исходников - геморрой еще тот.
|
58923ao Участник
|
13 Апр 2015 00:59
Интересно оценить точность такой калибровки, поскольку БС GSM используют частотную шкалу от GPS-данных, а они, как известно, обладают изрядной ошибкой. Для работы же GSM эта ошибка несущественна, т.к. все БС в данной местности получают одинаковую ошибку опорной частоты :-)
|
retro70 Участник
|
31 Май 2015 00:00
А не проще по какмоу-нибудь транку калиброваться?
|
Модест Петрович Участник
|
02 Июн 2015 19:40
Есть сеть станций эталонных частот. CW/SSB можно калиброваться по ним.
|
maxdudik Участник
|
04 Июл 2015 23:54
Если у кого-то не получается скомпилировать из git'а - есть ppa-репозиторий для debian-based дистрибутивов. У моего донгла погрешность аж 58ppm!
|
Добавлять комментарии могут только зарегистрированные, активировавшие регистрацию и не ограниченные в доступе участники сайта!
|
Файл создан: 28 Мар 2015 13:56 |
|