## Simulate Variable Speed Motor Control

Variable speed control of AC electrical machines makes use of forced-commutated electronic switches such as IGBTs, MOSFETs, and GTOs. Asynchronous machines fed by pulse width modulation (PWM) voltage sourced converters (VSC) are nowadays gradually replacing the DC motors and thyristor bridges. With PWM, combined with modern control techniques such as field-oriented control or direct torque control, you can obtain the same flexibility in speed and torque control as with DC machines. This tutorial shows how to build a simple open loop AC drive controlling an asynchronous machine. Simscape™ Electrical™ Specialized Power Systems contains a library of prebuilt models that enable you to simulate electric drives systems without the need to build those complex systems yourself. For more information about this library, see Electric Drives Library.

The Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Machines library contains four of the most commonly used three-phase machines: simplified and complete synchronous machines, asynchronous machine, and permanent magnet synchronous machine. Each machine can be used either in generator or motor mode. Combined with linear and nonlinear elements such as transformers, lines, loads, breakers, etc., they can be used to simulate electromechanical transients in an electrical network. They can also be combined with power electronic devices to simulate drives.

The Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Power Electronics library contains blocks allowing you to simulate diodes, thyristors, GTO thyristors, MOSFETs, and IGBT devices. You could interconnect several blocks together to build a three-phase bridge. For example, an IGBT inverter bridge would require six IGBTs and six antiparallel diodes.

To facilitate implementation of bridges, the Universal Bridge block automatically performs these interconnections for you.

### Building and Simulating the PWM Motor Drive

Follow these steps to build a model of a PWM-controlled motor. #### Assembling and Configuring the Model

1. Type `power_new` at the command line to open a new model. Save the model as `power_PWMmotor`

2. Add a Universal Bridge block from the Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Power Electronics library

3. In the Parameters settings for the Universal Bridge block, set the Power Electronic device parameter to `IGBT /Diodes`.

4. Add an Asynchronous Machine SI Units block from the Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Machines library

5. Set the parameters of the Asynchronous Machine SI Units block as follows.

SettingsParameterValue
ConfigurationRotor type`Squirrel-cage`
ParametersNominal power, voltage (line-line), and frequency [ Pn(VA), Vn(Vrms), fn(Hz) ]`[3*746 220 60]`
Stator resistance and inductance [ Rs(ohm) Lls(H) ]`[1.115 0.005974]`
Rotor resistance and inductance [ Rr'(ohm) Llr'(H) ]`[1.083 0.005974]`
Mutual inductance Lm (H)`0.2037`
Inertia, friction factor, pole pairs [ J(kg.m^2) F(N.m.s) p() ]`[0.02 0.005752 2]`
[slip, th(deg), ia,ib,ic(A), pha, phb, phc(deg)]`[1 0 0 0 0 0 0 0]`

Setting the nominal power to `3*746` VA and the nominal line-to-line voltage Vn to `220` Vrms implements a 3 HP, 60 Hz machine with two pairs of poles. The nominal speed is therefore slightly lower than the synchronous speed of 1800 rpm, or ws = 188.5 rad/s.

Setting the Rotor type parameter to `Squirrel-cage`, hides output ports, a, b, and c, because these three rotor terminals are typically short-circuited together for normal motor operation.

6. Access internal signals of the Asynchronous Machine block:

1. Add a Bus Selector block from the Simulink > Signal Routing library.

2. Connect the measurement output port, m, of the machine block to the input port of the Bus Selector block.

3. Open the Block Parameters dialog box for the Bus Selector block. Double-click the block.

4. Remove the preselected signals. In the Selected signals pane. Shift select `??? signal1` and `??? signal2`, then click .

5. Select the signals of interest:

1. In the left pane of the dialog box, select Stator measurements > Stator current is_a (A). Click .

2. Select Mechanical > Rotor speed (wm). Click .

3. Select Electromagnetic torque Te (N*m). Click .

Implement the torque-speed characteristic of the motor load. Assuming a quadratic torque-speed characteristic (fan or pump type load)., the torque T is proportional to the square of the speed ω.

`$T=k×{\omega }^{2}$`

The nominal torque of the motor is

Therefore, the constant k should be

`$k=\frac{{T}_{n}}{{\omega }^{2}}=\frac{11.87}{{188.5}^{2}}=3.34×{10}^{-4}$`
1. Add an Interpreted MATLAB Function block from the Simulink > User-Defined Functions library. Double-click the function block, and enter the expression for torque as a function of speed: `3.34e-4*u^2`.

2. Connect the output of the function block to the torque input port, Tm, of the machine block.

3. Add a DC Voltage Source block from the Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Electrical Sources library. In the Parameters settings for the block, for the Amplitude (V) parameter, specify `400`.

4. Change the name of the Voltage Measurement block to `VAB`.

5. Add a Ground block from the Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Elements library. Connect the power elements and voltage sensor blocks as shown in the diagram of the `power_PWMmotor` model.

#### Controlling the Inverter Bridge with a Pulse Generator

To control the inverter bridge, use a pulse generator.

1. Add a PWM Generator (2-Level) block from the Simscape > Electrical > Specialized Power Systems > Control & Measurements > Pulse & Signal Generators library. You can configure theconverter operates in an open loop, and the three PWM modulating signals are generated internally. Connect the P output to the pulses input of the Universal Bridge block

2. Open the PWM Generator (2-Level) block dialog box and set the parameters as follows.

 Generator type `Three-phase bridge (6 pulses)` Mode of operation `Unsynchronized` Frequency `18*60Hz (1080 Hz)` Initial Phase `0 degrees` Minimum and maximum values `[-1,1]` Sampling technique `Natural` Internal generation of reference signal `selected` Modulation index `0.9` Reference signal frequency `60 Hz` Reference signal phase `0 degrees` Sample time `10e-6 s`

3. The block has been discretized so that the pulses change at multiples of the specified time step. A time step of 10 µs corresponds to +/- 0.54% of the switching period at 1080 Hz.

One common method of generating the PWM pulses uses comparison of the output voltage to synthesize (60 Hz in this case) with a triangular wave at the switching frequency (1080 Hz in this case). The line-to-line RMS output voltage is a function of the DC input voltage and of the modulation index m as given by the following equation:

`${V}_{LLrms}=\frac{m}{2}×\frac{\sqrt{3}}{\sqrt{2}}Vdc=m×0.612×VDC$`

Therefore, a DC voltage of 400 V and a modulation factor of 0.90 yield the 220 Vrms output line-to-line voltage, which is the nominal voltage of the asynchronous motor.

#### Displaying Signals and Measuring Fundamental Voltage and Current

1. You now add blocks measuring the fundamental component (60 Hz) embedded in the chopped Vab voltage and in the phase A current. Add a Fourier block from the Simscape > Electrical > Specialized Power Systems > Control & Measurements > Measurementslibrary to your model.

Open the Fourier block dialog box and check that the parameters are set as follows:

 Fundamental frequency `60 Hz` Harmonic n `1` Initial input `[0 0]` Sample time `10e-6 s`

Connect this block to the output of the Vab voltage sensor.

2. Duplicate the Fourier block. To measure the phase A current, you connect this block to the Stator current is_a output of the Bus selector block.

3. Stream these signals to the Simulation Data Inspector: the Te, ias, and w signals of the measurement output of the Asynchronous Machine block, and the VAB voltage.

#### Simulating the PWM Motor Drive with Continuous Integration Algorithm

Set the stop time to `1 s` and start the simulation. Open the Simulation Data Inspector and look at the signals.

The motor starts and reaches its steady-state speed of 181 rad/s (1728 rpm) after 0.5 s. At starting, the magnitude of the 60 Hz current reaches 90 A peak (64 A RMS) whereas its steady-state value is 10.5 A (7.4 A RMS). As expected, the magnitude of the 60 Hz voltage contained in the chopped wave stays at

Also notice strong oscillations of the electromagnetic torque at starting. If you zoom in on the torque in steady state, you should observe a noisy signal with a mean value of 11.9 N.m, corresponding to the load torque at nominal speed.

If you zoom in on the three motor currents, you can see that all the harmonics (multiples of the 1080 Hz switching frequency) are filtered by the stator inductance, so that the 60 Hz component is dominant.

PWM Motor Drive; Simulation Results for Motor Starting at Full Voltage ### Using the Multimeter Block

The Universal Bridge block is not a conventional subsystem where all the six individual switches are accessible. If you want to measure the switch voltages and currents, you must use the Multimeter block, which gives access to the bridge internal signals:

1. Open the Universal Bridge dialog box and set the Measurement parameter to `Device currents`.

2. Add a Multimeter block from the Simscape > Electrical > Specialized Power Systems > Fundamental Blocks > Measurements library Double-click the Multimeter block. A window showing the six switch currents appears.

3. Select the two currents of the bridge arm connected to phase A. They are identified as

 iSw1 `Universal Bridge` iSw2 `Universal Bridge`

4. Click Close. The number of signals (2) is displayed in the Multimeter icon.

5. Send the signal from the Multimeter block to the Simulation Data Inspector.

6. Restart the simulation. The waveforms obtained for the first 20 ms are shown in this plot.

Currents in IGBT/Diode Switches 1 and 2 As expected, the currents in switches 1 and 2 are complementary. A positive current indicates a current flowing in the IGBT, whereas a negative current indicates a current in the antiparallel diode.

### Note

Multimeter block use is not limited to the Universal Bridge block. Many blocks of the Electrical Sources and Elements libraries have a Measurement parameter where you can select voltages, currents, or saturable transformer fluxes. A judicious use of the Multimeter block reduces the number of current and voltage sensors in your circuit, making it easier to follow.

### Discretizing the PWM Motor Drive

You might have noticed that the simulation using a variable-step integration algorithm is relatively long. Depending on your computer, it might take tens of seconds to simulate one second. To shorten the simulation time, you can discretize your circuit and simulate at fixed simulation time steps.

In the Simulation tab, click Model Settings. Select Solver. Under Solver selection, select the `Fixed-step` and ```Discrete (no continuous states)``` options. Open the powergui block and set Simulation type to `Discrete`. Set the Sample time to `10e-6` s. The power system, including the asynchronous machine, is now discretized at a 10 µs sample time.

Start the simulation. Observe that the simulation is now faster than with the continuous system. Results compare well with the continuous system.

### Performing Harmonic Analysis Using the FFT Tool

The two Fourier blocks allow computation of the fundamental component of voltage and current while simulation is running. If you would like to observe harmonic components also you would need a Fourier block for each harmonic. This approach is not convenient.

Add a Scope block to your model and connect it at the output of the VAB Voltage Measurement block. In the Scope block, log data to workspace as a structure with time. Start the simulation. Now use the FFT tool of powergui to display the frequency spectrum of voltage and current waveforms.

When the simulation is complete, open the powergui and select FFT Analysis. A new window opens. Set the parameters specifying the analyzed signal, the time window, and the frequency range as follows:

 Name `ScopeData` Input `input 1` Signal number `1` Start time `0.7 s` Number of cycles `2` Display `FFT window` Fundamental frequency `60 Hz` Max frequency `5000 Hz` Frequency axis `Harmonic order` Display style `Bar (relative to Fund or DC)`

The analyzed signal is displayed in the upper window. Click Display. The frequency spectrum is displayed in the bottom window, as shown in the next figure.

FFT Analysis of the Motor Line-to-Line Voltage The fundamental component and total harmonic distortion (THD) of the Vab voltage are displayed above the spectrum window. The magnitude of the fundamental of the inverter voltage (312 V) compares well with the theoretical value (311 V for m=0.9).

Harmonics are displayed in percent of the fundamental component. As expected, harmonics occur around multiples of carrier frequency (n*18 +- k). Highest harmonics (30%) appear at 16th harmonic (18 - 2) and 20th harmonic (18 + 2).
{"ft_lang_label":"__label__en","ft_lang_prob":0.80159825,"math_prob":0.8826776,"size":12254,"snap":"2020-34-2020-40","text_gpt3_token_len":2694,"char_repetition_ratio":0.1357551,"word_repetition_ratio":0.0598074,"special_character_ratio":0.2145422,"punctuation_ratio":0.10468821,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.96822804,"pos_list":[0,1,2,3,4,5,6,7,8],"im_url_duplicate_count":[null,2,null,2,null,2,null,2,null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2020-08-05T10:45:26Z\",\"WARC-Record-ID\":\"<urn:uuid:b8f00839-26f7-450a-9b1d-9f36a345707e>\",\"Content-Length\":\"94530\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:12f5e417-d01c-41b6-a52e-8f29acbdf051>\",\"WARC-Concurrent-To\":\"<urn:uuid:b870d1bc-7fdc-433d-a975-52f2e1d14c7a>\",\"WARC-IP-Address\":\"23.66.56.59\",\"WARC-Target-URI\":\"https://it.mathworks.com/help/physmod/sps/powersys/ug/simulating-variable-speed-motor-control.html\",\"WARC-Payload-Digest\":\"sha1:KFDO4PI4JB7PS3MUUXW7TTR2ZZPNQ37V\",\"WARC-Block-Digest\":\"sha1:6OJDZIMNAM5WP5LI72PQMRRW45GJTKKD\",\"WARC-Identified-Payload-Type\":\"text/html\",\"warc_filename\":\"/cc_download/warc_2020/CC-MAIN-2020-34/CC-MAIN-2020-34_segments_1596439735939.26_warc_CC-MAIN-20200805094821-20200805124821-00382.warc.gz\"}"}