250 likes | 262 Views
Lane Following Controller Team 2. Mohamed Aly, Gustavo Costa, Nhattrieu (Tom) Duong. Goals and Objectives. Lateral controller: Lane following without GPS Steady State Error < 50 cm To remain confortably within 3.5 m corridor Overshoot < 50 cm To remain within 3.5 m corridor
E N D
Lane Following ControllerTeam 2 Mohamed Aly, Gustavo Costa, Nhattrieu (Tom) Duong
Goals and Objectives • Lateral controller: • Lane following without GPS • Steady State Error < 50 cm • To remain confortably within 3.5 m corridor • Overshoot < 50 cm • To remain within 3.5 m corridor • Requires longer settling times • For speeds up to 15 m/s (Advanced Navigation requirement C.5.)
Waypoint Generation y Alice frame Trajectory waypoints x rAlice(tn) rn(tn) y0 rn,0 x0 Boundary data points Stationary frame
Waypoint Generation • Deals with one small frame at a time • Looks ahead to plan path • Default: 10 data points • Adjustable (perhaps with speed?) • Filters into three scenarios for each frame • Left and Right lane data good • Only Left lane • Only Right lane • Updates waypoints file with new information • Waypoints file can be accessed by traj generator • Traj generator not yet implemented • Matlab/Simulink path following implemented using generated waypoints file (seen later in presentation)
Alice Model • Bicycle model • Linearized Model • Control only y and θusing φ
Controllers • Take as reference the projected error of the path generated from the two boundaries • Two types of controllers: • State feedback design (PI); • Frequency domain design (PID);
Controllers • State space controller: • State (Simulink model): [y yref θθref ] • Matrices from the state space model: • A = 0 • B = [1, 0, -1, 0] • C = ki • D = [-K,K] • ki is the integral gain and K is a two dimension vector with proportional gains; • Obtained from the eigenvalue placement using At and Bt from the linearized model of Alice;
Controllers • State space controller: • Using the eigenvalues p = [-1.5,-.5,-.2] the gains obtained were K = [0.2816 1.8857] and ki = -0.0367; • Simulation (Using the Alice model with the time delay and saturation block): • Simulink:
Controllers • State space controller: • Simulation: • Simulator (Follow) with initial error of 3m:
Controllers • PID controller (frequency domain): • Loop shaping was used to design the integral, proportional and derivative gains. Therefore, a first model of L=P*C had to be computed; • The Alice model (P) was obtained using: • ndAlice = tf(ss(Ap,Bp,Cp,Dp)); • Ap, Bp, Cp and Dp are the matrices from the linearized model; • Time delay was added using Pade approximation: • [nd,dd] = pade(0.1, 2); • delay = tf(nd,dd); • Alice = ndAlice*delay;
Controllers • PID controller (frequency domain): • Using random values for ki, kp and kd, a prototype of C was obtained and Sisotool was used to design new values for C given the process P and the specifications: • Phase margin: 77 degrees; • Bandwidth: 0.87 rad/s; • Steady state error: 0; • Controller obtained: 4.3288 (s+0.07997) (s+0.005804) ------------------------------- (s+0.0005637) (s+20.32)
Controllers • PID controller (frequency domain): • Bode plot (Loop transfer function):
Controllers • PID controller (frequency domain): • Bode plot (Closed loop):
Controllers • PID controller (frequency domain): • Sensitivity functions:
Controllers • PID controller (frequency domain): • Simulation (Simulink):
Controllers • PID controller (frequency domain): • Simulation (Follow/Simulator):
Future Work • Implement PID controller with waypoint generation in follow on Alice • Improve controller performance • Waypoint Generation (beyond scope of proj) • Deal with noise • Enable disparate left and right lane data • Smooth out distubances in path (to avoid unnecessary swerving)