Automotive Suspension System Analysis and...
Transcript of Automotive Suspension System Analysis and...
Automotive Suspension System Analysis
and Simulation
Dynamical Systems, Final Project
Jenniffer Estrada _________________________
Danielle Maggio _________________________
Raymond Petosa _________________________
April 24, 2009
2
Table of Contents
Executive Summary 3
Statement of Problem and Assumptions 4
Results and Recommendations 5
Analysis 6
Discussion 7
Appendices 8-23
Appendix A – Passive Suspension 8-10
Appendix B – “Fault Mode” Suspension 11-13
Appendix C – Active Suspension 14-16
Appendix D – Block Diagram 17
Appendix E – Matlab Code 18-19
Appendix F – Free Body Diagram 20
Appendix G – Linear Circuit Model 21
Appendix H – Control Gain Values 22
Appendix I – Equations 23
3
Executive Summary
The main idea of this project was to model and simulate an automotive
suspension system containing linear electromagnetic actuators. Using this model to find
the best possible gains for the controls of the actuator to ensure comfort and handling
to the occupants in the vehicle. This problem was solved by using the equations of
motion that were able to be derived from the free body diagram (Appendix F), as well at
the circuit equations obtained by analyzing the circuit model given ( Appendix G). These
equations were input into Simulink as a block diagram (Appendix D) and simulated,
allowing us to perform the tasks asked in the project. From these simulations we
determined that an active suspension system with the control gains from Appendix H
gave us the most desirable outcome.
4
Statement of Problem and Assumptions
The main goal of this project was to simulate an automotive suspension system
containing linear electromagnetic actuators. These actuators would be able to react to
changing road conditions which would provide additional comfort and handling to the
occupants.
The project that was assigned involved analyzing and simulating a half car model
containing an active suspension system. We had to develop the equations of motion
necessary to put into a Simulink model, taking into account that the chassis of the
model had two separate degrees of freedom. We also had to find the output of the
circuit that represented the actuators, as they were part of the input to the equations of
motion for the chassis.
The following assumptions were made during our analysis of the active
suspension system: (1) any rotational degree of freedom would be of a small enough
angles and thus our equations were simplified, (2) the chassis is free to pivot about its
center of mass, (3) all motion in half car model is vertical in nature, (4) the car is moving
in a forward direction with a constant velocity of 10 m/s.
5
Results and Recommendations
From comparing the three different cases, we found that the active suspensions,
with the gains listed in Appendix H, had the most desirable results. This can be shown
by comparing the figures in Appendices A-C. By looking at Appendix C, figures 7 and 8,
which are the y direction displacements of wheels 1 and 2 respectively as the road
changes, you can see a substantial difference in the time it takes for each wheel to reach
a steady state. As shown in figure C-7, when wheel 1 reacts to step function input of the
road, the time it takes to settle out of oscillation is visibly less than the time it takes for
wheel 1 of the passive suspension system shown in A-7. Out of the 3 cases tested,
wheel 1 took the longest time to settle in the “fault mode” case, this can be seen in
figure B-7.
6
Analysis
In this project we were trying to determine how the half car model will react under
different circumstances. To begin the analysis of this model, we had to start with free body
diagrams of the elements of the system. We also needed to evaluate the circuit model
provided to solve for the output. This output from the circuit is the input of the force actuator.
From the free body diagram (Appendix F) we obtain four second order differential equations,
an additional two first order equations are derived from the circuit model (Appendix G). Using
these differential equations we developed a block diagram (Appendix D) to simulate our model.
Using the simulated model and given Matlab code (Appendix E) we were able to create the
three cases that were specified in the problem.
The first scenario that we tested was when the actuator forces were constrained to
zero, passive suspension. This resulted in a model that changed very abruptly, and lacked the
ability to settle in a desirable time period.
The second situation we tested was when just the actuator voltages were constrained to
zero, semi-active “fault mode” operation. When we ran this scenario through Simulink and
Matlab the results were of a similar nature to the passive system, but when looking at the
graphs of outputs (shown in Appendix B) the “fault mode” suspension appeared to be even
more erratic than the passive suspension system.
The last case that was tested was a well tuned actuator. To achieve this actuator we
had to toggle the K values of the controller until we reached an advantageous simulation, the
graphs of which are shown in Appendix C.
7
Discussion
After reviewing all of the data collected, we believe that the results are useful. It
becomes very visible that improvements in the suspension system make a substantial
difference in the motion of the model. For instance with the passive suspension system, the
model bounced around very abruptly, which would prove to be a very uncomfortable ride given
the road conditions that were input into the model Eqn(16) and Eqn(19). An active suspension
system has a substantial impact on a variety of things. It impacts the comfort level of the
passengers, as well as the handling ability of the car. An active suspension system also had an
impact on the car itself, for example a car takes bumps and changes in road conditions much
smoother than say a passive suspension which in the long run prevents long term wear and tear
on the car.
There were a number of assumptions that had to be made before beginning the project
regarding restraints on the motion of the model, as well as predictions on the way the model
would react to the inputs. These statements had to be made in order to simplify the model
down to something that could actually be analyzed in the time given. The assumptions that had
to be made definitely limited the accuracy of the results if compared to an actual car, but still
provided sufficient fluctuation to collect useful data.
8
Appendix A-Passive Suspension
Figure 1 - Yb1 Figure 2 – Yb2
Figure 3 – Yc Figure 4 – theta
Figure 5 - Yr1 Figure 6 – Yr2
(1) - Shows the deflection of the front end of the chassis with respect to Yb10 as the road conditions vary.
(2) - Shows the deflection of the back end of the chassis with respect to Yb20 as the road conditions vary.
(3) - Shows the deflection of the center of mass of the chassis with respect to Yc0 as the road conditions vary.
(4) - Shows the rotation of the chassis with respect to θc0 as the road conditions vary.
(5) - Shows the road at position one with respect to time.
(6) - Shows the road at position two with respect to time.
9
Appendix A-Passive Suspension continued
Figure 7 - Yw1 Figure 8 – Yw2
Figure 9 -Fe1 Figure 10 - Fe2
Figure 11 -I1 Figure 12 - I2
(7) - Shows the deflection of Yw1 with respect to Yw10 as the road conditions vary.
(8) - Shows the deflection of Yw2 with respect to Yw20 as the road conditions vary.
(9) - Shows the force of actuator 1.
(10) - Shows the force of actuator 2.
(11) - Shows the current going to actuator 1.
(12) - Shows the current going to actuator 2.
10
Appendix A-Passive Suspension continued
Figure 13 - ei 1 Figure 14 - ei 2
Figure 15 - Ef1 Figure 16 - Ef2
Figure 17 - Ey1 Figure 18 - Ey2
(13) - Shows the voltage that is associated with actuator 1.
(14) - Shows the voltage that is associated with actuator 2.
(15) - Shows control error for actuator 1.
(16) - Shows control error for actuator 2.
(17) - Shows control error for actuator 1.
(18) - Shows control error for actuator 2.
11
Appendix B- “Fault Mode” Suspension
Figure 19 - Yb1 Figure 20 – Yb2
Figure 21 – Yc Figure 22 – theta
Figure 23 - Yr1 Figure 24 – Yr2
(1) - Shows the deflection of the front end of the chassis with respect to Yb10 as the road conditions vary.
(2) - Shows the deflection of the back end of the chassis with respect to Yb20 as the road conditions vary.
(3) - Shows the deflection of the center of mass of the chassis with respect to Yc0 as the road conditions vary.
(4) - Shows the rotation of the chassis with respect to θc0 as the road conditions vary.
(5) - Shows the road at position one with respect to time.
(6) - Shows the road at position two with respect to time.
12
Appendix B- “Fault Mode” Suspension continued
Figure 25 - Yw1 Figure 26 – Yw2
Figure 27 -Fe1 Figure 28 - Fe2
Figure 29 -I1 Figure 30 - I2
(7) - Shows the deflection of Yw1 with respect to Yw10 as the road conditions vary.
(8) - Shows the deflection of Yw2 with respect to Yw20 as the road conditions vary.
(9) - Shows the force of actuator 1.
(10) - Shows the force of actuator 2.
(11) - Shows the current going to actuator 1.
(12) - Shows the current going to actuator 2.
13
Appendix B- “Fault Mode” Suspension continued
Figure 31 - ei 1 Figure 32 - ei 2
Figure 33 - Ef1 Figure 34 - Ef2
Figure 35 - Ey1 Figure 36 - Ey2
(13) - Shows the voltage that is associated with actuator 1.
(14) - Shows the voltage that is associated with actuator 2.
(15) - Shows control error for actuator 1.
(16) - Shows control error for actuator 2.
(17) - Shows control error for actuator 1.
(18) - Shows control error for actuator 2.
14
Appendix C-Active Suspension
Figure 37 - Yb1 Figure 38 – Yb2
Figure 39 – Yc Figure 40 – theta
Figure 41 - Yr1 Figure 42 – Yr2
(1) - Shows the deflection of the front end of the chassis with respect to Yb10 as the road conditions vary.
(2) - Shows the deflection of the back end of the chassis with respect to Yb20 as the road conditions vary.
(3) - Shows the deflection of the center of mass of the chassis with respect to Yc0 as the road conditions vary.
(4) - Shows the rotation of the chassis with respect to θc0 as the road conditions vary.
(5) - Shows the road at position one with respect to time.
(6) - Shows the road at position two with respect to time.
15
Appendix C-Active Suspension continued
Figure 43 - Yw1 Figure 44 – Yw2
Figure 45 -Fe1 Figure 46 - Fe2
Figure 47 -I1 Figure 48 - I2
(7) - Shows the deflection of Yw1 with respect to Yw10 as the road conditions vary.
(8) - Shows the deflection of Yw2 with respect to Yw20 as the road conditions vary.
(9) - Shows the force of actuator 1.
(10) - Shows the force of actuator 2.
(11) - Shows the current going to actuator 1.
(12) - Shows the current going to actuator 2.
16
Appendix C-Active Suspension continued
Figure 49 - ei 1 Figure 50 - ei 2
Figure 51 - Ef1 Figure 52 - Ef2
Figure 53 - Ey1 Figure 54 - Ey2
(13) - Shows the voltage that is associated with actuator 1.
(14) - Shows the voltage that is associated with actuator 2.
(15) - Shows control error for actuator 1.
(16) - Shows control error for actuator 2.
(17) - Shows control error for actuator 1.
(18) - Shows control error for actuator 2.
17
Appendix D- Block Diagram
18
Appendix E- Sample Matlab Code
clc; clear;
alpha= 0; Kp=17000; Kd=50; Ki=.1; Ke=1; sim('DNS_Final_Project')
% Car Animation Script % This Matlab script is used in conjunction with your Simulink model to % produce an animation of the half-car body as it travels down the road % profile defined in the EE324, Spring 2009 project description. % % The script assumes your Simulink model has created the following vectors % related to the motion of the car half-body model: % yc = vertical position of the car body center of mass (CoM) % theta = angular position of the car body % yw1 = vertical position of the front wheel % yw2 = vertical position of the rear wheel % yr1 = vertical position of the road under the front wheel % yr2 = vertical position of the road under the rear wheel
% Paramter Setup for Car Animation xc=-1;yc0=1.25;dyc=0.25; D1=1;D2=2; % Define car body, e.g., center of mass,
height, length dxw=1;yw0=.25;dyw=0.1; % Define wheels rc1=sqrt(D1^2+dyc^2); ac1t=atan2(dyc,D1); ac1b=atan2(-dyc,D1); % Define front
of car in polar coordinates rc2=sqrt(D2^2+dyc^2); ac2t=atan2(dyc,-D2); ac2b=atan2(-dyc,-D2); % Define
rear of car in polar coordinates
% Clear the workshop screen clc;
% Get input to on status of active suspension control: off (0) or on (1) Active=input('Is active suspension control on (0=No, 1=Yes)? ');
% Enter Loop to Create Car Animation for i = 1:length(yc) figure(1);clf(1)
% Draw Car Body x=[xc+rc1*cos(ac1t+theta(i)), xc+rc1*cos(ac1b+theta(i)),
xc+rc2*cos(ac2b+theta(i)), xc+rc2*cos(ac2t+theta(i))]; y=[yc0+yc(i)+rc1*sin(ac1t+theta(i)), yc0+yc(i)+rc1*sin(ac1b+theta(i)),
yc0+yc(i)+rc2*sin(ac2b+theta(i)), yc0+yc(i)+rc2*sin(ac2t+theta(i))]; patch(x,y,'r'); hold on;
plot(xc,yc0+yc(i),'xk','MarkerSize',10,'linewidth',2);plot(xc,yc0+yc(i),'ok',
'MarkerSize',10,'linewidth',2)
% Draw Front Wheel
19
Appendix E- Sample Matlab Code continued
x=[xc+D1, xc+D1, xc+D1-dxw, xc+D1-dxw]; y=[yw0+yw1(i)+dyw, yw0+yw1(i)-dyw, yw0+yw1(i)-dyw, yw0+yw1(i)+dyw]; patch(x,y,'r')
% Draw Rear Wheel x=[xc-D2, xc-D2, xc-D2+dxw, xc-D2+dxw]; y=[yw0+yw2(i)+dyw, yw0+yw2(i)-dyw, yw0+yw2(i)-dyw, yw0+yw2(i)+dyw]; patch(x,y,'r')
% Draw Passive Suspension Connecting Body to Wheels plot([xc+D1-dxw/2, xc+D1-dxw/2],[yw0+dyw+yw1(i), yc0+yc(i)-(D1-
dxw/2)*tan(ac1t-theta(i))],'g-','MarkerSize',5,'linewidth',12); plot([xc-D2+dxw/2, xc-D2+dxw/2],[yw0+dyw+yw2(i), yc0+yc(i)+(D2-
dxw/2)*tan(ac2t-theta(i))],'g-','MarkerSize',5,'linewidth',12);
if Active % Draw Active Suspension Connecting Body to Wheels plot([xc+D1-dxw/2, xc+D1-dxw/2],[yw0+dyw+yw1(i), yc0+yc(i)-(D1-
dxw/2)*tan(ac1t-theta(i))],'b-','MarkerSize',5,'linewidth',5); plot([xc-D2+dxw/2, xc-D2+dxw/2],[yw0+dyw+yw2(i), yc0+yc(i)+(D2-
dxw/2)*tan(ac2t-theta(i))],'b-','MarkerSize',5,'linewidth',5); end
% Draw Passive Suspension Connecting Wheel to Road plot([xc+D1-dxw/2, xc+D1-dxw/2],[yr1(i),yw0-dyw+yw1(i)],'g-
','MarkerSize',5,'linewidth',12) plot([xc-D2+dxw/2, xc-D2+dxw/2],[yr2(i),yw0-dyw+yw2(i)],'g-
','MarkerSize',5,'linewidth',12)
% Draw Road x=[-3.5, -3.5, -1.5, -1.5, 0.5, 0.5]; y=[-1, yr2(i), yr2(i), yr1(i), yr1(i), -1]; patch(x,y,'k')
% Label Figure text(-3.4,3.35,'Car Body and Wheels (Red); Car Body Center of Mass (X); Road
(Black)') text(-3.4,3.1,'Suspension Components: Passive (Green); Active (Blue)') title('Response of Half-car Model with Active Suspension System') xlabel('Horizonal Position [m]') ylabel('Vertical Position [m]')
% Scale Plot Axes set(gca,'ylim',[-0.5,3.5]) set(gca,'xlim',[-3.5,0.5]) end
20
Appendix F- Mechanical Free Body Diagram
21
Appendix G- Linear Electromagnetic Actuator Schematic
ei emi
R
L
Ii
22
Appendix H- Control Gain Values
Kp = 17000
Kd = 50
Ki = 0.1
Ke = 1
23
Appendix I – Equations
Free Body Diagram Equations
(1) F1 = fe1 – Bb1(yb1’ – yw1’) – Kb1(yb1 – yw1)
(2) F2 = fe2 – Bb2(yb2’ – yw2’) – Kb2(yb2 – yw2)
(3) Θc’’ = (1/Jc)[D1F1 – D2F2]
(4) Yc’’ = (1/Mc)[F1 + F2]
(5) Yw1’’ = (1/Mw1)[-Kwi(yw1 – yr1) – F1]
(6) Yw2’’ = (1/Mw2)[-Kw2(yw2 – yr2) – F2]
(7) Yb1 = yc + D1 Θc
(8) Yb1’ = yc’ + D1 Θc’
(9) Yb2 = yc + D2 Θc
(10) Yb2’ = yc’ + D2 Θc’
Force Level Controller and Voltage Level Controller Equations
(11) 𝑓𝑐𝑖 = 𝐾𝑝𝐸𝑦𝑖 + 𝐾𝑖 𝐸𝑦𝑖 𝜆 𝑑𝜆𝑡
0+ 𝐾𝑑
𝑑𝐸𝑦𝑖
𝑑𝑡
(12) 𝐸𝑦𝑖 = 𝑦𝑏𝑖 − 𝑦𝑤𝑖
(13) 𝑒𝑖 = 𝐾𝑒𝐸𝑓𝑖
(14) 𝐸𝑓𝑖 = 𝑓𝑐𝑖 − 𝑓𝑒𝑖
Road Equations
(15) 𝑦𝑟1 𝑡 = .25 𝒰 𝑡 − 5 − 𝒰 𝑡 − 6 − .25 𝒰 𝑡 − 15 − 𝒰 𝑡 − 16
(16) 𝑦𝑟1 𝑡 = .25 𝒰 𝑡 − 𝑡1 − 𝒰 𝑡 − 𝑡2 − .25 𝒰 𝑡 − 𝑡3 − 𝒰 𝑡 − 𝑡4
(17) 𝑡𝑖 =𝑥𝑖
𝑣0
(18) 𝑦𝑟2 𝑡 = .25 𝒰 𝑡 − 5.4 − 𝒰 𝑡 − 6.4 − .25 𝒰 𝑡 − 15.4 − 𝒰 𝑡 − 16.4
(19) 𝑦𝑟2 𝑡 = .25 𝒰 𝑡 − 𝑡1 − 𝒰 𝑡 − 𝑡2 − .25 𝒰 𝑡 − 𝑡3 − 𝒰 𝑡 − 𝑡4
(20) 𝑡𝐷 =𝑥𝐷
𝑣0
Conversions
(21) θ c = 𝜔
(22) 𝜃 = 𝜔
Circuit Equation
(23) 𝑅𝐼𝑖 + 𝐿𝑑𝐼𝑖
𝑑𝑡+ 𝛼𝑣𝑖 = 𝑒𝑖