Multibody dynamics is the study of the dynamic behaviors of mechanical systems that consist of rigid and/or flexible bodies connected by joints. The bodies undergo translational and rotational motions caused by applied forces, torques, and constraints. Simscape™ Multibody™ enables you to perform multibody dynamics simulations for complex systems, such as robots, vehicles, construction equipment, or aircraft landing gear. You can specify force, torque, and motion inputs to drive your model and simulate the dynamic responses of the model.
To specify the degrees of freedom between a pair of bodies, use blocks in the Joints and Constraints libraries. For example, you can use the Prismatic Joint block and Revolute Joint block to model the straight-line and rotary motions of a slider-crank mechanism. You can use the Point on Curve Constraint block to model the constraint between a roller coaster car and the track.
To model forces and torques that act on bodies, use blocks in the Forces and Torques library. For example, you can use the Magic Formula Tire Force and Torque block to model the tire forces and torques between a tire and ground surface. When modeling contact problems, such as robotic grasping, you can use the Spatial Contact Force block to simulate forces between a pair of bodies.
To measure the relative motions between bodies, you can use the Transform Sensor block. To measure forces and torques, you can use blocks in the Constraints, Joints, and Forces and Torques libraries. The loads on the bodies at the joints can be measured at the joint blocks, and a constraint block can sense the forces and torques that maintain the constraint between a pair of bodies. Each of these quantities help you answer important questions as you analyze the multibody dynamics of the mechanical system.
Joint Force Laws
|Construct axial spring-damper force law (Since R2022a)
|Abstract base class to construct joint force laws (Since R2022a)
|Construct spherical spring-damper force law (Since R2022a)
|Construct torsional spring-damper force law (Since R2022a)
Joints with One or No Primitives
|Joint that allows relative motion along single axis
|Joint with one revolute primitive
|Joint allows 3-D rotations
|Joint with zero primitives
Joints with Multiple Primitives
|Joint with one prismatic and three revolute primitives
|Joint with three prismatic and three revolute primitives
|Joint with three prismatic primitives
|Joint with one rotational and one translational degree of freedom
|Joint with three revolute primitives
|Pin Slot Joint
|Joint with one prismatic and one revolute primitives possessing mutually orthogonal motion axes
|Joint with one rotational and two translational degrees of freedom
|Joint with two prismatic primitives
|Joint with six degrees of freedom and no kinematic singularity
|Joint with one prismatic and one spherical joint primitive
|Joint with two revolute primitives
Joints with Coupled Degrees of Freedom
|External Force and Torque
|Apply external force and/or torque to connected frame
|Field of force due to point mass
|General force acting reciprocally between two frame origins
|Inverse Square Law Force
|Force proportional to the inverse square distance between two frame origins
|Magic Formula Tire Force and Torque
|Apply steady-state tire force and torque by using Magic Formula tire equations (Since R2021b)
|Planar Contact Force
|Model planar contact between two geometries (Since R2023b)
|Spatial Contact Force
|Model spatial contact between two geometries (Since R2019b)
|Spring and Damper Force
|Force proportional to the distance and relative velocity between two frame origins
Sense Force, Torque, and Motion Outputs
- Analyze Motion at Various Parameter Values
Simulate a four-bar model at different coupler link lengths and plot the resulting coupler curves.
Dynamic variables that you can sense and blocks that you can use to sense them.
- Sense Motion Using a Transform Sensor Block
Use the Transform Sensor block to sense frame motion in a simple multibody model.
- Measure Joint Constraint Forces
Use the sensing capability of a joint block to sense the internal forces acting on a mechanical link.
- Measure Forces and Torques Acting at Joints
Use the sensing capability of joint blocks to measure the forces and torques acting at a joint.
Prescribe Force, Torque, and Motion Inputs
- Modeling Contact Force Between Two Solids
Use the Spatial Contact Force block to model normal and frictional forces between solid blocks.
- Solid Cylinder Rolling Down an Incline
Use the Spatial Contact Force block to model the solid cylinder rolling down a ramp.
- Model Gravity in a Planetary System
Assemble a system of gravitationally-bound free bodies using Cartesian Joint and Gravitational Field blocks.
- Specify Joint Motion in Planar Manipulator Model
Use the actuation capability of joint blocks to specify the trajectory of frame.
- Specify Joint Actuation Torque
Use the actuation capability of a joint block to specify the actuation torque on a joint.
- Specify Joint Motion Profile
Use the actuation capability of joint blocks to specify the trajectory of a frame.
- Use Contact Proxies to Simulate Contact
Use contact proxies to increase the speed and robustness of contact simulations.
Force and Torque Specification
- Actuating and Sensing with Physical Signals
Using physical signals to specify actuation inputs and obtain sensing outputs.
- Joint Actuation Limitations
Restrictions and special considerations for models with motion actuation inputs in joint blocks.
- Modeling and Measuring System Dynamics
Workflow steps for setting and sensing dynamic quantities such as force, torque, position, and more.
- Modeling Gravity
Modeling the effects of uniform gravity, gravitational fields, and individual gravitational forces. Software definition of body boundaries and its impact on gravitational torques.
- Specifying Joint Actuation Inputs
Joint actuation modes, motion input handling, and key differences between model assembly and simulation.
Motion, Force, and Torque Sensing
- Force and Torque Sensing
Forces and torques that you can sense and the blocks that you can use to sense them.
- Selecting a Measurement Frame
Measurement frame definition and summary of measurement frame types.
- Motion Sensing
Motion variables that you can sense and the blocks that you can use to sense them.
- Rotational Measurements
Rotational motion variables that you can sense and the blocks that you can use to sense them.
- Translational Measurements
Translational variables that you can sense and the blocks that you can use to sense them.