ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A answers.ros.org |

1 | initial version |

Is this a duplicate question? Please do not flood the forums with duplicates.

If not, you could estimate your velocity by deriving your position with respect to time.

2 | No.2 Revision |

Is this a duplicate question? Please do not flood the forums with duplicates.

If not, you could estimate your velocity by deriving your position with respect to ~~time.~~time.
Estimate pose from velocity

```
x += v_x * dt
y += v_y * dt
theta += v_theta * dt
```

and so therefore your velocity in the odom frame can be estimated as

```
v_x = delta_x / dt
v_y = delta_y / dt
v_theta = delta_theta /dt
```

Given this you can extrapolate a robot frame velocity of

```
v.x = v_x/cos(theta)
omega = v_theta (due to the nature of differential drive kinematics).
```

Also keep in mind that due to kinematic constraints

```
v.y=0
```

ROS Answers is licensed under Creative Commons Attribution 3.0 Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.