feat: weather awareness (Issue #442) #448
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "sl-android/issue-446-patrol"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Sensor fusion + adaptive behavior
Add autonomous patrol mode with idle behaviors and social integration: Patrol Node: - Nav2 /navigate_to_pose integration for autonomous navigation - Idle behaviors at each waypoint (10-30s pan-tilt sweep + greetings) - Person detection → pause patrol → social mode → resume - Battery monitoring: automatic return to dock at <25% - Teleop override: can be interrupted by joystick control - Voice commands: 'patrol start/stop' via speech - Randomized waypoint order for variety - State publishing to /saltybot/patrol_state Features: - Waypoint loading from patrol_params.yaml (x, y, yaw coordinates) - Random idle durations (configurable 10-30s) - Pan-tilt sweep and greeting at each waypoint - Person detection pause with timeout - Automatic dock return when battery low - Polling loop for state management - Voice control integration State Machine: IDLE ↔ NAVIGATE → IDLE_BEHAVIOR → (next waypoint) ↓ [Person Detected] → PAUSE_PERSON ↓ [Battery Low] → RETURN_TO_DOCK ↓ [Teleop/Voice] → IDLE Configuration: - Waypoints with name, x, y, yaw - Idle time range (min/max) - Battery dock threshold (default 25%) - Person detection pause timeout Topics: - /saltybot/patrol_state (String) - /saltybot/speech_text (String) - /saltybot/pan_tilt_cmd (String) - /saltybot/person_detections (Detection2DArray) - /saltybot/teleop_cmd (String) - /saltybot/voice_cmd (String) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>