- 71 Views
- Uploaded on
- Presentation posted in: General

Constrained Body Dynamics

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Constrained Body Dynamics

Chapter 4 in:

Mirtich

Impulse-based Dynamic Simulation of Rigid Body Systems

Ph.D. dissertation, Berkeley, 1996

- Links numbered 0 to n
- Fixed base: link 0; Outermost like: link n
- Joints numbered 1 to n
- Link i has inboard joint, Joint i
- Each joint has 1 DoF
- Vector of joint positions: q=(q1,q2,…qn)T

…

2

n

1

- Given:
- the positions q and velocities of the n joints of a serial linkage,
- the external forces acting on the linkage,
- and the forces and torques being applied by the joint actuators

- Find: The resulting accelerations of the joints:

Given: the joint positions q, velocities and accelerations

Compute: for each link the linear and angular velocity and acceleration relative to an inertial frame

Linear velocity of link i

Linear acceleration of link i

Angular velocity of link i

Angular acceleration of link i

joint position

joint velocity

Unit vector in direction of the axis of joint i

vector from origin of Fi-1 to origin of Fi

vector from axis of joint i to origin of Fi

- Fi – body frame of link i
- Origin at center of mass
- Axes aligned with principle axes of inertia

ui

Frames at center of mass

Fi

ri

di

Fi-1

Axis of articulation

State vector

- Velocities and accelerations of link i are completely determined by:
- the velocities and accelerations of link i-1
- and the motion of joint i

From velocity and acceleration of previous link, determine total velocity and acceleration of current link

To be computed

Computed from base outward

From local joint

Angular velocity of link i =

angular velocity of link i-1 plus

angular velocity induced by rotation at joint i

Linear velocity:

Angular acceleration propagation

Linear acceleration propagation

Rewritten, using

and

(from previous slide)

(relative velocity)

Joint acceleration vector

Joint velocity vector

Axis times parametric velocity

Axis times parametric acceleration

prismatic

revolute

(revolute)

linear

angular

(revolute)

Joint acceleration vector

Change in joint velocity vector

From joint acceleration vector

From change in joint velocity vector

From change in change in vector from joint to CoM

(revolute)

(revolute)

linear

angular

- Use known dynamic state (q, q-dot)
- Compute absolute linear and angular velocities
- Acceleration propagation equations involve unknown accelerations

But first – need to introduce notation to facilitate equation writing

Spatial Algebra

Spatial velocity

Spatial acceleration

r – offset vector

R– rotation

(cross product operator)

Spatial transpose

Spatial force

Spatial joint axis

Spatial inner product

(used in later)

(revolute)

For i = 1 to N do

Rrotation matrix from frame i-1 to i

rradius vector from frame i-1 to frame i (in frame i coordinates)

Specific to revolute joints

end

(revolute)

Previously:

Want to put in form:

(revolute)

These are the terms involving

Spatial acceleration of link i

Spatial force exerted on link i through its inboard joint

Spatial force exerted on link i through its outboard joint

All expressed in frame i

Forces expressed as acting on center of mass of link i

Spatial articulated inertia of link i

Spatial articulated zero acceleration force of link I

(independent of joint accelerations)

Develop equations by induction

Consider last link of linkage (link n)

Force/torque applied by inboard joint + gravity = inertia*accelerations of link

Newton-Euler equations of motion

Link n

Inboard joint

Link i-1

outboard joint

Inboard joint

The effect of joint I on link i-1 is equal and opposite to its effect on link i

Substituting…

Invoking induction on the definition of

Express ai in terms of ai-1 and rearrange

Need to eliminate from the right side of the equation

Magnitude of torque exerted by revolute joint actuator is Qi

A force f and a torque applied to link i at the inboard joint give rise to a spatial inboard force (resolved in the body frame) of

u

d

f

t

Moment of force

Moment of force

previously

and

Premultiply both sides by

substitute for Qi , and solve

To get into form:

Using

- Loop from inside out to compute velocities previously developed (repeated on next slide)
- Loop from inside out to initialization of I, Z, and c variables
- Loop from outside in to propagate I, Z and c updates
- Loop from inside out to compute q-dot-dot using I, Z, c

(revolute)

For i = 1 to N do

Rrotation matrix from frame i-1 to i

rradius vector from frame i-1 to frame i (in frame i coordinates)

Specific to revolute joints

end

(revolute)

For i = 1 to N do

end

Call compSerialLinkVelocities

For i = n to 2 do

Call initSerialLinks

For i = 1 to n do