Variable Speed Drive

You can download the final simulation files here

The block VariableSpeedDrive from Components/Library/ElectricMachines/System models a complete variable speed drive where the output torque of the drive is controllable. Only a voltage source, ground reference and a mechanical load have to be connected to set up a simulation of a complete drive system.

<br>Click to close the image

The variable speed drive is selected from components/library/electricalmachines/system and has electrical connections on the left side and a mechancialshaft on the right side. The output torque can be controlled using the system input on the right side just below the mechanical shaft.

The parameters of the variable speed drive block are mainly system parameters, allowing you a simple and flexible configuration of the drive. The main parameters that you are most likely are going to change are the maximum power the drive can deliver and the minimum input voltage that is required for the drive to operate. As soon as the input voltage of the drive drops below the parameter VdcMinimum, the drive stops operating. We leave all parameters of the drive to its default parameters, meaning we will have 40kW drive with nominal speed of 3000 rpm and an efficiency of 95%.

We select a constant DC voltage source of 600 volts from the components/circuit/sources and a quadratic mechancial load from components/libraray/mechanic/rotational. The DC voltage source is set to 600 volt (Right mouse button to change its value) and a reference ground component is selected from components/libraray/electric/ground.

The mechanical load has a quadratic torque-speed characteristic and is set to 40kW for a nominal speed of 3000rpm (ω=314 Rad/s). The intertia of the load is approximately 1Kgm2. The torque that is required to drive this quadratic torque will be \[T=\frac{P}{ω}=\frac{40000}{314}=127.5Nm\]

ParameterDefault valueSINote
Pmax40kWattMaximum power over the entire speed range
Inertia100mKgm2Inertia of the drive
Efficiency0.95[0..1]Efficiency of the total drive.
VdcMinimum500VoltMinimum DC voltage
Nnominal3000rpmNominal speed.
ConstantPowerSpeedRange3[0..10]Ratio between maximum speed at constant power and nominal speed, where maximum power is delivered.
Nmax9000rpmMaximum speed at which the drive can operate.

The variable speed drive block can deliver maximum output torque (Pmax/Nnom) from zero speed until Nnom. Between Nnom and ConstantPowerSpeedRange*Nnom, it will deliver maximum power Pmax. During this interval the output torque is limited to Pmax/ω. Beyond ConstantPowerSpeedRange*Nnom, the drive has a limited output torque which equals Pmax/ω2. If the shaft speed exceeds Nmax, the drive is unable to produce driving or brake torque.

The variable speed drive is regenerative, which means that it produce driving torque but als regenerate braking torque. It can operate in all 4 quadrants. The efficiency of the drive is both for producing drive and brake torque.

To ensure that the drive is operated from constant DC link voltage, the minimum DC link voltage has to be specified. As soon as the DC link voltage drops below this minimum value, the drive stops operating. This is to ensure that battery operated drives are not operating on very low DC link voltages when the battery is empty.

The inertia of the drive has to be chosen such, that it is in accordance with the power and speed level of the drive. The value of the inertia ranges from several hundreds of µkgm2 for small drives up to several tens of kgm2 for 500kW drives.


On the left side the electrica lterminals have to be connected to electric circuit nodes. It is advised to have the lower nod connected to a ground reference node.

The mechancial shaft on the right side is directly connected to the mechancial load. The output is a mechanical node and as such has a speed measured in [Rad/s] and delivers torque[Nm].

The output torque of the variable speed drive block is controlled by the control input (red arrow) on the right side of the block, just below the mechanical shaft. The output torque is specified and the drive tries to produce this torque within its limites. If the drive cannot deliver the requested torque because it is limited by Pmax, the maximum torque is delivered, depending on the shaft speed.

SpeedMaximum Torque

In order to drive the variable speed at its maximum power, we set the output torque to the maximum value the drive can produce, being Pmax/ωnom = 128Nm, where ωnom=2πNnom/60.

Parameters used in the simulation

In this tutorial we are mainly using the default values of the components. The DC link voltage is set to 600volts. The mechanical load of the drive has a quadratic speed-torque relation \(T=k\cdot \omega^2 \). The parameters for the mechanical load are set such that you specify the maximum power at a given speed.

Components / Circuit: V1=600 Components / Library: VARIABLESPEEDDRIVE1[electricalmachines\system\variablespeeddrive.lib](Pmax=40k, Inertia[Kgm2]=100m, Efficiency[0..1]=0.95, VdcMinimum=500, Nnominal[rpm]=3000, ConstantPowerSpeedRange[1..10]=3, Nmax=9000)
LOADQUADRATICPOWER1[mechanic\rotational\loadquadraticpower.lib](J[Kgm2]=1, Wn[Rad/s]=314.15927, Pn[Watt]=40k)

Load Characteristic

You can simulatie the difference between the produced driving torque from the variable speed drive and the load torque if an extra torque sensor is included. The measured torque from the sensor is the torque the variable speed drive can produce. The actual torque that is consumed by the load, except for the eacceleration torque, can be measured at the sensor nodes on top of the mechancial load. The difference between the two if the acceleration torque.

<br>Click to close the image

The sensor PowerTorque is selected from components/library/sensor/rotational. The first output at hte top is the speed of the shaft in [Rad/s], the second output is the speed in [rpm], the third output is the torque through the sensor in [Nm] and the last output is the delivered power in [kW]. Please note that the last output is directly in kilowatt, to ease comparison with torque and angular speed in a single scope.

The two outputs on the load component are also sensor signals, but they only measure the angular speed of the load in [Rad/s] and the driving load torque \(T=k\cdot \omega^2 \) in [Nm]. The accelation torque \[T=J \frac{d\omega}{dt}\] is thus not measured in the load component.

In this set up the total load and acceleration torque is measured by the sensor and the load torque is measred by the load component. If both are displayed in a single scope, the difference is the acceleration torque which is required to increase the speed of the drive.

To show both torque-speed relations in a single scope, the scope is configured as a XY-scope, by selecting the XY-View in the scope. (Open the scope with a right-mouse-button click and inside the scope menu select [View/XY Writer])
If the scope is set to the XY view, two inputs are shown paired at the scope in the schematic. The first(3th, 5th, etc..) input is displayed along the X-axis, the second(4th, 6th, 8th, etc...) input is shown along the Y-axis.

After runing the simulation the scope shows two traces. The red trace is the total torque produced by the variable speed drive and the green trace is the load characteristic \(T=k\cdot \omega^2 \).

Electrical and Mechanical Power

The electrical and mechanical power are rleated by the efficiency of the drive. The parameter Efficiency is set in the variable speed drive component. Default this value equals 95%. The mechanical load is set to 40kW. Therefore the required electrical power shouldequal 40kW/0.95 = 42.102 Watt.

<br>Click to close the image

Controlled Speed Drive

In the previous simulations, the speed of the drive could not be controlled, only hte ouput torque was controlled. Using the component VariableSpeedDriveControlled, the speed of the drive can be controlled using the build in PI controller. The speed of the shaft is controlled such that is equals the value at the input on the lower right side. The controlled variable speed drive is selected from components/library/electricalmachines/system

<br>Click to close the image

In the simulation, the required speed is set to 314[Rad/s]. The drive produces a driving torque such that the shaft speed (Ist-Wert) equals the input set signal(Soll-Wert). The limitation of the drive is the same as in the previous simulations, namely the output torque is limited depending on the maximum power of the drive and the parameters Nnom, Nmax and the ConstantPowerSpeedRange.

The parameters of the controlled variable speed drive equal those of the variable speed drive, but have two extra parameters, K and τ

ParameterDefault valueSINote
K1.Gain of the PI controller
tau (τ)1sTime constant of the PI controller

Profile Controlled Speed Drive

By using the controlled variable speed drive component, the shaft speed can be controlled from a given profile. Therefore we connect the speed set input to the profile component. The output of the profile component has to follow the following profile:


In the simulation the default parameters are used. The response is slow and there is overshoot.

<br>Click to close the image

Reducing Overshoot

To reduce the overshoot, the parameters of the PI controller have to be tuned. From the overshoot in the previous simulation, it seems that the gain of the PI controller jas to be increased. Increasing the gain of the PI contorler from K=1 to K=10 improves the response and reduces the overshoot.

<br>Click to close the image

The parameter K is the gain in the PI controller in the controlled variabel speed drive component and is changed into 10.

Geared Speed Drive

If the angular speed of the drive is low and the output torque too high, a gearbox can be used. The gearbox is selected as the component Gear from components/library/mechanical/rotational.

The parameters of the gearbox allow you to make any combination of reduction, by selecting the number of primairy and secundairy teeth. The speed reduction ratio is finally n=(NumbersecundairyTeeth)/(NumberPrimairyTeeth) to get ωPrimairy = n * ωSecondairy.

ParameterDefault valueSINote
NumberPrimairyTeeth100.Number of teeth on the primairy ring
NumbersecundairyTeeth200sNumber of teeth on the secundairy ring
Efficiency0.98[0..1]Efficiency of the total drive.

Using the default parameters the primairy speed is reduced by a ratio of n=2.

<br>Click to close the image


To simplify the profile for typical drive applicaiotns, you can use the block ProfilePosition from Components/Blocks/Sources. It calculates the required acceleration to create the requested speed/position profile.


timesConnect to the block Time from Components/Blocks/Sources
vmaxm/sMaximum speed
amaxm/s2Maximum acceleration
jmaxm/s3Maximum jerk
TdelaysDelay time before the profile starts
TholdsHold time, before the profile is reversed
TperiodsTime period of the complete profile.

<br>Click to close the image

The output from the PositionProfile block is acceleration. To get the speed and position profiles, two integrators from Components/Blocks/Integrator are needed. The speed profile can be used as input signal to the controlled variable speed drive component VariableSpeedDriveControlled. Since the putput is the speed in [m/s], it has to be devided by the radius of the wheel that performs the translation of the rotational movement to a tranlational movement.

If a rotation is requested, the parameters are for angular position, speed, acceleration and jerk.

timesConnect to the block Time from Components/Blocks/Sources
s(θ)RadAnuglar rotation
vmax(ωmax)Rad/sMaximum angular speed
amax(αmax)Rad/s2Maximum angular acceleration
jmaxRad/s3Maximum angular jerk
TdelaysDelay time before the profile starts
TholdsHold time, before the profile is reversed
TperiodsTime period of the complete profile.

The speed profile can be used directly as input signal to the controlled variable speed drive component VariableSpeedDriveControlled.

<br>Click to close the image

Variable speed drive with position profile

If we directly connect the speed control signal form the ProfilePosition block to the speed input signal of the variable speed drive, the response is not accurate.

<br>Click to close the image

PI tuning for position profile

The PI prameters K and τ need to be tuned to improve the response of the drive. We set K=10 and τ=100ms and see an improved response. Furthermore we limit to maximum speed of the drive to 10 Rad/s and also decreas the maximum acceleration and jerk. The number of turns is easily set using the PI block from Components/Blocks/Math/Trigonometry, as the position equals the number of turns*2π.

<br>Click to close the image

An angular position sensor from Components/Blocks/Sensor/Rotational shows us the angular position. The inertia component C_Inertia1 from Components/Circuit/Rotational shows the rotation when the animation is enabled.

© 2021 CASPOC, All rights reserved. Home   |   Terms and Conditions   |   Legal   |   Export Compliance   |   Privacy Policy   |   Site Map