Files
SDR-Rover/docs/lab056_rf_result.md

223 lines
19 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Lab056 — единственный OTA ABAB: результат
10 сентября 2026 года, сеанс 12:32:24–12:32:28 по Москве.
**Внутри одного короткого эфирного сеанса большой провал при переходе
20 → 500 ксимв/с не воспроизвёлся.** Принятая мощность после вычитания фона
у B выше A на 0,109 дБ; согласованный коэффициент передачи по мощности
ниже на 0,163 дБ. Обе пары A/B дают близкие результаты. Энергия символа
уменьшилась на 13,871 дБ: при почти одинаковой принятой мощности она
приходится на в 25 раз большее число символов в секунду.
Это результат всего OTA-пути с антеннами и распространением. Он не
измеряет выходные dBm HackRF и не объясняет задним числом причину прежнего
различия Lab047/Lab054 на 15,41 дБ. Lab054 остаётся **NOT_A, 0/16**.
Выполнена ровно **одна** передача. Сейчас **RF TX = 0**, передатчик
остановлен; повторов нет. Разрешённая попытка израсходована. **STOP.**
## Фактические условия
Пользователь отдельно разрешил этот сеанс после аппаратного RX-only
preflight. Частота 1 400 000 000 Гц относится только к Lab056, не является
выбором рабочего диапазона SDR_Rover. Ориентир около 180 МГц и варианты
50/144 МГц рассматриваются отдельно и здесь не исследовались.
OTA: MASTER TX → TX-антенна → LOS → RX-антенна → SLAVE RX. По заданию
пользователя антенны неподвижны, ориентация и поляризация одинаковы,
расстояние примерно 3–5 м, кабели не меняются. Использованы имеющиеся
антенны на 1400 МГц; модели/маркировка и точное измеренное расстояние
не сообщены. Программа не измеряет геометрию; это описание пользователя.
Один сохранённый TX-файл содержит A1 → gap → B1 → gap → A2 → gap → B2
с дополнительными начальным/конечным gaps. A = 20 ксимв/с, B = 500 ксимв/с.
Fs 8 Мвыб/с; цифровая несущая +50 кГц; прежние PRBS7/BPSK/RRC.
TX VGA 10 дБ, RX LNA/VGA 24/24 дБ, RF amplifier/Bias-Tee OFF.
Внешние PA/LNA отсутствуют. Частота, усиления, Fs и параметры формы
не менялись между сегментами. PHY/FEC/CRC, пороги и timing не изменялись.
Цифровой RMS всего сегмента A/B: 44,004413/44,001925 код;
разница мощности B/A −0,000491 дБ. Разница активных частей −0,042606 дБ
из-за разной доли защитных участков сохранена в метаданных и не скрывается.
RX не нормировался для искусственного выравнивания A/B.
## Полнота записи и аппаратные проверки
| Проверка | Фактический результат |
|---|---|
| Число TX-процессов | 1, без `-R`, конечный `-n 10588544` |
| TX-файл | 21 177 088 байт, 10 588 544 комплексных отсчёта, 1,323568 с |
| Основной RX | 48 000 000 байт, 24 000 000 комплексных отсчётов, ровно 3 с |
| Порядок запуска | RX раньше TX на 0,517342 с по журналу запуска процессов |
| MASTER / SLAVE reg29 | 0x26 / 0x26 |
| SLAVE CLKIN | DETECTED в пределах штатного ожидания запуска опоры |
| RX overruns / TX underruns | 0 / 0 по всем явным счётчикам журналов |
| Клиппинг RX до TX | 0 / 65 536 отсчётов проверенного хвоста |
| Клиппинг полного RX после ABAB | 0 / 24 000 000 отсчётов; 0 / 48 000 000 компонент |
| Полный RX: RMS / максимумы абсолютных I,Q | 2,235380477 код / 5, 6 код |
| Процессы до / после | CLEAR / CLEAR |
| Завершение | CLKOUT обеих плат выключены, ошибок cleanup нет |
Общая опора проверена при запуске заново, поскольку предыдущий preflight
завершился выключением CLKOUT. Первый запрос CLKIN ещё не обнаружил опору;
второй обнаружил её через 137,359 мс штатного ожидания. После PASS
состоялся единственный TX; опрос CLKIN не является повтором передачи.
В журнале 14 команд: инвентаризация, опора, два коротких RX-start по
65 536 отсчётов для выбора опоры, один основной RX, один TX и cleanup.
После запуска TX до его окончания других аппаратных команд нет.
Параметры команд и их исходный вывод сохранены; аппаратной перестройки
между A/B не было. Физическая неподвижность антенн следует из заданных
пользователем условий, а не из программного измерения.
Утилита указала TX transfer time 1,32538 с и RX transfer time 3,01535 с.
Это служебные интервалы обмена, отличные от длительности отсчётов файла;
они не используются вместо расчёта длительности по числу отсчётов и Fs.
Отсутствие rail-кодов не является калиброванной проверкой аналоговой
компрессии; обнаруженных цифровых признаков насыщения нет.
## Все четыре сегмента
Подготовленный анализатор нашёл ABAB с нормированной корреляцией 0,384366
и грубым остаточным CFO 0 Гц. Оценённые начала всей последовательности
по отдельным сегментам: 4 454 791, 4 454 791, 4 454 790, 4 454 791 отсчёт.
Разброс составляет один отсчёт, 0,125 мкс. Все сегменты расположены
внутри RX, идут в правильном порядке и не перекрываются.
| Сегмент | Начало сегмента, отсчёт RX | Начало, с | Конец, с | Активных отсчётов |
|---|---:|---:|---:|---:|
| A1 | 5 254 791 | 0,656848875 | 0,863748875 | 1 638 400 |
| B1 | 7 709 991 | 0,963748875 | 1,168632875 | 1 638 400 |
| A2 | 10 149 062 | 1,268632750 | 1,475532750 | 1 638 400 |
| B2 | 12 604 263 | 1,575532875 | 1,780416875 | 1 638 400 |
Длительность активного участка каждого сегмента 0,2048 с. С защитными
участками A длится 0,2069 с, B — 0,204884 с. Межсегментные интервалы
составляют 0,1 с с расхождением не более одного отсчёта из-за согласования.
В спектрах A и B видны соответственно узкая и широкая полосы PRBS/BPSK.
Границы, ширина спектров и согласованные компоненты подтверждают
наличие четырёх сегментов; это диагностическое измерение с TX-эталоном,
не независимый приём пакетов.
![Запись, мощности и спектры единственного ABAB](../data/processed/lab056/rf_overview.png)
## Измерения A1/B1/A2/B2
Все мощности ниже — **код² RX**, не ватты/dBm. `h` выражает отношение
цифровых кодов RX/TX после согласования и удаления постоянного смещения.
Для вычитания фона используется AC-мощность — после удаления среднего,
поэтому она показана отдельно от RAW, включающего постоянную составляющую.
| Метрика | A1 | B1 | A2 | B2 |
|---|---:|---:|---:|---:|
| RAW RX POWER, включая среднее | 5,303053589 | 5,328170166 | 5,311703491 | 5,396551514 |
| RX AC POWER, без среднего | 1,084963566 | 1,092709351 | 1,049867204 | 1,090638777 |
| BACKGROUND POWER, AC | 0,622282607 | 0,616699337 | 0,635792032 | 0,667630886 |
| BACKGROUND-SUBTRACTED SIGNAL POWER | 0,462680958 | 0,476010015 | 0,414075173 | 0,423007891 |
| Оценка неопределённости вычитания фона | 0,029702311 | 0,034542825 | 0,017352868 | 0,047227716 |
| TX-MATCHED COMPLEX GAIN h | −0,008543899 + j0,009310849 | −0,008089660 + j0,009397484 | −0,007000883 + j0,010205712 | −0,006710537 + j0,010126447 |
| Коэффициент передачи по мощности, abs(h)² | 0,000159690119 | 0,000153755289 | 0,000153168935 | 0,000147576238 |
| MATCHED SIGNAL COMPONENT POWER | 0,312320987 | 0,297815525 | 0,299566893 | 0,285847043 |
| RESIDUAL POWER | 0,821513728 | 0,884789710 | 0,782684444 | 0,880722972 |
| INTEGRATED SPECTRAL POWER, полоса 27 кГц | 0,347264323 | 0,029697350 | 0,335922975 | 0,030437417 |
| INTEGRATED SPECTRAL POWER, полоса 675 кГц | 0,508299262 | 0,512832243 | 0,500120185 | 0,533314850 |
Полосы спектрального интегрирования центрированы на +50 кГц. Фактическая
расчётная полоса A — 27 кГц, B — 675 кГц; строка 675 кГц также даёт
сравнение в общей полосе. Спектральные интегралы включают фон. Различие
значений в полосе 27 кГц между A/B не является потерей полной мощности B:
большая часть широкого сигнала B лежит вне этой узкой полосы.
Вычитание фона устойчиво во всех четырёх сегментах по заранее подготовленному
критерию: превышение больше трёх оценок неопределённости. Эта оценка учитывает
разброс блоков и отличие фона до/после, но не является калиброванным
доверительным интервалом. Фон берётся из ближайших нулевых цифровых gaps;
TX-процесс в них работает, поэтому gaps нельзя называть выключенным RF.
Отдельные внешние окна фона и их спектры сохранены в полном JSON.
Комплексный h оценён на обучающих плитках; его фаза относится к началу
активного участка после коррекции CFO. Мощность согласованной компоненты
и остатка измерена на проверочных плитках. Остаток содержит шум и
неописанные моделью искажения. Поэтому он не равен отдельно измеренному
фону, а согласованная компонента не равна всей мощности после вычитания фона.
Полная RAW/AC-статистика относится ко всему активному участку; плиточные
метрики не следует складывать с ней как одну точную энергетическую сумму.
## Повторяемость и итоговые X/Y/Z
В таблице повторяемости знак относится ко **второму повтору относительно
первого**: A2/A1 и B2/B1, 10 log10 отношения мощностей.
| Сравнение повторов | RAW RX | Фон AC | Полезная мощность после фона | abs(h)² | Согласованная компонента |
|---|---:|---:|---:|---:|---:|
| A1 / A2 REPEATABILITY: A2/A1 | +0,007078 дБ | +0,093274 дБ | −0,482024 дБ | −0,181074 дБ | −0,181074 дБ |
| B1 / B2 REPEATABILITY: B2/B1 | +0,055382 дБ | +0,344629 дБ | −0,512676 дБ | −0,178136 дБ | −0,178136 дБ |
| Пара A/B | Принятая мощность B/A после фона | abs(h)² B/A | Согласованная компонента B/A |
|---|---:|---:|---:|
| B1/A1 | +0,123345 дБ | −0,164480 дБ | −0,206538 дБ |
| B2/A2 | +0,092693 дБ | −0,161543 дБ | −0,203601 дБ |
Итоговые X/Y/Z — отношение средних **линейных** мощностей B1/B2 к A1/A2,
а не среднее значений в дБ. Z рассчитано из той же мощности после фона,
что X, с делением на скорость символов. Это энергия в код²·с, не джоули.
```text
500K / 20K RECEIVED POWER DIFFERENCE = +0.108895 dB
500K / 20K TX-MATCHED CHANNEL GAIN DIFFERENCE = -0.163042 dB
ENERGY PER SYMBOL DIFFERENCE = -13.870505 dB
```
Расчёт Z: +0,108895 − 10 log10(500000/20000) = −13,870505 дБ.
Отдельная энергия согласованной компоненты в парных результатах изменилась
на −14,185938 и −14,183001 дБ; это другой числитель, её не подменяют Z.
## Инженерная интерпретация
1. Внутри этой сессии 20 и 500 ксимв/с дали почти равные мощности. Небольшое
различие повторилось в обеих парах; утверждать точную частотную
характеристику по двум повторам нельзя.
2. Вторые повторы слабее первых на 0,48/0,51 дБ по мощности после фона
и примерно на 0,18 дБ по коэффициенту передачи. Фон также немного
меняется и содержит кратковременные всплески; при этом относительное
сравнение B/A сохраняется: расхождение двух оценок X около 0,031 дБ,
двух оценок Y около 0,003 дБ.
3. Прежний провал порядка 15,41 дБ **не воспроизвёлся** в текущей короткой
OTA-сессии. Причина различия старых раздельных опытов остаётся
неустановленной; их результаты не пересматриваются.
4. По OTA нельзя объявить эффект собственной аппаратной потерей HackRF
Plus: антенны и распространение входят в измеренный путь. В этой
сессии большого эффекта вообще не обнаружено. Абсолютная мощность
на выходе передатчика не измерена.
5. Кабельный контроль после получения SMA-переходника остаётся необходимым
отдельным этапом для отделения свойств аппаратуры от антенн и канала.
OTA его не заменяет. Автоматического повторения опыта или добавления
PA/внешнего LNA нет; необходимость усилителя не установлена.
## Проверка и артефакты
Verifier независимо прочитал журналы и raw IQ без оборудования и записи
файлов: проверил число команд, постоянство параметров, опору, размеры,
SHA, отсутствие клиппинга/потерь и согласованность четырёх начал. Raw AC,
два окна фона, CFO и комплексный МНК пересчитаны вторым способом;
результаты совпали с анализатором до 1e−12. Воспроизведённых находок нет.
RX SHA-256: `e336dd653fa554058052fcf851e9f2462f66b8cf7c710815ca2b9a09ffc23ad4`.
TX SHA-256: `5b34bbe1a8e6d037d2d6d367a74e9eb84e8940db7da61600ffaa7f7497d4f600`.
- [Полный подготовленный анализ](../data/processed/lab056/rf_analysis.json).
- [Итоговая машинная сводка](../data/processed/lab056/rf_result.json).
- [Авторизация и фиксированные параметры](../data/processed/lab056/rf_session_authorization.json).
- [Фактические команды и время](../data/processed/lab056/rf_session_commands.json).
- Raw: `data/raw/lab056/rx_stream.cs8`, `capture_result.json`,
`hardware_attempt.json`, `tx_process_result.json`, `rx_stdout.txt`, `rx_stderr.txt`.
Исходные результаты подготовки, preflight и искусственные записи сохранены.
Код анализатора/runner и TX не изменялись; использована проверенная версия
44 целевых теста / quick_gate 867/30/13 / pytest 867 passed. Для анализа
аппаратной записи полные тесты повторно не запускались. Diff check PASS.
HEAD `5add95ecb8865f59075bbbced08d97b183fb3b48`, Lab056 не коммитилась,
push не выполнялся. Приём пакетов, видео и FEC не проверялись.
**Выполненных TX-сеансов: 1. RF TX сейчас = 0. STOP.**