15 #ifndef SIMPLE_PLANNING_SIMULATOR__VEHICLE_MODEL__SIM_MODEL_DELAY_STEER_VEL_HPP_
16 #define SIMPLE_PLANNING_SIMULATOR__VEHICLE_MODEL__SIM_MODEL_DELAY_STEER_VEL_HPP_
19 #include <eigen3/Eigen/Core>
20 #include <eigen3/Eigen/LU>
46 double vx_lim,
double steer_lim,
double vx_rate_lim,
double steer_rate_lim,
double wheelbase,
47 double dt,
double vx_delay,
double vx_time_constant,
double steer_delay,
48 double steer_time_constant,
double steer_dead_band);
56 const double MIN_TIME_CONSTANT;
71 const double vx_rate_lim_;
72 const double steer_lim_;
73 const double steer_rate_lim_;
74 const double wheelbase_;
75 double prev_vx_ = 0.0;
76 double current_ax_ = 0.0;
78 std::deque<double> vx_input_queue_;
79 std::deque<double> steer_input_queue_;
80 const double vx_delay_;
81 const double vx_time_constant_;
83 const double steer_delay_;
86 const double steer_dead_band_;
92 void initializeInputQueue(
const double & dt);
97 double getX()
override;
102 double getY()
override;
107 double getYaw()
override;
112 double getVx()
override;
117 double getVy()
override;
122 double getAx()
override;
127 double getWz()
override;
132 double getSteer()
override;
138 void update(
const double & dt)
override;
145 Eigen::VectorXd calcModel(
const Eigen::VectorXd & state,
const Eigen::VectorXd & input)
override;
calculate delay steering dynamics
Definition: sim_model_delay_steer_vel.hpp:29
SimModelDelaySteerVel(double vx_lim, double steer_lim, double vx_rate_lim, double steer_rate_lim, double wheelbase, double dt, double vx_delay, double vx_time_constant, double steer_delay, double steer_time_constant, double steer_dead_band)
constructor
Definition: sim_model_delay_steer_vel.cpp:18
~SimModelDelaySteerVel()=default
destructor
simple_planning_simulator vehicle model class to calculate vehicle dynamics
Definition: sim_model_interface.hpp:26