Constrained body dynamics
This presentation is the property of its rightful owner.
Sponsored Links
1 / 39

Constrained Body Dynamics PowerPoint PPT Presentation


  • 58 Views
  • Uploaded on
  • Presentation posted in: General

Constrained Body Dynamics. Chapter 4 in: Mirtich Impulse-based Dynamic Simulation of Rigid Body Systems Ph.D. dissertation, Berkeley, 1996. Preliminaries. 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

Download Presentation

Constrained Body Dynamics

An Image/Link below is provided (as is) to download presentation

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Constrained body dynamics

Constrained Body Dynamics

Chapter 4 in:

Mirtich

Impulse-based Dynamic Simulation of Rigid Body Systems

Ph.D. dissertation, Berkeley, 1996


Preliminaries

Preliminaries

  • 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


The problem

The Problem

  • 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:


First determine equations that give absolute motion of all links

First Determine equations that give absolute motion of all links

Given: the joint positions q, velocities and accelerations

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


Notation

Notation

Linear velocity of link i

Linear acceleration of link i

Angular velocity of link i

Angular acceleration of link i


Joint variables

Joint variables

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


Basic terms

Basic terms

  • 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


From base outward

From base outward

  • Velocities and accelerations of link i are completely determined by:

    • the velocities and accelerations of link i-1

    • and the motion of joint i


First determine velocities and accelerations

First – determine velocities and accelerations

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


Compute outward

Compute outward

Angular velocity of link i =

angular velocity of link i-1 plus

angular velocity induced by rotation at joint i

Linear velocity:


Compute outward1

Compute outward

Angular acceleration propagation

Linear acceleration propagation

Rewritten, using

and

(from previous slide)

(relative velocity)


Define w rel and v rel and their time derivatives

Define wrel and vrel and their time derivatives

Joint acceleration vector

Joint velocity vector

Axis times parametric velocity

Axis times parametric acceleration

prismatic

revolute


Velocity propagation formulae

Velocity propagation formulae

(revolute)

linear

angular


Time derivatives of v rel and w rel

Time derivatives of vrel and wrel

(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


Derivation of

Derivation of

(revolute)


Propagation formulae

Propagation formulae

(revolute)

linear

angular


First step in forward dynamics

First step in forward dynamics

  • 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 algebra

Spatial Algebra

Spatial velocity

Spatial acceleration


Spatial transform matrix

Spatial Transform Matrix

r – offset vector

R– rotation

(cross product operator)


Spatial algebra1

Spatial Algebra

Spatial transpose

Spatial force

Spatial joint axis

Spatial inner product

(used in later)


Computeseriallinkvelocities

ComputeSerialLinkVelocities

(revolute)

For i = 1 to N do

Rrotation matrix from frame i-1 to i

rradius vector from frame i-1 to frame i (in frame i coordinates)

Specific to revolute joints

end


Spatial formulation of acceleration propagation

Spatial formulation of acceleration propagation

(revolute)

Previously:

Want to put in form:


Spatial coriolis force

Spatial Coriolis force

(revolute)

These are the terms involving


Featherstone algorithm

Featherstone algorithm

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


Serial linkage articulated motion

Serial linkage articulated motion

Spatial articulated inertia of link i

Spatial articulated zero acceleration force of link I

(independent of joint accelerations)

Develop equations by induction


Base case

Base Case

Consider last link of linkage (link n)

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

Newton-Euler equations of motion


Using spatial notation

Using spatial notation

Link n

Inboard joint


Inductive case

Inductive case

Link i-1

outboard joint

Inboard joint


Inductive case1

Inductive case

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

Substituting…


Inductive case2

Inductive case

Invoking induction on the definition of


Inductive case3

Inductive case

Express ai in terms of ai-1 and rearrange

Need to eliminate from the right side of the equation


Inductive case4

Inductive case

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


Inductive case5

Inductive case

previously

and

Premultiply both sides by

substitute for Qi , and solve


And substitute

And substitute


And form i z terms

And form I & Z terms

To get into form:


Ready to put into code

Ready to put into code

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


Computeseriallinkvelocities1

ComputeSerialLinkVelocities

(revolute)

For i = 1 to N do

Rrotation matrix from frame i-1 to i

rradius vector from frame i-1 to frame i (in frame i coordinates)

Specific to revolute joints

end


Initseriallinks

InitSerialLinks

(revolute)

For i = 1 to N do

end


Serialforwarddynamics

SerialForwardDynamics

Call compSerialLinkVelocities

For i = n to 2 do

Call initSerialLinks

For i = 1 to n do


  • Login