77 lines
2.2 KiB
YAML
77 lines
2.2 KiB
YAML
# Geofence Configuration
|
|
# GPS is ONLY used for safety boundaries, NOT navigation
|
|
|
|
/**:
|
|
ros__parameters:
|
|
|
|
geofence:
|
|
enabled: true
|
|
|
|
# Fence type
|
|
type: "polygon" # Options: "polygon", "circle", "cylinder"
|
|
|
|
# Polygon fence (GPS coordinates for safety boundary)
|
|
polygon_fence:
|
|
points:
|
|
- latitude: 47.397742
|
|
longitude: 8.545594
|
|
- latitude: 47.398242
|
|
longitude: 8.545594
|
|
- latitude: 47.398242
|
|
longitude: 8.546094
|
|
- latitude: 47.397742
|
|
longitude: 8.546094
|
|
|
|
# Close the polygon automatically
|
|
auto_close: true
|
|
|
|
# Circular fence (alternative to polygon)
|
|
circle_fence:
|
|
center_latitude: 47.397742
|
|
center_longitude: 8.545594
|
|
radius_meters: 100
|
|
|
|
# Cylinder fence (circle + altitude limits)
|
|
cylinder_fence:
|
|
center_latitude: 47.397742
|
|
center_longitude: 8.545594
|
|
radius_meters: 100
|
|
min_altitude: 0 # meters AGL
|
|
max_altitude: 50 # meters AGL
|
|
|
|
# Altitude limits (applies to all fence types)
|
|
altitude_limits:
|
|
min_altitude: 0.0 # meters AGL
|
|
max_altitude: 50.0 # meters AGL
|
|
enable_floor: true
|
|
enable_ceiling: true
|
|
|
|
# Fence actions
|
|
actions:
|
|
on_breach: "RTL" # Options: "RTL", "LAND", "HOLD", "ALERT_ONLY"
|
|
warning_distance: 10.0 # meters from fence
|
|
warning_action: "ALERT" # Options: "ALERT", "SLOW_DOWN"
|
|
|
|
# Monitoring
|
|
check_rate: 10 # Hz
|
|
consecutive_breaches_required: 3 # Require 3 consecutive breaches before action
|
|
|
|
# Visualization
|
|
publish_markers: true
|
|
marker_topic: "/geofence/markers"
|
|
marker_color:
|
|
safe: {r: 0.0, g: 1.0, b: 0.0, a: 0.5}
|
|
warning: {r: 1.0, g: 1.0, b: 0.0, a: 0.7}
|
|
breach: {r: 1.0, g: 0.0, b: 0.0, a: 0.9}
|
|
|
|
# Multi-vehicle support
|
|
vehicles:
|
|
uav:
|
|
enabled: true
|
|
namespace: "/uav"
|
|
gps_topic: "/uav/mavros/global_position/global"
|
|
ugv:
|
|
enabled: true
|
|
namespace: "/ugv"
|
|
gps_topic: "/ugv/gps/fix"
|