Main Content

Rope

Physical connection that enables tension transfer

  • Library:
  • Simscape / Driveline / Couplings & Drives

Description

The Rope block represents an element that transfers tension between two contact points. You can treat it as an arbitrary tension transfer device to simulate a variety of situations, including pulley networks, cable drives, and serpentine belts. You can choose whether the block exhibits slack upon loss of tension. The block has a base port, B, and a follower port, F. The rope stretches in tension when the base port leads the follower port.

The block considers only the longitudinal translational motion and force of the rope ends. For the ideal case, the block is equivalent to the spring-damper or spring-mass-damper systems illustrated in the figures, depending on whether you choose to model the mass. These figures do not necessarily apply when you simulate slack.

Parallel spring and damper with an in port and an out port.Parallel spring and damper with an in port, an out port, and mass at both ends.

Tip

Confirm that your model performs correctly with Rope model set to Ideal - No tension. While in this mode, verify that the B and F ports are oriented properly by viewing the tension plots of each rope in the Simscape Results Viewer and looking for unexpected negative values.

You simulate a rope with arbitrary physical properties by adjusting the block parameters. The Rope block can act as a belt, cable, or any other device that has tensile strength and transmits tension between two contact points. A contact point can be a pulley, a drum, or an ideal source.

The block is useful for modeling stationary or travelling pulley networks. You can drive the Rope block with sources like the Ideal Translational Velocity Source block, or a Rope Drum block attached to an Ideal Force Source block.

For greater fidelity or numerical stability, you can choose to model the effect of mass on the system. When you set Model mass to On, the block distributes half of the total mass to either end of the rope. Adding even a small amount of mass can improve the initialization of your model. You can also specify the initial conditions of the rope. If you choose to simulate slack, the block will stop applying stiffness and damping when the rope is no longer in tension.

Equations

The Rope block characterizes the external load at the base port as

FB(xs(t),t)=m2x¨B(t)+D(xs(t))x˙s(t)+K(xs(t))xs(t),

and at the follower port,

FF(xs(t),t)=m2x¨F(t)D(xs(t))x˙s(t)K(xs(t))xs(t),

where xs(t)=xB(t)xF(t). The forces vary as functions of time and the stretch deformation, xs. Here, K and B are functions of xs, such that K(xs)=K when there is no slack or you are not simulating slack. Otherwise, K(xs)=0 when slack occurs. That is, when xs<0. The same logic applies for B. Ignore the mass terms unless you are modeling mass.

The variables have the following meanings:

  • F is the tension force, where F=FB=FF.

  • K is the spring stiffness coefficient. K(xs)=0 when you set Rope model to Model rope slack and xs<0.

  • D is the damping coefficient.

  • m is the total mass. This is equivalent to the Mass parameter. The block distributes half of the total mass to each end.

  • xB is the position of the base node.

  • xF is the position of the follower node.

  • xs is the deformation due to stretching. This is equivalent to the Stretch variable.

  • s is the stretch velocity.

Variables

Use the Variables tab to set the priority and initial target values for the block variables before simulating. For more information, see Set Priority and Initial Target for Block Variables.

Ports

Conserving

expand all

Mechanical translational conserving port associated with the leading end of the rope.

Mechanical translational conserving port associated with the following end of the rope.

Parameters

expand all

Option to model slack. By default, the rope will transfer force while in tension or compression. When you select Model rope slack, the block stops transferring spring force when it is not in tension. The Rope block in slack is equivalent to a Translational Hard Stop block with Upper bound set to 0 and Lower bound set to -inf. For more information, see Translational Hard Stop.

Option to parameterize mass. Setting this to On will cause the block to consider the mass of the rope segment that it represents. Simulating mass can help initialize some models but can also be more computationally costly.

Mass of the rope segment that the block represents. The block distributes half of the total mass to each end of the rope.

Dependencies

To enable this parameter, set Model mass to On or set Rope model to Model slack.

Effective translational spring stiffness of the rope segment.

Effective translational damping of the rope segment. When you set Rope model to Model slack and xs<0, the block ignores damping.

Stiffness and rebound options for the slack model. The slack model is equivalent to a Translational Hard Stop block. You can choose from the following options:

  • Stiffness and damping applied smoothly through transition region, damped rebound

  • Full stiffness and damping applied at bounds, undamped rebound

  • Full stiffness and damping applied at bounds, damped rebound

Dependencies

To enable this parameter, set Rope model to Model rope slack.

Distance from full compression or full extension where the effects of stiffness and damping are partially applied. When you set Slack model to Stiffness and damping applied smoothly through transition region, damped rebound, the block will smoothly transition the onset of stiffness and damping as the spring approaches full extension or full compression.

Dependencies

To enable this parameter, set Rope model to Model rope slack.

Option to constrain the maximum tensile force in the rope.

  • No maximum tension — Tension can be arbitrarily large during simulation.

  • Specify maximum tension — Tension must remain lower than a maximum value. If the tension exceeds this value, the simulation generates an error and stops.

Tension value error target. When the tension in the rope segment exceeds this parameter, the block will generate an error.

Dependencies

To enable this parameter, set Maximum tension to Specify maximum tension.

Generate a warning when the rope segment is no longer in tension. This setting can help you discover if your system experiences instances of slack.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Introduced in R2021a