Hardware-in-the-loop simulation of steer-by-wire system in automotive vehicle

Article history: Received 25 June 2016 Received in revised form 27 August 2016 Accepted 20 September 2016 Field test approach of steer-by-wire (SBW) technologies by using actual vehicle can be very dangerous. This is due to the fact that stability of the vehicle is very sensitive to the steering wheel input. Less optimum parameters of the steering controllers or system failure may lead to dangerous road accident. In this study, hardware-in-the-loop simulation (HiLS) is used to bridge the gap between simulation and experimentation of SBW system. In the proposed HiLS system, SBW test rig is set up to communicate in real time with 14 degree-of-freedom vehicle model. Proportional-integral-derivative control optimized with Ziegler-Nichols method is used to control the stepper motor of the SBW test rig. From simulation and experimental results, SBW system developed has the ability to closely follow the steering trajectory of the conventional steering system with acceptable errors. By using HiLS, both controller algorithm and the functionality of the steering actuator of SBW system can be tested in a semireal driving condition as preliminary testing.


Introduction
*Steer-by-wire (SBW) is one of the advanced technologies in automotive vehicles whereby mechanical steering column is removed from the steering mechanism and replaced with DC motor. Besides having less weight compared to the conventional steering system, the potential benefits of vehicle with SBW system is it has the capability to adopt active control technologies in improving vehicle dynamics performance. Active front wheel steering, lane keeping system, collision avoidance as well as lane tracking for autonomous vehicle can be easily implemented by using SBW system (Cesiel et al., 2006). SBW system is expected to perform the same functions as a conventional mechanically-linked steering system. There are two control functions involved in the SBW system namely steering position control and steering torque control. Steering position control is used to control the rotational angle of the electric motor in driving the steering pinion accurately. Meanwhile, steering torque control is used to generate an opposing torque for steering wheel to provide steering feel to the driver. This paper report the research finding on the steering position control using HiLS without considering steering feel response.
Recent works on SBW control can be found in Balachandran and Gerdes (2015), Russell and Gerdes (2014), Tahami and Afshang (2009), Xiuwei et al. (2009), Bertoluzzo et al. (2006) and Bachmeyer (2008). It can be noted that most of the research on SBW system focused on simulation works. Only a few papers reported the result of experimental works such as in Balachandran and Gerdes (2015), Haggag et al. (2005), Jang et al. (2003), Oncu et al. (2007), Park et al. (2005) and Park et al. (2007). Safety is the major concern in implementing SBW system on a real vehicle. This is due to the fact that the steering system is the primary factor influencing the directional stability of a vehicle. Some researchers investigated the reliability and fault tolerance control of the SBW system as can be found in Cesiel et al. (2006), Zhang et al. (2009), Kim et al. (2008), and Oh et al. (2004 with real vehicle. There are no production cars available in the market that relies solely on SBW technology due to the safety concern until 2010. The implementation of SBW technology into the automotive industry is limited to concept cars such as the GM Sequel (Cesiel et al., 2006). In early stage of the development of SBW system, dangerous road accident has the possibility to happen if the system fails to function properly. This is because of less optimum controller parameters, hardware failure or unconsidered system uncertainties. To avoid this safety problem, a middle step between simulation and experimental works namely HiLS is necessary. By using HiLS, the performance of the controller and the functionality of the SBW system can be evaluated at various conditions while avoiding unnecessary safety risks.
In this study, HiLS of SBW system which consists of 14 degree-of-freedom (DoF) vehicle model, conventional steering linkages driven by electric motor, sensors and signal processing unit has been developed. The 14-DoF vehicle model consists of ride and handling model coupled by Calspan tire model. The HiLS has three main subsystems namely vehicle model, controller and real steering system. Proportional-integral-derivative (PID) control optimized with Ziegler-Nichols method is used to control the electric motor to drive the rack-pinion system. The performance of the SBW system is tested for some standard steering maneuver tests namely step steer, double lane (DLC) change and slalom tests. The study contributes to the wealth of knowledge by demonstrating a new type of control method on HiLS of SBW, by achieving agreement between simulation and HiLS setup and also by testing on various maneuver styles. This paper is organized as follows: The first section contains introduction and review of some relevant preliminary works as well as the justification on the proof of concept of SBW control using HiLS.
The second section presents the structure of the HiLS test rig developed in this study and the proposed control structure of the SBW system. This is followed by the structure of 14-DoF vehicle model and the steering system modeling in the third section. The simulation and experimental results of SBW system for three maneuvering tests are presented in the fourth section. The final section contains conclusions.

HiLS test rig of SBW system
HiLS system is a method that can give more advantages for cost and safety (Seungkyu et al., 2009). This is because the experiment can be carried out as a real time situation to replace the actual test of a real vehicle. HiLS system is processed in the main computer called Host PC and the steering system is replaced by the HiLS mechanism. The pinion rotation executes real time control in the HiLS system. This section describes the hardware design in the HiLS system and the steering control. The actuator is attached on the pinion to rotate the pinion. The actuator driver and rotary encoder are connected to data acquisition (DAQ) PCI card. DAQ PCI card is connected with PCI-based network card where PCI-based network card is located on Target PC. Host PC and Target PC are connected using crossover network cable. AC/DC power supply functions to supply voltage to the actuator and the rotary encoder. MATLAB Simulink is the main software to run HILS for SBW system. It includes xPC Target and Real-Time Workshop as a controller for actuator and Visual Studio 2008 Express as a C compiler.
The DAQ PCI card which sends the digital output and receives digital input is connected to Target PC. The connection between Host and Target PC using crossover network cable is to give input signal to hardware driver. From the Host PC, the input signal goes to the Target PC and driver motor reads from DAQ card in digital input. The DAQ PCI card converts from digital input to analog input to run the stepper motor. The pinion rotation angle signal is transferred to DAQ through rotary encoder. Then the DAQ PCI card converts it to digital output and display the graph on Target PC. The results will be saved on Host PC after sending to workspace on xPC Target Explorer. Fig. 1 shows the HiLS setup for SBW system.

Control structure
The SBW system uses actuator to control the pinion rotation and ensures the vehicle follow the desired trajectory. The performance of the steering is based on the controller that is used on the system. The actuator will track the steering input position to follow the desired angle from the steering wheel. Based on the conventional steering characteristics, the SBW system has been developed in term of the ratio and the response with optimized controller. The control structure is developed in MATLAB Simulink to control the SBW system as shown in Fig.  2. Based on the Fig. 2, PID control optimized with Ziegler-Nichols is used to control the stepper motor. The optimized PID value will control the system to follow exactly the desired input of steering wheel angle. Fig. 3 shows the structure of PID control with learning rate.
The parameters of PID will be optimized by learning rate value. Eq. 1-3 show that the value of learning rate is multiplied with error and output error corresponding to each PID parameter.
The parameters for PID control will self-tune to optimal value for the system.

Vehicle model
The full-vehicle model of the passenger vehicle considered in this study consists of a single sprung mass (vehicle body) connected to four unsprung masses and is represented as a 14-DoF system, as in Hudha et al. (2011). The sprung mass is represented as a plane and is allowed to pitch, roll and yaw as well as to displace in vertical, lateral and longitudinal directions. The unsprung masses are allowed to bounce vertically with respect to the sprung mass. Each wheel is also allowed to rotate along its axis and only the two front wheels are free to steer. Detail derivation of the 14-DoF vehicle model can be found in Hudha et al. (2008), Ahmad et al. (2009) and Ahmad et al. (2010). The model consists of three main subsystems namely ride, handling and tire subsystems. Fig. 4 shows the schematic diagram of the 14-DoF full vehicle model used in this study. The vehicle ride model is represented as a 7-DoF system. It consists of a single sprung mass (car body) connected to four unsprung masses (front-left, frontright, rear-left and rear-right wheels) at each corner.
The sprung mass is free to heave, pitch and roll while the unsprung masses are free to bounce vertically with respect to the sprung mass. The suspensions between the sprung mass and unsprung masses are modeled as passive viscous dampers and spring elements. Whilst, the tires are modeled as simple linear springs without damping. For simplicity, all pitch and roll angles are assumed to be small. This similar model was used by Ikenaga et al. (2000). The handling model employed in this paper is also a 7-DoF system which takes into account 3-DoF for the vehicle body in lateral and longitudinal motions including yaw motion and 1-DoF due to the rotational motion of each tire. In vehicle handling model, it is assumed that the vehicle is moving on a flat road.
Some of the modeling assumptions considered in this study is as follows: the vehicle body is lumped into a single mass which is referred to as the sprung mass, aerodynamic drag force is ignored, and the roll centre is coincident with the pitch centre and located at just below body center of gravity. The suspensions between the sprung mass and unsprung masses are modeled as passive viscous dampers and spring elements. Rolling resistance due to passive stabilizer bar and body flexibility are neglected. The vehicle is assumed to move on a flat road and remains grounded at all times where all tires are always in contact with the ground during maneuvering. A four degree tilt angle of the suspension system about vertical axis is neglected (since cos 4 = 0.998 1). Tire vertical behavior is represented as a linear spring without damping, whereas the lateral and longitudinal behaviors are represented with Calspan model. Steering system is modeled as a constant ratio and the effect of steering inertia is neglected.

Steering system model
The steering system is modeled in MATLAB Simulink by referring to half car test rig. A half car test rig uses an actuator located on the pinion that functions to rotate the pinion. The actuator and steering linkage model are also on the steering system model based on the rig. The relation between rack and pinion is defined by comparing the simulation and experimental result. Then, control structure for steering system model is developed so that the output from the simulation follows the experimental result for the steering input.
The steering system model included an actuator and the steering linkage model. The stepper motor is used as an actuator to control the pinion rotation. The stepper motor model (Morar, 2003) is developed to run the steering control in simulation. The general equation between voltage and current in a stepper motor is shown in Eq. 4 where emf is the electromotive force, R is coils resistance, L is coils inductance and I is coils current.
where, U is the supplied voltage. The electromotive force emf can be written as: where, is the motor constant, ( ) is the actual rotor position, is the location of coil j in the stator, is the rotational velocity and n is the numbers of rotor pole pairs.
Then, all resistance and inductance coils can be expressed in the Laplace domain as shown in Eq. 6 below.
The equation of motion of stepper motor is considered in Eq. 7 where J is the rotor and load inertia, D is the viscous damping and is the torque friction. The rotational velocity of rotor, , is integrated to produce motor shaft angle. The torque acceleration is shown in Eq. 8.
The rack and pinion linkage model is formulated as kinematic equations based on a six bar planar linkage (Hanzaki et al., 2007, Nasir, 2015. The kinematic equation for the rack and pinion can be written in Eq. 9 below where is the wheel track, is rack length and is the rack travel shown in Fig.  5. (9) From Eq. 9, it produces cosine and sine functions in term of scalar components where h is distance from front wheel axis, is tie rod length and is steering arm length. b is an arbitrary parameter as shall be further explained in Eq. 10. In c and s notations for cosine and sine, respectively; (10) (11) (12) Eq. 10 and 11 can be expressed as where, The value of is the solution of a quadratic equation that is obtained from the kinematic equations in Eq. 10 and 11. The equation can be written as, The steering system model in MATLAB Simulink is shown in Fig. 6. This model is developed based on Eq. 10-18 above. This model consists of an actuator model and the controller. From the Fig. 6, it shows the pinion as input and the wheel angle as output which then function as input for vehicle model.

Simulation and experimental results
SBW system is performed with 3 different conditions namely step steer, slalom and DLC tests. Each test is run with constant speed at 80 kmph. The tests are selected to observe the performance of the steering response for SBW system.
Step steer test is selected to observe response timing. The DLC and slalom test are for measures of the maneuverability of the vehicle. The output for every test is analyzed such as steering wheel angle, lateral displacement, lateral acceleration, body slip angle, yaw angle and yaw rate.

Step steer test
The step steer test was run at 80 kmph constant speed and the steering is quickly turned to 30 degree to represent sudden change. From the graph of steering wheel angle in Fig. 7(a), the experiment results closely follow the simulation trend. It has a bit delay between simulation and experiment but less than 1 second. The response is considered acceptable because from the lateral displacement graph in Fig. 7(b) both results are similar. The lateral acceleration graph in Fig. 7(c) shows the value for simulation and experiment are both around 0.35 g's. While for body side slip, yaw rate and yaw angle in

Double lane change test
This test also shows good response between simulation and experimental results. From the first graph on DLC test ( Fig. 8(a)) the experiment closely follow the trend even though it produces much noise of steering wheel angle. In the other graphs for this test as shown in Fig. 8(b)-(f), results still follow the simulation trend. The lateral acceleration for this test is 0.36 g's as shown in Fig. 8(c).

Slalom test
Lastly, the slalom test was conducted to test the SBW system using HiLS. From this test, it demonstrated that the SBW system performed well because the experiment results follow the simulation trend. Results for steering wheel angle as in Fig. 9(a) show that the experiment follows closely even with some noise produced. The lateral displacement in Fig. 9(b) shows that the actual result is better than the simulated one. Other graphs for this test in Fig.  9(c)-(f) show that the experiment results are closely similar to the simulation pattern.

Conclusion
The SBW system developed through HiLS using PID control optimized with Ziegler-Nichols produce a similar result with the simulation after tested with step steer, DLC and slalom test. The performance of the SBW system was developed based on the conventional system characteristics. The vehicle model used on the system was based on a real vehicle for linkage with HiLS. From the vehicle model, the steering input for step steer, DLC and slalom tests show the result for lateral displacement, body slip angle, lateral acceleration, yaw angle and yaw rate. Using the selected controller, the simulation and experimental results of steering response for every test were compared. The results for every test show that the SBW system follows the simulation and has good response with the provided input.