[P2] Patrol mode — autonomous waypoint circuit with idle behaviors #446

Closed
opened 2026-03-05 09:02:28 -05:00 by sl-jetson · 0 comments
Collaborator

Goal

SaltyBot autonomously patrols a set of waypoints when idle, performing social behaviors along the way.

Requirements

  • ROS2 node: load waypoints from patrol_params.yaml (list of lat/lon or map coordinates)
  • Use Nav2 /navigate_to_pose to move between waypoints
  • At each waypoint: pause 10-30s, look around (pan-tilt sweep), greet any detected people
  • If person detected during patrol: pause patrol, switch to social mode (greet/follow), resume patrol when person leaves
  • Loop continuously until: battery <25% (go to dock), voice command "stop patrol", teleop override
  • Publish /saltybot/patrol_state (PATROLLING, PAUSED_SOCIAL, PAUSED_TELEOP, RETURNING_DOCK)
  • Randomize waypoint order to appear less robotic
  • Configurable pause duration, patrol speed, social interrupt threshold
## Goal SaltyBot autonomously patrols a set of waypoints when idle, performing social behaviors along the way. ## Requirements - ROS2 node: load waypoints from patrol_params.yaml (list of lat/lon or map coordinates) - Use Nav2 /navigate_to_pose to move between waypoints - At each waypoint: pause 10-30s, look around (pan-tilt sweep), greet any detected people - If person detected during patrol: pause patrol, switch to social mode (greet/follow), resume patrol when person leaves - Loop continuously until: battery <25% (go to dock), voice command "stop patrol", teleop override - Publish /saltybot/patrol_state (PATROLLING, PAUSED_SOCIAL, PAUSED_TELEOP, RETURNING_DOCK) - Randomize waypoint order to appear less robotic - Configurable pause duration, patrol speed, social interrupt threshold
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: seb/saltylab-firmware#446
No description provided.