3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

Embedded Electronic Control System for Continuous Self-Tuning of Suspension Preload

F. Baronti*, F. Lenzi*, R. Roncella*, R.Saletti* and O. DiTanna** * University of Pisa, Dipartimento di Ingegneria dell’Informazione, Via Caruso 16, 56126 Pisa, (Italy) ** Piaggio S.p.A., R&D Department, Via Rinaldo Piaggio, Pontedera, (Italy)

Abstract—Comfort and safety of vehicles significantly electronically-controlled actuator added to the spring and depends on the behavior of the suspension system. This is the damper. The actuator is computer-controlled in order particularly true in two-wheel vehicles where the to vary the adjustable suspension parameters and to equilibrium is fundamental. Variations of the static load on stabilize the vehicle, according to its state, as monitored the vehicle determine a compression of the suspension by sensors. spring that modifies the static equilibrium point with Such solutions are very efficient as far as performance respect to the optimal value. The system we describe is is concerned, but suffer the drawback of complexity and capable of continuously correcting the suspension preload of cost. These drawbacks are more stringent if we refer to a motorcycle without user intervention, in order to two-wheel vehicle applications. In this case, the compensate the load variations. The electronic system is requirements in terms of cost and robustness are very based on a microcontroller and a linear position sensor that tight. Moreover, the dynamics and the weight of the measures the suspension stroke. It executes a closed-loop involved vehicles are by far different with respect to four- control algorithm that adjusts the preload and maintains wheels, so that solutions feasible and affordable on a car the average value of the suspension stroke constant. The may not even be conceived on a motorcycle. Suspensions experimental results coming from road tests performed on a scooter are reported and discussed. equipped with electronic control are today available only on a few top-class . The control is usually semi-automatic and the users are asked to select the I. INTRODUCTION preferred setting. Lower-class vehicles use suspensions equipped with a mechanical regulation of the preload, Suspensions are crucial subsystems of road vehicles obtained with a rotating gear. The regulation procedure is from both safety and performance points of view. They in principle simple, but rather tricky if manually applied absorb the shocks coming from the road asperities by any time the load on the vehicle changes. guaranteeing the road holding of the vehicle as well as the comfort of the occupants. Fundamental components Indeed, load variations are very important in of passive suspensions are the spring (the elastic element) motorcycles because the presence of a passenger and/or and the (the damping element) [1]. baggage may increase the sprung masses above 100% compared to a driver-only load condition. It is obvious The suspension has to operate in many different road that suspension control becomes crucial also in medium and load conditions. Several mechanical settings are thus and low-class motorcycles, when the demand of available to improve its behavior, such as compression increased safety and comfort is raised from the users. In and rebound damping regulation and preload adjustment. any case, the suspension control should be automated and Adjustable suspensions were introduced many years achieved with low-cost systems affordable for two-wheel ago in the automotive field, as hydro-pneumatic systems. vehicles [2]. The many improvements over the years have also led to The aim of this work is to provide a motorcycle with a the implementation of active suspensions. An active or low-cost embedded electronic control system capable of intelligent suspension, as it can be defined, consists of an achieving the automatic self-tuning of the suspension preload, in order to overcome the limit of manual and Load

C Load semi-automatic regulations. FP C The electronic embedded system described here P realizes a closed-loop control. It uses a linear position C L sensor to measure the suspension stroke and drives the suspension actuator, an electric DC motor that pumps oil in the hydraulic preload circuit, so that the average suspension stroke is maintained constant. The system is based on a microcontroller that implements the control algorithm without any intervention from the user. Two are the main problems to face with when

Fig. 1 Preload effect on the height of the vehicle. designing such a control system: the hysteresis in the suspension response and the dependence of the measured 3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

⋅ = ⋅ ()+ M g k CL P (2) CL (mm)

Preload

M ⋅ g C = − P (3) L k

CL* where CL is the static compression due to a mass M that loads the spring, g is the gravitational acceleration and k is the constant of elasticity of the spring. Controlling P

Load (kg) makes possible to compensate the compression due the W1 W2 W3 mass M, to set the vehicle height with respect to ground and restore it to the optimal value, as indicated by the Fig. 2 Compression as function of load at given preload values. suspension manufacturer. Thus, the vehicle maintains the correct trim that would otherwise be altered by the suspension stroke on the vehicle dynamics [1]. This additional mass. means that the control algorithm has to manage the Fig. 2 shows the relationship between compression and negative effects due to hysteresis [3] [4] [5] [6] and to load with 3 different values of the actual preload. The extract static values from the measured data, in order to diagram also shows the hysteretic behavior of the spring. change the preload setting only when a static load change In any case, the compression can be maintained at the occurs, being affected as less as possible by the constant value CL*, if the preload is increased when the movements of the vehicle [7]. static load increases from W1 to W2 or W3. A Piaggio Beverly 500 scooter has been equipped with the system prototype and some road tests have been III. HARDWARE carried out. They show that the suspension is controlled by the electronic system in such a way to automatically A. System Architecture adapt its preload to any variation of the load conditions. The architecture of the system is shown in Fig. 3. The suspension is provided with preload regulation, driven by II. SUSPENSION PRELOAD a DC motor. The on-board Electronic Control Unit (ECU) Suspensions are designed to work when compressed. continuously monitors the stroke of the suspension (CL) The spring is thus pre-compressed when assembled. This by means of a linear position potentiometric sensor. The compression is called preload (Fig. 1). Let us express the actuator automatically adjusts the preload CP when CL preload value as the difference between the actual stroke differs from the optimal value, in order to compensate the of the spring and its value when no load is applied. In static mass variations of the vehicle due to a change of preload-adjustable suspensions, the preload value consists configuration. Preload may be adjusted in motion, but the of a fixed portion CFP, and a portion CP that is variable, vehicle dynamics affects the suspension compression in so that the actual preload P is: this case. Therefore the knowledge of the vehicle velocity is fundamental to take into account this effect. Finally, P = C + C (1) the lateral stand open (i.e. parked or unloaded vehicle) FP P should prevent the control algorithm to operate. Preload adjustment is very important in a motorcycle, The ECU is provided with a CAN bus transceiver and because it allows the compensation of static load a wireless link for communications. The CAN protocol variations of the vehicle, as suggested by the equilibrium compatibility has been provided to communicate with the equation applied to the suspension. In fact, internal vehicle network, if any, and to access to the messages available on the CAN network [8]. The wireless

Linear Position Sensor Position Linear

Fig. 3 System’s Architecture. 3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

Analog C. Sensors and Actuator CAN Front-end The sensors used in the system provide the information Motor needed to execute the control algorithm. The vehicle Driver speed is measured by means of a Hall sensor, the output RS 232 µController of which is a square waveform with frequency Bluetooth proportional to the speed of the vehicle. The suspension static compression CL is measured by Power Supply means of a linear position sensor Penny and Giles MLS 130 [12] which is mounted in parallel to the suspension Fig. 4 ECU Architecture. spring. It is a potentiometric sensor for automotive applications, the output of which is the partition of the voltage reference VREF. that is applied to the link (Bluetooth protocol) is very useful during debug and microcontroller ADC input. This sensor is robust enough test, since it allows easy data logging on a remote for the application and represents a good trade-off notebook PC or PDA, between cost and performance. The measurement of the preload value CP is carried out B. ECU Architecture by means of a revolution counter integrated in the DC Fig. 4 shows the block scheme of the electronic board. motor of the suspension actuator, realized with a Hall The core is an 8-bit microcontroller from the Atmel sensor. No information about the direction of rotation is 80C51 family [9], with 8 ADC channels, 32 kB flash available. memory and CAN controller. We have used a Finally a digital signal provides the information on the microcontroller with redundant resources for this status of the lateral stand (open-closed). application, both for ADC channel number and computational power, in the prototype. This allows an The preload is regulated by the actuator: a DC motor easy development of the control algorithm. A smaller and a worm gear. These components control the hydraulic microcontroller tailored to the application will be used on piston placed on the head of the suspension that regulates the engineered version. the variable portion of the preload (e.g. 20 mm in this suspension). The actuator driver section consists of the STMicroelectronics TD340 driver IC [10], which drives 4 IV. SOFTWARE NMOS transistors constituting the H-bridge that provides power to the actuator’s DC motor. The driver IC is Once shown the hardware architecture of the system, designed for automotive applications and is provided with let us describe the software that controls the ECU. The over-voltage and thermal protections. Driving the DC ECU should behave like a standalone system when motor is very easy in this way: it is sufficient to send only controlling the suspension, but remote data-logging and 2 digital signals from the microcontroller to the driver, remote control have also been provided in the prototype, one for the motor activation and the other for setting the to make easier the development of the control algorithm motion direction. The 4 NMOS transistors have been and the system characterization. provided with a heat-sink, even if the devices are activated for short time intervals and their power A. Firmware dissipation should not exceed safe values. Fig. 5 describes the organization of the application The power supply section includes another NMOS firmware and software stack. Device driver is the first transistor which is used to protect the board from supply layer, where a set of hardware functions is made available polarity inversion, a very common mistake in the to software applications laying on top. Tasks are managed assembling process. This section is powered by the 12 V by a cyclic scheduler that runs on the microcontroller power supply (motorcycle battery) and contains a 5 V with a 10 ms period of repetition. This is the second layer voltage regulator for the digital section and a 2.5 V of the stack. The higher level is composed by the voltage reference. communication interface and the embedded application. The analog front-end consists of resistive voltage The ECU sends messages (MSG), during data-logging, or dividers which adapt the sensor signal levels to the ADC receives commands (CMD), when remotely controlled, input dynamic range. Zener diode protections are also through the communication interface by means of the provided on the microcontroller inputs, to protect the Bluetooth wireless link. In normal mode instead, the device by voltage spikes common in the automotive system is controlled by the application that runs on the environment. microcontroller. The communication section consists of a CAN section This feature has been very useful during the [11], which includes the CAN transceiver, and a development, when the control algorithm has been Bluetooth section, which provides the wireless link to validated on an external PC with hardware-in-the-loop external devices. The board is compatible with both Class simulations and then it has been ported on the 1 and Class 2 Bluetooth modules. A 100 m range module microcontroller. Moreover, logging actual data has also is useful during road tests for remote control or data been very useful to test and verify the system. logging with a portable PC. A 10 m range module is A further advantage due to the in-system sufficient for firmware update and data logging programmability of the 80C51 microcontroller together performed with an on-board PDA. with the presence of a wireless link is the possibility to update the microcontroller firmware and run diagnostic 3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

RESET, LAT. STAND OFF

Preload APPLICATION ON Reset

LabVIEW LAT. STAND? Wait MSG OFF Bluetooth CMD Load Preload Fig. 6 LabVIEW interface: control panel. COMMUNICATION EMBEDDED Measure setting INTERFACE APPLICATION after the first setting are applied only if the calculation CYCLIC SCHEDULER Preload OK leads to a difference of more than one level from the DEVICE DRIVERS NO YES actual setting: this allows the reduction of the negative effects of the suspension hysteresis that is due to friction T>Tmax? OR V=0 AND of the sliding piston in the damper. In fact, hysteresis T>Tstop? makes more than one equilibrium position per load APPLICATION condition possible. This may lead to different values of the compression at the same load, and to a possible wrong Fig. 5 Firmware and software stack and control strategy evaluation of a load change on the vehicle. flowchart. The system continuously monitors the status of the tools without physically connecting the device to a PC lateral stand and every adjustment operation is stopped if through the serial port, but using the wireless connection. it is found open. B. Control strategy C. LabVIEW remote interface As mentioned above, the system should measure the As explained above, the prototype system suspension compression and compensate it by varying the communicates with a remote PC-like device to monitor preload value, if a difference with the expected optimal and analyze the acquired data. The remote control of the compression is found. This means the vehicle has been system is realized by a remote LabVIEW interface. loaded or unloaded. Several commands has been defined to control the The flowchart of the control strategy is shown in suspension. It is possible to increase or decrease the Fig. 5. The system periodically checks the status of the preload, to set one of the 8 levels, to reset the system and suspension. The measurement starts as the engine is to swing from the minimum to the maximum values and switched on and it is repeated every Tmax or when the vice versa. Moreover, the data measured by the sensors vehicle is stopped for more than Tstop. To reduce as are made available on the remote side and are thus shown much as possible the effect of the vehicle dynamics, the on the same control panel. control algorithm should reject measured values that are Fig. 6 shows a LabView panel used for road tests: altered by dynamic effects. The measured values of the there are indicators for the sensor signals, such as vehicle suspension stroke are considered valid if the speed of the speed, presence of lateral stand, DC motor current, vehicle is in the range between Vmin and Vmax and the selected preload and suspension compression. The acceleration (calculated as the difference between speed temperature of the IC driver (a built-in sensor is values in a reference time) is less than Amax. If these available) and power supply are also monitored. The conditions are satisfied for a time interval of at least other indicators are for the Bluetooth COM port setting Tin_range, then the average value of the readings is and for monitoring the limit switch of the preload stroke. calculated as acceptable estimate of the suspension Data-logging also is managed by the LabVIEW compression. interface, by activating the “Logging” switch on the Actually, the average is calculated in an interval bottom right of the control panel of Fig. 6. Sensor data smaller than Tin _range to take into account and and parameters of the algorithm are sent via the Bluetooth compensate the latency of the mechanical system in wireless link to the remote host (a PC or a PDA), and reaction to an external stimulus. The values acquired stored for further analysis. The “Analyzing Panel” is during the first Tblind interval are discarded, whereas useful for off line analysis that provides charts or graphs data sampled during the following Taverage contribute to as those of Fig. 9. the calculation of the average. When the calculated average differs from the target value, the system starts to V. SYSTEM TESTING change the preload accordingly. We decided to divide the possible preload settings in 8 A. Laboratory tests levels (S0÷S7). Therefore, the preload regulation steps A benchmark for the laboratory development and are 2.5 mm each. 8 levels of preload setting are characterization of the suspension control system has first comparable to those found in suspensions with been designed and realized. Fig. 7 shows the laboratory mechanical adjustment. experimental set-up, on which the system has been The algorithm then proceed by measuring the developed. The suspensions are tighten to a moving plate suspension compression again. Changes of the preload where calibrated masses are stacked to simulate the load 3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

Fig. 8 Prototype installation on the Piaggio Beverly 500.

Fig. 7 Experimental set-up for laboratory characterization. slowly released and then extended and slowly released again, at a given load condition. The two equilibrium on the vehicle. First tests were useful to characterize the positions (max and min) are different because of the static suspension response. Several measurements were hysteresis. The difference between the two stroke values is carried out by varying the load with fixed values of the hysteresis value. The stroke values, as read by the preload that span from the minimum to the maximum position sensor, are reported in Table I, for different values allowed. values of the preload. They show that the on-vehicle These tests show that the suspension behavior is measured hysteresis is about 8 mm, as found out in the characterized by a hysteresis of about 8 mm This value laboratory experiments. does not depend on the preload setting. The laboratory Finally, dynamic road tests have been carried out. Some benchmark also provides signals that simulate the output tests have shown how the suspension stroke is influenced of the speed sensor and the presence of the lateral stand, by the speed and acceleration of the vehicle. It is obvious so that the control algorithm also can be verified before that vehicle acceleration is very important: positive installing the system on the vehicle. acceleration determines a compression of the spring, whereas a deceleration reduces it. The control algorithm B. Road tests has to take into account the dynamics of the vehicle when The vehicle used for road tests is a Piaggio Beverly estimating load conditions. We have chosen to consider 500. This scooter is equipped with rear suspensions the the measurements as valid only when the speed is within preload of which is adjustable as described above in the the range 20÷40 km/h (Vmin÷Vmax) and the acceleration hardware section. The linear position sensor was mounted is less than the 1 m/s2 (Amax). If these conditions are aside one of the springs, whereas the prototype ECU was satisfied for at least 5 s (Tin_range), then the measurement allocated below the driver seat, as shown in Fig. 8. is valid and the average of the compression CL is Let us define the experimental conditions for these road calculated. tests. It seems reasonable to distinguish 3 different load Another effect that comes from the road test analysis is conditions: rider only, rider and 20 kg of baggage placed the presence of a latency between the stimulus and the on the rear top-box, rider and passenger. The distribution effect on the suspension. This delay has been considered of the weights on the vehicle is an important factor. when acquiring data from the scooter. Variations of the rider’s weight has a slight influence on Finally, the control algorithm was tested by repeating the stroke of the rear damper, while adding or removing test cycles with the vehicle running on a oval-shaped kilograms on the top-box has more influence, since the track. The comparison between the data acquired when the box is placed just above the rear suspension. control is not activated and when the self-tuning of the The first test was aimed at on-vehicle characterization suspension preload is active is reported in Fig. 9. The of the suspension. The experiment consists of finding the diagrams show 3 tracks: the upper track displays the suspension equilibrium positions in both cases when the preload position expressed as the number of revolutions of suspension is compressed from the equilibrium point and the worm gear driven by the DC motor; the middle track is the speed of the vehicle, and the lower track is the stroke of the suspension. The left diagram of Fig. 9 shows that TABLE I. MEASURED SUSPENSION STROKE the suspension operates around the optimal stroke (the solid horizontal line) only under the “driver-only” load Preload Min Preload Med Preload Max condition, when no control is applied. Increasing the load, a CL min max min max min max both baggage and passenger, makes the suspension Load compressed too much. On the contrary, the right diagram Driver 28 36 15 23 06 14 of Fig. 9 gives evidence that the auto-leveling suspension Driver + system behaves in such a way to maintain the suspension 39 46 25 33 17 25 20 kg stroke around its optimal value. In fact, when the load is Driver + increased by adding baggage, the control algorithm 52 60 38 46 29 37 Passenger recognizes the change and adapts the preload (upper track) to the optimal value after two iterations. Then a passenger a Measures are in mm. is carried on board and the test resumes. The preload is adjusted again to the new condition after one iteration and 3URFHHGLQJVRIWKHWK0HGLWHUUDQHDQ&RQIHUHQFHRQ 7 &RQWURO $XWRPDWLRQ-XO\$WKHQV*UHHFH

Fig. 9 Road test results: comparison between a traditional suspension without control (left) and the self-tuned one (right), where the suspension preload is adjusted as a function of the estimated vehicle load. The horizontal line shows the optimal suspension stroke. it is set to its maximum value (level 7). Finally the driver- only load condition is restored and once again the system ACKNOWLEDGMENT adapts the preload down to the level 1. It is important to The authors would like to thank A. Ampolo for his note that after an initial transient time, in which the system contribution to this work. recognizes the variation of the load, the suspension stroke swing is always around the optimal value. This REFERENCES demonstrates that the suspension preload is continuously [1] D.J.N. Limebeer, R.S. Sharp, Bicycles, Motorcycles and Models, self-tuned and adapts itself to the actual vehicle load IEEE Control System Magazine, 2006. condition. [2] K. Hänninen, J. Mäki-Turja, M. Nolin, Present and Future Requirements in Developing Industrial Embedded Real-Time VI. CONCLUSIONS Systems - Interviews with Designers in the Vehicle Domain, Engineering of Computer Based Systems, 2006. 13th Annual An electronic system that performs continuous self- IEEE International Symposium and Workshop on. tuning of the preload of the suspension of a motorcycle [3] J. Wallaschek, Dynamics of non-linear automobile shock- has been presented in this paper. The microcontroller- absorbers, Int. J. Non-linear Mechanics, 1990, Vol 25, No 2/3, pp based electronic board is interfaced to a suspension in 299-308. which the preload can be set by a DC motor. The control [4] S. W.R. Duym, Physical Modelling of the Hysteretic Behaviour of unit receives the signal coming from a linear position Automotive Shock Absorbers, SAE Technical Paper 97-01-01, sensor that measures the suspension stroke. It then 1997. executes a control algorithm that adjusts the suspension [5] M.Liberati, A. Beghi, S. Mezzalira, S. Peron, Grey-box modelling preload in order to compensate variations of the static load of a motorcycle shock absorber, 43rd IEEE Conference on on the vehicle. The control algorithm is designed to take Decision and Control, December 14-17, 2004. into account both the hysteretic behavior of the suspension [6] Jing Zhou, Changyun Wen, and Ying Zhang Adaptive Backstepping Control of a Class of Uncertain Nonlinear Systems and the effects of the vehicle dynamics. With Unknown Backlash-Like Hysteresis, IEEE Transactions on The results of test stand experiments and road tests Automatic Control, 2004. show that the suspension system is controlled in such a [7] D.J.N. Limebeer, R.S. Sharp, and S. Evangelou, “The stability of way to adjust suspension preload to a value that makes the motorcycles under acceleration and braking,” J. Mech. Eng. Sci., suspension stroke swing exactly around its optimal value. vol. 215, no. 9, pp. 1095–1109, 2001. The self-tuning preload suspension operates without any [8] B.D. Emaus, Current vehicle network architecture trends, SAE user intervention in a continuous and fully autonomous Technical Paper 200-01-0146, 2000. way, thus improving the comfort of the ride and relieving [9] Datasheet available at www.atmel.com. the user from manual tricky interventions. [10] Datasheet available at www.st.com. [11] Road vehicles, “Interchange of digital information - Controller The overall robustness and cost of the system makes it Area Network (CAN)” International Standard Organization (ISO), suitable also for use in medium and low-level Standard 11898, Nov. 1993. motorcycles. [12] Datasheet available at www.leane.it.