The main aim of this project was to analyse the effect of a nonlinear controller on the performance of a nonholonomic mobile robot in following a figure 8 trajectory.
Step 1) State space model
The state space model of the mobile robot can be written as
where x and y are the position of the robot and xp and yp are the position of the end effector which is required to follow desired trajectory. from above equation we know that the input of the state space model follows the convention:
X(dot) = Ax + Bu
Where the term A is 0 which means that there is no effect of drift within the system.
Step2) Nonlinear controller
Due to the nonlinear nature of the state space model to controller the trajectory of the robot it is better to evaluate the performance of a nonlinear controller. To derive the controller, initially we find the relative degree of the system. That is the the degree of differential where the output of the system y gains dependency on the inputs v and w. To derive the first non zero lie derivative we use process:
where r is the relative degree of the system corresponding to the first non zero derivative which in this case is the Lgh which means the relative degree of the system r =1 . Using the conventions of non linear control, the controller for an affine SISO system with relative degree 1 is:
Which means that the input is dependent on a feed forward term of y(dot)desired and a feedback term for the error between the desired and the actual position.
Step 3) Defining the desired trajectories
Click on this for Matlab files
To define a figure 8 trajectory we can use a time dependent equation as such:
which t = 0 to 18 results in trajectory of:
As described in step 3 to develop the controller, feedback data from the differentiated desired position is required as a feedforward term. This is easily derived from the x and y equations for the trajectories.
The results of the simulation show a trajectory following within 0.15m