Work Note

2 downloads 0 Views 155KB Size Report
Kinematics: The Serret-Frenet frame and others. Roger Skjetne. July 11, 2001. 1 Introduction. This work note will be an investigation of different kinematic frames ...
Work Note Kinematics: The Serret-Frenet frame and others. Roger Skjetne July 11, 2001

1

Introduction

This work note will be an investigation of different kinematic frames that can possibly be used for guidance of a surface vessel. It is meant to be a preliminary work on a strategic method for nonlinear path following and trajectory tracking control of ships.

2 2.1

Kinematics The Serret-Frenet frame

As illustrated in figure (1) we see that the Serret-Frenet frame is defined by two axes in the plane, the tangent and the normal to the curve at a point s being the origin of the frame. 2D hypothetical path y

y

e

t

x

t

(2) N

y

earth

T

(1)

x

x

e

earth

Figure 1: A hypothetical reference path illustrating two different moving reference frames: (1) Serret-Frenet and (2) Parallel translating frame. The following derivation is taken from different texts. See for instance [1] for a simple treatise on the subject. Suppose a curve is given by C(xd , yd ) with xd = xd (θ) and yd = yd (θ) where θ is an independent parametrization variable. We will now look into different properties of the curve C(xd , yd ) and the Serret-Frenet frame. Let rd (θ, t) = ¤T £ xd (θ(t)) yd (θ(t)) be the position vector of a point on the curve at time t. We assume that rd (θ) is a regular 1

d parametric representation of the curve, i.e. rd ∈ C 1 and dr dθ 6= 0 in an interval θ ∈ I. Since the plane is a metric space, ¡ ∂rd ¢T ¡ ∂rd ¢ we will define a metric as δ (θ, t) = ∂θ ∂θ . Using the arclength s along the curve with time, we find the velocity vd (t) drd which vd (t) = r˙d (t) where r˙d means dt . This gives us the expression for the unit tangent vector T (t) = |vvdd (t) (t)| = s˙ 0 0 d = r (s) where (·) means differentiation w.r.t. s. The incremental arc length ds is readily seen gives T (s) = dr d ds r ³ ´ q p 2 p R θ(t) 2 2 δ ˆθ, t ∂ ˆθ. to satisfy ds = |vd (t)| dt = x˙ d (t) + y˙ d2 (t)dt = (dxd ) + (dyd ) = δ (θ, t)∂θ and s (θ, t) = 0

Consequently, either of the pairs (θ, t) or (s, t) can be used to uniquely determine a point on the curve.

Remark 1 s is a natural parameter, and rd (s) is a natural representation of the curve. This is seen since s (θ) = ¯ dr ¯ ¯ dr ¯ R θ ¯ drd ¯ ds ¯ ¯ ¯ d¯ ¯ d¯ θ 0 dθ dθ which implies that dθ = dθ → ds = 1. The unit tangent vector can then also be expressed by T (s) = drd ds

=

drd / dθ |drd / dθ| .

In the forthcomming we will use s as our parametrization variable. Let ψSF (t) be the angle between · the axis x ¸e ³ ´ ¤T £ cos(ψSF ) Ty (t) −1 which conversely gives T = and T (t). Since T = Tx Ty we get that ψSF (t) = tan . Tx (t) sin(ψSF ) dT dT dψSF 0 = It is interesting to see what the turning rate of T w.r.t. s is, i.e. dT ds = T (s). We find that ds = dψSF ds ¸ · ¯ ¯ ¯ ¯ − sin(ψSF ) dψSF dT (s) ¯ dT ¯ ¯ dψSF ¯ ds and note that ds = ¯ ds ¯ . We define the curvature vector K (s) = ds and the correspondcos(ψSF ) ¯ ¯ ¯ ¯ ¯ ¯ ing quantity, curvature, |κ (s)| := |K (s)| = ¯ dψdsSF ¯ = ¯ψ0SF ¯ , the magnitude of the angular rate of change w.r.t. arc ¡ ¢ length s. Notice now that T T dT ds = 0 which means that those two vectors are orthogonal. Let ρ be some normal0 ization factor. We¯can then define the ¯ unit¯ normal vector to be N (s) = ρT (s) which is perpendicular to the tangent, ¯ ¯ ds ¯ ¯ dψSF ¯ and we see that ρ ¯ ds ¯ = 1 so ρ = ¯ dψ ¯ = ψ0 1 (s) = κ1 . SF | SF |

Remark 2 A point on the curve where κ (s) = 0 we call a point of inflection. At this point the curvature vector vanishes. Notice also that K (s) = κ (s) N (s) ; hence, if N and K are in the same direction, then κ (s) = |K (s)| , otherwise, κ (s) = − |K (s)| . Since N > N = 1, we also get that κ (s) = K > (s) N (s) .

Let s be a specific arclength at a point on the curve and ds a small perturbation. Then ∃ an angle dψSF = ψSF (s + ds) − ψSF (s) between T (s) and T (s + ds) which is the same as the angle between N(s) and N (s + ds). The intersection of the lines formed by N (s) and N (s + ds) will form an instantaneous center of zero velocity. This center can be understood as the origin of an instantaneous circle formed by the curvature at each point s. The circle is called the osculating circle. ¯ Using ¯ the formula for arclength, we get that |ds| = k |dψSF | where k is the radius of the circle, ¯ ¯ and this gives k = ¯ dψds ¯ = ρ. So ρ(s) is the radius of the instantaneous circle given by each point, and from above we SF

see that κ = ρ1 is another understanding of the curvature. N (s) forms the direction of what is known as the principal normal to the curve at every point. We are now ready to state the Serret-Frenet formulas for curves in the plane. Since dψ·SF = κds, we ¸first get − sin (ψSF ) ψ˙ SF = κs. ˙ Moreover, we already have T 0 (s) = κN (s). The unit normal is given as N = . Then cos (ψSF ) · ¸ − cos (ψSF ) dN(s) dN dψSF = −κT. Summarizing, this gives ds = dψSF ds = κ − sin (ψSF ) T 0 (s) = κN (s) N 0 (s) = −κT (s) ψ˙ SF = κs˙

(1) (2) (3)

T incremental change of the curve at some We can elaborate more on the curvature κ. If drd³= [dx ´d , dyd ] is ³ a small ´ −1 dyd −1 y˙ d point s, then we have the relationship ψSF = tan dxd = tan x˙ d . This gives

ψ˙ SF =

1+ ¯ ¯ ¯ ¯ ¯ ¯ ¯ dt ¯ Since |κ| = ¯ dψdsSF ¯ = ¯ψ˙ SF ds ¯ we get

1 y¨d x˙ d − y˙ d x y¨d x˙ d − y˙ d x ¨d ¨d = ³ ´2 2 2 x˙ d s˙ y˙ d

|κ| =

x˙ d

|¨ yd x˙ d − y˙d x |rd0 × rd00 | ¨d | = 3 s˙ 3 |rd0 | 2

2.1.1

Differential Equation for Control Design

Above we have just derived a lot of properties of the Serret-Frenet frame on the curve. Now we will see how this can be used for control of a ship to follow a predefined path. If ρmin is the minimum turning radius of the ship, we will restrict the path to be smoth and feasible such that at every point s on the path, ρ (s) ≥ ρmin . The kinematics is represented by a body-fixed frame {B} relative to a translational and rotational frame {SF} moving in an earth fixed inertial frame {E}. Let ν cab denote the linear velocity vector of the origin of frame {b} in frame {a} decomposed in frame {c}. Likewise, let ω ba be the angular velocity of frame {a} w.r.t. frame {b}. Let ψSF be the angle between the xe − axis of the frame {E} and the tangent vector T in frame {SF}. ψ is the usual jaw angle between the body frame b ¯ = ψ−ψ and the inertial frame. This gives ψ SF the angle of the {B} frame w.r.t. the {SF} frame. · Let ηa be the ¸ cos γ − sin γ vector from the origin of frame {b} to frame {a}. Finally, let a 2 × 2 rotation matrix be R2 (γ) = sin γ cos γ · ¸ R2 (γ) 0 and the 3 × 3 rotation matrix is R3 (γ) = . 0 ·1 ¸ 0 in the {SF} frame, i.e. it is always located on the normal Let the ship be located at the position ηSF B = e2 vector N at length e2 away from the origin. Consequently, the point s along the curve is always the closest point on the curve to the body-fixed origin. We then get the relationship ¡ ¢ B SF SF E SF ¯ (4) ν SF EB = R2 ψ ν EB = ν ESF + ν SF B + ωSF × η B

T SF E E where ν B EB = [u, v] is the body fixed linear velocities of the ship in surge and sway. We also get that ωB = ω B −ω SF or ¯˙ = ψ˙ − ψ˙ SF (5) ψ

Using the notes in [2] we expand (4) in vector form as ¡ ¢ ¡ ¢ ¸· · ¸ · ¸ · ¸ · ¯ ¯ cos ¡ ψ − sin¡ ψ u s˙ 0 0 SF ¢ ¢ ν EB = = + + ˙ ¯ ¯ v 0 e˙ 2 sin ψ cos ψ ψ SF

−ψ˙ SF 0

¸·

o e2

¸

(6)

and (5) becomes

¯˙ = r − ψ˙ SF ψ

¤ £ T ¯ we get the kinematics in ˙ ψ Using the Serret-Frenet equation ¡ ¢ ψSF = κs˙ and defining the vector σ0 = s e2 ¯ ν where ν is the usual body fixed 3 DOF velocity vector. vector form F0 (e2 , κ) σ˙ 0 = R3 ψ 

 1 − e2 κ 0 0  0 1 0  κ 0 1

¡ ¢ ¡ ¢     ¯ ¯ s˙ cos ¡ ψ u ¢ − sin¡ ψ¢ 0 ¯ ¯ e˙ 2  =  sin ψ cos ψ 0  v  ˙ψ ¯ r 0 0 1

(7)

Note that F0 (e2 , κ) is singular if e2 κ = 1, i.e. if the body-fixed origin is located at the origin of the osculating circle. Hence, a controller for this system must ensure that that scenario cannot occur either by restricting the size of the initial conditions (e.g. see Prop.1 in [3]) or some other method. In general, we can let the body-fixed origin be located at a distance e on a fixed axis in the {SF} frame, i.e. on an axis with a constant angle β with the above (4) is then a special case of this system with β = 90 ◦ . · tangent. ¸ · The system ¸ ¡ ¢ e1 e cos β ¯ ν or We get the relative vector ηSF = . This gives the kinematic equation F (e, κ) σ˙ = R3 ψ B = e2 e sin β 

κe cos β  1 − κe sin β κ

sin β cos β 0

 0 0  1

In this case the singularity in F occurs when κe =

2.2

¡ ¢ ¡ ¢     ¯ ¯ s˙ cos ¡ ψ u ¢ − sin¡ ψ¢ 0 ¯ ¯ e˙  =  sin ψ cos ψ 0  v  ¯˙ r 0 0 1 ψ

1 sin β+cos β .

For β = 90 ◦ we retreive the case above.

Translating Relative Frame

In figure (1) we can see another set-up, the frame (2) in the figure. This frame will only be translating in the inertial frame and move with linear speed according to the ship. Denote this frame for {TF} for translating frame. Let s be the point on the curve coinciding with the origin of the {TF} frame, and let α be the angle that the velocity vector of 3

the point s makes with the x − axis. Let the origin of the {B} frame be located at a distance e2 along the y T F − axis. If the linear speed of the {B} frame n the {E}frame is ν E ˙ y] ˙ T , then we get the following relationships EB = [x, F TF TF = R2 (ψ) ν B ν TEB EB = ν ET F + ν T F B

Using the notes in [2] we expand (8) in vector form as · ¸· ¸ · ¸ · ¸ cos (ψ) − sin (ψ) u x˙ 0 F = = + ν TEB sin (ψ) cos (ψ) v x˙ tan α e˙ 2 and with ρT0 = [x, e2 , ψ] , the total  1  tan α 0

kinematics  0 0 1 0  0 1

is written as F (α) ρ˙ 0 = R3 (ψ) ν or     x˙ cos (ψ) − sin (ψ) 0 u e˙ 2  =  sin (ψ) cos (ψ) 0   v  0 0 1 r ψ˙

(8)

(9)

(10)

We see here that the matrix F (α) is not defined when α = (2k−1) π2 , k = 0, ±1, ±2, ... which correspond to a curve with infinite slope at some point(s) in the {E} frame. Note that the point s in this case is easily found. For instance of the £ ¤T £ ¤T x(t) y(t) vector rd (t)³ = ´x(t) f (x(t)) for ship position ηE . curve is generated as yd = f (xd ) then³the ´ B (t) =

Moreover, if vd = r˙d then α = tan−1

3

vdy vdx

= tan−1

x˙ f˙(x)

.

Conclusion

We have in this brief work note elaborated on some moving relative reference frames and worked out the kinematics they correspond to. The Serret-Frenet frame which is the newest idea for ship path control is seen to have a singular point for ship position at the center of zero velocity or the osculating circle. Control design using this frame have to include analysis that ensures that the singularity point can never be hit. The next frame, the translating frame, has the simplicity that it does not rotate. Consequently, we avoid using the angular rate of this rotation as a state. In the Serret-Frenet frame we saw that it was exactly for this reason that the ˙ however, if the curve has infinite slope at some point, the left-hand singularity point occured, i.e. because ψ˙ SF = κs. matrix f (α) will not be defined for this point. So we see in this case that it is rather a property of the curve than a restriction on the ship position that lead to problems. An idea would be to also include some azimuth frame with origin at the earth-fixed origin that rotated with the path, and from this we could maybe avoid all these singularities. I have worked through this solution in my notes, but it turned out pretty messy, and I don’t think for now that it would help much. Need some more information on this topic. Next step is now to work out some simple controllers for these systems and try to simulate them.

References [1] Martin M. Lipschutz, Schaum’s outline of Theory and Problems of DIFFERENTIAL GEOMETRY, McGraw-Hill Book Company., New York, 1969. [2] Olav Egeland and Jan Tommy Gravdahl, “Modeling and simulation for control.,” Lecture Notes 2001-1-X, Norw. Univ. Sci. & Tech., Trondheim, Norway, Jan 2001. [3] Alain Micaelli and Claude Samson, “Trajectory tracking for unicycle-type and two-steering-wheels mobile robots.,” Research Report 2097, Inst. National de Recherche en Informatique et en Automatique, Nov 1993. R.S - July 11, 2001

4