We provide an analytical solution to the problem of generating the quickest straight-line trajectory for a three-wheeled omnidirectional mobile robot, under the practical constraint of limited voltage. Applying the maximum principle to the geometric properties of the input constraints, we find that an optimal input vector of motor voltages has at least one extreme value when the orientation of the robot is fixed and two extreme values when rotation is allowed. We can find an explicit representation of the optimal vector for a motion under fixed orientation. We derive several properties of quickest straight-line trajectories and verify them through simulation. We show that the quickest trajectory when rotation is allowed is always faster than the quickest with fixed orientation.
1. Introduction
Currently used in many applications, mobile robots can be characterized by the motions of which they are capable. Unlike nonholonomic differential drive mobile robots [1–3], holonomic mobile robots such as three-wheeled omnidirectional mobile robots (TOMRs) can perform independent translational and rotational motion from any starting configuration [4].
The dynamics of omnidirectional mobile robots have been widely studied, as a prerequisite for effective controller design. Dynamic models of the orthogonal type of omnidirectional mobile robot were developed by [5, 6]. A model in which simplified geometric relationships determine the robot’s position has since been introduced [7]. The effect of slipping is taken into account in a recent model [8], a simple model of the friction between the robot’s wheels and the floor. The general dynamic characteristics of n-wheeled omnidirectional mobile robots with control redundancy have also been studied [9]. A fuller model of TOMR dynamics, including motor parameters has recently been introduced in the global coordinate frame [10].
In this paper, we address the time-optimality of TOMR motions. However, it is worth remembering that other characteristics of a motion, such as energy consumption, safety, simplicity of planning, and accuracy, may also be of importance. Nevertheless Balkcom et al. [11] note that time-optimality is a fundamental characteristic of a robot.
Most research on time-optimality of robot has focused on velocity and acceleration constraints [12, 13]. The rapidity of a motion may also be limited by torque or curvature constraints [14, 15]. However, since most mobile robots are battery powered, constraints on voltage may be the most crucial [16].
Many researchers have tried to minimize the motion times of two-wheeled differential-drive mobile robots [12–19]. Recently, a few researchers have made progress with the same problem for TOMRs. The near-optimal strategy described by Kalmár-Nagy et al. [7] is intended to be computationally efficient, making it suitable for real-time applications; however, the input voltage constraint is not fully considered, and the underlying dynamic model omits the Coriolis terms. A different approach to optimizing TOMR times, using a genetic algorithm [20] and nonlinear programming, was suggested by Fu et al. [21]; however, it is computationally intensive, and its numerical nature does not capture the general properties of TOMR motion. Balkcom et al. [11] classified trajectories designed to minimize motion times in terms of spin, circular arc, and tangential motion. They proposed fast trajectories based on “spin,” “roll,” “shuffle,” and “tangent” motions. They did not determine which trajectory is optimal for specific start and end configurations.
The quickest trajectory for a TOMR is not usually a straight line. However, in practice, a path is often expressed as a combination of simple paths, such as straight lines or clothoid arcs. Thus, it is worthwhile to look at straight-line trajectories.
In this paper, using the full dynamics of a TOMR under input voltage constraints in global coordinates, we show how to find the quickest straight-line trajectory. We also consider motions with and without rotation of the robot. When rotation is allowed, we do not specify the final heading of the TOMR. If we were to specify its final heading, we would be faced with a multiobjective optimization: we leave that for future work. We address the problem, with or without rotation, using conventional optimization theory.
The remainder of this paper is organized as follows: in Section 2, we review the dynamics of a TOMR based on the analysis of [10]. In Sections 3 and 4, respectively, we formulate and analyze the problem of minimizing the time required for a straight-line motion without and with rotation. Simulation results are presented in Section 5 and we draw some conclusions in Section 6.
2. Dynamics of Three-Wheeled Omnidirectional Mobile Robots
The TOMR considered in this paper consists of a cylindrical body mounted on three omnidirectional wheels, each driven by its own DC electric motor, located at equal intervals. We assume that the mass of the robot around the circumference of the robot’s bone is uniformly distributed about its center and that the wheels are of the (orthogonal) type [4], meaning that each wheel can roll freely perpendicular to the direction in which it is driven by its axle. This idealized TOMR is depicted schematically in Figure 1, where m is the mass of the robot, J is the inertia of robot rotation, r is the radius of wheel, l is the distance between the center of robot and one wheel, and fi is the force acting on the tangential direction in each wheel [10].
A three-wheeled omnidirectional mobile robot.
The location of the robot in the global coordinates is given by x=[x,y,ϕ]T, and xm=[xm,ym,ϕ]T represents its location in the moving robot coordinate frame, where xm is perpendicular to the rotational direction of the first wheel.
The relationship between x and xm is (1)x˙=Rϕx˙m,where(2)Rϕ=cosϕ-sinϕ0sinϕcosϕ0001.
We use the TOMR dynamics as suggested in [10], where three wheels are actuated by control input to motors u=[u1,u2,u3]T. Here each component of u is normalized by input voltage. The dynamic equations for TOMR including the Coriolis terms in global coordinate frame are represented as follows:(3)x¨=-ax˙-ϕ˙y˙+ahux,y¨=-ay˙+ϕ˙x˙+ahuy,ϕ¨=-bϕ˙+b2l-1huϕ.The coordinated inputs to the dynamic equations [ux,uy,uϕ]T are represented as(4)ux=-sinϕu1-sin(ϕ+2π3)u2-sin(ϕ-2π3)u3,(5)uy=cosϕu1+cos(ϕ+2π3)u2+cos(ϕ-2π3)u3,(6)uϕ=u1+u2+u3.Here a and b are, respectively, the approximate decay constants of linear and angular TOMR velocity. The constant parameter h is specified by motor specification, supply voltage, wheel radius, and floor.
When there is no change in the heading of the TOMR, these become first-order differential equations, and the Coriolis terms disappear. The dynamics (3) with Coriolis terms are more accurate than those suggested by Kalmár-Nagy et al. [7].
3. Quickest Straight-Line Trajectory for a TOMR with Input Voltage Constraints, without Rotation
We now find the shortest time for a straight-line motion by a TOMR which is not allowed to rotate. For simplicity, we consider the motion to take place along a straight line in the positive x direction, and therefore we can set y˙=0 and ϕ˙=0.
Problem 1.
Given the start and finish positions (0,0) and (xf,0), find the motion that takes the least time (tf) subject to the following constraints:
For convenience, let the state vector be z=[x,x˙]T. From the corresponding costate vector λ=[αx,βx]T, we can construct the Hamiltonian(12)Hz,λ,u,t=1+λTz˙=1+αxx˙+βxx¨.Since -λ˙=∂H/∂z, the costate terms are(13)αx=anegativeconstant,-β˙x=αx-aβx.Unfortunately, the structure of the Hamiltonian does not allow it to satisfy the stationary condition, so we must pursue the minimum-time solution directly. We recognize Problem 1 as a typical one-dimensional bang-bang control problem [22], and, thus, using (7) and (13), the Hamiltonian can be rewritten as(14)H(u)=1-βx.x˙+βxahux.
From (4)–(6) and (9)–(11), we can find a shortest-time solution to (14), provided that the optimal input vector is at least 1-extreme. That means that the input to a system is in the form of bang-bang control signals with more than one extreme value. Table 1 shows which component of the optimal battery input vector is extreme, depending on the heading ϕ0.
Extreme input related to the heading ϕ0.
Range of ϕ0
Extreme input
[0,π/3]
u3=1
[π/3,2π/3]
u1=-1
[2π/3,π]
u2=1
[-π,-2π/3]
u3=-1
[-2π/3,-π/3]
u1=1
[-π/3,0]
u2=-1
We can now determine the general form of the optimal input ux* that will produce the quickest transit. Looking first at ϕ0∈0,π/3, we can determine the nonextreme components of the battery input vector when u3=1: u1=-sin(ϕ0)/sin(ϕ0+π/3) and u2=sin(ϕ0-π/3)/sin(ϕ0+π/3). As a result, ux* becomes 1.5/sinϕ0+π/3. If we similarly examine the other ranges of ϕ0 in Table 1, we can construct a generalized expression for ux* for any ϕ0, as follows:(15)ux*=Sϕ0=32sinϕ0-3πϕ0-1π3-1,where is the floor function. The translational magnitude of ux* is plotted with respect to ϕ0 in Figure 2.
The magnitude of the optimal vector ux* depending on the initial heading of the TOMR.
We see that the optimal translational magnitude of ux* varies with the heading: for ui≤1, we can assert 1.5≤ux*(ϕ0)≤3. We can now say that, when a TOMR moves in a straight line without rotating, the time required for the quickest transit depends on the initial heading. This time is the shortest when the initial heading is 0, ±π/3, ±2π/3, or π.
The input constraints (9) constitute a cube in ui space, which we will call the u cube, as shown in Figure 3. Here we define terminology for later use as follows.
u cube with six 2-extreme MTIPs (black dots) corresponding to MTAs.
Definition 1.
In a straight-line motion of a TOMR without rotation, six angles relate to the direction of the force on the robot to the maximum translational velocity. These angles are called the maximum translational angles (MTAs). We call the input control vectors corresponding to the MTAs the maximum translational input points (MTIPs).
The MTAs correspond to the maximum values of ux*: ϕ0=kπ/3, k=0,1,…,5. In particular, the optimal input voltage vector u* at an MTA is one of the 2-extreme MTIPs: ±1,-1,0, ±1,0,-1, or ±0,1,-1. Figure 3 shows the six MTIPs corresponding to MTAs in the u cube.
Finally, if we define the switching time of the optimal input vector to be ts, we can obtain optimal input profile u*(t) and the velocity profile x˙*(t) from standard optimization theory applied to bang-bang systems:(16)u*(t)=S(ϕ0)1.5-sinϕ0,sin(ϕ0-π3),ksin(ϕ0+π3)Tfort≤ts,-S(ϕ0)1.5-sinϕ0,sin(ϕ0-π3),sin(ϕ0+π3)Tfort>ts,x˙*(t)=S(ϕ0)h(1-e-at)fort≤ts,S(ϕ0)h(1-e-ats)e-at-ts-1-e-a(t-ts)fort>ts.Furthermore, using the boundary conditions of (8), we can derive explicit expressions for the minimum motion time tf and the switching time ts:(17)tf=1S(ϕ0)hxf+2aln1+G,(18)ts=1S(ϕ0)hxf+1aln(1+G),where(19)G=1-e-(a/S(ϕ0)h)xf.The derivation of (17) and (18) is explained in the appendix.
4. Quickest Straight-Line Trajectory for a TOMR with Input Voltage Constraints, Allowing Rotation
We now find the quickest straight-line trajectory of a TOMR that can rotate during the motion. We consider an arbitrary initial heading, and there is no constraint on the final heading. The Coriolis terms become more important if the TOMR rotates. Again we consider a straight-line motion in the positive x direction, and so y˙=0. From the second equation in (3), we can formulate the constraint(20)uy=-ϕ˙x˙ah,which is required to compensate for the Coriolis term ϕ˙x˙ in order to maintain y(t)≡0. Hence we can define the quickest trajectory problem with rotation as follows.
Problem 2.
Given xf(>0), find the motion that takes the least time (tf), subject to the following constraints:
The notation “−” in (22) indicates that we do not care about the heading of the TOMR or its derivative at the end of the trajectory.
As we did in the previous section, we use the maximum principle in our analysis. If the corresponding state vector is z=[x,ϕ,x˙,ϕ˙]T and the costate vector is λ=[αx,αϕ,βx,βϕ]T, then the Hamiltonian is formulated as follows:(25)Hz,λ,u,t=1+αxx˙+αϕϕ˙+βxx¨+βϕϕ¨+p(ahuy+ϕ˙x˙).From -λ˙=∂H/∂z and (21), the costate functions can be expressed as follows:(26)αx=negativeconstant,(27)α˙ϕ=ah(βxuy-pux),(28)-β˙x=αx-aβx+pϕ˙,(29)-β˙ϕ=αϕ-bβϕ+px˙.
Here p is a Lagrangian constant which maintains the equality constraint in (24). Note that βxuy in (27), pϕ˙ in (28), and px˙ in (29) all stem from the Coriolis terms.
Using (21), (25), and (26)–(29), we can rewrite the Hamiltonian as follows:(30)H(u)=qo+qxux+qϕuϕ,where(31)qo=1-β˙xx˙-β˙ϕϕ˙-2px˙ϕ˙,qx=ahβx,qϕ=bh2lβϕ.
To minimize the Hamiltonian at any time in the motion, we can choose an input vector that minimizes qxux or qϕuϕ. In other words, all optimal input vectors must maximize the absolute value of ux or uϕ. We will refer to these two classes of input vector as maxux and maxuϕ. From (30), we can conclude that maxux or maxuϕ should be selected as an input vector for time-optimality of the TOMR. When rotation was not permitted, the optimum input vector was always of class maxux but, for Problem 2, vectors of class maxux and maxuϕ are both candidates.
4.1. Geometric Analysis of the Quickest Trajectory with an Input Vector of Class <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M125"><mml:mrow><mml:mrow><mml:mi>max</mml:mi></mml:mrow><mml:mo></mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:math></inline-formula>
From the geometric properties of the input constraints, we find that all optimal candidates must be 2-extreme. The constraint imposed by uy in (5) and (24) forces solutions to lie on a plane through the u cube, with the equation (32)cosϕu1+cos(ϕ+2π3)u2+cos(ϕ-2π3)u3=-ϕ˙x˙ah,which depends on the heading ϕ. When the heading angle is between −60° and 0°, the uy=0 planes corresponding to several different headings are shown in Figure 4(a). Because u1, u2, and u3 are orthogonal, any input vector to correspond to the quickest trajectory must be located where an edge of the u cube intersects the cutting plane; thus such a vertex must have at least two extreme components as white starts in Figure 4(a).
Variation of the optimal input vector with heading, ui realized geometrically in terms of the u cube: (a) five cutting planes corresponding to variants uy constraints, and the trace of a 2-extreme input vector (white arrow), when the heading angle is between −60° and 0°. (b) Q plane corresponding to uϕ=0; uϕ>0 in the region containing u=[1,1,1]T; and uϕ<0 in the region containing u=[-1,-1,-1]T.
We will now select one of the two input vectors that are specified by (30) as candidates to correspond to the quickest trajectory. We first consider the vector of class maxux. For any heading angle ϕ, an input vector that maximizes (4) on a cutting plane generated by the ux constraint of uy determines, by (32), a unique point in the u cube corresponding to that input vector (see Table 2).
Optimal control vectors for Problem 2.
ϕt
u*
Nonextreme input of u1,u2,u3
Near SMTA
[u1,-1,1]T
u1=-3tanϕt-sec(ϕt)ϕ˙tx˙tah
[-1,1,u3]T
u3=-3tanϕt-2π3-secϕt-2π3ϕ˙tx˙tahfbb
[1,u2,-1]T
u2=-3tanϕt+2π3-secϕt+2π3ϕ˙tx˙tahfbb
Near UMTA
[-1,u2,1]T
u2=3tanϕt-π3+secϕt-π3ϕ˙tx˙tahfbb
[1,-1,u3]T
u3=3tanϕt+π3+secϕt+π3ϕ˙tx˙tahfbb
[u1,1,-1]T
u1=3tanϕt+π+secϕt+πϕ˙tx˙tahfbb
UMTA
±[1,1,1]T
None (u1,u2,u3 are all extremes)
Notation: ϕt,ϕ˙t, and x˙t are, respectively, the heading, its first derivative, and the linear velocity at a time t.
At this stage we observe an important property of the optimal input vector. The sign of uϕ in an optimal input vector of class maxux depends on the initial heading of the TOMR. For example, suppose the Q plane (shown in light gray in Figure 4(b)) is uϕ=0 (equivalent to u1+u2+u3=0). This contains six MTIPs. If the initial heading of the TOMR is between 0 and π/3, then the sign of uϕ of the optimal input vector of class maxux is negative, because the extremal point is in the region u1+u2+u3<0 (the volume enclosed by dark-gray planes in Figure 4(b)). Conversely, if the initial heading is between -π/3 and 0, then the extremal point lies in the region u1+u2+u3>0, so the sign of uϕ is positive. This geometric analysis leads to the following.
Property 1.
Consider a TOMR moving in a straight line, with allowed rotation. If we select a candidate optimal input vector of class maxux, that vector is 2-extreme and the sign of its rotational element uϕ is fixed throughout the motion.
Additionally, when the optimal candidate is of class maxux, we can expect the heading of the TOMR to tend to 0, 2π/3, or 4π/3. For example, when the initial TOMR heading is between -π/3 and 0, the sign of the optimal input vector’s rotational element is always positive. Thus the heading of the TOMR approaches 0°, and then the extremal input vector moves along the edge of the u cube driving the motion, as shown by the white arrow in Figure 4(a). We introduce Definition 2 and Theorem 3 to explain this phenomenon.
Definition 2.
Three of the six MTAs, 0, 2π/3, and 4π/3, are called stable maximum translational angles (SMTAs). The other three MTAs are called unstable maximum translational angles (UMTAs). Then the input vectors corresponding to SMTAs and UMTAs are called SMTIPs and UMTIPs, respectively. These vectors are shown in Figure 4(b).
Theorem 3.
Suppose a TOMR moves in a straight line, and rotation is allowed. For all initial headings other than the MTAs, if the optimal input vector is of class maxux, then the TOMR heading ultimately converges to the nearest SMTA. Furthermore, the sign of the first derivative of the heading remains the same throughout the motion.
Proof.
Considering the symmetry of a TOMR, it is only necessary to consider initial headings in the range -π/3<ϕ0<π/3. We also continue to assume that the TOMR moves in the positive x direction. From Property 1, the optimal input vector of class maxux converges to [u1,-1,1]T.
From (4)–(6), (24), and the dynamics of ϕ˙, we can formulate the following two equations for the ux and uϕ elements of [u1,-1,1]T:(33)ux=3cosϕ+tanϕϕ˙x˙ah,uϕ=-3tanϕ-1cosϕϕ˙x˙ah.If we now introduce a positive definite function V(ϕ,ϕ˙), of the form(34)Vϕ,ϕ.=-3bh2llogcosϕ+12ϕ˙2,then we can use (33) to find the derivative of V(ϕ,ϕ.) with respect to time, which is(35)V.ϕ,ϕ˙=3bh2lsinϕcosϕϕ˙+ϕ˙(-bϕ˙-b3h2ltanϕ-bx˙2laϕ˙cosϕ).Since x˙ is positive over the entire motion, V˙(ϕ,ϕ˙)<-bϕ˙2.
Thus, for any initial heading and any first derivative of that heading, V(ϕ,ϕ˙) converges to an invariant set [23]; that is, {(ϕ,ϕ˙)∣ϕ˙(t)≡0}. From the dynamics of ϕ˙, if ϕ˙=0 then uϕ=0, and thus ϕ=0. Hence the heading of the TOMR converges to 0°. Furthermore, from the properties of an invariant set, the sign of ϕ˙ is invariant.
To summarize, if we select a candidate optimal input vector of class maxux, then the wheel of the TOMR closest to the direction of travel gradually becomes aligned to the straight-line path, and the rotational component of the control vector has a fixed sign. This effect is illustrated in Figure 5. For example, if the TOMR moves to the right upper direction of the direction of travel, the sign of the rotational element of the input vector is positive because the first wheel is nearest to the direction of travel. During the motion, the heading of the TOMR converges monotonically to the direction of travel, as shown by the broad arrow in Figure 5.
TOMR motion in a straight line related to the sign of the rotational element of the candidate control vector maxux.
Finally, we need to compare whether or not using a 2-extreme input vector corresponding to maxux is better than disallowing rotation. Since the optimal input vector without rotation is only 1-extreme, we would expect the maxux route to produce a quicker transit. Unfortunately, the Coriolis terms in TOMR dynamics make it difficult to determine which method produces a quicker transit. Nevertheless, we can compare each method based on the kinematics (or the dynamics without the Coriolis terms) of a TOMR; after that, we will compare the approaches through simulations.
Property 2.
Suppose a TOMR moves in a straight line with no constraints on its final heading. Then, a trajectory with allowed rotation using an optimal input vector of class maxux is not slower than a trajectory without rotation, if we consider the kinematics, or the dynamics without the Coriolis terms.
Proof.
We only need to show that the magnitude of ux in a 2-extreme input vector is no smaller than that in a 1-extreme vector over any time interval. Without loss of generality, we can assume the range of initial headings to 0≤ϕ0≤π/3 and assume that the TOMR moves in the positive x direction.
From (15), the translational magnitude ux* of the optimal input vector without rotation can be written as follows:(36)ux*=S(ϕ0)=32sinϕ0+π/3≤3.When rotation is allowed and the input vector is of class maxux, we can express ux based on kinematics (or dynamics without the Coriolis terms) as follows:(37)ux=3secϕ,for0<ϕ≤π6,3secπ3-ϕ,forπ6<ϕ<π3.
From (36) and (37), we see that the magnitude of ux in the 2-extreme control vector is never smaller than that in the 1-extreme vector. Thus we can state that a quicker trajectory is obtained by allowing rotation and using an optimal input vector of class maxux than by disallowing rotation.
4.2. Combination of Candidate Optimal Input Vectors of Classes <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M228"><mml:mrow><mml:mrow><mml:mi>max</mml:mi></mml:mrow><mml:mo></mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" id="M229"><mml:mrow><mml:mrow><mml:mi>max</mml:mi></mml:mrow><mml:mo></mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mi>u</mml:mi></mml:mrow><mml:mrow><mml:mi>ϕ</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:math></inline-formula>
So far we have not considered an input vector of class maxuϕ as the voltage input to the TOMR. This is because the Hamiltonian provides no explicit indication whether to switch candidates, if the dynamics being represented are complicated. It is impossible to use only maxuϕ to produce the quickest trajectory, so we now consider combining input vectors of classes maxux and maxuϕ to produce an optimal input vector. We pursue an insight into switching candidates by looking at the kinematics of a TOMR.
Theorem 4.
Suppose, as before, that a TOMR moves in a straight line, with allowed rotation, and without any constraints on its final heading. The best input vector obtainable from a purely kinematic model is of class maxux, for all initial headings except the UMTAs.
Proof.
Again we only need to consider initial headings in the range 0<ϕ0<π/3, and we again assume that the TOMR moves in the positive x direction. Then, by Theorem 3, the heading of the TOMR converges to the nearest SMTA if we use an optimal input vector of class maxux. If the TOMR heading decreases, then the motion takes longer. Thus, we only consider input vector of class maxuϕ, so that the TOMR heading increases.
Let Δϕ be the increase in the heading during the time interval tΔϕ. To compare a loss associated with maxuϕ with a new gain associated with maxux, suppose that the optimal candidate input vector of class maxuϕ is used until the heading of the TOMR reaches ϕ0+Δϕ, and then the TOMR uses the optimal candidate corresponding to maxux.
Initially, suppose the gain associated with maxux and the loss associated with maxuϕ are Δl+(Δϕ) and Δl-(Δϕ), respectively. From the kinematics of a TOMR, we can obtain expressions for the elements ux and uϕ in an input vector of class maxux as follows:(38)ux=3secϕ,uϕ=-3tanϕ.Then, by a simple time-slicing method, we can easily show that the maximum value of Δl+(Δϕ) is achieved when ϕ0+Δϕ is π/6.
Now if we formulate expressions for Δl+(Δϕ) and Δl-(Δϕ) using (38), we obtain(39)Δl-Δϕ≥3h×Δϕ2l3h=2lΔϕ3=2lΔϕtanπ6,Δl+Δϕ≤h∫0tΔϕuxt-3dt≤3h∫π/6-Δϕπ/61cosϕ-1dtdϕdϕ=2l∫π/6-Δϕπ/6tanϕ2dϕ.From these inequalities, we deduce that Δl+(Δϕ)/Δl-(Δϕ)<1. Hence, based on TOMR kinematics, the optimal candidate input vector of class maxuϕ is never better than that of class maxux.
Some investigators have doubted whether a straight-line motion of a TOMR is ever quicker if rotation is allowed. Our claim to the contrary is supported by the following corollary, the proof of which follows from Theorem 4.
Corollary 5.
Assume that a TOMR moves in a straight line and rotation is allowed, with no constraints on its final heading. The quickest trajectory derived from TOMR kinematics occurs when the orientation of a straight-line path does not cross any UMTA.
Finally, we consider the case when we obtain a control vector corresponding to maxuϕ, when the initial heading is one of the UMTAs. If the heading of the TOMR is slightly perturbed from a UMTA, a quicker trajectory is available by increasing ux. The following property describes how the quickest trajectory can be obtained when the initial heading is a UMTA. It can easily be proved from Property 2 and Theorem 4.
Property 3.
Suppose that a TOMR, which is allowed to rotate, moves in a straight line without any constraint on its final heading. When the initial heading is one of the UMTAs, the quickest trajectory is achieved if the optimal input vector of class maxux continues to be used after the TOMR heading is perturbed by maxuϕ.
In fact, the straight-line movement of a TOMR that maintains its heading along an MTA can be regarded as a singular motion because one component of the control vector is identically zero during a nontrivial interval [24]. Thus, Property 3 suggests that a TOMR should avoid singular motion at a UMTA to obtain the best solution to Problem 2 using a straight-line path. Nevertheless, a singular motion can form a useful element of a combined trajectory [11].
Thus far we have investigated several properties of the quickest straight-line motion of a TOMR when rotation is allowed. We cannot find an analytic minimum-time solution to Problem 2. However, combining the results obtained in Section 4, we can construct the optimal input vector u* at any time, as shown in Table 2. For example, if ϕ0∈(-π/3,0), the optimal vectors for Problem 2 are shown as the stars on a u cube in Figure 4(a), and the trace of the optimal vectors is shown as the white-hollow arrow in Figure 4(a).
5. Simulations
We confirmed our theoretical results by simulations. In particular, we show that Property 2 and Theorem 4, while based only on the kinematics of a TOMR, show close agreement with the simulated dynamics. In all the simulations the TOMR travels over a straight path of 5 meters. The resolution of the simulations is 1 millisecond, and the simulation terminates when the error falls below 0.1%. Values of the TOMR parameters are listed in Table 3 [10].
The parameters of TOMR.
TOMR parameter
Value
a
2.8368
b
6.1953
h
0.6024
l
0.188 (m)
The first simulation compared cases with and without rotation. Exploiting symmetry as before, the initial headings of the TOMR are chosen in the range −60° to 60°. Figure 6 shows that allowing rotation always produces a faster transit, for any initial heading except the SMTAs, which confirms Property 2. When the initial heading is ±30°, the travelling time without rotation is 14.4% longer than it is if rotation is permitted. We also see that the minimum transit time without rotation is achieved when the TOMR heading is aligned to an MTA, and the optimal input vector is 2-extreme, as predicted by our analysis in Section 3.
Variation in transit time with respect to the initial heading of TOMR.
When rotation is permitted, the quickest transit is also achieved when the initial TOMR heading is close to a UMTA. Hence we see a deviation from the results obtained from kinematics and Theorem 4. Theorem 4 suggests that the transit time will decrease as the initial heading deviates from the nearest SMTA to the direction of travel. But the simulation of dynamics shows that transit time does not always decrease proportionally to the difference between the initial heading and the nearest SMTA (see Case 2 in Figure 6). We attribute this difference to the Coriolis terms in the TOMR dynamics.
The second simulation was intended to verify the optimal input and velocity profile obtained in Section 4. Figure 7 shows the profile of the optimal voltages when rotation is allowed and the initial heading is -50°. As the identity of the extreme component changes, the input vector is instantaneously 3-extreme and then the nonextreme component gradually converges to zero. During the transit, the TOMR heading converges to the nearest SMTA (i.e., ϕf≅0). The nonextreme component of the input vector produces rotation of the TOMR, and so this result conforms to Property 1 and Theorem 3 in Section 4.
Component voltages of the control vector when ϕ0=-50∘ and rotation is allowed.
In contradiction of Property 2, based on kinematics, we find that the magnitude of the x-coordinated input can be smaller than 3, due to the influence of the Coriolis terms in the dynamics. However, we know that the Coriolis terms of TOMR dynamics do not contradict the overall properties obtained from kinematics. Figure 8 shows that the translational (linear) velocity profiles of TOMR are directly compared in the cases of with and without rotation. In addition, the angular velocity profile of TOMR with rotation is presented as expected in Theorem 3. Figures 7 and 8 show that allowing rotation produces more extreme components, resulting in a quicker transit.
Velocity and angular velocity with and without rotation when ϕ0=-50∘.
The third simulation is intended to evaluate the validity of Theorem 4, based on TOMR dynamics. Figure 9 shows that when initial heading of TOMR is not a UMTA, the fastest transit for TOMR is achieved by using maxux only. The offset angle of the horizontal axis in Figure 9 means the angle changed by maxuϕ prior to the translational movement of the TOMR. The sign of the offset angle signifies a change in the initial heading towards (−) or away from (+) the nearest UMTA/SMTA. The quickest transit is not achieved by using an input vector of class maxuϕ for any initial heading other than a UMTA. Furthermore, the circle and the decreasing edge of the 60° line in Figure 9 correspond, respectively, to the fastest transit when there is no perturbation (singular motion at a UMTA) and perturbation; these results support Property 3.
Shortest transit times obtained by combining input vectors of class maxux and maxuϕ. When the offset angle is 0° and the initial heading is not a UMTA, maxux alone is used; when the offset angle is 0° and the initial heading angle is a UMTA, perturbation is used. The circle corresponds to no perturbation at a UMTA.
6. Conclusions
We studied the problem of generating the quickest straight-line trajectory for a TOMR with input voltage constraints. We believe this is the first attempt to solve this problem analytically.
We used dynamic equations with Coriolis terms for the motion of a TOMR, which has practical limits to motor input voltage. We then formulated the problem of finding the quickest straight-line trajectory for a TOMR which is not allowed to rotate. We found that the quickest transit occurs when the input vector to the dynamics is at least 1-extreme. We show how to construct voltage input and velocity profiles for this optimal trajectory. We also discovered that the minimum transit time depends on the TOMR’s initial heading and verified this observation through simulations.
A TOMR can rotate while it moves. We therefore considered the problem of finding the quickest straight-line trajectory, if the TOMR is allowed to rotate. However, the complexity of the dynamics with the Coriolis terms prevents us to explicit solution to this problem. Nevertheless, we were able to determine that the shortest transit occurs when the input vector of the TOMR is at least 2-extreme. In effect, input vectors of class maxux or maxuϕ are required to achieve conditions for the quickest trajectory. From the conditions which attach to this trajectory, we derive several important properties of a TOMR.
When the optimal vector is of class maxux, the nearest wheel to the direction of travel gradually becomes aligned to a straight-line path and the rotational element of the input vector is of fixed sign.
When a vector of class maxux is 2-extreme, the quickest transit is not slower than the quickest transit without rotation.
For any initial heading other than the UMTAs, the quickest transit is achieved by an input vector of class maxux.
If the initial heading is a UMTA, the fastest transit is achieved by an input vector of class maxux after a vector of class maxuϕ has been used as a perturbation.
We verified and illustrated these properties by means of several simulations.
We do not think that a straight-line trajectory is usually the fastest way to get a TOMR from one position to another, but we see straight-line motions as necessary components of a path-planning scheme. We also recognize that there may be constraints on a TOMR’s final heading after a motion. We expect that the solution to this problem will require switching between input vectors of classes maxux and maxuϕ. Hence, in future work, we intend to study the quickest straight-line trajectory of the TOMR with two objectives. Our research can be further extended to nonstraight paths, such as a clothoid arc or the combination of clothoid arcs and straight lines.
AppendixDerivation of the Quickest Trajectory in Problem <xref ref-type="statement" rid="problem1">1</xref>
To derive (17) and (18), we use the continuity of x˙(t) at the switching time ts. Since x˙*(ts)=S(ϕ0)h(1-e-ats), x˙*(t) at t∈(ts,tf] can be represented as (A.1)x˙*(t)=S(ϕ0)h(1-e-ats)e-a(t-ts)-(1-e-a(t-ts)).From the boundary conditions x˙*(tf)=0, we obtain(A.2)S(ϕ0)h(1-e-ats)e-a(tf-ts)-(1-e-a(tf-ts))=0.Using (A.2), the following relation between ts and tf is obtained as(A.3)2e-a(tf-ts)=1+e-ats⟺ts=tf-1aln21+e-atf.Also, from the boundary conditions of x*(tf)=xf, we have(A.4)xf=S(ϕ0)h∫0ts(1-e-at)dt+S(ϕ0)h∫tstf(1-e-ats)e-a(t-ts)-(1-e-a(t-ts))dt.Simplifying, we obtain(A.5)2ts-tf=1S(ϕ0)hxf⟺tf=1S(ϕ0)hxf+2aln21+e-atf.Assuming that t2=tf-ts=1/aln(2/(1+e-atf))>0, (A.3) and (A.5) yield (A.6)eat2+e-ats=2⟺eat2=1+G,where(A.7)G=1-e-(a/S(ϕ0)h)xf.Finally, if t2 from (A.6) is substituted into (A.3) and (A.5), then we obtain equations for ts (17) and tf (18).
Conflict of Interests
The authors declare that there is no conflict of interests regarding the publication of this paper.
Acknowledgments
The authors would like to thank Professor Byung Kook Kim for his valuable suggestions for improving this paper. This research was supported by the Gachon University research fund of 2014 (GCU-2014-0121).
KhoobanM. H.AlfiA.AbadiD. N. M.Teaching-learning-based optimal interval type-2 fuzzy PID controller design: a nonholonomic wheeled mobile robotsKhoobanM. H.Design an intelligent proportional-derivative (PD) feedback linearization control for nonholonomic-wheeled mobile robotShojaeiK.ShahriA. M.TarakamehA.TabibianB.Adaptive trajectory tracking control of a differential drive wheeled mobile robotPinF. G.KilloughS. M.A new family of omnidirectional and holonomic wheeled platforms for mobile robotsWatanabeK.ShiraishiY.TzafestasS. G.TangJ.FukudaT.Feedback control of an omnidirectional autonomous platform for mobile service robotsLiuY.WuX.ZhuJ. J.LewJ.Omni-directional mobile robot controller design by trajectory linearizationProceedings of the American Control ConferenceJune 2003342334282-s2.0-0142183982Kalmár-NagyT.D'AndreaR.GangulyP.Near-optimal dynamic trajectory generation and control of an omnidirectional vehicleWilliamsR. L.IICarterB. E.GallinaP.RosatiG.Dynamic model with slip for wheeled omnidirectional robotsRojasR.FoersterA. G.KimK. B.KimB. K.Minimum-time trajectory for three-wheeled omnidirectional mobile robots following a bounded-curvature path with a referenced heading profileBalkcomD. J.KavathekarP. A.MasonM. T.Time-optimal trajectories for an omni-directional vehicleMunozV.OlleroA.PradoM.SimonA.Mobile robot trajectory planning with dynamics and kinematics constraints4Proceedings of IEEE International Conference on Robotics and Automation199428022807FaizN.AgrawalS. K.Trajectory planning of robots with dynamics and inequalitiesProceedings of the IEEE International Conference on Robotics and Automation (ICRA '00)April 2000397639822-s2.0-0033707423HejaseA. J.Optimal motion synthesis of a mobile robot2Proceedings of the IEEE International Workshop on Intelligent Motion Control199089790110.1109/imc.1990.687442BiancoC. G. L.PiazziA.RomanoM.Smooth motion generation for unicycle mobile robots via dynamic path inversionChoiJ.-S.KimB. K.Near-time-optimal trajectory planning for wheeled mobile robots with translational and rotational sectionsRenaudM.FourquetJ.-Y.Minimum time motion of a mobile robot with two independent, acceleration-driven wheels3Proceedings of the IEEE International Conference on Robotics and Automation (ICRA'97)April 1997260826132-s2.0-0030652786BalkcomD. J.MasonM. T.Time optimal trajectory for bounded velocity differential drive robot3Proceedings of the IEEE International Conference on Robotics and Automation (ICRA '00)2000249925042-s2.0-0033692342ChitsazH.LaValleS. M.BalkcomD. J.MasonM. T.Minimum wheel-rotation paths for differential-drive mobile robotsProceedings of the IEEE International Conference on Robotics and Automation (ICRA '06)May 2006Orlando, Fla, USA1616162310.1109/robot.2006.16419382-s2.0-33845657432YoonY.KimY.-H.An efficient genetic algorithm for maximum coverage deployment in wireless sensor networksFuY.-Y.KoC.-N.LeeT. L.WuC.-J.A nonlinear programming method for time-optimal control of an omni-directional mobile robotLewisF. L.SyrmosV. L.KhalilH. K.SussmannH. J.TangG.Shortest paths for Reeds-Shepp car: a worked out example of the use of geometric techniques in nonlinear optimal control1991SYCON 91-10, 08903New Brunswick, NJ, USADepartment of Mathematics, Rutgers University