spatial behavioural simulation of mechanical objects

0 downloads 0 Views 194KB Size Report
behavioral simulation has been applied to solve .... and obstacles that, in turn, forces the object to ... detection involves determination of contacts be- ..... distance point PFD (Figure 2). ..... gravity, the direction of falling of the detached nut.
SPATIAL BEHAVIOURAL SIMULATION OF MECHANICAL OBJECTS Imre Horváth Faculty of Industrial Design Engineering Delft University of Technology 2628 BX Delft, The Netherlands [email protected] György Kuczogi Faculty of Industrial Design Engineering Delft University of Technology 2628 BX Delft, The Netherlands [email protected] Günter Staub Institut für Recheranwendung in Planung und Konstruktion Universität Fridericiana Karlsruhe D-76128 Karlsruhe, Germany [email protected]

ABSTRACT The paper presents a computational method for spatial behavioral simulation of moving mechanical objects. The developed software is able to handle both two-dimensional and threedimensional objects whose geometric models are imported from commercialized CAD systems through STEP files. Kinematical description of various objects is unified, stationary obstacles and moving bodies are treated in the same way. For spatial behavioral simulation objects and obstacles can be arbitrarily configured in the space, their pre-collision movement, frictioninfluenced and friction-free collisions on the obstacles are computed, together with the postcollision trajectories of movement. The spatial behavioral simulation has been applied to solve an industrial problem: namely, spatial positioning of moving objects without using extra energy.

KEYWORDS Physical modeling, constrained spatial movement, collision of objects, friction on obstacles, positioning by kinematic energy.

INTRODUCTION The notion of physical modeling is getting more and more accepted amongst researchers and practitioners. This approach of mechanical modeling relies on traditional geometry and/or feature oriented modeling of objects and extends it with the description of their natural mechanical behavior. Advanced physical modeling systems are assumed to support comprehensive behavioral analysis and simulation in mechanical, thermal, fluid, tribological and optical fields. That is, for physical modeling real time computation and simulation of the true behavior is prioritized rather than physically based animation. In practice, physical modeling is expected to cover different complexity of objects and various physical situations, and to incorporate physical phenomena as gravity, friction, collision, thermal effects, and so forth. As for the present state of the technology, physical modeling is approached to in alternative ways, and different levels of fulfillment can be observed. One branch of physical modeling focuses exclusively on mechanical behavior and investigates phenomena such as free and constrained movements, collisions, interference, elastic and plastic deformations of shapes, recoiling of shape, crack forming, dynamic changes of structures, etc. Mod-

eling of these processes and the substantiating phenomena assumes time dependent descriptions. Physical modeling can be applied with success to support conceptual design of both mechanical equipment and consumer durables and to investigate their behavior after embodiment. Our paper presents the background theory of the algorithms that have been used to develop a software to support conceptualization and spatial configuration of the elements of special devices for part handling and positioning. In fact, the work this paper reports about has been for a threedimensional further development of the theory and algorithms developed for behavioral modeling of falling and/or thrown mechanical objects in a twodimensional space. Further details are in (Horváth, I. and Kuczogi, Gy., 1997). The paper first discusses the process of physical modeling as interpreted by the authors. Then, it proceeds with the discussion of a unified description of objects that simplifies the algorithm development. Description of the spatial trajectories of movements is presented together with the principle of finding the actual values of movement parameters incrementally. The concept and procedure of collision detection are introduced afterwards, considering the effect of friction on the obstacles. Post-collision behavior and trajectory calculation is also included. The paper finishes with a presentation of an industrial problem, whose solution was achieved by the use of the physical modeling software, and a review of the related research.

1. ABOUT THE PROCESS OF PHYSICAL MODELING The flowchart of the physical modeling process developed by the authors is shown in Figure 1. The whole process covers six phases: (a) geometric modeling and determination of the substantial attributes of the object, (b) computing of the predefined movements, (c) specification and positioning of obstacles in the space, (d) checking for single and multiple collisions, (e) computing of post-collision movements, and (f) controlling of the multiple and repeated events. The part of the flowchart shown by solid lines has already been programmed, and the part shown by dotted lines is under development. Physical simulation requires a three-dimensional geometric model of the object that can be generated by a commercialized geometric modeller. De-

pending on the actual problem at hand, twodimensional model may be satisfactory. If certain shape features are of no importance for physical modeling, the detailed 3D geometry can be transferred into a simplified description. It is also necessary to provide the characteristic engineering quantities, like volume, surface area, center of gravity, and moments of inertia. The geometry can be treated as curved, or can be converted into an approximate polyhedral representation. If the objects are assumed to be rigid (non-

Constructing a geometric model of the part

Importing geometric model from a commercial CAD system

Computing engineering quantities

Importing engineering quantities from commercial CAD system

Modeling internal materialization of the parts

Setting up the environment for behavioral simulation

Computing falling positions in the gravity space

Computing straight throwing positions in the gravity space

Computing spinned throwing positions in the gravity space

Computing general throwing positions in the gravity space

Graphical display of instanteneous positions

Checking for approaching to other objects

Controlling repeated events

Computing exact contact positions and points

Computing effects of friction on collisions

Computing postcollision kinematical status

Computing elastic/ plastic deformations

Graphical representation of the distorted shape

Figure 1

Regeneration of the deformed object boundary

Process flow diagram of physical modeling

deformable) bodies, the inside domain of the object need not to be described explicitly. However, the interior of non-rigid objects have to be modeled together with the material properties that determine the physical behavior. In order to model the internal materialization, parametrized grid patterns with dislocation orientations are to be defined.

Type of object

Mass

Gravitational Vibration acceleration amplitude

Practical example

Free falling object

finite

9.81 [m/s2]

0 [m]

falling flowerpot

0 [m/s2]

0 [m]

wall or ground

Stationary finite or object infinite

Pre-conditioned spatial movement and beMoved finite 9.81 [m/s2] 0.00x [m] kicked havior of objects are described in a physiobject ball cal modeling space with metrics. From a geometrical point of view, the physical Vibrating finite 0 [m/s2] 0.00y [m] sorted modeling space is a linear, threeobject screws dimensional Euclidean space. The object is taken to refer to an orthonormal basis e Table 1 A specific typology of objects = (e1, e2, e3) of the space E3. From a physical point of view, this modeling enviphases. These comprise a rough and an accurate ronment is supposed to be a uniform gravitational detection process. field of gravitational coefficient g. Objects are assumed to move according to the direction of g, Initial conditions of post-collision movements can unless specified otherwise. be determined by computing the new accelerations of the objects. If there is more than one colliding One part of setting the environment for behavioral object and/or certain events occur repeatedly, consimulation is related to specification and positiontrol of the physical behavior gets greater emphasis. ing obstacles in the space. Obstacles are rigid and The developed software is able to compute, among fixed objects with specified shape, dimension and others, compound movements in the space and ecpositioning. Obstacles are used only in the collicentric collision with four types of obstacles. The sion checking stage. Initial velocities and acceleranovelty of this work is in the interactive definition tions are defined relative to the center of gravity of of constituents of the modeling environment and in the object. The other part of activities in this stage the integrated simulation of an arbitrary sequence is orientated to specification of initial conditions of spatial movements and multiple collisions. and constraints for the movement of the object. Influenced by the initial conditions, an object can perform three elementary types of movements, i.e., falling, shooting and gyration. Any general movement can be synthesized by superimposing these three elementary movements. The points of the trajectory of movements are calculated based on preset and/or calculated time intervals. Objects in motion may knock against each other and obstacles that, in turn, forces the object to change its original trajectory of movement. First, probable collisions are to be recognized. Collision detection involves determination of contacts between objects and obstacles, furthermore, computing the change of velocities. More than one obstacle is assumed to be involved in collisions. Exact collision checking can be made in a fourdimensional space-time system only. In order to facilitate and speed up collision detection in 3D, collision checking is generally carried out in two

2. UNIFIED DESCRIPTION OF OBJECTS For the purpose of this paper, mechanical parts, units and/or assemblies will be referred to as objects and will be considered finite, bounded, real, elastic and/or plastic bodies of specific densities. A specific typology of the objects defined for physical modeling is shown in Table 1. Objects are characterized by their dimensions, weight, moment of inertia, velocity, acceleration and vibration amplitude. The mass of objects is described as a mass tensor:  mx  M = − mxy − m  xz

− myx my − myz

− mzx   − mzy  mz  

(1)

where the matrix of the mass tensor M is symmetrical. For an arbitrary axis e, going through the center of gravity C of the object in the direction v, the mass mv can be calculated by the following formula: v* =

v v

(2)

mv = v * M * v *

*

The second order inertia of objects is described as an inertia tensor: Θx  Θ = − Θ xy − Θ  xz

− Θ yx Θy − Θ yz

− Θ zx   − Θ zy  Θz  

(3)

where the matrix of the inertia tensor Θ is symmetrical. For an arbitrary axis e, going through the center of gravity C of the object in the direction v, the inertia Θ v can be calculated as follows: v v = v *

(4)

Θ v = v* * Θ * v*

Objects can be typified according to their mass, gravitational acceleration and vibration amplitude. An object of infinite mass, zero gravitational acceleration and zero vibration amplitude is a ground, or, depending on its positioning, it can be also a wall. Actually, the assigned mass specifies if the object is a stationary or a moveable.

3. INCREMENTAL DESCRIPTION OF SPATIAL MOVEMENTS In description of kinematical states of modelled objects an incremental approach has been used. It means that the parameters of the actual state are derived from the previous known state of the objects. Actual linear and angular velocities and accelerations are calculated from the force impulses and moment impulses acting in the previous state. Similarly, actual linear and angular acceleration are determined from the forces and moments of the former computed state. In the most general form, the movement of an object in an E3 space can be described in vector form as: p = ( p 0 + r ⋅ϕ 0 ) + (v 0 + r ⋅ω 0 ) ⋅t + + ( a 0 + r ⋅ε 0 ) ⋅t 2 / 2 + ( u 0 + r ⋅ν 0 ) ⋅t 3 / 6

(5)

ϕ = ϕ 0 + ω 0 ⋅t + ε 0 ⋅t 2 / 2 + ν 0 ⋅t 3 / 6

(6)

where, p is the actual place of a referenced point of the object in the frame system, defined relative to the orthonormal basis e, p0 is the initial place of the object: p0 = [p0x, p0y, p0z]T, ϕ 0 is the initial orientation: ϕ 0 = [ϕ 0x, ϕ 0y, ϕ 0z]T, v0 is the linear velocity: v0 = [v0x, v0y, v0z]T, ω 0 is the angular velocity: ω 0 = [ω 0x, ω 0y, ω 0z]T, a0 is the linear acceleration: a0 = [a0x, a0y, a0z]T, ε0 is the angular acceleration: ε0 = [ε0x, ε0y, ε0z]T, u0 is the spur of linear acceleration: u0 = [u0x, u0y, u0z]T, and ν0 is the spur of angular acceleration: ν0 = [ν0x, ν0y, ν0z]T. T stands for a transposed vector. The matrix r is the spatial location vector of a point of the object:  0  r = − rz + r  y

+ rz 0 − rx

− ry   + rx  0  

(7)

Using polynomial form to describe rigid body movement is advantageous from the point of view of determination of the derivatives. We assume that the previous place, position (orientation), velocities and accelerations of an object is known. The actual values are calculated with consideration of an incremental time step ∆t that is known from a position analysis. The task is to calculate the changes in the aforementioned parameters that takes place in ∆t due to the resultants of the forces and moments, and force and moment impulses, respectively, acting on the object. From these values the change of acceleration for the center of gravity can be calculated. The equations are as below: F = M * a and a = M − 1 * F

(8)

dF dF = M * u and u = M − 1 ∗ dt dt

(9)

M = Θ * ε and ε = Θ − 1 * M

(10)

dM dM = Θ * υ and υ = Θ − 1 * dt dt

(11)

For practical computations, time is discretized by taking time increments ∆ti. The initial location of an object is assumed at t0 = 0. An ith discrete location of the object on the spatial trajectory is cal-

culated from the (i-1)th discrete location by incrementing with ∆ti. The time increments ∆ti are not necessarily equal. Taking increments of varying length is important, for instance, at calculation of contact positions. If the distance di between the two nearest points of two objects is less than that would be calculated as a product of the actual velocity vi and the time increment ∆ti, the time increment is modified proportionally into a ∆ti’.With the ∆ti time increments the actual values of the movement parameters are: p actual = p previous + v ⋅∆t + a ⋅∆t 2 / 2 + u ⋅∆t 3 / 6

(12) ϕ actaul = ϕ previous + ω ⋅∆t + ε ⋅∆t 2 / 2 + υ ⋅∆t 3 / 6

(13) v actual = v previous + a ⋅∆t + u ⋅∆t 2 / 2

(14)

ω actual = ω

(15)

previous

+ ε ⋅∆t + υ ⋅∆t 2 / 2

Note that the calculated ∆ti time increment is accepted only in that case if there is not collision or contact during the concerned movement. If it is not true, ∆ti is proportionally decreased. If there is a hint for the occurrence of an intersection between two objects in contact, the applied time increment is eventually calculated by the formula: ∆ti, applied = ∆ti, computed / 3. If the objects are not in contact with each other, we have to find the point whose movement is the fastest relative to the contact area on the other object. The maximal time increment can be calculated in this case in the following way: ∆t fastest = smax v fastest and ∆ti , applied = min[∆t max , ∆t fastest ] . In a more general case,

∆ti is influenced by the value of the highest frequency of a vibrating object rather than the distance between two adjacent objects. Therefore, as a rule of thumb, ∆tmax = max (∆t = t0 t1) = 1/(12*fmax) has been considered for these complex cases.

4. ABOUT OBSTACLES Earlier it was explained the all objects, either stationary or moving, are treated the same way. Nevertheless, the notion of ‘object’ has been used to depict those objects that are in fact moving. The fixed objects of either finite or infinite mass have been called obstacles. With the assumption of bi-

nary collisions, the case when one moving object forms an obstacle to an other object is not considered. Geometrically, obstacles are tetrahedrons and bricks that can be touched at their corners and/or surfaces. There are four elementary types of obstacles considered: (a) slope with an oblique angle 0 < φ < 90°, (b) vertical wall, (c) horizontal slab, and (d) round peg. Considering these, various compound obstacles can be constructed that model the real life environment of a moving object. The obstacles are assumed to be rigid, fixed in the space without any other support, and active in the whole domain of their work surface. The number of obstacles used in a simulation is arbitrary. Being considered physical objects, obstacles are allowed to touch, but not to overlap, each other. The obstacles are positioned relative to the generic three-dimensional system of coordinates of the given arrangement. Thus, their absolute and relative position can be modified in comparison with the position of the object. Since every collision forces the object to change its positions, it follows a predictable trajectory which is defined by the given configuration of obstacles. The other way round, by an appropriate arrangement of the obstacles the object can be forced to follow a requested trajectory while it is moving. Naturally, the trajectory of movement is also influenced by the selection of the object’s initial position and velocities. Theoretically, a falling object may collide with more than one obstacle at the same time. In the practice, however, the probability of that is very low. In principle, three cases may occur: (a) individual domains of more than two objects touch each other at the same time, (b) more than one domains of an object gets into contact with an another object simultaneously, and (c) any combination of the aforementioned cases. In the first case, since the actual time of collision is taken as a finite small value, any simultaneous collision is taken as a sequential one for the first case in the practice. In the second case, the concrete situation of the multiple contact is analyzed and the active supports are identified first. The non-active supports are neglected and the tilting edge is calculated based on the mass distribution of the object. The collision will then be calculated for the tilting contact. The third case can be practically neglected due to its extremely low probability of occurrence.

Because of its incomparably higher probability in real life, only one collision on a single face is considered at a time. But, if there is more than one support that shores up the objects simultaneously, first we have to find the influential one, called active support. An active support is formed if the object lifts off the support that is nearest to the one the object is turning around on. Spinning of an object takes place on active supports, that is generally formed on the verge of the series of supports. From a set of leveled supports, for instance, the two outermost ones can be expected to become active supports. The direction of spinning and the shape of the object also influence the formation of an active support. An intermediate support may become active only if it has specific location relative to its neighbors.

5. DETECTION OF COLLISION OF A MOVING OBJECT WITH AN OBSTACLE In the first phase of our research we assumed nondeformable objects and penetration of one object into an another has also been neglected. Our contact based collision checking is executed in three steps. First, a rough collision checking is completed based on the bounding spheres of the objects. Since an object may rotate around its center of gravity, bounding spheres are the proper tools to forecast collision. When the bounding spheres contact, or interference with each other, collision has happened, is bound to happen, or might happen. Second, a pre-processing is applied to the objects to simplify collision calculation. Precisely, those faces of the object models are removed, by a technique called back face culling in the literature, that are not on the collision-dangerous side of the objects. By this way the number of the active boundary elements is reduced, and contact tests are executed on only those faces, edges and vertices that are facing in the direction of approach of the objects. The opposite faces are found based on a comparison of their surface normal vector to the relative velocity vector of the two colliding bodies. Third, the exact place of collision is determined through a sequence of iterating steps. A backward iteration is launched whenever an interference is detected at calculating the actual position of the objects. Because of the very low probability of their occurrence, face-face, face edge, and edge-

P FD

z +

E4

x

E3

S

P NC

S S

E S

S

PC

S

E5 E6

L PC

S E

7

E8

P NC

F5

2

A F1

E1

n _

F2 B F3

F4

Figure 2

Calculation of interference between two objects

edge contacts have been excluded from the further investigation. To determine the interference (a) a dual point containment testing and (b) face-vertex distance calculation and surface normal calculation are carried out. Determination of the exact contact is difficult due to the computer’s rounding errors. Therefore, a threshold for approximation is to be specified. The concept behind point containment test, which is demonstrated for a 2D case in Figure 3, is that there can be three situations if a line is projected to the investigated point PC of object B from a far distance point PFD (Figure 2). If the straight line intersects with none of the surfaces of the boundary of the object A, the point is outside of the object A (is of type PNC). If there is even number of intersections S with the faces on the external and internal boundaries of object A, the point is also not contained (is PNC). If there is exactly odd number of intersections S, the given point of the object B is contained by the object A, that is, it is of type PC. Then, the same procedure is applied to all vertices of objects A and B. Having converted the object geometries into a real or quasi-polyhedral representation, we can determine the distance between any included vertex and the nearest surface to this vertex in the direction of the collision vector. This procedure can be applied to both concave and void shapes equally well. In the case of a void shape, interpretation of the distance should be reversed.

6

CALCULATION OF THE POSTCOLLISION VELOCITIES

The implemented collision calculation algorithm assumes that objects come to rest at the moment of collision for an infinitely short period of time. This can be estimated only (in fact, to milliseconds). Collision velocities are calculated by applying the principles of momentum balance and the coefficient of restitution k between the colliding bodies. The common velocity of colliding bodies can be calculated from: vs =

m1 * v1 + m2 * v 2 m1 + m2

(16)

k=

+

v − vs v s − v1

(17)

Assume that velocity vS of the center of gravity S of the objects is linear (Figure 3). The, velocity vS can be decomposed into component velocities vSx and vSy in the xyz global system of coordinates. Similarly, v can be decomposed into v L and v = S

v= _ D

H S

C

vL k_ D

There is at least one point on the line perpendicular to the surface normal of the Figure 3 contacting patches whose velocity does not change due to collision. This point H is the center of collision. Taking into consideration that the total moment of inertia must be equal to the original one, the mass of the object can be divided into these two parts that can be placed onto points D and H. By using the post-collision velocities of these two points, any points of the object can be characterized for its linear and angular velocities. These are the factors that have been taken into consideration during the development of the algorithm. All phenomena at collision appears in a plane that is defined by the normal vector n at the contact point P and the center of gravity S.

S

ω

x

α v_H * v' _ v' _ v _ β Dy Hy D vS α _ v' = D _ vH L _ Dx _ v _ _v H vL _ v β D Sy v _ vSx _ v_ H Hr Dy α v _ Dx L vS _ β _ v* v _ vL L _ v= _ v Hx _ D Dr S D P L * vD _ v= _ D

_ n

Since the collision is assumed to occur in instantaneous time, only the collision impulse, which is a large force in a very short time, is influential on the velocities in the direction of collision.

The point D is the intersection point of the surface normal n at P and the line perpendicular to n and going through the center of gravity S. Thus, the point D is the basis point of collision. The velocity

z

The coefficient of restitution k will have the following value: \ 1

the surface normal n at point P, and vS= is perpendicular to n. It is known from solid mechanics, that in the case of eccentric collision the line of action goes through the contact point P and perpendicular to the tangent plane of the object at point P. Only those components of velocities play role in the collision that are perpendicular to this tangent plane. The components parallel to this plane remain unchanged.

S

in the local system of coordinates, respectively. The component vSL is the component parallel to

Velocities of an object colliding with an obstacle of point D is proportionally changing with the impulse of force. The change of the velocity component parallel to the surface normal is the same as of point P. The points D and H will also have the two velocity components of vS, It can be seen in Figure 3 that vS = vH* = vD*, and vS= = vH= = vD=. Rotations can also be taken to refer to S. Due to the rotation about S, velocity components vHrL and vDrL arise in points H and D, respectively, resulting in velocity vH at the point H, and vD at the point D. The pre-collision velocities of the center of gravity of a moving object can be calculated from Equations (4). With these, the arising velocity of point H can be computed as follows. Because v Hr = = v Dr = = 0 , as it is shown in Figure 3:

v H = v H * + v Hr L* = ( v H * + r SH ×ω 0z ) The velocity vector for the point D is:

(18)

v D = v D * + v Dr L* = ( v D * − r SD ×ω 0 z )

(19)

v Dx = v Dx * + v Drx * = ( v Dx * − r DSy ×ω 0 z ) (20) v Dy = v Dy + v Dry = ( v Dy − r DSx ×ω 0 z ) (21) *

*

*

The components parallel to and perpendicular to the surface normal can be calculated by: v D =   L = T v D 

v Dx   cosα v  =   Dy  − sin α

sin α v Dx    cosα  v Dy 

(22)

The component of the post-collision velocity perpendicular to the contact surface is:

v D ' L = − k ⋅v D L v Dx ' −1 v ' = T  Dy 

v D   = v D 

7

CONSIDERATION OF FRICTION ON OBSTACLES

Although the duration of collision is assumed infinitely small, the rising elastic and plastic deformations in the zone of contact can not be neglected. Due to the energy of impact, the contact zone is in plastic state and the plastic domain is surrounded by the elastic zone which is out of the contact. In fact, the actual contact force increases from zero to its maximum in proportion with the plastic deformation and then, having reached to its maximum its starts to decrease again to zero (Figure 4). The history of the force can be well approximated in time by a sin(t) function, that is:

(23)

F ( t ) = F max * sin( t )

(24)

An averaging based on the integral of the history of the forces with respect to time gives the quasireal value of the forces, which in turn proportional to the changes of the velocities of the colliding objects:

where k is the non-negative restitution coefficient. Now, we are looking for the point C which has linear velocity only. The velocity of the point D relative to this point C is: v C = v D − (r CD ×ω z ) '

(25)

t1

∫F (t )dt = m

D

r CD ×ω z = v C − v D '

(31)

t0

(26) F actual =

and vC L − v D ' L ωz = rCD

(27)

'L

r CD vD = L r CD − r SD vS

(28)

and since vC= = vD= = vS= = vH= , for the velocity of the center of gravity S, we get: 'L

r CD − r SD ⋅ r CD

mD * ∆v D⊥ 2

(32)

The plastic deformation in the contact zone results in a friction which modifies the post-collision velocities of the object springing off the obstacle: v \ = v + M − 1 * ∫F ( t ) dt

For a rigid object:

vS = vS + vD

* ∆v D⊥

Substituting Equation (30) into (31) and executing integration we get:

from which

=

(30)

'L

ω \ =ω + Θ −1*

(33)

[∫F (t )dt ×r ]

(34)

SP

z +

(29)

This value is used as an initial velocity for the calculation of the post-collision movement and trajectory of the object. Determination of directions and magnitudes of the post-collision linear and angular accelerations goes together with analysis of the physical situation by considering friction due to collision impact and the degrees of freedom.

x

S G _

D

_r FL _ P

_F=

P

P

F ( t ) = F max * sin(t ) _F L t1

∫F (t )dt

t

t0

α

Figure 4

to

ti

tn

Friction in eccentric collision

In the above Equations the integral formula can be replaced by Factual and can also be used to calculate contact friction force Fcf.

x + G _

n _

In the very moment of collision, the velocity component vP= of the contact point P which is perpendicular to the surface normal n disappears (= 0). To maintain this state during collision, the acceleration component aP= of the contact point P should be zero. Thus, the requirement is:

y

a P = = 0 = a = + ez ⋅r =

Figure 5

∫F f _actualdt = µ( v ⊥P ) * ∫F time_segment dt *

aSy _

− v ⊥P v ⊥P

(36)

a Sx _

α

_r y

P

_Fx _rx

(35)

Friction force at collision depends on the velocity that is perpendicular to the actual collision normal. Therefore its value cannot be reasoned out directly from the pre-collision velocities and the force impulse during collision. As an indirect solution, the time of collision has been split up into segments, and the collision force impulse has also been distributed over the range of segments. The friction force impulse is calculated for each segments and then it is determined how the resultant of the friction force impulse and the collision force impulse influences the velocity of the colliding objects. The change of velocity over one segment allows us to calculate the input velocity for the next segment. Thus, the expression to calculate the actual friction force is:

S

Fy _ α

Dynamic equilibrium on the obstacle

be also in a quasi-static equilibrium. The force and acceleration vectors in this quasi-static equilibrium are shown in Figure 5. It is obvious that there is no acceleration in the direction of the normal n of the contact surface. For the object tilting around point P, the relationships between the components of impact and friction forces and accelerations are described by the following Equations:

Fx m

a sx =

(37)

a sy =

Fy + G m

(38)

εz =

F x ⋅r y − F y ⋅r x Θ

(39)

tgα =

Fx Fy

(40)

tgα =

a sx + r y ⋅ε z a sy − r x ⋅ε z

(41)

Equation (36) expresses that the contact friction force is proportional to the velocity in the contact point P. The force impulse can be determined by a recurrent procedure only. When the contact velocity is zero, the value of friction coefficient is supposed to be equal to the value of conventional friction coefficient µk at standstill that is characteristic for the material pair in contact. Beyond a threshold velocity value it is supposed to be equal to the sliding friction coefficient µs and linearly changing in between these two limit values.

of gravity S and the angular acceleration εz can be calculated by the Equations given below:

8

εz =

CALCULATION OF THE POSTCOLLISION ACCELERATIONS

The object bumping against an obstacle is in dynamic equilibrium at the instance of touching. Nevertheless, during the infinitesimally short duration of collision, the object can be supposed to

Assume that the mass m, the moment of inertia θz, and the distance between the contact point P and the center of gravity S are known. The components of the vector of linear acceleration aS of the center

a sx

(

G ⋅tgα

m r y + r x ⋅tgα

(

(42)

)

Θ ⋅G ⋅tg 2α

)(

m2 r y + r x ⋅tgα r y ⋅tgα − r x

)

(43)

a sx

(

G ⋅( Θ ⋅tgα + 1)

)(

m r y + r x ⋅tgα r y ⋅tgα − r x 2

)

(44)

These computed linear and angular acceleration values, together with the velocities received by Equation (33), are also taken as initial values at determination of the post-collision movement and trajectory.

9

APPLICATION IN AN INDUSTRIAL

Figure 8

Bouncing between the side walls

hexagonal nuts cut down from a hexagonal bar on a machining center. The nuts have to be moved to and positioned for thread-cutting by utilizing exclusively their kinematic energy possessed after the cut-down.

Figure 6

The studied industrial problem

PROBLEM The motivation for the research in physical modeling has happened to be an industrial problem: How can objects with large amount of kinematic energy be sorted out, handled and positioned in a given domain of a 3D space without using extra energy. The objects are large sized, semi-finished

Figure 7

Bumping of the nut against slanted slabs

The hexagonal bar of which the semi-finished nuts are cut down is fixed in the horizontal mandrel of the machining center (Figure 6). The initial position of the nut is at the height of the spindle, and its initial velocity comes from the rotation. Due to the cutter location, cutting conditions, and the gravity, the direction of falling of the detached nut is almost vertical in the plane that is perpendicular to the axis of the spindle. This way, the position and angle of the first incidence can easily be estimated. Note that the mass of a semi-finished nut is m = 0.38 kg, its moment of inertia is Θ z = 7.2 10-5 kgm2. The nuts are to be forwarded to the boring fixture that, on the one hand, determines the position of the nuts, and, on the other hand, fixes the nuts during machining.

Figure 9

Coming to rest

The developed physical modeling software has been applied to analyze the problem and to elaborate a solution based on behavioral simulation. The following solution has been found and tested. A nut is driven to the fixture by its possessed kinetic energy through the sequence of collisions with obstacles. First the nut bumps into slope obstacles, from which it advances to a series of horizontal slabs. It is illustrated in Figure 7. After repeated knocking into and bouncing on the two slanted side walls, the nut reaches the vertical wall of the fixture (Figure 8). The recurring collisions consume the remained kinetic energy and the nut, almost has come to rest, falls into the ditch of the fixture (Figure 9). After positioning, the nuts are resting on one of their side edge and two of their parallel side faces are vertical.

10 RELATED RESEARCH Several approaches to physical modeling have been reported in the literature. Since, from a methodological point of view there are tree branches of physical modeling, developed systems can be sorted into three categories as follows: (a) systems for physical synthesis, (b) systems for simulation with initial geometries, and (c) systems for simulation with detailed geometries. Below, a selected set of publications is reviewed in order to point at the differences in their conceptual fundamentals and to present the practical achievements. Feng, C.-X., Huang, C.-C., Kusiak, A. and Li, P.G., (1996), sort the performance related functions of form features of mechanical parts into mechanical, structural, thermal, fluid and tribological functions. Mechanical functions are defined as mating, positioning, supporting, engaging, fastening, and friction. These functions are further decomposed by taking into consideration the configuration and the morphology of the connected surfaces. They introduce and apply the concepts of explicit functional dependency, interdependency, and designated dependency, and present a taxonomy of functional relations. Hardell, C., (1996), presents the concept of an integrated system for design and analysis of multibody systems. He uses the CAD model of the parts to calculate the mass, moments of inertia, the gravity center for multibody analysis, and the description of the nominal geometry for visualization. He identified four steps of modeling: (a), solid modeling of parts (b), assembly modeling (c),

mechanism modeling, and (d) evaluating data. He uses commercial tools for design and analysis either in an open (I-DEAS ⇔ ADAMS), or a closed (Pro/Engineer ⇔ DADS) communication loop. Liu, J., Igoshi, M. and Arai, E., (1995), use the qualitative spatial relation space approach to kinematic simulation of mechanism models. Their system derives motions of components from the specified motions of other components by analyzing the qualitative structural description of the mechanism. This approach has been found useful for verification of functions related to shapes and motions at the conceptual design. Nahon, M., (1994), present a method for determination of the separation/interference distance between objects based on optimization technique. In order to find the interference distance, each object boundary is moved in a direction perpendicular to itself, towards the interior of the object, until the objects are just touching. The double of the shrinking is a good approximation of the interference distance. Advantages of this method are that it is no longer dependent on the specification of a reference point, and unique. Pai, U. N. and Liou, F. W., (1995), present a method that can automatically animate the dynamic and kinematic response of moving mechanical parts without specifying the mating conditions between the individual parts. Their method assumes rigid bodies of low velocities that come to rest at the moment of collision. The preprocessor unit designs the geometry by features and calculates the engineering quantities. The processor unit detects the collision and calculates the values of acceleration after collision. The postprocessor unit gives a graphical representation of the process. The graphical simulation method developed for collision control by Bao, Z., (1995), is oriented to kinematic mechanisms. The solid model of the investigated object is converted into extended octrees. For the kinematic modeling the relative movement of the investigated object is represented by a homogeneous transformation in the frame systems of coordinates. The collision between two polyhedrons is reduced to two cases of vertex containment and edge intersection test. Continuous collision control is based on the computation and comparison of distances between two moved objects as a function of time.

A very similar collision detection methodology has been worked out by Fang, J. J., Clark, D. E. and Simmons, J. E., (1995) using the technique of horizontal and vertical partition. The detection of penetration is based on the calculation of the relative positions of these partition boxes. Since the smaller the number of the intersecting boxes, the easier is to find a solution, an algorithm that automatically reduces the number of smaller boxes has also been developed. Mo, R. and Nowacki, H., (1994), present a collision detection algorithm that combines sweeping and a parametric surface modeling, furthermore continuous and discrete time detection. The possible intersection domain is determined by the analysis of swept volumes of the object, that are converted into Bézier surfaces. Discrete time detection is carried out in this domain. Baraff, D., (1994), suggests an algorithm for fast contact force calculation of two- and threedimensional non-penetrating rigid bodies with and without friction. The contact model is based on the normal force conditions. The set of linear and quadratic equations is solved by pivoting method. Dynamic friction is calculated at a contact point if the relative tangential vector is non-zero. Glocker, Ch. and Pfeiffer, F., (1995), has developed an impact model for two-dimensional contact situations of rigid multibody systems. They describe the impulses transferred in the normal direction based on the Poisson’s hypothesis. The collision has been considered in two phases, compression and expansion. A part of the tangential impulse during compression is supposed to be reversible, and the other part is considered being friction.

11 SUMMARY AND FUTURE WORK The paper reported about the theoretical backgrounds and a specific application of a physical modeling methodology. An algorithm for three dimensional behavioral simulation of mechanical objects of constrained movement has been worked out and used in software development. Our conclusions are as follows: 1. The specific synthesis of the analytical and numerical methods described in our paper results in an algorithm that can be used to model physical behavior of non-deformable mechanical objects.

2. In selected cases, objects having large amount of kinematic energy can be moved and positioned by a sequence of collisions with an appropriate configuration of obstacles, without any additional input energy. 3. This modeling and simulation methodology can be used to support preliminary design of mechanical equipment. On-going work concentrates on the following extensions to the methodology: 1. modeling of dynamic interactions of more than one object and the obstacles, 2. representation of substance of objects with special attention to the various kinds of inhomogeneous materials, e.g. layered, composite and porous materials, 3. modeling of elastic and/or plastic, global and local deformations of the object and reconstruction of the boundary by surface interpolation of the closure of the international points.

12 ACKNOWLEDGMENT This research and software development work was supported by the grants No. T 012 814 and T 017 598 of the Hungarian National Scientific Research Foundation (OTKA). The authors are also very grateful for Ass. Prof. Joris S. M. Vergeest for his valuable comments on the paper.

13 REFERENCES Bao, Z., (1995), “Collision Control by Graphic Simulation”, in Proceedings of the Computers in Engineering Conference, ed. by Busnaina, A. A., ASME, New York, pp. 967-972. Baraff, D., (1994), “Fast Contact Force Computation for Nonpenetrating Rigid Bodies”; in Computer Graphics Proceedings, Annual Conference Series, pp. 23-33. Fang, J. J., Clark, D. E., Simmons, J. E., (1995), “Dynamic Collision Detection in Virtual Worlds Using HV Partition”; in Proceedings of the Computers in Engineering Conference, ed. by Busnaina, A. A., ASME, New York, pp. 905-910. Feng, C.-X., Huang, C.-C., Kusiak, A., Li, P.G., (1996), “Representation of Functions and Features in Detail Design”, Computer-Aided Design, Vol. 28, No. 12, pp. 961-971.

Glocker, Ch., Pfeiffer, F., (1995), “Multiple Impacts with Friction in Rigid Multibody Systems”; Nonlinear Dynamics, Vol. 7, pp. 471-497. Hardell, C., (1996), “An Integrated System for Computer Aided Design and Analysis of Multibody Systems”; Engineering with Computers, Vol. 12, pp. 23-33. Horváth, I., Kuczogi, Gy., (1997), “Physical Modeling of Mechanical Objects of Constrained Movement”; in Proceedings of International Computers in Engineering Conference, ASME, September 14-17, 1997, Sacramento, California, CD, ISBN 0-7918-1243-X, # DETC97/CIE-4271. Liu, J., Igoshi, M., Arai, E., (1995), “Kinematic Simulation Using Qualitative Mechanism Models”; JSME Symposium on Design and Production, DE-Vol. 83, Vol. 2, ASME, New York, pp. 679-686. Mo, R., Nowacki, H., (1994), “Collision Detection of 3D Complex Objects”; in Advances in Design Automation, DE-Vol. 69-1, ed. by Gilmore, B. J., Hoeltzel, D. A., Dutta, D., Eschenauer, H. A., ASME, New York, pp. 21-27. Nahon, M., (1994), “Determination of The Interference Distance Between Two Objects Using Optimization Techniques”; in Advances in Design Automation, DE-Vol. 69-1, ed. by Gilmore, B. J., Hoeltzel, D. A., Dutta, D., Eschenauer, H. A., ASME, New York, pp. 1-6. Pai, U. N., Liou, F. W., (1995), “Computer Prototyping of Moving Mechnical Parts”; in Proceedings of the Computers in Engineering Conference, ed. by Busnaina, A. A., ASME, New York, pp. 979-986.

Suggest Documents