Перейти к содержанию

Лабораторная 6.11 — Калибровка мощности dBm и dBFS

Цель

Построить воспроизводимую связь между RF-мощностью в дБм и измеренной цифровой амплитудой в дБFS для платформы ZynqSDR + AD9363, используя RTL-SDR как относительный контрольный приёмник и внешний аттенюатор или калиброванную опорную точку, когда они доступны.

Работа стоит между базовой линией RX-only (Lab 6.6) и первым полным OTA-наблюдением тона DDS (Lab 6.8). Её цель: определить безопасный диапазон ослабления TX и задокументированную шкалу амплитуды до перехода к OTA-экспериментам, чтобы последующие работы выбирали ослабление с известным бюджетом линии.

Статус: это процедура с пустыми таблицами результатов. Для неё пока не закоммичены ни калиброванная опорная точка дБм, ни измеренная развёртка, поэтому в ней нет измеренных чисел, и курс не делает из неё заявлений о калиброванной мощности. Ранее она имела номер 6.7, который конфликтовал с работой Zero-IF artifacts на сайте, и теперь называется Lab 6.11.

Зачем эта работа

На текущем этапе:

  • Lab 6.6 подтвердила, что тракт RX у ZynqSDR исправен;
  • эксперименты с TX требуют известной безопасной отправной точки, прежде чем включать PA AD9363;
  • RTL-SDR уже есть как независимый приёмник со стабильной настройкой tuner_gain_db10;
  • курсу нужен ясный мост между аналоговой RF-мощностью (дБм) и цифровой амплитудой отсчётов (дБFS).

Таблица, полученная здесь, позволяет последующим работам (6.8, 7.x, 11.x) выставлять ослабление TX в точку внутри динамического диапазона RTL-SDR без риска перегрузки. Она также явно показывает, что дБFS: не абсолютная единица RF-мощности, пока не записана калибровочная опора.

Ключевые определения

Термин Смысл Трактовка в курсе
дБ Отношение двух величин Используется для ослабления, усиления, SNR и относительных разностей спектра
дБFS Децибелы относительно цифровой полной шкалы Амплитуда FFT/отсчётов относительно диапазона полной шкалы АЦП или файла
дБм Децибелы относительно 1 мВт Абсолютная RF-мощность при заданном импедансе, обычно 50 Ом

Важное правило:

dBFS относится к цифровой шкале приёмника.
dBm — абсолютная RF-мощность в плоскости измерения.
Перевод из dBFS в dBm допустим только после калибровки.

Калибровочная модель

Используйте одну калибровочную точку, измеренную на той же частоте, при том же усилении, частоте дискретизации, обработке FFT и настройках приёмника:

P_dBm = P_ref_dBm + (P_dBFS - P_ref_dBFS)

где:

  • P_ref_dBm: известная RF-мощность на входе приёмника или в плоскости измерения;
  • P_ref_dBFS: измеренный цифровой пик или интегральная мощность для того же опорного сигнала;
  • P_dBFS: измеренное цифровое значение для неизвестного сигнала;
  • P_dBm: оценённая RF-мощность при тех же настройках приёмника.

Это относительная калибровка. Если изменится что-либо из перечисленного, калибровку нужно повторить: усиление тюнера, аналоговое усиление, частота дискретизации, окно FFT, метод интегрирования RBW/бина, центральная частота, кабели, аттенюаторы или геометрия антенн.

Исполняемые файлы

Файл Назначение
blocks/block_06_rf_frontend_and_ad9363/python/lab_6_3_probe_iio_context.py подтвердить список устройств IIO до включения TX
blocks/block_06_rf_frontend_and_ad9363/python/lab_6_8_capture_zynq_ota_tone.py используется в режиме развёртки с аргументом --tx-hardwaregain-db

Отдельный скрипт lab_6_11_*.py не нужен: развёртка переиспользует lab_6_8 с фиксированным тоном DDS и меняющимся ослаблением TX. Если есть калиброванный RF-источник или измеритель мощности, запишите опорную точку в ту же таблицу отчёта.

Порядок измерений

  1. Убедитесь, что контекст IIO ZynqSDR доступен:
python blocks/block_06_rf_frontend_and_ad9363/python/lab_6_3_probe_iio_context.py \
  --uri ip:192.168.40.1
  1. Настройте RTL-SDR на фиксированное усиление (например, усиление тюнера = 200 / 20 дБ) и настройте на частоту тона DDS (центр + смещение).

  2. Запишите настройки приёмника до любой развёртки:

Параметр Значение
Центральная частота __________ Гц
Смещение тона __________ Гц
Частота дискретизации __________ отс/с
Усиление тюнера RTL-SDR __________ дБ
Размер FFT / окно __________
Плоскость измерения антенна / кабель / выход аттенюатора / другое
  1. Если доступна калиброванная опора, запишите одну известную точку:
Опорная RF-мощность (дБм) Измеренный цифровой уровень (дБFS) Примечания
__________ __________ то же усиление, частота и настройки FFT
  1. Для каждого значения ослабления TX из таблицы ниже выполните:
python blocks/block_06_rf_frontend_and_ad9363/python/lab_6_8_capture_zynq_ota_tone.py \
  --uri ip:192.168.40.1 \
  --center-frequency-hz 915000000 \
  --tone-offset-hz 50000 \
  --tx-hardwaregain-db <VALUE> \
  --out-iq datasets/lab6_8_zynq_ota_tone_observation/raw/tx_cal_<VALUE>dB.ci16 \
  --manifest-out datasets/lab6_8_zynq_ota_tone_observation/manifest_tx_cal_<VALUE>dB.yaml \
  --dataset-id lab6_11_tx_cal_<VALUE>dB

В этом скрипте уровень TX это hardwaregain канала TX у AD9361: 0 дБ это максимальный выход, -89,75 дБ это минимальный. Столбец «Ослабление TX» в таблицах ниже это то самое значение.

  1. Считайте пик FFT RTL-SDR для каждого прогона и запишите принятый уровень в дБFS. Если есть действительная опорная точка, оцените соответствующие дБм по калибровочной модели выше.

Предлагаемая развёртка ослабления

Ослабление TX (дБ) Ожидаемый SNR RTL-SDR Примечания
−89,75 (мин. TX) шумовая полка безопасная базовая линия: сигнала не ожидается
−60 низкий начните отсюда
−50 умеренный стандартное значение курса
−40 хороший увеличивать только при расстоянии между антеннами > 2 м
−30 высокий проверьте RTL-SDR на признаки перегрузки

Шаблон таблицы результатов

Прогон Ослабление TX (дБ) Пик RTL-SDR (дБFS) Оценённая мощность (дБм) SNR (дБ) Примечания
baseline −89,75 ____ н/д ____ шумовая полка
tx_cal_-60dB −60 ____ ____ ____
tx_cal_-50dB −50 ____ ____ ____
tx_cal_-40dB −40 ____ ____ ____
tx_cal_-30dB −30 ____ ____ ____ проверка перегрузки

Если калиброванной опоры в дБм нет, оставьте столбец Оценённая мощность (дБм) как н/д и явно укажите, что результат: только относительная калибровка в дБFS.

Правила безопасности

  • Никогда не поднимайте уровень TX выше --tx-hardwaregain-db -30 без подтверждённого расстояния между антеннами не менее 2 м и без отражающих корпусов.
  • Для любого кондуктивного или ближнепольного измерения предпочитайте внешний аттенюатор.
  • Всегда возвращайте TX в безопасное состояние (TX LO powerdown = 1, TX attenuation = -89,75 дБ) после развёртки.
  • Записывайте хвост dmesg после каждого включения TX, чтобы поймать предупреждения xo_disable или clock_lost драйвера AD9363.
  • Остановите развёртку, если пик FFT перестал линейно расти с изменением уровня TX или если в спектре видны продукты ограничения/перегрузки.

Ожидаемые результаты

Результат Содержание
Таблица калибровки TX (JSON или Markdown) ослабление TX против мощности пика RTL-SDR (дБFS) и необязательные оценённые дБм
docs/assets/lab611_tx_power_calibration_table.json машиночитаемая калибровочная таблица
Вывод отчёта действительные настройки приёмника, безопасный диапазон ослабления TX и ограничения калибровки

Предлагаемая форма JSON:

{
  "lab": "6.11",
  "title": "dBm vs dBFS power calibration",
  "center_frequency_hz": 915000000,
  "tone_offset_hz": 50000,
  "receiver": "RTL-SDR",
  "receiver_gain_db": 20.0,
  "reference": {
    "available": false,
    "power_dbm": null,
    "measured_dbfs": null
  },
  "points": [
    {
      "tx_attenuation_db": -50.0,
      "measured_peak_dbfs": null,
      "estimated_power_dbm": null,
      "snr_db": null,
      "notes": "fill after measurement"
    }
  ]
}

Чек-лист отчёта

  • Указано усиление тюнера RTL-SDR, использованное на протяжении всей развёртки.
  • Записаны центральная частота, частота дискретизации и смещение тона.
  • Описано, было ли измерение OTA, кондуктивным, с ослаблением или с калибровкой по известной опоре.
  • Приложена полная таблица «ослабление: дБFS».
  • Необязательная оценка в дБм приложена только при наличии действительной опорной точки.
  • Определён безопасный диапазон ослабления TX для доступной геометрии антенн.
  • Подтверждено, что после развёртки TX возвращён в безопасное состояние.

Шаблон инженерного вывода

Калибровка мощности TX на ____ МГц использовала смещение тона DDS ____ кГц и усиление тюнера RTL-SDR
____ дБ. Принятая мощность менялась от ____ дБFS при ослаблении ____ дБ до ____ дБFS при ослаблении
____ дБ. Перевод в дБм применялся / не применялся. Опорная точка: ____ дБм = ____ дБFS. Оценённый
диапазон RF-мощности: от ____ дБм до ____ дБм. Безопасный рабочий диапазон для последующих работ:
ослабление TX между ____ дБ и ____ дБ. TX возвращён в безопасное состояние: TX LO powerdown = 1,
ослабление = -89,75 дБ.