17
GraSMech – Multibody 1 Computer-aided analysis of rigid and flexible multibody systems GraSMech course 2009-2010 Multibody system Assembly Paul Fisette, UCL Olivier Verlinden, UMONS GraSMech – Multibody 2 Contents Relative coordinates : Pseudo-rotation constraints Coordinate partitioning – assembling aspects Driving constraints Absolute coordinates : Assembling techniques GraSMech – Multibody 3 3 Closed-loop MBS The « cutting » procedure

Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

  • Upload
    lamphuc

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 1

Computer-aided analysis of rigid and flexible multibody

systems

GraSMech course 2009-2010

Multibody system Assembly

Paul Fisette, UCLOlivier Verlinden, UMONS

GraSMech – Multibody 2

Contents

� Relative coordinates :

� Pseudo-rotation constraints

� Coordinate partitioning – assembling aspects

� Driving constraints

� Absolute coordinates :

� Assembling techniques

GraSMech – Multibody 33

Closed-loop MBS

The « cutting » procedure

Page 2: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 44

Closed-loop MBS

1. Cut of a body : the most general case

Original body

« Shadow » body(mass = 0)

GraSMech – Multibody 55

Loop closure : pseudo-rotation constraints

GraSMech – Multibody 6

Rotation constraints : formulation

6

Loop closure : pseudo-rotation constraints

Page 3: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 77

Loop closure : pseudo-rotation constraints

Rotation constraints : formulation

-

GraSMech – Multibody 88

Let’s choose a subset of 3 independent constraints(general 3D rotation):

Loop closure : pseudo-rotation constraints

GraSMech – Multibody 99

if all the constraints are satisfied :

because : = E

Loop closure : pseudo-rotation constraints

=> Coordinate partitioning method can be used to reduce the system => ODE

Page 4: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 1010

Elimination of the dependent coordinates :

Convergence in the neighborhood of the exact solution v0 ?=> hr can be expanded around v0 :

Pseudo-gradient

Loop closure : pseudo-rotation constraints

convergencepseudo-gradient

at the first order (� error of second order)

details in:

GraSMech – Multibody 11

!!! danger : the compete set h(q) are not necessarily satisfied :

Loop closure : pseudo-rotation constraints

because :

is only a subset of the full set of constraints

GraSMech – Multibody 1212

because :

Undesirable solutions (since R orthonormal and det (R) = 1):

First undesirable solution, denoted v1

Loop closure : pseudo-rotation constraints

R(3,3) = +1 or -1

Page 5: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 13

Elimination of the dependent coordinates :

Γ : eigenvalue > 1 =>divergence

in the neigtborhood of v1, hr can be approximated by:

Loop closure : pseudo-rotation constraints

GraSMech – Multibody 1414

Conclusion 1 :

with :

Loop closure : pseudo-rotation constraints

Pseudo-gradientPseudo-rotation constraints

GraSMech – Multibody 15

Conclusion 2 :

Loop closure : pseudo-rotation constraints

Page 6: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 16

Contents

� Relative coordinates :

� Pseudo-rotation constraints

� Coordinate partitioning – assembling aspects

� Driving constraints

� Absolute coordinates

� Assembling techniques

GraSMech – Multibody 1717

Coordinate Partitioning - method

Velocity :

Acceleration :

Exact resolution of the constraints

Position :Suspension

Reconfiguration!Latché

mechanism

Principle

GraSMech – Multibody 1818

Coordinate Partitioning - method

Finally :

ODE !

Page 7: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 1919

Coordinate Partitioning - assembling

What choice {u, v}2 dof

u ? v ?

Position level :

Velocity level : (Newton/Raphson)

(linear algebra)

20 years of MBS simulationwithout any closure problem !

GraSMech – Multibody 2020

Coordinate Partitioning - assembling

How to choose {u, v}

u ! v !

1. User choice :

u ! v !

2. Numerical choice :

Jv matrix conditioning!3. Compromise between 1. and 2.

State equations

in terms of u

4. A symbolic choice ! Jv matrix « structure »

GraSMech – Multibody 2121

Coordinate Partitioning - assembling

u ? v ?

Numerical choice :

v1

v2

v*

v

s

Newton/Raphson

u v

h(q) = 0.5 x(q)2 - L2

J = (x 0)

How to choose {u, v}

Page 8: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 2222

Coordinate Partitioning - assembling

u ? v ?

Numerical choice :

v1

v2

v*

v

s

Newton/Raphson

v ! u !

h(q) = 0.5 x(q)2 - L2

J = (0 x)

How to choose {u, v}

GraSMech – Multibody 2323

Coordinate Partitioning - assembling

Delta DirectionFive points Bogie

Numerical choice (for 3D closed-systems)

=> J matrix : LU factorization with full pivoting

A robust method (among others)

GraSMech – Multibody 2424

Coordinate Partitioning - assemblingNumerical choice (for 3D closed-systems)

A robust method (among others)

« Best » Jv Ju

Best v and v-permutation « Best » u

0

Independent

Constraints(+ best permutation

+ rank)redundantconstraints

zero pivotLU

Yes !

Page 9: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 2525

Coordinate Partitioning - assembling

Compromise between « user » and « numerical »

u=q3 u=q7u=q2

=> Partial J matrix : LU factorization with full pivoting

A posteriori verification :

=> Rank of partial J = rank of full J

GraSMech – Multibody 2626

Coordinate Partitioning - assembling

Redundant constraints ?

1 or 0 dof ? => 1 !

Re-partitioningNot necessary Not necessary Not necessary Not necessary Mandatory !

R1

R2 R5

R6

R3 R4

Latché

GraSMech – Multibody 2727

Coordinate Partitioning - assembling

Newton/Raphson « limitation »No convergence

By experience : not a real problemPossible reasons :

⇒ Unfeasible rigid body mechanism (data mistake, …)⇒ Very far initial conditions (3D vizualization helps a lot)

Convergence, but !

u ?

Fortunatelly : ⇒ Small time steps (1e-3 … 1e-5)⇒ Very close initial conditions (vi=0 )

Five points

Page 10: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 2828

Coordinate Partitioning - assembling

Newton/Raphson « limitation » …=> remedySlow convergence => relaxation

u

Fr

ui ui-1ui+1 uirelax

u*

Fr(relax)

Fri+1

iFr

i

Fri-1

Difficult convergence => dichotomic method coupled with N.R.

GraSMech – Multibody 2929

Coordinate Partitioning - assembling

u ! v !

1. User choice :

u ! v !

2. Numerical choice :

Jv matrix conditioning!3. Compromise between 1. and 2.

State equations

in terms of u

4. A symbolic choice ! Jv matrix « morphology »

How to choose {u, v}

GraSMech – Multibody 30

Coordinate partitioning - assembling

� Selection of a subset of dependent coordinates v : v=f(u)

� Analysis of the Jacobian matrix �Numerical method : pivotal element search�Symbolic method : looking for a block triangular

sub-matrix Jvx x x x x x x . . . . . . . . .x x x x x x x . . . . . . . . .. x x x . x x . . . . . . . . .x x x x . . . x x x . . . . . .x x x x . . . x x x . . . . . .. x x x . . . . x x . . . . . .x x x x . . . . . . x x x . . .x x x x . . . . . . x x x . . .. x x x . . . . . . . x x . . .x x x x . . . . . . . . . x x xx x x x . . . . . . . . . x x x. x x x . . . . . . . . . . x x

Cuts Jacobian matrix

t

hJq

∂=∂

m

n

A symbolic approach

Page 11: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 31

Coordinate partitioning - assembling

x x x . x . . x . . x .x x x . x . . x . . x .. . x . x . . x . . x .. x . x x x . x . . x .. x . x x x . x . . x .. . . . x x . x . . x .. x . . x . x x x . x .. x . . x . x x x . x .. . . . x . . x x . x .. x . . x . . x . x x x. x . . x . . x . x x x. . . . x . . x . . x x

x x xx x x. x x

x x xx x x. x x

x x xx x x. x x

x x xx x x. x x

This partition does not lead to a block triangular shape

Jv matricesIndependent

blocks

Partition 1: ‘actuators’

Partition 2: ‘central leg’

x x x . . . . . . . . .x x x . . . . . . . . .. x x . . . . . . . . . . . . x x x . . . . . .. . . x x x . . . . . .. . . . x x . . . . . .. . . . . . x x x . . .. . . . . . x x x . . .. . . . . . . x x . . .. . . . . . . . . x x x. . . . . . . . . x x x. . . . . . . . . . x x

Cuts

A symbolic approach

GraSMech – Multibody 32

Bloc Triangular Factorization of J v

� Constraint decoupling � Block by block resolution of h(q)� Solve several small problems

rather than a big one

x x x . . . . . . . . .x x x . . . . . . . . .. x x . . . . . . . . . x . . x x x . . . . . .. . . x x x . . . . . .. x . . x x . . . . . .. . . x . . x x x . . .. . . . . . x x x . . .. x . . x . . x x . . .. . . . . . . x . x x x. x . x . . . . . x x x. . . . . . x . . . x x

II

IIII

IIIIII

IVIV

h I

h I

h I

h III

h III

h III

h II

h II

h II

A symbolic approach

GraSMech – Multibody 33

Contents

� Relative coordinates :

� Pseudo-rotation constraints

� Coordinate partitioning – assembling aspects

� Driving constraints

� Absolute coordinates

� Assembling techniques

Page 12: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 34

Driving constraints : intro

� Kinematic analysis: analyse the behaviour of the mechanism while imposing the motion of parts of the system (ex. robotics: impose the motion of the tool)

Crank rotation imposed

GraSMech – Multibody 35

Driving “constraints”

Principle :

Given a driving motion :

Equivalent to a constraint :

Robotransimulation

Robotransimulation

Examples :

Robot inverse kinematics

Mechanism inverse dynamics

GraSMech – Multibody 36

Driving “constraints”

Driving constraint :

=> defined at position, velocity and acceleration level :

=> trivial Jacobian :

Example :

Constant velocity motion :

Harmonic excitation :

Locked motion (particular case):

Page 13: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 37

Driving “constraints”

In a Coordinate partitioning approach : second partitioning

⇒ Driven or « forced » joints : « a priori independent » variables u

⇒ After reduction (nbr 1), second reduction (nbr 2)

for the driven constraints :red red

red red

red

red

C

C

F = « Forced » or « Driven »

Equations of motion � Direct Dynamics

(for time integration, equilibrium, modal analysis)

Driven-constraint equations � Inverse Dynamics (reaction force, actuator force, …)

GraSMech – Multibody 38

An “Academic” Example

« Inverse » dynamics

(actuator torque)

« Direct » kinematics

(Piston motion)

« Constraints » dynamics(x-y Force at the connection )

Fy

Fx

x

y

Mz

x

0 ddl !

GraSMech – Multibody 39

Contents

� Relative coordinates :

� Pseudo-rotation constraints

� Coordinate partitioning – assembling aspects

� Driving constraints

� Absolute coordinates

� Assembling techniques

Page 14: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 40

Assembly in absolute coordinates

� Problem of assemby: close the constraints from an

approximate initial set of configuration parameters

(critical for absolute coordinates)

�often insufficient set of initial conditions => the

problem is the most often transformed to an

optimization process (find the closest

configuration, or the less deformed,...)

GraSMech – Multibody 41

Assembly – What’s the problem ?

� The user gives a set of initial configuration parameters q0 such thatthe constraints are oftennot verified

� The purpose of assembly is to search for qa such that

� nc constraints in ncp (<nc) configuration parameters=> some other constraints (or principles) must beadded

GraSMech – Multibody 42

Supplementary initial conditions

� Some more so-called initial conditions φφφφd (driving constraints) are added, as� the initial coordinate of a point

� an initial angle� a perpendicularity condition in initial configuration

� the initial value of one of the configuration parameters

� the initial distance between two points

Page 15: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 43

Assembly equations

� The total set of nonlinear equations to solve to getcoherent initial configuration parameters qa is

� The complete jacobian matrix of constraints is givenby

� Set of nonlinear equations => Why not Newton-Raphson ?

GraSMech – Multibody 44

Problems of assembly

� Insufficient number of constraints: less constraintsthan configuration parameters (infinity of solutions)

� Several solutions(which one tochoose ?)

� Or no solution at all(how to detect it ?)

=> Newton-Raphson not a good candidate in this case !

GraSMech – Multibody 45

Minimization procedure

� The closest configuration is searched for by minimizing the cost function

with W a diagonal matrix of weights, under the constraints φφφφ*(q)=0

� The weights Wi can be adapted to enforce the value of a configuration parameterExample: under ADAMS, if the initial coordinate of a body is specified as « exact », the correspondingweighting coefficient is very large (1E10)

Page 16: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 46

Numerical solution

� The solutions qa are the roots of the system

with λλλλ a set of Lagrange multipliers, commonly solvedby Newton-Raphson

� The matrix of weights W can be replaced by the mass matrix M=> The jacobian matrix is the same as the one builtfor integration

GraSMech – Multibody 47

Assembly : flexible mechanism

� Elastic strain:

� Kinematically admissible configuration:

� Strain energy:

GraSMech – Multibody 48

Assembly : flexible mechanism

� Zero strain energy approach

� Numerical solution:

⇒ Newton iterations�One or several solutions?�Convergence ?� : pre-stressed configuration

Page 17: Multibody system Assembly - hosting.umons.ac.behosting.umons.ac.be/html/mecara/grasmech/Assembly-3spp.pdf · Coordinate Partitioning - assembling Five points Delta Direction Bogie

GraSMech – Multibody 49

More robust procedure

� The function to minimize is written (E.J. Haug)

with r a stricly positive factor� The gradient is given by

� The optimization is performed several times withincreasing valued of r and stopped when

� The approach can detect the absence of solution (no evolution of the constraint error)

GraSMech – Multibody 50

Assembly – conclusions(absolute coordinates)

The apparently simple problem of assembly is tricky:one solution, several solutions or no solution at all

� supplementary constraints can be given� advanced numerical procedures are needed, often

based on optimization� find the configuration which is the closest to the

initial one given by the user� find the less deformed configuration� ...

GraSMech – Multibody 51

Appendix : Fletcher-Powell’s algorithm