81 lines
1.8 KiB
YAML
81 lines
1.8 KiB
YAML
# Robot Tracker v009 — Encoder-PID Navigation
|
||
|
||
camera:
|
||
rtsp_url: "rtsp://192.168.0.30:8554/live"
|
||
width: 1280
|
||
height: 720
|
||
rtsp_transport: "udp"
|
||
reconnect_delay: 3.0
|
||
reconnect_max_attempts: 0
|
||
|
||
server:
|
||
host: "0.0.0.0"
|
||
port: 80
|
||
broadcast_hz: 30
|
||
|
||
tracker:
|
||
tag_family: "tag36h11"
|
||
detector_threads: 2
|
||
quad_decimate: 1.0
|
||
quad_sigma: 0.0
|
||
refine_edges: 1
|
||
decode_sharpening: 0.25
|
||
ema_alpha_pos: 0.35
|
||
ema_alpha_ang: 0.35
|
||
ema_alpha_vel: 0.25
|
||
hold_seconds: 0.80
|
||
predict_seconds: 0.25
|
||
|
||
robots:
|
||
tcp_port: 8765
|
||
robot_tag_ids: [91]
|
||
goal_radius: 80 # mm — Ankunftsradius
|
||
|
||
# Geschwindigkeiten in mm/s
|
||
speed_base: 160 # mm/s Fahrgeschwindigkeit
|
||
speed_turn: 90 # mm/s Drehgeschwindigkeit (nur bei >120°)
|
||
speed_min: 50 # mm/s Minimum
|
||
speed_max: 350 # mm/s Maximum
|
||
angle_threshold: 120 # Grad — jetzt nur noch für spin
|
||
|
||
# Dead Reckoning
|
||
dead_reckoning_timeout: 0.5 # Sekunden ohne Tag → Encoder-Schätzung nutzen
|
||
|
||
calibration:
|
||
reference_tags:
|
||
0: [0.0, 0.0 ]
|
||
1: [100.5, 0.0 ]
|
||
2: [0.0, 181.0]
|
||
3: [100.5, 181.0]
|
||
min_tags_required: 4
|
||
|
||
obstacles:
|
||
safe_distance: 150
|
||
repulsion_strength: 1500 # war 5000 — sanftere Abstoßung, kein Richtungssprung
|
||
obstacle_tag_ids:
|
||
- 11
|
||
- 12
|
||
- 21
|
||
- 22
|
||
- 31
|
||
- 32
|
||
- 41
|
||
- 42
|
||
- 51
|
||
- 52
|
||
- 61
|
||
- 62
|
||
- 71
|
||
- 72
|
||
- 81
|
||
- 82
|
||
- 92
|
||
|
||
# Roboter Hardware-Parameter für Encoder-PID
|
||
robot_hardware:
|
||
wheel_diameter_mm: 67.0 # Außendurchmesser Rad
|
||
wheel_circumference_mm: 210.5 # π × 67
|
||
encoder_pulses_per_rev: 20 # Löcher in der Lochscheibe
|
||
mm_per_pulse: 10.525 # Umfang / Pulse = 210.5 / 20
|
||
axle_width_mm: 121.0 # Mitte Rad links zu Mitte Rad rechts
|
||
pulses_per_360deg: 36.1 # Drehkreis / mm_per_pulse
|