Acta Astronautica 81 (2012) 288–305
Contents lists available at SciVerse ScienceDirect
Acta Astronautica journal homepage: www.elsevier.com/locate/actaastro
Dynamic modeling of wheeled planetary rovers: A model based on the pseudo-coordiates approach Feng Chen a, Giancarlo Genta b,n a b
State Key Laboratory of Mechanical system and Vibration, Shanghai Jiao Tong University, Shanghai 200240, China Department of Mechanical and Aerospace Engineering, Politecnico di Torino, C. Duca degli Abruzzi 24, Torino, Italy
a r t i c l e in f o
abstract
Article history: Received 26 December 2011 Received in revised form 3 April 2012 Accepted 11 June 2012 Available online 25 August 2012
The paper deals with the dynamic modeling of wheeled planetary rovers operating on rough terrain. The dedicated model here presented, although kept as simple as possible, includes the effect of nonlinearities and models the suspensions in a realistic, albeit simplified, way. It can be interfaced with a model of the control system so that different control strategies can be studied in detail and, in case of teleoperated rovers, it can be used as a simulator for training the operators. Different implementations, with different degrees of complexity, are presented and compared with each other so that the user can simulate the dynamics of the rover making a tradeoff between simulation accuracy and computer time. The model allows to study the effects of the terrain characteristics, of the ground irregularities and the operating speed on the behavior of the rover. Some examples dealing with rovers with different configurations conclude the paper. & 2012 Elsevier Ltd. All rights reserved.
Keywords: Space exploration Rovers Dynamic modeling
1. Introduction All robotic rovers for planetary exploration and the vehicles used to carry astronauts on the surface of the Moon used wheels as running gear. The same applies to the majority of projects for future exploration missions, both of the unmanned and manned types. This, notwithstanding that many alternatives, like walking machines, tracked vehicles and hopping or other unconventional devices, were proposed, designed and in several cases actually tested at least at the prototype stage. At the present stage of technology it seems that, except for the case of bodies with a very low gravity like small asteroids and comets, wheeled vehicles still offer many advantages, in particular for what reliability, energy consumption and ease of control are concerned, that overshadow the advantages of alternative concepts [1–4].
n
Corresponding author. E-mail address:
[email protected] (G. Genta).
0094-5765/$ - see front matter & 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.actaastro.2012.06.008
Dynamic modeling of wheeled vehicles is a common practice in automotive technology, and commercial codes are usually employed. They are basically of two categories: general purpose multi-body codes, such as ADAMS, with its dedicated version ADAMS CAR, and codes specifically designed for vehicle simulations, such as CarSim. Since wheeled planetary exploration robotic rovers and human-carrying vehicles are nothing else than wheeled vehicles, even if of an unusual type, there is little difficulty in using the same approach to dynamic simulation. One difference needing to be seriously considered is the wheel-terrain interaction model, which has been studied in the field called terramechanics. Several analytical wheel-terrain interaction models, such as the models developed by Bekker [5], Wong [6] and Pacejka [7] (the latter usually referred to as ‘magic formula’) have been discussed in detail in the literature. Other analytical models, related to the mentioned ones, were described by Ishigami [8], Apostolopoulos [9], and Taylor [10] for specific wheel configurations. Vehicle dynamics codes mostly use semi-empirical formulae, like the mentioned
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
Nomenclature c Cd F g G I J K m mi mt M M n R R S T U
damping coefficient cornering stiffness force vector gravitational acceleration wheel center identity matrix inertia tensor stiffness mass, number of suspension d.o.f.s mass of the ith body total mass motor torque mass matrix number of bodies for the suspensions radius of the trajectory rotation matrix Jacobian matrix kinetic energy potential energy
‘magic formula’, that are taylored for the usual pneumatic wheels, interacting with prepared ground, but can also accept directly experimental characteristrics of the wheels. In planetary rovers, operation on unprepared and rough terrain must be considered as a rule instead of being an exception, but vehicle dynamics codes are mostly intended for operation on prepared ground. Test campaigns aimed to characterizing the behavior of the specific non pneumatic, elastic but sometimes rigid, wheels designed for planetary rovers operating on specific soils that simulate the soil which can be found on the Moon or on the relevant planet (planetary soil simulants) like, for instance, the studies performed in the 1970s for the Apollo LRV missions and the more modern studies like [11,12], are required, and are planned. An approach for studying the wheel-terrain interaction is numerical modelling through the finite element method, such as the VENUS (VEhicle-NatUre Simulation) code developed at the Automotive Research Institute (IKK) in Hamburg [13]. The advantage of this approach method is clear: with finite element analysis, the deformation of the wheel and of the ground yields directly the shape of the contact area, that in either Bekker’s or Wong’s method has an imposed and simplified shape. The finite element method allows to study the phenomena concerning deformation, such as the bulldozing effect, but many problems, such as the difficulty of considering the slip ratio in the interaction model, are still open and the computation time may be long. Some other differences between planetery rovers and wheeled vehicles are the reduced value of the gravitational acceleration, the different kinematics of the suspensions and the model of the wheel-ground interaction to fit the specific conditions on the plantary surface. Another important point is that the speed is usually quite low and inertia forces due to the forward velocity
uj V w x x, y, z X, Y, Z ZR
a dx dL y yi yi0
mx my f c O DF DM
289
vector defining the position of the suspension velocity of the vehicle vector of the generalized velocities vector of the generalized coordinates axes of the body-fixed frame axes of the inertial frame roughness of the terrain sideslip angle of the wheel virtual displacement vector virtual work pitch angle generalized coordinate of the suspensions initial positions of the generalized coordinate of the suspensions longitudinal force coefficient lateral force coefficient roll angle yaw angle angular velocity differential force differential torque
may be small if compared with the inertia forces linked with the suspension motion due to ground irregularity [12,14,15]. Standard vehicle dynamics codes often have difficulties in operating correctly in such conditions. As common in vehicle dynamics, the behavior of a rover can be subdivided in longitudinal, lateral (handling) and suspension (comfort) dynamics. It is possible to demonstrate that, under fairly wide assumptions [16,17], this uncopling is theoretically correct and that the equations of motion uncouple exactly. However, this holds only when travelling on not too rough ground and the radius of the trajectory is much larger than the vehicle wheelbase. Both these assumptions are applicable to road vehicles in high speed driving, but are questionable in the case of low-speed planetary rovers. Ishigami [12] developed a wheel-and-vehicle model for studying the lateral dynamics, with the rover modeled as a multi-body system. The numerical simulation results were compared with steering experiments using a four-wheeled rover test bed. It had been confirmed that the proposed model provided better accuracy in evaluating the steering trajectory as compared to the conventional kinematicsbased model, when the terrain is fairly smooth. A simple mathematical model was developed by Genta [18–20] for studying the lateral behavior of wheeled rovers for planetary exploration. Several examples, showed that the model allowed to obtain good results on level ground for both slip steering and conventional steering. For a satisfactory modelling of a planetary rover operating on uneven ground, no uncoupling is possible and a complete model dealing simultaneously with all degrees of freedom is required. Bauer [21] developed a simulation tool for the design of Exomars rover, which focused on the rover locomotion problems and discussed the development of the planetary rover chassis simulation tool that allowed to studying key
290
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
locomotion test cases such as slope climbing in loose soil, but this tool was used only for the design of a rover with 6-wheeled rocker arm suspensions. Thoresson [22] used two models to optimize the suspension design using gradient-based approximation method (simplified model) and MSC.ADAMS (full model). The result showed that the computation time for a full non-linear vehicle model using ADAMS is extremely high and the model exhibited severe numerical noise, while the simplified model exhibit much less numerical noise and a significantly lower computation time. The aim of the present paper is developing a dedicated dynamic model, tailored on the peculiarities of wheeled planetary rovers, that could be applied to different configurations of the running gear, different steering strategies and can easily accommodate active suspensions and other controlled devices. The pesudo-coordinates approach was chosen and the equations of motion were written starting from Lagrange equations. This approach, not used earlier for the dynamic modelling of rovers, follows the procedures established by Meirovitch [23,24] to develop the equations of motion through pseudo-coordinates. Some preliminary results [25,26] showed the possibility of pursuing this approach, and here the model is generalized and implemented in a simulation code that is general enough to allow dealing with devices based on different geometries, number of wheels, types of suspensions, etc. The model, and above all its implementation, are kept as simple as possible to reduce the integration time, with the target of allowing real time computation. The aim of this requirement is using the model as
a simulator for training the operators (at present the
ground operators of teleoperated lunar rovers, but in perspctive the astronauts who will ride rovers on the Moon and on Mars), an observer in the control loop of autonomous rovers and the ‘plant’ in the testing of the high level controller hardware and software.
2. Dynamic model The mathematical model of the rover is based on the assumption that all its parts, except for the tires, are rigid bodies and the latter are modeled as massless elastic and damped systems. The suspensions may be either elastic and damped devices or articulated systems. In the first case they may be either solid axle, independent or compliant axle suspensions.
mass of the sprung mass in an inertial reference frame OXYZ and a set of 3 Tait-Brian angles. The reference frame OXYZ is defined so that X and Y axes lie in an horizontal plane, while Z-axis is vertical and its origin O is arbitary. This is an approximation, since a reference frame fixed to the surface of a celestial body is not strictly speaking inertial and neglects both the curvature of the surface of a spherical body and the nonspherical shape of small bodies. The choice of the center of mass as a reference point is also not a good one in case of linearized, analytically solved models, but in the present case is quite reasonable since a nonlinear model must be established and dealt with numerically. The set of Tait-Brian angles is the usual of the yaw-pitchroll type, but a slightly different order is expedient. The yaw angle c is taken first, then the roll angle F, and last the pitch angle y [1,16,17]. This choice allows some simplifications in the case when the wheels rotate about an axis parallel to the vehicle y-axis, like when the suspensions have no or slight camber recovery and the wheels do not steer, as it occurs when slip steering is used [27,29]. A frame Gxyz is defined, fixed to the rover body. It is not needed to be a principal frame of inertia but, if it is such, no inertia products are introduced into the equations of motion. The rotation matrices allowing to express vectors in the inertial frame from their expressions in the body fixed frame Gxyz can be defined as follows:
Rotate the axes of GXYZ about the Z-axis by a yaw angle c; let the axes so obtained be xz and yz, and the rotation matrix expressing the vector expression in GXYZ frame from those referred to GxzyzZ be 2 3 cosðcÞ sinðcÞ 0 6 7 0 5, R1 ¼ 4 sinðcÞ cosðcÞ ð1Þ 0 0 1
Rotate the axes of GxzyzZ about the xz-axis by a roll angle F, until Y-axis reaches its final position y; let the axes so obtained be y and zx, and the rotation matrix be 2 3 1 0 0 6 7 R2 ¼ 4 0 cosðfÞ sinðfÞ 5, ð2Þ 0 sinðfÞ cosðfÞ
Last rotate the axes of Gxzyzx about the y-axis by a pitch angle y; let the axes so obtained be x and z, and finally the rotation matrix be 2 3 cosðyÞ 0 sinðyÞ 60 7 1 0 ð3Þ R3 ¼ 4 5, sinðyÞ 0 cosðyÞ
2.1. Generalized coordinates The overall rotation matrix is Following the above assumptions, the rover body is a rigid body and has 6 degrees of freedom. As common in vehicle dynamics, the 6 generalized coordinates are subdivided into two sets: the 3 coordinates of the center of
R ¼ R1 R2 R3 ,
ð4Þ
The positions of the suspensions are defined in the body-fixed frame Gxyz by a number m of generalized
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
coordinates yi. The generalized coordinates of the system are h iT ð5Þ x ¼ X Y Z f y c y1 ym , The number of generalized coordinates depends on the number of wheels and on the type of suspensions used: for instance, if the rover has either independent or solid axle suspensions and the deformation of the suspensions is neglected, the number m coincides with the number n of wheels. If the suspensions are articulated mechanisms, like the rocker bogies used on Mars Exploration Rovers (MERs), typically m¼n 3. The position of the center of mass of the jth body Gj (normally it is the position of the center of each wheel) in the Gxyz reference frame can be expressed as ðGjGÞ ¼ uj ðy1 , y2 ,. . ., ym Þ,
ð6Þ
where j ¼1,2,y,n, indicates the number of wheels. In case of elastic independent suspensions each uj depends only on the corresponding yi (in this case n ¼m). The position of the same point in the reference frame OXYZ is T ðGj OÞ ¼ X Y Z þ Ruj ðy1 , y2 ,:::, ym Þ, ð7Þ The midplane of the wheel in general does not remain parallel to itself, for two reasons:
the suspension kinematics involves changes of camber
and steer angles of the wheel during the suspension motion, and the wheel may steer.
The first of the two reasons, that may be absent in some cases (e.g., longitudinal swing arms, rocker arms, rocker bogies), may lead to a fairly large camber variation, equal to the suspension angle (e.g., transversal swing arms, transversal rocker arms) or lead to a small camber variation, sometimes purposely sought (e.g., double wishbone suspensions with camber recovery). Steer angle variation due to suspension motion is usually considered as a nuisance, and it is possible to prevent this from taking place with a suitable suspension design. In case of steering wheels it is possible to identify a kingpin axis (whose orientation usually changes with the suspension motion) and to define a steering angle about such axis. Rovers usually are provided with independent steering (except for the case of slip steering) [1,27], so that the steering angle of each wheel dj is independently controlled. In any case, it is possible to define a rotation matrix Rwj(y1,y,ym, dj) that allows to express any vector expressed in a frame fixed to the wheel as a vector in the frame fixed to the vehicle body. Again, in case of independent suspension, Rwj depends only on yi and, if the rover is not controlled by slip steering, on dj. 2.2. Generalized velocities The dynamic model is based on the pseudo-coordinates approach [23,24,26]. The generalized velocities are thus assumed to be the components of the velocity of the center of mass and the components of the angular velocity of the
291
body of the vehicle in the body-fixed frame plus the time derivatives of the coordinates of the suspensions h iT w ¼ vx vy vz Ox Oy Oz vy1 vym , ð8Þ As already stated, the order of rotations is first yaw, second roll and last pitch. The angular velocity of the rover body is thus 8 9 8 9 8 9 > > > <0> = <1> = <0> = X ¼ y_ 1 þ f_ RT3 0 þ c_ RT3 RT2 0 > > > : > ; : > ; : > ; 0 0 1 8 9 2 38 _ 9 _ > > cosðyÞ 0 sinðyÞcosðfÞ > > > >f > >f = = < < 6 7 _ T 1 sinðfÞ ¼ A ð9Þ ¼40 y_ , 5 y B > > > > > > ; ; : _ > : _ > sinðyÞ 0 cosðyÞcosðfÞ
c
c
The relationship allowing writing the velocities from the derivatives of the coordinates is 2 3 R 033 03m T 6 T _ AB 03m 7 w ¼ A x_ ¼ 4 033 ð10Þ 5x, 0m3 0m3 Imm
2.3. Kinetic energy The kinetic energy of 2 mB I 033 1 T6 0 J T B ¼ w 4 33 2 0m3 0m3
the rover body is 3 03m 1 03m 7 5w ¼ wT MB w, 2 0mm
ð11Þ
where the inertia tensor J is a diagonal matrix if the body axes are principal axes of inertia. The absolute velocity of the jth body mass center Gj is h iT T Vj ¼ vx vy vz þ u~ j O þ u_ j , ð12Þ where u~ j is the skew-symmetric matrix 2 3 0 uz uy 6 0 ux 7 u~ j ¼ 4 uz 5, uy ux 0
ð13Þ
The derivative of vector uj with respect to time is, in general, u_ j ¼
m X
y_ i
i¼1
@uj ¼ Sj vy , @yi
ð14Þ
where vy is the vector of the time derivatives of the suspensions coordinates and Sj is a matrix with 3 lines and m columns. Each of its lines contains the derivative of the components of uj with respect to coordinates yi. In case of independent suspensions, only the jth column is nonvanishing. The velocity of the center of mass of the jth body is thus h i T Vj ¼ I33 u~ j Sj w ¼ Tj w, ð15Þ In the same way, the angular velocity of the jth body can be written as
Xj ¼ Uj w,
ð16Þ
292
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
where matrix Uj has 3 rows and 6þm columns like matrix Tj, but with the first 3 columns equal to zero and the following 3 constitute an identity matrix. In the case of independent suspensions only one of the last m columns is not zero. It can be quite easily computed from the system kinematics. If the kinetic energy due to the rotation and the steering of the wheels is not accounted for, the kinetic energy of the jth body is Tj ¼
1 T T 1 w ðT mj T þ UTj Jj Uj Þw ¼ wT Mj w, 2 2
ð17Þ
If the latter assumption must be removed, the angular position of the wheel and the steeing angle must enter the vector of the generalized coordinates, and the expression of matrix Uj must be accordingly changed. The kinetic energy of the whole system is X 1 T ¼ TB þ T j ¼ wT Mw, ð18Þ 2 8j where the mass matrix M does not depend on the generalized coordinates of the rigid body but depends on the coordinates yi through matrices Tj and Uj. If the rotational kinetic energy of the unsprung masses is neglected, the mass matrix is 2 3 T 2 3 I u~ j Sj mB I 033 03m 6 7 X 6 T 6 7 03m 7 mj 6 u~ j u~ j u~ j u~ j Sj 7, M ¼ 4 033 J 5þ 4 5 8j T 0m3 0m3 0mm STj STj u~ j STj Sj ð19Þ 2.4. Potential energy and dissipation function The gravitational potential energy of the whole rover system is 0 1 X X @ U g ¼ mB þ mj AgZ þ g mj 0 0 1 Ruj , ð20Þ 8j
8j
If the suspensions are provided with elastic elements, an elastic potential energy function can be added to the gravitational potential energy which depends on the internal generalized coordinates yi only. If the suspensions are provided with dampers whose behavior can be modeled as viscous, a Rayleigh dissipation function should also be added,which is a function of vyi only. In the most simplified case, the springs and the dampers of the viscous-elastic suspensions act directly on their generalized coordinates, so that the functions become 2 1X 1X Ue ¼ kmi ðyi yi0 Þ2 , F ¼ c y_ , ð21Þ 2 8i 2 8i mi i
In case of direct drive system, the virtual work due to the driving motors is X dLd ¼ Mwj AT dx, ð23Þ 8j
where Mwj are the driving torques acting on each wheel center point Gj. 2.6. Equations of motion The state equations of the whole rover can be obtained through the Lagrange equations written in term of pseudo-coordinates [23,24,28] (
d dt
@T @w
@T T @T @F T @dL þ BT C @w B @x þBT @U @x þ @w ¼ B @dx
x_ ¼ Bw
,
ð24Þ
where B¼ A T. Since matrix A (see Eq. (10)) is not orthonormal, matrices A and B do not coincide. The state equation can be reduced to the following form [28] ( _ _ ¼ Mwf Mw 1 þ f 2 f 3 þkðxh0 Þcw þf 4 , ð25Þ x_ ¼ Bw where the terms at right hand side can be computed without difficulties. One of the main advantages of the pseudo-coordinates approach is clear from Eq. (25): each term can be clearly identified and it is possible to derive simplified equations by simply neglecting some of these terms, in the case it is possible to decide from physical considerations that some of them is negligible in the application of interest. Some simplified implementations of the present model will be shown in the following sections. Since the mass matrix does not depend on the first six generalized coordinates, its derivative with respect to time is a function of velocities vyi only: _ ¼ M
m X i¼1
y_ i
m X @ @ M¼ vyi M, @yi @ yi i¼1
Following Meirovitch [23,24], vector f1 is 2 ~ 3 X 033 03m @T 6 7 ~ ¼ 4 V~ f 1 ¼ BT C X 03m 5Mw, @w 0m3 0m3 0mm
ð26Þ
ð27Þ
2.5. Virtual work of the forces acting on the wheels
~ and V~ are skew-symmetric matrices related to where X the components of the angular and linear velocities, having the same form as Eq. (15). Owing to the structure of matrix BT, vector f2 is @T @T ¼ , ð28Þ f 2 ¼ BT @x @x
Assume that the forces the wheels exchange with the terrain can be represented as forces FXj, FYj, and FZj, applied in the direction of X, Y, Z axis in points Gj. The virtual work due to the forces in the direction of x y z axes is thus h iT X dLF ¼ dxA ðTj T RT F Xj F Yj F Zj Þ, ð22Þ
The term related to the gravitational energy is 8 T 9 P T > > > > > ðmB þ 8j mj ÞgR 0 0 1 > > > > > > > > > P = < 1 gA C m u T @U g j j B , f3 ¼ B ¼ 8j > > @x > > > > P > > @u j > > > > g mR > > ; : 8j j @yi
8j
ð29Þ
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
where 2 sinðyÞsinðfÞ 6 C ¼ 4 cosðyÞcosðfÞ 0
cosðfÞ
cosðyÞsinðfÞ
3
0
7 sinðyÞcosðfÞ 5,
0
0
ð30Þ
The terms due to the elastic potential energy and dissipation functions depend on the exact suspension kinematics. The expressions introduced into Eq. (25) are those obtained from Eq. (21) for the simplest cases; in other cases these terms must be substituted by more complex formulations. Finally, the last term obtained from the virtual work of the forces acting on the wheels is iT @dL X T T h F F Yj F Zj þBT M j AÞ, ¼ ðTj R Xj ð31Þ f 4 ¼ BT @dx 8j
3. General model for the suspensions The exact formulation of function uj(yi) depends on the suspension used for each wheel. In the case of independent suspensions, the position of the center of mass of the jth body uj is only a function of the corresponding coordinate yj (with i¼j); on the contrary, if articulated suspensions are used, uj may depend on several yi. In some simple cases the functions uj may have a simple analytical expression, but this is not a general rule, since they may either have an intricated expression or may be defined only numerically. In these cases the best approach 2
xj 6 lj
6 yj 6 Zj ¼ lj 6 lj 6 4 zj lj
y2 y4 y2 þ s 1 þ 2i0 24i0 þ cyi0 1 6i0
y2 y4 y2 þc 1þ 2i0 24i0 þ syi0 1 þ 6i0
allows decreasing the coding complexity and computation time, while maintaining a good accuracy. An expression that, although not being general, can be used in most cases for vector uj(yi) is m h i X 2 k1 T Zij 1 yi yi yi , ð32Þ uj ¼ i¼1
where matrix Zij is a matrix of constants that depend only on the kinematics of the jth suspension. It has 3 rows and a number k of columns equal to the number of terms used for the polynomial approximation. In case of independent suspensions only the term with i¼j exists for each suspension, while even in those cases where more than one term is present, usually they are few. Although in many cases k ¼3 (or even k¼2) could be sufficient to approximate adequately the position of the wheels, a higher value must be used for a good approximation of its velocity and its acceleration. In the following, k¼5 will be assumed. As an example, consider a trailing arm suspension (Fig. 1a). If the coordinates of point A in the reference frame fixed to the rover frame are xj, yj and zj and lj is the length of the arm, the expression of vector uj(yi) is h iT uj ¼ xj lj sinðyi Þ yj zj lj cosðyi Þ , where i ¼ j, ð33Þ For an approximation of order 4 (k¼5) about yi ¼ yi0, the expression of matrix Zij computed by developing the trigonometric functions in Taylor series is
y2 y2 syi0 1 þ 3i0 þ c 1 þ 2i0
s 2
0
0
y2 y2 cyi0 1 þ 3i0 þ s 1 2i0
c 2
is using polynomials to approximate functions uj, in such a way that the same expression can be used for any kind of suspensions provided that the coefficients of the polynomial are suitably computed. According to the knowledge of the authors, this approach have never been discussed in the literature. It
293
1
y2i0
4
cy2i0
syi0 6
þ 6c
0
1
y2i0 4
þ sy2i0
cyi0 6
s 24
0 6s
c 24
3 7 7 7 7 7 5
where c ¼cos(yi0) and s¼sin(yi0). The nondimensional error in the values of coordinates xj and zj ðuj Þx xj þlj sinðyi Þ ðuj Þz zj þlj cosðyi Þ , , lj lj
Fig. 1. Nondimensional error in the values of coordinates xi (b) and zi (c) of the polynomial approximation with a different number of terms for the trailing arm suspension (a).
294
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
about a position yi0 ¼451 with a different number of terms k are reported in Fig. 1b and c. The maximum nondimensional error in the range between 201 and 701 (i.e., for a variation in a field of 7251 about the central position) is just between 9.96 10 5 and 8.61 10 5. In other cases, the matrices Zij are better obtained numerically using least square techniques instead than through series expansions of the trigonometric functions. By using approximation (32), the ith column Sij of matrix Sj can be computed as h Sij ¼ Zij 0
1
2yi
2
3yi
k2
ðk1Þyi
iT
,
ð34Þ
A number of different types of suspensions were implemented:
Elastic suspensions: londitudinal arm suspensions;
transversal swing arms suspensions and double wishbone suspensions; Articulated suspensions: longitudinal rocker arms suspensions, transversal rocker arms suspensions, rocker bogie suspensions.
These suspensions constitute a sort of a library, and can be mixed in any number, to simulate vehicles with 4, 6, 8,y wheels. For instance, the LRV had 4 double wishbones suspensions, the Exomars rover has a suspension made by a transversal and two longitudinal rocker arms, while the MERs have two rocker bogie suspensions. They can all be modelled using this approach. On the contrary, the geometry of the ATHLETE, based on radial rather than bilateral symmetry, would require some modifications to the basic scheme here used. In a similar way it is possible to approximate the angles that define the position of the wheel during the suspension motion (camber angle, steer angle induced by the suspension, angles defining the kingpin axis position) with polynomials, so that the wheel rotation matrix Rwj(y1,y,ym, dj) can be easily computed during the numerical integration of the equations of motion.
4. Wheel-terrain interaction 4.1. Geometry The ground profile is stated as a function ZG(X,Y) in the form of a look-up table where the values of ZG are listed at equi-spaced (or prescribed) intervals. Specific profiles, like a bump or a ditch, profiles measured from given test grounds or randomly generated profiles, can be included in a library of test terrains. The simplest way of approximating the wheel-ground interaction is to define the meridional profile of the wheel by computing the X, Y, Z coordinates of a number of points, possibly with equi-spaced values of angle b (Fig. 2a) in a given range (e.g., from 901 to 901 from the vertical direction). The profile is thus written in the form of a function ZW(XW,YW). The values of ZG are then interpolated in points with coordinates XW and YW and function (ZW ZG)(XW,YW) is computed. The coordinates of points A and B are thus computed as the points where ZW ZG ¼0, and the geometry of the contact zone is obtained. If ZW ZG 40 in the whole meridional profile, the wheel is not in contact with the ground and the interaction forces are set to zero. This procedure is easily implemented and yields good results, but leads to long computation times. A second approach is that of computing the position of the center of the contact area H at time t þ Dt from that at time t, using approximate geometrical relationships. The position of point H at time t ¼0 must be known, but this is easy, if the rover is assumed to start from a patch of flat terrain, and at any rate the computation time for the initial condition is not critical since it can be performed not in real time. This approach is commonly used in vehicle dynamics simulation. To determine the position of the center of the contact area H at any time, assume that at time t the position of the wheel center Gj is defined by global coordinates XWG, YWG and ZWG, together with the direction wx, wy and wz. The unit vectors tx, ty, tz centred in point H and defining two directions lying on the ground and one perpendicular to it, are determined according to the wheel profile and the ground slopes. The distance R and the vector wz0 from wheel center Gj to point H are obtained as shown in
Fig. 2. Wheel-terrain contact. (a) situation in the mid-plane of the wheel; (b) iterative computation of the center point of contact area H.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
Fig. 2b. In the next time step t þ Dt, the same distance R and the same vector wz0 is used to determine a first approximation for the new contact area center point H (point 1 in Fig. 2b) and the new ground unit vectors from the terrain database. This location of H, defined by coordinates (xgnd, ygnd and zgnd) and the unit vectors need to be refined. A new value of coordinate zgnd can be computed from the terrain profile using coordinates xgnd and ygnd: this point lies on the terrain directly below point 1 at a distance DZ from it. The height DZ in the nz direction can be projected onto the ground normal tz obtaining a distance DZ(nz, tz). This distance can in turn be projected on the wheel midplane using the lateral inclination angle of the wheel, finally obtaining the new value of R R ¼ Rold þDZ ðnz tz Þ=cos ½sin1 ðwy tz Þ,
ð35Þ
As the new distance R is determined, the refined location H (point 2) and its related vectors and coordinates are easily computed. 4.2. Interaction forces The wheels are assumed to be elastic and possibly damped devices, while the terrain is assumed to be rigid. A sketch of the wheel-ground contact is shown in Fig. 2a; the figure refers to the midplane of the wheel. The trace of the meridional profile of the undeformed wheel is a circle centered in the center of the wheel Gj, the contact line in the mid-plane of the wheel can be approximated by line AB, and the center of contact area can be assumed to coincide with H, the mid-point of AB. Line GjH is perpendicular to AB. The normal force exchanged between the terrain and the wheel is ! Fn ¼ F n ðRw 9Gj H9Þ n , ð36Þ where Fn(DR) is the force-deformation characteristics of ! the relevant wheel and n is the unit vector in radial direction. In the simplest case the characteristics of the wheel can be linearized, so that 8 < Fnj ¼ kj ðRw 9Gj H9Þ! n if Rw 9Gj H9 o 0 , ð37Þ : Fnj ¼ 0 if Rw 9Gj H9 Z 0 A viscous component of the normal force must be included, not only to simulate the damping effect of the wheel (that in elastic wheels may be quite small) but above all to avoid numerical instabilities. A simple, albeit approximated, way to introduce some damping is to use the absolute velocity in the GjH direction of the center of the wheel, multiplied by a damping coefficient cw. The driving or braking force acting on the wheel in point Gj can be simply computed from the wheel driving torque Mw. Fd ¼
1 ! Mw t , 9Gj H9
ð38Þ
This driving force must be considered as a ‘drawbar pull’ [29–31], i.e., a net driving force with the rolling
295
resistance already detracted. It must satisfy the constraint 9Fd 9 r mxmax 9Fn 9, ð39Þ ! Vector t is the unit vector in the direction of line AB and mxmax is the maximum value of longitudinal traction coefficient. The cornering force acting on the same point Gj is generally a function of sideslip angle a, i.e., of the angle between the midplane and velocity V of center Gj. Several models can be found in the literature, but the one that is usually resorted to, and gives very good results, is the socalled ‘magic formula’ [7,32,33]. However, the application of the ‘magic formula’ requires a large number of data, which are not always available, in particular in case of non-pneumatic elastic wheels. A simplified expression allowing to obtain an approximated evaluation of the force with a minimum of data is ! Fc ¼ c mymax 9Fn 9sgnðaÞð1eðC d 9a9Þ=ðmymax 9Fn 9Þ Þ, ð40Þ where Cd is the cornering stiffness of the wheel and mymax is the maximum value of lateral traction coefficient. The interaction between the longitudinal and the cornering force needs to be accounted for, in particular when the rover is controlled by slip steering. This interaction can be evaluated by using the mentioned ‘magic formula’, but when no detailed characteristics of the wheel are available, a simple approach is using the elliptical approximation vffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi !2ffi u u 9F 9 d Fnc ¼ Fc t1 , ð41Þ mxmax 9Fn 9 It allows to compute the actual side force Fc* from the value Fc obtained when neglecting the interaction. Operating in this way, the camber force results proportional to the camber angle with a camber stiffness coefficient equal to unity, if measured in 1/rad. If detailed data about the camber stiffness are available, the procedure can be accordingly modified. 5. Rover control 5.1. Trajectory control The trajectory controller operates through two separate longitudinal and lateral controls. The first operates by stating the average driving torque Mmj applied to the wheels of each axle. The driving torque can be evenly distributed among the axles, but the rover’s controller can follow more sophisticated rules. For instance, a feedforward approach can be that of supplying a driving torque proportional to the static load acting on each axle, or to the actual load that in each moment is applied. This second strategy requires the continuous measuring of the normal component of the wheel-ground interaction force. A better approach, based on a feedback strategy, is to monitor the wheel slip and to distribute evenly the longitudinal slip among the axles, preventing wheels skidding. This approach is commonly used in automotive antispin systems. There is no difficulty in modeling the control strategy implemented in the rover, so that the axles receive the
296
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
required motor torque. The high level controller (either a human teleoperating or directly riding the rover or a highlevel control system) at any rate supplies the traction controller a single command, that can be either a torque or a velocity command. In the latter case the velocity command is supplied to a further feedback loop that issues a torque command aimed at maintaining the speed at the required value. The lateral control can operate through a number of steering wheels or through differential driving and braking torques applied to the wheels. In the first case the high-level controller states a steering angle d, which is then distributed to the various wheels, yielding the wheel steering angles dj. In case of slow vehicles, a simple law is the Ackerman law [16,17], allowing to perform kinematic steering: this is for instance the case of the MERs and of the LRV. In the latter case, however, the velocity was not small enough to justify kinematic steering, in particular taking into account the low lunar gravity. Different laws, that take into account also parameters like the speed or introduce an explicit dependence on time are common in the automotive practice. In case of slip steering, each axle can have a prescribed differential driving torque DMmr ¼MmrL MmrR where subscripts r, R and L designate the rth axle and its right and left wheel. A simple approach is that of assuming a constant distribution of the differential torque. The high level controller states the overall steering angle or the overall differential driving torque to follow a required trajectory. 5.2. Active suspensions The rover can be provided with active or semiactive suspensions and, in this case, the suspension, its controller and all the relvant accessories (sensors, power amplifiers, etc.) need to be introduced in the model. Since the possibilities in this field are countless, just a simple example will be considered here. A swing-arms suspension can be provided with an electric motor to control the rotation of the end of the suspension spring that is attached to the vehicle frame (Fig. 3). If a mechanism of this kind is required to control only low frequencies, the rate at which angles y0i must be varied is low and the gear ratio can be high enough to allow small and lightweight motors to be used.
In the case of a 4 wheeled rover with 4 active suspensions of this kind, a simple PD strategy aimed to keep the vehicle body in a horizontal position can be implemented. At regular time intervals, that in slow vehicles do not need to be short, the pitch and roll angles and velocities, _ ) are measured, and angles y (respectively y, f, y_ and f 0i are corrected as T y0new ¼ y0old þðK p1 y þ K d1 y_ Þ 1 1 1 1 _ Þ 1 1 1 1 T , þðK p2 f þ K d2 f ð42Þ where Kpi and Kdi are the proportional and the derivative gains. At each step, a check is performed to verify wheteher the suspension angles yi have reached their minimum or maximum value, in which case the extreme values are imposed and some roll or pitch is accepted. This strategy, that implies that each suspension is controlled independently, is an oversimplification. However, an example will show later that it is quite effective, allowing the rover to put its wheels over the obstacles and into ditches, using the suspension arms almost like legs, to maintain the body in a horizontal position. In case the speed is higher, algorithms similar to those used in automotive active or semiactive suspensions, like the skyhook approach [17], can be used. This is easily implemented in the present model, but is well beyond the scope of this paper. 6. Model implementation The mathematical model described above was implemented in a number of MATLAB m-files. The ode15s integration algorithms, a variable order method for ‘stiff’ equations, was chosen after a number of tests with different rover models. Where algebraic nonlinear equations had to be solved, the Newton–Raphson method was coded. As usual, the code consists of three basic modules: preprocessor, simulator and postprocessor. The preprocessor allows to define the rover configuration (number of wheels, types of suspensions, geometry, etc.), the terrain, the manouver to be performed and the approximation level at which the problem has to be solved. The simulator is basically designed to run off-line and the postprocessor module plots animations and time histories of the results. It is however possible to run the simulation also ‘in line’, teleoperating the rover in real time and visualizing the animation of the motion while it is going on. To do this, however, the level of approximation of the results must be decreased, so that real time computation becomes possible. The approximation levels at which the model can be used are 4:
Fig. 3. Sketch of the active swing-arms suspension.
Full nonlinear model Simplified model Linearized model Quasi static model
The former model is based on the equations of motion descrivbed above. They are nonlinear, and the computation time required is fairly long.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
To reduce the computation time, a number of simplifications have been introduced. Since the mass of the wheels is fairly small when compared to that of the rover body, and the low speed of the rover leads to low values of inertia forces, in particular those related to unsprung masses, the mass of the wheels can be neglected. However, this would lead to a singular mass matrix, that in turn compels to reduce the set of differential equations from 6þm to 6 equations. Since the m added equations are nonlinear, it is not possible to solve them in closed form, obtaining a set of differential equations ready to be integrated. A set of 6 differential and m algebraic equations results, with all the difficulties due to the algebraic loops. The simplified model is thus obtained by introducing constant values for u~ j and Sj into Eq. (19), so that the mass matrix M is constant. These constant values are easily computed from the first column of matrices Zij. The derivative of the mass matrix is thus nul. This leads to a simpler expression for vectors f1 and f3. Since matrix M is constant, vector f2 vanishes. The linearized model is based on the assumption that the general position functions uj(yi) can be expressed as linear equations, the pitch and roll angles of the rover body are small (while the yaw angle is not), and the forces in the state equations can be written in linear form except for the wheel-terrain interaction forces. Thus, only the first two columns of matrix Zij in Eq. (32) are not zero, u~ j and Sj in Eq. (19) and the mass matrix M are constant. Since the pitch and roll angles are small, the rotation matrix R in Eq. (4), matix AT in Eq. (10) and matrix C in Eq. (30) are linearized, which leads to a simpler expression for vectors f3 compared to the simplified model. And since matrix M is constant and the forces, except those in vector f4, are linear, vectors f1 and f2 vanish. The quasi-static model is based on the observation that, if the velocity of the rover is very low, all inertia forces can be neglected and the equations of motions can be reduced to a set of 6þm nonlinear algebraic equations. The motion of the rover is studied as the succession of static equilibrium coditions, like reducing the motion to a sequence of ‘still pictures’. The velocities are not defined, so that the sideslip angles of the wheels are not defined and the lateral forces cannot be computed. The only force acting on the wheels is thus the vertical force, that causes a force perpendicular to the ground and a force tangential
297
to it, due to the tractive or braking actions of the motors, if the ground is sloping. Eq. (25) reduces to f 2 þ f 3 þ kðxh0 Þ þ f 4 ¼ 0,
ð43Þ
which can be easily solved using the Newton-Raphson algorithm.
7. Examples 7.1. Example 1: A rover with 6 wheels, with one transversal and two longitudinal rocker arms Consider the rover with 6 wheels sketched in Fig. 4a: the front two wheels on each side are suspended by two longitudinal rocker arms, while the rear axle has a transversal rocker arm. This configuration was chosen for the Exomars rover. If the rotation of the wheels is not considered, the system has 9 degrees of freedoms, and the vector of the generalized coordinates is h iT x ¼ X Y Z f y c y1 y2 y3 , ð44Þ The data used for the numerical simulations are listed in Table 1. The positions of the first 4 wheels uj(yi) can be expressed by Eq. (33), or by the approximated polynomial expressions obtained from them, remembering that the angles yj of each wheel can be obtained from the generalized coordinates yi as [y1, y2, y1 þ y10, y2 þ y20,]. A similar expression can be obtained for the position of the wheels of the third axle. The lateral control is operated through a number of steering wheels, each with a steering angle dj. Since the velocity of the rover is low, in this example the steering angles are assumed to comply with the Ackerman law, allowing to perform kinematic steering. Thus, the steering angles of the various wheels are related to the turning radius R, the track t and the wheelbase w of the rover as shown in Fig. 4b, i.e., by equations
8 a > d2 ¼ tan R þat=2 , > d1 ¼ tan Rt=2 , > < d3 ¼ 0, d4 ¼ 0, ð45Þ ,
> > > b : d ¼ tan b , d ¼ tan : 5
Rt=2
6
R þ t=2
Fig. 4. (a) Sketch of a rover with 3 rocker arms suspensions; (b): definition of kinematic steering for a 6-wheeled rover.
298
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
Table 1 Data of a rover with 3 rocker arms suspensions. Body mass Wheel mass (each) Moments of inertia [Jx, Jy, Jz] Gravitational acceleration x-position of suspensions trunnions y-position of suspensions trunnions z-position of suspensions trunnions Length of front suspension arms Length of rear suspension arms Rocker arm angles Radius of wheels Vertical wheel stiffness Vertical wheel damping Max. longitudinal. traction coefficient Max. lateral traction coefficient Cornering stiffness Maximum motor torque
mB ¼30 kg mw ¼0.6 kg [0.7, 0.9, 1.5] kg m2 g ¼ 1.62 m/s2 xi ¼ [150, 150, 300] mm yi ¼[200, 200, 0] mm zi ¼ [ 10, 10, 10] mm l ¼ 250 mm l2 ¼ 267 mm yi0 ¼[90,90,97] deg Rw ¼90 mm Kw ¼4 kN/m cw ¼ 0.3 kN s/m mxmax ¼ 0.5 mymax ¼0.5 C¼ 50 N/rad Msat ¼ 1.29 N m
Assuming as global steering angle that of wheel 1, in case the central axle is located in the mid-wheelbase point (a¼ b¼w/2), the steering angle of the 6 wheels can be expressed as
d ¼ d 1 tan
w arctanðdÞ w þ2t arctanðdÞ
=d
0
0
1
Fig. 5. Comparison of the turning radius R obtained through numerical integration with that obtained through kinematic steering.
T w arctanðdÞ =d , tan wþ 2t arctanðdÞ
ð46Þ
7.1.1. Steering performance To compare the steering performance computed through the present dynamic model with that obtained through uncoupled handling models [19] and through the kinematic steering assumption, a number of simulations on flat terrain (ZG ¼0) with different steering angles d and a speed V¼0.05 m/s were performed. The results are plotted in Fig. 5, which shows that the results practically coincide, as it should be, owing to the low value of the speed. The integration was carried on for 40 s (travelled distance of about 2 m). To verify the effect of the roughness of the terrain and of the speed on these results, a rough terrain was obtained through a random numbers generator. The terrain profile was stated as.
Fig. 6. Comparison of the turning radius R obtained through numerical integration with the radius Rk obtained through kinematic steering on different terrains.
Z G ¼ Z R Z ran , where ZR is a coefficient used to scale the terrain irregularities and Zran is a random profile, that is kept constant. Two sets of simulations were performed: one with different roughness (ZR ¼0, 0.1, 0.2, 0.5, 1.0) and a constant speed V¼0.05 m/s, the other with different speeds (V¼0.05, 0.1, 0.2, 0.5, 1.0 m/s) and a constant value of the roughness ZR ¼0.3. The integration was carried on for 40 s; the results are plotted in Figs. 6 and 7, which show that the agreement remains good if the speed and the roughness are not too high (the radius of the trajectory obtained from the numerical simulations is approximately 95%–99% of that obtained using the kinematic steering model), However, for high values of the roughness (ZR ¼0.5 or 1 lead to quite high roughness) kinematic steering yields unacceptable results. A similar effect is linked with the speed, but the latter depends much on the
Fig. 7. Comparison of the turning radius R obtained through numerical integration with the radius Rk obtained through kinematic steering with different speed.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
299
dynamic characteristic of the rover: in case of a neutral steer rover this effect can be expected to be negligible. The results of a simulation of the motion on fairly rough ground (ZR ¼0.2) with a speed of 0.05 m/s and a steering angle of 51 is shown in Figs. 8 and 9. The full nonlinear model was used, and the integration was carried on for 40 s, with the first 6 s used to let the rover set into equilibrium condition (i.e., moving on flat terrain). The projections of the trajectories of the center of mass of the various bodies in the xz- and xy-planes and the profile of the ground at the wheel-terrain contact are shown in Fig. 8, while in Fig. 9 the time histories of all the generalized coordinates are plotted together with the driving torques (or better, the amount of driving torque that corresponds to the drawbar pull, i.e., the
driving torque that exceeds the torque needed to compensate for the rolling resistance) of the motors and the vehicle speed. The controller tries to keep the speed constant at the preset value, by controlling the motor torques.
Fig. 8. Projections of trajectories of rover on the xz- and xy-planes.
Fig. 10. Sketch of rover with swing arm suspensions.
7.2. Example 2: A rover with 4 wheels, independent swing arms suspensions A second example deals with a rover with 4 wheels attached to the body through independent longitudinal swing arm suspensions. If the rotation of the wheels is not accounted for in the computation of the kinetic energy of the rover, the system has 10 degrees of freedom, and,
Fig. 9. Time histories of the generalized coordinates of the system, of the driving torques on the wheels and of the longitudinal velocity.
300
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
with reference to Fig. 10, the vector of the generalized coordinates is h i x ¼ X Y Z f y c y1 y4 , ð47Þ The rover is controlled by slip steering. The data for the numerical simulation are reported in Table 2. Since the trajectory is controlled by slip steering, the control parameters are the mean and the differential motor torques M0 and DM acting on each wheel. The total torques acting on the wheels at the left and the right side wheels are ( ML ¼ M 0 DM , ð48Þ M R ¼ M 0 þ DM If the differential torque DM is positive, the trajectory will bend to the left. Table 2 Data of a rover with swing arm suspensions Body mass Wheel mass (each) Moments of inertia [Jx, Jy, Jz] Gravitational acceleration x-position of suspensions y-position of suspensions z-position of suspensions Length of swing arms Swing arm stiffness Swing arm damping Initial suspension angles Radius of wheel Vertical wheel stiffness Vertical wheel damping Max. longitudinal. traction coefficient Max. lateral traction coefficient Cornering stiffness Maximum motor torque
mB ¼30 kg mw ¼0.6 kg [0.7, 0.9, 1.5] kg m2 g ¼1.62 m/s2 xi ¼ [180, 180, 220, 220] mm yi ¼[200, 200, 200, 200] mm zi ¼ [ 10, 10, 10, 10] mm l ¼200 mm Ks ¼5 Nm/rad cs ¼ 3.5 N ms/rad yi0 ¼ [ 17.2, 17.2, 17.2, 17.2] deg Rw ¼90 mm Kw ¼ 4 kN/m cw ¼0.3 kN s/m mxmax ¼0.5
mymax ¼0.5 C¼ 50 N/rad Msat ¼ 1.29 N m
7.2.1. Comparison of the different implementations The different implementations of the model are compared using the same types of terrain used for the previous example, while a differential torque of 0.2 Nm is assumed for bending the trajectory. The normalized computation times for the different cases are compared in Fig. 11. The advantage in using the simplified models is large, particularly on rough ground. When ZR ¼0.3 and the velocity is V¼0.1 m/s, the computation time for the simplified and linearized model are about 70% and 58% of that for the full nonlinear one, while the quasi static model requires just 15% of the computation time. The results are compared in Fig. 12, for the case with ZR ¼0.1 and V ¼0.1 m/s. The results obtained using different models are quite close, with only the quasi static model showing larger differences. This is mainly because in the quasi static model the velocities are not defined and the trajectory is imposed, instead of being computed from the differential motor torques. The projections of the trajectories of the center of mass of the various bodies on the xz- and the xy-planes are shown in Fig. 13, while the time histories of all the generalized coordinates, the motor torques and the speed are reported in Fig. 14. The figures are related to the case with a differential torque DM¼0.1 Nm, a roughness parameter ZR ¼0.2 and a speed V¼ 0.05 m/s. The average torques are controlled by a proportional control so that the speed is maintained close to the required value.
7.2.2. Active swing arm suspensions Consider the same rover, but provided with active suspensions of the type described in Section 5.2, aimed to keep the vehicle body in a horizontal position. At regular time intervals (say 0.1 s) the pitch and roll angles and velocities are measured, and angles yi0 are corrected following Eq. (42).
Fig. 11. Normalized computational time for the four implementations for the different cases.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
301
Fig. 12. Comparison of the time histories of coordinates x, y, z, F, y and c for the four implementations of the model of a 4 wheeled rover with slip steering. Speed V ¼0.1 m/s; Differential motor torque DM ¼0.2 Nm.
To better evidence the advantages of the active suspensions, the terrain is assumed to be quite rough (ZR ¼0.2) and the differential torque is assumed as DM¼ 0.2 Nm. The speed is V¼0.05 m/s (180 m/h).
The results in terms of time histories of the coordinates and trajectories are compared with those obtained for the rover with passive suspensions in Figs. 15 and 16: The figures show that the roll and pitch angles are quite
302
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
large in case of passive suspension (the latter reaches values in excess of 101), and that after slightly more than 1 m the rear wheels slide suddenly to the right, causing an abrupt change of the yaw angle c and a bend in the trajectory. These lateral slips are not uncommon when travelling on quite rough ground. The results for the rover with active suspensions (full lines in Fig. 15) and Fig. 16b and d show that the controller succeeds in keeping the rover flat (the roll and pitch angles are always much smaller than 11) and this prevents strong lateral slips of the wheels. The
Fig. 13. Projections of the trajectories of the rover on the xz- and the xyplane.
trajectory is thus much smoother and the rover appears to be more controllable. 8. Conlcusions A simple dynamic model for wheeled planetary rovers was developed. The model, based on the pseudo coordinate approach, assumes that the rover is made by a number of rigid bodies articulated to each other, that can be connected by springs and dampers. The wheels are assumed to be elastic bodies, either linear or nonlinear, to which some damping can be associated. The suspensions may be either articulated devices, like rocker bogies or rocker arms suspensions, or suspensions of the automotive type like swing arms or double wishbone suspensions. Their kinematics is approximated by developing the trajectory of the unsprung mass with respect to the sprung one in polynomial form and a library containing several types of suspensions was built. There is however no difficulty in introducing suspensions of different types; in the same way it is possible to model articulated arms that may be present. Active suspensions can as well be introduced. In the present implementation a simple ground-wheel interaction model is used, but more complex models can be included. The model can simulate both conventional steering and slip steering, and various types of controllers can be introduced for the longitudinal and the lateral control and for the active or semi-active suspensions, if present. The model was implemented in a Matlab code in four different versions, that can be called by the user. The first possibility is that of using the full nonlinear model, that guaranties the highest precision but requires the longest
Fig. 14. Time histories of generalized coordinates of the system, of the driving torques on the wheels and of the longitudinal velocity.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
303
Fig. 15. Time histories of the position of the center of mass (a), of the roll, pitch and yaw angles (b), and of the angles of the swing arms (c) for both rovers with active and passive suspensions. The control angles for the active suspensions case are reported in (d).
Fig.16. Side ((a), (b)) and top ((c), (d)) views of the trajectories of the center of mass, of the centers of the wheels and centers of the contact points of the wheels for the rover with both passive and active suspensions. The position of the rover at t ¼150 s is also sketched.
computation time. The other three implementations are simplified, by neglecting the dependence on time of the mass matrix, by fully linearizing the equations of motion (except for the ground-wheel interaction) and by neglecting all inertia and damping forces and reducing the motion to a sequence of static equilibrium positions. Some examples reported on the paper, dealing with a rover with rocker arms suspensions similar to those used on the Exomars rover, and a rover with active longitudinal swing arms, did show that in the case of slow machines,
even if operating on irregular ground, the results obtained by the 4 different implementaions are very close. The advantages in computation time obtained by the simplified implementations are large, in particular if the terrain is quite irregular. In a case, the computation time was reduced by 85% by using the quasi-static model. This computation time reduction may prove to be essential when there is a need for real-time operation, like when the code is used for training the human operators or for applications of the ‘hardware in the loop’ kind for testing controllers of different types.
304
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
Fig.17. A picture of the preliminary tests of a 4-wheeled engineering model of a rover on the Moon-Mars test terrain at the Altech facilities in Torino. The rover has been built by the DIANA student group of Politecnico di Torino, that collaborates with TEAM ITALIA, the official Italian Consortium that is designing the AMALIA mission to run for the Google Lunar XPrize competition.
In case of faster machines, like human rated rovers or astronaut assistants, the possibility of using the simplified models is questionable and must be assessed in each case. The examples show that the model follows realistically the motion of the rover on uneven ground, but a detailed validation has still to be done. In particular, experimental data are required for obtaing realistic values of the parameters defining the wheel-ground interaction, for the peculiar types of elastic wheels that will be used on the future planetary rovers. Extensive experimental validation of the code is planned for the near future. An engineering model of a 4-wheeled rover, similar to that studied above as Example 2 (Fig. 17) has been built and some preliminary tests are at present being performed. The experimental validation will be the subject of a future paper. References [1] G. Genta, Introduction to the Mechanics of Space Robots, Springer, New York, 2011. [2] A. Martin Alvarez, W.de Peuter, P.Gonzalez de Santos, M.A.Armada, A survey of locomotion concepts for planetary exploration rovers, ESA WPP-075, Presented at the ‘‘Third ESA Workshop on Advanced Space Technologies for Robot Applications—ASTRA 94’’, ESTEC, Noordwijk, April 27–28, 1994. [3] K. Schilling, C. Jungius, Mobile robots for planetary exploration, in: A Halme, K. Koskinen (Eds.), Intelligent Autonomous Vehicles, 1995, pp. 110–120. [4] G. Genta, N. Amati, Non-zoomorphic versus zoomorphic walking machines and robots: a discussion, Eur. J. Mech. Environ. Eng. Vol. 26 (No. 2) (2000) 351–357. [5] M.G. Bekker., Introduction to Terrain-Vehicle Systems, The University of Michigan Press, Ann Arbor, 1969. [6] J.Y. Wong, Theory of Ground Vehicles, John Wiley, New York, 2001. [7] H.B. Pacejka, Tire and Vehicle Dynamics, SAE International, 2005. [8] G. Ishigami, Terramechanics-based Analysis and Control for Lunar Planetary Exploration Robots, Doctorial thesis of Tohoku university, 2008. [9] D. Apostolopoulos, B. Shamah, et al., Effect of tire design and steering mode on robotic mobility in barren terrain, Proceeding of the International Conference on Field and Service Robots, p. 287–292, August, 1999. [10] B.P., Taylor, Experimental Evaluation and Semi-Empirical Modeling of the Tractive Performance of Rigid and Flexible Wheels on Lunar Soil Simulant, Doctorial Thesis of Virginia Polytechnic Institute and State University, 2009.
[11] K. Yoshida, G. Ishigami, Steering characteristics of a rigid wheel for exploration on loose soil, IEEE/RSJ International Conference on Intelligent Robots and Systems, Sendai, September.–October 2004. [12] G. Ishigami, A. Miwa, K. Nagtani, K. Yoshida, Terramechanics based model for steering maneuver of planetary exploration rovers on loose soil, J. Field Rob. vol. 24 (3) (2007) 233–250. [13] I.C. Schmid, Interaction of wheel and terrain results, J. Terramech. 32 (1) (1995) 3–26. [14] G. Ishigami, A. Miwa, K. Yoshida, Steering trajectory analysis of planetary exploration rovers based on all-wheel dynamic model, Proceedings of the Eighth International Symposium on Artificial Intelligence, Robotics and Automation in Space, Munich, September 2005. [15] K.Yoshida, Ishigami, Steering characteristics of an exploration rover on loose soil based on all-wheel dynamic model, IEEE/RSJ International Conference on Intelligent Robots and Systems, Edmonton, August 2005. [16] G. Genta, Motor Vehicle dynamics, World Scientific, Singapore, 2003. [17] G. Genta, L. Morello, The Automotive Chassis, Springer, New York, 2008. [18] G. Genta, A. Genta, Preliminary assessment of a small robotic rover for titan exploration, Acta Astronaut. Vol. 68 (5–6) (2011) 556–566. March–April. [19] G. Genta, Conventional and slip steering for multi-wheel planetary rovers, Atti dell’ Accademia delle Scienze di Torino, 2011. [20] G. Genta, Study of the lateral dynamics of a large pressurized lunar rover: comparison between conventional and slip-steering, 61st International Astronautical Congress, Prague, October 2010. [21] Robert Bauer, Winnie Leung, Tim Barfoot, Development of a dynamic simulation tool for the Exomars rover, Proceedings of the Eighth International Symposium on Artificial Intelligence, Robotics and Automation in Space, Munich, Germany, 5–8 September, 2005. [22] M.J. Thoresson, J.A. Snyman, et al., Efficient optimisation of a vehicle suspension system, using a gradient-based approximation method, Part 1: Mathematical modeling, Math. Comput. Modell. 50 (9–10) (2009) 1421–1436. [23] L. Meirovitch, Methods of Analytical Dynamics, New York, McGrawHill, 1970. [24] L. Meirovitch, M.K. Kwak, State equations for a spacecraft with maneuvering flexible appendages in terms of quasi-coordinates, Appl. Mech. Rev. vol. 12 (no 11, Part 2) (1989) S17–S161. [25] Feng Chen, G. Genta, Guang Zhao, Dynamic modelling of wheeled planetary rovers, International Conference on Electronic and Mechanical Engineering and Information Technology, Harbin, Heilongjiang, China, Aug. 2011. [26] G. Genta, Dynamic modelling of a wheeled lunar microrover, 61st International Astronautical Congress, Prague, October 2010. [27] D.S. Apostolopoulos, Analytical Configuration of Wheeled Robotic Locomotion, CMU-RI-TR-01-08, The Robotics Inst: Carnegie Mellon University, Pittsburgh, 2001. [28] G. Genta, Vibration Dynamics and Control, Springer, New York, 2009.
F. Chen, G. Genta / Acta Astronautica 81 (2012) 288–305
[29] M.G. Bekker, Theory of Land Locomotion, The University of Michigan Press, Ann Arbor, 1956. [30] M.G. Bekker, Off-the Road Locomotion, The University of Michigan Press, Ann Arbor, 1960. [31] N. Patel, G.P. Scott, A. Ellery, Application of Bekker theory for planetary exploration through wheeled, tracked and legged vehicle
305
locomotion, AIAA 2004-6091, Space 2004 Conference and Exhibit, , San Diego, California, pp. 28–30 September 2004. [32] E. Bakker, L. Lidner, H.B. Pacejka, Tire Modelling for Use in Vehicle Dynamics Studies, SAE Paper 870421. [33] E. Bakker, H.B. Pacejka, L. Lidner, A New Tire Model with an Application in Vehicle Dynamics Studies, SAE Paper 890087.