A 3D Generic Inverse Dynamic Method using ... - Semantic Scholar

4 downloads 99 Views 211KB Size Report
E-mail: raphael.dumas@etsmtl.ca; [email protected]. Computer Methods in Biomechanics and Biomedical Engineering. Vol. 7, No. 3, June 2004, pp.
Computer Methods in Biomechanics and Biomedical Engineering Vol. 7, No. 3, June 2004, pp. 159–166

A 3D Generic Inverse Dynamic Method using Wrench Notation and Quaternion Algebra R. DUMASa,*, R. AISSAOUIa,b,* and J.A. DE GUISEa,b a

Laboratoire de recherche en imagerie et orthope´die, Center de recherche du CHUM, Pavillon J.A. de Se`ve – local Y-1615, 1560, rue Sherbrooke Est, Montre´al, Que., Canada H2L 4M1; b De´partement de ge´nie de la production automatise´e, Ecole de technologie supe´rieure, 1100, rue Notre Dame Ouest, Montre´al, Que., Canada H3C 1K3 (Received 22 May 2003; In final form 20 May 2004)

In the literature, conventional 3D inverse dynamic models are limited in three aspects related to inverse dynamic notation, body segment parameters and kinematic formalism. First, conventional notation yields separate computations of the forces and moments with successive coordinate system transformations. Secondly, the way conventional body segment parameters are defined is based on the assumption that the inertia tensor is principal and the centre of mass is located between the proximal and distal ends. Thirdly, the conventional kinematic formalism uses Euler or Cardanic angles that are sequence-dependent and suffer from singularities. In order to overcome these limitations, this paper presents a new generic method for inverse dynamics. This generic method is based on wrench notation for inverse dynamics, a general definition of body segment parameters and quaternion algebra for the kinematic formalism. Keywords: 3D inverse dynamics; Wrench notation; Quaternion algebra; Inertial coordinate system

INTRODUCTION Joint forces and moments obtained from inverse dynamic computation are commonly used in gait analysis for orthopedics, ergonomics or sports analysis [1 –6]. The principle of inverse dynamics is to use the Newton – Euler equations of motion in order to compute the net joint forces and moments as a function of the kinematics, body segment parameters and ground reaction forces and moments. Several 3D inverse dynamic models [3,7 –11] have been proposed. However, these models are limited in aspects related to inverse dynamic notation, body segment parameters and kinematic formalism. First, for inverse dynamic notation, these models [3,7 – 11] use the conventional inverse dynamic method consisting of three steps: (i) in the inertial coordinate system (ICS), and according to the first Newton – Euler law, the force vector at the proximal end is computed knowing the force vector at the distal end and the linear acceleration vector of the segment centre of mass.

(ii) in the segment coordinate system (SCS), and according to the second Newton –Euler law, the moment vector at the proximal end is computed knowing the moment vector at the distal end and knowing both force vectors at proximal and distal ends. To do so, the latter force vectors must be transformed from ICS to SCS. Also, the angular velocity and acceleration vectors, as well as the segment inertia tensor, must be known in the SCS. (iii) for the next adjacent segment and according to the action/reaction principle, the force and moment vectors at the distal end are the opposite of the force and moment vectors at the proximal end of the current segment. Thus, the moment vector must be transformed from the current SCS to the next adjacent SCS. Therefore, this three-step method yields successive coordinate transformations and manipulations of many attitude matrices [7]. Moreover, it is valid for all segments of a multibody system except for the terminal segment. Actually, for the terminal segment, the ground reaction forces are applied at the center of pressure of the force

*Corresponding authors. Tel.: þ1-514-890-8000. Ext. 28721. Fax: þ1-514-412-7785. E-mail: [email protected]; [email protected]

ISSN 1025-5842 print/ISSN 1476-8259 online q 2004 Taylor & Francis Ltd DOI: 10.1080/10255840410001727805

160

R. DUMAS et al.

platform instead of the segment distal end. Thus, the treatment of the terminal segment needs specific notation. Secondly, in the definition of body segment parameters, the position of the center of mass is systematically given as a ratio of the proximal – distal length. Furthermore, the axes of the SCS are considered as principal axes of inertia. These two assumptions may become problematic when personalization is necessary: amputation, hemiplegia, obesity. Moreover, most studies that analyze the sensitivity of body segment parameters are still based on these two assumptions [12]. Thirdly, kinematic formalism generally relies on Euler/ Cardanic angles. The Euler/Cardanic angles are sequencedependent and vary for different joints [2,7,10,11,13,14]. Sometimes, the sequence is simply not reported by authors [12,15]. Furthermore, it is well known that Euler/Cardanic angles suffer from singularities caused by gimbal locks, especially when computing angular velocity and angular acceleration vectors [16]. In order to overcome these limitations, the objective of this paper is to develop a new generic method for inverse dynamics. This generic method is based on (i) wrench notation for the inverse dynamic notation, (ii) a general definition of body segment parameters and (iii) quaternion algebra for kinematics formalism. The conventional method will be summarized first, after which the generic method will be explained in detail and discussed. Conventional 3D Inverse Dynamics In general, the net joint force and moment are computed separately [3,8 –11]. From the free body diagram (Fig. 1), we can write: F ip ¼ mi a i 2 mi g 2 F id

ð1Þ

_ s 2 Ms 2 ðks £ Fs Þ 2 ðls £ Fs Þ Msip ¼ H i id i ip i id

ð2Þ

In Eq. (1), Fip is the proximal force vector, Fid the distal force vector, mi the segment mass, ai the linear acceleration

vector of the center of mass and g gravitational acceleration. Equation (1) is computed in the ICS because the weight is involved here. The linear acceleration vector is computed as the second derivative of the center of mass position vector expressed in the ICS. To do so, the center of mass position vector is given as a ratio of the proximal to distal end vector. In Eq. (2), Msip is the proximal moment vector, Msid the distal moment vector, ksi and lsi are the lever arm vectors from the centre of mass to the proximal and distal ends and _ s is the time derivative of the angular momentum. H i Equation (2) is computed in the SCS (denoted by index s) and at the center of mass. Then, the derivative of the angular momentum is given by [3,10,11]:   3 2 I si xx asi x 2 I si yy 2 I si zz vsi y vsi z 7 6 6 s s s  s s 7 s s 7 6 I a 2 I 2 I v v _ ¼ 6 i yy i y iz ix 7 i zz i xx ð3Þ H i 7 6   5 4 s s I i zz ai z 2 I si xx 2 I si yy vsi x vsi y where Isi is the inertia tensor, asi and vsi are the angular acceleration and velocity vectors, and indexes x,y,z correspond to the axes of the SCS. Equation (3) is valid only if the inertia tensor is principal (i.e. Isi xx ¼ diag ðI si xx I si yy I si zz Þ). To compute Eq. (2), Fip and Fid, already computed from Eq. (1) must be transformed using the attitude matrix Ri of the SCS with respect to the ICS Fsid ¼ R21 i F id s Fip ¼ R21 i F ip

ð4Þ ð5Þ

For the next adjacent segment and at the distal end, the force vector in the ICS and moment vector in the next adjacent SCS are computed using the action/reaction principle F iþ1 d ¼ 2F ip   s Msiþ1 d ¼ 2 R21 iþ1 R i Mip :

ð6Þ ð7Þ

Therefore, the computation of Eqs. (1) and (2) is done in separate coordinate systems which necessitates successive coordinate transformations (Eqs. (4), (5) and (7)). The attitude matrices Ri are generally computed with a pre-determined sequence of Euler/Cardanic angles ðci ; ui ; fi Þ: For example, the XYZ sequence that converts the SCS with respect to the ICS, can be computed [2,13]: 2 3 2cui swi sui cui cwi 6 7 cc sw þ sci sui cwi cci cwi 2 sci sui swi 2sci cui 7 Ri ¼ 6 4 i i 5 sci swi 2 cci sui cwi sci cwi þ cci sui swi cci cui ð8Þ

FIGURE 1 Free body diagram: conventional 3D inverse dynamics.

where c and s denote cosine and sine, respectively. Also, the angular velocity and acceleration vectors vsi and asi are computed as a function of these Euler/Cardanic

3D GENERIC INVERSE DYNAMIC MODEL

angles and their time derivative 2 c u i c wi s wi 6 s 2cui swi cwi vi ¼ 6 4 0 s ui

161

is the weight wrench and 32 _ 3 ci 76 _ 7 0 7 6 ui 7 54 5 1 w_ i

(

0

ð9Þ

2 € 3 ci cui cwi þc_ i u_ i sui cwi þc_ i w_ i cui swi þu€i swi 2u_ i w_ i cwi 6 € 7 2c cu sw 2c_ u_ su sw þc_ w_ cu cw þu€ cw þu_ w_ sw 7 asi ¼6 4 i i i i i i i i i i i i i i i i 5: c€i sui 2c_ i u_ i cui þw€i ð10Þ

GENERIC METHOD The following section presents a one-step inverse dynamic method using wrench as inverse dynamic notation, a general definition of body segment parameters and quaternion algebra for kinematic formalism. Inverse Dynamics using Wrenches The wrench notation was used in order to compute the force and moment equations of motion at the same time. The wrench is a mechanical notation that represents both force and moment vectors. The wrench is expressed at a defined point location and in a defined coordinate system. In the free body diagram (Fig. 2), all wrenches are expressed in the ISC but at different points of the segment. The point Pi is the proximal end of the segment and ( Fi proximal Wi ðPi Þ ¼ Mi is the proximal wrench. The point Ci is the center of mass of the segment, ( mi g weight Wi ðC i Þ ¼ 0 3£1

ðC i Þ Wdynamic i

¼

mi a i _i H

is the dynamic wrench. The point Di is the distal end of the ðDi Þ is the distal wrench. segment and Wdistal i In a multibody system, the point Di corresponds to the point Pi21 ; which is the proximal end of the previous adjacent segment. The wrench notation of the action/ reaction principle is therefore given by ( 2F i21 proximal distal : ð11Þ Wi ðDi Þ ¼ 2Wi21 ðPi21 Þ ¼ 2M i21 In the dynamic wrench, the derivative of the angular momentum is given by its general form [17], expressed at the center of mass in the ISC: _ i ¼ Iiai þ vi £ Iivi: H

ð12Þ

Then, the wrench equation of motion can be written at any point of the segment. The sum of the external wrenches (proximal, distal and weight) applied at this defined point equals the dynamic wrench applied at the same point. The segment proximal end Pi is chosen in order to compute the proximal wrench as a function of the other wrenches: ðPi Þ ¼ Wdynamic ðPi Þ 2 Wdistal ðPi Þ Wproximal i i i ðPi Þ: 2 Wweight i

ð13Þ

One property of wrench is that the transformation from one point to another necessitates that the cross product of lever arm and force is added to the moment part of the wrench. For example, the transformation of the weight wrench from the center of mass to the proximal end is given by ( mi g ðPi Þ ¼ ð14Þ Wweight i 0 3£1 þ c i £ mi g

FIGURE 2 Free body diagram: wrench notation of inverse dynamics.

162

R. DUMAS et al.

!~ where c i ¼ ðPi C i Þ is the lever arm vector from the proximal end to the center of mass expressed in the ICS. Transforming the distal and dynamic wrenches in the same way as the weight wrench in Eq. (13) yields the following relation: (

Fi Mi

( ¼

miai I i a i þ v i £ I i v i þ c i £ mi a i (

2

(

mi g c i £ mi g

2

2F i21 2M i21 2 d i £ F i21

ð15Þ

!~ !~ where d i ¼ ðPi D i Þ ¼ ðPi Pi21 Þ is the lever arm vector from the proximal end to the distal end expressed in the ICS. We can notice that when expressing the equation of motion at the proximal end, it is no longer necessary to transform the inertia tensor at this point with the complex parallel axis theorem. The dynamic wrench can be easily transformed with the lever arm ci. Representing the proximal and distal wrenches as 6D-vectors, Eq. (15) can be written in the following compact form: "

Fi Mi

#

" ¼

mi E 3£3 0 3£3 mi c~ i "

#"

ai 2 g

#"

F i21

" þ

ai

Ii

E 3£3 0 3£3 þ ~ d i E 3£3

#

0 3£1

#

vi £ Iivi

# ð16Þ

M i21

where E 3£3 is the identity matrix, 0 3£3 and 0 3£1 are matrix and vector of zeros, c~ i and d~ i are the skew-symmetric matrix of lever arms ci and di (see Appendix).

FIGURE 3

The right hand 6 £ 6 matrix represents the mass and inertia terms that multiply the 6D-vector of linear and angular acceleration (including the acceleration of gravity). The left hand 6 £ 6 matrix (with ones on the diagonal) represents the contribution of the distal actions. Equation (16) is an explicit form of the wrench equation of motion (Eq. 13) that includes both first and second Newton – Euler laws. Moreover, the distal wrench notation (Eq. 11) directly takes into account the action/ reaction principle. Therefore, Eq. (16) is a one-step inverse dynamic method. In order to generalize this method, a generic segment notation is proposed (Fig. 3). In this generic segment notation, only the proximal wrench of every segment is designated. The distal wrench is not explicitly needed because the action/reaction principle is already included in Eq. (16). Moreover, when considering the terminal segment, there is simply no distal wrench. Even though the distal end of the foot (or the hand) can be defined (10) from an anatomical point of view, it is not appropriate in dynamics because the ground reactions are exerted at another point, the center of pressure. In the generic segment notation, the ground (denoted by i ¼ 0) follows the same notation as the other segments. The point P0 corresponds to the center of pressure and ( F0 ðP0 Þ ¼ Wground 0 M0 is the ground reaction wrench expressed in the ISC. The point P0 is equivalent to the “proximal end” of a “ground segment” and Wground ðP0 Þ is equivalent to the 0 proximal wrench exerted on this “ground segment”. Therefore, the one-step inverse dynamic method (Eq. 16) is still valid for the terminal segment.

Generic notation of segments.

3D GENERIC INVERSE DYNAMIC MODEL

From a practical point of view, the position of the center of pressure and the ground reaction wrench are determined according to the platform data. General Definition of Body Segments Parameters In addition, in the generic segment notation, the body segment parameters are expressed in the most general definition. As the distal end is not explicitly designated in the proposed inverse dynamic method, the center of mass is not given as a proximo –distal ratio. This proximo – distal ratio is a restrictive assumption in 3D inverse dynamics. Therefore, the generic segment notation includes the center of mass vector csi in the SCS. Also, the generic segment notation includes all of the elements of the inertia tensor. Actually, compared to Eq. (3), Eq. (12) is valid for any inertia tensor, principal or not. From a practical point of view, the center of mass 3D vector csi and the inertia tensor (principal moments of inertia and orientation of the principal axes of inertia with respect to the SCS axes) can be obtained from literature [18,19]. Kinematic Formalism using Quaternion Algebra Besides, in the generic segment notation (Fig. 3), the segment position is given by the generalized coordinates [20] "

pi qi

# :

The 3 £ 1 vector pi is the position of the segment proximal end Pi expressed in the ICS, and the 4 £ 1 quaternion qi represents the attitude of the SCS with respect to the ICS. This 7 £ 1 generalized coordinate is determined according to the SCS construction: (i) following the International Society of Biomechanics standardization [21], the SCS origin is constructed at proximal end and vector pi is the position of the origin (ii) the quaternion qi is obtained from the orientation of the SCS axes with respect to the ICS axes by a singularity-free extraction [22]. By extension to the ground, vector p0 expressed in the ICS is the position of the center of pressure P0. Therefore, the lever arm vector di is given for every segment by d i ¼ ½p i21 2 p i :

ð17Þ

Here, quaternions are preferred to Euler/Cardanic angles because no sequence determination is required. Also, quaternion algebra is deemed to be more powerful because of its unique property, namely the multiplicative rule [16,23]. Quaternions are an extension of complex numbers (with three imaginary parts). In the four-dimensional

163

space, a quaternion " q¼

qs

#

qv

is denoted as a combination of a scalar qs and a vector q v. Therefore, a quaternion can represent both a vector in 3D space—with a zero scalar part, qs ¼ 0—and a rotation— about an unit vector u by an angle b, " # cos ðb=2Þ q¼ : u sin ðb=2Þ In this way, all the kinematics can be computed with quaternion algebra. The attitude quaternion qi can perform the coordinate transformation between SCS and ICS, in the same way as the conventional attitude matrix Ri. For example, the lever arm ci in the ICS can be transformed by " # " # 0 0 ¼ qi ^ s ^qi * ð18Þ ci ci where ^ denotes the quaternion product and * denotes the quaternion conjugate (see Appendix). Thus, the position vector ri in the four-dimensional space of the segment center of mass expressed in the ICS is given by " # " # " # 0 0 0 ð19Þ ¼ þ qi ^ s ^qi * ci pi ri Equation (19) allows the computation of the linear velocity vector vi of the segment center of mass expressed in the ICS by direct differentiation: " # " # " # " # 0 0 0 0 ¼ þ q_ i ^ s ^qi * þ qi ^ s ^_qi * ð20Þ ci ci p_ i vi Likewise, Eq. (20) gives the linear acceleration vector ai of the segment center of mass expressed in the ICS by direct differentiation: "

0 ai

#

" ¼

0 p€ i

#

" þ q€ i ^ "

þ 2 q_ i ^

0 csi

0 csi

# ^qi * !

# ^_qi *

" þ qi ^

0 csi

# ^€qi * ð21Þ

The segment angular velocity vector expressed in the ICS is given by [16,23]: " # 0 ð22Þ ¼ 2_qi ^qi *: vi

164

R. DUMAS et al.

Equation (22) allows the computation of the segment angular acceleration vector expressed in the ICS by direct differentiation "

0 ai

# ¼ 2ð€qi ^qi * þ q_ i ^_qi *Þ:

ð23Þ

Finally, the attitude matrix Ri can be computed from the attitude quaternion Ri ¼



  q2s þ qTv q v E 3£3 þ 2q v qTv þ 2qs q~ v i ;

ð24Þ

where E 3£3 is the identity matrix and q~ v is the skewsymmetric matrix of vector qv. This allows the transformation of the inertia tensor from the SCS into the ICS: I i ¼ R i Isi R21 i :

ð25Þ

DISCUSSION The generic method proposed in this paper, is based on wrench for the inverse dynamic notation, a general definition of body segment parameters and quaternion algebra for kinematic formalism. Concerning the dynamic notation, the wrench notation was used in order to compute the force and moment equations of motion in the same time (Eq. (15) vs. Eqs. (1) and (2)). To do so, all of the wrenches exerted on the segment must be expressed in the same coordinate system. The ICS is chosen because the weight of the segment is involved and because the action/reaction principle can be directly taken into account in the distal wrench notation (Eq. (11) vs. Eqs. (6) and (7)). Therefore, the proposed method is a one-step inverse dynamic method (Eq. 16). Compared to the conventional three-step method, no successive coordinate system transformations are required (Eqs. (3), (4) and (7)). Moreover, the ground reactions are also noted as a wrench, so that the one-step inverse dynamic method is valid for every segment, including the terminal segment. Setting the inverse dynamics in a compact onestep form and using the same notation for the ground and all segments may be convenient for numerical implementation. The transformative property of wrenches from one point to another is advantageous in inverse dynamics where different points are considered: proximal end, distal end, center of mass, center of pressure etc. Notably, when computing the equation of motion at the proximal end, the non trivial transformation of inertia tensor (parallel axis theorem) is replaced by a simple wrench transformation bringing a “so-called” second inertial term (ci £ miai) [24].

In the conventional method, the moment equation of motion (Eq. 2) is expressed in the SCS and the center of mass because the derivative of the angular momentum can be simplified (Eq. 3). However, Eq. (3) is only valid if the inertia tensor is principal. Concerning the body segment parameters, the generic method proposed here includes a general definition. All of the components of the inertia tensor are featured in Eq. (12) and the center of mass is positioned by a 3D vector csi in the SCS. The definition of the center of mass as a proximal – distal ratio [2,10] formally comes from the classical 2D inverse dynamics method [6] which is restrictive in a 3D model. Concerning the kinematics formalism, the present method takes advantage of quaternion algebra for the computation of both linear and angular kinematics. The linear acceleration is conventionally determined as the second time derivative of ri, the position vector of the center of mass in the ISC [3,10,25]. However, the only way to obtain the center of mass in the ISC without referring to the moving SCS is to use a proximal – distal ratio. Using a 3D vector csi in the SCS, the generic method proposes to compute the angular acceleration vector with the generalized coordinate and its time derivative (Eq. 21). Furthermore, the angular velocity and acceleration vectors are computed with the quaternion and its time derivative (Eqs. 22 and 23). Therefore, the computation of the linear acceleration vector and of the angular velocity and acceleration vectors is done without sequence pre-determination that would specify the model, and without singularities that may be encountered with Euler/ Cardanic angles [16]. The use of quaternions vs. Euler/Cardanic angles is still debated in biomechanics [26,27]. In order to facilitate a clinical interpretation, Euler/Cardanic angles were formally introduced to quantify, for example, the knee joint movement [28]. However, Euler/Cardanic angles are not only applied to joint movements but also to the global attitude of segments [10,13,29]. The global attitude of segments is not required for clinical interpretation but for the computation of the velocity and acceleration vectors. Therefore, quaternions can be preferred for computational convenience: no sequence determination and no singularities. For clinical interpretation, the force Fi and moment Mi computed in the ISC (Eq. 16) can be further transformed in the SCS using the attitude quaternion qi (or matrix Ri) without referring to the Euler/Cardanic angles. Therefore, this paper presents a useful one-step inverse dynamic method compared to the conventional three-step method. This one-step inverse dynamic method is based on wrench notation and avoids successive coordinate system transformations. Moreover, this paper presents a practical generic notation of segments. This generic notation allows the one-step inverse dynamic method to be valid at every segment including the terminal segment. Also, this generic notation allows us to take into account a general definition

3D GENERIC INVERSE DYNAMIC MODEL

of body segment parameters. Additionally, this generic notation of segments includes quaternions, so that the kinematic formalism, compared to conventional Euler/ Cardanic angles, is free from sequence determination and singularities.

NOMENCLATURE i SCS ICS g mi csi =c i Isi =I i Fsip =F ip Fsid =F id Msip =Msid ks ; l s (i i Fi Mi pi ri vi ai qi Ri

ci,ui,fi vsi =v i asi =a i di _ s =H _i H i

segmental index segment coordinate system (denoted by index s) inertial coordinate system gravitational acceleration vector in the ICS segment mass position vector of segment center of mass expressed in the SCS/ICS inertia tensor at segment center of mass expressed in the SCS/ICS force exerted on segment proximal end expressed in the SCS/ICS force exerted on segment distal end expressed in the SCS/ICS moment exerted on segment proximal/distal end expressed in the SCS lever arm from segment center of mass to proximal/distal end expressed in the SCS wrench exerted on segment proximal end expressed in the ICS position vector of segment proximal end expressed in the ICS position vector of segment center of mass expressed in the ICS linear velocity vector of segment center of mass expressed in the ICS linear acceleration vector of segment center of mass expressed in the ICS attitude quaternion of the SCS with respect to the ICS attitude matrix of the SCS with respect to the ICS Euler/Cadanic angle sequence of rotation of the SCS with respect to the ICS segment angular velocity vector expressed in the SCS/ICS segment angular acceleration vector expressed in the SCS/ICS lever arm from segment proximal end to distal end expressed in the ICS time derivative of the segment angular momentum expressed in the SCS/ICS

Acknowledgements This study was funded by the Canadian Institutes of Health Research (Mentor programme) and by the French Ministry of Foreign Affairs (Lavoisier programme).

165

References [1] Baliunas, A.J., Hurwitz, D.E., Ryals, A.B., Karrar, A., Case, J.P., Block, J.A. and Andriacchi, T.P. (2002) “Increased knee joint loads during walking are present in subjects with knee osteoarthritis”, Osteoarthritis Cartilage 10, 573–579. [2] Cooper, R.A., Boninger, M.L., Shimada, S.D. and Lawrence, B.M. (1999) “Glenohumeral joint kinematics and kinetics for three coordinate system representations during wheelchair propulsion”, American Journal of Physical Medicine and Rehabilation 78, 435–446. [3] Gregersen, C.S. and Hull, M.L. (2003) “Non-driving intersegmental knee moments in cycling computed using a model that includes three-dimensional kinematics of the shank/foot and the effect of simplifying assumptions”, Journal of Biomechanics, 803 –813. [4] Luepongsak, N., Amin, S., Krebs, D.E., McGibbon, C.A. and Felson, D. (2002) “The contribution of type of daily activity to loading across the hip and knee joints in the elderly”, Osteoarthritis Cartilage 10, 353 –359. [5] Vaughan, C.L. (1996) “Are joint torques the holy grail of human gait analysis?”, Human Movement Science 15, 423–443. [6] Winter, D.A. (1990) Biomechanics and Motor Control of Human Movement (John Wiley & Sons, New York), p 296. [7] Apkarian, J., Naumann, S. and Cairns, B. (1989) “A threedimensional kinematic and dynamic model of the lower limb”, Journal of Biomechanics 22, 143– 155. [8] Holden, J.P. and Stanhope, S.J. (1998) “The effect of variation in knee center location estimates on net knee joint moments”, Gait Posture 7, 1 –6. [9] McGibbon, C.A. and Krebs, D.E. (1998) “The influence of segment endpoint kinematics on segmental power calculations”, Gait Posture 7, 237 –242. [10] Vaughan, C.L., Davis, B.L. and O’Connor, J.C. (1992) Dynamics of Human Gait (Human Kinetics, Champaign, IL), p 137. ˜ unpuu, S., Tyburski, D. and Gage, J.R. (1991) [11] Davis, R.B.I., O “A gait analysis data collection and reduction technique”, Human Movement Science 10, 575 –587. [12] Pearsall, D.J. and Costigan, P.A. (1999) “The effect of segment parameter error on gait analysis results”, Gait Posture 9, 173–183. [13] Wu, G. and Cavanagh, P.R. (1995) “ISB recommendations for standardization in the reporting of kinematic data”, Journal of Biomechanics 28, 1257–1261. [14] Eng, J.J. and Winter, D.A. (1995) “Kinetic analysis of the lower limbs during walking: what information can be gained from a three-dimensional model?”, Journal of Biomechanics 28, 753–758. [15] Allard, P., Lachance, R., Aissaoui, R. and Duhaime, M. (1996) “Simultaneous bilateral 3-D able-bodied gait”, Human Movement Science 15, 327 –346. [16] Spring, K.W. (1986) “Euler parameters and the use of quaternion algebra in the manipulation of finite rotations: a review”, Mechanism and Machine Theory 21, 365 –373. [17] Wittenburg, J. (1977) Dynamics of Systems of Rigid Bodies (Teubner, Stuttgart), p 224. [18] McConville, J.T., Churchill, T.D., Kaleps, I., Clauser, C.E. and Cuzzi, J. (1980) Anthropometric Relationships of Body and Body Segment Moments of Inertia (Aerospace Medical Research Laboratory, Wright-Patterson Air Force Base, Dayton, OH), AFAMRL-TR-80-119. [19] Young, J.W., Chandler, R.F., Snow, C.C., Robinette, K.M., Zehner, G.F. and Lofberg, M.S. (1983) Anthropometric and Mass Distribution Characteristics of the Adults Female (FAA Civil Aeromedical Institute, Oklahoma City, OK), Technical Report FA-AM-83-16. [20] Aissaoui, R., Allard, P., Junqua, A., Frossard, L. and Duhaime, M. (1996) “Internal work estimation in three-dimensional gait analysis”, Medical and Biological Engineering and Computing 34, 467 –471. [21] Wu, G., Siegler, S., Allard, P., Kirtley, C., Leardini, A., Rosenbaum, D., Whittle, M., D’Lima, D.D., Cristofolini, L., Witte, H., Schmid, O. and Stokes, I. (2002) “ISB recommendation on definitions of joint coordinate system of various joints for the reporting of human joint motion–part I: ankle, hip, and spine. International Society of Biomechanics”, Journal of Biomechanics 35, 543 –548.

166

R. DUMAS et al.

[22] Shepperd, S.W. (1978) “Quaternion from rotation matrix”, Journal of Guidance Control and Dynamics 16, 223 –224. [23] Chou, J.C. (1992) “Quaternion kinematic and dynamic differential equations”, IEEE Transactions on Robotics and Automation 8, 53–64. [24] Krabbe, B., Farkas, R. and Baumann, W. (1997) “Influence of inertia on intersegment moments of the lower extremity joints”, Journal of Biomechanics 30, 517–519. [25] Hof, A.L. (1992) “An explicit expression for the moment in multibody systems”, Journal of Biomechanics 25, 1209–1211. [26] van den Bogert, T (1993). Angles 3D [Biomch-L]. Available at: http://isb.ri.ccf.org/biomch-l/files/angles3d.topic. Accessed 5 December, 2003. [27] Kirtley, C (2001). Summary: quaternions vs. Euler angles [Biomch-L]. Available at: http://isb.ri.ccf.org/biomch-l/ archives/biomch-l-2001-05/00018.html. Accessed 5 December, 2003. [28] Grood, E.S. and Suntay, W.J. (1983) “A joint coordinate system for the clinical description of three-dimensional motions: application to the knee”, Journal of Biomechanical Engineering 105, 136 –144. [29] Tupling, S.J. and Pierrynowski, M.R. (1987) “Use of Cardan angles to locate rigid bodies in three-dimensional space”, Medical and Biological Engineering and Computing 25, 527–532.

APPENDIX The quaternion product of two quaternions q1 ¼ ½qs1 ; q v1 T and q2 ¼ ½qs2 ; q v2 T is given by: " # qs1 qs2 2 qTv1 q v2 ðA1Þ q1 ^q2 ¼ qs1 q v2 þ qs2 q v1 þ q v1 £ q v2 where symbol “ T ” denotes the transpose, and symbol “ £ ” denotes the cross product. The conjugate of a quaternion q ¼ ½qs ; q v T is given by   qs q* ¼ : ðA2Þ 2q v The skew-symmetric matrix of a 3D vector e ¼ [e1,e2,e3]T is given by 2 3 0 2e3 e2 6 7 e 0 2e1 7: ðA3Þ e~ ¼ 6 4 3 5 2e2

e1

0

Suggest Documents