Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
parameters.cpp
Go to the documentation of this file.
2
29
59
61 std::string global_config_path =
62 common_lib::config_load::get_config_yaml_path("control", "global", "global_config");
63 RCLCPP_DEBUG(rclcpp::get_logger("control"), "Loading global config from: %s",
64 global_config_path.c_str());
65 YAML::Node global_config = YAML::LoadFile(global_config_path);
66
67 std::string adapter = global_config["global"]["adapter"].as<std::string>();
68 this->using_simulated_slam_ = global_config["global"]["use_simulated_se"].as<bool>();
70 global_config["global"]["use_simulated_velocities"].as<bool>();
71 this->use_simulated_planning_ = global_config["global"]["use_simulated_planning"].as<bool>();
72
73 std::string control_path =
74 common_lib::config_load::get_config_yaml_path("control", "control", adapter);
75 RCLCPP_DEBUG(rclcpp::get_logger("control"), "Loading control config from: %s",
76 control_path.c_str());
77 YAML::Node control = YAML::LoadFile(control_path);
78
79 auto control_config = control["control"];
80 RCLCPP_DEBUG(rclcpp::get_logger("control"), "Control config contents: %s",
81 YAML::Dump(control_config).c_str());
82
83 this->control_solver_ = control_config["control_solver"].as<std::string>();
84 this->lateral_controller_ = control_config["lateral_controller"].as<std::string>();
85 this->longitudinal_controller_ = control_config["longitudinal_controller"].as<std::string>();
86 this->pure_pursuit_lookahead_gain_ = control_config["pure_pursuit_lookahead_gain"].as<double>();
87 this->pure_pursuit_lookahead_minimum_ = control_config["pure_pursuit_lookahead_minimum"].as<double>();
88 this->pure_pursuit_lpf_alpha_ = control_config["pure_pursuit_lpf_alpha"].as<double>();
89 this->pure_pursuit_lpf_initial_value_ = control_config["pure_pursuit_lpf_initial_value"].as<double>();
90 this->first_last_max_dist_ = control_config["first_last_max_dist"].as<double>();
91 this->pid_kp_ = control_config["pid_kp"].as<double>();
92 this->pid_ki_ = control_config["pid_ki"].as<double>();
93 this->pid_kd_ = control_config["pid_kd"].as<double>();
94 this->pid_tau_ = control_config["pid_tau"].as<double>();
95 this->pid_t_ = control_config["pid_t"].as<double>();
96 this->pid_lim_min_ = control_config["pid_lim_min"].as<double>();
97 this->pid_lim_max_ = control_config["pid_lim_max"].as<double>();
98 this->pid_anti_windup_ = control_config["pid_anti_windup"].as<double>();
99 this->pid_max_positive_error_ = control_config["pid_max_positive_error"].as<double>();
100 this->pid_max_negative_error_ = control_config["pid_max_negative_error"].as<double>();
101 this->map_frame_id_ = adapter == "eufs" ? "base_footprint" : "map";
102 this->command_time_interval_ = control_config["command_time_interval"].as<int>();
103
104 return adapter;
105}
std::string get_config_yaml_path(const std::string &package_name, const std::string &dir, const std::string &filename)
std::string longitudinal_controller_
double pure_pursuit_lpf_initial_value_
double pure_pursuit_lookahead_gain_
std::string load_config()
double pure_pursuit_lookahead_minimum_
ControlParameters & operator=(const ControlParameters &other)
common_lib::car_parameters::CarParameters car_parameters_
std::string control_solver_
double pid_max_positive_error_
ControlParameters()=default
bool using_simulated_velocities_
std::string map_frame_id_
std::string lateral_controller_
double pid_max_negative_error_
double first_last_max_dist_
double pure_pursuit_lpf_alpha_