The University of California at Berkeley April 2001 Implementation of an Active Suspension, Preview Controller for Improved Ride Comfort by Mark D. Donahue B.S. Boston University, 1998 Research Advisor: Professor J. Karl Hedrick, Ph.D. Mechanical Engineering Second Reader: Professor Kameshwar Poolla, Ph.D. Mechanical Engineering Submitted to the Department of Mechanical Engineering, University of California at Berkeley, in partial satisfaction of the requirements for the degree of Master of Science, Plan II
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
The University of California at Berkeley April 2001
Implementation of an Active Suspension, Preview Controller for Improved Ride Comfort
by
Mark D. Donahue B.S. Boston University, 1998
Research Advisor: Professor J. Karl Hedrick, Ph.D. Mechanical Engineering
Second Reader: Professor Kameshwar Poolla, Ph.D.Mechanical Engineering
Submitted to the Department of Mechanical Engineering, University of California at
Berkeley, in partial satisfaction of the requirements for the degree of
Master of Science, Plan II
Implementation of an Active Suspension, Preview Controller for
Improved Ride Comfort
Copyright 2001
by
Mark D. Donahue
i
Abstract
Implementation of an Active Suspension, Preview Controller for Improved Ride Comfort
by
Mark D. Donahue
Master of Science in Mechanical Engineering
University of California at Berkeley
Professor J. Karl Hedrick, Chair
A fully active suspension and preview control is utilized to improve ride comfort, which
allows increased traveling speed over rough terrain. Specifically, the methodology of
model predictive control has been applied to address suspension saturation constraints,
suspension rate limits, and other system non-linearities. For comparison, the following
non-preview controllers were implemented: a sky hook damping controller, a linear
quadratic regulator, and a mock passive suspension controller. Particular attention is
given to the hydraulic actuator force controller that tracks commands generated by
higher-level controllers. The complete system has been successfully implemented on a
military HMMWV using a commercially available microprocessor platform.
Experimental results show that the power absorbed by the driver is decreased by more
than half, significantly improving ride comfort.
ii
This work is dedicated to all those who have inspired
me throughout my life, with special thanks to my family & friends
Chapter 5 - Experimental Results 31 5.1 Ride Height Control ................................................................................... 31 5.2 Force Tracking Control .............................................................................. 32 5.3 High-Level Controllers............................................................................... 36 5.4 MPC Preview Controller............................................................................ 39
Chapter 6 - Conclusions 41
References 42
Appendix A - HMMWV Hardware 44 A.1 Equipment as Received .............................................................................. 44 A.2 Sensors added by UCB............................................................................... 49
A.3 Sensor Mount ............................................................................................. 54
Appendix B - Signal Processing 56 B.1 Autobox...................................................................................................... 56 B.2 Signal Conditioning.................................................................................... 59
The purpose of an automobile suspension is to adequately support the chassis, to maintain
tire contact with the ground, and to manage the compromise between vehicle road
handling and passenger comfort [11]. Of the numerous configurations and
implementations of vehicle suspension systems, the majority can be classified as passive
suspension, as semi-active suspension, or as active suspension.
When designing a standard, passive suspension, the tradeoff mentioned above is made
upfront and cannot be easily changed. For example, a sports car suspension will have
stiffer shock absorbers for better road handling while the shock absorbers on a family
vehicle will be softer for a comfortable ride. In the case of semi-active and active
suspension systems, the tradeoff decisions can be changed in real-time. A semi-active
suspension has the ability to change the damping characteristics of the shock absorbers.
The fully active suspension can add power to the system [16]. One way to understand the
apparently subtle difference between semi-active and fully active suspensions is to
consider a hypothetical conflict with a known pothole. A semi-active system will make
the suspension soft when hitting the hole and then stiff after the hole. A fully active
suspension could feasibly lift the wheel over the pothole. The research presented here is
for fully active suspension systems.
The usage of active suspensions is quite varied; it could involve the control of individual
seats or the control of entire trains. For the purposes of this project, a specific application
was studied: control for the hydraulic actuators of an off-road military vehicle, the
HMMWV. The vehicle under investigation has been specially equipped.
In general, the following equipment is needed to institute an active suspension system:
1. Actuators - devices used to convert an electrical signal to mechanical motion,
typically these replace the shock absorbers of a vehicle and require a good
deal of power
ix
2. Sensors - devices to measure vehicle information, typically these measure
suspension expansion, and various accelerations
3. Computer - this is used to interpret sensor data and determine the actuator
control signal
This paper aims to present one way to assemble these devices into a tangible increase in
ride comfort. Additional research was conducted to obtain and use preview information
of the upcoming road to further improve ride comfort. Preview is needed to, �lift the
wheel over the pothole� as mentioned above.
While the immediate application is for use in traversing rough, off-road terrain, much of
what is discussed here can be applied to any active suspension system. Perhaps a more
propitious application of the technology is on emergency vehicles such as ambulances or
fire trucks. This would be particularly useful in states such as California where speed
bumps are customarily used on neighborhood streets as a means to reduce traffic flow.
x
Acknowledgments
First and foremost I would like to thank my research advisor, the James Marshall Wells
Professor and Chairman J. Karl Hedrick, for whom I have the greatest amount of respect
and admiration. Professor Hedrick not only afforded me the opportunity to work on this
project but also provided valuable education and direction in the field of control systems.
Many people have been involved in this project throughout the years. In particular, this
work was made possible by the prior research of Professor Andrew Alleyne, University
of Illinois at Urbana Champagne, and Dr. Carlos Osorio of the University of California at
Berkeley. The technical support and software expertise of Jayesh Amin from Scientific
Systems Company Inc. enabled much of the higher level control theory and
implementation.
The following people have provided stimulating conversation and engaging project
insight, my roommates Shawn Schaffert, Cory Sharp, and Johan Vanderhaegen as well as
my lab partners Michael Uchanski and John Absmeier.
I would like to thank the project sponsors: Scientific Systems Company Inc., the SBIR
Project Office, and the US Army TARDEC. This work was completed under Phase II of
the SBIR contract number DAAE07-96-C-X007.
1
Chapter 1 - Introduction
The HMMWV system has evolved into an organized, logical, hierarchical structure.
Essentially, initial control algorithms became springboards for future, more complex
controllers. Some of the legacy controllers provide a level of safety as well as a readily
available means to debug system problems. Other legacy controllers allow for side-by-
side comparison among control schemes. The controller software, detailed in Appendix
C, has been written to allow transition between the various control algorithms in real-
time. This chapter will explain the many operating modes, touch upon the key
mechanical components and enumerate project vernacular.
1.1 Controller Structure
The structure presented here serves as road map to the remaining chapters. In following
chapters the control algorithms will be discussed. However, some controllers mentioned
simply offer an alternative approach and only a brief explanation is provided.
1.1.1 Low Level Control
Figure 1.1 depicts the simplest controller on the HMMWV, PI position control. This is
needed to stabilize the system once the actuators are powered. There are 4 independent
controllers, one for each wheel. For coordinated motion there is a central, desired
position generator.
2
LHRPID
RHRPID
RideHeight Generator
LHFPID
RHFPID
Desired Motion
{pos}
{des
pos
ition
}
{spl cmd}
LHRPID
LHRPID
RHRPID
RHRPID
RideHeight Generator
LHFPID
LHFPID
RHFPID
RHFPID
Desired Motion
{pos}
{des
pos
ition
}
{spl cmd}
Figure 1.1: Diagram of PI control structure, 4 sensors required
Replacing the PI controllers with Force Tracking Controllers (FTC�s) one obtains the
FTC validation mode. Note that more sensors are needed but the structure is the same.
LHR
FTC
RHR
FTC
Force Generator
LHFFTC
RHFFTC
Desired Motion
{pos, frc, spl volt}
{des
forc
e}
{spl cmd}
LHR
FTCLHR
FTC
RHR
FTCRHR
FTC
Force Generator
LHFFTC
LHFFTC
RHFFTC
RHFFTC
Desired Motion
{pos, frc, spl volt}
{des
forc
e}
{spl cmd}
Figure 1.2: Diagram of FTC structure, 12 sensors required
3
1.1.2 Control without Preview
When running just the lower level controllers, a profile generator is used to create the
desired trajectories. To make the system responsive, a high-level control algorithm
replaces this profile generator. In general these schemes require information about the
full car vehicle states. Or if not, using full sensor information and a Kalman filter
enhances the information they do use.
KalmanFilter
HRF
MPC – SkyHook – LQR – VDC*
Performance Criteria
{pos, frc, spl volt}
{cha accel, p&r rates}
{pos, frc, hub accel}
{abs power}{14 states}
{des
forc
e}
* VDC uses a controller other than FTC
{spl cmd}
Chassis Sensors
LHR
FTC
RHR
FTC
LHFFTC
RHFFTC
KalmanFilter
HRF
MPC – SkyHook – LQR – VDC*
Performance Criteria
{pos, frc, spl volt}
{cha accel, p&r rates}
{pos, frc, hub accel}
{abs power}{14 states}
{des
forc
e}
* VDC uses a controller other than FTC
{spl cmd}
Chassis Sensors
LHR
FTCLHR
FTC
RHR
FTCRHR
FTC
LHFFTC
LHFFTC
RHFFTC
RHFFTC
Figure 1.3: Diagram of higher level control structure, 20 sensors required
The Velocity Damping Controller (VDC) scheme offered in Figure 1.3 will not be
discussed any further. It is provided here as an alternative to the force based control
paradigms. VDC attempts to dampen chassis motion by converting axle acceleration to a
desired suspension velocity. A low-level controller comparable to the FTC, described in
Chapter 2, is necessary to implement the VDC.
4
1.1.3 Preview Control
With the controllers of the previous sections well tuned, the preview information is
added. The sensor data must be corrected for vehicle motion at the time of measurement
and buffered until the higher-level controllers need it. More detail on these subsystems is
provided in Chapter 3.
KalmanFilter
HRF
Preview
Sensors
HPR Correction & Buffer
Chassis Sensors
LHR
FTC
RHR
FTC
MPCp - FSLQp
LHFFTC
RHFFTC
Performance Criteria
{pos, frc, spl volt}
{cha accel, p&r rates}
{pos, frc, hub accel}
{abs power}{14 states}
{preview}
{des
forc
e}
{spl cmd}
KalmanFilter
HRF
Preview
Sensors
HPR Correction & Buffer
Chassis Sensors
LHR
FTCLHR
FTC
RHR
FTCRHR
FTC
MPCp - FSLQp
LHFFTC
LHFFTC
RHFFTC
RHFFTC
Performance Criteria
{pos, frc, spl volt}
{cha accel, p&r rates}
{pos, frc, hub accel}
{abs power}{14 states}
{preview}
{des
forc
e}
{spl cmd}
Figure 1.4: Diagram of preview control structure, 22 sensors required
The Frequency Shaped Linear Quadratic (FSLQ) Controller is a Linear Quadratic
Regulator (LQR) mathematically formulated in the presence of a frequency shaping
Human Response Filter (HRF), see Sections 4.3 & 3.4 respectively. An FSLQp
Controller can be designed to use the available preview information [20]. FSLQp
simulations were carried out by SSCI for realistic road profiles provided by TARDEC.
Performance was comparable with the MPCp but FSLQp control does not explicitly
handle system constraints and will not be considered further.
5
1.2 HMMWV Equipment
Lotus Engineering, England, completed original instrumentation of the HMMWV. The
University of California at Berkeley added additional sensors and a new computer, see
Appendix A. Provided below are tables detailing the important information regarding the
sensor and actuator suites.
Vickers PV3-115 Hydraulic Pump
Supply Pressure 3000 psi
Flow Rate 45 liters/min
Power Consumption < 32 hp @ < 3500 rpm
Table 1.1: Important hydraulic pump specifications
Qty Sensor Type Location Measurement
4 Load Cell Top mount of each actuator Actuator forces 4 LVDT Inside each actuator Actuator displacement 4 Hub Accelerometer On each wheel hub Axle vertical acceleration
2 Chassis Accelerometer Opposite corners of chassis Chassis vertical
acceleration 2 Rate Gyro Center console Pitch and Roll rates
2 Range Front of vehicle Preview, distance to ground
The physical constraint set, and respective values are shown below.
{Force, Force Rate, Susp Limit} (4.5)
With preview information, MPC becomes MPCp. MPCp enhances MPC by considering
roadZ& and relative road heights for the desired pH at each wheel.
Parameter Weight
Absorbed Power 23
Suspension Travel 0.02
Suspension Velocity 192
Tire Deflection 0.08
Control Usage 1.1 6−e
Table 4.2: MPC weighting gains
Constraint Value
Force ± 8000 N
Force Rate ± 5000 N/s
Suspension Travel ± 0.1 m
Table 4.3: MPC constraint values
31
Chapter 5 - Experimental Results
HMMWV controllers were introduced systematically, simple controllers were tested first
and computational complexity was slowly increased. Initially, PI position control of the
actuators was used to verify proper hardware wiring and functionality. Force tracking
control was tuned by analyzing the spool voltage surface then later connecting the force
surface to the spool voltage surface. To test the controllers, a desired profile was
required. For this, a custom, relative time, generic profile generator block was created.
Following satisfactory tuning of the FTC, the high-level, force generating controllers
were connected to the desired force of the FTC.
Generated preview information was used with the MPCp. Owing to difficulties with the
preview correction algorithm the MPC had not used sensor, preview data at the time of
this report.
5.1 Ride Height Control
Ride Height Control (RHC) is the most basic, yet essential controller on the HMMWV.
RHC performance is shown in Figure 5.1. The desired position being tracked is part of a
demonstration profile. At the end of a real-time modifiable sequence of events one tire is
raised off of the ground; this demonstrates some extraneous advantages of active
suspension systems.
A slight phase lag is visible in Figure 5.1. The lag can be removed with higher gains but
remains for the sake of passenger comfort.
32
15 20 25 30−0.04
−0.02
0
0.02
0.04RHC Performance − LHF
Pos
ition
(m
)
Actual Desired
15 20 25 30−0.04
−0.02
0
0.02
0.04RHC Performance − LHR
Pos
ition
(m
)
Time (sec)
Actual Desired
15 20 25 30−0.04
−0.02
0
0.02
0.04RHC Performance − RHF
Actual Desired
15 20 25 30−0.04
−0.02
0
0.02
0.04RHC Performance − RHR
Time (sec)
Actual Desired
Figure 5.1: Plot of Ride Height Controller performance
5.2 Force Tracking Control
This section depicts most of the problems mentioned in Chapter 2. The final Force
Tracking Controller (FTC) is more than sufficient for the research objectives. The most
common profile used in tuning the controller is a �sweep sine�. A �sweep sine� varies
frequency linearly from 1Hz to 10Hz and attenuates the amplitude with time. Thus, the
time axis roughly corresponds to a frequency.
Figure 5.2 shows the affects of the resonant modes of the full car system. To obtain these
plots, FTC gains are turned down slightly to amplify the problem.
33
0 1 2 3 4 5 6 7 8 9 10
−1000
0
1000
FTC HPR Performance − Force (N)
Hea
ve
Actual Desired
0 1 2 3 4 5 6 7 8 9 10
−1000
0
1000
Pitc
h
Actual Desired
0 1 2 3 4 5 6 7 8 9 10
−1000
0
1000
Rol
l
Time (sec)
Actual Desired
Figure 5.2: Plot of FTC performance in heave, pitch & roll modes
Observe the resonant peaks of ~ 2Hz for heave and pitch modes; the roll mode is closer
to 4 Hz.
Next are the results of the Output Redefinition scheme. Once again, controller gains are
turned down slightly. There is a slight improvement in tracking around 1.5Hz, or about
1sec, as shown in Figure 5.3. Moreover, Figure 5.4 depicts a mild improvement in the
sum squared relative velocity error for frequencies greater than 5Hz. Relative velocity
error is defined as the difference between the actual suspension velocity us xx && − and the
velocity predicted by the quarter car model. These results are not an indication that the
theory is erroneous, but rather, the ORD gain cannot be increased very high because
control noise amplification causes system instability. Osorio et al [14] explains that a
gain of 5000 was needed to sufficiently move the poles of the Berkeley Active
Suspension Rig (BASR) system. With the HMMWV FTC and KF only a gain of 150 is
attainable. In implementation, ORD is not used as it requires information from the KF,
which if difficult to obtain given the HMMWV DSP architecture, see Appendices B & C.
34
0 1 2 3 4 5 6 7 8 9 10−1500
−1000
−500
0
500
1000
1500Force Tracking Controller Performance
For
ce (
N)
Actual Desired
0 1 2 3 4 5 6 7 8 9 10−1500
−1000
−500
0
500
1000
1500FTC with Output Redefinition
For
ce (
N)
Time (sec)
Actual Desired
Figure 5.3: Plot of FTC performance with Output Redefinition
0 1 2 3 4 5 6 7 8 9 100
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8Relative Velocity Error Improvement using ORD
Sum
Squ
ared
Err
or (
m2 /s
2 )
Time (sec)
Kv = 0 Kv = 150
Figure 5.4: Plot of sum squared relative velocity error for output redefinition
35
In Figure 5.5 the controller gains are returned to their nominal values and the initial
amplitude of the �sweep sine� was increased to 2000 N. Additionally, the response to a
filtered square wave is shown. There is no compensation for HPR or ORD. If present,
ORD would lessen the dip at each peak.
Figure 5.6 shows FTC performance while tracking a discrete Fdes. Since the higher level
controllers run at a sampling rate of 30ms the original Fdes is filtered, equation (2.24), and
a smoother Fdes is tracked by the FTC.
0 1 2 3 4 5 6 7 8 9 10−3000
−2000
−1000
0
1000
2000
3000Force Tracking Control − Sweep Sine
For
ce (
N)
DesiredActual
0 1 2 3 4 5 6 7 8 9 10−1500
−1000
−500
0
500
1000
1500Force Tracking Control − Square Wave
For
ce (
N)
Time (sec)
DesiredActual
Figure 5.5: Plot of nominal FTC performance
36
0 1 2 3 4 5 6 7 8 9 10−4000
−3000
−2000
−1000
0
1000
2000
3000
4000Force Tracking Control − Discrete Sweep Sine
Time (sec)
For
ce (
N)
DesiredActual
Figure 5.6: Plot of FTC performance tracking a discrete, generated control signal Fdes
5.3 High-Level Controllers
Tuning and performance evaluation of the high-level controllers is conducted at the test
track described in Appendix D. More realistic performance data is collected on an off-
road, natural terrain.
Figure 5.7 depicts typical results. All of the higher level controllers perform similarly,
the MPC is slightly better than the rest. There is better than a twofold improvement in
the absorbed power criterion when compared to the passive suspension. LQR
performance, not shown, is comparable to the MPC performance. This is true provided
the system remains within constraints, Table 4.3, and there is no preview information.
For the MPC trial in Figure 5.7 the force tracking controller performance is shown.
Observe the two spikes corresponding to collision with the test track obstacles. At these
37
instances there is saturation of the control input u1. In theory, the MPCp should reduce
the amount of saturation.
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
5
10
15
20
25
30
35
40High Level Controller Results − Test Track
Rel
ativ
e A
bsor
bed
Pow
er (
Wat
ts)
Time (sec)
Passive Sky HookMPC
Figure 5.7: Plot of higher level controller performance evaluated at the test track
0 0.5 1 1.5 2 2.5 3−10000
−5000
0
5000FTC Performance, for MPC F
des − RHF
For
ce (
N)
Time(sec)
Actual Desired
Figure 5.8: Plot of FTC performance tracking the MPC Fdes of Figure 5.7
38
Using the same controllers off-road, the results of Figure 5.9 are generated. Now, MPC
handedly beats the Sky Hook Damping controller. Moreover, the off-road results show
that only the MPC maintained a CAP of < 6 Watts. By military standards, this terrain is
only drivable at this speed, 20mph, if the MPC is used.
To better understand the improvements of Figure 5.9 the suspension LVDT
measurements are shown in Figure 5.10. The MPC reduced suspension travel and the
likelihood of suspension saturation, which occurs at approximately ± 0.06 meters.
0 5 10 15 20 25 300
5
10
15High Level Controller Results − Off Road
Cum
ulat
ive
Abs
orbe
d P
ower
(W
atts
)
Time (sec)
Passive Sky HookMPC
Figure 5.9: Plot of higher level controller performance evaluated off-road
39
0 5 10 15 20 25−0.06
−0.04
−0.02
0
0.02
0.04
0.06
0.08
LHF
Pos
(m
)
Time (sec)
Suspension Travel for Off−road Test
MPC Sky Hook
Figure 5.10: Plot of suspension travel for off-road data in Figure 5.9
5.4 MPC Preview Controller
Finally, the preview information is added. Currently, only access to the generated
preview is available. Figure 5.11 implies that with preview, MPC performance
deteriorates. Intuitively this does not make sense. Some possible causes for this are
1. Poor synchronization between digital bumps and real bumps
2. Compounded distance error over the long track, see Figure 3.1
3. Bump profile was to perfect, it has a high initial derivative
Looking into these causes and improving the results is left for future work on the project.
40
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
2
4
6
8
10
12
14
16
18Model Predictive Controller Results − Test Track
Cum
ulat
ive
Abs
orbe
d P
ower
(W
atts
)
Time (sec)
MPC MPC Preview
Figure 5.11: Plot of MPC performance with and without generated preview data
41
Chapter 6 - Conclusions
Practical, implementation oriented, modifications to dynamic surface control theory were
successfully employed. Modifications involved adding filters at various levels of the
control computation. To the end of realizing full functionality of Model Predictive
Control (MPC) using preview information, numerous subsystems were designed. All
subsystems work well. A Sky Hook Damping Controller (SKY) and a Linear Quadratic
Regulator (LQR) were developed to benchmark the performance of the MPC without
preview. For the non-preview controllers more than a twofold increase in ride comfort
over passive suspension was obtained. This resulted in an increased drivable speed for
rough terrain. In particular, the MPC allowed for the fastest speed over off-road terrain.
All of the infrastructure is in place to test and debug the MPC with preview. Initial
results indicate the need for further research. In specific, more work is needed on the
preview correction algorithm and on the MPCp weights and constraints tuning. In the
immediate future testing will continue on the test track. Perhaps an FSLQ with preview
will be implemented; the respective derivation has already been done as part of Phase I
work.
The following support tasks need also be accomplished:
1. Design a test where suspension consistently saturates
2. Compute RMS for test track and compare results to the plot in Appendix D
3. Redesign CAP computation to be based on a moving window of appropriate
size
42
References
[1] Alleyne, A., �Nonlinear and Adaptive Control with Applications to Active Suspensions�, Ph.D. Dissertation, University of California at Berkeley, Berkeley, CA, 1994.
[2] Alleyne, A., and Hedrick, J.K., �Nonlinear Adaptive Control of Active Suspensions�, IEEE Transactions on Control Systems Technology, Vol. 3, No. 1, pp. 94-102, 1995.
[3] Alleyne, A., and Hedrick, J.K., �Nonlinear Control of a Quarter Car Active Suspension�, Proceedings of the 1992 American Control Conference, Chicago, IL, 1992.
[4] Alleyne, A., and Liu, R., �On the Limitations of Force Tracking Control for Hydraulic Servosystems�, ASME Journal of Dynamic Systems, Measurement and Control, 1999.
[5] Anderson, B., and Moore, J.B., �Optimal Control � Linear Quadratic Methods�, Prentice Hall, 1990.
[6] Bender, E.K., �Optimum Linear Preview Control with Application to Vehicle Suspension�, Trans. Of ASME, J. of Basic Engineering, pp.213-221, Jun.1968.
[7] Engleman, G.H. and Rizzoni, G., �Including the Force Generation Process in Active Suspension Control Formulation�, Proceedings of the 1993 American Controls Conference, San Francisco, CA, pp. 701-705, 1993.
[8] Gopalasamy, S., and Hedrick, J.K., �Tracking Nonlinear Non-minimum Phase Systems Using Sliding Control�, International Journal of Control, Vol. 57, No. 5, pp. 1141-1158, 1994.
[9] Gopalasamy, S., Hedrick, J.K., Osorio C., and Rajamani, R., �Model Predictive Control For Active Suspensions � Controller Design and Experimental Study�, Trans. of ASME, J. of Dynamic Systems and Control, Vol. 61, pp. 725-733, 1997.
[10] Hac, A., �Optimal Linear Preview Control of Active Vehicle Suspension�, Vehicle System Dynamics, Vol. 21, pp. 167-195, 1992
[11] Hac, A., �Suspension Optimization of a 2-DOF Vehicle Model Using Stochastic Optimal Control Technique�, Journal of Sound and Vibration, Vol. 100, No.3, pp.343-357, 1985.
[12] Hrovat, D., �Survey of Advanced Suspension Developments and Related Optimal Control Applications�, Automatica, Vol.33, No.10, pp 1781-1817
43
[13] Langlois, R.G., and Anderson, R.J., �Preview Control Algorithms for the Active Suspension of an Off-Road Vehicle�, Vehicle System Dynamics, Vol. 24, pp.65-97, 1995.
[14] Osorio, C., Gopalasamy, S., and Hedrick, J., �Force Tracking Control for Electro hydraulic Active Suspensions Using Output Redefinition�, Proceedings of the ASME Winter Annual Meeting, Nashville, TN, 1999.
[15] Rajamani, R., �Observers for Nonlinear Systems, with application to Automotive Active Suspensions�, Ph.D. Dissertation, University of California at Berkeley, Berkeley, CA, 1993.
[16] Sharp, R.S., and Hassan, S.A., �The Relative Performance Capabilities of Passive, Active, and Semi-Active Car Suspension Systems�, Proceedings of the Institution of Mechanical Engineers, Part D, Vol. 203, No.3, pp.219-228, 1986.
[18] Thompson, A.G. and Chaplin, P.M., �Force Control in Electrohydraulic Active Suspensions�, Vehicle System Dynamics, Vol. 25, pp.185-202, 1996.
[19] Thompson, A.G., Davis, B.R., and Pearce, C.E.M., �An Optimal Linear Active Suspension with Finite Road Preview�, Society of Automotive Engineers paper 0148-7191/80/0225-0520(800520), 1980.
[20] Tomizuka, M., �Optimum Linear Preview Control with Application to Vehicle Suspension � Revisited�, Trans. of ASME, J. of Dynamic Systems, Measurement and Control, Vol.98, No.3, pp.309-315, Sep.1976.
44
Appendix A - HMMWV Hardware
A.1 Equipment as Received
Vehicle
Figure A.1: Photograph of experimental HMMWV
The vehicle used for this project is an experimental High Mobility Multi-Purpose
Wheeled Vehicle (HMMWV) Model M1026, manufactured in 1993 by American Motors
General for the US Army TACOM. Powered by a 6.5 liter diesel V8 rated at 150 hp @
3600 RPM, the HMMWV has a top speed of 55 mph. The engine is mated to an
automatic transmission driving a full time four-wheel drive system.
45
Dimensions Front RearWheelbaseDistance from CG 1531.6mm 1770.4mmCG HeightTrackTotal Suspension Travel 269mm 271.5mm
Weights Front RearGross Vehicle WeightUnsprung Weight 126Kg 130Kg
3302mm
842.6mm1818.6mm
3810Kg
Table A.1: Base Vehicle Data
Hydraulic System
Lotus Engineering of England modified the vehicle for the Army�s research purposes.
The conversion work was done in 1993, under a previous contract with Lotus for the
development and implementation of a velocity based active suspension controller.
Figure A.2: Physical schematic for the experimental HMMWV
46
As can be seen by the schematic in Figure A.2, the experimental HMMWV has been
equipped with four hydraulic actuators in place of the standard passive suspension shock
absorbers. The vertical wheel travel was nearly doubled to 26 centimeters.
A Vickers PV3-115 hydraulic pump powers the system hydraulics. The pump is rigidly
mounted to the chassis and is driven by a transmission belt directly connected to the
engine powertrain. The system supply pressure is 3000 psi. With a maximum design
flow of 45 liters per minute, the pump consumes up to 32 hp and requires an engine speed
of 700 to 3500 rpm. This information is summarized in Table 1.1.
Two independent current driven electro-hydraulic servovalves control hydraulic flow in
each of the four actuators. Moog, Inc., located in the United Kingdom, manufactured
these valves. The primary spool valve, model E773-030, controls the amount and
direction of flow to or from each of the two actuator chambers. The bypass valve, model
E760-730, controls the area of an orifice that allows flow between the two chambers of
the actuator. While the primary spool valve controls the actuator behavior by introducing
energy to the system, the bypass valve can only control the rate of energy dissipation
within the actuator. See actuator schematic, Figure 2.3.
47
Figure A.3: Schematic for the HMMWV hydraulic system
Figure A.4: Photographs of hydraulic actuator installations: left- Front right- Rear
48
Sensors and Electronics
The Lotus-modified HMMWV is equipped with a suite of sensors and transducers to
measure various vehicle data. Table A.2 lists the Lotus-installed sensors and their
respective measurements.
Qty Sensor Type Location Measurement
4 Load Cell Top mount of each actuator Actuator forces
4 LVDT Inside each actuator Actuator displacement
4 Hub Accelerometer On each wheel hub Axle vertical acceleration
For relatively straight path motion or for uniform, wide bumps in the road profile it is
sufficient to use only range finding units to obtain preview information. This assumption
52
simplifies the sensor requirements and, as shown in Section 3.2.2, the preview processing
algorithm.
Two types of sensors were explored:
1. Frequency Modulated Continuous Wave (FMCW) radar by O�Conner
Engineering
2. WTA24-P5401 LED optical sensor by Sick Optic
FMCW Radar Sensor
The FMCW radar has a central frequency of 24.5 GHz and scanning range of 0.5 GHz.
For easy comparison with the WTA24, the other pertinent information is presented in
Table A.4.
Specification: Nominal Value:Range 1.0 m - 5.0 mRange Rate 0 m/s - 40 m/sResolution 0.01 mReproducibiliy -Accuracy -Light Spot 0.3 m - 0.6 m Output 2.5 V - 7.0 VResponse Time 1.1 ms
Table A.4: FMCW radar specifications.
WTA24 Optical Sensor
This sensor consists of a modulated infrared LED, with an average life of 100,000 hours
at 25°C, and precision reflectors all mounted inside a rugged diecast metal housing. The
unit meets or exceeds shock and vibration standards: IEC 68-2-27/IEC 68-2-6. The
general specifications of interest are tabulated below:
53
Specification: Nominal Value:Range 0.6 m - 1.2 mRange Rate -Resolution 0.02 mReproducibiliy 0.03 mAccuracy 0.08 mLight Spot 0.02 m - 0.03 m Output 4 mA - 20 mAResponse Time 5.0 ms
A custom designed, steel metal frame rigidly attached to the front bumper of the
HMMWV was the original mount, see Figure A.9.
0.6m
1.5m
Figure A.9: Photograph of original radar mount with key dimensions labeled
55
The mount had adjustable radar mount angles (to change the preview distance), strong
structure to endure rugged terrain, high natural frequency to minimize signal noise, and
right angle protrusion to allow the hood to open.
A new mount was designed and built to hold the optical sensors and radar as well as to
modify some features of the original mount paradigm. With the new mount, the drivers
view is not obstructed and the radars are 1 foot higher. The new mount is not as rigid as
the original and changing the preview angle requires construction of additional fixtures,
see photo below. Mount preview characteristics are:
► 9, 0.01 sec steps of preview
► 35 mph maximum vehicle speed
► ~2 samples/ft minimum at 100Hz buffer processing
Figure A.10: Photograph of new, wooden, preview mount in WTA24 configuration
Radar mounts, not shown, allow for vertical, side mount of the radar. Essentially, the
radar looks straight down at a road profile different than the profile under the wheels.
This assisted in application testing of the radar.
56
Appendix B - Signal Processing
A dSpace Autobox is used as the HMMWV control computation computer. Prior to
entering the Autobox some signals require pre-filtering or amplification. The particular
sensor and signal routing configuration determine the type of analog signal processing
required. For instance, noise from the spool position feedback signal was corrupting all
servo-amplifier data on the cable; now, an analog low pass filter is applied prior to
assembling the signals.
Every sensor signal is routed through the center console of the HMMWV. Thus, most of
the analog signal conditioning is computed there. Signals enter the Autobox via a 32-
wire flat ribbon cable.
B.1 Autobox
The development and real time implementation is done using a dSpace multiprocessor
data acquisition and Digital Signal Processing (DSP) unit, which consists of:
I/O Boards:
DS2003: 32 Channel Analog to Digital Converter Board
DS2103: 32 Channel Digital to Analog Converter Board
Digital Signal Processing Boards:
DS1003: TI TMS320C40 Parallel 60MHz DSP board
DS1004: DEC Alpha AXP21164 300MHz DSP board
Expansion Box for In-Vehicle Experiments:
Autobox
dSpace Software Tools:
Cockpit: Virtual Instrument Panel Tool
Trace: Data Acquisition and Variable Display Tool
RTI-MP: Multiprocessor Real time interface for Matlab and Simulink
57
Figure B.1: Photograph of AutoBox expansion housing for in-vehicle experiments
The expansion box is specifically designed for in-vehicle experiments and houses all four
dSpace boards. The Autobox receives power directly from the vehicle battery, 24 volts.
Internal DC/DC power supplies regulate power and compensate for any voltage
fluctuations. Interface to a Notebook PC is made via Ethernet cable. The Notebook PC
is used for programming, downloading the control code to the DSP boards and, if desired,
for data acquisition and display. Although the downloaded control code is fully
autonomous, the PC interface is used to change control modes. Figure B.2 depicts the
basic hardware architecture of the dSpace data acquisition and DSP unit.
58
FromHMMWVSensors
ToHMMWV
Actuators
Servo Amplifiers
Lotus Interface &Signal Conditioning
BoxUC Berkeley
Sensor Interface
AutoBox
ADC BoardIO Boards
DS2003DS2103 DAC Board
DS1004Alpha 21164
300 MHz
DS1003TMS320C40
60 MHz
DualPortRAM
PC
FromHMMWVSensors
ToHMMWV
Actuators
Servo AmplifiersServo Amplifiers
Lotus Interface &Signal Conditioning
Box
Lotus Interface &Signal Conditioning
BoxUC Berkeley
Sensor Interface
UC Berkeley Sensor
Interface
UC Berkeley Sensor
Interface
AutoBox
ADC BoardIO Boards
DS2003DS2103 DAC Board
DS1004Alpha 21164
300 MHz
DS1003TMS320C40
60 MHz
DualPortRAM
AutoBox
ADC BoardIO Boards
DS2003DS2103 DAC Board
DS1004Alpha 21164
300 MHz
DS1003TMS320C40
60 MHz
DualPortRAM
AutoBoxAutoBox
ADC BoardIO Boards
DS2003DS2103 DAC Board
ADC BoardADC BoardIO Boards
DS2003DS2103 DAC BoardDAC Board
DS1004Alpha 21164
300 MHz
DS1004Alpha 21164
300 MHz
DS1003TMS320C40
60 MHz
DS1003TMS320C40
60 MHz
DualPortRAM
DualPortRAM
PCPCPC
Figure B.2: Diagram of the hardware architecture for active suspension control
All connections to the Autobox are routed through the Lotus Interface Box. The box
provides two pre-established 32pin connectors for the I/O cables. Inside the AutoBox
the I/O boards are connected to the C40 DSP by a peripheral high-speed bus (PHS-bus).
The C40 DSP board processes the I/O, FTC and communication tasks, the Alpha 21164
DSP board is used for complex floating point operations and computationally intensive
processes such as the MPC and preview buffer. Data is transferred between the C40 and
the Alpha via dual-port memory, allowing for fast interrupt-driven communication
channels. A PC connects to the system via Ethernet cable and provides a graphical user
interface for monitoring and interacting with the application running on the system.
Graphic interaction with the real-time application is performed with the dSpace Cockpit
and Trace tools.
59
B.2 Signal Conditioning
Prior to connecting sensor signals to the Autobox it is necessary to filter or amplify some
signals. Inside the Lotus box the signals pick up about 100mV of noise; to maintain a
good signal to noise ratio the respective sensor signals are pre-amplified before the Lotus
box.
When allowable, only software filters are used to ensure uniform phase delay in signals
and also to allow for easy modification of cutoff frequencies.
Hardware Amplifiers & Filters
A sample schematic for the WTA24 preview sensor preamplifier is given in Figure B.3.
In this case, the amplified voltage output (converted from current output) exceeded ±10
volts, but not the 20 volt range, of the ADC so a bias is added during the amplification
stage.
Figure B.3: Schematic for the summing amplifier used for the WTA24
Software Filters
When necessary 40Hz low pass butterworth filters are used. The filter design can be
obtained via the Matlab, �butter� command. No bias removing filters are implemented
on sensor inputs. Static subtraction of sensor bias is sufficient for short term testing.
60
Appendix C - Real-time Software
For the purposes of prototyping, software is the ideal platform as it affords easy
modification. To comply with the requirements of the dSpace compilers, Matlab, by
Math Works Inc., was chosen as the programming language. The real-time interface
multiprocessor (RTI-MP) tool provides automatic code generation directly from Simulink
block diagrams and renders low-level C programming unnecessary. Simulink is a
graphical interface to the Matlab software. When practical, code is written graphically
using existing Simulink components from standard libraries. Upon occasion it is
necessary to construct custom blocks of code, S-functions, to perform complicated
functions, such as the MPC and the preview buffer algorithms.
This Appendix is intended as a User�s Guide to the HMMWV software.
C.1 dSpace/Simulink Environment
Versions
Matlab
Version: 5.1.1.4
Date: September 2, 1997
Toolboxes: Simulink Fuzzy Logic*
Real-Time Workshop (RTW) Mu-Analysis and Synthesis*
Signal Processing System Identification*
Control System QFT Control Design*
dSpace Libraries Partial Differential Equation*
Nonlinear Control Design*
* Installed but not necessary in the current implementation. Table C.1: Matlab version and installed toolboxes
61
To obtain the version listed above, version 5.1.1 was installed and a Matlab provided
update program was run. In addition to the toolboxes above, the �State Flow� toolbox
would be useful. One of the primary functions of the code is to change the states of the
controller; pre-defined state transition software would have aided greatly in this regard.
dSpace
Version: 1.3
Build #: 1998110901
Components: RTI1003 Real-Time Interface to Simulink 3.2
RTI-MP RTI for Multiprocessor Systems 3.2
MLIBN Matlab-DSP Interface Library 3.1
MTRC40N Real-Time Trace Module for Matlab 3.1
Table C.2: dSpace version and components
During the course of the project dSpace version 2.1 was received. Due to some slight
bugs, the new software was never used for HMMWV control.
Configurations
Hardware configurations and setup parameters for the boards are set according to the
dSpace documentation. A summary of the important settings is provided below:
IP address of Autobox: 128.32.14.44
I/O Address for DS1003: 318-31F h
I/O Address for DS1004: 310-317 h Table C.3: Hardware addresses
DS2003 A/D Settings
Hardware: PHS-Bus Base Address: 20 h
DIP-Switch Setting: 0010
Software: ±10 V, 15 bit resolution on all functional channels. All 32 channels are used.
Table C.4: ADC settings
62
DS2103 D/A Settings
Hardware: PHS-Bus Base Address: 90 h
DIP-Switch Setting: 1001
Software: ±10 V, 14 bit resolution on all functional channels. Only odd numbered channels 5-19 are used. Upon initialization, termination, and errors the output voltage is set to zero.
Table C.5: DAC settings
Multiprocessor Setup
Scheduler mode: multiple timer tasks
Basic step size: 0.001 sec
DS1003 Solver: ode4
DS1004 Solver: discrete
Table C.6: Multiprocessor information
To determine the best paradigm for data relay across the dual port memory, see below,
application tests were conducted. From the results: the Alpha board runs a 10ms and
30ms task only and data transfer from the TI board to the Alpha board is conducted via
virtual shared memory. Data transfer from the Alpha board to the TI board is conducted
via swinging buffer.
Swinging buffer � data is written to the buffer and not overwritten until all of the data
from one write process is read. This method guarantees congruent data but requires 3
times the storage space.
Virtual shared memory � data read and write processes occur when the respective process
is ready to read or write. Data is not guaranteed congruent but no additional memory
space is required.
More information on the protocols is given in the dSpace documentation.
C.2 Implementation Architecture
Below is the system level block diagram of the HMMWV implementation. Graphically,
the components of the control software are divided into several subcategories: input
63
processing, control computation, output processing and alpha processes. There are two
types of blocks, program blocks and hardware interface blocks. Program blocks, e.g.
�Input Bias & Filtering� and �CPU alpha�, use standard Simulink programming practices
to implement the control. Hardware blocks, e.g. �MUX_ADC� and �master:0 to
alpha:0�, are provided by dSpace and handle the reading and writing of data to the
respective boards. After a general overview of the program structure, the following
sections will detail the logic underneath the custom program blocks.
Figure C.1: Simulink model of the system implementation
The set of 32 input signals is read from the ADC card onto the TI board. These signals
are then calibrated, grouped, and filtered. From there some signals are transferred to the
Alpha board via the dual port memory blocks. Other signals remain on the TI board and
are connected to the control computation block. After the control algorithm computes the
desired spool voltage, the 4 command signals are passed through a safety and limit check
before being transferred to the DAC. Bypass valve status is set within the �Output Bias
& Limit� block. The �Multiprocessor Setup & Download� block is a graphical way to
call the build and download commands for the system.
64
C.2.1 Signal Processing Modules
Input Processing
Figure C.2: Simulink model of underneath the �Input Bias & Filtering� block
Signals received and sent to the ADC/DAC are an order of magnitude less than the
physical, measured signal. After scaling the input, the signals are calibrated according to
specification documents and grouped with like signals. The sensor inputs are not ordered
in a consistent manner, the �Re-Order Signals� block puts all data in the sequence:
1. LHF � Left Hand Front
2. LHR � Left Hand Rear
3. RHF � Right Hand Front
4. RHR � Right Hand Rear
Thus creating a standard numbering order for the actuators. The �Inputs� block contains
all of the signal filters and bias subtraction schemes.
At this stage the pseudo state transition methods become evident. Constant values of 0 or
1 are used to turn certain features on or off. The value of 1 or 0 can be changed from
65
within Cockpit. For instance, the rising edge of the �Reset Bias� bit is used start an
integrator to determine the dc bias. A simpler example of the pseudo state transition is
the �Inputs On/Off� bit, when this bit is high the input signals are enabled and not
enabled when zero.
Output Processing
Figure C.3: Simulink model of underneath the �Output Bias & Limit� block
Aside from scaling and arranging the output signals, the essence of the output code is to
allow for safe operation of the HMMWV hydraulics by providing a method for
emergency stabilization via software, as per Section 3.1. Of course, stopping the engine
will also stop chassis motion but is very harsh on the system.
66
C.2.2 Control Modules
Figure C.4: Simulink model of underneath the �Control Computation� block
An integer, set from Cockpit determines which primary actuator control scheme is
enabled by the �Select Control� block. The desired force for the force-tracking controller
is either generated by the �Mock MPC� or computed on the Alpha board by a high-level
controller.
Ride Height, PI Control Module
PI controller provides a means to ensure a stable chassis when the pump is on and there
are no road disturbances. From the LVDT we know the expansion of the actuator, x.
Given some desired expansion xdes a proportional integral (PI) controller was designed
such that:
∫ −+−= )()( xxKxxKV desIdespspool (C.1)
The gain set {Kp = 150, KI = 50} was determined empirically to achieve a reasonable
response with moderate comfort to the passengers. The Simulink diagram of the control
code for the four actuators is shown below. Given this code, any desired position
trajectory, within the limits of the actuators, can be obtained.
67
Figure C.5: Simulink model of the �Ride Height Controller�
Force Tracking Control Module
Figure C.6: Simulink model of the final version of the FTC for one actuator.
From the derivation of the controller in Chapter 2, there are two surfaces coupled by a
filter, as seen in Figure C.6. Controller surfaces were tuned independently. It is not
shown here but a scaled desired trajectory was passed directly to the second surface
during tuning. Furthermore, an open loop control signal could be sent directly to the
spool valve servo amplifier. This was important for collecting the data needed for
parameter estimation. Below is one incarnation of the ORD FTC first surface described
by equation (2.16).
68
Figure C.7: Simulink model of a fully populated force surface for one actuator�s FTC
Notice the plethora of gain blocks. These blocks allow the respective terms to be
adjusted from Cockpit. The performance of the FTC is determined by the accuracy of the
parameters. The gain blocks allow real-time manipulation of the values.
C.2.3 Subsystem Modules
Subsystem modules were computed on the Alpha board. In the code structure shown in
Figure C.8, there are three primary computations for the Alpha board: the MPC, the
preview buffer and the Kalman Filter (KF). The base sampling rate for the board is
10ms; this means the inputs and outputs are processed at 10ms. Due to processor
constraints the MPC is run at a 30ms sampling rate. To simplify the interactions, the KF,
HRF, and Sky Hook, are also run at 30ms. Transfer of data between tasks of different
sampling rates is done one of two ways:
1. Faster task (10ms) to slower task transitions: zero order hold
2. Slower task (�MPC Mod�) to faster task (output): data is written to a buffer.
69
Figure C.8: Simulink model of �CPU Alpha�, notice inter-task data transfer methods
70
Appendix D - Test Track
The HMMWV is stored at the University of California�s Richmond Field Station (RFS)
in Richmond, CA. In addition to storage, RFS provides the local for testing. The
available testing paradigms are: 1. a custom test track, described below, 2. gravel roads,
3. dirt roads, and 4. off-road, grassy terrain.
For the test track we have opted for an asphalt, instead of a dirt, road surface to limit the
effects of weather, erosion, and wear. Six standard, hard rubber speed bumps,
manufactured by Scientific Developments Inc., are used. There are 10 possible
temporary locations for the bumps along the 32� test region. Bump raisers are used to
increase the height of the bumps in 1.5� increments. Photos of the test track follow.
Figure D.1: Photographs of RFS active suspension test track
71
TARDEC has conducted extensive research on terrain roughness values and how they
relate to the human drivable speed for a given road. The maximum drivable speed is the
speed that the Cumulative Absorbed Power, see Section 3.4, reaches 6 Watts. Figure D.2
presents this information for a standard HMMWV. Although is has not yet been done, a
terrain roughness value will be computed for the test track profile. Perhaps some sections
of the dirt, gravel or off-road test tracks will be measured and converted as well. With
that information, a true valuation of the MPC results presented herein can be obtained.
Figure D.2: Plot of rate limiting speed for a given terrain roughness. 55mph is taken as the
maximum attainable HMMWV speed.
72
Appendix E - Glossary
Nomenclature
Piston area = 0.0044 m2
Discharge coefficient = 0.7
Leakage coefficient = 2/emim CC + = 15e-12
Suspension damping = 12000 Ns/m
Tire damping = 200 Ns/m
Actuator force
Friction force = 120 N
Voltage to position conversion factor = 1481 V/m
Suspension spring stiffness = 240 kN/m
Tire spring stiffness = 1000 kN/m
Relative velocity, chassis → axle = 2.1
Sprung mass = 2800 kg
Un-sprung mass = 270 kg
Equivalent mass ( )su mm 11 +
Supply pressure = 20684 kN/m2
Pressure induced by load
Spool valve position
Bypass valve area
Input voltage command
Total volume of actuator cylinder chamber
Spool valve width = 0.008 m
Hydraulic coefficient = tV/4β = 2.273e9 N/m5
Bulk modulus of hydraulic fluid
Specific gravity of hydraulic fluid = 3500
pA
idC
tmC
sc
tc
AF
fF
k
sm
eqm
sk
tk
sP
LP
1u
2u
tV
wα
β
ρ
V
vk
um
73
Acronyms
RHC Ride Height Controller
FTC Force Tracking Controller
ORD Output Redefinition of FTC
SKY Sky Hook Damping Controller
LQR Linear Quadratic Regulator
FSLQ Frequency Shaped Linear Quadratic Controller
VDC Velocity Damping Controller
MPC Model Predictive Controller
MPCp Model Predictive Controller with Preview
HRF Human Response Filter
CAP Cumulative Absorbed Power
HPR Heave Pitch & Roll
pH Preview Horizon for MPC
DOF Degree of Freedom
LHF Left/Right Hand Front/Rear
LVDT Linear Variable Displacement Transducer
BASR Berkeley Active Suspension Rig
HMMWV High Mobility Multi-Purpose Wheeled Vehicle
UCB The University of California at Berkeley
SSCI Scientific Systems Company Inc.
SBIR Small Business Innovative Research
TACOM Tank Automotive & Armaments Command
TARDEC Tank Automotive Research, Development Center