Multibody Model Anatomy

With SimMechanics™, you represent a multibody system using blocks. Like all physical modeling products, each block represents a physical component or an abstract entity fundamental to physical modeling, e.g. frames and frame transforms.

By connecting the blocks with connection lines, you define the relationships that unite the physical components into a single system (or subsystem). In a basic model, these physical components include rigid bodies and joints. You can also add forces and torques, motion sensors, and kinematic constraints, e.g., to represent gears.

Basic Model Components

The figure shows the block diagram of a multibody system—the four-bar linkage. This model contains subsystem blocks to represent the links and pivot mounts. These represent the rigid bodies of the model. The model contains also four Revolute Joint blocks. These represent the joints in the model. Combined, these blocks form the foundation of this model.

While important, rigid body subsystem and joint blocks are not sufficient to represent the four-bar linkage. Other blocks serve important purposes. These include World Frame, Rigid Transform, Mechanism Configuration, and Solver Configuration blocks. The table summarizes their functions in a multibody model.

World FrameProvides the ultimate reference frame in a model. All remaining frames are defined with respect to this frame. It is inertial and it defines absolute rest.
Rigid TransformApplies a fixed spatial relationship between frames. This block defines the offset distance and angle between two frames.
Mechanism ConfigurationIdentifies the gravity vector in a model.
Solver ConfigurationProvides essential simulation parameters required to simulate the model.

The figure breaks the four-bar model into its logical components. These are the physical components and abstract entities that you need in order to represent this system.

Each rigid body subsystem contains SimMechanics blocks that represent solids and their spatial relationships. The blocks are Solid and Rigid Transform. The figure shows the blocks that model one of the binary links. Three Solid blocks represent the three solid sections of this rigid body—main, peg, and hole sections. Two Rigid Transform blocks represent the fixed spatial relationships between the three solids. You use them to position the peg and hole sections at the ends of the main section.

Model Actuation

You can actuate a model by applying a force or torque to a rigid body or to a joint. To represent forces and torques acting on a rigid body, SimMechanics provides a Forces and Torques library. Drag a block from this library and connect it to the rigid body frame(s) that you want to apply the force or torque to.

External Force and TorqueGeneral force and/or torque originating outside of the multibody model
Internal ForceGeneral force pair between two arbitrary frames
Spring and Damper ForceSpring-damper force pair between two arbitrary frames
Inverse Square Law ForceForce pair with inverse dependence on the square distance between two arbitrary frames (e.g., Coulomb electrostatic forces)
Gravitational FieldGravitational pull of a point mass on all rigid bodies as a function of their distances to the point mass itself

The figure shows a four-bar model with an External Force and Torque block for force and torque prescription at a crank link frame.

To specify the force or torque acting at a joint, SimMechanics provides a selection of actuation inputs directly in the joint blocks. Each joint primitive—the basic component of a joint block—provides a selection of actuation inputs specific to that primitive.

Joint actuation inputs can be of two types:

  • Motion — Specify the time-varying trajectory of a given joint primitive.

  • Force or torque — Specify the time-varying actuation force or torque acting at a given joint primitive.

The figure shows a four-bar model with an actuation torque acting at a revolute joint.

Dynamical Sensing

You can sense various dynamical variables between frame pairs, e.g., for analysis or control design. Sensing outputs can be of two types:

  • Motion — Compute and output the relative position, velocity, or acceleration between two SimMechanics frames. You can sense motion between joint frames, by using the sensing capability of joint blocks, or between arbitrary frames, by using the Transform Sensor block.

  • Force or torque — Compute and output the forces and torques acting between two SimMechanics frames. You can sense force and torque between the port frames of certain Forces and Torques blocks, such as the Inverse Square Law Force block, or between the port frames of a joint block.

Joint blocks enable you to sense different types of forces and torques between their respective port frames, including:

  • Actuation force or torque acting at a given joint primitive.

  • Constraint force and torque acting joint-wide to prevent motion normal to the joint degrees of freedom.

  • Total force and torque, including constraint and joint primitive actuation contributions, acting joint-wide.

The figure shows a four-bar model with a Transform Sensor block for trajectory coordinate sensing between a coupler link frame and the world frame.

Related Examples

Was this topic helpful?