A MPPI Controller.
More...
#include <MPPIController.hpp>
|
| void | publish_mppi_markers (const std::vector< std::vector< std::pair< double, double > > > &all_trajs, const std::vector< std::pair< double, double > > &best_traj) |
| | Publishes MPPI markers for visualization.
|
|
| double | dt_ {0.1} |
| | Time step for MPPI.
|
| double | fov_ {M_PI / 2.0} |
| | Field of view for MPPI.
|
| int | horizon_steps_ {10} |
| | Prediction horizon for MPPI.
|
| double | lambda_ {0.1} |
| | Temperature parameter for MPPI.
|
| double | max_ang_acc_ {1.0} |
| | Maximum angular acceleration for MPPI.
|
| double | max_ang_vel_ {1.0} |
| | Maximum angular velocity for MPPI.
|
| double | max_lin_acc_ {0.5} |
| | Maximum linear acceleration for MPPI.
|
| double | max_lin_vel_ {1.0} |
| | Maximum linear velocity for MPPI.
|
| rclcpp::Publisher< visualization_msgs::msg::MarkerArray >::SharedPtr | mppi_candidates_pub_ |
| | Publisher for MPPI candidates markers.
|
| rclcpp::Publisher< visualization_msgs::msg::MarkerArray >::SharedPtr | mppi_optimal_pub_ |
| | Publisher for MPPI optimal path markers.
|
| int | num_samples_ {100} |
| | Number of samples for MPPI.
|
| std::unique_ptr< MPPIOptimizer > | optimizer_ |
| | MPPI optimizer.
|
| double | safety_radius_ {0.6} |
| | Safety radius for obstacle avoidance.
|
| geometry_msgs::msg::TwistStamped | twist_stamped_ |
| | Current velocity command.
|
◆ MPPIController()
◆ ~MPPIController()
◆ on_initialize()
Initializes parameters and MPPI controller.
- Exceptions
-
| std::runtime_error | if initialization fails. |
◆ publish_mppi_markers()
| void publish_mppi_markers |
( |
const std::vector< std::vector< std::pair< double, double > > > & | all_trajs, |
|
|
const std::vector< std::pair< double, double > > & | best_traj ) |
|
protected |
Publishes MPPI markers for visualization.
- Parameters
-
| all_trajs | All trajectories generated by MPPI. |
| best_traj | Optimal trajectory generated by MPPI. |
◆ update_rt()
| void update_rt |
( |
NavState & | nav_state | ) |
|
|
override |
Updates the controller using the given NavState.
- Parameters
-
| nav_state | Current navigation state, including odometry and planned path. |
◆ dt_
◆ fov_
◆ horizon_steps_
Prediction horizon for MPPI.
◆ lambda_
Temperature parameter for MPPI.
◆ max_ang_acc_
| double max_ang_acc_ {1.0} |
|
protected |
Maximum angular acceleration for MPPI.
◆ max_ang_vel_
| double max_ang_vel_ {1.0} |
|
protected |
Maximum angular velocity for MPPI.
◆ max_lin_acc_
| double max_lin_acc_ {0.5} |
|
protected |
Maximum linear acceleration for MPPI.
◆ max_lin_vel_
| double max_lin_vel_ {1.0} |
|
protected |
Maximum linear velocity for MPPI.
◆ mppi_candidates_pub_
| rclcpp::Publisher<visualization_msgs::msg::MarkerArray>::SharedPtr mppi_candidates_pub_ |
|
protected |
Publisher for MPPI candidates markers.
◆ mppi_optimal_pub_
| rclcpp::Publisher<visualization_msgs::msg::MarkerArray>::SharedPtr mppi_optimal_pub_ |
|
protected |
Publisher for MPPI optimal path markers.
◆ num_samples_
Number of samples for MPPI.
◆ optimizer_
◆ safety_radius_
| double safety_radius_ {0.6} |
|
protected |
Safety radius for obstacle avoidance.
◆ twist_stamped_
| geometry_msgs::msg::TwistStamped twist_stamped_ |
|
protected |
Current velocity command.
The documentation for this class was generated from the following files: