Spatial Contact Force
Libraries:
Simscape /
Multibody /
Forces and Torques
Description
The Spatial Contact Force block models the contact between geometries associated with a pair of solids. You can use the built-in penalty method or custom normal and friction force laws to model a contact.
Supported Geometries
The Spatial Contact Force block can model contacts between a variety of geometry pairs. The geometries can be sourced from the solid blocks in the Body Elements sublibrary or from the point and surface blocks in the Curves and Surfaces sublibrary. The geometry exported from a solid block is the convex hull of the solid. For a nonconvex body that can be modeled by using a File Solid, Extruded Solid, or Revolved Solid block, the block exports the convex hull for the Spatial Contact Force block to compute contact forces. When computing inertial properties, the solid blocks use the true geometry. The figure shows an example of a nonconvex geometry and its convex hull representation.
The Spatial Contact Force block does not model contacts between certain geometry pairs. For the full set of supported pairs, see the table.
Convex hull of solid | Disk | Grid surface | Infinite plane | Point | Point cloud | |
Convex hull of solid | Yes | Yes | No | Yes | Yes | Yes |
Disk | Yes | No | No | Yes | No | No |
Grid surface | No | No | No | No | Yes | Yes |
Infinite plane | Yes | Yes | No | No | Yes | Yes |
Point | Yes | No | Yes | Yes | No | No |
Point cloud | Yes | No | Yes | Yes | No | No |
Contact Forces
The image shows how the Spatial Contact Force block models a spatial contact problem. In this case, the contact is between a blue base geometry and a red follower geometry.
During the contact, each geometry has a contact frame. The two contact frames are always coincident and located at the contact point. The z-direction of the contact frames is an outward normal vector for the base geometry, but inward normal vector for the follower geometry. During continuous contact, the contact frames move around the geometry as the contact point moves.
The block applies contact forces to the geometries at the origin of the contact frames in accordance with Newton's Third Law:
The normal force, , which is aligned with the z-axis of the contact frame. This force pushes the geometries apart in order to reduce penetration.
The frictional force, , which lies in the contact plane. This force opposes the relative tangential velocities between the geometries.
To specify a normal contact force, in the Normal Force section, set
the Method parameter to Smooth Spring-Damper
or Provided by Input
. If you select Smooth
Spring-Damper
, the normal force is:
,
where:
is the normal force applied in equal-and-opposite fashion to each contacting geometry.
is the penetration depth between two contacting geometries.
is the transition region width specified in the block.
is the first time derivative of the penetration depth.
is the normal-force stiffness specified in the block.
is the normal-force damping specified in the block.
is the smoothing function.
The force law is smoothed near the onset of penetration. When d < w, the smoothing function increases continuously and monotonically over the interval [0, w]. The function is 0 when d = 0, the function is 1 when d = w, and the function has zero derivative with respect to d at the endpoints of the interval.
To better detect contacts when the value of the Transition Region Width parameter is small, the Spatial Contact Force block supports optional zero-crossing detection. The zero-crossing events only occur when the separation distance changes from positive or zero to negative and vice versa.
Note
The zero-crossing detection of the Spatial Contact Force block is different than the zero-crossing detection of other Simulink® blocks, such as From File and Integrator, because the force equation of the Spatial Contact Force is continuous. For more information about zero-crossing detection in Simulink blocks, see Zero-Crossing Detection.
The Spatial Contact Force block clips the computed force to be always nonnegative. If the force law gives a negative force, the block applies zero force instead. This happens briefly as the geometries are separating and penetration is about to end. At that point, d is approaching zero and d' is negative. This modification ensures that the contact normal force is always repulsive and never attractive.
To specify a frictional force, in the Frictional Force section, set
the Method parameter to Smooth Stick-Slip
,
Provided by Input
, or None
. If you
select Smooth Stick-Slip
, the frictional force is always directly
opposed to the direction of the relative velocity at the contact point and is related to the
normal force through a coefficient of friction that varies depending on the magnitude of the
relative velocity:
,
where:
is the frictional force.
is the normal force.
is the effective coefficient of friction.
The effective coefficient of friction is a function of the values of the Coefficient of Static Friction, Coefficient of Dynamic Friction, and Critical Velocity parameters, and the magnitude of the relative tangential velocity. At high relative velocities, the value of the effective coefficient of friction is close to that of the coefficient of dynamic friction. At the critical velocity, the effective coefficient of friction achieves a maximum value that is equal to the coefficient of static friction. The graph shows the basic relationship in the typical case where > . In this case, the model is able to approximate stiction with a higher effective coefficient of friction near small tangential velocities.
Ports
Geometry
Input
Output
Parameters
Extended Capabilities
Version History
Introduced in R2019b