.. _Topics: Topics ====== Topics are names under which data samples are published. Any number of subscribers can then receive the published data. Topics are arranged in a tree and it is possible to subscribe to a whole sub-tree. For example a subscription to ``input`` will receive samples from ``input.joy`` as well as ``input.velocity_cmd``. Topics do not have an assigned data type, but in most cases only a specific data type is published. input ----- ``input.joy`` [:ref:`pilot.JoyData`] Joystick input samples, published only when a Joystick is connected and controls are operated. ``input.velocity_cmd`` [:ref:`pilot.VelocityCmd`] Joystick velocity commands. local_planner ------------- ``local_planner.state`` [:ref:`pilot.LocalPlannerState`] :ref:`LocalPlanner` state updates. ``local_planner.target_pose`` [:ref:`pilot.Pose2D`] :ref:`LocalPlanner` target pose updates. localization ------------ ``localization.map_tile`` [:ref:`pilot.OccupancyMapData`] Localization map tile, ie. current section of the :ref:`GridMap`. ``localization.particles`` [:ref:`pilot.PoseArray2D`] Localization particle swarm in ``map`` coordinates. ``localization.status`` [:ref:`pilot.LocalizationStatus`] Localization status updates. mapping ------- ``mapping.grid_map`` [:ref:`pilot.OccupancyMapData`] New :ref:`GridMap` created by mapping. ``mapping.pose_graph`` [:ref:`pilot.RoadMapData`] Mapping pose graph. movechain --------- ``movechain.status`` [:ref:`pilot.MovechainStatus`] :ref:`MovechainHandler` status updates. navigation ---------- ``navigation.footprint`` [:ref:`pilot.Footprint`] Platform footprint. ``navigation.global_cost_map`` [:ref:`pilot.CostMapData`] Global cost map. ``navigation.global_path`` [:ref:`pilot.Path2D`] Current global path in ``map`` coordinates. ``navigation.grid_map`` [:ref:`pilot.OccupancyMapData`] Current :ref:`GridMap`. ``navigation.initial_pose`` [:ref:`pilot.Pose2D`] Pose estimates to intialize Localization. ``navigation.local_cost_map`` [:ref:`pilot.CostMapData`] Local cost map. ``navigation.local_cost_map_overlay`` [:ref:`pilot.CostMapData`] Local cost map with global cost map overlayed. ``navigation.local_path`` [:ref:`pilot.Path2D`] Current optimized local path in ``odom`` coordinates. ``navigation.map_match`` [:ref:`pilot.MapMatch`] Current map match. ``navigation.map_pose`` [:ref:`pilot.Pose2D`] Current map pose in ``map`` coordinates. ``navigation.new_goal_pose`` [:ref:`pilot.Pose2D`] New goals can be published here. ``navigation.new_grid_map`` [:ref:`pilot.OccupancyMapData`] New :ref:`GridMap` can be published here. ``navigation.new_road_map`` [:ref:`pilot.RoadMapData`] New :ref:`RoadMap` can be published here. ``navigation.odom_pose`` [:ref:`pilot.Pose2D`] Current local pose in ``odom`` coordinates. ``navigation.road_map`` [:ref:`pilot.RoadMapData`] Current :ref:`RoadMap`. ``navigation.velocity_cmd`` [:ref:`pilot.VelocityCmd`] Velocity commands from :ref:`LocalPlanner`. network ------- ``network.beacons`` [:ref:`pilot.Beacon`] Beacons for fleet management. platform -------- ``platform.battery_state`` [:ref:`pilot.BatteryState`] Battery state updates. ``platform.emergency_state`` [:ref:`pilot.EmergencyState`] Emergency state updates. ``platform.events`` [:ref:`pilot.Event`, :ref:`pilot.Incident`] Generic events. ``platform.incidents`` [:ref:`pilot.Incident`] External incidents, to be handled by :ref:`PilotServer`. ``platform.active_incidents`` [:ref:`pilot.ActiveIncidents`] List of currently active incidents. ``platform.info`` [:ref:`pilot.PlatformInfo`] Static platform info. ``platform.odometry`` [:ref:`pilot.Odometry`] Odometry samples. ``platform.pilot_state`` [:ref:`pilot.PilotState`] Pilot state updats. ``platform.system_state`` [:ref:`pilot.SystemStatus`] System state update. ``platform.velocity_cmd`` [:ref:`pilot.VelocityCmd`] Custom velocity commands. sensors ------- ``sensors.point_cloud.*`` [:ref:`pilot.PointCloud2D`, :ref:`pilot.LaserPointCloud`] Laser point clouds in ``odom`` coordinates. task_handler ------------ ``task_handler.current_task`` [:ref:`pilot.ExecutionState`] Current task being executed by :ref:`TaskHandler` module. ``task_handler.current_event_task`` [:ref:`pilot.ExecutionState`] Current event task being executed by :ref:`TaskHandler` module. ``task_handler.execution_history`` [:ref:`pilot.ExecutionHistory`] Execution history of :ref:`TaskHandler` module. ``task_handler.event_history`` [:ref:`pilot.ExecutionHistory`] Event execution history of :ref:`TaskHandler` module. tf -- ``tf.map.odom`` [:ref:`pilot.Pose2D`] Localization updates. ``tf.odom.base_link`` [:ref:`pilot.Odometry`] Odometry samples. tfd.map ------- ``tfd.map.local_planner.target_pose`` [:ref:`pilot.Pose2D`] Same as `local_planner.target_pose` but in ``map`` coordinates. ``tfd.map.navigation.local_path`` [:ref:`pilot.Pose2D`] Same as `navigation.local_path` but in ``map`` coordinates. ``tfd.map.sensors.point_cloud.*`` [:ref:`pilot.Pose2D`] Same as `sensors.point_cloud.*` but in ``map`` coordinates. vnx --- ``vnx.log_out`` [:ref:`vnx.LogMsg`] Terminal log messags. ``vnx.module_info`` [:ref:`vnx.ModuleInfo`] Module info updates. ``vnx.recorder_status`` [:ref:`vnx.RecorderStatus`] Status information of the data recorder, when active.