37 double vel,
double dir,
double ramp_time,
double rot_speed);
45 "Wrong vehicle kinematic class, expected `CVehicleVelCmd_Holo`");
mrpt::math::TPose2D m_odometry
CVehicleVelCmd::Ptr getVelCmdType() const override
Gets an empty velocity command object that can be queried to find out the number of velcmd components...
This class can be used to simulate the kinematics and dynamics of a differential driven planar mobile...
mrpt::math::TTwist2D init_vel
void sendVelRampCmd(double vel, double dir, double ramp_time, double rot_speed)
Sends a velocity cmd to the holonomic robot.
void internal_simulControlStep(const double dt) override
Virtual base for velocity commands of different kinematic models of planar mobile robot...
2D twist: 2D velocity vector (vx,vy) + planar angular velocity (omega)
CVehicleVelCmd_Holo kinematic_cmd_t
double ramp_time
: Blending time between current and target time.
void sendVelCmd(const CVehicleVelCmd &cmd_vel) override
Sends a velocity command to the robot.
double dir_local
: direction, relative to the current robot heading (radians).
double issue_time
time when the cmd was issued.
#define ASSERTMSG_(f, __ERROR_MSG)
Defines an assertion mechanism.
Kinematic simulator of a holonomic 2D robot capable of moving in any direction, with "blended" veloci...
void internal_clear() override
Resets all pending cmds.
std::shared_ptr< CVehicleVelCmd > Ptr
TVelRampCmd m_vel_ramp_cmd
the last cmd received from the user.
double rot_speed
: (rad/s) rotational speed for rotating such as the robot slowly faces forward.
double phi
Orientation (rads)