• No results found

DEVELOPMENT AND EVALUATION OF AN ORDER-N FORMULATION FOR MULTI-FLEXIBLE BODY SPACE SYSTEMS

N/A
N/A
Protected

Academic year: 2021

Share "DEVELOPMENT AND EVALUATION OF AN ORDER-N FORMULATION FOR MULTI-FLEXIBLE BODY SPACE SYSTEMS"

Copied!
8
0
0

Loading.... (view fulltext now)

Full text

(1)

DEVELOPMENT AND EVALUATION OF AN ORDER-N FORMULATION FOR

MULTI-FLEXIBLE BODY SPACE SYSTEMS

Tushar K. Ghosh L-3 Communications, STRATIS 1002, Gemini Avenue, Suite 200

Houston, TX 77058, USA E-mail: [email protected]

Leslie J. Quiocho Mail Code ER7

NASA Lyndon B. Johnson Space Center 2101 NASA Parkway

Houston, TX, 77058, USA E-mail: [email protected] KEYWORDS

Multibody dynamics, Rigid and flexible bodies, Tree topology, Constraints, Closed loops, Order-N. ABSTRACT

This paper presents development of a generic recursive Order-N algorithm for systems with rigid and flexible bodies, in tree or closed-loop topology, with N being the number of bodies of the system. Simulation results are presented for several test cases to verify and evaluate the performance of the code compared to an existing efficient dense mass matrix-based code. The comparison brought out situations where Order-N or mass matrix-based algorithms could be useful.

INTRODUCTION

The Software, Robotics and Simulation Division (SRSD) of NASA Lyndon B. Johnson Space Center provides math modeling and simulation in support of engineering analyses and crew training activities for the center. The division currently has an efficient generic multibody dynamics code based on a dense mass-matrix formulation, which is used for simulating systems involving on-orbit robotic manipulators such as the Canadian Space Agency-built Space Station Manipulator System (SSRMS). It is generally known that Order-N (O(N)) algorithms, which involve arithmetic operation counts of the order N, where N is the number of bodies, perform more efficiently for systems with large degrees of freedom, compared to mass matrix-based with operations of order N3. It was therefore decided to develop an O(N) simulation for SRSD to investigate applications where they may perform better. This development was performed in-house to allow maximum flexibility and control in different simulations. ALGORITHM DEVELOPMENT

There are several methods in the literature that may be used for developing an O(N) algorithm. References may be found in (Banerjee, 2003). The formulation presented here is based on algebraically putting together the following steps: (1) kinematic equations relating motions between consecutive joints, (2) equations of motion of a single body, rigid or flexible, (3) equations relating the total spatial force and active forces and moments at the joint and (4) constraint conditions.

Derivation of the Order-N algorithm is presented in the Appendix. The effect of motion-induced stiffness (Banerjee, 1993) in flexible bodies of the system has not been incorporated yet. Inter-body forces may cause this effect to be important in some cases even for slow motions typical of space systems.

CODE VERIFICATION

The Order-N code was verified against the existing mass matrix-based code for several test cases, which itself was verified against other simulations in the industry, including TREETOPS (Singh et. al.,1985).The mass-matrix algorithm has been in use for many facilities at the Johnson Space Center for many years. Results from the two implementations matched with high accuracy (i.e., within 1.0e-10 or better).

SIMULATION TEST CASES

The test cases are based on variations of the system shown in Figure 1. The base plate B0 is a rigid circular plate floating in inertial space.

Leg1 (B1to B7) Leg 2 (B9to B16) Leg 3 (B17to B24) Base Plate, B0 Top Plate, B25 B1 B6 B9 B16 B17 Pitch Pitch Yaw Roll B2 B3 B4 B5

Legs 1 2 and 3 have identical mass properties Manipulators 1 and 2 have identical mass properties

B7 B8 Pitch Roll Yaw Pitch Pitch Pitch Yaw Roll Manipulator 1 (B26-B33) Manipulator 2 (B34to B41) Test Object, B42 Roll Yaw

Figures 1: Test Model Description

Three identical articulating legs and two identical manipulator arms are rigidly attached to the top plate. The other ends of the legs are rigidly connected to the base plate and the other ends of the manipulators hold a test object rigidly. All links are modeled as cylindrical rods. All joints of the legs and manipulators are single axis rotational joints. Two configurations of the legs and manipulators are considered, one with six joints the other with seven. The axes of the seven jointed manipulators and legs are in the order roll, yaw, pitch, pitch, pitch, yaw

(2)

and roll. The axes for ones with six joints are in the order roll, yaw, pitch, pitch, yaw and roll. In several configurations the boom elements of the legs have been split into two parts of equal length and joined rigidly, for adding additional bodies and flex degrees of freedom to the system. Only the boom elements are modeled as flexible. Each flexible rod has four bending modes (two in each of the bending planes). The system was driven by forces and moments on the top plate and the test object, and moments on joints of the first leg. The forces and moments were held constant for every 20 seconds and then switched in sign. Table 1 shows the configurations. Open loop cases are obtained by freeing the joints between legs 2, 3 and top plate and between manipulator 2 and the test object. For closed loop simulations constraint forces were determined at these same points. Table 1: System Test Case Configurations

RESULTS

Figures 2: Displacements of Top Plate and Test Object

Plots of representative data are shown in Figures 2 and 3. Figure 2 shows a co-plot of displacements of the center of the top plate, and the joint between manipulator 1 and the test object obtained from O(N) and mass matrix simulations for Case 16. The two results match to within 1.0e-10. Figure 3 is a co-plot of angular acceleration of the bottom pitch joint of leg 2 for Cases 12 and 16 (rigid and flex respectively) for O(N). Distances are shown in meters, while angles are shown in radians.

Figures 3: Leg 2 Bottom Pitch Joint Angular Acceleration Performance of the O(N) code is measured by the CPU time for a 100 second simulation and comparing it with the existing code. The results of the comparison are listed below for rigid and flexible models separately for both open-loop and closed-loop scenarios. Rigid cases were run with 0.001 second and flexible cases were run with 0.0001 second integration time step. An Euler-Cromer integration scheme was used.

Table 2: Timing Results

Ca se N u m b er Rigid (R) or F lex (F) Simul ation Confi g ura tio n ( T able 1 ) Open ( O ) or Clo se d (C) loop Degrees of Freedom CPU Time (sec) Rigi d Flex Tota l Order-N Ma ss Ma tr ix 1 R 1 O 24 0 24 10.1 6.7 2 R 2 O 24 0 24 12.4 7.9 3 R 3 O 27 0 27 15.0 10.1 4 R 4 O 42 0 42 22.3 18.6 S y st em Co nf ig ura tio n Legs Ma nipu la tors To tal N u mbe r of Bo d ie s Nu mb er o f Bo di es Nu mb er o f Jo in ts Bo om C ons tr uc ti o n Nu mb er o f bod ie s Nu mb er o f Jo ints 1 6 6 One rod 0 0 20 2 8 6 Two rods 0 0 26 3 10 7 Two rods 0 0 32 4 10 7 Two rods 8 7 49

(3)

5 F 1 O 24 24 48 166.8 174.0 6 F 2 O 24 48 72 277.9 423.6 7 F 3 O 27 48 75 275.9 478.0 8 F 4 O 42 80 112 408.6 1127.9 9 R 1 C 24 0 24 40.7 17.1 10 R 2 C 24 0 24 48.0 18.4 11 R 3 C 27 0 27 59.4 22.7 12 R 4 C 42 0 42 133.8 57.4 13 F 1 C 24 24 48 613.4 567.6 14 F 2 C 24 48 72 937.2 1402.0 15 F 3 C 27 48 75 1037.9 1551.2 16 F 4 C 42 80 112 2257.3 4063.9 Cases 9, 10, 11, 13, 14 and 15 have two loops, cases 12 and 16 have three loops.

DISCUSSION AND CONCLUSIONS

The timing results confirm that the dense mass matrix formulation is faster than the O(N) formulation for smaller degrees of freedom (DOF’s) and O(N) is faster otherwise. In our cases for all rigid systems mass-matrix take less CPU time than O(N) for both open-loop and closed-loop systems because they have fewer DOFs. Flexible body systems have more DOF and O(N) run faster, except for the case 13 involving two loops and fewer DOF than the other flex cases. Loops added large amount of computation and more so for O(N). For systems with loops the advantage of O(N) is reduced. With more loops the reduction is more because it requires solution of coupled linear constraint equations which can have a large number of unknown constraint forces and moments, and are solved in the usual manner that requires

3 c

n arithmetic operations, where n is the number of c

constrained degrees of freedom.

The high degree of match between the mass-matrix and O(N) results is expected because the two methods solve the same set of equations using many common codes.

ACKNOWLEDGMENT

The authors acknowledge the support provided by An Huynh and Thomas Brain of METECS Corporation, Houston Texas, USA in coding the simulation, and to Arun Banerjee, formerly of Lockheed Martin Palo Alto Research Laboratory, California, USA for review of the manuscript.

REFERENCES

Banerjee, A. K, “Block-Diagonal Equations for Multibody Elastodynamics with Geometric Stiffness and Constraints”, Journal of Guidance, Control and Dynamics, Vol. 16, No. 6, 1993. Banerjee, A. K., “Contributions of Multibody Dynamics to Space Flight: A Brief Review”, Journal of Guidance, Control and Dynamics, Vol. 26, No. 3, 2003.

Quicho, L,J.; 2010, T. Ghosh, D. frenkel, A. Huynh,

“Mode Selection Techniques in Variable Mass Flexible Modeling”, In AIAA Meeting Papers AIAA Modeling and Simulation Technologies Conference, Aug 2010, Toronto, Canada, AIAA- 2010-7606.

Singh, R.P., van der Voort, R.J., and Likins, P.W., “Dynamics of Flexible Bodies in Tree Topology-A Computer Oriented Approach”, Journal of Guidance, Control and Dynamics, Vol.26, No. 3, 1985.

APPENDIX: DERIVATION OF O(N) EQUATIONS System Description and Definitions

Figures A1: Multibody System Definitions

Figures A2: Constrained Motion Definitions Consider the set of rigid and/or flexible bodies, in Figure A1, with the associated labeling of forces and points.

n

R and

i

R are frames attached to body n (B ) at its n

inboard and outboard joints On and

i

O respectively. Figure A2 shows the labeling for constrained systems. Throughout this derivation it is assumed that all the vectors and inertia matrices are either generated in or are converted to a single reference frame, which is the structural reference frameR of the base body of the 0 multibody system. The conversion is performed every time the system states are updated.

Kinematics of Motion between Opand On

Letvn,an represent the inertial velocity and acceleration respectively, of On,  represent the inertial angular n

(4)

velocity of R and n prepresent the flexible variables of

the body Bp. Kinematic equations relating position, velocity and acceleration ofOpand O, and angular velocity and angular acceleration of frames Rpand

R are given by p nˆ nˆ nˆ r      , vnˆ vp~prnnˆp, p nˆ p nˆ      n nˆ p n nˆ p nˆ   ~       p nˆ p n p p p nˆ p n p nˆ a r~ ~ ~ r 2~ a              p

 is the undeformed value of rp, the vector fromOpto

O . Combining the last two equations we can write

r , nˆ n nˆ p p , nˆ nˆ A S A A F    (1.1) where,         nˆ nˆ nˆ a A   ,        1 0 r~ 1 nˆ , n F ,         nˆ nˆ n S and                 n n , O p p nˆ p nˆ p p r , nˆ ~ ~ 2 r ~ ~ A    .

F denotes a shift operator corresponding to an offset between two points identified by the subscripts. In this case the offset isr. The tilde (~) is the usual cross product operator on a vector.

The joint n may have up to six DOFs allowing both translation and rotation. The translation of Onwith

respect toOnˆis given by n n NT 1 i n , i n , i n gˆ G y n    

  where n , i

gˆ are linearly independent unit vectors fixed in Onˆ,

3

NTn is the number of translational degrees of freedom of joint n and  are scalar quantities, i,n

representing joint translations in the directions of the unit vectors. The inertial acceleration of Onis:

ry n n n nˆ n nˆ n a ~y G a a       (1.2) where, aryn ~~yn2~Gnn Inertial angular velocity of R is given by n

      NRn 1 i n , i n , i nˆ n  lˆ   = n n nˆL   

where lˆi,n is the unit vector in the direction of the rotation  and i,n NRnis the number of rotational degrees

of freedom of the joint. L is a matrix whose columns are n the unit vectors lˆi,nand  is a column matrix containing n

the rotations  . Differentiating i,n  in the inertial frame n

we get         r n n n nˆ n  L    (1.3) n n r n L     

Combining Equations (1.2) and (1.3),

rj n n n nˆ nˆ , n n A P A A F    (1.4)         n n n a A   ,           n n n    ,           r n ry n rj n a A          1 0 y ~ 1 n nˆ , n F and       n n n L 0 0 G P (1.5)

Finally, combining Equations (1.1) and (1.4) we get

r n n n p n p p , n n A S P A A F      (1.6)

where, using the relationship rnrnˆyn,

p , nˆ nˆ , n p , n F F F  , SnFn,nˆSnˆ, ArnFn,nˆArAnrj

Inter-Body and Joint Actuator Forces

LetFnbe the spatial forces exerted by Bp on Bnat n

O and Fˆbe the spatial force exerted by B on n Bpat

O . Then from equilibrium considerations,

n T nˆ , n nˆ F Fˆ F (2.1) nˆ n,

F is given by Equation (1.5). Let  and i,n  be j,n

respectively, the i-th actuator force (i3)and j-th actuator torque (j3)on body n at On. They act in the directions

of the degrees of freedom gˆi,n and lˆj,nof the joint.

Defining          n n

n as the array of actuator forces and

moments at joint n, it is straight forward to show that nPnTFn (2.2)

where P is given by Equation (1.5). n

Equations of Motion of Body n

A minor modification of equations of a flexible body in Quiocho, et. al (Quiocho, 2010), produces the equations of a body B in rigid and flexible coordinates as n

n , r i n , i , e T n , i n n , re n n , rr A M q F B M   

F 

     i n , e n , i , e T n , i n n , ee n n , ee n n , ee n n , er B F S q D q K q M A M  

We shall write the equations of motion of the body n after separating the external spatial forcesFe,i,non Bnas (i)

from the previous body acting at the inboard joint (Fn),

(ii) from child bodies Bkiacting at outboard joints (

i

Fˆ ), (iii) forces at constrained points (Fc,j) when there are such points on the body, and (iv) external forces (Fext,i,n) acting on the body. Because we chose the reference frame of the body to be at the inboard joint, the shift function at the inboard joint is an identity matrix and the shape/slope function at the inboard joint is a null matrix. Equations for body n are:

(5)

n , r i n , i , ext T n , i j , c ) n ( Z j T j , c i kˆ T n , kˆ n n n , re n n , rr B F F Fˆ F q M A M c i i      

 F F F 

        i n , e n , i , ext T n , i ) n ( Z j j , c T j , c i kˆ T kˆ n n , ee n n , ee n n , ee n n , er B F S F S Fˆ S q D q K q M A M c i i  

In the above equations F is the spatial force at the c,j

j-th constrained point,Fc,jis the shift function for the offset of the constrained point fromO and n Sc,jis the

shape/slope function of body n at the constrained point. Defining n , i , ext i T n , i n , r F G 

F +Br,n (3.1) n n , ee n n , ee n , e n , i , ext i T n , i n , e S F B K q D q G 

    (3.2)

Using Equations (2.1) for

i

Fˆ and then Equations (3.1) and (3.2) we get the equations of motion of the body n as

n , r ) n ( Z j j , c T j , c i k T n , k n n n , re n n , rr G F F F q M A M c i i     

 F F  (3.3) n , e ) n ( Z j j , c T j , c i k T k n n , ee n n , er A M q S F S F G M c i i     

  (3.4) Here, Zc(n)is the set of indices for constrained points on body n.

Recursive Solution of Equations of Motion

The dynamical equations of motion of the system are solved recursively in steps as follows.

Step 1. Forward Pass Kinematics: In this step all position and velocity states are generated starting with the base body using equations derived in Kinematics section. Step 2. Inward Pass Dynamics Equations:

Observing the equations of motion it is reasonable to expect that for any n Fncan be expressed as linear functions of Ap, qpand constraint forces on itself and on bodies on outer branches:

j , c ) n ( Y j j , n , c n p n , q p n , A n D A D q d D F F c

      (4.1) ) n (

Yc is the set of indices of all constrained points on

body n and on all bodies of its outer branches.

We shall determine the coefficients in the above equations recursively. In Euation (4.1) using ki in place of n and n in place of p, and using the result in Equation (4.1) we get

    ) n ( Y j j , c j , n , c n n n , A n c F Qˆ qˆ A Qˆ q (4.2) n , er 1 n , ee n , A Mˆ Mˆ Qˆ   ,

   ) n ( Z i k , q T k n , ee n , ee M S iD i

   ) n ( Z i k , A T k n , er n , er M S iD i Mˆ

   ) n ( Z i k T k n , e 1 n , ee n M [G S d ] qˆ i i j , k , c T k n , ee j , n , c Mˆ S iD i Qˆ  for iZ(n), jYc(ki) T j , c n , ee j , n , c Mˆ S Qˆ  for jZc(n) ) n (

Z is the set of indices of child bodies of B . In the n

same manner, substituting for F in Eq. (3.3) and ki

rearranging we get,

     ) n ( Y j j , c j , n , c n , r n n n , re n n , rr c F D G F q M A M  (4.3) i i A,k ) n ( Z i T n , k n , rr n , rr M D M

   F , i i q,k ) n ( Z i T n , k n , re n , re M D M

   F , i i k ) n ( Z i T n , k n , r n , r G d G

   F ` j , k , c T n , k j , n , c i D i D F for iZ(n), jYc(ki) T j , c j , n , c D F for jZc(n)

Using Equation (4.2) for q in Equation (4.3) we get n

    ) n ( Y j j , c j , n , c n , r n n n , rr c F Dˆ Gˆ F A Mˆ (4.4) n , A n , re n , rr n , rr M M Qˆ Mˆ   , Gˆr,nGr,nMre,nn j , k , c n , re j , n , c j , n , c D M Qˆ i Dˆ  

Using Equation (1.6) for Anin Equation (4.4) and rearranging, we get

        ) n ( Y j j , c j , n , c R , n n , rr n , r n n n n , rr p p , n n , rr p p , n n , rr c F Dˆ A Mˆ Gˆ F P Mˆ q S Mˆ A Mˆ F  

Pre-multiplying this equation byP , using nT

n T n

nP F

 from Equation (2.2) and solving the resulting equation for  we get n

j , c ) n ( Y j j , n , c n p n , q p n , A n B A B q b B F c

       (4.5) p , n n , rr T n 1 n , n , A M P Mˆ B   F , p , n n , rr T n 1 n , n , q M P Mˆ S B   ,

P (Gˆ Mˆ A )

M bn 1,nn nT r,n rr,n n,R , j , n , c T n 1 n , j , n , c M P Dˆ B   , and M,n PnTMˆrr,nPn

Equation (4.5) for  in Equation (1.6) yields for n A n j , c ) n ( Y j j , n , c n p n , q p n , A n W A W q w W F A c

      (4.6)

(6)

n , A n p , n n , A P B W  F  ,Wq,nSn,pPnBq,n, R , n n n n Pb A w   , and Wc,n,jPnBc,n,j

Equation (4.6) for A in Equation (4.2) gives n

j , c ) n ( Y j j , n , c n p n , q p n , A n Q A Q q q Q F q c

       (4.7) n , A n , A n , A Qˆ W Q  ,Qq,nQˆnWq,n, qˆnQˆA,nwnqˆn, and Qc,n,jQˆA,nWc,n,jQˆc,n,j

Finally, using Equation (4.6) in Equation (4.4) we get

j , c ) n ( Y j j , n , c n p n , q p n , A n D A D q d D F F c

      (4.8) n , A n , rr n , A Mˆ W D  , Dq,nMˆrr,nWq,n n , r n n , rr n Mˆ w Gˆ d   , and j , n , c j , n , c n , rr j , n , c Mˆ W Dˆ D  

We can see that Equation (4.8) is in the same form as Equation (4.1) we started with, confirming that if the latter is true for child bodies, it would be true for the current body also. Following the same steps as above for any outermost body for which F 0

i

kˆ  it is easy to show

that Equation (5.1) is true for such bodies. Using the induction logic it therefore follows that Equation (4.1) is true for all bodies of the system.

Computations for systems with multiple branches need to start from an outermost body, move inward till a body with multiple child bodies is reached. Inward computation from a body with multiple child bodies should continue only after computations for all of its child bodies are completed.

0

A and F0 for the Base Body B0in terms of the constraint forces are obtained from Equation (4.4). When

0

B is fixed in inertial frameA0 and we then have 0

    ) 0 ( Y j j , c j . 0 , c 0 , r 0 c F Dˆ Gˆ F

When B0is free in the inertial frame F0 and 0

   ) 0 ( Y j j , c j . 0 , c 0 , r 1 0 , rr 0 c ] F Dˆ Gˆ [ Mˆ A (4.9)

The flexible coordinate acceleration q for the base body 0 is obtained from Equation (4.2)

j , c ) n ( Y j j , n , c 0 0 0 , A 0 Qˆ A qˆ Qˆ F q c

     (4.10)

For systems without closed loops the Fc,jterm drops out and the equations obtained above are sufficient for determining A0 and q , and then the system 0 accelerations, by successive computation of  , n q and n

n

A in an outward sweep.

Step 3. Accelerations of Constrained Points in terms of Forces at Constrained Points:

For the determination of acceleration of constrained points in terms of forces at these points we seek to express the accelerationsA and n q for bodies in the path n from base body to the constrained points in the form

j , c A j , n A n n h H F A  

and qn,j c,j q n n h H F q  

(4.11) Here the summation index j covers all constrained points. It follows from Equations (4.9) and (4.11) that when the base is free in inertial frame

0 , r 1 0 , rr A 0 Mˆ Gˆ h   ,HA0,jMˆrr1,0Dˆc,0,j, hq0QˆA,0h0Aqˆ0 andHq0Qˆc,0,j.

When the base is fixed, h0A ,0 H0A,j , 0 hq0qˆ0 and

j , 0 , c q 0 Qˆ H  .

Using Equations (4.7) and (4.11) we get the recursive equations for hqnandHqn,j:

n q p n , q A p n , A q n Q h Q h q h    and j , n , c q j , p n , q A j , p n , A q j , n Q H Q H Q H   

Using Equation (4.6) and (4.11) we get the recursive equations for hAn and HAn,j:

n q p n , q A p n , A A n W h W h w h    , and j , n , c q j , p n , q A j , p n , A q j , n W H W H W H    .

Let Eibe the point in constraint i located on body n and

' i

E be the mating point of the same constraint, located on body

. The spatial acceleration of E is i

r , E n n , E n n , E Ei i A S i q A i A F    (4.12)

where FEi,nis the standard shift operator for the offset

i E r  of i E with respect to On         i i i E E n , E S is the

shape/slope function of Bnat Ei and,

             n E n n E E n n r , E ~ q ) q 2 r ~ ( ~ A i i i i    .

For each constraint k (k = 1, 2, …,

n

c) the constraint forces Fc,kand Fc,k' at the two constrained points Ek

and Ek' respectively are equal and opposite, i.e,

k , c ' k , c F

F  . Using this and Equation (4.11) for Anand n q in Equation (4.12) we get, k , c q ' k , n q k , n n , E A ' k , n n 1 k A k , n n , E r , E q n n , E A n n , E E F )] H H ( S ) H H ( [ A h S h A i c i i i i i       

 F F (4.13) Similarly, spatial acceleration of

E

i'is given by

k , c q ' k , q k , , E A ' k , n 1 k A k , , E r , E q , E A n , E E F )] H H ( S ) H H ( [ A h S h A ' i c ' i ' i ' i ' i ' i                

 F F

(7)

(4.14) Step 4. Determination of Constraint Forces:

Using equations (4.13) and (4.14) the difference in the accelerations at the constraint i may be written as

k , c k k , E E E E E A A h H F A iii' i

i  (4.15) r , E q n n , E A n n , E r , E q , E A , E E i i i ' i ' i ' i i A h S h A h S h h        F F ) H H ( S ) H H ( S ) H H ( ) H H ( H q ' k , n q k , n n , E q ' k , q k , , E A ' k , n A k , n n , E A ' k , A k , , E k , E i ' i i ' i i                F F

The summation range for k is all the constraints. The linear and angular constraints at E are i

0 ) v v ( gˆc,i,j Ei'Ei  for 0jnt,i 0 ) ( ˆ i ' i E E j , i , c      for 0jnr,i

where vand  represent the inertial velocity and angular velocity of points corresponding to the subscripts,

j , i , c

gˆ and ˆc,i,jare unit vectors in the direction of translational and rotational constraints respectively, and

) 3 (

nt,i  and nr,i(3)are the number of these

constraints, respectively. i E v  , ' i E v , i E  and i E  are determined in the manner used for the point O in the Kinematics section,. Defining

            i ' i i ' i i E E E E E v v V     and       i , c i , c i , c 0 L 0 G P where i , c

G is a 3nt,imatrix whose columns are the unit

vectors gˆc,i,jand Lc,iis a 3nr,imatrix whose columns

are the unit vectors ˆc,i,j, the difference in the spatial

velocities of the constrained points at constraint i may be written as i E T i , c V

P  . The difference in the spatial

acceleration in the constraint directions at the constraint point should be zero, giving

0 V P A

PcT,i EicT,i Ei

Using Baumgarte’s stabilization scheme to limit constraint violation caused by numerical errors, this equation is modified to 0 V P C X P K V P A PcT,i EicT,i Ei i cT,i Ei i cT,i Ei  i

K and Ciare positive constants to provide constraint stabilization. Using Equation (4.15) for

i E A  we have i i i i i E T i , c i E T i , c i E T i , c E T i , c k k , c k , E T i , c V P C X P K V P h P F H P          

  (4.16) Let us define fc,k,jto be the constraint force in the direction gˆc,k,jand c,k,jthe constraint torque in the direction ˆc,k,jand         k , c k , c k , c f

Fˆ . The force Fc,kat the

constraint point E due to forces and moments in the k

constraint directions is then given by Pc,kFˆc,k. Let

       k , f k , f k , f 0 L 0 G

P where Gf,kand Lf,kare made of

the unit vectors normal to the constraint directions for translation and rotation andFˆf,kbe the array of forces and

moments in these directions. Net spatial force at Ekis k , f k , f k , c k , c k , c P Fˆ P Fˆ F   (4.17)

Restricting to cases where Fˆf,kis fully known, we use k , f k , f k , c k , c k , c P Fˆ P Fˆ F   in Equation (4.17) to get i , c k k , c k , c k , E T i , c H P Fˆ Z P

i  (4.18) i i i i i E T i , c i E T i , c i E T i , c E k k , f k , f k , E T i , c i , c V P C X P K V P ] h Fˆ P H [ P Z           

 (4.19) Stacking Equation (4.18) for all constraints we get

c c

cFˆ Z

M  (4.20)

where the [i,k]submatrix of matrix Mcis given by k , c k , E T i , c k , i , c P H P M   i

and Z is made of arrays c Zc,igiven by Equation (4.19).

Equation (4.20) is solved for Fˆcand the spatial forces

k , c

F at constraint points are found using Equation (4.17).

Step 5. Computation of System Accelerations:

After determination of forces at the constrained points,A and 0  are determined using Equations (4.9) 0 and (4.10).  , n q , and n Anare determined recursively in

a forward pass using Equations (4.5), (4.7) and (1.6) respectively.

(8)

References

Related documents

The acute effects of single-limb versus two-limb high-repetitive resistance training on contractile fatigue, exercise stimulus (the product of number of repetition and load),

Director, Stress Management Program; Program Evaluation Coordinator Clinical Psychologist: Clinical evaluation, Cognitive and personality assessment, psychometric assessment

This is one of the main reasons why intercultural sensitivity, cultural knowledge and attitudes of respect for other cultures, ability to work in a multicultural ambience and

To our knowledge there are no data on the health effects of acute use of nicotine-free e-cigarettes (NF e-cigarettes); we, therefore, designed a study to compare the changes

resources on security for themselves (thus creating an overprovision of security). This represents a form of state failure, especially if the attempts at policing these

According to the current study, the mean contact area decreased 18 % in 10° varus deformities and 14 % in 10° valgus deformities with the fibula preserved.. However, after

On my account, whenever a desert-based practices involves victims as well as agents, personal culpability can only set a spectrum for how much blame and punishment the offender

Studies were included in the meta-analysis if they met the following criteria: (1) cohort study design and follow-up duration was at least 1 year; (2) patients had chronic