projector version

This commit is contained in:
awe
2026-09-15 19:06:05 +03:00
parent 62c0266a6b
commit b3339d101c
33 changed files with 2605 additions and 51 deletions
@@ -0,0 +1,204 @@
{
"_comment": "Replay of the recorded VNA_AlGo tank005 dataset through the full pipeline (no hardware). The replay producer feeds the raw ring; pair it with NEUTRAL preprocess sets (calibration=1, reference=0) so the already-preprocessed recording passes through unchanged. Create them via GUI 'Create neutral sets' (name: neutral_replay) or python -m python_app.scripts.create_neutral_preprocess_sets --config <this file>.",
"radar": {
"model": "librevna_multi",
"serial": "206830985532",
"remote_host": "127.0.0.1",
"remote_port": 50209,
"driver_mode": "mock",
"mock_signal_hz": 5000000.0,
"visa_library": "",
"multi_device": {
"slave_serials": [
"206930965532",
"206930A15532"
],
"force_external_reference": true,
"recovery_attempts": 3,
"output_switch_positions": 1,
"input_switch_positions": 1,
"stimulus_switch_positions": 1
},
"replay": {
"dataset_dir": "/home/awe/Documents/VNA_AlGo/librevna_multi_2-6GHz_751pts_-3dBm_tank005/librevna_multi_2-6GHz_751pts_-3dBm_tank005/preprocessed",
"loop": true,
"rate_scale": 1.0
},
"sweep": {
"start_hz": 2000000000.0,
"stop_hz": 6000000000.0,
"if_bandwidth_hz": 50000.0,
"stimulus_power_dbm": -3.0,
"points": 751
}
},
"switches": {
"port1": {
"name": "port1",
"driver_mode": "mock",
"driver": "h7992",
"radar_port": 1,
"positions": 2,
"default_position": 0,
"gpio_chip": "/dev/gpiochip0",
"pin_a": 17,
"pin_b": 27,
"invert_logic": false
},
"port2": {
"name": "port2",
"driver_mode": "mock",
"driver": "h7992",
"radar_port": 2,
"positions": 4,
"default_position": 0,
"gpio_chip": "/dev/gpiochip0",
"pin_a": 22,
"pin_b": 23,
"invert_logic": false
}
},
"control_button": {
"enabled": false,
"gpio_chip": "/dev/gpiochip0",
"pin": -1,
"active_low": true,
"bias": "",
"debounce_ms": 50,
"action": "capture_tmp_reference"
},
"run": {
"settling_ms": 0,
"idle_sleep_ms": 2,
"continuous": true,
"processing_live_config_path": "python_app/runtime/processing_live.json",
"locator_server": {
"device_id": 3,
"protocol_version": 1,
"host": "0.0.0.0",
"port": 8888,
"max_payload_bytes": 65536,
"client_queue_size": 32,
"logger_name": "locator_runtime"
},
"combos": [
{ "input": 0, "output": 0 },
{ "input": 1, "output": 0 },
{ "input": 2, "output": 0 },
{ "input": 3, "output": 0 },
{ "input": 0, "output": 1 },
{ "input": 1, "output": 1 },
{ "input": 2, "output": 1 },
{ "input": 3, "output": 1 }
]
},
"preprocess": {
"s21": {
"calibration": {
"set_name": "neutral_replay",
"bundle_path": ""
},
"reference": {
"set_name": "neutral_replay",
"bundle_path": ""
}
},
"s11": {
"calibration": {
"open": { "set_name": "", "bundle_path": "" },
"short": { "set_name": "", "bundle_path": "" },
"load": { "set_name": "", "bundle_path": "" }
},
"reference": { "set_name": "", "bundle_path": "" }
},
"notch": {
"enabled": false,
"bands_hz": [],
"taper_width_hz": 40000000.0,
"taper_type": "cosine"
}
},
"gpr": {
"relative_permittivity": 1.0,
"tx_geometry": [
{ "output_pos": 0, "x_m": 0.785, "y_m": 0.0, "z_m": 0.0 },
{ "output_pos": 1, "x_m": -0.785, "y_m": 0.0, "z_m": 0.0 }
],
"rx_geometry": [
{ "input_pos": 0, "x_m": -0.42, "y_m": 0.0, "z_m": 0.0 },
{ "input_pos": 1, "x_m": 0.48, "y_m": 0.0, "z_m": 0.0 },
{ "input_pos": 2, "x_m": 0.18, "y_m": 0.0, "z_m": 0.0 },
{ "input_pos": 3, "x_m": -0.12, "y_m": 0.0, "z_m": 0.0 }
]
},
"rings": {
"raw": {
"name": "/radar_raw_simulator",
"capacity": 50,
"slot_size_bytes": 2097152
},
"raw_tap": {
"name": "/radar_raw_tap_simulator",
"capacity": 50,
"slot_size_bytes": 2097152
},
"preprocessed": {
"name": "/radar_preprocessed_simulator",
"capacity": 50,
"slot_size_bytes": 2097152
},
"preprocessed_tap": {
"name": "/radar_preprocessed_tap_simulator",
"capacity": 50,
"slot_size_bytes": 2097152
},
"results": {
"name": "/radar_results_simulator",
"capacity": 50,
"slot_size_bytes": 2097152
}
},
"gui": {
"version": 1,
"switches": {
"combo_mode": "text",
"combos_text": "0:0,1:0,2:0,3:0,0:1,1:1,2:1,3:1",
"single_input": "0",
"single_output": "0"
},
"processing": {
"selected_mode": "sar3d",
"sar3d": {
"input_positions": "0,1,2,3",
"output_positions": "0,1",
"min_depth_m": 3.2,
"max_depth_m": 10.0,
"start_freq_mhz": 2000.0,
"stop_freq_mhz": 6000.0,
"speed_m_s": 0.854,
"ignore_socket_speed_enabled": true,
"look_angle_deg": 6.0,
"direction_sign": 1.0,
"apply_freq_phase_correction": true,
"frame_radius": 6,
"edge_frame_weight": 0.75,
"pitch_deg": 6.0,
"center_depth_m": 5.6,
"half_width_x_m": 1.8,
"half_width_y_m": 1.0,
"half_width_z_m": 1.8,
"grid_nx": 150,
"grid_ny": 120,
"grid_nz": 160,
"use_compensation": true,
"normalize_pairs": true
}
},
"preprocess_dialog": {
"set_name": "neutral_replay",
"radar_config_dir": "",
"use_all_radar_configs": false,
"median_sweep_count": 5
}
}
}