35 void sendVelRampCmd(
double vel,
double dir,
double ramp_time,
double rot_speed);
39 ASSERTMSG_(cmd,
"Wrong vehicle kinematic class, expected `CVehicleVelCmd_Holo`");
52 double target_vel_x, target_vel_y, ramp_time, rot_speed,
dir;
60 void internal_simulControlStep(
const double dt)
MRPT_OVERRIDE;
Kinematic simulator of a holonomic 2D robot capable of moving in any direction, with "blended" veloci...
CVehicleVelCmdPtr getVelCmdType() const MRPT_OVERRIDE
Gets an empty velocity command object that can be queried to find out the number of velcmd components...
CVehicleVelCmd_Holo kinematic_cmd_t
TVelRampCmd m_vel_ramp_cmd
the last cmd received from the user.
void sendVelCmd(const CVehicleVelCmd &cmd_vel) MRPT_OVERRIDE
Sends a velocity command to the robot.
This class can be used to simulate the kinematics and dynamics of a differential driven planar mobile...
double rot_speed
: (rad/s) rotational speed for rotating such as the robot slowly faces forward.
double ramp_time
: Blending time between current and target time.
double dir_local
: direction, relative to the current robot heading (radians). 0 means forward.
Virtual base for velocity commands of different kinematic models of planar mobile robot.
#define KINEMATICS_IMPEXP
#define MRPT_OVERRIDE
C++11 "override" for virtuals:
#define ASSERTMSG_(f, __ERROR_MSG)
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
double issue_time
time when the cmd was issued. (<0: invalid, means there are no pending cmds to execute)
mrpt::math::TTwist2D init_vel
2D twist: 2D velocity vector (vx,vy) + planar angular velocity (omega)