| Products & Services | Industries | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → SimHydraulics |
| Contents | Index |
| Learn more about SimHydraulics |
Pumps and Motors

The Variable-Displacement Motor block represents a variable-displacement reversible motor of any type as a data-sheet-based model. The motor displacement is controlled by the signal provided through the physical signal port C. The motor efficiency is determined based on volumetric and total efficiencies, nominal pressure, and nominal angular velocity. All these parameters are generally provided in the data sheets or catalogs.
Two block parameterization options are available:
By the motor maximum displacement and stroke — The displacement is assumed to be linearly dependent on the control member position.
By table-specified relationship between the control member position and the motor displacement — The displacement is determined by one-dimensional table lookup based on the control member position. You have a choice of three interpolation methods and two extrapolation methods.
The variable-displacement motor is represented with the following equations:
![]()
![]()

![]()
![]()
![]()
where
| q | Motor flow rate |
| p | Pressure differential across the motor |
| pA,pB | Gauge pressures at the block terminals |
| D | Motor instantaneous displacement |
| Dmax | Motor maximum displacement |
| x | Control member displacement |
| xmax | Control member maximum stroke |
| T | Torque at the motor output shaft |
| ω | Output shaft angular velocity |
| kleak | Leakage coefficient |
| kHP | Hagen-Poiseuille coefficient |
| ηV | Motor volumetric efficiency |
| ηmech | Motor mechanical efficiency |
| ν | Fluid kinematic viscosity |
| ρ | Fluid density |
| pnom | Motor nominal pressure |
| ωnom | Motor nominal angular velocity |
| νnom | Nominal fluid kinematic viscosity |
The leakage flow is determined based on the assumption that it is linearly proportional to the pressure differential across the pump and can be computed by using the Hagen-Poiseuille formula
![]()
where
| qleak | Leakage flow |
| d, l | Geometric parameters of the leakage path |
| μ | Fluid dynamic viscosity, μ = ν.ρ |
The leakage flow at p = pnom and ν = νnom can be determined from the catalog data
![]()
which provides the formula to determine the Hagen-Poiseuille coefficient
![]()
The motor mechanical efficiency is not usually available in data sheets, therefore it is determined from the total and volumetric efficiencies by assuming that the hydraulic efficiency is negligibly small
![]()
The block positive direction is from port A to port B. This means that the motor rotates its shaft in the globally assigned positive direction if the fluid flows from port A to port B and a positive signal is applied to port C.
The model is based on the following assumptions:
Fluid compressibility is neglected.
No loading on the motor shaft, such as inertia, friction, spring, and so on, is considered.
Leakage inside the motor is assumed to be linearly proportional to its pressure differential.


Select one of the following block parameterization options:
By maximum displacement and control member stroke — Provide values for maximum motor displacement and maximum stroke. The displacement is assumed to be linearly dependent on the control member position. This is the default method.
By displacement vs. control member position table — Provide tabulated data of motor displacements and control member positions. The displacement is determined by one-dimensional table lookup. You have a choice of three interpolation methods and two extrapolation methods.
Motor maximum displacement. The default value is 5e-6 m^3/rad. This parameter is used if Model parameterization is set to By maximum displacement and control member stroke.
Maximum control member stroke. The default value is 0.005 m. This parameter is used if Model parameterization is set to By maximum displacement and control member stroke.
Specify the vector of input values for control member position as a tabulated 1-by-m array. The input values vector must be strictly monotonically increasing. The values can be nonuniformly spaced. You must provide at least three values. The default values, in meters, are [-0.0075 -0.0025 0 0.0025 0.0075]. This parameter is used if Model parameterization is set to By displacement vs. control member position table.
Specify the vector of output values for the motor displacement as a tabulated 1-by-m array. The motor displacements vector must be the same size as the control member positions vector. The default values, in m^3/rad, are [-5e-06 -3e-06 0 3e-06 5e-06]. This parameter is used if Model parameterization is set to By displacement vs. control member position table.
Select one of the following interpolation methods for approximating the output value when the input value is between two consecutive grid points:
Linear — Uses a linear interpolation function.
Cubic — Uses the Piecewise Cubic Hermite Interpolation Polinomial (PCHIP).
Spline — Uses the cubic spline interpolation algorithm.
For more information on interpolation algorithms, see the PS Lookup Table (1D) block reference page. This parameter is used if Model parameterization is set to By displacement vs. control member position table.
Select one of the following extrapolation methods for determining the output value when the input value is outside the range specified in the argument list:
From last 2 points — Extrapolates using the linear method (regardless of the interpolation method specified), based on the last two output values at the appropriate end of the range. That is, the block uses the first and second specified output values if the input value is below the specified range, and the two last specified output values if the input value is above the specified range.
From last point — Uses the last specified output value at the appropriate end of the range. That is, the block uses the last specified output value for all input values greater than the last specified input argument, and the first specified output value for all input values less than the first specified input argument.
For more information on extrapolation algorithms, see the PS Lookup Table (1D) block reference page. This parameter is used if Model parameterization is set to By displacement vs. control member position table.
Motor volumetric efficiency specified at nominal pressure, angular velocity, and fluid viscosity. The default value is 0.85.
Motor total efficiency, which is determined as a ratio between the hydraulic power at the motor inlet and mechanical power at the output shaft at nominal pressure, angular velocity, and fluid viscosity. The default value is 0.75.
Pressure differential across the motor, at which both the volumetric and total efficiencies are specified. The default value is 1e7 Pa.
Angular velocity of the output shaft, at which both the volumetric and total efficiencies are specified. The default value is 188 rad/s.
Working fluid kinematic viscosity, at which both the volumetric and total efficiencies are specified. The default value is 18 cSt.
The parameter is determined by the type of working fluid selected for the system under design. Use the Hydraulic Fluid block or the Custom Hydraulic Fluid block to specify the fluid properties.
The block has the following ports:
Hydraulic conserving port associated with the motor inlet.
Hydraulic conserving port associated with the motor outlet.
Physical signal port that controls motor displacement.
Mechanical rotational conserving port associated with the motor output shaft.
![]() | Variable-Displacement Hydraulic Machine | Variable-Displacement Pressure-Compensated Pump | ![]() |

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |