Mission Control
Task Specification
| Task | How to trigger | What happens when triggered | Node that handles this | Mission Control Assigned to/Complete? | Node Assigned to/Complete? |
|---|---|---|---|---|---|
| Request RGB data | Send std_msgs::Empty to topic /robot/request_rgb | Publish latest RGB data as sensor_msgs::Image to topic /mission_ctrl/requested_rgb | orp_src_interface |
| Adam COMPLETE |
| Request depth data | Send std_msgs::Empty to topic /robot/request_depth | Publish latest depth data as sensor_msgs::PointCloud2 to topic /mission_ctrl/requested_depth | orp_src_interface |
| Adam COMPLETE |
| Display joint-plan interactive marker | Send std_msgs::String to topic /mission_ctrl/show_joint_marker The message string is the joint name to show the marker on. | Hide other joint-plan interactive markers, show 6-DOF interactive marker for the specified joint, starting at the joint's current position | should be called JointPlanMarkerServer | Dorothy | |
| Add joint-plan waypoint | Call service of type comm_comm::AddWaypoint to topic /mission_ctrl/add_joint_waypoint request.time = delta-t (from start of task) when to reach this waypoint response.pose = current pose of interactive marker | 1. Set service response to current position of joint-plan interactive marker 2. Update joint-plan path | JointPlanMarkerServer | Dorothy | |
| Update joint-plan path | Publish markers at each waypoint (small spheres or similar) Publish marker to show trajectory (spline, straight-line, etc.) between waypoints | MissionControlGUI | Marcelino | ||
| Display locomotion-plan interactive marker | Send std_msgs::Empty to topic /mission_ctrl/show_locomotion_marker | Hide other locomotion-plan interactive markers, show 3-DOF (x/y movement, rotation about z) interactive marker for the robot's center of pressure position, starting at the current center of pressure. | shouuld be called LocomotionPlanMarkerServer | Walt? | |
| Add locomotion-plan waypoint | Call service of type comm_comm::AddWaypoint at name /mission_ctrl/add_locomotion_waypoint request.time = delta-t (from start of task) when to reach this waypoint response.pose = current pose of interactive marker | 1. Set service response to current position of locomotion-plan interactive marker 2. Update locomotion path | LocomotionPlanMarkerServer | Walt? | |
| Update locomotion path | Send comm_comm::Waypoints list of joint poses to topic /mission_ctrl/locomotion_waypoints | Publish markers at each waypoint (small spheres or similar) Publish marker to show trajectory (spline, straight-line, etc.) between waypoints Show footstep locations | LocomotionPlanMarkerServer | Walt | |
| Display turn-in-place interactive marker | Send std_msgs::Empty to topic /mission_ctrl/show_turn_in_place_marker | Hide other turn-in-place interactive markers, show 1-DOF (rotation about Z) interactive marker for the robot's heading, starting at the robot's current heading. | InPlaceRotationPlanMarkerServer | ||
| Set turn-in-place rotation | Call service of type comm_comm::SetInPlaceRotation at name /mission_ctrl/set_in_place_rotation request = empty (no timestamp, it will take as long as it takes) response.heading = current heading (rotation) of interactive marker | Set service response to current z-rotation of the turn-in-place interactive marker | InPlaceRotationPlanMarkerServer | ||
| Set configuration state publisher rate | Call service of type std_msgs::Float32 at name /robot/joint_state_publisher/set_publish_rate. Value =The length of time between each configuration state publication | Set publishing node's internal loop rate | GazeboJointStatePublisher | ||
| Send prioritized task list to SRLib for execution | 1. Send all locomotion tasks in message of type std_msgs::Float64MultiArray to topic /simulator/locomotion_tasks 2. Send all joint path tasks in message of type std_msgs::Float64MultiArray to topic /simulator/joint_tasks | 1. Execute locomotion tasks in simulation 2. Execute joint path tasks in simulation | MissionControlGUI | Donghyun? | |
| Send prioritized task list to Gazebo for execution | 1. Send all locomotion tasks in message of type std_msgs::Float64MultiArray to topic /robot/locomotion_tasks 2. Send all joint path tasks in message of type std_msgs::Float64MultiArray to topic /robot/joint_tasks | 1. Execute locomotion tasks 2. Execute joint path tasks | MissionControlGUI | Donghyun? | |