Mobile robots kinematics Flashcards
What is kinematics and why we study it?
Definition
Is the most basic study of how mechanical systems behave.
Why?
In mobile robotics, we need to understand the mechanical behavior of the robot both to design appropriate mobile robots for tasks and to understand how to create control software for an istance of mobile robot hardware.
How can we derive the model for the whole robot’s motion?
Bottom-up process: each wheel contributes and at the same time imposes constraints to the robot’s motion
What is the pose of a robot?
Is a vector ξw = [x y Θ]
where x, y represent the position while Θ represents the orientation in the global ref frame
Mobile robots wrt manipulator arms
- encoder values don’t map to unique robot poses
- they can move unbound with respect to their environment:
- no direct way to measure the robot’s position
- position must be integrated over time
- leads to inaccuracies of the position estimation
Main property of non-holonomic systems when dealing with kinematics
The measure of the traveled distance of each wheel is not sufficient to calculate the final position of the robot. One has also to know how this movement was executed as a function of time.
Forward kinematic vs inverse kinematics
- forward kinematics: is giving the transformation from the joint space to the world space.
- inverse kinematics: is giving the transformation from the world space to the joint space (we want to reach a certain position: what are the commands?).
Model the state of a mobile robot
Robot speed ξ. as a function of:
- wheel speed (ω.)
- steering angle (βi)
- steering speed (βi.)
- geometrical parameters of the chassis
- Forward kin: we want to find ξ. as a function of the above parameters
- Inverse kin: we want to find the motion parameters as a function of the robot speed ξ.
Forward kinematic model
It would predict the robot’s overall speed in the global ref frame:
ξẇ = [ẋ ẏ Θ.] = R(Θ)^-1 * ξr = f(l, r, Θ, ω₁, ω₂)
where each wheel is at distance l from P, r is their radius, Θ is the angular difference between the local and the global ref frames, ωi are the spinning speed of the wheels.
Forward kinematic model of a differential-drive chassis
We need to compute ξẇ = R(Θ)^-1 * ξr.
draw the sketch
Consider the motion of the point P between the two wheels and compute ξr. as a sum of the contributions of each wheel to the instantaneous motion.
ẋ = rω₁ / 2 + rω₂ / 2
ẏ = 0 (no lateral sliding)
Θ. = rω₁ / 2l - rω₂ / 2l
R(Θ)^-1 =
[ cos -sin 0 ]
[ sin cos 0 ]
[ 0 0 1 ]
Assumptions for wheel kinematic
- horizontal plane
- massless robot
- single point of contact between wheels and floor
- not deformable wheels
- no sliding, no skidding, pure rolling
- no friction of the contact point when wheels are rotating
- steering axes of the wheels are parallel to the floor
- wheels are connected to a rigid frame
Pure rolling constraint
All motion along the direction of the wheel plane must be accompained by the appropriate amount of wheel spin (so we have pure rolling at the contact point).
No sliding constraint
No motion trasversal to the direction of the wheel plane.
Wheels constraints
- each wheel imposes either zero o more constraints on the robot motion
- only fixed and stearable wheels imposes constraints (omnidirectional wheels no)
How the non-lateral sliding constraint can be visualized?
Through the zero motion line.
The ZML represents the direction along which the wheels motion is zero at any istance in time.
draw the sketch of a car and of a bike
What the robot mobility depends on?
On the contraints the wheels create (not exactly on the number of wheels).
example with bad wheels configuration (no ICR)