trajectory_optimization v1.3.1
Loading...
Searching...
No Matches
trajectory_optimization_rws.hpp
Go to the documentation of this file.
1// Copyright Institute for Automotive Engineering (ika), RWTH Aachen University
2// SPDX-License-Identifier: Apache-2.0
3
4#pragma once
5
7
9
11 public:
17 explicit TrajectoryOptimizationRWSNode(const rclcpp::NodeOptions& options);
18
19 private:
25 void initializeTrajectory(trajectory_planning_msgs::msg::Trajectory& trajectory) override;
26
33 std::vector<double> getBiLevelX0(const perception_msgs::msg::EgoData& ego_data) override;
34
41 std::vector<double> getHighLevelX0(const perception_msgs::msg::EgoData& ego_data) override;
42
48 void convertToTrajectoryMsg(trajectory_planning_msgs::msg::Trajectory& trajectory) override;
49
57 static double projectVectorAonV(const geometry_msgs::msg::Vector3& a, const geometry_msgs::msg::Vector3& v);
58
66 double computeVehicleSlipAngle(const double& delta_front, const double& delta_rear) const;
67
68 // parameters
70 double distance_rear_axle_ = 1.7;
71
72 // model specific bi-level thresholds
75};
76
77} // namespace trajectory_optimization
void convertToTrajectoryMsg(trajectory_planning_msgs::msg::Trajectory &trajectory) override
Maps the optimized state trajectory into a trajectory message for a kinematic bicycle model with rear...
std::vector< double > getHighLevelX0(const perception_msgs::msg::EgoData &ego_data) override
Computes the initial optimizer state using high-level stabilization.
std::vector< double > getBiLevelX0(const perception_msgs::msg::EgoData &ego_data) override
Computes the initial optimizer state using bi-level stabilizaion.
static double projectVectorAonV(const geometry_msgs::msg::Vector3 &a, const geometry_msgs::msg::Vector3 &v)
Projects the acceleration vector onto the current direction of motion.
double computeVehicleSlipAngle(const double &delta_front, const double &delta_rear) const
Computes the kinematic vehicle slip angle from front and rear steering angles.
TrajectoryOptimizationRWSNode(const rclcpp::NodeOptions &options)
Initializes the optimization node for a kinematic bicycle model with rear wheel steering.
void initializeTrajectory(trajectory_planning_msgs::msg::Trajectory &trajectory) override
Initializes a drivable trajectory message for a kinematic bicycle model with rear wheel steering.
Namespace for trajectory_optimization package.