2D vehicle is moving at a speed of v such that its velocity vector makes an angle ̘ with x-axis (called heading). The coordinates of vehicle's center are x and y, and the steering angle is ϕ. The wheelbase L can be assumed to be 1m. Then kinematic equations of the vehicle are below. They are linearized using the small angle formulae, so that you can use the linearized (LTI) control theory of this class.
ẋ = v cos̘ ≈ v
ẏ = v sin̘ ≈ v̘
̘̇ = v/L tanϕ ≈ v/L ϕ
Let's say you want to control the vehicle to move it on a straight line (x axis) as it moves at a constant speed of v = 1m/s. I.e. you want the y coordinate to be zero in steady state. Design a controller that uses the measurement of y and provides the correct steering angle ϕ to make the vehicle go in a straight line. Assume the vehicle started on x axis with a wrong initial angle ̘₀.
a. What variable will be the input to the plant u? What variable will be the output of the plant y? What will be the transfer function of the plant from input to the output G(s)?
b. What will be the value of the reference command r(t) for this system?
c. If you want to provide initial condition to your plant (the car) such that ̘₀ = 0.1, how will you include that into your block diagram? Draw the block diagram of the system, which shows the initial condition, reference command, and all the relevant blocks.
Hint: Initial condition will be like a disturbance at the correct location, after some adjustments.
d. Design the controller, so that if the car starts at an initial angle of 0.1 radian or less, on the x-axis, the controller brings it back to correct motion along x-axis within 5-ish seconds, while making sure that the steering angle ϕ, and the vehicle angle ̘, both remain within the bounds of ±0.3rad.
i. Show all the steps followed in sisotool, as a numbered list along with the evolution of your rlocus at various stages.
ii. Write down the transfer function of your final controller.
iii. Plot the position of the car y(t).
iv. Plot the steering angle ϕ(t) and the car angle (heading) ̘(t).