Documentation Center

  • Trial Software
  • Product Updates

Coulomb and Viscous Friction

Model discontinuity at zero, with linear gain elsewhere

Library

Discontinuities

Description

The Coulomb and Viscous Friction block models Coulomb (static) and viscous (dynamic) friction. The block models a discontinuity at zero and a linear gain otherwise.

The block output matches the MATLAB® result for:

y = sign(x) .* (Gain .* abs(x) + Offset)

where y is the output, x is the input, Gain is the signal gain for nonzero input values, and Offset is the Coulomb friction.

The block accepts one input and generates one output. The input can be a scalar, vector, or matrix with real and complex elements.

  • For a scalar input, Gain and Offset can have dimensions that differ from the input. The output is a scalar, vector, or matrix depending on the dimensions of Gain and Offset.

  • For a vector or matrix input, Gain and Offset must be scalar or have the same dimensions as the input. The output is a vector or matrix of the same dimensions as the input.

Data Type Support

The Coulomb and Viscous Friction block supports real inputs of the following data types:

  • Floating point

  • Built-in integer

  • Fixed point

The block supports complex inputs only for floating-point data types, double and single. The output uses the same data type as the input.

For more information, see Data Types Supported by Simulink in the Simulink® documentation.

Parameters and Dialog Box

Coulomb friction value

Specify the offset that applies to all input values.

Coefficient of viscous friction

Specify the signal gain for nonzero input values.

Examples

Scalar Input

Suppose that you have the following modelmodel:

In this model, block input x and Gain are scalar values, but Offset is a vector. Therefore, the block uses element-wise scalar expansion to compute the output.

Vector Input

Suppose that you have the following modelmodel:

In this model, vector dimensions for block input x and Offset are the same.

Matrix Input

Suppose that you have the following modelmodel:

In this model, matrix dimensions for block input x and Offset are the same.

Characteristics

Direct Feedthrough

Yes

Sample Time

Inherited from the driving block

Scalar Expansion

Yes

Dimensionalized

Yes

Multidimensionalized

No

Zero-Crossing Detection

Yes

Was this topic helpful?