|
| using | Locomotion = bb_controls_msgs::action::Locomotion |
| |
| using | GoalHandleLocomotion = rclcpp_action::ServerGoalHandle< Locomotion > |
| |
| static const std::unordered_map< std::string_view, double Params::* > | DOUBLE_PARAM_MAP |
| | Maps ROS parameter names to their corresponding Params member pointers. More...
|
| |
| static const std::unordered_map< std::string_view, bool Params::* > | BOOL_PARAM_MAP |
| |
| void | control_loop () |
| | Executes one iteration of the 20 Hz control loop. More...
|
| |
| void | publish_controller_status (const Vehicle::ControllerStatus &status) |
| | Publishes a ControllerStatus message from the given status snapshot. More...
|
| |
| void | debug_publish_loop () |
| | Drains the debug queue and publishes all pending messages. More...
|
| |
| rcl_interfaces::msg::SetParametersResult | parameters_callback (const std::vector< rclcpp::Parameter > ¶meters) |
| | Callback invoked by the ROS parameter system when any parameter changes. More...
|
| |
| void | declare_controller_params () |
| | Registers all entries in DOUBLE_PARAM_MAP / BOOL_PARAM_MAP with the ROS parameter server. More...
|
| |
| void | load_params_from_server () |
| | Reads all declared ROS parameters into config_. More...
|
| |
| void | apply_config_to_vehicle () |
| | Applies config_ to the Vehicle's dynamics model, controller gains, and limits. More...
|
| |
| void | sub_callback_world_position (const nav_msgs::msg::Odometry::ConstSharedPtr &m) |
| | Odometry subscriber callback — updates vehicle state and starts the control loop. More...
|
| |
| void | sub_callback_battery_voltage (const bb_sensor_msgs::msg::BatteriesWithId::ConstSharedPtr &msg) |
| | Battery subscriber callback — forwards the minimum cell voltage to the Vehicle. More...
|
| |
| void | sub_callback_teleop_force (const geometry_msgs::msg::Twist::ConstSharedPtr &msg) |
| | Teleop subscriber callback — allocates the raw force directly if the controller is disabled. More...
|
| |
| void | srv_callback_controller (const std::shared_ptr< bb_controls_msgs::srv::Controller::Request > req, std::shared_ptr< bb_controls_msgs::srv::Controller::Response > res) |
| | Service callback to enable (stationkeep) or disable the controller. More...
|
| |
| void | srv_callback_trajectory_xyz (const std::shared_ptr< bb_controls_msgs::srv::SplineTraj::Request > req, std::shared_ptr< bb_controls_msgs::srv::SplineTraj::Response > res) |
| | Service callback to request a straight XYZ or multi-waypoint spline trajectory. More...
|
| |
| void | srv_callback_encircle_traj (const std::shared_ptr< bb_controls_msgs::srv::EncircleTraj::Request > req, std::shared_ptr< bb_controls_msgs::srv::EncircleTraj::Response > res) |
| | Service callback to request a circular arc (encircle) trajectory. More...
|
| |
| rclcpp_action::GoalResponse | poly_handle_goal (const rclcpp_action::GoalUUID &uuid, std::shared_ptr< const Locomotion::Goal > goal) |
| | Action server goal handler — rejects goals when the controller is disabled. More...
|
| |
| rclcpp_action::CancelResponse | poly_handle_cancel (const std::shared_ptr< GoalHandleLocomotion > goal_handle) |
| | Action server cancel handler — always accepts cancel requests. More...
|
| |
| void | poly_handle_accepted (const std::shared_ptr< GoalHandleLocomotion > goal_handle) |
| | Action server accepted handler — preempts any active goal and starts a new execute thread. More...
|
| |
| void | poly_execute_action (const std::shared_ptr< GoalHandleLocomotion > goal_handle) |
| | Executes a Locomotion action: plans trajectory, waits for completion, checks tolerances. More...
|
| |
| std::once_flag | control_loop_started_ |
| | Flag for starting control loop. More...
|
| |
| const std::string | vehicle_frame_id_ |
| | TF child_frame_id of the vehicle body frame. More...
|
| |
| const std::string | world_frame_id_ |
| | TF frame_id of the world frame. More...
|
| |
| std::unique_ptr< Vehicle > | auv_ |
| | Encapsulated vehicle control stack. More...
|
| |
| rclcpp::Subscription< nav_msgs::msg::Odometry >::SharedPtr | world_sub_ |
| |
| rclcpp::Subscription< bb_sensor_msgs::msg::BatteriesWithId >::SharedPtr | battery_sub_ |
| |
| rclcpp::Subscription< geometry_msgs::msg::Twist >::SharedPtr | teleop_force_sub_ |
| |
| rclcpp::Publisher< geometry_msgs::msg::WrenchStamped >::SharedPtr | pub_controller_force_ |
| |
| rclcpp::Publisher< bb_controls_msgs::msg::ControllerStatus >::SharedPtr | pub_status_ |
| |
| rclcpp::Publisher< geometry_msgs::msg::PoseArray >::SharedPtr | pub_traj_viz_ |
| |
| rclcpp::Publisher< bb_controls_msgs::msg::Thrusters >::SharedPtr | pub_thruster_commands_ |
| |
| rclcpp::Publisher< geometry_msgs::msg::WrenchStamped >::SharedPtr | pub_allocator_force_ |
| |
| rclcpp::Publisher< bb_controls_msgs::msg::ThrusterForces >::SharedPtr | pub_thruster_forces_ |
| |
| rclcpp::TimerBase::SharedPtr | control_loop_timer_ |
| |
| rclcpp::TimerBase::SharedPtr | debug_publish_timer_ |
| |
| moodycamel::ConcurrentQueue< DebugMessage > | debug_queue_ |
| | Lock-free queue through which the control loop passes debug messages to the publish timer. More...
|
| |
| rclcpp::Service< bb_controls_msgs::srv::Controller >::SharedPtr | controller_srv_ |
| |
| rclcpp::Service< bb_controls_msgs::srv::SplineTraj >::SharedPtr | spline_traj_srv_ |
| |
| rclcpp::Service< bb_controls_msgs::srv::EncircleTraj >::SharedPtr | encircle_traj_srv_ |
| |
| rclcpp_action::Server< Locomotion >::SharedPtr | poly_action_server_ |
| |
| std::mutex | action_goal_mutex_ |
| |
| std::shared_ptr< GoalHandleLocomotion > | current_action_goal_ |
| |
| std::atomic< bool > | shutdown_requested_ {false} |
| | Signals the action execution thread to exit its loop. More...
|
| |
| std::thread | action_execute_thread_ |
| | Thread running action execute method; joined before destruction. More...
|
| |
| OnSetParametersCallbackHandle::SharedPtr | callback_handle_ |
| |
| Params | config_ |
| | Local snapshot of ROS parameters, pushed to Vehicle subsystems on change. More...
|
| |
| double | prev_time_ = 0.0 |
| | ROS timestamp of the previous control loop iteration. More...
|
| |
| rclcpp::CallbackGroup::SharedPtr | odom_cb_group_ |
| |
| rclcpp::CallbackGroup::SharedPtr | control_loop_cb_group_ |
| |
| rclcpp::CallbackGroup::SharedPtr | services_cb_group_ |
| |
| rclcpp::CallbackGroup::SharedPtr | actions_cb_group_ |
| |
| rclcpp::CallbackGroup::SharedPtr | aux_cb_group_ |
| |
| static constexpr int | CONTROL_LOOP_RATE = 20 |
| | Control loop frequency in Hz. More...
|
| |
| static constexpr double | MIN_DEPTH_CLAMP = 0.00 |
| | Minimum depth value clamp to avoid near-zero depth noise (m) More...
|
| |
| static constexpr double | POSITION_JUMP_THRESHOLD = 0.5 |
| | Position jump threshold for outlier rejection (m) More...
|
| |