Files
radar_system/docs/troubleshooting.md
T
2026-10-16 18:35:02 +03:00

13 KiB
Raw Blame History

Неполадки

Сначала посмотрите журнал окна (секция Runtime Log) и строку состояния. Если там пусто, а картинка не обновляется, причина обычно в журналах процессов в python_app/runtime/logs/:

Файл Что в нём искать
acquisition.err.log приборы не открываются, ожидание приборов, ошибки коллектора E-502
data_preprocessor.err.log отброшенные коллекции: не та сетка частот, нет пары в наборе
data_processor.err.log ошибки обработки, отклонённый live-файл, 3D SAR, локатор
radar.log всё, что было в окне журнала

У каждого процесса есть ещё <процесс>.out.log (обычный вывод), а перед каждым запуском прежние журналы переименовываются в *.prev: после автоматического перезапуска причина падения лежит в <процесс>.err.log.prev. Без экрана журнал программы — journalctl -u radar.service -f.

Программа не запускается

Признак Причина Что делать
окно не открывается, в выводе ошибка о LibreVNA (No compatible LibreVNA USB device found…) профиль с driver_mode: "native", а прибор не подключён: при запуске окно читает пределы прибора подключите прибор или запустите с профилем симулятора: ./start.sh --profile run_config.json
окно открывается с ошибкой Cannot switch processing mode to … и закрывается, и так при каждом запуске запомненный профиль читается, но его настройки нельзя применить (например, SAR_Y_RANGE_M max не больше min) удалите python_app/runtime/gui_session_state.json и исправьте профиль
Another radar instance already holds /tmp/radar_system.lock; aborting. программа уже запущена: в другом окне или службой закройте другой экземпляр или sudo systemctl stop radar.service
служба перезапускается каждые 3 с без экрана не удаётся Start (часто — не выбраны наборы) или нет программ в build/bin/ journalctl -u radar.service; выберите наборы и сохраните профиль, запустив окно на машине
[start.sh] … Run an interactive './start.sh' once (online)… без экрана не хватает Python-пакетов запустите ./start.sh один раз с экраном и сетью

Start отказывает

Сообщение Причина Что делать
Select all required preprocess sets in Preprocessing Panel before Start: … не выбраны калибровка или референс выберите или снимите их в Preprocessing…; для симулятора — Create Neutral S21 Sets
наборы пропали из списков, в журнале Preprocess selection reset: … изменилась развёртка, серийные номера или положения ключей — другой ключ радара верните прежние настройки или снимите наборы заново
Selected … set does not cover requested run combos набор снят для другой матрицы снимите набор заново при текущих ключах
rings.<имя>.slot_size_bytes must be at least N for this sweep слот кольца меньше коллекции увеличьте slot_size_bytes в профиле
B-scan with native switches requires exactly one run combo (now N) B-scan с настоящими ключами показывает одну пару задайте одну пару в Single combo
GPR requires at least 2 distinct run combos (now N) и другие GPR … для GPR и 3D SAR нужны пары и геометрия проверьте пары сбора и таблицы геометрии
Object calibration … differs from the captured state калибровка по объекту снята при других настройках, геометрии или наборе калибровки выберите Off или снимите калибровку по объекту заново
Stop all pipeline processes before loading a config profile профиль загружают при работающем сборе нажмите Stop

Нет данных от приборов

Признак Причина Что делать
сбор идёт, приборы не опрашиваются, на графиках один движущийся точечный отражатель профиль симулятора: driver_mode: "mock" (например, корневой run_config.json) загрузите профиль с driver_mode: "native"; если в журнале Failed to load the last selected config profile…, запомненный профиль не прочитался — исправьте его и загрузите снова
No datapoints received from at least one device; hardware trigger sync did not start. Check Trigger Out/In loop and 10 MHz reference wiring. многоприборная схема: не работает петля триггера проверьте кабели петли и контроллер STM32 в режиме переключения стимула
Packet not received from <серийный номер> within 1.0 s включена внешняя опора (force_external_reference: true), а 10 МГц не подана выключите опору в профиле или проверьте, что 10 МГц доходит до всех приборов
<прибор> unavailable (attempt N); retrying until present прибор не открывается; процесс сбора ждёт его бесконечно проверьте USB и серийный номер в профиле; правило udev ставит ./start.sh при обычном запуске
в режиме переключения стимула приборы падают с LIBUSB_ERROR_IO полоса ПЧ 1 кГц используйте 5–50 кГц, рабочее значение — 50 кГц
ключи не переключаются, ошибок нет неверный GPIO-чип или ключ в mock проверьте gpiodetect, gpioinfo -c gpiochip0 и driver_mode ключей
Failed to open GPIO chip '…' или Failed to request GPIO lines… чипа нет или линии заняты другой программой проверьте чип и что линии свободны (gpioinfo)

Радиофотонный радар

Сообщение Причина Что делать
…sweep rejected (count=n): covered [a, b] Hz does not span band [c, d] Hz… развёртка лазера не покрывает выходную полосу проверьте фазовую калибровку (rph_radar_calibrate) и radar.rph_radar.band
Timed out waiting for a RadioPhotonic radar (RPH) sweep covering the configured band за Read timeout (s) не пришло ни одной пригодной развёртки проверьте, что лазер запущен (Apply Radar), и сигналы на входах
Cannot load libx502api.so: … нет библиотек L-Card положите libx502api.so и libe502api.so в ~/.local/lib или задайте LD_LIBRARY_PATH в Environment JSON
Timed out waiting for RadioPhotonic radar (RPH) TTY … коллектор не запустился смотрите строки Collector: … в acquisition.err.log; проверьте Executable path (make rph_radar_collector)
ADC source clock leads host monotonic clock; restart acquisition часы АЦП ушли вперёд часов компьютера перезапустите сбор
Serial port '…' is busy — another program is already using the laser controller… порт платы лазеров занят другой программой закройте её
Device rejected command: STATE 0x… плата лазеров отвергла команду проверьте значения токов и температур и питание платы
RFG protocol violation: … на порт пришёл чужой пакет привяжите udp_bind к проводному адресу, на котором работает плата

Картинка не обновляется или пустая

Признак Причина Что делать
сбор идёт, счётчик History растёт только у raw препроцессор отбрасывает коллекции data_preprocessor.err.log: обычно не совпадает сетка частот набора; снимите наборы заново
GPR пустой нет антенн с геометрией среди выбранных или Min depth (m) не меньше Max depth (m) проверьте поля и таблицы; ошибки — в data_processor.err.log
Single Capture в режиме GPR ждёт 300 с и останавливается результат GPR пустой, и съём его не дождался проверьте настройки GPR, как выше
SAR3D: warning — … нет видеокарты NVIDIA или программа собрана без CUDA глава Установка и запуск, раздел о видеокарте
SAR3D: error — the views need N KiB but a results ring slot holds M KiB… изображения 3D SAR не помещаются в слот увеличьте шаги вокселя, сузьте дальность или увеличьте rings.results.slot_size_bytes
SAR3D: no signal — No signal inside the selected depth range в пределах MIN_DEPTH–MAX_DEPTH нет сигнала проверьте границы дальности и полосу
кадр 3D SAR пустой, в строке frame empty максимум ниже 6 фонов при включённой BG_GATE_ENABLE это норма для пустой сцены; для проверки выключите BG_GATE_ENABLE
Stopping pipeline after 400 consecutive reader poll failures конвейер остановлен из-за ошибок чтения колец нажмите Start; повторяется — проверьте /dev/shm
Status: result display error (acquisition continues) ошибка отрисовки; сбор продолжается текст ошибки — в журнале

Прочее

Признак Причина Что делать
после перезапуска пропали настройки и выбор наборов изменения в окне и вебе не пишутся в профиль сами Save Config…
отказ в доступе к кольцам (Permission denied) программу или тесты запускали от root, и кольца в /dev/shm принадлежат root при закрытой программе удалите их: sudo rm -f /dev/shm/radar_*
веб-страница не открывается порт занят или не тот адрес проверьте вывод программы (journalctl) на address already in use; другой порт — RADAR_SYSTEM_WEBUI_PORT
Disk recording stopped because the writer could not keep up диск не успевает за записью пишите на более быстрый диск или меньше коллекций; записанное сохранено
Snapshot directory already exists: … каталог набора данных уже есть задайте другое Name
Log panel overflow: N record(s) dropped… журнал в окне переполнился всё есть в radar.log