added docs

This commit is contained in:
Ayzen
2026-10-16 18:35:02 +03:00
parent b88d704126
commit ad2b3e555a
19 changed files with 3719 additions and 663 deletions
+240
View File
@@ -0,0 +1,240 @@
# Как работает радар
Радар закреплён над землёй с наклоном вниз и смотрит вперёд, на участок земли в
нескольких метрах от себя. Он излучает радиоволны, принимает отражённые и по ним
строит изображение этого участка: где лежат или стоят предметы, отражающие волну.
Незнакомые термины — в [словаре](glossary.md).
## Отражение и задержка
Передающая антенна излучает синусоидальную волну частоты f. Волна идёт в воздухе со
скоростью c ≈ 3·10⁸ м/с, отражается от предметов и частично доходит до приёмной
антенны. Длина волны λ = c/f; на частоте 3 ГГц это 10 см. Сильнее всего отражают
металлические предметы; вообще отражает всё, чьи электрические свойства отличаются
от воздуха.
Передающая и приёмная антенны стоят в разных местах, поэтому путь волны складывается
из двух отрезков: от передающей антенны до предмета (R_tx) и от предмета до приёмной
(R_rx). Принятая волна запаздывает на
τ = (R_tx + R_rx) / c.
Предмет в 4 м от антенн даёт путь около 8 м и задержку около 27 нс.
Для синусоиды задержка проявляется как сдвиг фазы: принятый сигнал
A·cos(2πf(t − τ)) отстаёт от излучённого на φ = 2πfτ. Фаза известна только с
точностью до целого числа периодов, поэтому по одной частоте расстояние не
определить. Его определяют по тому, как фаза меняется с частотой.
## Векторный анализатор цепей и S21
Векторный анализатор цепей (ВАЦ, англ. VNA) выдаёт на один свой порт синусоиду
заданной частоты и измеряет амплитуду и фазу сигнала, пришедшего на другой порт,
относительно выданного. Результат измерения — комплексный коэффициент передачи S21
из порта 1 в порт 2: отношение волны, пришедшей на порт 2, к волне, поданной в порт 1.
По смыслу он похож на отношение комплексных амплитуд выходного и входного напряжений
в расчёте цепей переменного тока и совпадает с ним, когда оба порта согласованы:
модуль |S21| показывает ослабление, аргумент — сдвиг фазы.
В радаре к излучающему порту прибора подключена передающая антенна, к принимающему —
приёмная. Цепью между портами служит сцена, и S21 показывает, что сцена передаёт от
одной антенны к другой на данной частоте.
В системе работает LibreVNA — двухпортовый ВАЦ с открытой прошивкой, частотами до
6 ГГц и подключением по USB. Его основные величины:
| Величина | Что это | У LibreVNA |
| --- | --- | --- |
| Модуль S21 в дБ | 20·lg\|S21\|: −20 дБ — амплитуда в 10 раз меньше, −60 дБ — в 1000 раз | — |
| Мощность излучения, дБм | децибелы относительно 1 мВт: 10·lg(P / 1 мВт); 0 дБм = 1 мВт, −3 дБм ≈ 0,5 мВт, −40 дБм = 0,1 мкВт | от −40 до 0 дБм |
| Полоса ПЧ (IF bandwidth, IFBW) | полоса фильтра приёмника; на каждой частоте прибор накапливает сигнал около 1/IFBW (при 50 кГц — 20 мкс). Узкая полоса снижает шум, но замедляет измерение | от 6 Гц до 50 кГц |
| Число частотных точек | сколько частот в одной развёртке | до 4501 |
## Развёртка по частоте и дальность
Развёртка (sweep) — проход прибора по списку частот: S21 измеряется в N частотных
точках, равномерно расставленных от f_start до f_stop с шагом
Δf = (f_stop − f_start) / (N − 1).
Если в сцене один отражатель с задержкой τ, то S21(f) = a·e^(−j2πfτ): модуль
постоянен, а фаза линейно убывает с частотой, тем быстрее, чем дальше отражатель.
Несколько отражателей дают сумму таких слагаемых.
Обратное преобразование Фурье по частоте переводит набор значений S21(f) в функцию
времени с пиками в моменты τ каждого отражателя — так же, как частотная
характеристика цепи переводится в импульсную. Время пересчитывается в путь L = c·t.
Получается А-скан (профиль дальности): амплитуда отражения в зависимости от
расстояния. Радары, которые так измеряют дальность, называют радарами со ступенчатым
изменением частоты. Дальность здесь — половина пути, L/2: при близко стоящих антеннах
это и есть расстояние до отражателя.
Что способен показать А-скан, определяют две величины:
| Величина | Формула | Пример: развёртка 0,5–6 ГГц, 1031 точка, обработка в полосе 1,5–6 ГГц |
| --- | --- | --- |
| Разрешение по дальности — на каком расстоянии друг от друга два отражателя ещё видны раздельно | ΔR ≈ c / (2B), B — ширина полосы, по которой строится А-скан | B = 4,5 ГГц, ΔR ≈ 3,3 см; с окном Ханна (ниже) пик вдвое шире |
| Предельная дальность — дальше неё картина повторяется | R_max = c / (2Δf) | Δf = 5,34 МГц, R_max ≈ 28 м |
Отражение от предмета дальше R_max не исчезает: оно появляется на неверной, меньшей
дальности. Поэтому число точек выбирают так, чтобы R_max с запасом превышала самую
дальнюю интересующую дальность. Развёртка 1 МГц–6 ГГц из 201 точки даёт Δf ≈ 30 МГц и
R_max ≈ 5 м.
У каждого пика А-скана есть боковые лепестки — ложные слабые пики по сторонам.
При резких краях полосы первый лепесток всего на 13 дБ ниже главного пика, и рядом с
сильным отражателем видны призраки. Окно Ханна плавно уменьшает вклад крайних частот:
лепестки опускаются примерно до −31 дБ, а главный пик становится примерно вдвое шире.
Окно Ханна применяют режимы GPR и 3D SAR и калибровка по объекту; B-scan строится
без окна.
## Антенны, пары и матрица
Каждое сочетание передающей и приёмной антенны — пара (в программе combo) — даёт
свою развёртку S21. M передающих и N приёмных антенн дают M × N пар. В программе
передающая сторона пары называется выходом (output, с него прибор излучает),
приёмная — входом (input). Пара записывается как `вход:выход` или `in0/out1`.
Положение каждой антенны задаётся в таблицах геометрии: номер выхода или входа и
координаты X, Y, Z в метрах.
Пары смотрят на сцену из разных точек. Сложенные с правильными задержками, они дают
изображение, чёткость которого поперёк сцены определяется размером всей группы
антенн, а не одной антенны.
Пар больше, чем портов у прибора. Их набирают двумя способами.
ВЧ-ключ (коммутатор H7992) подключает порт прибора к одной из антенн, до четырёх.
Положение ключа задают два логических сигнала с GPIO компьютера. Программа выставляет
ключи для очередной пары, ждёт, пока сигнал установится, и снимает развёртку.
Многоприборная схема — три LibreVNA, работающие синхронно. Ведущий прибор (мастер)
на каждой частоте излучает по очереди с двух портов, два ведомых принимают каждый на
два порта, и за
одну развёртку снимаются 2 × 4 = 8 пар. В режиме переключения стимула внутри
частотной точки на каждом порту мастера стоит ключ, которым управляет контроллер
STM32: на каждой частоте каждый порт излучает дважды, через оба положения ключа, и
развёртка даёт 4 × 4 = 16 пар. Все 16 измеряются на одной частоте за доли
миллисекунды, поэтому движение радара почти не сдвигает их друг относительно друга.
Обход всех пар называется коллекцией (collection). Программа обрабатывает данные
коллекциями. У коллекции и у каждой её развёртки есть окно съёма — время начала и
конца измерения по часам компьютера; по нему программа учитывает движение радара.
## Калибровка и вычитание фона
Измеренный S21 описывает не только сцену. Кабели, ключи, тракты антенн и сам прибор
по-своему меняют амплитуду и фазу на каждой частоте, а антенны «видят» друг друга
напрямую. Эти составляющие программа убирает наборами, снятыми заранее (подробно — в
главе [Калибровка и предобработка](preprocessing.md)):
1. Набор калибровки (through) — эталонное измерение тракта. Каждая развёртка
делится на него, и частотная характеристика аппаратуры сокращается.
2. Набор референса — измерение пустой сцены. В нём всё, что не меняется: прямая
связь между антеннами, земля, неподвижные предметы. Референс вычитается, и
остаётся то, что появилось в сцене после его съёма. Временный референс снимается
одной кнопкой прямо во время работы, например после перестановки радара.
3. Режекторный фильтр (notch) обнуляет заданные полосы частот, например полосу
постоянной помехи; края полос сглаживаются.
4. Калибровка по объекту — поправка для каждой пары, найденная по известному
отражателю (металлическому шару) в измеренной точке. Она выравнивает пары по фазе,
чтобы в этой точке они складывались синфазно.
## Изображения
### B-scan
B-scan — А-сканы одной пары за последовательные развёртки, поставленные рядом:
по горизонтали номер развёртки, по вертикали дальность, цветом — амплитуда.
Неподвижный отражатель рисует горизонтальную линию, приближающийся — наклонную.
### Когерентная обратная проекция
Изображение по всем парам строится обратной проекцией. Для каждой точки P
изображения программа вычисляет для каждой пары задержку
τ = (|P − Tx| + |P − Rx|) / c, берёт значение А-скана этой пары в момент τ и
складывает комплексные значения всех пар. Если в P есть отражатель, слагаемые
совпадают по фазе и сумма велика. В остальных точках фазы разные, и слагаемые
взаимно гасятся. Яркость точки — модуль суммы. Сложение с учётом фазы называется
когерентным.
Режим GPR считает такую сумму в точках плоскости земли перед радаром (сетка 300 × 300:
поперёк и вдоль дальности), находит на карте яркие пятна — объекты — и отдаёт их
внешним программам через TCP-локатор.
### 3D SAR
Режим 3D SAR считает ту же сумму в каждой ячейке (вокселе) трёхмерной сетки над
землёй. К текущей коллекции можно добавить несколько предыдущих: если радар едет,
каждая снята из другой точки, и вместе они образуют синтезированную апертуру
(synthetic aperture radar, SAR) — как будто антенн больше и они расставлены шире.
Объём показывается проекциями максимума: спереди, сбоку, сверху и в наклонном виде.
### Что программа делает перед суммированием
Развёртка длится заметное время, а радар может ехать. Программа знает время каждой
частотной точки и скорость радара и поправляет фазу так, будто вся коллекция снята в
один момент. Скорость задают в настройках или передаёт внешний клиент локатора.
Пары различаются усилением: у них разные кабели, антенны и углы обзора. Программа
выравнивает уровни пар по дальности и нормирует каждую пару на медиану её А-скана.
Фаза при этом не меняется.
### Фон кадра и CLEAN
В 3D SAR программа сравнивает максимум кадра с фоном — медианой значений рабочей
части объёма, типичным уровнем помех. Если объектов CLEAN нет, кадр появляется на
экране, когда максимум превышает фон в 6 раз, и показывается в полную яркость начиная
с 8,5 раза: кадр без явной цели не выглядит целью.
Сильный отражатель окружён боковыми лепестками, которые закрывают слабые. Алгоритм
CLEAN находит самую сильную точку, вычитает её отклик из данных и повторяет, пока в
изображении есть точки в 4,5–5,5 раза выше фона, но не больше 15 раз. Затем каждый
найденный объект рисуется в своей шкале, и слабый объект виден рядом с сильным;
найденные объекты видны всегда, а порог фона прячет только остаток. Рамки вокруг групп
объектов показывают, где
объект по высоте: очень низко, на земле, над землёй или у края сцены.
## Радиофотонный радар
Второй тип радара в системе формирует СВЧ-сигнал с помощью лазеров (радиофотонный
радар, RPH). Плата лазеров меняет ток лазера LD1 ступенями — по умолчанию от 97,3 до
107 мА с шагом 0,05 мА, 50 мкс на ступень, — и вместе с током меняется частота
сигнала. Принимаются два сигнала: основной, прошедший через сцену, и опорный,
прошедший постоянную задержку. Их оцифровывает АЦП L-Card E-502 или плата RFG.
Фаза опорного сигнала растёт с частотой линейно, поэтому по ней программа узнаёт
частоту каждой ступени: две опорные точки «фаза — частота» задаются фазовой
калибровкой. Затем развёртка пересчитывается на равномерную сетку частот (по
умолчанию 2,1–5,5 ГГц, 2048 точек), и дальше данные обрабатываются так же, как
развёртки ВАЦ.
## Координаты
Положения антенн задаются в осях радара: X — вдоль ряда антенн (поперёк направления
обзора), Y — вверх
относительно радара, Z — вдоль оси, куда радар смотрит. Начало осей находится на
высоте h над землёй, и радар наклонён вниз на угол обзора p.
Изображения 3D SAR, рамки объектов и положение отражателя при калибровке по объекту
задаются в осях сцены: X — та же ось вдоль ряда антенн, Y — высота над землёй
(Y = 0 — земля), Z — вдоль
земли от радара.
```text
Y
│
h ●- - - - - - - - - - - - горизонталь
│ \ p — угол обзора
│ \
│ \ ось обзора радара (Z радара)
│ \
──┴─────────\────────────────────► Z сцены, вдоль земли
земля, Y = 0 ось обзора пересекает землю при Z = h / tg p
```
Настройки «глубины» — **Min depth (m)** и **Max depth (m)** в GPR, **MIN_DEPTH** и
**MAX_DEPTH** в 3D SAR —
ограничивают расстояние вдоль оси обзора радара, а не глубину под землёй. Высота h
задаётся настройкой **Radar height (m)** в GPR и **BP_GROUND_DEPTH_M** в 3D SAR, угол
обзора — **Look angle (°)** и **LOOK_ANGLE_DEG**. Формулы перехода между осями — в
главе [Режимы обработки](processing.md).