Main Content

simscape.multibody.TorsionalSpringDamper Class

Namespace: simscape.multibody
Superclasses: simscape.multibody.JointForceLaw

Construct torsional spring-damper force law

Since R2022a

Description

Use an object of the simscape.multibody.TorsionalSpringDamper class to construct a torsional spring-damper force law. You can use the force law to apply a pure torque to a simscape.multibody.RevolutePrimitive object. The torque is based on the current position and velocity of the primitive

T=ks·(qq0)kdq˙,

where:

SymbolDescription
TApplied torque
q0Equilibrium position of the spring
ksSpring stiffness
kdDamping coefficient
qRevolute primitive position
q˙Revolute primitive velocity

Class Attributes

Sealed
true
ConstructOnLoad
true
RestrictsSubclassing
true

For information on class attributes, see Class Attributes.

Creation

Description

tsd = simscape.multibody.TorsionalSpringDamper constructs a torsional spring-damper force law and sets the parameters to simscape.Value objects with a value of zero.

Properties

expand all

Equilibrium position of the torsional spring, specified as a simscape.Value object that represents a scalar with a unit of angle. The scalar can be positive, negative, or zero. The torque is zero when the primitive position is at the equilibrium position.

Example: simscape.Value(10,"deg")

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Stiffness of the torsional spring, specified as a simscape.Value object that represents a scalar with a unit of torque/angle. The scalar is a measure of how hard the spring pushes the primitive position toward the equilibrium position and must be nonnegative.

Example: simscape.Value(5,"N*m/deg")

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Damping coefficient of the damper, specified as a simscape.Value object that represents a scalar with a unit of torque/angular velocity. The scalar is a measure of how hard the damper resists the motion of a primitive and must be nonnegative.

Example: simscape.Value(10,"N*m/(deg/s))

Attributes:

GetAccess
public
SetAccess
public
NonCopyable
true

Examples

collapse all

This example shows how to set the spring and damping properties for a torsional spring-damper force law. You can use this force law to specify the torque applied to corresponding joint primitives, such as a revolute primitive constructed with the simscape.multibody.RevolutePrimitive object.

Create an object that represents a torsional spring-damper law.

tsd = simscape.multibody.TorsionalSpringDamper
tsd = 
  TorsionalSpringDamper with properties:

    EquilibriumPosition: 0 (deg)
        SpringStiffness: 0 (N*m/deg)
     DampingCoefficient: 0 (N*m*s/deg)

The default values for the spring and damping properties are zero.

To set the equilibrium position and stiffness of the spring, use a simscape.Value object.

tsd.EquilibriumPosition = simscape.Value(90,"deg");
tsd.SpringStiffness = simscape.Value(0.5,"N*cm/deg")
tsd = 
  TorsionalSpringDamper with properties:

    EquilibriumPosition: 90 (deg)
        SpringStiffness: 0.5000 (N*cm/deg)
     DampingCoefficient: 0 (N*m*s/deg)

To specify the damping coefficient of the damper, use a simscape.Value object.

tsd.DampingCoefficient = simscape.Value(0.1,"N*cm/(rev/s)")
tsd = 
  TorsionalSpringDamper with properties:

    EquilibriumPosition: 90 (deg)
        SpringStiffness: 0.5000 (N*cm/deg)
     DampingCoefficient: 0.1000 (N*cm*s/rev)

Use the TorsionalSpringDamper object to specify the torque applied to a revolute joint.

joint = simscape.multibody.RevoluteJoint;
joint.Rz.ForceLaws = tsd;

Version History

Introduced in R2022a