Brushless motor model with closed-loop torque control

Rotational Actuators

The Servomotor block represents a brushless motor model with closed-loop torque control. This block abstracts the torque-speed behavior of the combined motor and motor driver in order to support system-level simulation where simulation speed is important.

The block permits only the range of torques and speeds that the torque-speed envelope defines. In the default block configuration, you specify this data in the block dialog box as a set of speed data points and corresponding maximum torque values. The following figure shows a typical torque-speed envelope for a servomotor.

Specify the torque-speed envelope for the positive torque region only, that is, quadrants 1 and 4. If you specify only for positive speeds (quadrant 1 or, equivalently, the motoring region), then the quadrant 4 torque envelope is defined by the block as the mirror image of quadrant 1. The servomotor torque-speed envelope has the same profile when the motor is operating in a reverse direction (quadrants 2 and 3).

Instead of providing tabulated torque-speed data, you can specify a maximum torque and a maximum power. This results in the torque-speed envelope profile shown below. The other three operating quadrants are constrained by this same profile.

The block models the electrical losses as the sum of four terms:

A series resistance between the DC power supply and the motor drive.

Fixed losses independent of torque and speed,

*P*_{0}. Use this to account for fixed converter losses.A torque-dependent electrical loss

*k**τ*^{2}, where*τ*is the torque and*k*is a constant. This represents ohmic losses in the copper windings.A speed-dependent electrical loss

*k*_{w}*ω*^{2}, where*ω*is the speed and*k*_{w}is a constant. This represents iron losses due to eddy currents.

The block produces a positive torque acting from the mechanical C to R ports.

The block has an optional thermal port, hidden by default. To
expose the thermal port, right-click the block in your model, and
then from the context menu select **Simscape** > **Block
choices** > **Show thermal port**.
This action displays the thermal port H on the block icon, and adds
the **Temperature Dependence** and **Thermal
Port** tabs to the block dialog box.

Use the thermal port to simulate the effects of copper resistance
losses that convert electrical power to heat. For more information
on using thermal ports and on the **Temperature Dependence** and **Thermal
Port** tab parameters, see Simulating Thermal Effects in Rotational and Translational
Actuators.

This model is based on the following assumptions:

The motor driver tracks a torque demand with a time constant

.`Tc`

Motor speed fluctuations due to mechanical load do not affect the motor torque tracking.

**Parameterize by**Select one of the following methods for block parameterization:

`Tabulated torque-speed envelope`

— Provide the vectors of rotational speeds and corresponding maximum torque values. This is the default option.`Maximum torque and power`

— Define the torque-speed envelope by providing values for maximum permissible torque and motor power.

**Vector of rotational speeds**Rotational speeds for permissible steady-state operation. This parameter is visible only if you select

`Tabulated torque-speed envelope`

for the**Parameterize by**parameter. The default value is`[0 3.75e+03 7.5e+03 8e+03]`

rpm. To avoid poor performance due to an infinite slope in the torque-speed curve, specify a vector of rotational speeds that does not contain duplicate consecutive values.**Vector of maximum torque values**Maximum torque values for permissible steady-state operation. This parameter is visible only if you select

`Tabulated torque-speed envelope`

for the**Parameterize by**parameter. These values correspond to the speeds in the**Vector of rotational speeds**parameter and define the torque-speed envelope for the motor. The default value is`[0.09 0.08 0.07 0]`

Nm.**Maximum torque**The maximum permissible motor torque. This parameter is visible only if you select

`Maximum torque and power`

for the**Parameterize by**parameter. The default value is`0.1`

Nm.**Maximum power**The maximum permissible motor power. This parameter is visible only if you select

`Maximum torque and power`

for the**Parameterize by**parameter. The default value is`30`

W.**Torque Control time constant, Tc**Time constant with which the motor driver tracks a torque demand. The default value is

`0.02`

s.

**Motor and driver overall efficiency (percent)**The block defines overall efficiency as

$$\eta =100\frac{{\tau}_{0}{\omega}_{0}}{{\tau}_{0}{\omega}_{0}+{P}_{0}+k{\tau}_{0}^{2}+{k}_{w}{\omega}^{2}}$$

where:

*τ*_{0}represents the**Torque at which efficiency is measured**.*ω*_{0}represents the**Speed at which efficiency is measured**.*P*_{0}represents the**Fixed losses independent of torque or speed**.$$k{\tau}_{0}^{2}$$ represents the torque-dependent electrical losses.

*k*_{w}*ω*^{2}represents the speed-dependent iron losses.

At initialization, the block solves the efficiency equation for

*k*. The block neglects losses associated with the rotor damping.**Speed at which efficiency is measured**Speed that the block uses to calculate torque-dependent electrical losses. The default value is

`3.75e+03`

rpm.**Torque at which efficiency is measured**Torque that the block uses to calculate torque-dependent electrical losses. The default value is

`0.08`

Nm.**Iron losses**Iron losses at the speed and torque at which efficiency is defined. The default value is

`0`

W.**Fixed losses independent of torque and speed**Fixed electrical loss associated with the driver when the motor current and torque are zero. The default value is

`0`

W.**Supply series resistance**The equivalent resistance used in series with the DC supply to model electrical losses that are proportional to the driver supply current. The block assumes that the DC supply current is approximately constant under constant load conditions. The default value is

`0`

Ω.

**Rotor inertia**Rotor resistance to change in motor motion. The default value is

`5e-06`

kg*m^{2}. The value can be zero.**Rotor damping**Rotor damping. The default value is

`1e-05`

N*m/(rad/s). The value can be zero.**Initial rotor speed**Rotor speed at the start of the simulation. The default value is

`0`

rpm.

This block has the following ports:

`+`

Positive electrical DC supply

`-`

Negative electrical DC supply

`Tr`

Reference torque demand

`w`

Mechanical speed output

`C`

Mechanical rotational conserving port

`R`

Mechanical rotational conserving port

Was this topic helpful?