mirror of
https://github.com/azaion/detections-semantic.git
synced 2026-04-23 01:36:36 +00:00
8e2ecf50fd
Made-with: Cursor
41 lines
1.6 KiB
Markdown
41 lines
1.6 KiB
Markdown
# Environment Strategy
|
|
|
|
## Environments
|
|
|
|
| Environment | Purpose | Hardware | Inference | Gimbal |
|
|
|-------------|---------|----------|-----------|--------|
|
|
| Development | Local dev + tests | x86 workstation with NVIDIA GPU | ONNX Runtime or TRT on dev GPU | Mock (TCP socket) |
|
|
| Production | Field deployment on UAV | Jetson Orin Nano Super (ruggedized) | TensorRT FP16 | Real ViewPro A40 |
|
|
|
|
CI testing uses the Development environment with Docker (mock everything).
|
|
HIL testing uses the Production environment on a bench Jetson.
|
|
|
|
## Configuration
|
|
|
|
Single YAML config file per environment:
|
|
- `config.dev.yaml` — mock gimbal, console logging, ONNX Runtime
|
|
- `config.prod.yaml` — real gimbal, NVMe logging, thermal monitoring
|
|
|
|
Config is a file on disk, not environment variables. Updated via USB in production.
|
|
|
|
## Environment-Specific Overrides
|
|
|
|
| Config Key | Development | Production |
|
|
|-----------|-------------|------------|
|
|
| inference_engine | onnxruntime | tensorrt_fp16 |
|
|
| gimbal_mode | mock_tcp | real_uart |
|
|
| vlm_enabled | false (or stub) | true |
|
|
| recording_enabled | false | true |
|
|
| thermal_monitor | false | true |
|
|
| log_output | console | file (NVMe) |
|
|
|
|
## Field Update Procedure
|
|
|
|
1. Prepare USB drive: Docker image tar, TRT engines (if changed), config.yaml, update.sh
|
|
2. Connect USB to Jetson
|
|
3. Run `update.sh`: stops services → loads new images → copies files → restarts
|
|
4. Verify: health endpoint returns 200, test frame produces detection
|
|
5. Remove USB
|
|
|
|
If update fails: re-run with previous package from USB, or re-flash Jetson from known-good image.
|