1 CMPUT 412 Motion Control – Wheeled robots Csaba Szepesvári University of Alberta TexPoint fonts...
-
Upload
jack-jeremy-wells -
Category
Documents
-
view
215 -
download
0
Transcript of 1 CMPUT 412 Motion Control – Wheeled robots Csaba Szepesvári University of Alberta TexPoint fonts...
1
CMPUT 412Motion Control – Wheeled robots
Csaba SzepesváriUniversity of Alberta
2
Motion Control (wheeled robots)
Requirements Kinematic/dynamic model of the robot Model of the interaction between the
wheel and the ground Definition of required motion
speed control, position control
Control law that satisfies the requirements
3
Mobile Robot Kinematics Kinematics
Actuator motion effector motion What happens to the pose when I change the velocity of
wheels/joints? Neglects mass, does not consider forces (dynamics)
Aim Description of mechanical behavior for design and control Mobile robots vs. manipulators
Manipulators: 9 f: £! X, x = f(µ) Mobile robots:
(#1 challenge!)
Physics: Wheel motion/constraints robot motion
x(T) = x(0) +RT
0 _x(t)dt; _x = f ( _µ)
4
Kinematics Model Goal:
robot speed Wheel speeds Steering angles and speeds Geometric parameters
forward kinematics
Inverse kinematics
Why not?
),,,,, ( 111 mmnfy
x
Tyx
ii
i
),, ( 111 yxfT
mmn
),,, ( 11 mnfy
x
yI
x I
s(t)
v(t)
5
Initial frame: Robot frame:
Robot position:
Mapping between the two frames
Example: Robot aligned with YI
Representing Robot Positions
TI yx
II YX ,
RR YX ,
100
0cossin
0sincos
R
TIR yxRR
Y R
XR
YI
X I
P
YR
XR
YI
X I
6
Example
7
Differential Drive Robot: Kinematics
wheel’s spinning speed translation of P
Spinning speed rotation around P
P
YR
XR
YI
X I
_xR ;i = 12r _Ái ; i = 1;2;
_yR = 0
_µR ;i = (¡ 1)i+1 r _Ái2l ; i = 1;2
wheel 1
wheel 2
8
Differential Drive Robot: Kinematics II.
P
YR
XR
YI
X I
_xr i = 12r _Ái ; i = 1;2;
_yr = 0
! i = (¡ 1)i+1 r _Ái2l ; i = 1;2
! i = R(µ)¡ 1
0
BB@
r2
³_Á1 + _Á2
´
0r2 l
³_Á1 ¡ _Á2
´
1
CCA
9
Wheel Kinematic Constraints: Assumptions
Movement on a horizontal plane Point contact of the wheels Wheels not deformable Pure rolling
v = 0 at contact point No slipping, skidding or sliding No friction for rotation around contact
point Steering axes orthogonal to the surface Wheels connected by rigid frame
(chassis)
r
v
P
YR
XR
YI
X I
10
Wheel Kinematic Constraints: Fixed Standard Wheel
v = r _Á; v? = 0
11
Example
Suppose that the wheel A is in position such that = 0 and = 0 This would place the contact point of the wheel on
XI with the plane of the wheel oriented parallel to YI. If = 0, then this sliding constraint reduces to:
12
Wheel Kinematic Constraints: Steered Standard Wheel
13
Wheel Kinematic Constraints: Castor Wheel
14
Wheel Kinematic Constraints: Swedish Wheel
15
Wheel Kinematic Constraints: Spherical Wheel
16
Robot Kinematic Constraints Given a robot with M wheels
each wheel imposes zero or more constraints on the robot motion only fixed and steerable standard wheels impose constraints
What is the maneuverability of a robot considering a combination of different wheels?
Suppose we have a total of N=Nf + Ns standard wheels We can develop the equations for the constraints in matrix forms: Rolling
Lateral movement
1
)(
)()(
sf NNs
f
t
tt
0)()( 21 JRJ Is
31
11 )(
)(
sf NNss
fs J
JJ
)( 12 NrrdiagJ
0)()(1 Is RC
31
11 )(
)(
sf NNss
fs C
CC
17
Example: Differential Drive Robot
J1(¯s)=J1f
C1(¯s)=C1f
® = ? ¯ = ? Right weel:
® = -¼/2,¯ = ¼ Left wheel:
® = ¼/2, ¯ = 0
0)()( 21 JRJ Is
P
YR
XR
YI
X I
0)()(1 Is RC
0
@1 0 l1 0 ¡ l0 1 0
1
A R(µ) _»I =µ
J 2Á0
¶
18
Mobile Robot Maneuverability Maneuverability =
mobility available based on the sliding constraints+
additional freedom contributed by the steering
How many wheels? 3 wheels static stability 3+ wheels synchronization
Degree of maneuverability Degree of mobility Degree of steerability Robots maneuverability
ms
smM
19
Degree of Mobility To avoid any lateral slip the motion vector
has to satisfy the following constraints:
Mathematically: must belong to the null space of the matrix
Geometrically this can be shown by the Instantaneous Center of Rotation (ICR)
0)(1 If RC
)()(
1
11
ss
fs C
CC
0)()(1 Iss RC
IR )(
IR )( )(1 sC
20
Instantaneous Center of Rotation
Ackermann Steering Bicycle
21
Degree of Mobility++
Robot chassis kinematics is a function of the set of independent constraints the greater the rank of , the more constrained is the
mobility
Mathematically
no standard wheels all direction constrained
Examples: Unicycle: One single fixed standard wheel Differential drive: Two fixed standard wheels
wheels on same axle wheels on different axle
)(1 sCrank )(1 sC
)(3)(dim 11 ssm CrankCN 3)(0 1 sCrank 0)(1 sCrank 3)(1 sCrank
22
Degree of Steerability Indirect degree of motion
The particular orientation at any instant imposes a kinematic constraint
However, the ability to change that orientation can lead additional degree of maneuverability
Range of :
Examples: one steered wheel: Tricycle two steered wheels: No fixed standard wheel car (Ackermann steering): Nf = 2, Ns=2
common axle
)(1 sss Crank
20 ss
23
Robot Maneuverability Degree of Maneuverability
Two robots with same are not necessary equal Example: Differential drive and Tricycle (next slide)
For any robot with the ICR is always constrained to lie on a line
For any robot with the ICR is not constrained an can be set to any point on the plane
The Synchro Drive example:
smM
M
2M
3M
211 smM
24
Wheel Configurations: ±M=2
Differential Drive Tricycle
25
Basic Types of 3-Wheel Configs
26
Synchro Drive
211 smM
27
Workspace: Degrees of Freedom What is the degree of vehicle’s freedom in its
environment? Car example
Workspace how the vehicle is able to move between different
configuration in its workspace? The robot’s independently achievable velocities
= differentiable degrees of freedom (DDOF) = Bicycle: DDOF=1; DOF=3 Omni Drive: DDOF=3; DOF=3
Maneuverability · DOF!
m11 smM
11 smM
28
Mobile Robot Workspace: Degrees of Freedom, Holonomy DOF degrees of freedom:
Robots ability to achieve various poses DDOF differentiable degrees of freedom:
Robots ability to achieve various path
Holonomic Robots A holonomic kinematic constraint can be expressed a
an explicit function of position variables only A non-holonomic constraint requires a different
relationship, such as the derivative of a position variable
Fixed and steered standard wheels impose non-holonomic constraints
DOFDDOF m
29
Non-Holonomic Systems
Non-holonomic systems 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! differential equations are not integrable to the final position
s 1L s 1R
s 2L
s 2R
y I
x I
x 1 , y 1
x2 , y2
s 1
s 2
s1=s2 ; s1R=s2R ; s1L=s2L
but: x1 = x2 ; y1 = y2
30
Path / Trajectory Considerations: Omnidirectional Drive
31
Path / Trajectory Considerations: Two-Steer
32
Beyond Basic Kinematics
Speed, force & mass dynamics Important when:
High speed High/varying mass Limited torque
Friction, slip, skid, .. How to actuate: “motorization” How to get to some goal pose:
“controllability”
33
Motion Control (kinematic control)
Objective: follow a trajectory position and/or velocity profiles as function of time.
Motion control is not straightforward: mobile robots are non-holonomic systems!
Most controllers are not considering the dynamics of the system
34
Motion Control: Open Loop Control
Trajectory (path) divided in motion segments of clearly defined shape: straight lines and segments of a circle.
Control problem: pre-compute a smooth trajectory
based on line and circle segments Disadvantages:
It is not at all an easy task to pre-compute a feasible trajectory
limitations and constraints of the robots velocities and accelerations
does not adapt or correct the trajectory if dynamical changes of the environment occur
The resulting trajectories are usually not smooth
y I
x I
goal
35
y R
x R
goal
v(t)
(t)
starte
Feedback Control Find a control matrix
K, if exists
with kij=k(t,e)
such that the control of v(t) and (t)
drives the error e to zero.
232221
131211
kkk
kkkK
y
x
KeKt
tvR
)(
)(
0)(lim
tet
36
Kinematic Position Control: Differential Drive Robot
Kinematics:
: angle between the xR axis of the robots reference frame and the vector connecting the center of the axle of the wheels with the final position
vy
xI
10
0sin
0cos
y
37
Coordinate TransformationCoordinate transformation into polar coordinates with origin at goal position:
System description, in the new polar coordinates
y
for for
38
Remarks
The coordinates transformation is not defined at x = y = 0;
as in such a point the determinant of the Jacobian matrix of the transformation is not defined, i.e. it is unbounded
For the forward direction of the robot points toward the goal, for it is the backward direction.
By properly defining the forward direction of the robot at its initial configuration, it is always possible to have at t=0. However this does not mean that remains in I1 for all time t. a
39
The Control Law It can be shown, that with
the feedback controlled system
will drive the robot to The control signal v has always constant sign,
the direction of movement is kept positive or negative during movement
parking maneuver is performed always in the most natural way and without ever inverting its motion.
000 ,,,,
40
Kinematic Position Control: Resulting Path
41
Kinematic Position Control: Stability Issue
It can further be shown, that the closed loop control system is locally exponentially stable if
Proof: for small xcosx = 1, sinx = x
and the characteristic polynomial of the matrix A of all roots
have negative real parts.
0 ; 0 ; 0 kkkk
42
Summary Kinematics: actuator motion effector motion
Mobil robots: Relating speeds Manipulators: Relating poses
Wheel constraints Rolling constraints Sliding constraints
Maneuverability (DOF) = mobility (=DDOF) + steerability
Zero motion line, instantaneous center of rotation (ICR)
Holonomic vs. non-holonomic Path, trajectory Feedforward vs. feedback control Kinematic control