979 Manoeuvring speed of a 666 autonomous vehicle using a database obtained from multi-body dynamic simulation S-L Cho1, K-C Yi2, J-H Lee3, and W-S Yoo4* 1 Agency for Defense and Development, Jinyong, Geonynam, Republic of Korea 2 Research and Development Division, Hyundai Motor Company, Namyang, Kyunggi-do, Republic of Korea 3 Mechanical and Design Engineering, Pusan National University, Busan, Republic of Korea 4 School of Mechanical Engineering, Pusan National University, Busan, Republic of Korea The manuscript was received on 22 December 2008 and was accepted after revision for publication on 30 April 2009. DOI: 10.1243/09544070JAUTO1102 Abstract: For an autonomous vehicle that travels off-road, the driving speed is limited by the driving circumstances. To decide on a stable manoeuvring speed, the driving system should consider road conditions such as the height of an obstacle and road roughness. In general, an autonomous vehicle has many sensors to preview road conditions, and the information gathered by these sensors can be used to find the proper path for the vehicle to avoid unavoidable obstacles. However, sensor data are insufficient for determining the optimal vehicle speed, which could be obtained from the dynamic response of the vehicle. This paper suggests an algorithm that can determine the optimal vehicle speed running over irregular rough terrains such as when travelling off-road. In the determination of the manoeuvring speed, the vehicle dynamic simulation is employed to decide whether the vehicle response is within or beyond the prescribed limits. To determine the manoeuvring speed in real time, the dynamic simulation should be finished much more quickly than the real motion speed of the vehicle. In this paper, the equation of motion of the vehicle is derived in terms of the chassis local coordinates to reduce the simulation time. The velocity transformation technique, which combines the generality of Cartesian coordinates and the efficiency of relative coordinates, was combined with a symbolic computation to enhance further the computational efficiency. First the developed algorithm calculates the level of the previewed road roughness to determine the manoeuvring speed. Then, the maximum stable speed is judged against the database, which already has stored the maximum vertical accelerations as a function of the road roughness and vehicle speed. Keywords: unmanned ground vehicle, velocity decision algorithm, dynamic analysis, velocity transformation technique 1 INTRODUCTION The driving safety for an autonomous vehicle is dependent on the driving circumstances of a vehicle. In Grand Challenge programs in 2004 and 2005, which were autonomous independent vehicle races sponsored by the Defense Advanced Research *Corresponding author: School of Mechanical Engineering, Pusan National University, Janjeongdong, Kumjunggu, Busan 609-735, Republic of Korea. email: [email protected] JAUTO1102 Projects Agency, the vehicles drove off-road through the Nevada desert. The key point in driving a vehicle over a desert is to avoid high bumps, deep potholes, and rocks. Therefore, the algorithms used in the race were mainly focused on sensing the road conditions and avoiding obstacles based on the previewed signals [1]. Most autonomous algorithms are related to location detection, path generation, and vehicle tracking [2]. The algorithms judging traversability are related to fuzzy inference, but they do not consider Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 980 S-L Cho, K-C Yi, J-H Lee, and W-S Yoo the dynamic analysis of the vehicle [3, 4]. Without dynamic analysis, these algorithms can determine only the path but cannot predict the stable manoeuvring speed of the vehicle. Therefore, it is necessary to consider dynamic analysis for efficient and stable manoeuvring of autonomous vehicles. In this paper, an algorithm is proposed that can determine the stable manoeuvring speed of an autonomous vehicle which drives off roads. To decide the manoeuvring speed in real time, the algorithm must complete the dynamic simulation faster than the real motion speed of the vehicle. Therefore, the equation of motion of the vehicle is derived in terms of the chassis local coordinates in this paper. The terrains of different roughness were categorized according to an International Organization for Standardization (ISO) classification. The dynamic simulation generated a database containing maximum vertical accelerations as a function of road roughness and vehicle speed for an autonomous vehicle. 2 EQUATIONS OF MOTION OF 666 AUTONOMOUS VEHICLE For vehicle dynamic analysis, the equations of motion (EOM) were derived. The coordinates for the derivation of EOM were chosen from two choices: the first was the Cartesian coordinates and the second was relative coordinates. The Cartesian coordinates are more general in constituting the EOM systematically, but the size of the EOM based on Cartesian coordinates can be larger than that based on relative coordinates. On the other hand, the size of the EOM based on relative coordinates is small, and this compactness increases computational efficiency. However, it may give a less general systematic derivation of the EOM than the Cartesian coordinates. The velocity transformation (VT) technique is a method that can combine both the generality of Cartesian coordinates and the efficiency of relative coordinates [5, 6]. In real-time dynamic analysis, it is important to solve the EOM as quickly as possible. In this paper, a VT matrix was derived in terms of local coordinates. To further reduce the dynamic simulation time, the mass matrix and the force vector were written symbolically [7]. The autonomous vehicle used in this paper has six rotating arms and six wheels for driving over rough terrain, as shown in Fig. 1. The topology of the vehicle is an open-loop system, as shown in Fig. 2. The EOM derived in terms of relative coordinates for this open loop system was Fig. 1 666 autonomous vehicle with 18 degrees of freedom an ordinary differential equation and, thus, the Newmark integration method was employed to solve the EOM [8]. 2.1 Equation of motion by using the VT technique In Fig. 2, body 1 is the chassis, body 2 to body 7 are arms, and body 8 to body 13 are wheels. Each arm is connected to the chassis with a revolute joint, and so is the wheel to the arm. The notation R in Fig. 2 represents a revolute joint. The VT matrix B can be derived by substituting the contribution of a revolute joint for the non-zero entry in the path matrix [5]. A total of 18 relative coordinates were used for the modelling, where q1 to q6 are for the chassis, q7 to q12 are for the six arms, and q13 to q18 are for the six wheels. Since the connections of each arm and wheel are the same, just one set for the arm and wheel was picked for deriving the EOM. As shown in Fig. 3, the front left arm of body 2 and the front left wheel of body 8 are illustrated to define the vectors used for the EOM. The vector cji represents the distance vector from the centre of mass of the ith body to the centre of mass of the jth body. The dji vector represents the distance vector from the ith joint to the centre of mass of the jth body. The Fig. 2 Topology of the 666 system Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 JAUTO1102 Manoeuvring speed of a 666 autonomous vehicle 981 and then converted into values with the chassis local coordinates through coordinate transformation. The DADS tyre model employs a liberalized slipfriction curve and the third-order polynomial equation for lateral force calculation. The tyre formulations are given by 0 sv0:2 : mlong ~1:05m|5:0s 0:5¡s : mlong ~m 1 C B 0:2¡sv0:25 : m ~1:05m C B long C B B 0:2¡sv0:5 : m ~1:05m{ ð1:05m{mÞðs{0:25Þ C ð4Þ A @ long 0:25 Fig. 3 Definition of the vectors where Flong 5 mlongFn " distance vector sji is the vector from the centre of the ith body to the jth joint. The VT matrix relates the Cartesian velocity ẏ with the joint velocity q̇, as shown by y_ ~Bðq Þq_ ð1Þ For the three-body system shown in Fig. 3, i.e. a chassis with one arm and one wheel, the velocity transformation matrix B can be written as 2 I3|3 60 6 3|3 6 6 I3|3 B18|8 ~6 60 6 3|3 6 4 I3|3 03|3 I3|3 {c~21 03|1 03|1 ~ 2 d 22 u I3|3 {~ c 81 u2 ~ 2 d 82 u 03|3 I3|3 u2 3 03|1 03|1 7 7 7 03|1 7 7 03|1 7 7 7 ~ 8 d 88 5 u ð2Þ u8 where the unit vectors u2 and u8 represent the rotation axes of the arm and the wheel respectively. All vectors in equation (2) are defined by the chassis local coordinates. Using the velocity transformation matrix B [9], the EOM can be written as € ~F Mq M~BT MB, F ~BT F {MB_ q_ {h ð3Þ where M, F, and h are the mass matrix, the force vector, and the Coriolis term respectively. The external force vector in equation (3) includes the gravitational force, tyre force, and spring force installed between the chassis and the arm. The tyre force in this research was developed according to the DADS tyre model [10]. To calculate the forces in a tyre, the gravitational force and tyre reaction force were first defined in the global coordinate system JAUTO1102 Flat ~ Ca 0:032 mFn 2 ! # Ca 2 azCa a Ca a{0:32 mFn ð5Þ Since the DADS tyre model has very simple equations, it is very beneficial for real-time simulation. These simple equations reduce the force calculation time. 2.2 Symbolic equation for real-time achievement For real-time analysis, the symbolic operation was adopted in the dynamic simulation. Since the multibody dynamic analysis proceeds with successive time integration, the EOM should be updated at every integration step as shown in equations (2) and (3). To reduce the simulation time, the multiplications in evaluating matrix elements in equation (2) and the matrix multiplication in equation (3) should be reduced as little as possible. Therefore the equations are derived with a compact mass matrix M and a force vector F using the symbolic operation in the MATLAB program. This process has several advantages in real-time simulation. First, equations can skip operations with zero values. Second, constant values are calculated just once. Third, numerical errors are decreased by the reduction in operation counts. The calculated terms in the EOM by symbolic operation in the MATLAB program were directly ported to the dynamic solver, which was written with the C++ program in this paper. This symbolic work is coded on the basis of the flow chart shown in Fig. 4 by using MATLAB [11]. In Fig. 4, the left blocks represent a flow that can generate the full symbolic EOM of the open-loop system. The right blocks show the special code for an autonomous 666 vehicle for inputting inertia data and system dimensions. Vectors and matrices evaluated through the symbolized Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 982 S-L Cho, K-C Yi, J-H Lee, and W-S Yoo Fig. 4 Flow chart for generating the EOM state values are switched to the symbolic EOM in the right blocks. The symbolized EOM is tested in a constant external force condition and compared with an ADAMS [12] simulation. The results are exactly the same. 3 DECISION OF MANOEUVRING SPEED The algorithm which can determine the fastest stable speed is designed by using a dynamic analysis database, which has already stored the maximum vertical accelerations of the chassis as a function of vehicle speed and road roughness. The vertical acceleration is a key factor of maintenance and stability of the vehicle system; thus it is selected as a main factor in the dynamic database. The speed decision algorithm is designed as shown in Fig. 5. If the vertical acceleration is less than the prescribed limit, then the vehicle can increase its speed. If the acceleration goes above the limit, then the vehicle speed should be reduced. These two velocities could be used in linear interpolation to determine the fastest stable speed Vmax of the vehicle. Since the dynamic analysis is an initial value problem, the response is very dependent on the initial values. Therefore, the closer the initial velocity V1 is to Vmax, the less time is required to obtain Vmax. Thus, to estimate a reasonable V1, a fuzzy inference algorithm based on the road obstacles, roughness, and slope was adopted [13]. 3.1 Database from dynamic analysis To make the dynamic database, the road should be classified according to its roughness. The road grade is usually defined by ISO and uses the power spectrum density (PSD) of road roughness as given by 8 {N1 > < SðV0 Þ VV , 0 PSD~ {N2 > : SðV Þ V , 0 V0 1 for V¡V0 ~ 2p cycle=m for VwV0 ð6Þ Fig. 5 Flow chart for manoeuvring speed decision (Max Ver. Acc., maximum vertical acceleration) where V is the spatial frequency and S(V) represents the PSD of road roughness. According to S(V0), the road grade is classified as shown in Table 1. Because the vehicle in this paper drives over rough terrain, the road is considered an F-grade road in Table 1. This grade is divided into six detail levels. Since a stochastic result is required for driving over random roads, ten random roads with the same grade are generated [14], and the dynamic analysis Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 JAUTO1102 Manoeuvring speed of a 666 autonomous vehicle 983 Table 1 ISO road classification Road roughness V0 (1026 m2/m21) Fig. 6 Classification N1 N2 Range Average A (very good) B (good) C (average) D (poor) E (very poor) F G H ,8 8–32 32–128 128–512 512–2048 2048–8192 8192–32 768 . 32 768 4 16 64 256 1024 4096 16 384 2.0 2.0 2.0 2.0 2.0 2.0 2.0 2.0 1.5 1.5 1.5 1.5 1.5 1.5 1.5 1.5 Database from dynamic analysis was carried out over each road by changing the driving speed to 1 m/s, 3 m/s, 5 m/s, 7 m/s, and 9 m/s respectively. The average values of acceleration were fitted linearly, min–max fitting, as shown in Fig. 6. In Fig. 6, the x axis is the driving velocity and the y axis is the vertical acceleration. Each line represents the road grade. The driving speed V1 and the road roughness could be used to determine the vertical acceleration a1 from this graph. 4 VELOCITY DECISION SIMULATION The developed algorithm and dynamic solver were coded with C++ language [15] and applied to a vehicle. The vehicle was assumed to be driving over two bumpy roads, shown in Figs 7 and 8, and two random roads, shown in Figs 9 and 10. The bump in Fig. 8 is higher than that in Fig. 7, and the road in Fig. 10 is rougher than that in Fig. 9. In Figs 9 and 10, the red curve represents the road in contact with the left tyre and the blue curve means that in contact with the right tyre. The correlation between the two contact roads is higher JAUTO1102 at a low spatial frequency than at a high spatial frequency. It is assumed that the limit velocity is 9 m/s and limited vertical acceleration is 2 g. Table 2 shows the simulation results of the proposed algorithm coded by C++ in this paper. In Table 2, amax means the maximum vertical acceleration when the driving velocity is Vdet and is computed to verify whether Vdet is correct or not. As shown in Table 2, Vdet calculated by the developed algorithm is reasonable since all the amax have values under alim, and the solving time also showed good performance in the real-time simulation. Also, another simulation of the driving velocity according to the operation mode was carried out over two random roads, as shown in Figs 9 and 10. The operation modes are assumed to be as given in Table 3. The simulation results obtained from the developed algorithm are given in Table 4. From Table 4, in the patrol mode, the vehicle cannot go over the random road of Fig. 10. 5 CONCLUSION For real-time dynamic analysis of a 666 autonomous vehicle, the EOM was derived using the chassis local coordinates. A symbolic representation was employed for the mass matrix and force vector in the EOM to reduce the operation counts. Using a real-time dynamic model and a dynamic database, a decision algorithm that could determine the fastest stable speed of a vehicle was developed. The developed database contained the vertical accelerations as a function of the vehicle speed and road roughness. By simulations, the accuracy and efficiency of the developed algorithm were verified. If the algorithm is developed more robustly to an uncertain initial velocity or the iteration velocity in the future, it could be implemented on an autonomous vehicle driven in a real battle field. Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 984 S-L Cho, K-C Yi, J-H Lee, and W-S Yoo Fig. 7 Bumpy road (maximum height of 0.2 m) Fig. 8 Bumpy road (maximum height of 0.25 m) Table 2 2 Fig. 9 Random road (V0 5 4096) Fig. 10 Random road (V0 5 5096) Simulation results for manoeuvring speed Road V1 (m/s) a1 (m/s ) V2 (m/s) a2 (m/s2) Vdet (m/s) amax (m/s2) alim (m/s2) Solving time (ms) 1 2 3 4 5 3 8.5 5.5 13.570 18.639 12.501 16.773 9 2.853 9 5.632 18.599 16.357 14.741 17.175 9 3.063 9 6.428 18.599 19.500 14.741 19.169 19.612 19.612 19.612 19.612 552 836 400 477 Table 3 Assumption of operation modes Operation mode Velocity Limited vertical acceleration Driving Attack Retreat Patrol Middle High Very high Slow 1.4 g 2.0 g 2.5 g 0.8 g Table 4 Simulation results according to operation modes V0 5 4096 (Fig. 9) V0 5 5096 (Fig. 10) Mode V1 (m/s) V2 (m/s) Vdet (m/s) V1 (m/s) V2 (m/s) Vdet (m/s) Driving Attack Retreat Patrol 3 8.5 8.8 1 3.71 9 9 0 3 9 9 0.96 3 5.5 7.5 0.5 1.30 5.63 8.47 0 2.12 5 9 0 Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016 JAUTO1102 Manoeuvring speed of a 666 autonomous vehicle ACKNOWLEDGEMENTS This work was partly supported by the Dual-Use Technology Program of the Defense Acquisition Program Administration/Dual-Use Technology Center and the Ministry of Information and Communication/Institute of Information Technology Assessment (06-DU-LC-01, ‘Development of multi-purpose dog–horse robot based on the network’). F Authors 2009 985 13 Jin, G. G., Lee, H. S., Lee, Y. H., and Lee, Y. I. Binary obstacle detection from terrain elevation maps. In Proceedings of the Conference on Military science and technology, Pohang, Republic of Korea, 28–29 August 2008, available on CD (Korean Institute of Military Science and Technology, Daejeon). 14 Kim, K. S. and Yoo, W. S. Generation of road surface profiles with a power spectral density function. Trans. KSAE, 1997, 5(1), 136–145. 15 Press, W. H., Teukolsky, S. A., Vetterling, W. T., and Flannery, B. P. Numerical recipe in C++, 2nd edition, 1992 (Cambridge University Press, Cambridge). REFERENCES APPENDIX 1 Carnegie Mellon Tartran Racing Team, Pittsburgh, Pennsylvania, USA, 2007, available from www. tartanracing.org. 2 Yoon, Y. G., Lee, W. S., Ryu, D. S., and Kang, S. C. Mobile robot ROBHAZ for dangerous works. J. Control, Automn, Systems Engng, 2004, 10(4), 35–42. 3 Tunstel, E., Howard, A., and Seraji, H. Rule-based reasoning and neural network perception for safe off-road mobility. Expert Systems, 2002, 19(4), 191–200. 4 Gennery, D. B. Traversability analysis and path planning for a planetary rover. Autonomous Robots, 1999, 6, 131–146. 5 Nikravesh, P. E. Computer aided analysis of mechanical systems, 1998 (Prentice-Hall, Upper Saddle River, New Jersey). 6 Lee, J. W., Sohn, J. H., Kim, K. S., and Yoo, W. S. Construction of system jacobian in the equations of motion using velocity transformation technique. J. Mech. Sci. Technol., 2001, 25(12), 1966–1973. 7 Choi, D. H., Kim, K. S., and Yoo, W. S. Efficiency of a symbolic code for the real time dynamic simulation. In Proceedings of the KSME Spring Annual Meeting A, Chunan, Republic of Korea, 23–24 April 1999, Spring Proceeding A, pp. 104–107 (Korean Society of Mechanical Engineers, Seoul). 8 Yang, S. H. An efficient integration algorithm method for multibody vehicle dynamic analysis. Master’s Degree Thesis, Kookmin University, Seoul, Republic of Korea, 1999. 9 Son, A. Derivation of 666 vehicle and efficient simulation. Master’s Degree Thesis, Pusan National University, Busan, Public of Korea, 2008. 10 Han, D. H. Comparative study on tire models to suggest default models for vehicle simulation. Master’s Degree Thesis, Pusan National University, Busan, Republic of Korea, 2001. 11 MATLAB user’s guide, 2006 (The MathWorks, Natick, Massachusetts). 12 ADAMS user’s guide, 2003 (MSC Software Corporation, Santa Ana, California). JAUTO1102 Notation alim u Vmax V1 V2 ẏ limitation in the vertical acceleration of the chassis maximum vertical acceleration of the chassis velocity transformation matrix distance vector from the ith body centre to the jth body centre cornering stiffness distance vector from the ith body joint to the jth body centre lateral tyre force longitudinal tyre force normal tyre force force vector acceleration due to gravity Coriolis vector mass matrix displacement in joint coordinates velocity in joint coordinates acceleration in joint coordinates slip ratio distance vector from the ith body centre to the jth body joint power spectrum density of the road roughness rotation axis vector maximum driving velocity initial driving velocity driving velocity after interation Cartesian velocity a m mlong V slip angle friction coefficient longitudinal friction coefficient spatial frequency amax B cji Ca dji Flat Flong Fn F g h M q q̇ q̈ s sji S(V) Proc. IMechE Vol. 223 Part D: J. Automobile Engineering Downloaded from pid.sagepub.com at PENNSYLVANIA STATE UNIV on September 19, 2016
© Copyright 2026 Paperzz