Professional Documents
Culture Documents
Abstract—Trajectory tracking control is one of the core problems were simultaneously solved with one single controller.
techniques that impacts the auto-driving performance of a mobile In [11], the constrained control Lyapunov function method was
robot. Whereas, there lacks enough work on reference trajectory used to design a saturated controller such that the unicycle can
generation and controller design for practical usage. This paper keep a positive-minimum speed. In [12], a simple bounded
considers mobile robots with unicycle vehicle model on which most controller was proposed to handle the same speed limitation in
of automatic guided vehicles (AGVs) in real world are built. A new [11]. In [13], the authors developed a visual feedback controller
trajectory planning algorithm is developed, and is applied along with with an adaptive algorithm for estimating the global position.
a control law considering constraints of the unicycle model and However, all aforementioned works only made some
limited motor capabilities. The proposed algorithm is easy to be
assumptions about the reference trajectory, but did not address
implemented on real world AGVs, and it yields a fast, accurate and
robust trajectory tracking performance. The effectiveness of the
enough regarding the way to obtain such a reference trajectory
algorithm is validated by simulation tests. within a certain environment.
Research on path planning can be used to tackle with this
Keywords—Tracjectory Planning; Trajectory Tracking; Mobile concern to some extent. Global path planning algorithms such as
Robots; Robot Control; A*, Dijkstra or Probabilistic Roadmaps (RPM) can be used to
generate a path between the starting point and the destination
that avoids obstacles [14], [15]. However, vehicle model and its
I. INTRODUCTION dynamics were not considered in these algorithms, so that there
To make a robot move along an expected route is a is no guarantee that these path or trajectory can be well tracked.
fundamental task in mobile robots control. Both path following In this paper, we consider the unicycle-type mobile robot and
and trajectory tracking methods have been introduced to deal propose a new trajectory generation algorithm. This algorithm
with this issue. When the spatial error is the major concern and takes vehicle model and speed limitations into consideration and
there are fewer constraints regarding the moving speed, path guarantees the tractability of the generated reference trajectory.
following controls are usually applied. Pure Pursuit method and In addition, we also implement a control law specially designed
Stanley method have been raised in the early stage of the 2000s for these constraints, so that an optimal trajectory tracking
using “bicycle model” for vehicle dynamics. These methods performance can be achieved.
have been implemented on auto driving vehicles at DARPA
Grand Challenges and helped some vehicles to complete the The rest of the paper is organized as follows. In Section II,
races [1]. Some further efforts were made later on to achieve the non-holonomic characteristic of the unicycle model is first
better tracking performance by improving vehicle models or analyzed and its constraints, together with motor’s capability
controller designs [2], [3], [4]. limitations, to trajectory generation are investigated. Then, the
proposed path and trajectory generation methods with enhanced
More recent research switches the focus onto trajectory trackability are explained in full length. In Section III, the
tracking problems, in which the dimension of time is considered corresponding controller design with speed limitation is
and the temporal speed and position errors are concerned. This introduced and the trajectory tracking performance is validated
topic remains popular yet still under development [5], [6]. In with simulation tests. Conclusions are drawn and some future
particular, a back-stepping technique was used in [7] to develop directions are discussed in Section IV.
a time-varying state feedback controller such that the global
trajectory tracking of a mobile robot can be achieved. Later in
[8], speed saturation of the mobile robot was taken into account.
In [9], the authors applied sliding mode control technique in
controller design. In [10], both tracking control and regulation
This research is supported by the NSFC project U1613226 from the State
Joint Engineering Lab and Shenzhen Engineering Lab on Robotics and
Intelligent Manufacturing, China.
Δt
vti vi vi+1
ωi ωi+1
ωti
ρ
C
κ=1/ρ
Fig. 2 Pure Rotation and Instant Rotating Center Fig. 3 Path Smoothing using Smoothing Spline Approach
For example, assume that the three red points in the top
portion in Fig. 3 are the key points through which the robot is
C. Path Generation with Constraints expected to go. In this adjusting process, we can firstly cut off
The starting point of our work is the jerky path obtained from the portions around these key points. For example, as shown in
global path planning algorithm. In order to further improve it to Fig. 4, a path portion with a length three times that of the key
generate a trackable trajectory, the first step is to improve this points’ are to cut off for regeneration. Then, we can pick a new
path by applying a smoothing process followed by an adjusting set of control points including both these key points and some
process based on cubic spline interpolations. This step will other points from the old smoothed path. In this example, the
maintain the continuity of the position, velocity and acceleration, points at twice-length position and triple-length position on the
and maintain a good balance between tolerance and accuracy. old path are picked as control points. After that, using cubic
Details are explained as follows. spline interpolation method, a new portion of curve can be
regenerated. This adjusted path ensures both the smoothness and D. Trajectory Generation with Constraints
the accurate pass through the control points. Now we have obtained an improved path with considerations
of unicycle model, the next step is to add in the dimension of
time and transform it into a trackable trajectory. To this end, we
develop a two-step method that works on the velocity space.
First, the linear and rotational velocities 𝑣i and 𝜔𝑖 are
determined spatially along the entire path; and secondly, the
time moments are assigned to these velocities to generate 𝑣𝑡 and
𝜔𝑡 . Details are explained as follows.
As explained in Section II-B, if a trajectory can be generated
by an ideal unicycle robot, then it is trackable. At every moment,
a unicycle robot has a linear velocity 𝑣𝑡 and rotational velocity
𝜔𝑡 , and their values will eventually yield different trajectories.
It is natural to think about that if there is a way to determine these
𝑣𝑡 and 𝜔𝑡 for a trajectory. This trajectory will be trackable by
applying these 𝑣𝑡 and 𝜔𝑡 .
Fig. 4 Path Adjusting using Cubic Spline Interpolation
To do this, we first determine the 𝑣𝑖 and ωi spatially
The last step for path generation is to apply a curvature check according to the curvatures 𝜅 at the specific point along the path:
against the limitation of κ𝑚𝑎𝑥 in (2). Now we have a series of 1) if 𝜅 > κ𝑚𝑎𝑥 , the trajectory will be non-trackable, and the path
cubic polynomial functions describing the path, and then the needs to be adjusted and regenerated as explained in Section II-
curvature of any point along the path can be determined by (6). C. 2) if 𝜅 < κ𝑚𝑖𝑛 : = ω𝑚𝑎𝑥 /𝑣𝑚𝑎𝑥 , there will be always enough
The sharpest turning usually occurs at the extreme corners at rotation speed to match with the linear velocity and to maintain
similar situations as shown in Fig. 4. In case that the calculated the expected curvature. So the maximum linear velocity 𝑣𝑚𝑎𝑥
curvature at a specific corner point goes beyond the κ𝑚𝑎𝑥 , the will always be used as 𝑣𝑖 , and the rotational velocity 𝜔𝑖 can be
control point in that corner has to be given up and be removed, determined by 𝜔𝑖 = κ𝑚𝑖𝑛 ⋅ 𝑣𝑚𝑎𝑥 . 3) if κ𝑚𝑖𝑛 < 𝜅 < κ𝑚𝑎𝑥 , then
so that as a result, a less sharp path curve will be generated and a matching 𝜔 can only found for limited 𝑣. In this case, the
tracking errors around that point will be inevitable. maximum rotation velocity will be maintained. 𝜔𝑖 = 𝜔𝑚𝑎𝑥 , and
|𝑓′′(𝑥)| linear velocity is determined by 𝑣𝑖 = 𝜔𝑚𝑎𝑥 /𝜅. Finally, the 𝑣𝑖
𝜅= 3/2 (6) and ωi can be determined as shown in Fig. 6.
(1 + 𝑓 ′2 (𝑥))
In this example, it is assumed that the robot has a speed
capability of 𝑣 ∈ [𝑣𝑚𝑖𝑛 , 𝑣𝑚𝑎𝑥 ] = [0.1 , 3 ]𝑚/𝑠 , and 𝜔 ∈
[0, 𝜔𝑚𝑎𝑥 ] = [0, 𝜋/4 ]𝑟𝑎𝑑/𝑠 , then the maximum curvature is
𝜅𝑚𝑎𝑥 = 0.5𝜋 in this case. It can be seen in Fig. 5 that, along all
the points on the generated path, the curvature is continuous and
within the limitation of κ𝑚𝑎𝑥 , and both the first order and second
order derivatives are continuous and bounded [19]. These
characteristics indicated that the demanded velocities and
accelerations are also continuous and bounded.
The tracking error can be measured as a feedback in position To verify the tracking performance of the controller in the
domain as in (10), and the control law can be designed as in (11) simulation environment, the tracking Test 1 of a knot-shaped
to transform the feedback into velocity domain as control input. trajectory as in [12] is conducted on a flat ground in Webots, as
𝑥𝑒 shown in Fig. 9. Taking into account the actual size and
cos 𝜃 sin 𝜃 0 𝑥𝑟 − 𝑥 parameters of the robot, the reference trajectory is set in velocity
[ 𝑦𝑒 ] = [− sin 𝜃 cos 𝜃 0] [𝑦𝑟 − 𝑦 ], (10) space as 𝜈𝑟 (𝑡) = 1 and 𝜔𝑟 (𝑡) = 1.218 𝑐𝑜𝑠(0.24 𝑡)/
𝜃𝑒 0 0 1 𝜃𝑟 − 𝜃 (11.446 (𝑠𝑖𝑛(0.24 𝑡 2 ) + 1) . The velocity capability of the
robot is constrained within [𝑣𝑚𝑖𝑛 , 𝑣𝑚𝑎𝑥 ] = [0.5,1.5]𝑚/𝑠, and
𝜔𝑚𝑎𝑥 = 5 𝑟𝑎𝑑/𝑠 . To check the tracking capability of the
controller, a free starting point was set. Thus, the initial states environmental noise, as shown in Fig. 8. (notice that the radius
are respectively set to [𝑥𝑟 (0) 𝑦𝑟 (0) 𝜃𝑟 (0)]𝑇 = [0 0 0]𝑇 and of robotic wheels is 0.05 m).
[𝑥(0) 𝑦 (0) 𝜃(0)]𝑇 = [−2 − 1 3.56]𝑇 .
The overall tracking performance is shown in Fig. 11. The
red line represents the reference trajectory, and the black dots
denote the actual robot positions at every moment. It can be
observed that even with severe noise from the ground, the
reference trajectory can still be tracked well, and most of the
black dots are just overlapped on the red line.