1. Introduction
Unmanned tractor–trailer systems are on the rise and current research focuses on increasing the safety of such systems. One of the main research problems in these systems is driving in a reverse direction. The main concern is to prevent the system from entering an uncontrollable mode known as jackknifing. Jackknifing is caused by exceeding the articulation angle i.e., the angle between the tractor and the trailer exceeds the derived limits in which it renders the system to be maneuverable. Other research interests are in improving the control system for the backward movement of the tractor–trailer and/or implementing safety features that aid in preventing the occurrence of a jackknifing.
In recent years, the unmanned tractor–trailer system has gained popularity in fields like agriculture and cargo shipping [
1]. In 2019, UPS has announced that they had been testing unmanned tractor–trailer system with the autonomous driving company TuSimple. The two companies have tested the system on a route in the State of Arizona in the USA. The system is a Level 4 Autonomous system in which the onboard computer is complete control of the system all the time and there is a driver within the system to interfere if needed. TuSimple claims that this technology is estimated to reduce the shipping cost by 30% when shipping through an unmanned tractor–trailer system. In Aug. 2019, UD trucks, a unit of Volvo Group, has showcased a Level 4 Autonomies truck in Hokuren Sugar Refining Mill in Nakashari, Hokkaido Japan [
2]. The unmanned truck system developed by UD uses a network-based Real-Time Kinematic GPS (RTK-GPS) fused with other sensors that give high accuracy localization. The system was showcased by operating on a delivery route from the factory entrance to the acceptance area, storage and the unloading area. The average speed of the unmanned system was 20 kph., and part of the traveled route was a public road.
The main reason that caused a spike in such research is caused by labor cost and shortage. In a study developed by the California Farm Bureau Federation, it was shown that 69% of the 762 farmers that responded to the survey are experiencing a shortage of labor [
3]. The survey has noted that surveyed farmers intend to mechanize cultivation and harvesting process. Two-thirds of the farmers surveyed have reported the utilization of mechanical utilities to aid in farming. Japan has also suffered from labor shortage. To increase farming efficiency in Japan, ref. [
4] has proposed a two-tier linear backward path following controller to park an autonomous tractor–trailer system with off-axle hitching. The proposed controller issues curvature commands based on the path-following error. In the second layer, the curvature commands are then converted into steering commands using a servo loop.
Several works on path tracking algorithms in general fields and in the field of tractor–trailer controller have been reviewed to formulate the solution proposed in this paper. Using non-linear control design and a designed virtual target, ref. [
5] was able to control a nonholonomic mobile robot. The controllers in the study were applied to two-wheel driven cart. In [
6], a Lyapunov approach was used to stabilize the distance to the path and the orientation for unicycle-type mobile robot and in [
7], it was used on a tractor–trailer system. Using time scale transformation and exact linearization, ref. [
8] developed a path following controller for an articulated vehicle. A generic control safety governor was developed in [
9] and is used to prevent the occurrence of jackknife in a reversing tractor–trailer. The governor overrides the controller command when a controller command will cause a jackknife incident. The governor was tested on three different controllers (proportional integral controller, a sliding mode controller and a neural network controller) in [
10]. Fuzzy controllers were used in [
11,
12,
13] to control a tractor–trailer, a tractor and two trailers system and a mobile robot with three trailers, respectively, in reverse motion. A simple control law for backing a tractor–trailer used in path following was proposed in [
14]. The control law is based on curvature commands calculated from a path following error. In [
15,
16] a simple feedback PID controller was used to stabilize the articulated angle. The output of the path tracker is the input to the controller and the output is the steering commands. In [
17] a feedback controller was developed using the combination of two action a tracking term and a corrective term. Using finite-time optimal controller and mixed logical dynamics [
18] was able to control a backing tractor–trailer system. Optimal control-based methods were used in [
19,
20]. The proposed methods use a tractor–trailer model and simulation to compute the best control commands to follow a given path. A genetic programming algorithm was used to find an approximately correct controller for a backing tractor–trailer system to a loading dock was proposed in [
21]. In [
22,
23] virtual dynamics were used to linearize a non-linearizable tractor and trailer to develop a backward controller.
This paper focuses on developing a cascaded controller and a path tracking controller to control a tractor–trailer system moving in reverse for following a predefined path. The novelty of proposed controllers is in the following: (1) Utilizing the Frenet–Serret frame and differential geometry to develop a path tracking controller that tracks a predefined path. The path tracking algorithm is applied on a point that lies on the trailer instead of the tractor. (2) The use of a closed-loop cascade controller to stabilize the tractor–trailer system and perform the path-tracking commands. To the best of the authors’ knowledge these methods have not been used in the field of tractor–trailer systems. The cascaded controller is an inner loop controller that is used to stabilize the tractor–trailer system especially the articulated angle to prevent the occurrence of jackknife. The outer-loop is used to control the kinematics of the tractor–trailer system by utilizing the Frenet–Serret frame. The path tracking control system will issue the trailer’s heading rate command to the cascade controller to guide the tractor and trailer on a predefined path. The proposed control method eliminates the need to use a jackknife prevention system similar to the one proposed in [
9] by developing a cascade controller that insures the stability of the articulated angle and angle’s rate by design. The proposed concept in this paper has been developed and is used widely in unmanned aerial system as in [
24,
25] and to our knowledge, it has not been implemented in the field of tractor–trailer system yet, especially when the system is in reverse motion.
The remainder of this paper is organized as follows. The second section reviews the mathematical model of the tractor–trailer system. Third section presents the control design scheme as well as the stability analysis of the system by using the Lyapunov method. Simulation results are discussed in the fourth section. Finally, the conclusion is presented in the final section of this paper.
2. System Model
A tractor–trailer system is a type of transportation system that consists of a tractor unit that is a heavy unit truck towing a trailer.
Figure 1 shows a tractor–trailer system considered in this work. The tractor in this paper has a hitch located off-axile and the trailer is a single axis trailer, and the dynamical model is given by:
where
is the system longitudinal speed and
is the tractor’s wheelbase that is measured from the front wheel to the rear wheel. The length from the tractor’s hitch point to the rear axile is denoted by
.
is the length from the trailer’s axile to the hitch joint. Point M is the reference point that will be explained in
Section 3. In Equations (1) and (2),
and
are the velocity of the model in the x and y Cartesian axis.
represents the wheel steering angle while
is the heading angle of the tractor measured form the positive
x-axis.
is the tractor’s heading rate and it is obtained using Equation (3). The articulated angle’s rate, presented in Equation (4), represents the angle’s rate between the tractor and trailer.
From Equations (3) and (4), the trailer’s heading angle rate is calculated and is presented in Equation (5). In (6),
and
represent the angle of tractor and trailer’s track, calculated from the body of the tractor and trailers to the
x-axis, when moving in reverse (relative to the direction of the movement of the system) respectively. To achieve this, an assumption was made that there is no slip in the systems wheels. Using equations of rigid body motion, the velocity of point M was derived in Equations (7) and (8).
Further necessary details about kinematics of the tractor and trailer system as well as the presented mathematical model can be obtained from [
9,
14].
The maneuverability of the system is crucial in controller design requirements of the proposed control strategy. The system remains maneuverable if it has the ability to increase and decrease the articulated angle within the steering capability limits. Using equations developed in [
9,
10], the limits in which the system remains maneuverable within the given steering limits
are presented in Equations (9) and (10).
Equation (9) gives the upper articulated angle limit and Equation (10) shows the lower articulated angle limit when the steering input is saturated. If the limits are exceeded the articulated angle will approach π, in that case it will cause a jackknife incident. Theses given constraints and steering command limits are used in the development of the cascade controller especially when it comes to the tuning of the controller gains. Both the upper limit and the lower limit were imposed on the articulated angle feedback controller to ensure that the required articulation command does not exceed such limits.
Table 1 shows a summary of the parameters used in Equations (1)–(10) with their units.
3. Control Design
The proposed controller in this paper consists of two parts: (i) a path tracking algorithm with its main objective is to maintain the trailer on the desired path while reversing (ii) a stabilizing controller design to stabilize the articulation angle and prevent the occurrence of jackknife event in which the trailer folds on the tractor causing an uncontrollable state. The output from the path tracking algorithm is a combination of a commanded heading angle and an ordinate distance , while the output from the stabilizing controller is the steering angel . The following sub-sections will explain the path-tracking controller and the cascade controller design schemes.
The general layout of the proposed control strategy is presented in
Figure 2 with the system model. The Path-tracker controller receives information on the generated path and compares it with the current position of the tractor–trailer system. The path tracking controller will issue a required heading rate to control the system to the required path. The required heading is a setpoint for the cascade controller shown inside the doted square. The cascade controller issues a steering command to achieve the required heading rate while maintaining the stability of the system. The following subsections describe in detail the proposed controllers.
3.1. Path-Tracking Controller
The main objective of the path tracking controller is to (i) minimize the distance between the trailer’s axle (point
M in
Figure 3) and a virtual target on the path (ii) minimize the angle between the trailer’s heading angle and the tangent
of the path to be tracked. To achieve such objectives, the vehicle model will be developed in Frenet–Serret Frame {F}, as performed in [
14,
26], by using the Frenet–Serret formulas. The system equation describing the motion of point
M in (7) and (8) on the tractor and trailer will be rewritten relative to the moving point in {F}, unlike the fixed target developed in [
10,
12]. At first, kinematics of the moving point
with respect to the path will be explained. One is encouraged to revise the derived equations in [
6] and the topics related to differential geometry.
Figure 3 shows a path
with point
as a target to be tracked by point
M, is the tangent of the curve at point
,
is the angle of the path tangent with respect to the x-axis of the cartesian coordinate,
N(
a) is the normal of the curve at point
and
V is the velocity of point
M.The rate at which point
(target point to be tracked) progresses along the path
is presented in Equation (11), where
denotes the rate of change of curvilinear abscissa of curve
) and
is a tunable gain.
is the difference between the heading of point
M and the tangent of point
and is also considered as the heading error which is given in Equation (12).
Now the objective is to find the location of point
M relative to point
in {F} and denote the location as
where
is the ordinate distance and is obtained by using frame transformations on point M. The following set of equations represent the velocity of point
M solved in frame {F}. By integrating these set of equations,
is obtained and used in the tracking problem.
and
are the velocity of point
M calculated in the frame {F}, transformed using a direction cosine matrix in Equations (13) and (14), respectively.
and
are the velocity of
M in cartesian frame.
To include the kinematics of the tractor and trailer system (tractor and trailer heading angles and the velocity of the system), further modifications can be made in Equations (13) and (14) by using trigonometric identities and combining Equations (1), (2), (7) and (8). The results of such modifications are presented in (15) and (16).
Unlike [
14,
15], the reference point is not the center of mass; it is a point on the trailer’s axile. It is the path tracking controller’s objective to lead the center of trailer’s axile to the path by issuing required trailer’s heading rate as a command. The angle error is presented in the following equation:
where
represents the rotation rate of frame {F} located on the moving target and c(
) is the curvature of the curve at
.
is considered the required rate to be achieved by point M and used as feedback.
is the trailer’s track angle rate. The command given by the path tracking controller is:
where the
is smoothed using
and
.
is presented in (19) and it is a function that is instrumental in smoothing the approach angle to the path being followed: the larger the parameter
, the smoother the approach is. The output command from the path tracking controller
is presented in Equation (18) and it is a set point to a feedback controller that links the path tracking controller to the cascade controller. It is also the required trailer’s heading angle rate which is presented in Equation (20).
3.2. Cascade Controller
The proposed cascade controller involves the use of three controllers with the output of the first is the setpoint to the second controller and the output of the second is a setpoint for the third controller. The third controller is the inner loop feedback controller which is nested inside the second controller and is responsible for stabilizing the rate of the articulated angle. While the second controller is called a middle loop controller and is responsible for controlling the articulated angle itself. This controller is a feedback controller that is nested inside the first. On the other hand, the first controller is the outer loop controller and is responsible for controlling the heading angle’s rate of the trailer. The setpoint to the cascade controller is the required trailers heading angle rate that is obtained from the path tracking controller as presented in Equations (18) and (20). The following sub sections will explain each controller in detail.
3.2.1. Trailer’s Heading Rate Controller
The trailer’s heading rate feedback controller is the first controller in the cascade design with an objective to drive the heading rate error between the trailers heading angle rate and the commanded heading rate in Equation (18) to zero. The trailer’s heading rate controller is a simple proportional gain feedback controller shown in Equation (21).
where
is a tunable gain,
is the trailer’s heading rate, and it is a feedback signal. The output from this controller is the required articulated angle
.
3.2.2. Articulated Angle Controller
The hitch angle feedback controller is responsible in achieving the required hitch angle
. The output of this controller is the required articulated angle rate
as in Equation (22) and it is the setpoint to the next controller.
where
is a tunable proportional gain.
3.2.3. Articulated Angle’s Rate Controller
The articulated angle’s rate controller is developed to ensure the stability of the angle rate while controlling the heading of the trailer. The output of the controller is the steering command
shown in Equation (23).
where
is a tunable proportional gain.
3.3. Stability Analysis
The stability of the proposed controller was tested by using the Lyapunov stability analysis. Recall from the third section of this paper that the objective of the controller is to minimize the lateral and the ordinate distance (
) and also to minimize the term (
). Another set of objectives is to minimize the articulated angle
. Using approaches similar to [
26], the Lyapunov function is developed in Equation (24) and it satisfies the following:
V(,,) = 0 when , = 0 and ;
V(,,) > 0 for any other value.
To prove the system is stable one must prove that the derivative of the Lyapunov function is less than zero. Which will be shown further.
The following assumptions are made on the candidate function:
The derivative of the candidate function is computed in Equation (25).
By further simplification of Equation (25) and using Equations (15)–(23) and equating
to be
, Equation (25) becomes as shown in Equation (26).
The first term in Equation (26) is less than zero if the control gain
is greater than or equal to zero. The second and third terms in Equation (26) can be simplified to become what is shown in Equation (27).
The parameters in Equation (27) are always less than zero for the following reasons:
As the absolute value of grows (the system is moving away from the path) the angle difference and grows to an upper or lower bond of depending on the direction of . This will cause the second and third terms of Equation (27) to be zero while the first term will have an opposite sign i.e., the result will be negative.
As goes to zero, the and tends to zero which causes the first term to be zero. The second and third terms of Equation (27) will be zero because the rate of the and are close to zero in such a case.
For the fourth term in Equation (26), it can be shown in Equation (28) that it is less than zero if the control command is greater than that of a determined value shown in Equation (29) where the gains
and
are greater than zero.
The results of Equations (24)–(29) have proven that the derivative of the proposed Lyapunov function in Equation (24) is less than or equal to zero within the given limits and conditions. In turn this proves the stability of the proposed controller.
4. Simulation Results and Discussion
The developed path-tracker and controller was tested and evaluated using a test path that has been previously used in similar papers (see for example: [
10,
27,
28]) using MATLAB. The path contains three waves with different frequencies designed to test the overall performance of the suggested controller. The first frequency represents a smooth and normal path, the second frequency simulates sharp turns while the last frequency is meant to implement an unfeasible turn. The path consists of a non-smooth transition between the sinusoidal wave that are designed to test the controller in such regions especially the path-tracking algorithm since it relies on the curvature of the path to be smooth which is not valid in this case.
Figure 4 is a plot of the used test path. The discontinuities can be seen at points (125, 0) and (225, 0). The derivative of the curve angle is undefined at these locations. The tractor–trailer system is located at (0, 0) with the tractor–trailer system oriented to perform a reverse movement.
One of the advantages of the developed controller is the tracking of an imaginary moving target. This has helped in minimizing the lateral tracking error by anticipating high curvature turns in the path. That is the tractor–trailer system will start steering before reaching the curve since the required path to be followed is several steps ahead. Another advantage is the use of a weighted sum of both the lateral error and the heading angle error as inputs to the controller which helped in achieving a great performance, also with the help of the as a smoothing function, to achieve a stable and non-aggressive approach to the path.
The target progression rate in Equation (11) was designed based on the tractor and trailer kinematics. This choice has led to consider the ability of the system to maneuver. It is noted that from Equation (18) a high will put more weight on the heading error. The higher the gain, the faster the system will response to changes in the heading error. It must be noted that in the test path where heading error discontinuities were introduced, it is important to test the controller reaction to such a path characteristic (the path tangent heading). It has been observed from several simulations that a higher gain would cause the controller commands to be unrealistic by means of high steering movements and fast angle change that those systems in real life cannot perform. The cascade controller design of the stabilizing controller has helped in achieving the required articulated angle stability and Jackknife incident prevention.
is the feedback gain of the trailer’s heading rate in Equation (21). A higher value for this gain causes the system to respond fast to the path angle changes. This situation can destabilize the system if the required maneuver is hard to achieve. The gain in Equation (22) is tuned to achieve a stable articulated angle and not to exceed the limits of the articulated angles presented in Equations (9) and (10). The higher the gain, the more the articulated angle becomes stable. This leads the system becoming sluggish in maneuvering and also in achieving the required path tracker commands.
For simulation, we set
= 3.5 m,
= 5 m,
= 1 m and
= 5 m/s. The simulation result on the sinusoidal test track is shown in
Figure 5. The first subplot shows the lateral error
calculated from the track to point M. It can be noted that as the frequency of the sinusoid increases, the error increases as well. This is caused by the moving target as it is ahead of the tractor–trailer system by several meter (depending on target progression rate) and the issued commands are for curvatures that the moving target lies on. In this case, the target passes through tight turns at the end of the track. The second sub-plot shows the heading of the trailer system with respect to the reference heading (path tangent heading). The tractor steering command can be found in the third subplot of
Figure 5 with the Max/Min steering limits are shown. The effect of the discontinuity caused by the path can also be observed in the steering commands. The final subplot is the articulated angle and the articulated angle command. The articulated angle is bounded by Equations (9) and (10) and the angle increases as the path curvature increases and this can be seen in the final section of the test path.
Table 2 shows the metrics for evaluating the proposed controller. The first criterion is the RMS of the lateral error during the entire simulation. The lateral error is calculated from the nearest point on the path and is measured from the center of the trailer’s axle. This value can indicate how well the system can maneuver through obstacles. The second metric is the RMSE of the heading angle error and it is calculated using Equation (17). The third criterion is measured from commanded steering angle by taking the mean absolute of the controller output and it gives an indication of the effort taken by the controller when comparing other designs. The final criterion is the mean absolute steering jerk. It measures the sudden movement of the steering command issued by the controller. A lower value is desirable for better system stability. From the previous metrics the controller has achieved better performance than the three developed control systems in [
10].