4 YAML::Node config = YAML::LoadFile(config_path);
6 auto model_config = config[
"vehicle_model"][
"simple_bicycle_model"];
9 lr_ = model_config[
"kinematics"][
"lr"].as<
double>();
10 lf_ = model_config[
"kinematics"][
"lf"].as<
double>();
11 sf_ = model_config[
"kinematics"][
"sf"].as<
double>();
12 sr_ = model_config[
"kinematics"][
"sr"].as<
double>();
13 h_cg_ = model_config[
"kinematics"][
"h_cg"].as<
double>();
15 model_config[
"kinematics"][
"max_steering_angle"].as<
double>() * M_PI / 180.0;
18 Blat_ = model_config[
"tire"][
"Blat"].as<
double>();
19 Clat_ = model_config[
"tire"][
"Clat"].as<
double>();
20 Dlat_ = model_config[
"tire"][
"Dlat"].as<
double>();
21 Elat_ = model_config[
"tire"][
"Elat"].as<
double>();
24 cla_ = model_config[
"aero"][
"cla"].as<
double>();
25 cda_ = model_config[
"aero"][
"cda"].as<
double>();
26 aero_area_ = model_config[
"aero"][
"aeroArea"].as<
double>();
29 mass_ = model_config[
"m"].as<
double>();
30 Izz_ = model_config[
"Izz"].as<
double>();
34 gear_ratio_ = model_config[
"gearRatio"].as<
double>();
double max_steering_angle_
std::string get_model_name() const override
void set_velocity(double vx) override
void set_position(double x, double y, double yaw) override
void step(double dt) override
double get_yaw() const override
void set_throttle(double throttle) override
BicycleModel(const std::string &config_path)
double get_velocity_x() const override
double get_position_x() const override
void set_steering(double angle) override
double get_position_y() const override