ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
The default wild thumper can not measure its speed, which is required. Did you add encoder to the motors?
You basicly need to transform the linear and angular velocity into speeds for the left and right motors, something like
float speed_wish_right = cmd_vel.angle*M_PI*WHEEL_DIST/2 + cmd_vel;
float speed_wish_left = cmd_vel.speed*2-speed_wish_right;
with WHEEL_DIST as the distance between left and right wheels (25.2cm on my wild thumper), cmd_vel.angle is the angular z component and cmd_vel.speed the linear x component.
2 | No.2 Revision |
The default wild thumper can not measure its speed, which is required. Did you add encoder to the motors?
You basicly need to transform the linear and angular velocity into speeds for the left and right motors, something like
float speed_wish_right = cmd_vel.angle*M_PI*WHEEL_DIST/2 + cmd_vel;
cmd_vel.speed;
float speed_wish_left = cmd_vel.speed*2-speed_wish_right;
with WHEEL_DIST as the distance between left and right wheels (25.2cm on my wild thumper), cmd_vel.angle is the angular z component and cmd_vel.speed the linear x component.
3 | No.3 Revision |
The default wild thumper can not measure its speed, which is required. Did you add encoder to the motors?
You basicly need to transform the linear and angular velocity into speeds for the left and right motors, something like
float speed_wish_right = cmd_vel.angle*M_PI*WHEEL_DIST/2 (cmd_vel.angle*WHEEL_DIST)/2 + cmd_vel.speed;
float speed_wish_left = cmd_vel.speed*2-speed_wish_right;
with WHEEL_DIST as the distance between left and right wheels (25.2cm on my wild thumper), cmd_vel.angle is the angular z component and cmd_vel.speed the linear x component.