102 lines
5.1 KiB
Markdown
102 lines
5.1 KiB
Markdown
# Повторная обработка записи Lab046C на 1400 МГц
|
||
|
||
## Границы работы
|
||
|
||
Использована только сохранённая запись:
|
||
|
||
`C:\Users\user\Documents\SDR_Rover_RF_Check\20260901_172749_1400MHz\rx_1400mhz.cs8`
|
||
|
||
- размер: 38 400 000 байт;
|
||
- число комплексных отсчётов cs8: 19 200 000;
|
||
- частота дискретизации: 8 МГц;
|
||
- длительность: 2,4 с;
|
||
- SHA-256: `06ab0867865bca462a21c42c9f3bc7e519e336108f7b5e98e7b283f842387a99`;
|
||
- число запусков передатчика в этой работе: 0.
|
||
|
||
HackRF не запускался. Порог `IQ_PREAMBLE_THRESHOLD = 0.65`, Lab045, FEC и PHY
|
||
не изменялись. Исходный аппаратный `CONTROL RESULT = C` не переписывается.
|
||
|
||
## Правило первого каскада
|
||
|
||
Правило зафиксировано до полного независимого декодирования. Использован только
|
||
фон до передачи, интервал `0,00 ... 0,50 с`:
|
||
|
||
```text
|
||
candidate_threshold =
|
||
pre-TX local-peak Q99.9 + 4 * pre-TX local-peak MAD
|
||
```
|
||
|
||
Получено:
|
||
|
||
- локальных максимумов: 5 538;
|
||
- медиана локальных максимумов: `0.0094285998493433`;
|
||
- MAD локальных максимумов: `0.0027075146790593863`;
|
||
- Q99: `0.019724003970623016`;
|
||
- Q99.9: `0.022788675501942635`;
|
||
- Q99.99: `0.023935016244649887`;
|
||
- максимум: `0.024017350748181343`;
|
||
- зафиксированный порог: `0.03361873421818018`.
|
||
|
||
Фон после передачи, интервал `1,60 ... 2,40 с`, использован только как
|
||
независимая контрольная выборка:
|
||
|
||
- локальных максимумов: 9 285;
|
||
- медиана локальных максимумов: `0.009831136092543602`;
|
||
- MAD локальных максимумов: `0.002742284908890724`;
|
||
- Q99.9: `0.023004598915576935`;
|
||
- Q99.99: `0.026167524978518486`;
|
||
- максимум: `0.02711654081940651`;
|
||
- кандидатов при зафиксированном пороге: 0.
|
||
|
||
После просмотра результата порог не менялся.
|
||
|
||
## Независимый результат
|
||
|
||
Выполнен ровно один полный проход по всем 19 200 000 отсчётам. Приёмник не
|
||
получал смещения переданных кадров, их ожидаемое число, сигнал передатчика,
|
||
пакеты, полезную нагрузку или кодированные биты.
|
||
|
||
- локальных максимумов во всей записи: 29 205;
|
||
- кандидатов первого каскада: 1 279;
|
||
- обработано строгим каскадом: 28;
|
||
- PHY-заголовок прошли: 3;
|
||
- PHY-заголовок не прошли: 25;
|
||
- попыток FEC: 3;
|
||
- FEC прошли: 3;
|
||
- FEC не прошли: 0;
|
||
- CRC прошли: 3;
|
||
- CRC не прошли: 0;
|
||
- действительных кадров: 3.
|
||
|
||
Поиск дошёл до конца записи и до конца списка кандидатов. Ограничения числа
|
||
кандидатов, итераций и действительных кадров не сработали. Все 25 отклонённых
|
||
кандидатов получили `PHY_HEADER_MAGIC_MISMATCH`. Только `CRC PASS` добавлял кадр
|
||
в независимый результат.
|
||
|
||
## Диагностика после независимого решения
|
||
|
||
Независимый JSON был записан до открытия опорных файлов передатчика. После
|
||
этого выполнено сопоставление:
|
||
|
||
- ожидаемых переданных кадров: 3;
|
||
- совпавших действительных кадров: 3;
|
||
- пропущенных кадров: 0;
|
||
- ложных `CRC PASS`: 0;
|
||
- ошибки положения начала: `0`, `-1`, `+2` отсчёта;
|
||
- ошибки кодированных битов до FEC: `17 + 19 + 29 = 65`;
|
||
- ошибки пакета после FEC: 0 бит;
|
||
- ошибки полезной нагрузки: 0 байт, 0 бит.
|
||
|
||
Три полезные нагрузки по 256 байт формируют соответствующие переданные пакеты
|
||
по 268 байт. Добавления пропущенных кадров в независимый результат не было.
|
||
|
||
## Вывод
|
||
|
||
Повторная обработка записи на 1400 МГц получила `VALID FRAMES = 3` и
|
||
`CRC PASS = 3` без ложных срабатываний CRC. Это подтверждает исправность
|
||
физического радиочастотного тракта для данного короткого опыта. Оценка:
|
||
`RF PATH ASSESSMENT = HEALTHY`.
|
||
|
||
Результат не является разрешением на новый RF, повтор Lab046C, JPEG, QPSK или
|
||
изменение FEC. `RF TX = 0`.
|