Question: 2 . Trajectory tracking using an open loop controller In this problem, first we will generate a trajectory using the differential flatness technique. Then, we
Trajectory tracking using an open loop controller
In this problem, first we will generate a trajectory using the differential flatness technique. Then, we will generate the control inputs for the robot to navigate this desired trajectory using open loop controller techniques.
Consider the equations for the dynamically extended unicycle robot,
The initial conditions are:
where
Here the controls are and
a Show this system is differentially flat with flat output
Introduction to Robotics
b Generate a differentially flat trajectory using the four basis functions of problem b Plot your generated trajectory with python.
c We will now navigate our robot along this desired trajectory. To do that we need to compute the controls and Notice that differentiating the velocities we get the following equations,
From your generated differentially flat trajectory the subscript refers to the desired values you can estimate Then and can be calculated by taking the matrix inverse in the equation above.
Once the controls and are calculated, you can navigate the robot by numerically integrating the unicycle equations using Euler's method.
Integrate the unicycle equations using Euler's method, generate the control inputs as described above. Plot the result for time steps and using python.
Open loop controller performance in the presence of noise or disturbance
In problem c your robot should track the trajectory perfectly. This is because there is no noise or disturbance in the system. If noise and disturbance is present, which is the case for real systems, the robot won't be able to track the trajectory with an open loop controller. We will see this in this exercise.
We can randomly inject noise or disturbances into the system using the Gaussian Normal distribution. Inject noise in the and equations in the following way,
Here is a random number generated from a Gaussian Normal distribution with mean and standard deviation Similarly, is a random number generated from a Gaussian distribution with mean and standard deviation
With this noise injection, integrate the unicycle equations using Euler's method and the open loop controller of problem c Plot the result for time step You should be able to see the robot deviate from the desired trajectory. Submit your code.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
