PSIM User Manual
PSIM User Manual
PSIM User Manual
Chapter : -7
Altair® PSIMTM User’s Guide
Version 2024.1
August 2024
Disclaimer
Altair Engineering Inc. (“Altair”) makes no representation or warranty with respect to the adequacy or accuracy of
this documentation or the software which it describes. In no event will Altair or its direct or indirect suppliers be
liable for any damages whatsoever including, but not limited to, direct, indirect, incidental, or consequential
damages of any character including, without limitation, loss of business profits, data, business information, or any
and all other commercial damages or losses, or for any damages in excess of the list price for the licence to the
software and documentation.
-6 Chapter :
Contents
1 General Information
1.1 Introduction 1
1.2 Circuit Structure 5
1.3 Software/Hardware Requirement 5
1.4 Installing the Program 5
1.5 Simulating a Circuit 6
1.6 Simulation Control 6
1.7 Component Parameter Specification and Format 10
Chapter :
1
3.7 Analysis Menu 55
3.8 Label Menu 55
3.9 Option Menu 56
3.10 Exporting Data 57
2
4.5.4 dv/dt Block 106
4.5.5 Relays 106
4.6 Motor Drive Module 108
4.6.1 Reference Direction of Mechanical Systems 108
4.6.2 Induction Machines 110
4.6.3 DC Machine 115
4.6.4 Brushless DC Machine 116
4.6.5 Synchronous Machine with External Excitation 121
4.6.6 Permanent Magnet Synchronous Machine (PMSM) 123
4.6.7 Switched Reluctance Machine (SRM) 131
4.6.8 Motor Control Blocks 134
4.7 MagCoupler Module 138
4.7.1 MagCoupler-DL Block 138
4.7.2 MagCoupler Block 139
4.8 MagCoupler-RT Module 142
4.8.1 General RT Block 142
4.8.2 Other RT Blocks 143
4.9 Mechanical Elements and Sensors 147
4.9.1 Mechanical Loads 147
4.9.2 Mechanical-Electrical Interface Block 149
4.9.3 Mechanical Coupling Block 150
4.9.4 Gear Box 150
4.9.5 Speed/Torque Sensors 151
4.9.6 Position Sensors 153
4.10 Thermal Module 156
4.10.1 Diode Thermal Model 156
4.10.2 MOSFET Thermal Model 160
4.10.3 IGBT Thermal Model 166
4.10.4 RB-IGBT Thermal Model 170
4.10.5 Inductor Thermal Model 173
4.10.6 Device Database Editor 175
4.10.7 Adding a Switching Device to Database 176
4.11 Renewable Energy Module 181
4.11.1 Solar Modules 181
4.11.2 Wind Turbine 187
4.11.3 Battery Models 189
4.11.4 Ultracapacitor Model 195
4.12 EMI Design Suite 196
4.12.1 EMI Filter 196
4.12.2 LISNs 196
4.12.3 Signal Analyzers 197
4.12.4 Common-Mode Capacitor Block 197
4.12.5 Ground Plane 198
3
5.2 Filters 206
5.3 Computational Function Blocks 207
5.3.1 Multiplier and Divider 207
5.3.2 Trigonometric Functions 208
5.3.3 Exponential/Power/Logarithmic Functions 208
5.3.4 Square-Root 209
5.3.5 RMS (Root-Mean-Square) 209
5.3.6 Absolute and Sign Functions 209
5.3.7 Maximum/Minimum Function 209
5.3.8 MOD Function 210
5.4 Other Function Blocks 210
5.4.1 Sampling/Hold Block 210
5.4.2 Lookup Table ((Trapezoidal and Square) Blocks 211
5.4.3 Fast Fourier Transform 211
5.4.4 THD Block 213
5.4.5 S-Domain Transfer Function 214
5.4.6 Time Delay Blocks 215
5.4.7 Round-Off Block 215
5.4.8 dv/dt Limiter 216
5.4.9 Multiplexers 216
5.4.10 Space Vector PWM 217
5.4.11 Discontinuous PWM 218
5.4.12 Embedded Software Block 219
5.5 Logic Components 219
5.5.1 Logic Gates 219
5.5.2 Set-Reset Flip-Flop 219
5.5.3 J-K Flip-Flops 220
5.5.4 D Flip-Flops 220
5.5.5 Monostable Multivibrator 221
5.5.6 Time Delay (Logic) 221
5.5.7 Bit Shift 222
5.5.8 Pulse Width Counter 222
5.5.9 Up/Down Counter 222
5.5.10 A/D and D/A Converters 223
5.6 Digital Control Module 225
5.6.1 Motor Control Blocks 225
5.6.2 PLL Blocks 228
5.6.3 Zero-Order Hold 230
5.6.4 Unit Delay 231
5.6.5 z-Domain Transfer Function Block 231
5.6.6 Quantization Blocks 238
5.6.7 Circular Buffers 240
5.6.8 Convolution Block 240
5.6.9 Memory Read Block 241
5.6.10 Data Array 241
5.6.11 Stack 242
5.6.12 Multi-Rate Sampling System 242
5.7 SimCoupler and FMI Module 243
5.7.1 Set-up in PSIM and Simulink 243
5.7.2 Solver Type and Time Step Selection in Simulink 245
5.7.3 Passing Parameters from Simulink to PSIM 247
4
5.8 PIL Module 248
5.8.1 PIL Block 248
5.8.2 PIL Block (InstaSPIN F2806x) 249
5.8.3 InstaSPIN Set Block (F2806x) 249
5.9 Motor Control / HEV Design Suite Blocks 250
5.9.1 Speed Control (IPM) 250
5.9.2 Speed Control (SPM) 251
5.9.3 Speed Control (nonlinear IPM) 252
5.9.4 Torque Control (SPM) 254
5.9.5 Torque Control (nonlinear IPM) 255
5.9.6 Voltage Control (PMSM) 256
5.9.7 DC-DC Charging Control 256
5.9.8 DC-DC Discharging Control 257
5.9.9 DC-DC Regeneration Control 258
5.10 PLL Blocks 259
5.10.1 1-ph PLL 259
5.10.2 3-ph PLL 260
6 Other Components
6.1 Switch Controllers 261
6.1.1 On-Off Switch Controller 261
6.1.2 On-Off Switch Controller (Multi-Level) 261
6.1.3 Alpha Controller 262
6.1.4 PWM Lookup Table Controller 263
6.2 PWM Blocks 264
6.2.1 Carrier PWM Controller 264
6.2.2 Square Wave Controller (Variable Frequency) 265
6.2.3 Carrier PWM Controller (z-domain) 266
6.2.4 Square Wave Controller (z-domain) 267
6.2.5 Phase-Shift Controllers (z-domain) 267
6.2.6 Space Vector PWM (2-level) (z-domain) 268
6.2.7 Space Vector PWM (3-level) (z-domain) 269
6.3 Sensors 269
6.4 Probes, Meters, and Scopes
6.4.1 Probes and Meters 270
6.4.2 Voltage/Current Scopes 272
6.5 Function Blocks 274
6.5.1 Control-Power Interface Block 274
6.5.2 Transformation Blocks 275
6.5.3 Lookup Tables 278
6.5.4 Math Function Blocks 282
6.5.5 DLL Blocks 283
6.5.6 C Block 284
6.5.7 Simplified C Block 286
6.6 IC Models 287
6.6.1 PWM IC 287
6.6.2 Driver IC 289
6.6.3 555 Timer 289
6.7 Initial Values 289
6.8 Parameter File 290
5
6.9 AC Analysis 293
6.9.1 AC Sweep Probes 294
6.9.2 AC Sweep 295
6.9.3 AC Sweep (1) 295
6.9.4 AC Sweep (2) 296
6.9.5 AC Sweep Multisine 297
6.10 Parameter Sweep 297
7 Sources
7.1 Constant 299
7.2 Time 299
7.3 Ground 299
7.4 Voltage and Current Sources 300
7.4.1 DC Source 300
7.4.2 Sinusoidal Source 300
7.4.3 Square-Wave Source 301
7.4.4 Triangular/Sawtooth Sources 302
7.4.5 Step Sources 303
7.4.6 Piecewise Linear Source 304
7.4.7 Random Source 305
7.4.8 Math Function Source 305
7.4.9 Grounded Source Multiple 305
7.4.10 Voltage/Current-Controlled Sources 306
7.4.11 Nonlinear Voltage-Controlled Sources 307
6
1
General Information
1.1 Introduction
Altair® PSIMTM 1 is a simulation software specifically designed for power electronics, motor drives, and
power conversion systems. With fast simulation speed and friendly user interface, PSIM provides a powerful
simulation environment to meed your simulation and development needs.
The PSIM simulation environment consists of the schematic program PSIM, the simulation engine, and the
waveform processing program SIMVIEW2. The simulation process is illustrated as follows.
Motor Drive: Built-in electric machine and mechanical load models for motor drive system
studies.
Digital Control: Discrete elements such as zero-order hold, z-domain transfer function blocks,
quantization blocks, digital filters, for digital control system analysis.
Thermal: Elements and functions to calculate semiconductor device losses and inductor
losses.
EMI Design Suite: Pre-built templates for EMI filter design.
MagCoupler: Interface for co-simulation between PSIM and the electromagnetic field
analysis software JMAG5.
MagCoupler-RT: Link between PSIM and JMAG-RT5 data files.
ModCoupler6: Interface for co-simulation between PSIM and ModelSim7. There are two
versions of the interface: ModCoupler-VHDL that supports VHDL code, and
ModCoupler-Verilog that supports Verilog code.
SimCoupler: Interface for co-simulation between PSIM and Matlab/Simulink3.
FMI: Interface for co-simulation between PSIM and other software that supports the
FMI standard.
SPICE: Functions to link to LTspice4.
F2833x Target: Library elements for automatic code generation for TI F2833x series DSP.
F2803x Target: Library elements for automatic code generation for TI F2803x series DSP.
F2802x Target: Library elements for automatic code generation for TI F2802x series DSP.
F2806x Target: Library elements for automatic code generation for TI F2806x series DSP.
F2837x Target: Library elements for automatic code generation for TI F2837x series DSP.
F28004x Target: Library elements for automatic code generation for TI F28004x series DSP.
PE-Expert4 Target: Library elements for automatic code generation for Myway PE-Expert4
hardware platform.
PIL: Interface between PSIM and TI DSP hardware boards for Processor-In-the-
Loop (PIL) simulation. It also includes the function block to support TI’s
InstaSPIN motor control algorithm.
Also, PSIM links with the software SmartCtrl5 for control loop design. SmartCtrl is designed specifically for
power converter applications. For more information, refer to "SmartCtrl User’s Guide".
PSIM also provides the function to export the power stage to Typhoon HIL’s real-time simulator for Hardware-
In-the-Loop HIL simulation. For more information, refer to relevant documents.
With these product lineup, Altair provides a complete platform from design to simulation, to hardware
implementation.
The overall environment is shown in the figure below.
3rd-party Matlab/
Software LTspice JMAG
Simulink
This manual covers PSIM and some add-on Modules. Other add-on modules are covered by separate
documents, as listed below:
- EMI Design Suite:
Tutorial - EMI Design Suite.pdf
- HEV Design Suite:
Tutorial - HEV Design Suite.pdf
- Motor Control Design Suite:
Tutorial - Motor Control Design Suite.pdf
Tutorial - PMSM drive with sensorless control.pdf
- Power Supply Design Suite:
Tutorial - Resonant LLC Converter Design Using Power Supply Design Suite.pdf
- Motor identification, InstaSPIN, and sensorless motor drives:
Tutorial - Motor parameter identification with PSIM.pdf
Tutorial - Simulation and code generation of TI InstaSPIN using DRV8305 EVM.pdf
- SPICE Module:
SPICE User Manual.pdf
- SimCoder and all the hardware Targets:
SimCoder User Manual.pdf
- PIL Module:
Tutorial - Processor-In-the-Loop Simulation.pdf
The organization of this manual is as follows:
Power Circuit
Switch
Sensors
Controllers
Control Circuit
The power circuit consists of switching devices, RLC branches, transformers, and coupled inductors. The
control circuit is represented in block diagram. Components in s-domain and z-domain, logic components (such
as logic gates and flip flops), and nonlinear components (such as multipliers and dividers) are used in the
control circuit. Sensors are used to measure power circuit quantities and pass them to the control circuit. Gating
signals are then generated from the control circuit and sent back to the power circuit through switch controllers
to control switches.
Solver Type Fixed-step: Fixed step size is used throughout whole simulation.
Variable-step (dual): Two step sizes are used. The bigger step size is used most of the
time while the smaller step size is used when switches change position or if there are
narrow pulses.
Time Step Simulation time step, in sec.
Time Step Ratio The ratio between the Time Step (the bigger step size) and the smaller step size.
Total Time Total simulation time, in sec.
Free Run When the Free Run checkbox is not checked, the simulation will run up to the Total Time
(checkbox) and then stop. But when it is checked, the simulation will run in the free-run mode and it
will keep on running until manually stopped.
In the free-run mode, voltage/current scopes can be used to monitor and display voltages
and currents in the middle of the simulation.
Print Time Time from which simulation results are saved to the output file. No output is saved
before this time.
Print Step Print step. If it is set to 1, for example, every data point will be saved to the output file. If
it is set to 10, only one out of 10 data points will be saved. This helps to reduce the
output file size.
Load Flag Flag for the LOAD function. If the flag is 1, the previous simulation values (saved by
setting the Save Flag) will be loaded from a file (with the “.ssf” extension) as the initial
conditions.
Save Flag Flag for the SAVE function. If the flag is 1, values at the end of the current simulation
will be saved to a file with the “.ssf” extension.
R_switch_on Default value of the switch on-state resistance, in Ohm.
R_switch_off Default value of the switch off-state resistance, in Ohm.
In PSIM, the simulation time step is fixed throughout the simulation. In order to ensure accurate simulation
results, the time step must be chosen properly. The factors that limit the time step in a circuit include the
switching period, widths of pulses or waveforms, and intervals of transients. It is recommended that the time
step should be at least one magnitude smaller than the smallest of the above.
Also, an interpolation technique is implemented which will calculate the switching instants more accurately.
With this technique, the error due to the misalignment of switching instants and discrete simulation points is
significantly reduced. It is possible to simulate with a large time step while still maintaining accurate results.
The allowable maximum time step is automatically calculated in PSIM. It is compared with the time step set by
the user, and the smaller value of the two will be used in the simulation.
With the SAVE and LOAD functions, the circuit voltages, currents and other quantities can be saved at the end
of a simulation session, and loaded back as the initial conditions for the next simulation session. This provides
the flexibility of running a long simulation in several shorter stages with different time steps and parameters.
Components values and parameters of the circuit can be changed from one simulation session to the other. The
circuit topology, however, must remain the same.
For AC Analysis:
Sweep Type The sweep type can be: Octave, Decade, Linear, or List.
Parameters for the Octave and Decade options:
Start Freq: Starting frequency, in Hz.
End Freq: Final frequency, in Hz.
Points/oct (or dec): Number of points per octave or decade.
Parameters for the Linear option:
Start Freq: Starting frequency, in Hz.
End Freq: Final frequency, in Hz.
Points: Total number of points.
Parameters for the List option:
Freq List: A list of frequencies to be analyzed, in Hz. Values are separated by space.
For DC Analysis:
If the Enable box in the Step Run option is checked, SPICE will perform parameter sweep. The parameter
definition is as below.
Parameter Name of the parameter for Step Run. If the step run is NOT for a voltage or a current
source, or temperature, the box "PARAM" must be checked.
Sweep Type The sweep type can be: Octave, Decade, Linear, or List.
Parameters for the Octave and Decade options:
Start: Starting value.
End: Final value.
Points/oct (or dec): Number of points per octave or decade.
Operating Point If the Enable box is checked, SPICE simulation will determine the dc operating point of
a circuit with inductors shorted and capacitors opened.
Error Tolerance If the Enabled box is checked, error tolerances for SPICE simulation can be changed.
Option Otherwise, default values will be used. Error tolerances are:
RELTOL: Relative tolerance
TRTOL: Transient tolerance
VNTOL: Absolute voltage error tolerance
ABSTOL: Absolute current error tolerance
CHGTOL: Charge tolerance
The parameters in the Parameters tab are used in the simulation. The information in the Other Info tab, on the
other hand, is not used in the simulation. It is for reporting purposes only and will appear in the parts list in
View >> Element List in PSIM. Information such as device rating, manufacturer, and part number can be
stored under the Other Info tab.
The component color can be set in the Color tab.
If a box under Display is checked, this parameter will be displayed on the schematic screen.
Set as Default Value Set the default value for all future elements of this type.
Display By Default Display this parameter for all future elements of this type.
Parameters under the Parameters tab can be a numerical value or a mathematical expression. A resistance, for
example, can be specified in one of the following ways:
12.5
12.5k
12.5Ohm
12.5kOhm
25./2.Ohm R1+R2
R1*0.5+(Vo+0.7)/Io
where R1, R2, Vo, and Io are symbols defined either in a parameter file (see Section 4.1), or in a main circuit if
this resistor is in a subcircuit (see Section 6.3.4.1).
Power-of-ten suffix letters are allowed in PSIM. The following suffix letters are supported:
G 109
M 106
k or K 103
m 10-3
u 10-6
n 10-9
p 10-12
A mathematical expression can contain brackets and is not case sensitive. The following mathematical
functions are allowed:
+ addition
- subtraction
* multiplication
/ division
^ to the power of [i.e. 2^3 = 2*2*2]
** to the power of [i.e. 2**3 = 2*2*2]
sin(x) sine
cos(x) cosine
tan(x) tangent
asin(x) arcsine
arcsin(x) arcsine
acos(x) arccosine
arccos(x) arccosine
atan(x) arctangent
arctan(x) arctangent
atan2(y,x) arctangent with x and y defined
sinh(x) hyperbolic sine
cosh(x) hyperbolic cosine
10 Chapter 1: General Information
tanh(x) hyperbolic tangent
pow(x,y) x to the power of y
pwr(x,y) absolute value of x to the power of y, i.e. abs(x)^y
sqr(x) square of x, i.e. x^2
sqrt(x) square root
hypot(x1,x2,x3...) square root of x1 squared plus x2 squared, plus x3 squared, etc., i.e. sqrt(x1^2 +
x2^2 + x3^2 + ...)
hypot(x_array) The input is an array, and it returns the square root of the sum of the array cells
squared, i.e. sqrt(x_array[0]^2 + x_array[1]^2 + x_array[2]^2 + ...)
exp(x) base-e exponential of x, i.e. e^x
ln(x) (or log(x)) natural logarithm of x (base e)
log10(x) common logarithm of x (base 10)
abs(x) absolute
sign(x) sign function that returns 1 if x > 0, -1 if x < 0, and 0 if x = 0
ceil(x) function that returns the integer larger than x
floor(x) function that returns the integer smaller than x
min(x1,x2,x3...) Minimum value of x1, x2, x3, etc. (no limit on the number of inputs)
min(x_array) The input is an array, and it returns the minimum value of the array cells
max(x1,x2,x3...) Maximum value of x1, x2, x3, etc. (no limit on the number of inputs)
max(x_array) The input is an array, and it returns the maximum value of the array cells
PSIM’s schematic program provides interactive and user-friendly interface for circuit schematic entry and
editing. The PSIM user interface consists of an integrated set of windows, tools, menus, toolbars, and other
elements that allow you to create, simulate, and refine your circuits in one place.
By default, the menu bar and the standard toolbar appear on top of the window, while the frequently used
element bar appears at the bottom, and the Project View is on the left hand side.
On the right hand side is the Design window. This is a graphic editor where users can build and editor their
simulation circuit schematics. User may arrange schematics in the Design window in tiles (as shown above), or
in tabs (as shown below).
Project
Study
Schematic
Main circuit
Subcircuit
Waveforms
In this example, the project is the buck converter. It contains one study. The main circuit is "buck -
main.psimsch", and the subcircuit is "buck - sub.psimsch". There are two simulation waveforms: I(S1.L1) and
Vo.
In this example, we will create a new study called "buck - main1" and create a copy of the subcircuit. After
confirmation, the new study is created as shown below. The new files "buck - main1.psimsch" and "buck -
sub.psimsch" are placed in a newly created folder "buck - main\buck - main1".
Existing Study
New Study
To add an existing schematic file into the project as another study, right click on the project "buck - main" and
select Add Study. To save the project, right click on the project "buck - main" and select Save Project.
14 Chapter 2: Circuit Schematic Design
2.2 Creating a Circuit
The basic and most commonly used functions provided for circuit creation are:
Get Element There are several ways to get an element from the element library. One is to use the pull-
down menu. Go to the Elements menu and go into the submenu and highlight the
element to be selected.
The most often used elements can be selected from the Element Toolbar. It is located at
the bottom of the PSIM screen by default.
Another way is to use the Library Browser, as shown below. The Library Browser
provides a convenient way of navigating through the library. To launch the Library
Browser, go to View >> Library Browser.
Element Menu
Place Once an element is selected from the menu, the image of the element will appear on the
screen and move with the mouse. Click the left button of the mouse to place the element at
desired location on schematic.
Select Element(s) To select an existing element on a schematic, click on the element. A rectangle will
appear around the element. To select a section of a circuit, keep the left button of a mouse
pressed and drag the mouse until the rectangle covers the selected area.
Rotate Before the element is placed, right click to rotate the element. After an element is
selected, select Edit >> Rotate to rotate the element.
Wire To connect a wire between two nodes, select Edit >> Wire. The image of a pen will
appear on the screen. To draw a wire, keep the left button of the mouse pressed and drag
the mouse. A wire always starts from and end at a grid intersection.
For easy inspection, a floating node is displayed as a circle, and a junction node is
displayed as a solid dot.
Label If two or more nodes are connected to the same label, they are connected. It is equivalent
as though they were connected by wire. Using labels will reduce the cross-wiring and
improve the schematic layout.
The text of a label can be moved. To select the text, left click on the label, then press the
Tab key.
Assign To assign the parameters of an element, double click on the element. A dialog box will
appear. Specify the values and hit the <Return> key or click on OK.
The diamonds on the four sides represent the connection nodes and the positions of the subcircuit.
They correspond to the connection nodes of the subcircuit block on the right. There are no diamonds
at the four corners since connections to the corners are not permitted.
When a diamond is selected, it is colored red. By default, the left diamond at the top is selected and
marked with red color. Click on the desired diamond to select and to specify the port name.
In this example, in the main circuit “chop.sch”, there are four linking nodes, two on the left side and
two on the right side of the subcircuit block. The relative position of the nodes are that the upper two
nodes are 1 division below the top and the lower two nodes are 1 division above the bottom.
The creation of the subcircuit is now complete. Save the subcircuit, and go back to the main circuit.
File: sub.sch
File: main.sch
In the window, the diamonds marked red are the connection nodes of the subcircuit block, in exactly
the same positions as appearing in the main circuit.
- Use the drawing tool to create/edit the image for the subcircuit block. If the drawing tool is not
already displayed, go to the View menu and check Drawing Tools. Click on Zoom In and Zoom
Out icons on the toolbar to adjust the size of the image working area.
After the image is created, the pop-out window will appear as follows.
- Go back to the subcircuit window (“sub.sch” in this case), and save the subcircuit. The new
subcircuit block image should appear in the main circuit.
The dialog window of the Runtime Graphs function has two tabs: Standard and Vector. The Standard tab lists
the variables for time-domain waveform display. The Vector tab defines vectors for vector plot. The real and
imaginary parts of a vector comes from the same variable list as in the Standard tab.
To view the simulation waveforms of output variables in the middle of simulation, one can either go
to Simulate >> Runtime Graphs and select the variables, or right click on top of a voltage probe or current
probe and select Runtime Graph Window from the menu.
A runtime graph display the waveform in its entirety, from the beginning to the final study time. Because
of this, the runtime graphs are disabled in the free-run mode as the final study time is undetermined.
In the free-run mode, the majority of the element parameters can be changed during runtime in the middle of the
simulation. This makes it possible to tune a circuit while inspecting key waveforms using voltage/current
scopes, until desired performance is achieved.
To illustrate how to run a simulation in the free-run mode, a buck converter circuit shown below is used as
an example. The circuit on the left was originally set up for the one-time simulation, with the total simulation
time set to a specific value.
Gain of the
PI controller
Current scope
Voltage scope
The General tab contains these sections: Editing, Text Font, Printing, and Simulation:
Maximum number of It defines the maximum number of points that an oscilloscope will plot.
points for oscilloscope Increase this number to display waveforms for a longer time interval.
The Advanced tab contains these sections: Updates, Backup, Idle Time, Hardware Code Generation, SPICE,
Alternate PSIM Help File Path, and Parameter File Variables.
In the Updates section:
Check for software When this option is checked, if you have the valid software annual
updates maintenance, PSIM will automatically check for new updates on the
PSIM.server. If a new update is available, you will be prompted to install the
update.
Create backup files When this option is checked, PSIM will create a backup of the file
currently being edited in the time interval specified. In case of a program
crash, the backup file will preserve the previous work. The backup file is
deleted automatically when the file is closed normally from the PSIM
environment.
• In the section Add Shortcut Key, select the option Elements. Then find and highlight the element
"Resistor".
• Move the cursor into the input field of Press new shortcut key, and press the key "r" on the keyboard.
Then click on Assign.
• The key "r" will be assigned to the resistor, and the definition will appear in the Current Shortcut Key
list.
To customize toolbar options, in the Customize Keyboard/Toolbar dialog, click on the Options tap, and
check the checkbox to show the toolbar tips or change the toolbar icon size to the large version.
Netlist name
Standard image
Secondary image
To share the secondary images that one creates with other people, one just has to send to them the secondary
image library file (with the .lib2 extension).
In this case, the inductance and capacitance values will be defined through the interface, and need to appear in
the property window of the new LC filter element. Therefore, the parameter value for the inductance needs to be
defined as a variable, in this case, L, and the value for the capacitance as C.
Then from Subcircuit >> Edit Default Variable List, add the variables L and C as the default variables. This
step is necessary as the new element obtains the parameter information from the default variable list. The
default variable list window should appears as follows.
Here Variable Label is the text that describes the parameter, Variable Name is the variable that is used as the
parameter value in the subcircuit, and Variable Value is the default value of the parameter. In the example, for
the inductor L, the Variable Label is Inductance, the Variable Name is L, and the Variable Value is 1m. For
the capacitor C, the Variable Label is Capacitance, the Variable Name is C, and the Variable Value is 100u.
After the file is created, place it in the "lib" sub-folder in the PSIM directory.
Step2: Add the New Element to the PSIM Library:
To add the subcircuit element into the PSIM library, follow these steps:
• Go to Edit >> Edit Library >> Edit Library Files, and choose the custom image library for the new
element. Click on New Library to create a new image library, or select an existing library and click on
Edit Selected Library.
• In the Library Editor, click on the button New Element (Subcircuit). Enter the information to the dialog
window as shown below:
• Click on the buttons Save Image Library and Update Menu. The new element will appear in the library
and will be ready to use.
• In the next dialog window, set the new element size as: Width = 5, and Height = 2. Then create an image
for this element or accept the default image.
• Click on the buttons Save Image Library and Update Menu. The new element will appear in the library
and will be ready to use.
The information regarding the number of parameters and the parameter description for the new inductor
element is obtained from the DLL file automatically. In this case, the new element will have one parameter as
"Inductance".
• Click on the Pins tab. In this tab, the connection pins will be defined. Click on the Add button, and define
Location as "1 - Left", Name as "A", and Number as "1". Leave the boxes for Dot, clk, and Overline
unchecked.
If the boxes are checked, for Dot, there will be a circle between the connection pin and the block; for
clk, a symbol > will be added inside the block to indicate that it is a clock; and for Overline, an
overline will be added to the name.
• Click on the Add button, and define Location as "2 - Left", Name as "B", and Number as "2". Repeat the
same process for the rest of the pins. The dialog windows below show the definitions of all the connec-
tion pins.
SIMVIEW is PSIM’s waveform display and post-processing program. The following shows simulation
waveforms in the SIMVIEW environment.
SIMVIEW reads data either in ASCII text format or in SIMVIEW binary format. The following shows a sample
text data file:
Time Isa Isc Isb Tem_IM
5.000000000E-006 0.000000000E+000 0.000000000E+000 0.000000000E+000 7.145888260E-048
1.000000000E-005 0.000000000E+000 0.000000000E+000 0.000000000E+000 1.082981714E-046
1.500000000E-005 0.000000000E+000 0.000000000E+000 0.000000000E+000 5.408644357E-046
2.000000000E-005 1.139566166E-001 -2.279132474E-001 1.139566166E-001 1.613605209E-017
2.500000000E-005 5.072914178E-001 -1.014582858E+000 5.072914178E-001 3.598226665E-015
... ... ... ...
Expression
Result
One key feature of the calculator is that it provides 9 memory spaces. By double clicking on a number in the
Measure dialog window in SIMVIEW, the value will be automatically transferred to the calculator and stored in
one of the memory spaces, starting from the top. In this way, data can be directly transferred to this calculator
for calculation without the need to record them on a piece of paper.
The following figure shows a sine waveform is chosen as the X-axis versus a cosine waveform in the Y axis.
The Select Curves tab of the properties dialog of a screen is shown below:
Edit Box
In the Curves tab, the curve properties, such as color, line thickness, marker symbol, and label, can be defined.
2*pi*60
m
K
In this circuit, the real and imaginary parts of two vectors V1 and V2 are created. The amplitude of V1 is 1 and
the amplitude of V2 is 0.8. Vector V2 is leading V1 by 30 deg.
After simulation is completed, select Screen >> Plot Vector Diagram. In the dialog window, define the real
and imaginary parts for vectors V1 and V2. The dialog window will appear as follows:
Click on OK, and the vector plot will show as below on the right. The time-domain waveforms of the real and
0.5
-0.5
-1
0.5
-0.5
-1
There is a sliding bar at the bottom of the vector plot. By sliding it with the left mouse, one can replay the
drawing of the vector plot. The percentage shows the vector positions with respect to the final position of the
drawing. For example, in this case, the time is from 0 to 0.0167 sec. A sliding bar of 0% corresponds to the
moment at 0 sec., and 100% corresponds to the moment at 0.0167 sec.
Click on this icon to cycle through cursor display modes: no display; vertical; vertical/horizontal
Average Calculate the average of the waveform between the two vertical cursor lines.
RMS Calculate the rms value of the waveform between the two vertical cursor lines.
Absolute |x| Calculate the average of the absolute value of the waveform within the two
vertical cursor lines.
PF (Power Factor) Calculate the power factor of the two waveforms between the two vertical
cursor lines. The power factor is defined as cos() where is the angle
difference between the first curve and the second curve. Note that the screen
P (Real Power) Calculate the two
must display real curves
power only
of thewhen
two waveforms
performing between the two vertical cursor
this function.
lines. Note that the screen must display two curves only when performing this
function.
S (Apparent Power) Calculate the apparent power of the two waveforms between the two vertical
cursor lines. Note that the screen must display two curves only when
performing this function.
THD Calculate the THD (total harmonic distortion) of the waveform for the
fundamental frequency specified. One fundamental cycle of data prior to the
second cursor line will be used for the calculation.
Send to Calculator Send the value to the Calculator
Copy All Copy all the data in the Measurement Dialog into clipboard.
Save As Save the data in the Measurement Dialog into a file of specific type.
If the option Redraw x-axis when loading new data is checked, the waveform will be redrawn with the new
x- axis range when new data is loaded. If this option is not checked, the x-axis range will be unchanged.
If the option Engineering Unit is checked, in the Measure dialog window, curve values will be displayed
in engineering unit with suffix such as u, m, k, M (for example, 12.3456u). If this option is not checked, the
values will be displayed in scientific unit (for example, 1.23456e-5). The value of Significant Digits
defines the number of digits after the decimal points.
Also, the Right mouse action can be set to either Show menu, Pan, or Zoom.
For the Measure window, two options are provided on how the measure window is displayed. By selecting
Independent measure window, the measure window will be separate from the main waveform window. By
selecting Embedded measure window, the measure window will be part of the main waveform window below
the graph area.
The measure window font is defined by clicking on the Font button in the Measure window box.
Chapter 3: Waveform Processing in SIMVIEW 53
Default curve settings specifies colors, line thickness, and mark symbols for curves.
Default Screen settings specifies colors, font style and size for screens.
Default text item settings specifies colors, font style and size for text items.
When SIMVIEW loads a data file (.txt or .smv file), if the corresponding .setting.xml file exists, it will load the
settings from the file.
The functions Load Temporary Settings and Save Temporary Settings are used in situations where one wants to
save the settings temporarily and uses it shortly after. For example, when comparing one waveform with
another, one can first save the temporary settings when displaying the first waveform. Then display the second
waveform and load the temporary settings.
Favorites are a convenient way of storing particular graph settings to be used later. For example, assume that
SIMVIEW shows two screens, with the top screen displaying V1 in the red color and with certain x-axis and y-
axis ranges, and the bottom screen displaying V2 in the blue color with its own y-axis range. If this settings is
likely to be used again in the future, the settings can be saved as a favorite and used later.
To apply a favorite to the current display, go to the Settings menu and choose the favorite from the list. Note
that when applying the favorite, the number of screens currently on display must be the same as the number of
screen in the favorite.
The following chapters provide the detailed information of the PSIM library elements.
This chapter focuses on the Power circuit components. PSIM library contains the following categories of power
circuit components:
• RLC Branches
• Switches
• Transformers
• Magnetic Elements
• Other
• Motor Drive Module
• MagCoupler Module
• MagCoupler-RT Module
• Mechanical Loads and Sensors
• Thermal Module
• Renewable Energy Module
4.1.1 Resistor
Image:
Parameters Description
Resistance Resistance, in Ohm
Current Flag Flag: save the branch current for waveform display.
(1: save; 0: do not save)
The current is positive when it flows into the dotted terminal of the branch.
Voltage Flag Flag: save the voltage across this element for waveform display (1: save; 0: do not
save). The voltage is positive when the dotted terminal has higher potential.
Parameters Description
Resistance Resistance, in Ohm
Voltage Rating Voltage rating of the component, in V.
Power Rating Power rating of the component, in W.
Inductance ESL Equivalent series inductance (ESL), in H.
Parallel Capacitance Equivalent parallel parasitic capacitance, in F.
Current Flag Flag for the branch current for waveform display.
Voltage Flag Flag for the voltage across this element for waveform display.
Equivalent Circuit:
Level 2 Model
Level 1 Model
Cp Parallel
Capacitance
ESL
4.1.2 Inductor
Image:
Parameters Description
Inductance Inductance, in H.
Initial Current Initial inductor current, in A
Current Flag Flag for the branch current for waveform display (1: save; 0: do not save).
The current is positive when it flows into the dotted terminal of the branch.
Voltage Flag Flag for the voltage across this element for waveform display (1: save; 0: do not
save). The voltage is positive when the dotted terminal has higher potential.
Attributes of Level-2 Model
Parameters Description
Inductance Inductance, in H.
Peak Current Rating Peak current rating of the inductor, in A.
Series Resistance Equivalent series resistance (ESR), in Ohm.
Parallel Resistance Leakage resistance in parallel with the inductor, in Ohm.
Parallel Capacitance Parallel parasitic capacitance, in F.
Initial Current Initial inductor current, in A
Current Flag Flag for the branch current for waveform display.
Voltage Flag Flag for the voltage across this element for waveform display.
4.1.3 Capacitors
Images:
Capacitor (Electrolytic)
Parameters Description
Capacitance Capacitance, in F.
Initial Voltage Initial capacitor voltage, in V
Current Flag Flag for the branch current for waveform display (1: save; 0: do not save).
The current is positive when it flows into the dotted terminal of the branch.
Voltage Flag Flag for the voltage across this element for waveform display (1: save; 0: do not
save). The voltage is positive when the dotted terminal has higher potential.
Attributes of Level-2 Model:
Parameters Description
Capacitance Capacitance, in F.
Voltage Rating Voltage rating of the component, in V.
RMS Current Rating RMS current rating, in A.
Resistance ESR Equivalent series resistance (ESR), in Ohm.
Inductance ESL Equivalent series inductance (ESL), in H.
Leakage Resistance Leakage resistance, in Ohm.
Initial Voltage Initial capacitor voltage, in V
Current Flag Flag for the branch current for waveform display.
Voltage Flag Flag for the voltage across this element for waveform display.
Equivalent Circuit:
Level 1 Model Level 2 Model
Parallel
Rp
Resistance
Capacitor
ESR C ESL
Parameters Description
Resistance Resistance, in Ohm
Inductance Inductance, in H
Capacitance Capacitance, in F
Initial Current Initial inductor current, in A
Initial Cap. Voltage Initial capacitor voltage, in V
Current Flag Flag for the branch current for waveform display (1: save; 0: do not save).
The current is positive when it flows into the dotted terminal of the branch.
Voltage Flag Flag for the voltage across this element for waveform display (1: save; 0: do not
save). The voltage is positive when the dotted terminal has higher potential.
Note: For combined R-L-C brand, at least one of the parameters R, L, or C has to be a non-zero value.
4.1.5 Rheostat
A rheostat is a resistor with a tap.
Image:
t
Attributes:
Parameters Description
Total Resistance Total resistance of the rheostat R (between Node k and m), in Ohm
Tap Position (0 to 1) The tap position Tap. The resistance between Node k and t is: R Tap .
Current Flag Flag for the current that flows into node k.
Parameters Description
Current vs. Inductance Characteristics of the current versus the inductance (i1, L1), (i2, L2), etc.
Current Flag Flag for current display
Voltage Flag Flag for voltage display
The nonlinear B-H curve is represented by piecewise linear approximation. Since the flux density B is
proportional to the flux linkage and the magnetizing force H is proportional to the current i, the B-H curve can
be represented by the -i curve instead, as shown below.
(B)
3
2 Inductance L = / i
1
i1 i2 i3 i (H)
The inductance is defined as: L = / i, the ratio of vs. i at each point. The saturation characteristics are defined
by a series of data points as: (i1, L1), (i2, L2), (i3, L3), etc.
Note that the defined saturation characteristics must be such that the flux linkage is monotonically increasing.
That is, L1*i1 L2*i2 < L3*i3, etc.
Also, similar to the saturation characteristics in the real world, the slope of each linear segment must be
monotonically decreasing as the current increases.
In certain situations, circuits that contain saturable inductors may fail to converge. Connecting a very small
capacitor across the saturable inductor may help the convergence.
Attributes:
Parameters Description
Number of Turns Number of turns of the inductor winding
Winding Resistance Winding resistance, in Ohm
Core Cross Section Area Core cross section area, in m2
-Hc 0 Hc H
Parameters Description
Resistance Resistance, in Ohm
Inductance Inductance, in H
Capacitance Capacitance, in F
Current Flag_A; Current Current flags for Phase A, B, and C of three-phase branches, respectively.
Flag_B; Current Flag_C If this flag is set 1, the current flowing through this branch will be saved to the file
for display in SIMVIEW. It will also be available for display in the runtime graphs
(under Simulate >> Runtime Graphs).
The dot in the image indicates phase A. The current is positive when it flows into
the dotted terminal of the branch.
In the images, the small circle or number 1 indicates the input terminal of inductor.
Attributes:
Parameters Description
Lkk (self) Self inductance of the inductor k, in H
Lkj (mutual) Mutual inductance between Inductor k and j, in H
Initial Current ik Initial current in Inductor k, in A
Current Flag_k Flag for the current printout in Inductor k
The following shows a coupled inductor with two branches.
v1 -
i1
i2
-
Let L11 and L22 be the self-inductances of Branch 1 and 2, and L12 and L21 the mutual inductances, the branch
voltages and currents have the following relationship:
The mutual inductances between two windings are assumed to be always equal, i.e., L12 = L21.
In the SPICE software, coupled inductors are defined by the self inductances and the coupling factors. For the
coupled inductor with two branches, the coupling factor K is defined as:
Example:
Two mutually coupled inductors have the self inductances and mutual inductance as:
L11 = 1 mH,
L22 = 1.1 mH, and
L12 = L21 = 0.9 mH.
The coupling factor is: K = 0.86. The specification of this element will be:
L11 (self) 1m
L12 (mutual) 0.9m
L22 (self) 1.1m
Attributes:
Parameters Description
Common-mode Inductance Common-mode inductance Lcm of the choke, in H
Leakage Inductance Leakage inductance Llk of the choke, in H
Winding Resistance Resistance in each winding, in Ohm
The common-mode choke is the same as the self inductance, that is:
Lself = Lcm
The self inductance is also equal to the sum of the mutual inductance and the leakage inductance, that is:
Lself = Lmutual + Llk
Attributes:
Parameters Description
Resistance The resistance of the bus bar, in ohm.
Inductance The inductance of the bus bar, in H.
-
P
Attributes:
Parameters Description
Minimum Load Voltage Minimum load voltage Vmin required to maintain constant power
Output Flag Flag to display load voltage, current, and power
The input at the bottom of the block defines the constant power level.
This dc load with draw constant power from the source as long as the voltage is above the minimum voltage
Vmin. When the voltage is below Vin, the load current will be as below:
Io = Po * sin(2.03*Vo/Vin) / (Vin*sin(2.03)
c
P Q
Parameters Description
Line-line Voltage Line-to-line voltage applied to this load, in V
Operation Frequency Operation frequency, in Hz
Voltage Tolerance Voltage tolerance, in %.
The P (real power in Watt) and Q (reactive power in Var) inputs at the bottom of the block are control signals.
A
B
C
N
Parameters Description
Cable Length Length of the cable, in m
Operating Frequency Operating frequency of the cable, in Hz
Resistance Rd Positive sequence resistance Rd of the cable, in Ohm/km
Reactance Xd Positive sequence reactance Xd of the cable, in Ohm/km
Capacitance Cd Positive sequence capacitance Cd of the cable, in F/km
Resistance Ro Zero sequence resistance Ro of the cable, in Ohm/km
Reactance Xo Zero sequence reactance Xo of the cable, in Ohm/km
Capacitance Co Zero sequence capacitance Co of the cable, in F/km
In the image, the bottom node N or n on each side of the cable is the cable screen. It is generally connected to
the ground on the side of the cable.
The cable parameters should be available from manufacturers’ datasheet. When they are not available, assuming
that each phase of the cable has a resistance of R, self inductance of L, and mutual inductance of M, the positive
sequence and zero sequence parameters can be calculated as follows:
Rd = R
Xd = (L – M)
Ro = R
Rd = R
Xo = (L + 2M)
where =2f and f is the operating frequency in Hz.
Parameters Description
Number of Sections The number of sections. The parameters below are for each section.
Cable Length Length of the cable per section, in ft. or in m.
DC resistance DC resistance per unit length (Rs), in Ohm
Inductance Inductance per unit length (Ls), in H
Phase-to-phase Phase-to-phase capacitance per unit length (Cph), in F
Capacitance
Ground Capacitance Phase-to-ground capacitance per unit length (Cgnd), in F
Shield DC Resistance Shield resistance per unit length (Rshield), in Ohm
The circuit schematic below illustrates the model principle for each section, and the definition of the parameters
in the above table.
Attributes:
Parameters Description
Number of Sections The number of sections for this piece of cable
Cable Length Total length of the cable, in m.
DC Resistance DC resistance per meter, in ohm.
Inductance Inductance per meter, in H
Capacitance Capacitance per meter, in F
Shield DC Resistance DC resistance of the cable shield per meter, in ohm.
Attributes:
1For resistance-type elements:
Parameters Description
Expression f(i) or f(i,x) Expression of v in terms of i and x [v = f(i) or v = f(i,x)]
Expression df/di The derivative of the voltage v versus current i, i.e. df(i)/di
Initial Value io The initial value of the current i
Lower Limit of i The lower limit of the current i
Upper Limit of i The upper limit of the current i
For conductance-type elements:
Parameters Description
Expression f(v) or f(v,x) Expression of i in terms of v and x [i = f(v) or i = f(v,x)]
Expression df/dv Derivative of the current i versus voltage v, i.e. df(v)/dv
Initial Value vo The initial value of the voltage v
Lower Limit of v The lower limit of the voltage v
Upper Limit of v The upper limit of the voltage v
A good initial value and lower/upper limits will help the convergence of the solution.
Example: Nonlinear Diode
The nonlinear element (NONI) in the circuit above models a nonlinear diode. The diode current is expressed as
a function of the voltage as: i = 10-14 * (e 40*v-1). In PSIM, the specifications of the
66 Chapter 4: Power Circuit Components
nonlinear element will be:
Attributes:
Parameters Description
Switch Resistance On resistance of the transistor and diode, in Ohm
Current Flag 1...2 Display flags for the transistor and diode currents
Voltage Flag 1...2 Display flags for the transistor and diode voltages
1- Phase Inverter
Ideal Model Thermal - IGBT Model Therma; - MOSFET(Eon) Model
+ +
3-Phase Inverter
Average
+ + +
- - -
fa fb fc
Model Levels:
Parameters Description
Switch Resistance On resistance of the transistor and diode, in Ohm
Current Flag 1...i Display flags for the transistor and diode currents
Voltage Flag 1...i Display flags for the transistor and diode voltages
Input Si_top This is for Typhoon HIL interface
Input Si_bot This is for Typhoon HIL interface
3-Level Flying Cap Inverter Leg 7-Level Flying Cap Inverter Leg
Attributes:
Parameters Description
Switch Resistance On-resistance for all transistors and diodes, in Ohm.
Capacitance Cpi The capacitance of each flying capacitors, in F.
Initial Cpi Voltage Initial voltage on each flying capacitors, in V
Voltage Flag Cpi Flags for the voltage across each flying capacitor.
Current Flag i Current flag for Switch i
Voltage Flag i Voltage flag for Switch i
Attributes:
Parameters Description
Switch Resistance On-resistance for all transistors and diodes, in Ohm.
Current Flag Sxi Current flag for Switch i in phase x
Voltage Flag Sxi Voltage flag for Switch i in phase x
Input Sx_i These values are for Typhoon HIL. They are integer values from 1 to 64.
Attributes:
Parameters Description
Switch Resistance On-resistance for all transistors and diodes, in Ohm.
Current Flag Sxi Current flag for Switch i in phase x
Voltage Flag Sxi Voltage flag for Switch i in phase x
Input Sx_i These values are for Typhoon HIL. They are integer values from 1 to 64.
Images:
Attributes:
Parameters Description
Rp (primary) Resistance of the primary winding, in Ohm.
Rs (secondary) Resistance of the secondary winding referred to the primary side, in Ohm.
Lp (pri. leakage) Leakage inductance of the primary winding, in H.
Ls (sec. leakage) Leakage inductance of the secondary winding referred to the primary side, in H.
Np/Ns Ratio Transformer turns ratio.
Switch Resistance Rsw1 On-resistance for all the transistors and diodes in the front end DC-AC
converter, in Ohm.
Switch Resistance Rsw2 On-resistance for all the transistors and diodes in the back end AC-DC
converter, in Ohm.
Current Flag Sij Current flag for switch j in converter i
Voltage Flag Sij Voltage flag for switch j in converter i
Images:
Attributes:
Parameters Description
Voltage Drop Thyristor conduction voltage drop, in V
Init. Position 1...4 (1...6) Initial positions for Switches 1 to 4 for single-phase bridge, or 1 to 6 for 3-phase
or 6-phase bridge
Current Flag 1...4 (1...6) Display flags for the anode-cathode current for switches.
Voltage Flag 1...4 (1...6) Display flags for the anode-cathode voltage for switches.
Node Ct at the bottom of the thyristor module is the gating control node for Switch 1. For the thyristor module,
only the gating signal for Switch 1 needs to be specified. The gating signals for other switches will be derived
internally in the program.
Similar to the single thyristor switch, a thyristor bridge can also be controlled by either a gating block or an
alpha controller, as shown in the following examples.
Examples: Control of a Thyristor Bridge
The gating signal for the circuit on the left is specified through a gating block, and the gating signal for the
circuit on the right is provided through an alpha controller. A major advantage of the alpha controller is that the
Diode LED
Ideal Thermal
Parameters Description
Forward Voltage Forward voltage Vd_th, in V. A diode starts to conduct when the positive bias
voltage is greater than Vd_th.
Resistance On-resistance Rd, in Ohm, after it starts to conduct.
Initial Position Flag to set the device’s initial position (0: off; 1: on).
Current Flag Flag for the anode-cathode current for waveform display.
Voltage Flag Flag for the anode-cathode voltage for waveform display.
Slope = 1/Rd
0
Vd_th
The reverse recovery time trr consists of two parts: ta and tb. During the period ta, the current increases from 0
to -Irm. Based on JEDEC (Joint Electron Device Engineering Council), tb is defined as the interval from the
time of -Irm to the time when the straight line from -Irm through -0.25*Irm (in red in the diagram) intersects
with the time axis.
For further information on how to use the Level-2 model, please refer to the tutorial "Tutorial - Diode model
with reverse recovery.pdf".
Tj Tj
The circuit on the left uses a gating block, and the one on the right uses an on-off switch controller. The gating
signal is determined by the comparator output.
Parameters Description
On Resistance RDS(on) On resistance RDS(on) of the MOSFET, in Ohm
Threshold Voltage Threshold voltage of the gate-to-source voltage, in V, beyond which the MOSFET
VGS(th) starts to conduct.
Transconductance Transconductance gm of the MOSFET.
Diode Forward Voltage Forward voltage of the anti-parallel diode, in V
Diode Resistance On resistance of the anti-parallel diode, in Ohm
A Level-1 MOSFET is a linear switch that can operate in three states: cut-off, active, or ohmic state.
A linear MOSFET device is controlled by the gate-to-source voltage Vgs. It can operate in one of the three
regions: cut-off (off state), active, and ohmic region (on state).
The properties of an n-channel MOSFET device in these regions are:
- Cut-off region: Vgs < Vgs(th); Id = 0
- Active region: Vgs > Vgs(th) and Vgs - Vgs(th) < Vds; Id = gm(Vgs - Vgs(th))
- Ohmic region: Vgs > Vgs(th) and Vgs - Vgs(th) > Vds; Id = Vds / RDS(on)
where Vgs is the gate-source voltage, Vds is the drain-source voltage, and Id is the drain current.
The properties of a p-channel MOSFET device in these regions are:
- Cut-off region: Vgs > Vgs(th); Id = 0
- Active region: Vgs < Vgs(th) and Vgs - Vgs(th) > Vds; Id = gm(Vgs - Vgs(th))
- Ohmic region: Vgs < Vgs(th) and Vgs - Vgs(th) < Vds; Id = Vds / RDS(on)
The gate node of a MOSFET RDS(on) switch must be connected to either a gating block or a switch controller,
the same way as described for the ideal model of MOSFET.
4.2.4 IGBT
An IGBT model has 3 levels:
• Ideal,
• Level 2,
• Thermal
• SPICE Subcircuit, SPICE Subcircuit (4-pin) and SPICE Subcircuit (5-pin).
The Ideal and Level-2 models are described in the sections below.
For information regarding the Thermal model please refer to the section 4.10.3 IGBT Thermal Model.
For information regarding SPICE subcircuit, please refer to the document "SPICE Module User Manual.pdf".
Image:
Parameters Description
Maximum Vce Maximum collector-emitter voltage Vce rating, in V
Maximum Vec Maximum emitter-collector voltage Vec rating, in V. If IGBT has an anti-
parallel diode, this voltage will be the diode forward conduction threshold
voltage.
Gate Threshold Voltage Gate threshold voltage Vge_th, in V
Transconductance Transconductance of the IGBT, in S
Fall Time Fall time of the current when IGBT is turned off, in sec.
Capacitance Cies Input capacitance Cies, in F
Capacitance Coes Output capacitance Coes, in F
Capacitance Cres Reverse transfer capacitance Cres, in F
Rce_on Collector-emitter on resistance Rce_on, in Ohm
Vce_threshold Collector-emitter threshold voltage Vce_th, in V
Internal Gate Resistance Internal gate resistance Rgate, in Ohm
Current Flag Flag for the collector-emitter current for waveform display.
Voltage Flag Flag for the collector-emitter voltage for waveform display.
4.2.5 IGBT-RB
An IGBT-RB switch consist of an active switch with reverse blocking capability and without an anti-parallel
diode. It is turned on when the gating signal is high (when a voltage of 1V or higher is applied to the gate node)
and the switch is positively biased (collector-emitter voltage is positive). It is turned off whenever the gating
signal is low or the current drops to zero.
Two versions of IGBT-RB are provided: a single switch, and a dual package with two back-to-back switches.
Images:
1 2
Attributes:
Parameters Description
Saturation Voltage Saturation voltage Vce_sat of the IGBT, in V
Transistor Resistance Transistor on resistance, in Ohm
Initial Position Initial switch position flag for the switch, or in the case of the dual package,
or for Switch 1 or 2 (0: off; 1: on)
Initial Position 1 or 2
Current Flag Flag: set to save the collector-emitter current for waveform display.
Voltage Flag Flag: set to save the collector-emitter voltage for waveform display.
For the dual package, when the element is placed in the upright position, Switch 1 is on the left and Switch 2 is
on the right.
Parameters Description
Collector-emitter VCE The saturation voltage Vce_sat, in V. positive number for npn transistor and a
(sat) negative number for pnp transistor.
Initial Position Initial switch position flag (0: off; 1: on)
Current Flag Flag: set to save the collector-emitter current for waveform display.
Voltage Flag Flag: set to save the collector-emitter voltage for waveform display.
Example: Control of a npn Bipolar Junction Transistor
The circuit on the left uses a gating block, and the one on the right uses an on-off switch controller.
If the switch is controlled by a control circuit signal, as shown in the circuit on the right side, an on-off switch
controller must be used at the gate node.
Parameters Description
DC Current Gain hFE Transistor current gain , defined as: =Ic/Ib
Base-emitter Voltage VBE (sat) Base-emitter forward bias voltage, in V, between base and emitter. It is a
positive number for npn transistor and a negative number for pnp transistor.
Collector-emitter VCE (sat) Saturation voltage, in V, between collector and emitter, in V. It is a positive
number for npn transistor and a negative number for pnp transistor.
Attributes for Level 2 Model:
Parameters Description
VCEO (breakdown voltage) Collector-emitter breakdown voltage, in V.
VCBO (breakdown voltage) Collector-base breakdown voltage, in V.
VEBO (breakdown voltage) Emitter-base breakdown voltage, in V.
Collector-emitter VCE(sat) Collector-emitter saturation voltage, in V.
Base-emitter Voltage VBD(sat) Base-emitter forward bias voltage, in V.
DC Current Gain hFE Current gain of the transistor
Collector ICE(sat) Collector-emitter saturation current, in A
Collector Resistance RC Collector-emitter resistance, in ohm.
NPN_1
4.2.7.1 Zener
A zener diode is modeled by a circuit as shown below.
Images:
Attributes:
Parameters Description
Breakdown Voltage Breakdown voltage VB of the zener diode, in V
Forward Threshold Threshold voltage of the forward conduction (from anode to cathode), in V
Voltage
Forward Resistance On resistance of the forward conduction, in Ohm
Current Flag Flag for the anode-cathode current for waveform display.
Voltage Flag Flag for the anode-cathode voltage for waveform display.
This zener diode model is ideal. When the zener is positively biased, it behaves as a regular diode.
When it is reverse biased, if the cathode-anode voltage Vka is less than the breakdown voltage VB, it will block
the conduction.
When the voltage Vka is greater than VB+0.005V, as long as there is current flowing through the zener diode,
the voltage Vka will be clamped to VB. If the current falls to zero, the zener is blocked againWhen the zener
diode is positively biased, it behaviors as a regular diode. When it is reverse biased, it will block the conduction
as long as the cathode-anode voltage VKA is less than the breakdown voltage VB. When VKA exceeds VB, the
voltage VKA will be clamped to VB.
Note that when the zener is clamped, since the diode is modelled with an on-resistance of 10, the cathode-
anode voltage will in fact be equal to: VKA = VB + 10 * IKA. Therefore, depending on the value of IKA,
VKA will be slightly higher than VB. If IKA is very large, VKA can be substantially higher than VB.
4.2.7.2 DIAC
A DIAC is a bi-directional diode. A DIAC does not conduct until the breakover voltage is reached. After that,
the DIAC goes into avalanche conduction, and the conduction voltage drop is the breakback voltage.
Image:
Attributes:
Parameters Description
Breakover Voltage Voltage at which breakover occurs and the DIAC begins to conduct, in V
Attributes:
Parameters Description
Voltage Drop Thyristor conduction voltage drop, in V
Holding Current Minimum conduction current below which the device stops conducting and returns to
the OFF state (for thyristor only)
Latching Current Minimum ON state current required to keep the device in the ON state after the
triggering pulse is removed (for thyristor only)
Initial Position Flag for the initial switch position (for thyristor only)
Current Flag Flag for the anode-cathode current for waveform display.
Voltage Flag Flag for the anode-cathode voltage for waveform display.
Note that for the TRIAC device, the holding current and latching current are set to zero.
There are two ways to control a thyristor or TRIAC. One is to use a gating block, and the other is to use a switch
controller. The gate node of a thyristor or TRIAC must be connected to either a gating block or a switch
controller.
The following examples illustrate the control of a thyristor switch.
Examples: Control of a Thyristor Switch
Gating Block
Alpha
Controller
This circuit on the left uses a switching gating block. The switching gating pattern and the frequency are pre-
defined, and remain unchanged throughout the simulation. The circuit on the right uses an alpha switch
controller. The delay angle alpha, in deg., is specified through the dc source in the circuit.
4.2.9 GTO
A GTO switch is a symmetrical device with both forward-blocking and reverse-blocking capabilities.
Images:
Attributes:
Attributes:
Parameters Description
Initial Position initial switch position flag (0: off; 1: on)
Current Flag Flag for the switch current for waveform display.
Voltage Flag Flag for the switch voltage for waveform display.
In the 3-phase switch image, the phase with a dot is Phase A.
For single and 3-phase bi-directional switches, they are on when the gating signal is high, and are off when the
gating signal is low, regardless of the voltage bias conditions. For the push button switch, the switch position is
set directly from the parameter input.
Attributes:
Parameters Description
0 180 (deg.)
The specification of the Gating Block element for this switch will be:
Frequency 2000.
No. of Points 6
Switching Points 35. 92. 175. 187. 345. 357.
The gating pattern has 6 switching points (3 pulses). The corresponding switching angles are 35o, 92o, 175o,
187o, 345o, and 357o, respectively.
If the Gating Block (file) element is used instead, the specification will be:
Frequency 2000.
File for Gating Table test.tbl
The file “test.tbl” will contain the following:
6
35.
92.
175.
187.
345.
357.
86 Chapter 4: Power Circuit Components
4.3 Transformers
Np Ns Np Ns
The winding with the larger dot is the primary, and the other winding is the secondary.
Attributes:
Parameters Description
Np (primary) No. of turns of the primary winding
Ns (secondary) No. of turns of the secondary winding
Since the turns ratio is the same as the ratio of the rated voltages, the number of turns can be replaced by the
rated voltage at each side.
p_2 s_3
In the images, p refers to primary, s refers to secondary, and t refers to tertiary. The winding marked with the
largest dot is the primary winding or first primary winding. For the multiple winding transformers, the sequence
of the windings is from the top to the bottom. For the transformers with 2 or 3 windings, the attributes are as
follows.
Attributes:
All the resistances and inductances are referred to the primary winding side. If there are multiple primary
windings, they are referred to the first primary winding side.
For a transformer with more than 1 primary or more than 3 secondary windings, the attributes are as follows.
Attributes:
Parameters Description
Rp_i (primary i); Resistance of the ith primary/secondary/tertiary winding, in Ohm
Rs_i (secondary i)
Lp_i (pri. i leakage); Leakage inductance of the ith primary/secondary/tertiary winding, in H (referred to
Ls_i (sec. i leakage) the first primary winding)
All the resistances and inductances are referred to the first primary winding side.
Modeling of a Transformer:
A transformer is modeled as coupled inductors. For example, a single-phase two-winding transformer is
modeled as two coupled inductors. The equivalent circuit can be shown as:
Rp Lp Rs L s Np : Ns
Primary Lm Secondary
In the circuit, Rp and Rs are the primary and secondary winding resistances; Lp and Ls are the primary and
secondary winding leakage inductances; and Lm is the magnetizing inductance. All the values are referred to the
primary side.
Example:
A single-phase two-winding transformer has a winding resistance of 0.002 Ohm and leakage inductance of 1
mH at both the primary and the secondary side (all the values are referred to the primary). The magnetizing
inductance is 100 mH, and the turns ratio is Np:Ns = 220:440. The transformer will be specified as:
Rp (primary) 2m
Parameters Description
Rp (primary); Rs (secondary); Resistance of the primary/secondary/tertiary winding, in Ohm
Rt (tertiary)
Lp (pri. leakage); Ls (sec. leakage); Leakage inductance of the primary/secondary/tertiary winding, in H
Lt (ter. leakage)
Lm (magnetizing) Magnetizing inductance, in H (seen from the primary side)
Np (primary); Ns (secondary); No. of turns of the primary/secondary/tertiary winding
Nt (tertiary)
Parameters Description
Rp (primary); Rs1 (secondary 1); Resistance of the primary/1st secondary/2nd secondary winding, in
Rs2 (secondary 2) Ohm
In the images, P refers to primary, S refers to secondary, and T refers to tertiary. All resistances and inductances
are referred to the primary or the first primary winding side.
Three-phase transformers are modeled in the same way as single-phase transformers.
For the 3-phase phase-shifting transformers, let the angle be the phase difference between the secondary line
voltage Vab and the primary line voltage VAB. The relationship between the angle and the winding turns are:
For the Y/Z1 transformer:
The table below shows typical transformer turns ratios and delay angles.
Delay Angle Ns2/(Ns1+Ns2) Np/(Ns1+Ns2)*Vab/VAB
(deg) Y/Z1 Y/Z2 Δ/Z1 Δ/Z2 Y/Z1 Y/Z2 Δ/Z1 Δ/Z2
30 0 0.577
20 0.227 0.653
15 0.366 0.707
0 1 1 0 1 1 1
-15 0.366 0.366 0.707 1.225
-20 0.227 0.532 0.653 1.347
-30 0 1 1 0.577 1.732 1.732
-40 0.532 1.347
-45 0.366 1.225
-60 0 1
a+
A- a-
B+
B- b-
C+ c+
C- c-
en
Parameters Description
Operating Voltage Transformer primary side rms voltage per phase under the circuit operating
(phase) condition, in V
Operating Frequency Operating frequency of the transformer, in Hz
Rp (primary) Resistance of the primary winding, in Ohm
Lp (pri. leakage) Leakage inductance of the primary winding, in H
Rs (secondary) Resistance of the secondary winding, in Ohm (referred to the primary side)
Ls (sec. leakage) Leakage inductance of the secondary winding, in H (referred to the primary side)
Rm (core losses) Resistance that represents transformer core losses, in Ohm
Im vs. Lm Values of the magnetizing current Im (in A) vs. the magnetizing inductance Lm (in
H) that defines the magnetizing characteristics seen from the primary winding
Phase A Residual Flux Phase A residual flux, in per unit value
Phase B Residual Flux Phase B residual flux, in per unit value
Phase C Residual Flux Phase C residual flux, in per unit value
Np (primary) Number of turns of the primary winding
Ns (secondary) Number of turns of the secondary winding
All the resistances and inductances are referred to the primary side.
In the images, p refers to the primary side and s refers to the secondary side. The node en is a control node, to be
connected to a control logic signal. The moment when the signal changes from 0 to 1 indicates the moment that
the transformer is energized.
Note that the operating voltage refers to the voltage per phase in the actual operating condition, not necessarily
the rated voltage. For example, if a transformer rated at 63kV (primary side line-to-line rms) operates under the
rated condition, and if the primary winding is connected in Y, the operating voltage per phase will be 63,000/
3 V. If the primary winding is connected in delta, the operating voltage per phase will be 63,000V. If the same
transformer is connected in delta but the actual operating voltage is only 60,000V, for example, the operating
voltage per phase will be 60,000V instead.
4.4.1 Winding
A winding element provides the interface between the electric circuit and the magnetic equivalent circuit.
Image:
M1
E1
E2
M2
Attributes:
Parameters Description
Number of Turns No. of turns of the winding
Winding Resistance Winding resistance, in Ohm
This element represents a winding on a magnetic core. The two electric nodes (E1 and E2) are connected to an
electric circuit, while the two magnetic nodes (M1 and M2) are connected to other magnetic elements (such as
leakage flux path, air gap, and magnetic core).
M1 M2
Parameters Description
Inductance Factor AL Inductance factor AL, in H, defined as the inductance per turn squared
Resistance for Losses Resistance R, in Ohm, that represents the losses due to the leakage flux.
Current Flag Display flag of the current that flows through the resistor R
The resistance R represents the losses due to the leakage flux.
Assuming that the mmf (magnetomotive force) applied across the leakage flux path is F, the electric equivalent
circuit of the leakage flux path is as follows:
+ AL
F
R
-
The mmf, in the form of a voltage source, applies across the capacitor (the capacitance is AL) and the resistor R.
Let the current flowing through this branch be i, and the rms value be Irms, the relationship between the losses
due to the leakage flux and the resistance R is:
Ploss = I2rms · R
M1 M2
The input parameters of the air gap can be defined in two ways. One is to define the air gap length and the cross
section area, and the other is to define the inductance factor AL. They are as follows.
Attributes for Air Gap:
Parameters Description
Air Gap Length The length of the air gap, lg, in m
Parameters Description
Inductance Factor AL Inductance factor AL, in H, defined as the inductance per turn squared
Resistance for Losses Resistance R, in ohm, that represents the losses due to the air gap fringing effect
Current Flag Display flag of the current that flows through the resistor R
+ i
AL
F
R
-
The mmf, in the form of a voltage source, applies across the capacitor (the capacitance has the value of the
inductance factor AL) and the resistor R. For the element Air Gap, the inductance factor can be calculated from
the air gap length and the cross section area as:
where Irms is the rms value of the current i flowing through the resistor.
M1 M2
Attributes:
Parameters Description
Inductance Factor AL Inductance factor AL of the core, in H, defined as the inductance per turn squared
If the length of the core is Llength and the cross section area is Ac, the inductance factor AL is expressed as:
Parameters Description
Inductance Factor AL Inductance factor AL of the core, in H, defined as the inductance per turn squared
Resistance for Losses Resistance R, in Ohm, that represents the core losses
Coefficient phi_sat Coefficient sat for the core B-H curve, in Weber
Coefficient K1 Coefficient K1 for the core B-H curve
Coefficient Kexp1 Coefficient Kexp1 for the core B-H curve
Coefficient K2 Coefficient K2 for the core B-H curve
Coefficient Kexp2 Coefficient Kexp2 for the core B-H curve
Initial Flux phi_o Initial flux o of the core, in Weber
Current Flag Display flag of the electric current that flows through the resistor R. If the rms value
of the current is Irms, the core losses can be calculated as: Pcore_loss = I rms2 * R.
In the element image, the nodes M1 and M2 are the two nodes that connect the core to other magnetic elements
(such as winding, flux leakage path, air gap, etc.). The node marked with a dot is Node M2. Node C1 is a control
output node, which shows the flux (in Weber) flowing through the core, from Node M2 to M1.
The initial flux of the core, o, is the flux flowing from Node M2 to M1 at the beginning, corresponding to the
field intensity H = 0. The initial flux density Bo can be calculated as: Bo = o/Ac (where Ac is the core cross
section area), and the initial mmf Fo is: Fo = o/AL.
A differential voltage probe connected between Node M2 to M1 will measure the mmf (in ampere*turn) applied
to the core.
The coefficients sat, K1, Kexp1, K2, and Kexp2 are used to fit the B-H curve of an actual magnetic material. A
good initial guess of sat is the maximum flux of the B-H curve in deep saturation. To calculate this flux,
multiply the corresponding flux density B by the cross section area of the core. Coefficient K1 usually varies
between 0.7 and 1, depending on the core material. Coefficient Kexp1 mainly affects the rate of the core
saturation, and is in the range between 10 and 200 (10 for low permeability ferrite, and 200 for metglas).
The coefficients K2 and Kexp2 are used in very rare occasions, such as for ferroresonant regulators. They are
normally set as follows to keep them from affecting the B-H curve:
K2 > 2
Kexp2 > 20
A tutorial on how to define the core coefficients is provided in the "doc" sub-folder in the PSIM directory. Also,
a program is provided to plot the B-H curve of the core given a set of coefficients. To launch this program, in
PSIM, go to Utilities >> B-H Curve.
V+ Ro
V- Ao*(V+ - V-)
gnd
where
V+; V- - noninverting and inverting input voltages
Vo - output voltage
Ao - op. amp. dc gain (Ao is set to 100,000.)
Ro - output resistance (Ro is set to 80 Ohms)
Attributes:
Parameters Description
Voltage Vs+ Upper voltage source level of the op. amp.
Voltage Vs- Lower voltage source levels of the op. amp.
The difference between the element Op. Amp. and Op. Amp. (ground) or Op. Amp. (ground/inverted) is that, for
the Op. Amp. element, the reference ground of the op. amp. model is connected to the power ground, whereas
for Op. Amp. (ground) or Op. Amp. (ground/inverted), the reference ground node of the model is accessible and
can be floating.
Note that the image of an op. amp. is similar to that of a comparator. For the op. amp., the inverting input is at
the upper left and the noninverting input is at the lower left. For the comparator, it is the opposite.
Example: A Boost Power Factor Correction Circuit
The figure below shows a boost power factor correction circuit. The PI regulators of both the inner current loop
and the outer voltage loop are implemented using op. amp.
Attributes:
Parameters Description
Input Resistance Rin Input resistance of the op. amp., in Ohm
DC Gain Ao DC gain of the op. amp.
Unit Gain Frequency Frequency at which the op. amp. gain is 1, in Hz.
Output Resistance Ro Output resistance of the op. amp., in Ohm
Maximum Output Maximum current that the op. amp. output can provide, in A
Current
Voltage Vs+ Upper voltage source level of the op. amp.
Voltage Vs- Lower voltage source levels of the op. amp.
The figure below shows the definition of the dc gain Ao and the unit gain frequency.
0
f (Hz)
4.5.2 Opto-Couplers
There are two models of opto-couplers: Opto-Coupler and Opto-coupler (bi-directional). The images and
parameters are shown below.
Image:
id id ic
ic
Attributes:
Parameters Description
Current Transfer Ratio The current transfer ratio CTR between the transistor current ic and the diode
current id, that is, CTR = ic/id.
Diode Resistance Diode resistance Rd, in Ohm. Note that the resistance must be greater than 0.
Diode Threshold The forward diode threshold voltage Vd_th, in V
Voltage
Transistor Vce_sat The transistor saturation voltage Vce_sat, in V
Transistor-side Capacitance Cp across the collector and emitter of the transistor, in F
Capacitance
These parameters can either be read directly from the manufacturer datasheet, or can be calculated from the
datasheet information. Take the Motorola optocoupler 4N25 as an example. From the datasheet, we can read the
current transfer ratio and the transistor saturation voltage as:
CTR = 70% = 0.7; Vce_sat = 0.15 V
From the "LED Forward Voltage versus Forward Current" characteristics on the datasheet, one can calculate
the diode resistance Rd and the threshold voltage Vd_th. We assume that the diode forward voltage is
approximated by a straight line. That is,
vd = Vd_th + Rd * id
With TA = 25oC, we can obtain two readings from the curve: id = 10 mA and vd = 1.15 V; id = 40 mA and vd =
1.3 V. Based on these two points, we can calculate Rd and Vd_th as: Rd = 5 Ohm; Vd_th = 1.1 V.
The optocoupler model does not take into account the delay, but it does model the turn-on/turn-off transient
through the capacitor Cp across the collector and emitter of the transistor. The capacitance value can be obtained
from the fall time tfall and the switching time test condition as:
Cathode
Reference
Anode
The TL431 regulator maintains the reference node voltage to be around 2.495V. In this model, the limited
bandwidth of the TL431 is modelled. That is, the ac frequency response of the TL431 model resembles the
following figure from the datasheet.
Test Circuit
The output of the dv/dt block is equal to the derivative of the input voltage versus time. It is calculated as:
where Vin(t) and Vin(t-Δt) are the input values at the current and previous time step, and Δt is the simulation time
step.
Images:
Attributes:
Parameters Description
Rated Coil Voltage Rated voltage of the relay coil, in V
Coil Resistance Resistance of the coil, in Ohm
Operate Voltage Voltage at which the relay will operate, in V
Release Voltage Voltage at which the relay will return to the default position, in V
Operate Time Time from the moment the operate voltage is reached to the moment the switches
operate, in sec.
Release Time Time from the moment the release voltage is reached to the moment the switches
return to the default positions, in sec.
The relays have one normally open switch and one normally closed switch. When a dc voltage is applied to the
relay coil in the polarity as shown in the image, if the voltage reaches the Operate Voltage, after a time delay
defined by the Operate Time, the NO switch will be closed, and the NC switch will be opened.
When the coil voltage reduces to the Release Voltage, after a time delay defined by the Release Time, the two
switches will return to their default positions.
The system consists of two induction machines, IM1 and IM2, connected back-to-back. One operates as a
motor, and the other as a generator. From the point of view of the first machine IM1, the mechanical equation
can be written as:
where J1 and J2 are the moment of inertia, and Tem1 and Tem2 are the developed torques of the machine IM1 and
IM2, respectively.
From the point of view of the second machine IM2, however, the mechanical equation can be written as
These two equations are equally valid, but will produce opposite mechanical speed.
In order to avoid this ambiguity, in PSIM, the concept "reference direction" is used in the mechanical system so
that the mechanical equation can be uniquely defined.
In a mechanical system, one element is designated as the master unit (this element is considered to operate in
the master mode), and the rest of the elements are in the slave mode. Elements that can be master units are:
Electric machines, mechanical-to-electrical interface blocks, and gear boxes.
The master unit defines the reference direction of the mechanical system. The direction is define as the direction
from the shaft node of the master unit, along the shaft, to the rest of the mechanical system.
Once the reference direction of the mechanical system is defined, the speed and torque reference of the
mechanical system can be defined. For example, if we use the right-hand method, with the thumb pointing in
the reference direction of the mechanical system, by rotating the right hand, the fingers will point to the positive
direction of the speed and the torque.
Moreover, each mechanical element has its own reference direction. The following diagram shows the reference
direction of each mechanical element, as indicated by the arrow:
The reference direction of each element and the reference direction of the overall mechanical system determine
how the element interacts with the mechanical system.
For example, if the reference direction of a machine is along the same direction as the reference direction of the
mechanical system, the developed torque of the machine will contribute to the shaft rotation in the positive
direction. However, if the reference direction of the machine is opposite to that of the mechanical system, the
developed torque will contribute to the shaft rotation in the negative direction.
In the two-machine example above, using the notation of the "reference direction", if we define the machine
IM1 as the master unit, the reference direction of the overall mechanical system will be from left to right, as
shown below. Based on this direction, the machine IM1 will be along the reference direction, and the machine
IM2 will be opposite to the reference direction. This leads to the equivalent circuit of the mechanical system as
shown on the right.
Equivalent Circuit
Reference direction
Master Unit (J1+J2)*dWm/dt = Tem1 - Tem2
Similarly, if we define the machine IM2 as the master unit, the reference direction of the overall mechanical
system will be from right to left, as shown below. Based on this direction, the machine IM1 will be opposite to
the reference direction, and the machine IM2 will be along the reference direction. This leads to the equivalent
circuit of the mechanical system as shown on the right.
Master Unit
Equivalent Circuit
Reference direction
(J1+J2)*dWm/dt = Tem2 - Tem1
The following shows another mechanical system with sensors and loads connected in different ways.
In this mechanical system, the machine on the left is the master unit. The reference direction of the mechanical
system is from left to the right along the mechanical shaft. Comparing this direction with the reference direction
of each element, Load 1, Speed Sensor 1, and Torque Sensor 1, will be along the reference direction, and Load
2, Speed Sensor 2, and Torque Sensor 2 will be opposite to the reference direction of the mechanical system.
Therefore, if the speed of the machine is positive, Speed Sensor 1 reading will be positive, and Speed Sensor 2
reading will be negative.
Similarly, the two constant-torque mechanical loads, with the amplitudes of TL1 and TL2, interact with the
machine in different ways. Load 1 is along the reference direction, and the loading torque of Load 1 to the
master machine will be TL1. On the other hand, Load 2 is opposite to the reference direction, and the loading
torque of Load 2 to the machine will be -TL2.
The squirrel-cage induction machine (with load) has various types of mechanical load included in the block.
The node nm is a control node that provides the mechanical speed in rpm. The node Tq is a control node that
provides the torque sensor output in N*m. The torque sensor is placed between the machine and the load. For
load parameter definitions, refer to each mechanical load.
Attributes for the Induction Machine:
Parameters Description
Rs (stator) Stator winding resistance, in Ohm
Ls (stator) Stator winding leakage inductance, in H
Rr (rotor) Rotor winding resistance referred to the stator side, in Ohm
Lr (rotor) Rotor winding leakage inductance referred to the stator side, in H
Lm (magnetizing) Magnetizing inductance, in H
Ns/Nr Turns Ratio Stator and rotor winding turns ratio (for wound-rotor machine only)
No. of Poles Number of poles P of the machine (an even integer)
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Torque Flag Output flag for internal torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
Additional attributes for the Induction Machine (high frequency):
Parameters Description
Cg (winding-ground) Capacitance representing the winding-to-ground distributed capacitance, in F
Rg (winding-ground) Resistance representing the dissipative effect in the motor frame, in Ohm
Re (eddy current) Resistance representing the eddy current effect in the magnetic core and the motor
frame, in Ohm
Rt (skin effect) Resistance representing the skin effect for high frequency response, in Ohm
Lt (skin effect) Inductance representing the skin effect for high frequency response, in H
Ct (skin effect) Capacitance representing the skin effect for high frequency response, in F
For squirrel-cage machines, va,r = vb,r = vc,r= 0. The parameter matrices,are defined as:
where Msr is the mutual inductance between the stator and rotor windings, and is the mechanical angle. The
mutual inductance is related to the magnetizing inductance as:
For a symmetrical squirrel-cage induction machine, the steady state equivalent circuit is shown below. In the
figure, s is the slip.
Rs Lr
Lm Rr(1-s)/s
Attributes:
Parameters Description
Rs (stator) Stator winding resistance, in Ohm
Ls (stator) Stator winding leakage inductance, in H
Rr (rotor) Rotor winding resistance referred to the stator side, in Ohm
Lr (rotor) Rotor winding leakage inductance referred to the stator side, in H
Ns/Nr Turns Ratio Stator and rotor winding turns ratio (for wound-rotor machine only)
No. of Poles Number of poles P of the machine (an even integer)
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Torque Flag Output flag for internal torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
Im vs. Lm (Im1,Lm1) ... Characteristics of the magnetizing current Im versus the magnetizing inductance
[(Im1,Lm1) (Im2,Lm2) ...] where Im is in A and Lm is in H.
Where,
Attributes:
Parameters Description
Rs (stator) Stator winding resistance, in Ohm
Ls (stator) Stator winding leakage inductance, in H
Rr (rotor) Rotor winding resistance referred to the stator side, in Ohm
Lr (rotor) Rotor winding leakage inductance referred to the stator side, in H
No. of Poles Number of poles P of the machine (an even integer)
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Cg (winding-ground) Capacitance representing the winding-to-ground distributed capacitance, in F
Rg (winding-ground) Resistance representing the dissipative effect in the motor frame, in Ohm
Re (eddy current) Resistance representing the eddy current effect in the magnetic core and the motor
frame, in Ohm
Rt (skin effect) Resistance representing the skin effect for high frequency response, in Ohm
4.6.3 DC Machine
The image and parameters of a dc machine are as follows:
Image:
Armature
Shaft Node
Winding
-
+
Field
Winding
-
Attributes:
Parameters Description
Ra (armature) Armature winding resistance, in Ohm
La (armature) Armature winding inductance, in H
Rf (field) Field winding resistance, in Ohm
Lf (field) Field winding inductance, in H
Moment of Inertia Moment of inertia of the machine, in kg*m2
Vt (rated) Rated armature terminal voltage, in V
Ia (rated) Rated armature current, in A
n (rated) Rated mechanical speed, in rpm
If (rated) Rated field current, in A
Torque Flag Output flag for internal torque Tem
Master/Slave Flag The master/slave flag of the machine (1: master; 0: slave)
When the torque flag is set to 1, the internal torque generated by the machine will be saved to the output file for
display.
For more details on the definition and use of the master/slave flag, refer to Section 4.6.1.
The operation of a dc machine is described by the following equations:
where Laf is the mutual inductance between the armature and the field windings. It can be calculated based on
the rated operating conditions as:
Note that the dc machine model assumes magnetic linearity. Saturation is not considered.
Example: A DC Motor with a Constant-Torque Load
The circuit below shows a shunt-excited dc motor with a constant-torque load TL. Since the load is along the
reference direction of the mechanical system, the loading torque to the machine is TL. Also, the speed sensor is
along the reference direction. It will give a positive output for a positive speed.
The simulation waveforms of the armature current and the speed are shown on the right.
Speed
Armature current
Constant-
Torque
Load Speed (in rpm)
b Shaft Node
sa sb sc
6-pulse Hall Effect Position Sensor
Parameters Description
R (stator resistance) Stator phase resistance R, in Ohm
L (stator self ind.) Stator phase self inductance L, in H
M (stator mutual ind.) Stator mutual inductance M, in H
The mutual inductance M is a negative value. Depending on the winding
structure, the ratio between M and the stator self inductance L is normally
between -1/3 and -1/2. If M is unknown, a reasonable value of M equal to -0.4*L
can be used as the default value.
Vpk / krpm Peak line-to-line back emf constant, in V/krpm (mechanical speed)
Vrms / krpm RMS line-to-line back emf constant, in V/krpm (mechanical speed).
The values of Vpk/krpm and Vrms/krpm should be available from the machine
data sheet. If these values are not available, they can be obtained through
experiments by operating the machine as a generator at 1000 rpm and measuring
the peak and rms values of the line-to-line voltage.
No. of Poles P Number of poles P
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Shaft Time Constant Shaft time constant shaft
theta_0 (deg.) Initial rotor angle r, in electrical deg.
The initial rotor angle is the rotor angle at t=0. The zero rotor angle position is
defined as the position where Phase A back emf crosses zero (from negative to
positive) under a positive rotation speed.
theta_advance (deg.) Position sensor advance angle advance, in electrical deg.
The advance angle is defined as such that, for a brushless dc machine with a 120o
trapezoidal back emf waveform, if the advance angle is 0, the leading edge of the
Phase A hall effect sensor signal will align with the intersection of the rising
ramp and the flat-top of the back emf trapezoidal waveform.
Conduction Pulse Width Position sensor conduction pulse width, in electrical deg.
Positive conduction pulse can turn on the upper switch and negative pulse can
turn on the lower switch in a full bridge inverter. The conduction pulse width is
120 electrical deg. for 120o conduction mode.
Torque Flag Output flag for internal developed torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
Parameters Description
Resistance (phase-phase) Phase-to-phase (or line-to-line) resistance, in Ohm
Inductance (phase-phase) Phase-to-phase (or line-to-line) inductance, in H
Speed Constant Speed constant Kv, defined as the ratio between the speed and the applied voltage,
in rpm/V
Torque Constant Torque constant Kt, defined as the ratio between the generated torque and the
applied current, in N*m/A
No. of Poles P Number of poles P
Moment of Inertia Moment of inertia J of the machine, in kg*m2
No Load Speed The motor speed at no load with the nominal voltage applied, in rpm
No Load Current The current under no load operation, in A
Torque Flag Output flag for internal developed torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
The node assignments of the image are: Nodes a, b, and c are the stator winding terminals for Phase A, B, and C,
respectively. The stator windings are Y connected, and Node n is the neutral point. The shaft node is the
connecting terminal for the mechanical shaft. They are all power nodes and should be connected to the power
circuit.
Node sa, sb, and sc are the outputs of the built-in 6-pulse hall effect position sensors for Phase A, B, and C,
respectively. The sensor output is a bipolar commutation pulse (1, 0, and -1). The sensor output nodes are all
control nodes and should be connected to the control circuit.
For more details on the definition and use of the master/slave flag, refer to Section 4.6.1.
The equations of the 3-phase brushless dc machine are:
where va, vb, and vc are the phase voltages, ia, ib, and ic are the phase currents, R, L, and M are the stator phase
resistance, self inductance, and mutual inductance, and Ea, Eb, and Ec are the back emf of Phase A, B, and C,
respectively.
The back emf voltages are a function of the rotor mechanical speed m and the rotor electrical angle r, that is:
The coefficients ke_a, ke_b, and ke_c are dependent on the rotor angle r. In this model, an ideal trapezoidal
waveform profile is assumed, as shown below for Phase A. Also shown is the Phase A hall effect sensor signal
Sa.
o
360
-Kpk
where Kpk is the peak trapezoidal value, in V/(rad./sec.), which is defined as:
Given the values of Vpk/krpm and Vrms/krpm, the angle is determined automatically in the program.
The developed torque of the machine is:
T em =(Ea ia + Eb ib + Ec ic ) m
The mechanical equations are:
where B is the friction coefficient, Tload is the load torque, and P is the number of poles. The coefficient B is
calculated from the moment of inertia J and the shaft time constant shaft as below:
The shaft time constant shaft, therefore, reflects the effect of the friction and windage of the machine. Note that
when the shaft time constant is set to 0, the friction term is B*m is ignored.
To better understand the definition of the shaft time constant, we can represent the mechanical equation with the
following equivalent circuit:
m
1/B Tload
(or shaft/J)
This circuit shows that the shaft time constant shaft is equal to the RC time constant of the resistor 1/B and the
capacitor J. Therefore, the shaft time constant can be measured by the following test:
- Connect the machine to an external mechanical source. With the stator side in open circuit, drive the
machine to a certain speed.
- Remove the mechanical source. The shaft time constant will be equal to the time that it takes the
machine to decelerate to 36.8% of its initial speed.
More Explanation on the Hall Effect Sensor:
A hall effect position sensor consists of a set of hall switches and a set of trigger magnets.
The hall switch is a semiconductor switch (e.g. MOSFET or BJT) that opens or closes when the magnetic field
is higher or lower than a certain threshold value. It is based on the hall effect, which generates an emf
proportional to the flux-density when the switch is carrying a current supplied by an external source. It is
Chapter 4: Power Circuit Components 113
common to detect the emf using a signal conditioning circuit integrated with the hall switch or mounted very
closely to it. This provides a TTL-compatible pulse with sharp edges and high noise immunity for connection to
the controller via a screened cable. For a three-phase brushless dc motor, three hall switches are spaced 120
electrical deg. apart and are mounted on the stator frame.
The set of trigger magnets can be a separate set of magnets, or it can use the rotor magnets of the brushless
motor. If the trigger magnets are separate, they should have the matched pole spacing (with respect to the rotor
magnets), and should be mounted on the shaft in close proximity to the hall switches. If the trigger magnets use
the rotor magnets of the machine, the hall switches must be mounted close enough to the rotor magnets, where
they can be energized by the leakage flux at the appropriate rotor positions.
Example: Defining Brushless DC Motor Parameters from Manufacturer Datasheet
This example illustrates how to define brushless dc motor parameters from manufacturer datasheet. Below is
the information provided on the datasheet of the brushless dc motor Maxon EC-22-16730 (32V, 50W) from
Maxon Motor.
Values at nominal voltage
Nominal voltage (V)32
No load speed (rpm)38700
No load current (mA)327
Characteristics
Terminal resistance phase to phase (Ohm)0.363
Terminal inductance phase to phase (mH)0.049
Torque constant (mNm/A)7.85
Speed constant (rpm/V)1220
Rotor inertia (gcm2)4.2
Other specifications:
Number of pole pairs1
Number of phases3
Using the element based on manufacturer datasheet information, and after converting all the quantities to the SI
units, the motor parameters in PSIM are defined as follows:
Resistance (phase-phase) 0.363
Inductance (phase-phase) 0.049m
Speed Constant 1220
Torque Constant 7.85m
No. of Poles P 2
Moment of Inertia 4.2e-7
No Load Speed 38700
No Load Current 327m
Torque Flag 1
Master/Slave Flag 1
Speed
Tem
3-phase currents
c
n
field+ field-
Attributes:
Parameters Description
Rs (stator) Stator winding resistance, in Ohm
Ls (stator) Stator leakage inductance, in H
Ldm (d-axis mag. ind.) d-axis magnetizing inductance, in H
Lqm (q-axis mag. ind.) q-axis magnetizing inductance, in H.
Rf (field) Field winding resistance referred to the stator side, in Ohm
Lfl (field leakage ind.) Field winding leakage inductance referred to the stator side, in H
Rdr (damping cage) Rotor damping cage d-axis resistance referred to the stator side, in Ohm
Where
In the expression, Rfr, Rdrr, and Rqrr are the resistances of the field winding and damping winding in real
values, and [ = [L]*[I]. The inductance matrix is defined as follows:
and
L drl = L dr – L dm
The PMSM (with load) has various types of mechanical load included in the block. The node nm is a control
node that provides the mechanical speed in rpm. The node Tq is a control node that provides the torque sensor
output in N*m. The torque sensor is placed between the machine and the load. For load parameter definitions,
refer to each mechanical load
.
Chapter 4: Power Circuit Components 117
Attributes:
Parameters Description
Rs (stator resistance) Stator winding resistance, in Ohm
where va, vb, vc, and ia, ib, and ic, and a, b c are the stator phase voltages, currents, and flux linkages,
respectively, and Rs is the stator phase resistance. The flux linkages are further defined as:
where r is the rotor electrical angle, and pm is the peak stator phase flux linkage defined as:
The stator self and mutual inductances are rotor osition dependent, and are defined as:
118 Chapter 4: Power Circuit Components
Laa = Ls + Lo + L2 cos(2 r )
2
Lbb = Ls + Lo + L2 cos(2 r + )
3
2
Lcc = Ls + Lo + L2 cos(2 r − )
3
L 2
Lab = Lba = − o + L2 cos(2 r − )
2 3
L 2
Lac = Lca = − o + L2 cos(2 r + )
2 3
L
Lbc = Lcb = − o + L2 cos(2 r )
2
where Ls is the stator leakage inductance. The variables in the abc frame can be converted to the dq0
frame using the following transformation:
The d-axis and q-axis inductances are associated with the inductances in the abc frame as follows:
where B is a coefficient, Tload is the load torque, and P is the number of poles. The coefficient B is calculated
from the moment of inertia J and the shaft time constant shaft as below:
Attributes:
Parameters Description
Rs Stator winding resistance, in Ohm
Ld Stator d-axis inductance, in H
Lq Stator q-axis inductance, in H. The d-q coordinate is defined such that the d-axis
passes through the center of the magnet, and the q-axis is in the middle between two
magnets. The q-axis is leading the d-axis.
Vpk/krpm Peak line-to-line back emf constant, in V/krpm (mechanical speed).
The value of Vpk/krpm should be available from the machine data sheet. If this data
is not available, it can be obtained through an experiment by operating the machine
as a generator at 1000 rpm and measuring the peak line-to-line voltage.
No. of Poles P Number of poles P
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Shaft Time Constant Shaft time constant shaft
Initial Rotor Angle Initial rotor electrical angle, in deg.
Csd Stator d-axis differential capacitance, in F
Csq Stator q-axis differential capacitance, in F
Cs Stray capacitance of the phase winding, in F
Attributes:
Parameters Description
Rs (stator resistance) Stator winding resistance, in Ohm
Ls (stator leakage ind.) Stator d-axis inductance, in H
Vpk / krpm Peak line-to-line back emf constant, in V/krpm (mechanical speed).
This value should be available from the machine data sheet. If not, it can be obtained
through experiment by operating the machine as a generator at 1000 rpm and
measuring the peak line-to-line voltage.
No. of Poles P Number of poles P
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Shaft Time Constant Shaft time constant shaft, in sec. It is associated with the friction coefficient B as: B
= J / shaft.
where Ls is the stator leakage inductance. Since Ls is normally very small, Ld can be considered equivalent to
Ldm, and Lq can be considered equivalent to Lqm.
The Transformation Flag defines the transformation convention between the abc frame and the dq frame. When
the Transformation Flag is 0:
Attributes:
Parameters Description
Rs (stator resistance) Stator winding resistance, in Ohm
Ld (d-axis ind) Stator d-axis inductance, in H
Lq (q-axis ind.) Stator q-axis inductance, in H
Vpk / krpm Peak line-to-line back emf constant, in V/krpm (mechanical speed).
This value should be available from the machine data sheet. If not, it can be obtained
through experiment by operating the machine as a generator at 1000 rpm and
measuring the peak line-to-line voltage.
No. of Poles P Number of poles P
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Shaft Time Constant Shaft time constant shaft, in sec. It is associated with the friction coefficient B as: B
= J / shaft.
A 6-phase PMSM has the stator winding composed of two sets of 3-phase windings.
For a 6-phase PMSM with 0 degree phase shift, the two sets of winding are spatially shifted by 0°
For a 6-phase PMSM with 30 degree phase shift, the two sets of winding are spatially shifted by 30°, as shown
in the image below. Each set of the 3-phase stator windings is Y-connected, as shown below:
b+
b-
c+
c-
Parameters Description
Resistance Stator phase resistance R, in Ohm
Inductance Lmin Minimum phase inductance Lmin, in H
Inductance Lmax Maximum phase inductance Lmax, in H
Theta_min (deg.) Duration of the interval min where the inductance is at the minimum, in deg.
Theta_max (deg.) Duration of the interval max where the inductance is at the maximum, in deg.
Stator Pole Number Number of stator poles (teeth)
Rotor Pole Number Number of rotor poles (teeth)
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Torque Flag Output flag for internal developed torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
For more details on the definition and use of the master/slave flag, refer to Section 4.6.1.
The node assignments are: Nodes a+, a-, b+, b-, c+, c-, etc. are the stator winding terminals for Phase a, b, c, d,
and e, respectively. The shaft node is the connecting terminal for the mechanical shaft. They are all power nodes
and should be connected to the power circuit
.The equation of the switched reluctance machine for one phase is:
where v is the phase voltage, i is the phase current, R is the phase resistance, and L is the phase inductance. The
phase inductance L is a function of the rotor angle (in electrical deg.), as shown in the following figure. The
inductance profile is half-wave symmetrical. That is, it repeats itself after 180o.
Chapter 4: Power Circuit Components 125
L
max
Lmax
Lmin
rf min
The rotor angle is defined such that, when the stator and the rotor teeth are completely aligned, = 0. The value
of the inductance can be in either rising stage, flat-top stage, falling stage, or flat-bottom stage.
If we define the constant k as the rising slope of the inductance from Lmin to Lmax (which is the same as the
falling slope from Lmax to Lmin), and the interval of the rising/falling slope is rf, we can express the inductance
L as a function of the rotor angle (from 0 to 180o) as follows:
for
for
for
for
for
b+
b-
c+
c-
Parameters Description
Resistance Stator phase resistance R, in Ohm
Stator Pole Number Number of stator poles (teeth) Ns_pole
Rotor Pole Number Number of rotor poles (teeth) Nr_pole
Number of Turns The number of turns of the stator winding
Moment of Inertia Moment of inertia J of the machine, in kg*m2
Initial Rotor Angle Initial rotor mechanical angle , in degree.
Torque Flag Output flag for internal developed torque Tem
Master/Slave Flag Master/slave flag of the machine (1: master; 0: slave)
The nonlinear characteristic data must be provided in the tabs Flux Table and the Torque Table. The
information required are:
Parameters Description
File The name of the external file containing the data
Display When this box is checked, the file name is displayed in the schematic
Rows The number of rows of the table.
Columns The number of columns of the table.
Open File... Open the external file and load the data.
Reload Data If the data are modified but the modifications are unwanted, reload the data from the
original file into the table
Save As... To save the table data into an external file
Those data may be entered into the tables directly after the numbers of rows and columns are set. They may also
be defined in external files. When the file name is empty, the internal table data is used. If an external text file is
defined and its name is entered, the external file takes the precedence and will overwrite the internal data.
The Flux Table file has the following format:
m, n
1, 2, ..., m
I1, I2, ..., In
1,1, 1,2, ..., 1,n
2,1, 2,2, ..., 2,n
... ... ...
m,1, m,2, ..., m,n
The torque table file has the following format:
m, n
1, 2, ..., m
I1, I2, ..., In
Tem1,1, Tem1,2, ..., Tem1,n
Tem2,1, Tem2,2, ..., Tem2,n
... ... ...
Temm,1, Temm,2, ..., Temm,n
Because of the half-wave symmetry, only flux and torque values from =0 to 180o/(Nr_pole/2) need to be
provided. Note that the row vector and column vector must be monotonically increasing.
The equation of a nonlinear switched reluctance machine for one phase is:
d( L i)
v = i R + -----------------
dt
where v is the phase voltage, i is the phase current, R is the phase resistance, and L is the phase inductance
which depends on both the rotor angle and the current as defined by the lookup table.
The developed torque is calculated from the lookup table.
Is Id
Is Id
Iq
Ld Iq
Lq
Parameters Description
Ld d-axis inductance of the PMSM, in H
Lq q-axis inductance of the PMSM, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical speed)
Number of Poles Number of poles of the machine
Maximum Inverter Maximum inverter output current amplitude (peak), in A
Current
For nonlinear IPM, the Ld and Lq parameters are the values at the rated operating condition.
The MTPA control block has the following inputs and outputs:
Input Signals:
Is: Inverter current amplitude reference
128 Chapter 4: Power Circuit Components
Ld: d-axis inductance Ld at the current operating condition, in H
Lq: q-axis inductance Lq at the current operating condition, in H
Output Signals:
Id: d-axis current reference
Iq: q-axis current reference
Given the current amplitude reference, this block will calculate the d-axis and q-axis current references Id and
Iq such that the maximum torque is generated.
Is Id Icmd Id Is
Vdc Id
Iq Vdc Iq Vdc Iq
We
Wm
Ld
Lq
Parameters Description
Rs (stator resistance) Stator winding resistance of the machine, in Ohm
Ld (d-axis inductance) d-axis inductance of the PMSM machine, in H
Lq (q-axis inductance) q-axis inductance of the PMSM machine, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical speed)
Number of Poles Number of poles of the machine
Maximum Inverter Maximum inverter output current amplitude (peak), in A
Current
The field weakening (IPM) control block accepts the following input signals.
Is: Inverter current amplitude reference
Vdc: DC bus voltage feedback
Wm: Motor mechanical speed, in rad/sec.
It has the following output signals:
Id: d-axis current reference
Iq: q-axis current reference
This block is for the control of linear PMSM machines only. When the machine speed is higher than a certain
value, the machine will not be able to provide the maximum amount of torque. Instead, it will be limited by the
machine power rating. Given the current amplitude reference, dc bus voltage, and the motor speed, the field
weakening block will calculate the d-axis and q-axis current references Id and Iq to achieve a maximum power
operation.
This block requires the parameters of the PMSM controlled and the inverter voltage and current ratings.
Parameters Description
Number of Poles Number of poles of the machine
Maximum Inverter Maximum inverter output current amplitude (peak), in A
Current
Parameters Description
Ld (d-axis inductance) The inductance on d-axis, in H
Vpk/krpm The ratio of peak voltage versus speed. in V/krpm
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter output current amplitude (peak), in A
The block has the following inputs and outputs.
Input Signals:
Is: Inverter current amplitude reference
Vdc: DC bus voltage feedback
Wm: Motor mechanical speed
Output Signal:
Id: d-axis current reference
Iq: q-axis current reference
This block is for the control of linear surface-mounted PMSM (SPM) machines only. It is not for internal
PMSM (IPM) machines. In a SPM, the d-axis and q-axis inductance values are equal.
When the machine speed is higher than a certain value, the machine will not be able to generate the maximum
torque. Instead, it will be limited by the machine power rating. Given the current amplitude, dc bus voltage, and
the motor speed, the field weakening control block will calculate the d-axis and q-axis current references Id and
Iq to operate in the constant power region.
Attributes:
Parameter Description
Netlist XML File The file defines the interface between PSIM and JMAG. The file extension is .xml.
JMAG Input File The JMAG input data file. It has the .jcf extension. Note that the .xml and .jcf files
must be in the same directory.
JMAG Case Text Comments for the JMAG circuit
Terminal Names Terminal names of the block
The power circuit nodes and mechanical shaft nodes, as well as the rest of the interface between PSIM and the
JMAG data files, are defined in the Netlist XML File. This file is in XML format, and is generated by JMAG. To
specify this file, click on the browse button at the right of the edit field.
When a specific XML is selected, the .jcf data file will be read, and the terminals (nodes) of the block will be
Parameter Description
dt_of_JMAG Time step used in JMAG.
Ir Rated current. It is used in JMAG
dl_threshold Current threshold. It is used in JMAG
dr_threshold Displacement threshold. It is used in JMAG
Moment of Inertia Moment of inertia of the machine, in kg*m2.
Shaft Time Constant Shaft time constant of the machine, in sec.
Back emf Flag Display flag for all FEM coil currents (1: display; 0: no display)
Rotor Angle Flag Display flag for all shaft angles
Speed Flag Display flag for all shaft speeds
Torque Flag Display flag for all developed torques
shaft1 Master Flag Master/slave flag of the machine (1: master; 0: slave)
Please consult JMAG manuals and documents on how to set up the co-simulation on the JMAG side.
Attributes:
Parameter Description
Link Table File The XML file that defines the interface between PSIM and JMAG. It has the .xml
extension.
JMAG Input File The JCF input data file for JMAG. It has the .jcf extension. Note that the .xml file and
the .jcf file must be in the same directory.
JMAG Case Text Comments for the JMAG circuit
IN Nodes Nodes that pass the values from PSIM to JMAG
OUT Nodes Nodes that pass the values from JMAG to PSIM
The setup process of calling JMAG in PSIM through the MagCoupler block is as follows.
In JMAG:
• In the JMAG circuit, connect a voltage function to the right of the FEM coil. Under Electrical Potential
in the property window, choose Constant Value, and set Constant Value [V] to 0.
• Connect a current probe to the left of the FEM coil.
• Connect another voltage function to the left of the current probe (the circuit will look like what is shown
above). In the property window, choose Cooperates with an external circuit simulator.
• Highlight the inductor structure window. Go to the menu Conditions >> Create Conditions. From the
Conditions List, highlight Coupled External Circuit Simulator, and click Modify.
• On the Coupled External Circuit Simulator dialog, there are two lists. The list on the right, called
JMAG, contains all the functions that can be used to interface with PSIM. The list on the left, called
External Circuit Simulator, contains the functions that are selected to interface with PSIM. In this case,
there are two items in the JMAG list, one is the Voltage Function, and the other is the Current Probe.
• Highlight the Voltage Function, and click on the <- button to move the item from the list on the right to
the left. Repeat the same step to the Current Probe. Now both items should appear in the list on the left.
• Highlight the Voltage Function, and change the terminal name to VL. Also, change the Current Probe ter-
minal name to iL. Close the dialog window.
• Go to the menu File >> Export and select JCF.... With the JCF file name defined as "inductor", the JCF
file "inductor.jcf" and the link table file "inductor_csl.xml" will be generated.
• Copy the JCF file "inductor.jcf" and the link table file "inductor_csl.xml" to the folder containing the
PSIM schematic file "inductor_jmag.sch". Rename the link table file to "inductor_jmag.xml". Note that
the XML file does not have to be renamed, and both the JCF and XML files do not have to be moved to
the folder of the schematic file. They are done here for the simplicity of file management
In PSIM:
• After the rest of the power circuit is created, go to Elements >> Power >> MagCoupler Module, and
select MagCoupler Block. Place the block on the schematic.
• Double click on the MagCoupler block to bring out the property window. click on the browser button
Parameter Description
JMAG Input File The JMAG-RT data file with the .rtt extension.
Once a JMAG-RT file is selected, PSIM will detect the type of device, and will change to its corresponding
image with the associated parameters accordingly.
On the dialog, a JMAG Express Online button is provided. Clicking on this button will lead to the login page
of the JMAG-Express Online website. JMAG-Express Online is a free evaluation tool from JSOL for quick
motor design. After a motor is designed, one can generate a JMAG-RT rtt file, and then download the motor
parameters by clicking on the Download Machine Data button.
M- M+ M- M+
M- M+ M- M+
Attributes:
Parameter Description
Netlist XML File The XML file that defines the interface between PSIM and JMAG-RT. It has the .xml
extension.
JMAG-RT Input File The JMAG-RT data file. It has the .rtt extension. Note that the .xml file and the .rtt
file must be in the same directory.
JMAG Case Text Comments for the JMAG-RT circuit
Terminal Names Terminal names of the block
Parameter Description
shaft1_MomentofInertia Moment of inertia of the machine, in kg*m2
shaft1_ShaftTimeConstant Shaft time constant of the machine, in sec.
RU_resistance Resistance of Phase U, in Ohm
RV_resistance Resistance of Phase V, in Ohm
RW_resistance Resistance of Phase W, in Ohm
OffsetAngle Initial rotor angle, in mechanical deg.
coef_inductance Inductance coefficient (used in JMAG-RT)
coef_flux Flux coefficient (used in JMAG-RT)
coef_torque Torque coefficient (used in JMAG-RT)
coef_magnet Magnet coefficient (used in JMAG-RT)
coef_material Material coefficient (used in JMAG-RT)
turns_coil1 Coil 1 turns (used in JMAG-RT)
turns_coil2 Coil 2 turns (used in JMAG-RT)
Current Flag Display flag for 3-phase FEM coil currents (1: display; 0: no display)
Note: When iron loss is present, this current is only the current flowing through
the FEM coil. The total phase current will be the sum of this current and the
current through the iron loss resistor Rloss. To view the total phase current, use
an ammeter externally.
138 Chapter 4: Power Circuit Components
Back emf Flag Display flag for 3-phase FEM coil back emf
Rotor Angle Flag Display flag for the rotor angle in mechanical deg.
Speed Flag Display flag for the shaft mechanical speed in rad./sec.
Torque Flag Display flag for the developed torque in N*m
Power Loss Flag Display flag for the power loss if iron loss is present. When the flag is set, the
eddy current loss Ploss_eddy and hysteresis loss Ploss_hys will be displayed.
Note that this parameter will be shown only if the JMAG-RT data file contains
the power loss information.
Including Power Loss Flag to indicate if the power loss is included in the circuit simulation. If it is 0,
the power loss is not included in the circuit simulation, and it has no impact on
the motor voltages/currents. If it is 1, the power loss is included in the circuit
simulation, and it will impact the motor voltages/currents.
shaft1 Master Flag Master/slave flag of the machine (1: master; 0: slave)
Parameter Description
RA+ Resistance of Phase A+, in Ohm
RA- Resistance of Phase A-, in Ohm
RB+ Resistance of Phase B+, in Ohm
RB- Resistance of Phase B-, in Ohm
MomentofInertia Moment of inertia of the machine, in kg*m2
ShaftTimeConstant Shaft time constant of the machine, in sec.
OffsetAngle Initial rotor angle, in mechanical deg.
turns_coil2 Coil 2 turns (used in JMAG-RT)
coef_inertia1 Inertia 1 coefficient (used in JMAG-RT)
coef_inertia2 Inertia 2 coefficient (used in JMAG-RT)
Current Flag Display flag for 3-phase FEM coil currents (1: display; 0: no display)
Back emf Flag Display flag for 3-phase FEM coil back emf
Rotor Angle Flag Display flag for the rotor angle in mechanical deg.
Speed Flag Display flag for the shaft mechanical speed in rad./sec.
Torque Flag Display flag for the developed torque in N*m
shaft1 Master Flag Master/slave flag of the machine (1: master; 0: slave)
Parameter Description
RA Resistance of the solenoid, in Ohm
Mass Mass of the solenoid, in kg
ShaftTimeConstant Shaft time constant of the solenoid, in sec.
SpringConstant Spring constant of the solenoid (used in JMAG-RT)
DispLimitMax Maximum limit of the displacement of the solenoid, in m
Chapter 4: Power Circuit Components 139
DispLimitMin Minimum limit of the displacement of the solenoid, in m
OffsetDisp Initial displacement, in m
turns_coil2 Coil 2 turns (used in JMAG-RT)
coef_mass1 Mass 1 coefficient (used in JMAG-RT)
coef_mass2 Mass 2 coefficient (used in JMAG-RT)
Current Flag Display flag for 3-phase FEM coil currents (1: display; 0: no display)
Back emf Flag Display flag for 3-phase FEM coil back emf
Position Flag Display flag for the solenoid position in m
Velocity Flag Display flag for the solenoid velocity in m/sec.
Force Flag Display flag for the developed force in N
mass1 Master Flag Master/slave flag of the solenoid (1: master; 0: slave)
Parameter Description
RU Resistance of Phase U, in Ohm
RV Resistance of Phase V, in Ohm
RW Resistance of Phase W, in Ohm
Mass Mass of the machine, in kg
ShaftTimeConstant Shaft time constant of the solenoid, in sec.
OffsetDisp Initial displacement, in m
coef_inductance Inductance coefficient (used in JMAG-RT)
coef_flux Flux coefficient (used in JMAG-RT)
coef_force Torque coefficient (used in JMAG-RT)
coef_magnet Magnet coefficient (used in JMAG-RT)
coef_material Material coefficient (used in JMAG-RT)
turns_coil1 Coil 1 turns (used in JMAG-RT)
turns_coil2 Coil 2 turns (used in JMAG-RT)
coef_mass1 Mass 1 coefficient (used in JMAG-RT)
coef_mass2 Mass 2 coefficient (used in JMAG-RT)
Current Flag Display flag for 3-phase FEM coil currents (1: display; 0: no display)
Back emf Flag Display flag for 3-phase FEM coil back emf
Position Flag Display flag for the solenoid position in m
Velocity Flag Display flag for the solenoid velocity in m/sec.
Force Flag Display flag for the developed force in N
mass1 Master Flag Master/slave flag of the solenoid (1: master; 0: slave)
In all the parameter definitions above, except the flags (current flag, back emf flag, rotor angle/position flag,
speed/velocity flag, torque/force flag, and master flag), all other parameters are read from the .rtt file defined in
the XML file. These values can be changed, and for these parameters noted with "used in JMAG-RT", the
changed values will be sent back to JMAG-RT for calculation.
140 Chapter 4: Power Circuit Components
Several MagCoupler-RT examples are provided under the "examples\MagCoupler-RT" folder.
Images:
General Type Constant-Power Constant-Torque Constant-Speed Ext. Controlled
Parameters Description
Tc Constant torque term
k1 (coefficient) Coefficient for the linear term
k2 (coefficient) Coefficient for the quadratic term
k3 (coefficient) Coefficient for the cubic term
Moment of Inertia Moment of inertia of the load, in kg*m2
A general-type load is expressed as:
Parameters Description
Maximum Torque Maximum torque Tmax of the load, in N*m
Base Speed Base speed nbase of the load, in rpm
Moment of Inertia Moment of inertia of the load, in kg*m2
The torque-speed curve of a constant-power load is shown below:
Torque
(N*m)
When the mechanical speed is less than the base speed nbase, the load torque is:
When the mechanical speed is above the base speed, the load torque is”
Parameters Description
Constant Torque Torque constant Tconst, in N*m
Moment of Inertia Moment of inertia of the load, in kg*m2
If the reference direction of a mechanical system enters the dotted terminal, the load is along the reference
direction, and the loading torque to the master machine is Tconst. Otherwise the loading torque will be -Tconst.
See Section 2.6.1 for more detailed explanation on the reference direction.
A constant-torque load is expressed as:
Parameters Description
Constant Speed (rpm) Speed constant, in rpm
Moment of Inertia Moment of inertia of the load, in kg*m2
A constant-speed mechanical load defines the speed of a mechanical system, and the speed will remain
constant, as defined by the speed constant.
Parameters Description
Speed Flag Flag for speed dependency
Flag = 0: The load is frictional and is always against the rotational direction;
Flag = 1: The load is independent of the rotational direction.
Moment of Inertia Moment of inertia of the load, in kg*m2
An externally-controlled mechanical load is used to define a load of an arbitrary load profile.
The value of the mechanical load is defined by the voltage value at the control node (1V corresponds to 1 N*m).
This node is a control circuit node.
142 Chapter 4: Power Circuit Components
4.9.2 Mechanical-Electrical Interface Block
This block allows users to access the internal equivalent circuit of the mechanical system of a machine.
Image:
Attribute:
Parameter Description
Master/Slave Flag Flag for the master/slave mode (1: master, 0: slave)
Similar to electric machines, the mechanical-electrical interface block can be used to define the reference
direction of a mechanical system through the master/slave flag. When the interface block is set to the master
mode, the reference direction is along the mechanical shaft, away from the mechanical node, and towards the
rest of the mechanical elements.
Let’s assume that a drive system consists of a motor (with a developed torque of Tem and a moment of inertia of
J1) and a mechanical load (with a load torque of Tload and a moment of inertia of J2). The equation that
describes the mechanical system is:\
Tem J2 Tload
In this circuit, the two current sources have the values of Tem and Tload, and the capacitors have the values of J1
and J2. The node-to-ground voltage (speed node voltage) represents the mechanical speed m. This is analogous
to C*dV/dt = i for a capacitor where C = J1+J2, V = m, and i = Tem-Tload.
In PSIM, mechanical equivalent circuits for motors and mechanical loads all use the capacitor-based circuit
model. The mechanical-electrical interface block provides access to the internal mechanical equivalent
circuit. If the mechanical side of an interface block (with the letters “M”) is connected to a mechanical shaft, the
electrical side (with the letters “E”) will be the speed node of the mechanical equivalent circuit. One can thus
connect any electrical circuits to this node.
With this element, users can connect built-in motors or mechanical loads with user-defined load or motor
models.
Example: An induction machine with a custom mechanical load model
The figure below shows an induction machine connected to a user defined mechanical load model through the
mechanical-electrical interface block. As explained above, the voltage at the electrical side represents the shaft
mechanical speed. A current source flowing out of this node represents a mechanical load, and a capacitor
connected to this node represents the load moment of inertia.
Wm
Mechanical
speed
This block is used in situations where both mechanical systems have a device in the master mode, and they must
be connected together to form one system. Based on the connection convention in PSIM, a mechanical system
can have only one master device. In this case, the mechanical coupling block can be inserted in between, and the
mechanical system on each side of the coupling block can have its own device in the master mode.
Shaft 1
Shaft 2
Attribute:
Parameter Description
Gear Ratio The gear ratio a
Shaft 1 Master/Slave Flag Master/slave flag for Shaft 1, marked with the bigger dot.
Shaft 2 Master/Slave Flag Master/slave flag for Shaft 2
Attribute:
Parameter Description
Gain Gain of the sensor
The output of the speed sensor is in rpm.
The output of the speed/torque sensor depends on how the sensor is connected in a mechanical system.
For the speed sensor, if the sensor is along the reference direction of the mechanical system (refer to Section
4.6.1 for more details on the definition and use of the reference direction), a positive mechanical speed would
give a positive sensor output. Otherwise, if the sensor is opposite to the reference direction of the mechanical
system, a positive mechanical speed would give a negative sensor output.
For example, in the mechanical system below, Speed Sensor 1 is along the reference direction, and Speed
Sensor 2 is opposite to the reference direction of the mechanical system. If the actual mechanical speed is
positive, the output of Speed Sensor 1 will be positive, and the output of Speed Sensor 2 will be negative.
Reference direction of the mechanical system
The torque sensor measures the torque difference between the dotted side of the sensor and the undotted side.
To understand the physical meaning of the torque sensor measurement, we use the diagram below as an
illustration.
The figure on the left shows a torque sensor connected with a 10-N*m mechanical load, and the reference
direction of the mechanical system is from left to right. Based on the reference direction, if we use the right-
hand method, by pointing the thumb in the reference direction and rotating the right hand, the direction of the
fingers will show the direction of the positive speed and torque. The physical interpretation of the system is
shown on the right.
10 Wm Load
10
Torque sensor
10 Wm Load
10
Torque sensor
To understand how the torque sensor is modeled in the equivalent circuit of the mechanical system, we use the
following system as an example.
Load 1 Load 2
Sensor 1 Sensor 2
The system consists of one machine, 2 torque sensors, and 2 mechanical loads. The torques and moment of
inertia for the machine and the loads are as labelled in the diagram. The reference direction of this mechanical
system is from left to right. The equation for this system can be written as:
Sensor 1 Sensor 2
m
The node voltage in the circuit represents the mechanical speed m. The current probe on the left represents the
reading of the Torque Sensor 1. Similarly, the current probe on the right represents the reading of the Torque
Sensor 2. Note that the second current probe is from right to left since Sensor 2 is opposite to the reference
direction of the mechanical system.
The equivalent circuit also illustrates how mechanical power is transferred. The multiplication of the current to
the voltage, which is the same as the torque times the mechanical speed, represents the mechanical power. If the
power is positive, it is transferred in the direction of the speed m.
Attribute:
Parameter Description
Initial Position (deg.) Initial shaft position, in deg.
No. of Bits of Resolution Number of Bits of resolution N
The encoder output resolution is determined by the number of bits N. The encoder has two outputs: one is the
number of counts (the range is from 0 to 2N-1), and the other is the position, in mechanical deg. (the range is
from 0 to 360o).
An example of a PMSM drive system using the absolute encoder is given in the sample file "Absolute Encoder
PMSM Drive.sch".
Attribute:
Parameter Description
Initial Position (deg.) Initial shaft position, in deg.
No. of Lines Number of lines that are in the code pattern of the code disk of the encoder
The two quadrature outputs are A and A (A is the inverse of A), and B and B. They are offset by 90o. In
addition, the encoder provides separate index signal output Z and Z that provide one count per revolution.
An example of an induction motor drive system using the incremental encoder is given in the sample file
"Incremental Encoder INDM Drive.sch".
Chapter 4: Power Circuit Components 147
4.9.6.3 Resolver
A resolver is essentially a rotary transformer with one rotor winding and two stator windings. These two stator
windings, referring to as the COS winding and SIN winding, are located 90o apart.
As the shaft rotates, the output voltages of the COS and SIN windings vary as the cosine and sine functions of
the shaft angle.
Image:
cos+
sin+
cos-
sin-
Attribute:
Parameter Description
Initial Position (deg.) Initial shaft position, in deg.
No. of Poles Number of poles of the resolver
The resolver has four outputs: cos+, cos- (the inverse of cos+), sin+, and sin- (the inverse of sin+). The peak
amplitude of all the outputs is 1.
An example of a PMSM drive system using the resolver is given in the sample file "Resolver PMSM
Drive.sch".
Attribute:
Parameter Description
Initial Position (deg.) Initial shaft position, in deg.
No. of Poles Number of poles of the sensor
The hall effect sensor provides three logic signal outputs A, B, and C, which are spaced 120 electrical deg.
apart.
The hall effect sensor is the same as the built-in hall effect sensor in the brushless dc machine.
Examples of BDCM motor drive systems using the hall effect sensor are given in the "examples" sub-folder of
the PSIM directory.
In the images, beside the diode module terminals, there is one extra node. This node is for the diode total loss
P_loss.
Parameters Description
Device The specific device selected from the device database
Number of Parallel Devices The number of identical devices connected in parallel
Frequency Frequency, in Hz, under which the losses are calculated
Pcond Calibration Factor Calibration factor Kcond of the conduction loss Pcond
Psw Calibration Factor Calibration factor Ksw of the switching loss Psw
Operation Mode This flag is only used for three Dual package types.
0: For symmetrical operation, power losses are shared equally by two
devices, and the junction temperature of both devices are the same.
1: For individual operation. Power losses and the junction temperature of
each device is simulated separately.
For all other packages, Operation Mode=0 only.
Initial Tj Initial junction temperature, in oC
Initial T_case Initial case temperature, in oC
Initial Ploss Initial total power loss, in W
Tj Flag Display flag for the junction temperature Tj of the diode
Ploss Flag Display flag for the conduction loss Pcond, switching loss Psw, and the total
power loss
Current Flag Display flag for switch currents
Voltage Flag Display flag for switch voltages
Parameter Frequency refers to the frequency under which losses are calculated. For example, if the device
operates at the switching frequency of 10 kHz, and Frequency is also set to 10 kHz, the losses will be the value
for one switching period. However, if Frequency is set to 60 Hz, the losses will be the value for a period of 60
Hz.
Parameter Pcond Calibration Factor is the correction factor for the conduction loss. For the example, if the
calculated conduction loss before the correction is Pcond_cal, then
Pcond = Kcond * Pcond_cal
Similarly, Parameter Psw Calibration Factor is the correction factor for the switching loss. For the example, if
the calculated switching loss before the correction is Psw_cal, then
Psw = Ksw * Psw_cal
When several identical diodes are in parallel, one should have just one device in the schematic, and set the
correct number of devices in the parameter input. This is because when several identical devices are in parallel
in the schematic, the device currents may not be exactly equal due to small differences in the simulation. When
the number of parallel devices is greater than one, the total current through the group of the parallel devices will
be equally divided among the devices. The total losses are then obtained by multiplying the losses in each
device by the number of parallel devices. The current flowing out of the node P_loss is the total loss of all the
parallel devices combined.
The figure below shows the thermal equivalent circuit of a discrete diode. The circuit inside the red box is inside
the device. The circuit R1, C1, R2, and C2 is the device internal thermal equivalent circuit, and the values are
defined in the device thermal database, under "Thermal Characteristics".
Parameters Description
Device The specific device selected from the device database
Number of Parallel Devices Number of identical devices in parallel
Frequency Frequency, in Hz, under which the losses are calculated
VGG+ (upper level) Upper level of the gate source voltage, in V
VGG- (lower level) Lower level of the gate source voltage, in V
Rg_on (turn-on) Gate resistance during turn-on
Rg_off (turn-off) Gate resistance during turn-off. In most cases, the turn-on gate resistance Rg_on
and the turn-off gate resistance Rg_off are identical.
RDS(on) Calibration Factor The calibration factor of the on-state resistance RDS(on)
gfs Calibration Factor Calibration factor of the forward transconductance gfs
Pcond_Q Calibration Factor Calibration factor Kcond_Q of the transistor conduction losses Pcond_Q
Psw_Q Calibration Factor Calibration factor Ksw_Q of the transistor switching losses Psw_Q
Parameters Description
Device The specific device selected from the device database
Number of Parallel Devices Number of identical devices in parallel
Frequency Frequency, in Hz, under which the losses are calculated
Rg_on (turn-on) Gate resistance during turn-on
Rg_off (turn-off) Gate resistance during turn-off. In most cases, the turn-on gate resistance Rg_on
and the turn-off gate resistance Rg_off are identical.
Pcond_Q Calibration Factor The calibration factor Kcond_Q of the transistor conduction losses Pcond_Q
Psw_Q Calibration Factor The calibration factor Ksw_Q of the transistor switching losses Psw_Q
Pcond_D Calibration Factor The calibration factor Kcond_D of the diode conduction losses Pcond_D
Psw_D Calibration Factor The calibration factor Ksw_D of the diode switching losses Psw_D
Initial Tj_Q Initial junction temperature of the transistor, in oC
Initial Tj_D Initial junction temperature of the diode, in oC
Initial T_case Initial case temperature, in oC
Tj Flag Display flag for junction temperature of the transistor and diode
Ploss Flag Display flag for conduction and switching losses of the transistor and diode
Current Flag Display flag for switch currents
Voltage Flag Display flag for switch voltages
Parameter Frequency refers to the frequency under which the losses are calculated. For example, if the device
operates at the switching frequency of 10 kHz, and Frequency is also set to 10 kHz, the losses will be the values
for one switching period. However, if Frequency is set to 60 Hz, then the losses will be the value for a period of
60 Hz.
Parameter Pcond_Q Calibration Factor is the correction factor for the transistor conduction loss. For the
example, if the calculated conduction loss before the correction is Pcond_Q_cal, then
Pcond_Q = Kcond_Q * Pcond_Q_cal
Similarly, Parameter Psw_Q Calibration Factor is the correction factor for the transistor switching loss. For the
example, if the calculated switching loss before the correction is Psw_Q_cal, then
Psw_Q = Ksw_Q * Psw_Q_cal
154 Chapter 4: Power Circuit Components
Parameters Pcond_D Calibration Factor and Psw_D Calibration Factor work in the same way. except that they
are for the diode losses.
When several identical MOSFET devices are in parallel, one should have just one device in the schematic, and
set the correct number of devices in the parameter input. This is because when several identical devices are in
parallel in the schematic, the device currents may not be exactly equal due to small differences in the
simulation. When the number of parallel devices is greater than one, the total current through the group of the
parallel devices will be equally divided among the devices. The total losses are then obtained by multiplying the
losses in each device by the number of parallel devices. The current flowing out of the node P_loss is the total
loss of all the parallel devices combined.
The figure below shows the thermal equivalent circuit of a discrete MOSFET device when the checkbox
"Separate Rth_diode" is unchecked. The circuit inside the red box is inside the device. The circuit R1, C1, R2,
and C2 is the device internal thermal equivalent circuit that both the transistor and the diode share, and the
values are defined in the device thermal database, under "Thermal Characteristics".
The figure below shows the thermal equivalent circuit of a discrete MOSFET device when the checkbox
"Separate Rth_diode" is checked. In this case, the transistor and the diode have their own internal thermal
equivalent circuit and the junction temperature.
The voltages at the loss node Pcond_Q and Pcond_D of the circuit above represent the calculated junction
temperature Tj_Q and Tj_D of the transistor and the diode, and these junction temperatures are used when the
database curves are used for loss calculation. The voltage Tcase at the node P_loss represents the device case
temperature. When the device does not have internal thermal stages, Tj_Q and Tj_D are the same as Tcase, and
one would need to build the thermal equivalent circuit externally.
If the calculated Tj is between the junction temperatures of two curves, interpolation will be used. If the
calculated Tj is lower than the lowest Tj or higher than the highest Tj in the curves, extrapolation will be used. If
there is only one curve, that curve is used regardless of the calculated Tj.
Conduction Losses:
The transistor conduction loss is calculated as:
Switching Losses:
The transistor turn-on loss is calculated as:
Psw_Q_on = Eon * f
where Eon is the transistor turn-on energy loss, and f is the frequency as defined in the input parameter
Frequency.
The transistor turn-off loss is calculated as:
Psw_Q_off = Eoff * f
where Eoff is the transistor turn-off energy loss.
The energy losses Eon and Eoff are either read directly from the device database, or if they are not available, are
calculated using the rise times and the fall times of the voltage and current waveforms based on the information
of the MOSFET gate current, input/output/reverse transfer capacitances, and gate charges.
For "MOSFET (Eon) (database)" devices, to calculate the turn-on energy loss Eon, the collector current ID and
the junction temperature Tj are used to obtain Eon from the Eon vs. IDS curve. This value is then scaled based
on the Eon vs. RG curve and the actual gate resistance Rg_on. If the Eon vs. VDS curves exist, the value is
further scaled based on these curves and the actual voltage VDS. If these curves do not exist, Eon will be scaled
based on VDS / VDS_datasheet where VDS_datasheet is the drain-source voltage from the test conditions of the Eon
vs. IDS curve.
The turn-off energy loss Eoff is calculated in a similar way.
Please note that the gate charge loss is not included in the switching losses above. The gate charge loss is
usually quite small compared to the turn-on/turn-off switching losses, and can be neglected in the full load
conditions. However, it can become substantial in the light load conditions. To calculate the gate charge loss
Ploss_Qg:
Ploss_Qg = Qg* VGG * fsw
where Qg is the total gate charge, VGG is the gate source voltage, and fsw is the switching frequency.
Also, for the "MOSFET (database)" device, the MOSFET device must be properly selected to ensure that it is
sufficiently rated to conduct the current. If the MOSFET current rating is too low, PSIM will not be able to
calculate the switching rise/fall times and will give an error message. In simulation, the maximum drain-to-
source current that a MOSFET device is allowed to conduct is:
Io,max = gfs * (VGG - VGS(th))
If the current exceeds Io,max, one should either increase the gate source voltage level or select another MOSFET
device with a larger forward transconductance value.
The loss calculation for the anti-parallel diode or free-wheeling diode is the same as described in the diode
device section.
The total loss P_loss in watts, which is the sum of Pcond_Q, Psw_Q, Pcond_D, and Psw_D, is represented in the
form of a currents which flows out of the power loss node P_loss. When the node is not connected to an external
circuit, it must be connected to ground as it cannot be floating.
The base values are normally obtained at the test conditions of 25oC. Using the normalized value of RDS(on)
based on the base value, we have:
The on-resistance RDS(on) is calculated at every time step and is used in the simulation.
Also, the forward conduction voltage drop Vd of the diode changes depending on the current. The new
conduction voltage value is used in the simulation.
Attributes:
Parameters Description
Device The specific device selected from the device database
Number of Parallel Devices The number of devices connected in parallel
Frequency Frequency, in Hz, under which the losses are calculated
Rg_on (turn-on) Gate resistance during turn-on
Rg_off (turn-off) Gate resistance during turn-off. In most cases, the turn-on gate resistance Rg_on
and the turn-off gate resistance Rg_off are identical.
Pcond_Q Calibration Factor Calibration factor Kcond_Q of the transistor conduction loss Pcond_Q
Psw_Q Calibration Factor Calibration factor Ksw_Q of the transistor switching loss Psw_Q
Pcond_D Calibration Factor Calibration factor Kcond_D of the diode conduction losses Pcond_D
Psw_D Calibration Factor Calibration factor Ksw_D of the diode switching losses Psw_D
Initial Tj_Q Initial junction temperature of the transistor, in oC
Initial Tj_D Initial junction temperature of the diode, in oC
Initial T_case Initial case temperature, in oC
Initial Ploss_Q Initial total loss of the transistor, in W
Initial Ploss_D Initial total loss of the diode, in W
Tj Flag Display flag for junction temperatures of the transistor and diode
Ploss Flag Display flag for conduction and switching losses of the transistor and diode
Current Flag Display flag for switch currents
Voltage Flag Display flag for switch voltages
Parameter Frequency refers to the frequency under which the losses are calculated. For example, if the device
operates at the switching frequency of 10 kHz, and the parameter Frequency is also set to 10 kHz, the losses
will be the values for one switching period. However, if the parameter Frequency is set to 60 Hz, then the losses
will be the value for a period of 60 Hz.
Parameter Pcond_Q Calibration Factor is the correction factor for the transistor conduction loss. For the
example, if the calculated conduction loss before the correction is Pcond_Q_cal, then
Pcond_Q = Kcond_Q *
Pcond_Q_cal
The figure below shows the thermal equivalent circuit of a discrete IGBT. The circuit inside the red box is
inside the device. The circuit R1, C1, R2, and C2 is the internal thermal equivalent circuit that both the
transistor and diode share, and the values are defined in the device database, under "Thermal Characteristics".
The voltages at the loss node Pcond_Q and Pcond_D of the circuit above represent the calculated junction
temperature Tj_Q and Tj_D of the transistor and the diode, and these junction temperatures are used when the
database curves are used for loss calculation. The voltage Tcase at the node P_loss represents the device case
temperature. When the device does not have internal thermal stages, Tj_Q and Tj_D are the same as Tcase, and
one would need to build the thermal equivalent circuit externally.
If the calculated junction temperature Tj_Q or Tj_D is between the junction temperatures of two curves,
interpolation will be used. If the calculated junction temperature is lower than the lowest junction temperature
or higher than the highest junction temperature in the curves, extrapolation will be used. If there is only one
curve, that curve is used regardless of the calculated junction temperature.
Conduction Loss:
The transistor conduction loss is calculated as:
Pcond_Q = Vce(sat) * Ic
where Vce(sat) is the transistor collector-emitter saturation voltage, and Ic is the collector current. When the
transistor is conducting periodically with an on duty cycle of D, the conduction loss is calculated as:
Pcond_Q = Vce(sat) * Ic * D
Switching Loss:
The transistor turn-on loss is calculated as:
Psw_Q_on = Eon * f * Vcc / Vcc_datasheet
In the images, beside the IGBT terminal nodes, there is an extra node. They are the nodes for transistor
conductor loss Pcond_Q (the node with a circle), and transistor switching loss Psw_Q.
Parameters Description
Device The specific device selected from the device database
Frequency Frequency, in Hz, under which the losses are calculated
Number of Parallel Devices Number of identical RB-IGBT devices in parallel
Rg_on (turn-on) Gate resistance during turn-on
Rg_off (turn-off) Gate resistance during turn-off. In most cases, the turn-on gate resistance Rg_on
and the turn-off gate resistance Rg_off are identical.
Pcond_Q Calibration Factor Calibration factor Kcond_Q of the transistor conduction losses Pcond_Q
Psw_Q Calibration Factor Calibration factor Ksw_Q of the transistor switching losses Psw_Q
Initial Tj Initial junction temperature, in oC
Initial T_case Initial case temperature, in oC
Initial Ploss Initial total power loss, in W
Tj Flag Display flag for junction temperature of the transistor
Ploss Flag Display flag for conduction and switching losses of the transistor
Current Flag Display flag for the switch current
Voltage Flag Display flag for the switch voltage
Parameter Frequency refers to the frequency under which losses are calculated. For example, if the device
operates at the switching frequency of 10 kHz, and Frequency is also set to 10 kHz, losses will be the value for
one switching period. However, if Frequency is set to 60 Hz, then losses will be the value for a period of 60 Hz.
Parameter Pcond_Q Calibration Factor is the correction factor for the transistor conduction loss. For the
example, if the calculated conduction loss before the correction is Pcond_Q_cal, then
Pcond_Q = Kcond_Q * Pcond_Q_cal
Similarly, Parameter Psw_Q Calibration Factor is the correction factor for the transistor switching loss. For the
example, if the calculated switching loss before the correction is Psw_Q_cal, then
Psw_Q = Ksw_Q * Psw_Q_cal
When several identical RB-IGBT devices are in parallel, one should have just one device in the schematic, and
set the correct number of devices in the parameter input. This is because when several identical devices are in
parallel in the schematic, the device currents may not be exactly equal due to small differences in the
simulation. When the number of parallel devices is greater than one, the total current through the group of the
parallel devices will be equally divided among the devices. The total losses are then obtained by multiplying the
losses in each device by the number of parallel devices. The currents flowing out of Nodes Pcond_Q and Psw_Q
are the total losses of all the parallel devices combined.
The figure below shows the thermal equivalent circuit of a discrete RB-IGBT device. The circuit inside the red
box is inside the device. The circuit R1, C1, R2, and C2 is the device internal thermal equivalent circuit that
both the transistor and the diode share, and the values are defined in the device thermal database, under
"Thermal Characteristics".
Switching Loss:
The transistor turn-on loss is calculated as:
Psw_Q_on = Eon * f * Vcc / Vcc_datasheet
where Eon is the device turn-on energy loss, f is the frequency as defined in the input parameter Frequency, Vcc
is the actual dc bus voltage, and Vcc_datasheet is the dc bus voltage in the Eon and Eoff characteristics of the
datasheet, defined as "DC bus voltage (V)" in the test conditions.
The transistor turn-off loss is calculated as:
Psw_Q_off = (Eoff + Err) * f * Vcc / Vcc_datasheet
where Eoff is the transistor turn-off energy loss and Err is the reverse recovery energy loss.
To calculate Eon, the collector current Ic and the junction temperature Tj are used to obtain Eon from the Eon vs.
Ic curve. This value is then scaled based on the Eon vs. RG curve and the actual gate resistance Rg_on. The
losses Eoff and Err are calculated in a similar way.
The total loss P_loss in watts, which is the sum of Pcond_Q and Psw_Q, is represented in the form of a current
which flows out of the power loss node P_loss. When the node is not connected to an external circuit, it must be
connected to ground as it cannot be floating.
Attributes:
Parameters Description
Device The specific inductor selected from the device database.
Frequency Fundamental frequency of the inductor, in Hz.
166 Chapter 4: Power Circuit Components
Temperature Flag Flag for core temperature definition. It can be either Calculated or Fixed. If
it is Calculated, the core temperature will be calculated based on circuit
operating conditions and this temperature will be used for loss calculation.
If it is Fixed, the core temperature will be specified by users. This will give
users a clear idea the losses at a specific temperature.
Ambient Temperature Ambient temperature of the inductor, in oC.
Convection Type of cooling. It can be Forced for forced convection or Natural for
natural convection.
Air Speed Air speed, in m/sec., if forced convection is selected.
Estimated Core Temp. Estimated core temperature, in oC, if the Temperature Flag is set to Fixed.
Estimated Winding Temp. Estimated winding temperature, in oC, if the Temperature Flag is set to
Fixed.
Loss Calculation Flag If the flag is 0, the loss calculation will be performed from the beginning of
the simulation. If the flag is 1, the loss calculation will be performed only in
the last fundamental cycle of the simulation. Since loss calculation will
slow down simulation, calculating the losses only in the last cycle will
speed up the simulation.
Current Flag Display flag of the inductor current.
The losses Pcore and Pwinding, in watts, are represented in the form of currents which flow out of the nodes. To
measure and display the losses, an ammeter should be connected between the nodes and the ground. When they
are not used, these nodes cannot be floating and must be connected to ground.
In the parameters, Frequency refers to the main frequency under which the inductor is excited. For example, if
an inductor conducts a 60-Hz current in an ac circuit which also has 20kHz switching harmonic components,
the frequency should be set to 60 Hz. If an inductor conducts dc current in a dc circuit which has 20kHz
switching harmonic components, the frequency should be set to 20kHz.
For more information on how to use the Thermal Module inductor, please refer to the tutorial "Tutorial -
Inductor loss calculation in Thermal Module.pdf".
Device
database
files
Device
information
Device
list
Thermal
characteristics
On the left are the device database files that are loaded into the database editor, and the list of the devices. The
devices can be displayed based on either Device Type or Manufacturer. Also, the device list can be sorted by
Part Number, Voltage rating, or Current rating, by clicking on the title bars of the list.
To create a new device file, choose File >> New Device File.
To load a device files into the editor, choose File >> Open Device File.
To unload a device file from the editor, choose File >> Close Device File.
On the right is the information of each device. In general, the following information is required to define a
switching device for thermal simulation:
- Manufacturer and Part Number
- Package type and style
- Absolute maximum ratings
168 Chapter 4: Power Circuit Components
- Electrical characteristics
- Thermal characteristics
- Dimension and weight
The following information are required to define a database inductor for thermal simulation.
- Manufacturer and Part Number
- Package type and style
- Maximum ratings
- Electrical characteristics
- Core, winding, and gap information
To create a new device, go to the Device menu, and choose the correct type of new device from the list.
To make a copy of an existing device in the same database file, highlight the device in the list, and choose
Device >> Save Device As.
To make a copy of an existing device and save it in a different database file, first highlight the device in the list,
then highlight the file name in the File Name list, and choose Device >> Save Device As.
X and Y
axis settings
Data area
X/Y axis
multiplying
factor
Graph area
• lick on the forward wizard icon to paste the screen image into the graph window in the database editor.
Position the graph image properly in the graph window by dragging the left mouse so that the complete
graph is displayed within the window.
• If the graph image is either too large or too small, go back to the previous step by clicking on the back-
ward wizard icon. Then resize the image of the graph in the Adobe Acrobat, and copy the screen image
to the clipboard again.
• The graph dialog window should look something like follows. Click on the forward wizard icon to move
on to the next step.
Origin
of the
graph
• In this step, the border of the graph area is defined by first left clicking at the origin of the graph (usually
the lower left corner), then left clicking again at the opposite corner of the origin (usually the upper right
corner). Note that the graph origin does not have to be the lower left corner, and it can be any one of the
four corners.
• To locate the origin of the corner more accurately, right mouse click to zoom in, and press the Esc
(escape) key to exit the zoom. After this, a blue rectangle will appear around the border of the graph, and
the dialog window will appear as follows.
Data
Points
Then click on the forward wizard icon to move on to the next step.
• In this step, the x and y axis settings will be defined. Enter the settings as follows:
X0: 1
172 Chapter 4: Power Circuit Components
Xmax: 1000
Y0: 0.6
Ymax: 2.6
X in log: checked
• Leave the checkbox Invert graph unchecked since the diode forward current IF is in the x-axis in this
case. But in other situations, if the current is in y-axis, check the Invert graph checkbox.
• Enter the junction temperature as 25 oC. Click on the forward wizard icon to move on to the next step.
• Left click on top of the graph to capture the data points. In this case, for example, four data points at the
current values of around 1A, 10A, 100A, and 280A are captured. Again, right click to zoom in. You can
capture as many data points as desired.
• As data points are captured, red lines will appear that will connect the data points.
• Then click on the forward wizard icon to complete the data capture process. The final graph dialog win-
dow should appear as follows.
• To see the x and y axis values of a particular data point on the graph, place the cursor inside the graph
area. The cursor image will change to a cross image, and the x and y coordinates of the cursor will be dis-
played at the upper right corner of the dialog window. Place the cursor on top of the curve to read the x
and y axis readings.
• If there are multiple curves for different junction temperatures, repeat the same process and enter the
junction temperature value for each curve accordingly. Use the drop-down menu at the upper right corner
of the dialog window to show one particular curve, or to show all the curves at the same time.
• With the same process, define the reverse recovery characteristics trr vs. IF, Irr vs. IF, and Qrr vs. IF.
• Enter the Thermal Characteristics as:
Rth(j-c): 0.6
Rth(c-s): 0.4
Also, select the thermal model type: Cauer or Foster, as well as the number of the stage of the thermal
circuit. The equivalent circuit of the two types of the thermal characteristics are shown below. For
this example, the number of stage is 2.
In the image, The nodes marked with the "+" and "-" signs are the positive and negative terminals. The node on
the top is theoretical maximum power (in W) given the operating conditions.
While the positive and negative terminal nodes are power circuit nodes, the other nodes are all control circuit
nodes.
Attributes:
Parameter Description
Open Circuit Voltage Voc Voltage measured when solar cell terminals are open circuit, in V.
Short Circuit Current Isc Current measured when the solar cell terminals are short circuited, in A.
Maximum Power Voltage Vm Solar cell terminal voltage when the output power is at the maximum, in V
Maximum Power Current Im Solar cell terminal current when the output power is at the maximum, in A
Using the four input parameters, the functional model will create the i-v curve of the solar cell. The figure
below shows the i-v and p-v curves of a typical solar cell.
Voltage
In the image, The nodes with the "+" and "-" signs are the positive and negative terminals. The node with the
letter "S" refers to the light intensity input (in W/m2), and The node with the letter "T" refers to the ambient
temperature input (in oC). The node on the top is theoretical power (in W) given the operating conditions.
While the positive and negative terminal nodes are power circuit nodes, the other nodes are all control circuit
nodes.
Attributes
Parameter Description
Number of Cells Ns Number of cells Ns of the solar module. A solar module consists of Ns solar
cells in series.
Standard Light Intensity S0 Light intensity S0 under the standard test conditions, in W/m2. The value is
normally 1000 W/m2 in manufacturer datasheet.
Ref. Temperature Tref Temperature Tref under the standard test conditions, in oC
Series Resistance Rs Series resistance Rs of each solar cell, in Ohm
Shunt Resistance Rsh Shunt resistance Rsh of each solar cell, in Ohm
Short Circuit Current Isc0 Short circuit current Isc0 of each solar cell at the reference temperature Tref,
in A
Saturation Current Is0 Diode saturation current Is0 of each solar cell at the reference temperature
Tref, in A
Band Energy Eg Band energy of each solar cell, in eV. It is around 1.12 for crystalline silicon,
and around 1.75 for amorphous silicon.
Ideality Factor A Ideality factor A of each solar cell, also called emission coefficient. It is
around 2 for crystalline silicon, and is less than 2 for amorphous silicon.
id
v/Ns
and
where q is the electron charge (q = 1.6 x 10-19 C); k is the Boltzmann constant (k = 1.3806505 x 10-23); S is the
light intensity input; Ta is the ambient temperature input; v is the voltage across the entire solar module; and i is
the current flowing out of the positive terminal of the solar module.
Some of the parameters of the physical model can be obtained from manufacturer datasheet, and the rest of the
parameters can be obtained by trial-and-error. A utility tool Solar Module (physical model) under the Utilities
In the image, the nodes marked with the "+" and "-" signs are the positive and negative terminals. The node with
the letter "S" refers to the light intensity input (in W/m2), and The node with the letter "T" refers to the ambient
temperature input (in oC).
While the positive and negative terminal nodes are power circuit nodes, the other nodes are all control circuit
nodes.
Attributes:
Parameter Description
Maximum Power Solar cell maximum output power, in W.
Maximum Power Voltage Solar cell terminal voltage when the output power is at the maximum, in V
Test Condition Temperature Test condition temperature, in degree C.
The current-voltage characteristic of cSi and thin-film models equations are:
Where
and
Where the temperature of the PV generator should follow the ambient conditions as follows:
Voltage ratio from VMPP at an irradiance of 200W/m2 to VMPP at an irradiance of 1000W/m2 is given as:
The parameters of the PV generator model must be set as listed in the table below:
CV 8.593E-02 8.419E-02 -
0.04 0.02
-0.4 -0.2
Wind Turbine
Wind Speed
Pitch Angle
Attributes:
Parameter Description
Nominal Output Power The maximum output power of the wind turbine, in W, at 0o pitch angle. This
power is considered as the maximum power operating point of the turbine, and
it should not exceed the rated power of the generator.
Base Wind Speed The base wind speed that would produce the nominal output power, in m/s
Base Rotational Speed The base rotational speed of the turbine that would produce the nominal output
power, in rpm
Initial Rotational Speed The initial rotational speed of the turbine, in rpm
Moment of Inertia Moment of inertia of the wind turbine blade, in kg*m2
Torque Flag Flag to display the internal torque of the wind turbine (0: no display; 1:
display)
Master/Slave Flag Master/slave flag for the connected mechanical system (0: slave; 1: master)
In the image, the node with the letter "w" is for the wind speed input in m/s, and the node with the letter "p" is
for the blade pitch angle input in deg. Both nodes are control circuit nodes.
The power generated by a wind turbine can be expressed as:
Where A is the area of the rotor blade (in m2), vwind is the wind speed (in m/sec.), is the air density (it is
approximately 1.225 kg/m3), and Cp is the power coefficient. The power coefficient Cp is a function of the tip
speed ratio and the blade pitch angle . It can be expressed as [Heier1]:
where m is the rotor rotational speed (in rad/sec.) and Rblade is the radius of the rotor blade (in m).
1. S. Heier and R. Waddington, Grid Integration of Wind Energy Conversion Systems, Wiley, 2006
=
0.40
=
0.30
Cp
C 0.20
=
p
0.10
0.0
The figure shows that the power coefficient Cp reaches the maximum of 0.49 when the tip speed ratio is 8.18.
We choose the values of Cp and at the maximum as the nominal values, i.e., Cp_nom = 0.49, nom = 8.18. One
way to control the wind turbine, therefore, is to maintain the tip speed ratio at or close to the nominal value so
that the power that the wind turbine generates is at the maximum.
Several examples related to wind power generation are provided in the folder "examples\Renewable
Energy\Wind Power".
SOC
Attributes:
Parameter Description
No. of Cells in Series Number of cells Ns in series of a battery pack
No. of Cells in Parallel Number of cells Np in parallel of a battery pack
Voltage Derating Factor Voltage derating factor Ks, from 0 (100% derating) to 1 (no derating)
Capacity Derating Factor Capacity derating factor Kp, from 0 (100% derating) to 1 (no derating)
Rated Voltage Rated voltage Erated of the battery cell, in V
Discharge Cut-off Voltage Battery voltage Ecut corresponding to the maximum capacity, in V
Rated Capacity Rated capacity Qrated of the battery cell, in Ah
Internal Resistance Internal resistance Rbattery of the battery cell, in Ohm
Discharge Current Discharge current of the curve under which model parameters are obtained, in A
Capacity Factor Capacity factor
Full Voltage Full (or maximum) voltage Efull of the battery cell, in V
Exponential Point Voltage Battery voltage Etop at the end of the exponential region in the discharge curve,
in V
Nominal Voltage Battery voltage Enom at the end of the nominal region in the discharge curve, in V
Maximum Capacity Maximum capacity Qmax of the battery cell, in Ah
Exponential Point Capacity Battery capacity Qtop at the end of the exponential region in the discharge curve,
in Ah
Nominal Capacity Battery capacity Qnom at the end of the nominal region in the discharge curve, in
Ah
Initial State of Charge Initial state of charge (SOC) (from 0 to 1)
In the images, the extra node at the top of the battery image or at the side of the battery cell symbol image is for
the SOC output. It is a control circuit node.
Parameter Erated, Ecut, and Qrated can be directly read from manufacturer datasheet. Some other parameters can
be obtained from the battery discharge curve.
Efull
Exponential
Region
Etop
Enom
Region
Capacity (Ah)
0 Qtop Qnom Q
max
The capacity factor is roughly the ratio between Q0 (the capacity at 0V) and Qmax. It is a value close to 1, and it
needs to be adjusted such that the battery voltage is equal to Ecut when SOC = 0.
Note that the battery parameters are all for one battery cell, while the model can be used to define a battery pack
where the number of cells in series or in parallel is not 1. For a battery pack, all voltages need to be multiplied
by Ns*Ks, all capacities by Np*Kp, and the resistance by Ns/Np. For example, for the entire battery pack:
For a detailed description on how to define and use the lithium-ion battery model, please refer to the document
"Tutorial - How to use Lithium-Ion battery model.pdf".
Parameter Description
No. of Cells in Series Number of cells Ns in series of a battery pack
No. of Cells in Parallel Number of cells Np in parallel of a battery pack
Voltage Derating Factor Voltage derating factor Ks, from 0 (100% derating) to 1 (no derating)
Capacity Derating Factor Capacity derating factor Kp, from 0 (100% derating) to 1 (no derating)
Maximum Capacity Maximum capacity Qmax of the battery cell, in Ah
Initial State of Charge Initial state of charge (SOC) (from 0 to 1)
OCV-SOC Table Table of the open circuit voltage (OCV) vs. the state of charge (SOC)
Rin-SOC Table (discharge) Table of the internal resistance Rin vs. SOC during the discharge process
Rin-SOC Table (charge) Table of the internal resistance Rin vs. SOC during the charge process
In the image, the extra node at the top of the battery image is for the SOC output. It is a control circuit node.
Note that the battery parameters are all for one battery cell, while the model can be used to define a battery pack
where the number of cells in series or in parallel is not 1. For a battery pack, all voltages need to be multiplied
by Ns*Ks, all capacities by Np*Kp, and the resistance by Ns/Np.
The equivalent circuit of the battery is shown below.
For the internal resistance Rin, two tables can be defined: one during the discharge process, and another during
the charge process.
Below is the procedure to obtain the lookup tables from manufacture datasheet:
• From the Utilities menu, select Curve Capture Tool, and capture two discharge curves of the battery
voltage versus the discharge capacity from the datasheet at different discharge currents.
• Load the file "Extracting OCV and Rin_discharge.psimsch" (in "examples\batteries\lookup table"). Set
the discharge currents and use the tables from the previous step. Run simulation, and display OCV and
Rin_discharge separately with SOC as the x-axis variable. In SIMVIEW, select File >> Save Display As
and save the curve to a text file. Open the file with a text editor and remove the first line. The OCV and
Rin_discharge tables are ready to use by the model.
• From the Utilities menu, select Curve Capture Tool, and capture the charge curves of the battery volt-
age, charge current, and charge capacity versus time.
• Load the file "Extracting Rin_charge.psimsch" (in "examples\batteries\lookup table"). Use the tables
from the previous step. Run simulation, and display Rin_charge with SOC as the x-axis variable. In SIM-
VIEW, select File >> Save Display As and save the curve to a text file. Open the file with a text editor
and remove the first line. The Rin_charge table is ready to use by the model.
Attributes:
Parameter Description
No. of Cells in Series Number of cells Ns in series of a battery pack
No. of Cells in Parallel Number of cells Np in parallel of a battery pack
Voltage Derating Factor Voltage derating factor Ks, from 0 (100% derating) to 1 (no derating)
Capacity Derating Factor Capacity derating factor Kp, from 0 (100% derating) to 1 (no derating)
Maximum Capacity Maximum capacity Qmax of the battery cell, in Ah
Discharge Capacity SOC=1 Discharge capacity of the battery cell Qext1 corresponding to the state of
charge SOC=1.
Discharge Capacity SOC=0 Discharge capacity of the battery cell Qext0 corresponding to SOC=0
Initial State of Charge Initial state of charge (SOC) (from 0 to 1)
OCV-SOC Table Table of the open circuit voltage (OCV) vs. the state of charge (SOC)
Rin-SOC Table (discharge) Table of the internal resistance Rin vs. SOC during the discharge process
Rin-SOC Table (charge) Table of the internal resistance Rin vs. SOC during the charge process
In the image, the extra node at the top of the battery image is for the SOC output. It is a control circuit node.
Note that the battery parameters are all for one battery cell, while the model can be used to define a battery pack
where the number of cells in series or in parallel is not 1. For a battery pack, all voltages need to be multiplied
by Ns*Ks, all capacities by Np*Kp, and the resistance by Ns/Np.
The equivalent circuit of the battery is shown below.
For the internal resistance Rin, two tables can be defined: one during the discharge process, and another during
the charge process.
For a discharge curve, typically SOC is defined such that when the discharge capacity is 0 (at the beginning of
the discharge), SOC=1; and when the discharge capacity is Qmax, SOC=0. However, in this model, one has the
option to define where the points for SOC=0 and SOC=1 are, as shown in the figure below.
In this model, SOC can be less than 0 or greater than 1.
Note that the three lookup tables OCV, Rin (discharge), and Rin (charge) are all obtained with the traditional
SOC definition. That is, SOC=1 when the discharge capacity is 0, and SOC=0 when the discharge capacity is
Qmax.
SOC=0
Qext1 Qext0
Below is the procedure to obtain the lookup tables from manufacture datasheet:
• From the Utilities menu, select Curve Capture Tool, and capture two discharge curves of the battery
voltage versus the discharge capacity from the datasheet at different discharge currents.
• Load the file "Extracting OCV and Rin_discharge.psimsch" (in "examples\batteries\lookup table
(SOC)"). Set the discharge currents and use the tables from the previous step. Run simulation, and dis-
play OCV and Rin_discharge separately with SOC as the x-axis variable. In SIMVIEW, select File >>
Save Display As and save the curve to a text file. Open the file with a text editor and remove the first
line. The OCV and Rin_discharge tables are ready to use by the model.
• From the Utilities menu, select Curve Capture Tool, and capture the charge curves of the battery volt-
age, charge current, and charge capacity versus time.
• Load the file "Extracting Rin_charge.psimsch" (in "examples\batteries\lookup table (SOC)"). Use the
tables from the previous step. Run simulation, and display Rin_charge with SOC as the x-axis variable.
In SIMVIEW, select File >> Save Display As and save the curve to a text file. Open the file with a text
editor and remove the first line. The Rin_charge table is ready to use by the model.
Parameter Description
No. of Cells in Series Number of cells Ns in series of a battery pack
No. of Cells in Parallel Number of cells Np in parallel of a battery pack
Voltage Derating Factor Voltage derating factor Ks, from 0 (100% derating) to 1 (no derating)
Capacity Derating Factor Capacity derating factor Kp, from 0 (100% derating) to 1 (no derating)
Maximum Capacity Maximum capacity Qmax of the battery cell, in Ah
Discharge Capacity SOC=1 Discharge capacity of the battery cell Qext1 corresponding to the state of
charge SOC=1.
Discharge Capacity SOC=0 Discharge capacity of the battery cell Qext0 corresponding to SOC=0
Initial State of Charge Initial state of charge (SOC) (from 0 to 1)
OCV-Qdischarge Table Table of the open circuit voltage (OCV) vs. the discharge capacity Qdischarge
Rin-Qdischarge Table Table of the internal resistance Rin vs. Qdischarge during the discharge
process
Rin-Qcharge Table Table of the internal resistance Rin vs. the charge capacity Qcharge during the
charge process
In the image, the extra node at the top of the battery image is for the SOC output. It is a control circuit node.
Note that the battery parameters are all for one battery cell, while the model can be used to define a battery pack
where the number of cells in series or in parallel is not 1. For a battery pack, all voltages need to be multiplied
by Ns*Ks, all capacities by Np*Kp, and the resistance by Ns/Np.
The equivalent circuit of the battery is shown below.
For the internal resistance Rin, two tables can be defined: one during the discharge process, and another during
the charge process.
For a discharge curve, typically SOC is defined such that when the discharge capacity is 0 (at the beginning of
the discharge), SOC=1; and when the discharge capacity is Qmax, SOC=0. However, in this model, one has the
option to define where the points for SOC=0 and SOC=1 are, as shown in the figure below.
In this model, SOC can be less than 0 or greater than 1.
Note that the three lookup tables OCV, Rin (discharge), and Rin (charge) are all obtained with the traditional
SOC definition. That is, SOC=1 when the discharge capacity is 0, and SOC=0 when the discharge capacity is
Qmax.
Below is the procedure to obtain the lookup tables from manufacture datasheet:
• From the Utilities menu, select Curve Capture Tool, and capture two discharge curves of the battery
voltage versus the discharge capacity from the datasheet at different discharge currents.
• Load the file "Extracting OCV and Rin_discharge.psimsch" (in "examples\batteries\lookup table (Q)").
Set the discharge currents and use the tables from the previous step. Run simulation, and display OCV
and Rin_discharge separately with the discharge capacity as the x-axis variable. In SIMVIEW, select File
Attributes:
Parameter Description
Number of Cells in Series Number of cells in series
Number of Cells in Parallel Number of cells in parallel
Capacitance per Cell Nominal capacitance per cell, in F.
Coefficient Kv Voltage coefficient
Resistance R1 Resistance coefficient R1, in Ohm
Capacitance C1 Capacitance coefficient C1, in F
Resistance R2 Resistance coefficient R2, in Ohm
Capacitance C2 Capacitance coefficient C2, in F
Resistance R3 Resistance coefficient R3, in Ohm
Capacitance C3 Capacitance coefficient C3, in F
Resistance R4 Resistance coefficient R4, in Ohm.
Maximum Voltage Maximum voltage rating per cell, in V
Initial Voltage Initial capacitor voltage per cell, in V
Parameters Kv, R1, and C1 are associated with the capacitor response in the short term (in seconds.). Parameters
R2 and C2 are associated with the response in the medium term (in minutes. Parameters R3 and C3 are associated
with the response in the long term (in hundreds of minutes). The parameter R4 is associated with capacitor losses
due to self-discharge.
For further information on how to use the model, please refer to the tutorial "Tutorial - Ultracapacitor
model.pdf".
EMI
Filter
Attributes:
Parameter Description
Number of Stages Number of filter stages. It can be either 1 (for one stage) or 2 (for two stages)
DM Inductance Differential-mode inductance Ldm, in H
DM Resistance Differential-mode resistance Rdm, in ohm.
CM Inductance Common-mode choke inductance Lcm, in H
CM Leakage Inductance Common-mode choke leakage inductance Lcm_lk, in H
CM Winding Resistance Common-mode choke winding resistance Rcm, in Ohm
CM Winding Capacitance Common-mode choke winding capacitance Ccm, in Ohm
X Capacitance Capacitance Cx, in F
X Cap Resistance R_Cx, the ESF of Cx, in ohm
X Cap Inductance L_Cx, the ESL of Cx, in H
Y Capacitance Capacitance Cy, in F
Y Cap Resistance R_Cy, the ESF of Cy, in ohm
Y Cap Inductance L_Cy, the ESL of Cy, in H
Damping Capacitance Capacitance of the damping capacitor C_d, in F
Damping Resistance R_Cd, Resistance of the damping capacitor C_d, in F
For more information about these models, please refer to the in-app helps.
4.12.2 LISNs
Several LISN (Line Impedance Stabilization Network) blocks are provided for different EMI standards:
• LISNs (CISPR 22 / FCC)
• LISN (CISPR 25)
• LISN (MIL Std)
• 3-ph LISN
190 Chapter 4: Power Circuit Components
Images:
LISN LISN
LISN
A single -phase LISN block is connect to the line (L) and neutral (N) of a source on the left, and to the line (L)
and neutral (N) of an equipment under test on the right. The common-mode ground is connected to the node G.
At the bottom of the block are the line side (L) and neutral side (N) of the measurement signals to be sent to a
signal analyzer.
A 3-phase LISN block is to be inserted between the line and the EUT. The bottom nodes are to be connected to
a signal analyzer.
For more information about these models, please refer to the in-app helps.
The signal analyzer provides a way to analyze and mitigate common-mode and differential-mode EMI
separately.
Parameter Description
Capacitance i Common-mode capacitance i where i can be from 1 to 15.
separately.
Attributes:
Parameter Description
Inductance Lgi The inductance of section i, in H.
Resistance RLgi The resistance of section i, in ohm
This chapter provides descriptions for the components in PSIM’s element library.
The elements included in the Control category are numeral. The often-used control function blocks are listed
directly under the Control category. Other elements are sorted into the following subfolders:
• Filters
• Computational Blocks
• Other Function Blocks
• Logic Elements
• Digital Control Module
• SimCoupler Module
• ModCoupler Modules
• PIL Module
• Design Suite Blocks
• PLL Blocks
Attribute:
Parameter Description
Gain Gain k of the transfer function
5.1.1.2 Integrator
There are three types of integrators:
• regular integrator,
• external resettable integrator, and
• internal resettable integrator.
Images:
Regular Integrator External Resettable Integrator Internal Resettable Integrator
Parameters Description
Time Constant Time constant T of the integrator, in sec.
Initial Output Value Initial value of the output
Reset Flag Reset flag (0: edge reset; 1: level reset). For External
Resettable type.
Lower Output Limit Lower limit of the output
Upper Output Limit Upper limit of the output
The Bode plot of the amplitude |G| and the phase angle of the integrator is shown as below:
0 (rad/sec)
-20dB/dec
Note:
The output of the integrator block is limited to the upper and lower limits. The anti-windup is implemented
automatically. When the integrator's output reaches the limit, the integrator will stop integrating to prevent
integral windup. If the limit is set as infinite (-inf or inf), the anti-windup is removed.
However, the parameter Upper (Lower) Output Limit has different meaning for the Internal Resettable Integrator.
It means the output of the integrator is reset to the value of Lower (Upper) limit when the output exceeds
either the lower or the upper output limit.
The output of the external resettable integrator can be reset by an external control signal (at the bottom of the
block). For the edge reset (reset flag = 0), the integrator output is reset to zero at the rising edge of the control
signal. For the level reset (reset flag = 1), the integrator output is reset to zero as long as the control signal is
high (1).
Example:
The following circuit illustrates the use of the external resettable integrator. The input of the integrator is a dc
quantity. The control input of the integrator is a pulse waveform which resets the integrator output at the end of
each cycle. The reset flag is set to 0.
5.1.1.3 Differentiator
The transfer function of a differentiator is:
Where Δt is the simulation time step, vin(t) and vin(t- Δt) are the input values at the present and the previous
time step.
Image:
Attribute:
Parameter Description
Time Constant Time constant T of the differentiator, in sec.
Since sudden changes of the input will generate spikes at the output, it is recommended that a low-pass filter be
placed at the input of the differentiator.
Attributes:
Parameters Description
Gain Gain k of the PI controller
Time Constant Time constant T of the PI controller
Lower Output Limit Lower limit of the output
Upper Output Limit Upper limit of the output
The transfer function of a PI controller is defined as:
Chapter 5: Control Circuit Components 201
1 + sT
G(s) = k --------------
sT
-
The Bode plot of the amplitude |G| and the phase angle of the PI controller is shown as below:
-20dB/dec
0 (rad/sec)
Note:
The output of the integrator block is limited to the upper and lower limits. The anti-windup is implemented
automatically. When the integrator's output reaches the limit, the integrator will stop integrating to prevent
integral windup. If the limit is set as infinite (-inf or inf), the anti-windup is removed.
Attributes:
Parameters Description
Gain Gain k of the controller
Pole Frequency Frequency of the pole fc, in Hz
where c = 2f c .
The Bode plot of the amplitude |G| and the phase angle of the single-pole controller is shown as below:
-20dB/dec
0 (rad/sec)
Attributes:
Parameters Description
Gain Gain k of the PI controller
Time Constant Time constant T of the PI portion of the controller
Pole Frequency Frequency of the pole fc, in Hz
----
where
The Bode plot of the amplitude |G| and the phase angle of the PI controller is shown as below:
-20dB/dec
0 (rad/sec)
1/T 1/Tc -20dB/dec
Attributes:
Parameters Description
Gain Gain k of the PI controller
Frequency fz1 Frequency fz1 of the first zero, in Hz
Frequency fz2 Frequency fz2 of the second zero, in Hz
Frequency fp1 Frequency fp1 of the first pole, in Hz
Frequency fp2 Frequency fp2 of the second pole, in Hz
Chapter 5: Control Circuit Components 203
The transfer function of a Type-3 controller is defined as:
where
The Bode plot of the amplitude |G| and the phase angle of the Type-3 controller is shown as below:
-20dB/dec 20dB/dec
0 (rad/sec)
1/Tz1 1/Tp1 1/Tp2
5.1.2 Summers
The input of a one-input summer or two-input summer can be either a scalar or a vector. The input of a three-
input summer can only be a scalar.
Images:
1-input 2-input 2-input 3-input
Input 1
Input 1 Input 1
Input 2
Input 2 Input 2 Input 3
Attribute:
Parameter Description
Gain_i Gain ki for the ith input
For the three-input summer, the input with a dot is the first input.
If the inputs are scalar, the output of a summer with n inputs is defined as:
Vo =k1V1 + k 2V 2 + ... + k n Vn
If the input is a vector, the output of a two-input summer will also be a vector, which is defined as:
V1 = [a1 a2 ... an]
V2 = [b1 b2 ... bn]
Vo = V1 + V2 = [a1+b1 a2+b2 ... an+bn]
The output of a one-input summer, however, will still be a scalar which is equal to the summation of the input
vector elements, that is, Vo = a1 + a2 + ... an.
5.1.3 Comparators
The following comparator blocks are available in PSIM library:
• Comparator
204 Chapter 5: Control Circuit Components
• Comparator (deadtime)
• Comparator (hysteresis)
Images:
Comparator Comparator (deadtime) Comparator (hysteresis)
Vupper
Vo Vo Vin Vo
Vo_n Vlower Vo_n
Note that the comparator image is similar to that of the op. amp. For the comparator, the noninverting input is at
the upper left and the inverting input is at the lower left. For the op. amp., however, it is the opposite.
5.1.3.1 Comparator
The output of a comparator is high when the positive input is higher than the negative input. When the positive
input is lower, the output is zero. If the two input are equal, the output is undefined and it will keep the previous
value.
Parameter Description
Upper Output Level Output level high, in V.
Lower Output Level Output level low, in V
Deadtime Dead time between Vo and Vo_n, in second and can be set to zero
The output of the comparator Vo is high (Upper Output Level) when the positive input (+) is higher than the
negative input (-). When the positive input is lower, the output Vo is low (Lower Output Level). If the two input
are equal, the output is undefined and it will keep the previous value.
The output Vo_n is the complementary of Vo with a deadtime defined by the parameter "Deadtime".
Vlower
Vo
Attributes:
Parameters Description
Lower Limit Lower limit Vlower of the limiter
Upper Limit Upper limit Vupper of the limiter
For a lower/upper limiter, or lower limiter, or upper limiter, the output of the limiter is clamped to the upper or
lower limit whenever the input exceeds the limiter range. If the input is within the limit, the output is equal to
the input.
A range limiter limits the output vo between the lower limit and the upper limit, that is:
V lower vo V upper
Let the range of the upper limit and the lower limit be Vrange. When the output is equal to or greater than the
upper limit, the output is subtracted by the range Vrange until it is within the range. When the output is below the
lower limit, it is added by range Vrange until it is within the range. When the input is within the limit, the output
is equal to the input.
5.2 Filters
Four second-order filters and one first-order filter are provided as built-in blocks in PSIM.
Images:
2nd-order low-pass 2nd-order high-pass 2nd-order band-pass 2nd-order band-stop 1st-order low-pass
Parameters Description
Gain Gain k
Damping Ratio Damping ratio
Cut-off Frequency Cut-off frequency fc (fc = ωc/2π) for low-pass and high-pass filters, in Hz
Passing Band; Frequency width fb (fb = B/2π) of the passing/stopping band for band-pass/band-
Stopping Band stop filters, in Hz
Parameters Description
Gain Gain k
Cut-off Frequency Cut-off frequency fc (fc = ωc/2π) of the low-pass filter, in Hz
Multiplier Divider
Numerator
Denominator
For the divider, the dotted node is for the numerator input.
The input of a multiplier can be either a vector or a scalar. If the two inputs are vectors, their dimensions must
be equal. Let the two inputs be:
Input in deg.
Input in rad.
If the input of a block has the letter "r", it is in radian. If the input has the letter "u", it is in per unit. Otherwise it
is in deg.
In the arctangent and arctangent 2 blocks, the input node marked with x is the real part, and the other input node
marked with y is the imaginary part. If the output has the letter "u", the output is in per unit.
The output of the arctangent and arctangent 2 blocks is the inverse tangent of the ratio between the imaginary
part y and the real part x, i.e. . The output of the arctangent block is in degree, and the range is from
0 to 360 . On the other hand, the output of the arctangent 2 block is in radian, and the range is from - to +.
o
The arctangent 2 block behaves in the same way as the function atan2(y,x) in the C language.
5.3.3 Exponential/Power/Logarithmic Functions
The images and attributes of these function blocks are shown below.
Images:
Attributes:
Parameters Description
Coefficient k1 Coefficient k1
Coefficient k2 Coefficient k2
For example, if k1 = 1, k2 = 2.718281828, and Vin = 2.5, then Vo = e2.5 where e is the base of the natural
logarithm.
The function block LOG gives the natural logarithm (base e) of the input, and the block LOG10 gives the
common logarithm (base 10) of the input
5.3.4 Square-Root
A square-root function block calculates the square root of the input.
Image:
where T = 1/fb. The output is only updated at the beginning of each period.
Image:
Attribute:
Parameter Description
Base frequency Base frequency fb, in Hz
Parameters Description
Number of Inputs Number of inputs
Block Function Type Function type of the block. It can be either Maximum or Minimum.
The number of inputs can be changed through the drop-down menu.
mod
d
The block has two inputs: the numerator input Vin_n on the top left (with the letter "n"), and the denominator
input Vin_d on the bottom left (with the letter "d").
The block gives the remainder of the division Vin_n / Vin_d. For example, if Vin_n = 10.1 and Vin_d = 2, the
output will be 0.1.
Input
Control
The difference between this block and the zero-order hold block (ZOH) in Digital Control Module is that this
block is treated as a continuous element and sampling moments can be controlled externally; whereas the zero-
order hold block is a discrete element and the sampling moments are fixed and of equal distance.
For a discrete system, the zero-order hold block should be used.
Example:
In this example, a sinusoidal input is sampled. The control signal is a square wave voltage source with an
amplitude of 1.
Parameters Description
Rising Angle theta Rising angle , in deg.
Peak Value Peak value Vpk of the waveform
Parameter Description
Pulse Width (deg.) Pulse width in half cycle, in deg.
The input vin is in degree, and can be in the range of -360o to 360o. Both waveforms are half-wave and quarter-
wave symmetrical. The output waveforms of these two blocks are shown below.
Vpk 1
o vin vin
180
0 0 o o
o
360 180 360
-Vpk -1
Image:
Amplitude
Phase Angle
Parameters Description
No. of Sampling Points No. of sampling points N
Fundamental Frequency Fundamental frequency fb, in Hz.
The dotted node of the block refers to the output of the amplitude. Note that the phase angle output has been
internally adjusted such that a sine function Vm*sin(t) will give a phase angle output of 0.
Note that the FFT block only works if the input signal contains dc, the fundamental component, and harmonics
of the fundamental components (with the frequencies at multiple integer times of the fundamental frequency). If
the input signal contains another component that is not multiple integer of the fundamental frequency, the FFT
block will not give the correct result.
Also, the FFT block only measures the fundamental component, not any other harmonics. For example, if the
input signal contains 60 Hz (fundamental) and 180 Hz, if the parameter "Fundamental Frequency" is set to 180,
the FFT block output will be incorrect.
Example:
In the circuit below, the voltage vin contains a fundamental component v1 (100 V at 60 Hz), a 5th harmonic
voltage v5 (25 V at 300 Hz), and a 7th harmonic v7 (25 V at 420 Hz). After one cycle, the FFT block output
reaches the steady state with the amplitude of 100 V and the phase angle of 0o.
in vamp v1
v5
Angle
where V1 is the fundamental component (rms), Vh is the harmonic rms value, and Vrms is the overall rms value
of the waveform. The THD block is modelled as shown below.
Image:
Vrms Vh
THD vin(t) THD
vin(t)
v1(t) V1
v1(t)
Parameters Description
Fundamental Frequency Fundamental frequency of the input, in Hz
Passing Band Passing band of the band-pass filter, in Hz
Example:
In the single-phase thyristor circuit below, a THD block is used to measure the THD of the input current. The
delay angle of the thyristor bridge is chosen as 30o. For the THD block, the fundamental frequency is set at 60
Hz and the passing band of the filter is set at 20 Hz. The simulation results are shown on the right.
alpha=30 deg.
is THD
is1
One of the THD block output is the input current fundamental component is1. By comparing the phase
difference between the input voltage vs and the current is1, one can calculate the input displacement power
factor. This, together with the THD value, can be used to calculate the input power factor.
Attributes:
Parameters Description
Order n Order n of the transfer function
Gain Gain k of the transfer function
Coeff. Bn...Bo Coefficients of the numerator (from Bn to Bo)
Coeff. An...Ao Coefficients of the denominator (from An to Ao)
The initial values of the state variables xn to x1 can be specified as the inputs in the element s-domain Transfer
Function (initial value).
Example:
The following is a second-order transfer function:
Attribute:
Parameter Description
Delay Time Delay time, in sec. (for the Time Delay block only)
A time delay block delays the input signal by a specified amount of time interval. The input signal can be an
analog signal or logic signal. For example, it can be used to model the propagation delay of a logic element.
A unit time delay block delays the input signal by just one simulation time step. If the simulation time step is
changed, the delay time will be changed accordingly.
Attributes:
Parameters Description
No. of Digits No. of digits N after the decimal point
Truncation Flag Truncation flag (1: truncation; 0: round-off)
Let the input of the round-off block be Vin. The input is first scaled based on the following expression:
Vin new = V in 10N
If the truncation flag is 1, the output will be equal to Vin,new truncated, and then divided by 10N. Otherwise, the
output will be equal to Vin,new rounded off to the nearest integer, and then divided by 10N.
Examples:
If Vin = 34.5678, N = 0, truncation flag = 0, then we have the output Vout = 35. Similarly, if Vin = 34.5678, N =
0, truncation flag = 1, then Vout = 34.
If Vin = 34.5678, N = 1, truncation flag = 1, then Vout = 34.5. If Vin = 34.5678, N = -1, truncation flag = 1, then
Vout = 30.
5.4.8 dv/dt Limiter
A gradient (dv/dt) limiter limits the rate change of the input. If the rate change is within the limit, the output is
equal to the input.
Image:
Attribute:
Parameter Description
dv/dt Limit Limit of the rate of change (dv/dt) of the input
5.4.9 Multiplexers
The output of a multiplexer is equal to a selected input depending on the control signal. Three types of
multiplexers are provided:
• binary control inputs,
• individual control inputs
• Single control inputs
In the images, d0...d7 are the data inputs; and s0..s2 are the control inputs. The truth tables of the multiplexers
are as follows.
For multiplexers with binary control inputs:
For multiplexers with single control input, the value of input s is rounded to the nearest integer:
Note that the data input could be either an analog or digital signal.
Example:
The following circuit selects the maximum value out of two inputs. When Va is greater than Vb, the comparator
output will be 1, and Vo = Va. Otherwise Vo = Vb.
a alpha
b
c beta
3-ph Inputs 0
2-ph Inputs
Outputs Outputs
The Space Vector PWM block accepts 3-phase sinusoidal signal. The fundamental component of the output is
1.155 times the value of the input.
The Space Vector PWM (alpha/beta) block accepts two-phase orthogonal alpha/beta input signals. The beta
input lags the alpha input by 90 degrees. The fundamental component of the output is 1.155 times the value of
the input.
DPWMMIN:
DPWMMAX:
Parameter Description
DLL File Name of the DLL file that defines the functionality and the interface of the block
Number of Nodes Total number of input and output nodes
An Embedded Software Block has similar functionality as a general external DLL block. However, unlike the
general DLL block whose connection nodes are predefined as either inputs or outputs, the Embedded Software
Block allows the node types to be programmed as needed. Also, additional information, such as the exact
instant at which the state of a variable changes, can be calculated and passed to and from PSIM.
The Embedded Software Block is a control circuit element, and can be used in the control circuit only.
For more information on how to use the Embedded Software Block, please refer to the document "Help
Embedded Software Block.pdf".
Attribute:
Parameter Description
Trigger Flag Trigger flag (0: edge-triggered; 1: level-triggered)
Dominant Flag Dominant flag (0: no-dominant; 1: Set-dominant; 2: Reset-dominant)
An edge-triggered flip-flop only changes the states at the rising edge of the set/reset input. A level-triggered
flip-flop, on the other hand, changes the states based on the input level.
The truth tables of the Set-Reset flip-flop are:
S R Q Q
0 0 No change
0/1 0 1
0/1 1 0
Dominant Flag = 0: No change
Dominant Flag = 1: SET edge dominant
Dominant Flag = 2: RESET edge dominant
For level-triggered flip-flop:
S R Q Q
0 0 No change
0 1 0 1
1 0 1 0
Chapter 5: Control Circuit Components 219
1 1 Dominant Flag = 0: No change
Dominant Flag = 1: SET level dominant
Dominant Flag = 2: RESET level dominant
A J-K flip-flop is positive edge triggered, and the truth table is:
S R J K Clock Q Q
0 1 x x x 1 0
1 0 x x x 0 1
0 0 x x x 0 0
1 1 0 0 no change
1 1 0 1 0 1
1 1 1 0 1 0
1 1 1 1 Toggle
x: Do not care
5.5.4 D Flip-Flops
Two types of D flip-flops are provided: One without set/reset inputs, and the other with the set input (S) and
reset input (R). For the block without set and reset inputs, it is assumed that both set/reset inputs are high (1).
Images:
Attribute:
Parameter Description
Pulse Width On-time pulse width, in sec.
The input node at the bottom of the controlled monostable block is for the pulse width input.
Attribute:
Parameter Description
Delay Time Delay time, in second
Input
>>
Bit input b
The lower left input node with the letter b is for the bit input. If the bit input is not an integer, it is rounded to the
nearest integer.
When the bit input is positive, the block performs left shift. For example, if the bit input is 3, the output is equal
to the input multiplied by 23.
Preset Enable
Preset Value
Clock Output
Up/Down
Reset
Attribute:
Parameter Description
No. of Bits Number of bits N
When the Up/Down input is 0, the counter decrements, and when the Up/Down input is 1, the counter
increments.
The Reset input resets the counter to 0 when it is high (1). The Preset Enable input sets the counter to the preset
value when it is high.
The truth table of the counter is:
Up/Down Preset Enable Reset Clock Action
x 0 0 x No count
1 0 0 Count up
0 0 0 Count down
x 1 0 x Preset
x x 1 x Reset
x: Do not care
Vin Vin
Vo Vo
Clock
Let N be the number of bits. The output of the A/D converter is calculated as:
Attributes:
Parameters Description
Upper Limit Maximum ramp output, in per unit.
Lower Limit Minimum ramp output, in per unit
Step Duration Number of sampling period N at each step. It must be an integer equal to or greater
than 1.
Step Size Maximum ramp step change Vstep at the output, in per unit.
Sampling Frequency Sampling frequency, in Hz
In the image, the output node with a small dot is the ramp output, and the other output node is the flag indicating
that the output equals the input.
If the input is greater than the output, the output will increment by Vstep after a duration of N sampling periods.
If the input is less than output, the output will decrement by Vstep after a duration of N sampling periods. If the
input is equal to the output, the flag will be set to 1. Otherwise it will be 0.
Gain
Offset
Frequency f
Parameters Description
Base Frequency Base frequency FBI, in Hz.
Sampling Frequency Sampling frequency, in Hz
In the image, the first input is the Gain; the second input is the Offset; and the third input is the desired
frequency freq for output ramp.
The ramp output waveform is shown below.
The output ramp frequency is the multiple of the input value and the base frequency FBI. The output range is
limited from -1 to +1. Therefore, the range of Offset and Gain must be limited as: Offset + Gain <= 1.
Attributes:
Parameters Description
Base Voltage Motor base phase voltage, in V
Base Current Motor base phase current, in A
Stator Resistance Motor stator resistance, in Ohm
Stator Inductance Motor stator inductance, in H
Gain Kissed Sliding mode control gain
Gain Keels Sliding mode control filter gain
Coefficient E0 Coefficient to limit the error integral saturation. The default value is 0.5.
Sampling Frequency Sampling frequency, in Hz
Wr
rpm
Attributes:
Parameters Description
Base Frequency FBI Base frequency, in Hz
Cut-off Frequency First-order low-pass filter cut-off frequency, in Hz
Number of Poles Number of poles of the motor
Sampling Frequency Sampling frequency, in Hz
The input signal theta is the motor rotor electrical angle, in per unit. The output Wr is the estimated motor
speed, in per unit. The output rpm is the estimated motor speed, in rpm. A first-order low-pass filter is used at
the output variables.
5.6.1.5 Encoder
This block provides the function of the encoder with the ABZ signals.
Image:
Attributes:
Parameters Description
Counting Direction Counting direction (0: counting up; 1: counting down)
Z Signal Polarity Trigger polarity of the Z signal (0: active high; 1: active low)
Encoder Resolution Resolution of the encoder. If it is 0, the encoder counter will keep on counting and
will not reset. If, for example, the resolution is 4096, the counter will be reset to 0
after it reaches 4095.
Sampling Frequency Sampling frequency, in Hz
The output of the encoder gives the counter value.
Attributes:
Parameters Description
Proportional Gain Kp The proportional gain Kp. Refer to the block diagram of 1-ph PLL
Integral Gain Ki The integral gain Ki. Refer to the block diagram of 1-ph PLL.
Rated Input Frequency Rated frequency of the input signal, in Hz
Coefficient Lambda A positive constant to reduce frequency swings. Used in enhanced PLL only.
Sampling Frequency The input signal is sampled at this frequency, in Hz
Working Principle:
Attributes:
Parameters Description
Proportional Gain Kp The proportional gain Kp. Refer to the block diagram of 3-ph PLL
Integral Gain Ki The integral gain Ki. Refer to the block diagram of 3-ph PLL.
Rated Input Frequency Rated frequency of the input signal, in Hz
Rated Input Amplitude Rated amplitude of the input signal
(peak)
Coefficient Lambda A positive constant to reduce frequency swings. Used in enhanced PLL only.
Sampling Frequency The input signal is sampled at this frequency, in Hz
Working Principle:
The PLL-3ph block accepts three-phase balanced or near balanced input. The ePLL-3ph can processes general
three-phase signals regardless of being balanced or unbalanced. It is able to decompose the signal into its
positive-sequence, negative-sequence and zero-sequence components. Furthermore, it provides all signal
attributes of those components including their magnitudes, and phase angles. It eliminates the errors caused by
the presence of negative-sequence or zero-sequence components.
For power system applications, the coefficient Lambda is suggested to be selected in the range
0 < Lambda < 20
Attribute:
Parameter Description
Sampling Frequency Sampling frequency of the zero-order hold, in Hz
Like all other discrete elements, the zero-order hold has a free-running timer which determines the moment of
sampling. The sampling moment is synchronized with the origin of the simulation time. For example, if the
zero-order hold has a sampling frequency of 1000 Hz, the input will be sampled at 0, 1 msec., 2 msec., 3 msec.,
and so on.
The block ZOH (variable sampling) has an extra input for the sampling position. The top input is the input
signal to be sampled. The bottom input is the sampling position. This position determines where in the duty
cycle is the sampling done.
Example:
In the following circuit, the zero-order hold sampling frequency is 1000 Hz. The input and output waveforms
are shown on the left.
Note that in above circuit, a continuous-domain integrator is also connected to the input sine source. This makes
it a mixed continuous-discrete circuit, and a simulation time step selected for the continuous circuit will be
used. With this time step, the familiar staircase-like waveform can be observed at the zero-order hold output.
Without the integrator, the circuit becomes a discrete circuit. Since only the calculation at the discrete sampling
points is needed, the simulation time step will be equal to the sampling period, and only the results at the
sampling points are available. The waveforms, as shown below, appear continuous. In fact the waveforms are
discrete, and the connection between two sampling points makes it look like continuous.
Attribute:
Parameter Description
Initial Output Value Initial value of the output of the block
Sampling Frequency Sampling frequency, in Hz
The difference between the unit delay block and the time delay block is that the unit delay block is a discrete
element and it delays the sampled points by one sampling period, whereas the time delay block is a continuous
element and it delays the whole waveform by the delay time specified.
If a0 = 1, the expression Y(z) = H(z) * U(z) can be expressed in difference equation as:
Image:
Attributes:
Parameters Description
Order N Order N of the transfer function
Coeff. b0...bN Coefficients of the numerator (from b0 to bN)
Coeff. a0...aN Coefficients of the denominator (from a0 to aN)
Sampling Frequency Sampling frequency, in Hz
Order N 2
Coeff. b0...bN 0. 0. 400.e3
Coeff. a0...aN 1. 1200. 400.e3
Sampling Frequency 3000.
5.6.5.1 Integrator
There are three types of integrators: regular integrator, external resettable integrator, and internal resettable
integrator.
Images:
Regular Integrator External Resettable Integrator Internal Resettable Integrator
Attribute:
Parameters Description
Algorithm Flag Flag for integration algorithm
0: trapezoidal rule
1: backward Euler
2: forward Euler
Initial Output Value Initial output value
Reset Flag Reset flag (0: edge reset; 1: level reset) (for external resettable integrator only)
Lower Output Limit Lower limit of the output (for internal resettable integrator only)
Upper Output Limit Upper limit of the output (for internal resettable integrator only)
Sampling Frequency Sampling frequency, in Hz
The output of an external resettable integrator can be reset by an external control signal (at the bottom of the
block). With the edge reset (reset flag = 0), the integrator output is reset to zero at the rising edge of the control
signal. With the level reset (reset flag = 1), the integrator output is reset to zero as long as the control signal is
high (1).
The output of an internal resettable integrator is reset to 0 whenever the output reaches either the lower limit or
the upper limit. The integrator works in the same way as the external resettable integrator with the edge reset,
except that users do not need to set up the external reset circuit in this case.
If we define u(t) as the input, y(t) as the output, Ts as the sampling period, and H(z) as the discrete transfer
function, the input-output relationship of an integrator can be expressed under different integration algorithms
as follows:
With trapezoidal rule:
5.6.5.2 Differentiator
Image:
Attribute:
Parameter Description
Sampling Frequency Sampling frequency, in Hz
The transfer function of a discrete differentiator is:
where Ts is the sampling period. The input-output relationship can be expressed in difference equation as:
Attribute:
Parameters Description
Gain Gain k of the PI controller
Time Constant Time constant T of the PI controller
The digital PI controller is obtained by discretizing the analog PI controller using the backward Euler method.
The implementation of the controller is shown below:
Attribute:
Parameters Description
Sampling Frequency Sampling frequency, in Hz
Proportional Gain Proportional loop gain Kp
Integral Gain Integral gain Ki
Derivative Gain Derivative gain Kd
Integral Correction Gain Integral correction gain Kc
Upper Saturation Maximum output limit, in per unit
Lower Saturation Minimum output limit, in per unit
In the image, the input with "r" is for the reset signal. The other input, please note, is the error between the
reference and the feedback. When the value of the input Reset is greater than 0.5, integral output is clamped to
zero. This function is useful to prevent the integrator from entering saturation before the feedback signal is
available.
In the PID controller, the differential equation is transformed to the difference equation by means of the
backward Euler approximation.
Let the sampling period be Ts, the integral gain and derivative gain are defined as:
Attributes:
For 1st-order low-pass filter and 2nd-order low-pass filter:
Parameters Description
Gain Gain k of the filter
Damping Ratio Damping ratio of the filter (for 2nd-order low-pass filter only)
Sampling Frequency Sampling frequency fs, in Hz
For General Digital Filter or FIR Filter that reads the coefficients directly:
Parameters Description
Order N Order N of the transfer function
Coeff. b0...bN Coefficients of the numerator (from b0 to bN)
Coeff. a0...aN Coefficients of the denominator (from a0 to aN)
Sampling Frequency Sampling frequency fs, in Hz
Parameters Description
File for Coefficients Name of the file storing the filter coefficients
Sampling Frequency Sampling frequency fs, in Hz
The 1st-order and 2nd-order digital filters are obtained by discretizing the analog filter using the Backward
Euler method.
The transfer function of a general digital filter is expressed in polynomial form as:
If a0 = 1, the output y and input u can be expressed in difference equation form as:
If the denominator coefficients a0..aN are not zero, this type of filter is called infinite impulse response (IIR)
filter.
The transfer function of a FIR filter is expressed in polynomial form as:
If a0 = 1, the output y and input u can be expressed in difference equation form as:
The coefficient file for block Digital Filter (file) and FIR Filter (file) has the following format:
For FIR Filter (file):
N
b0
b1
... ... ...
bN
For Digital Filter (file), the format can be either one of the following:
Order N 2
Coeff. b0...bN 0.0201 0.0402 0.0201
Coeff. a0...aN 1. -1.561 0.6414
Sampling Frequency 10000.
If the coefficients are stored in a file, the file content will be:
2
0.0201
0.0402
0.0201
1.
-1.561
0.6414
Or the file can also have the content as follows:
2
0.0201, 1
0.0402, -1.561
0.0201, 0.6414
Attributes:
Parameters Description
No. of Bits Number of bits N
Vin_min Lower limit of the input value Vin,min
Vin_max Upper limit of the input value Vin,max
Vo_min Lower limit of the output value Vo,min
Vo_max Output value Vo,max that corresponds to the input value Vin,max
Sampling Frequency Sampling frequency, in Hz
To understand how the quantization blocks work, we will look at a special case where N = 3, Vin,min = 0, and
Vin,max = 1. The input will be divided into 23 (or 8) stages. Depending on the input level, the output will be one
of the 3-bit discrete numbers 000, 001, 010, 011, 100, 101, 110, and 111. The output will have 23 (or 8) levels,
and 23-1 (or 7) steps. If the binary number 000 corresponds to the decimal number 0, and the binary number 111
corresponds to the decimal number 0.875, and Vo,min = 0, and Vo,max = 1, we can plot the waveforms of the
input, output, and the quantization error Vin-Vo of the two quantization blocks as below.
The waveforms on the left are from the quantization block without the offset, and the waveforms on the right
are from the quantization block with the offset.
Quantization block Quantization block (with offset)
Binary Binary
numbers numbers
(111) (111)
(110) (110)
(100)
(011) (011)
(010)
(001)
(000)
ΔV
Vo
Vo,min
0
Vin,min Vin,max
Vin
Δ
The number of bits determines the quantization resolution. The input range, Vin,max - Vin,min, is divided into 2N
stages, with the width of each stage as:
Vin max – Vin min
ΔV in = ---------------------------------------
N
2
except for the 1st stage where the width is 0.5*ΔVin, and the last stage where the width is ΔVin. Note that
for the quantization block without the offset, the width of the 1st and last stage is ΔVin.
If the input falls in the kth stage, the output will be calculated as:
Vo = Vo min + (k – 1) ΔV o
Attributes:
Parameters Description
Buffer Length The length of the buffer
Sampling Frequency Sampling frequency, in Hz
A circular buffer stores data in a buffer. When the pointer reaches the end of the buffer, it will start again from
the beginning.
The circular buffer with single output is a type of first-in-first-out memory storage device, and the output is
equal to the value being pushed out.
The output of the circular buffer with vector output is a vector array with the length equal to the buffer length.
To access each memory location, use the memory read block.
Example:
If a circular buffer has a buffer length of 4 and a sampling frequency of 10 Hz, we have the buffer storage at
different time as follows:
Time Input Value at Memory Location Output (for single-
1 2 3 4 output buffer)
0 0.11 0.11 0 0 0 0
0.1 0.22 0.11 0.22 0 0 0
0.2 0.33 0.11 0.22 0.33 0 0
0.3 0.44 0.11 0.22 0.33 0.44 0
0.4 0.55 0.55 0.22 0.33 0.44 0.11
0.5 0.66 0.55 0.66 0.33 0.44 0.22
... ... ...
C = A B = cm + n – 1 cm + n – 2 ... c1
Chapter 5: Control Circuit Components 239
where
ci = [ ak+1 * bj-k], k=0, ..., m+n-1; j=0, ..., m+n-1; i=1, ..., m+n-1
Attribute:
Parameter Description
Memory Index Offset Offset from the starting memory location
A memory read block allows one to access the memory location of elements such as convolution block, vector
array, and circular buffer. The index offset defines the offset from the starting memory location.
Example:
Let a vector be A = [2 4 6 8]. If index offset is 0, the memory read block output will be 2. If the index offset is
2, the output will be 6.
Attributes:
Parameters Description
Array Length Length of the data array N (for the element Array only)
Values Values of the array (for the element Array only)
File for Coefficients Name of the file storing the array (for the element Array (file) only)
If the array is read from a file, the file will have the following format:
N
a1
... ... ...
aN
where N is the length of the array, and a1..aN are the array values.
Example:
To define an array A = [2 4 6 8], we will have: Array Length = 4; Values = 2 4 6 8. If the array is to be read from
a file, the file will be:
4
2.
4.
6.
Chapter 5: Control Circuit Components 241
8.
5.6.11 Stack
A stack is a first-in-last-out register.
Image:
Vin
push Vo
pop
Attribute:
Parameter Description
Stack Depth Stack depth
The rising edge triggers the push or pop action. When a pop action is performed and the stack is empty, the
output remains unchanged. When a push action is performed and the stack is already full, the data at the bottom
of the stack will be pushed out and will be lost.
Vo
The FMI Module expends the interface to Functional Mock-up Interface (FMI) for model exchange with other
software which supports FMI standard.
The FMI Module provides the capability to generate a FMU (Functional Mock-up Unit) model, a file that
contains the model that meets the FMI standard. There are two types of FMU: Model exchange FMU and Co-
simulation FMU. At the moment, PSIM’s FMI Module supports co-simulation FMU in the slave mode. That is,
PSIM will export the FMU model, and the other software will import the FMU model. The other software will
initiate and run simulation in the master mode, and PSIM will run in the slave mode.
The FMI Module also interface PSIM with other Altair® products such as Embed® and Activate®.
The SimCoupler interface consists of two parts: link nodes in PSIM, and the SimCoupler model block in
Simulink. The images are shown below.
Images:
In PSIM In SimuLink
SimCoupler Model Block
In Link Node Out Link Node
In PSIM, the In Link nodes receive values from Simulink, and the Out Link nodes send the values to
Simulink. They are all control elements and can be used in the control circuit only. In Simulink, the SimCoupler
model block is connected to the rest of the system through input/output ports.
The FMI Module uses the same In Link nodes and Out Link nodes as in the SimCoupler Module to exchange
data with other software. The setup in the PSIM circuit is also similar.
For more details on how to use the FMI Module, refer to the document "Tutorial - How to Use the FMI
Module.pdf".
File: pmsm_psim.sch
Control
in SimuLink
File: pmsm_simulink.mdl
The following are the steps to set up SimCoupler for PSIM-Matlab/Simulink co-simulation for the example
above.
Adding the SimCoupler Block to the Simulink Library:
Run the program "SetSimPath.exe" to add the SimCoupler block to the Simulink library and set up the
SimCoupler Module for co-simulation of PSIM and Matlab/Simulink. After the execution, the
SimCoupler block will appear as "S-function SimCoupler" in the Simulink Library Browser.
Note that this step is necessary, otherwise Simulink will not find PSIM.
Also, this program needs to run only once. It needs to be run again only if the PSIM folder or Matlab
folder has changed.
In PSIM:
- After the rest of the power circuit is created, connect three Out Link nodes to the low-pass filters of
Phase A, B, and C currents, and rename them as “Ia”, “Ib”, and “Ic”; and connect one Out Link node
to the speed sensor output and rename it as “Wrpm”.
- Connect three In Link nodes to the positive inputs of the comparators, and rename them as “Va”,
“Vb”, and “Vc”.
- Go to the Simulate menu, and select Arrange SLINK Nodes. A dialog window will appear. Arrange
the order of the In Link nodes (SLINK In) and Out Link nodes (SLINK Out) to be the same as how
the input/output ports would appear in the SimCoupler model block in Simulink (the order of the
ports is from the top to the bottom). In this example, the order will be “Va”, “Vb”, and “Vc” for the In
Link nodes, and “Ia”, “Ib”, “Ic”, and “Wrpm” for the Out Link nodes.
- Save the schematic file. In this example, we assume that the file is saved to
“C:\PSIM\pmsm_psim.psimsch”.
In Simulink:
- Start Matlab.
- Launch Simulink. Open an existing file or create a new file. After the rest of the system is created, go
to the menu "S-function SimCoupler" in the Simulink Library Browser, select the SimCoupler block,
The circuit on the left is all implemented and simulated in PSIM. The circuit on the right has the power stage
implemented in PSIM, and the control implemented in Simulink. In both circuits, the PSIM time step is 2 us.
Complete circuit in PSIM Power circuit in PSIM
There are different ways of setting up Simulink to perform co-simulation. The recommend approach is to set the
Solve Type to Fixed-step and define the Fixed step size to be the same or close to PSIM’s time step. The figure
below shows this option.
It is recommended that Simulink use the same time step as PSIM, although we have found that, even if the
Simulink time step is slightly larger than PSIM time step, satisfactory results are obtained. In this case, for
example, the time step is set to 20 us, 10 times larger than the PSIM time step.
If the Simulink Solver type is instead set to Variable-step, the simulation results will not be correct. The figure
below shows this option.
When the Simulink Solver type is set to Variable-step, in order to obtain correct results, a zero-order-hold must
be placed at the input of the SimCoupler model block. Moreover, the zero-order-hold sample time must be the
same or close to PSIM time step.
Therefore, Simulink must be set up to have the Solver Type as Fixed-step with the time step the same or close
to the PSIM time step, or if the Solver Type is Variable-step, a zero-order-hold must be used with the sample
time the same or close to PSIM time step.
In Simulink, double click on the SimCoupler block to open the property dialog, and click on Add Variable.
Click on the newly added row in the list and type the variable name and value, as shown below. The variable
varL1 will now be accessible from PSIM.
Parameters Description
Target Config Target configuration file .ccxml used in Code Composer Studio (CCS) for the
specific DSP hardware
Target Program Target hardware executable .out file
No. of Input Nodes Number of inputs to the PIL block
No, of Output Nodes Number of outputs to the PIL block
Breakpoint Func. Names of the breakpoint functions where breakpoints need to be set for input
variables. If there are more than one function, function names are separated by
comma with no space (i.e. "Task1,Task2")
Endianness It refers to the order of the bytes of a word in the DSP. It can be one of the
following:
- Big-endian: the digits are written from the left to right, with the most
significant byte of a word to the left
- Little-endian: the digits are written from the right to left, with the most
significant byte of a word to the right.
TI F2833x, F2803x, F2806x, and F2802x DSP use Little-endian. TI C6657
uses Big-endian.
Addressability It refers to the way the DSP identifies memory locations. It can be one of the
following:
8-bit, 16-bit, 32-bit, 64-bit
TI F2833x, F2803x, F2806x, and F2803x DSP use 16-bit. TI C6657 uses 8-bit
Word Size Word size of the DSP. It can be one of the following:
8-bit, 16-bit, 32-bit, 64-bit
The word size of TI F2833x, F2803x, F2806x, and F2802x DSP is 16-bit, and
the word size of TI C6657 is 32-bit
Parameters Description
Target Config Target configuration file .ccxml used in Code Composer Studio (CCS) for the
specific DSP hardware
Target Program Target hardware executable .out file
No. of Input Nodes Number of inputs to the PIL block, fixed at 7.
No, of Output Nodes Number of outputs to the PIL block, fixed at 3.
Sampling Frequency The sampling frequency, in Hz.
All inputs are in IQ24 format and are in per unit. All outputs are also in IQ24 format and are in per unit unless
otherwise noted.
This block implements the functions of the FAST estimator block in TI's InstaSPIN motor control algorithm.
Since FAST functions are available on the ROM memory of an InstaSPIN-enabled DSP only (such as F28069M),
a PIL block is needed so that FAST functions are executed on the DSP while the rest of the system is
implemented in PSIM.
For each input or output, user may use the drop down list to select the signal desired.
Attributes:
Parameters Description
Set Type Define which parameters to set. It can be one of the following:
- Enable force angle flag: Set the enable force angle flag
- Rs & Rs_qFmt: Set the resistance Rs in p.u. and the IQ format of Rs
- Ld & Ls_qFmt: Set the inductance Ld in p.u. and the IQ format of Ld
- Lq & Ls_qFmt: Set the inductance Lq in p.u. and the IQ format of Lq
Set Mode Define at what condition the parameters are set. It can be one of the following:
- Immediately: Set the parameters immediately
- At high level: Set the parameters when the trigger input is high
- At rising edge: Set the parameters when the trigger input has a rising edge
- At falling edge: Set the parameters when the trigger input has a falling edge
The node on the top left of the block is for the trigger input, and the node on the bottom left is for the data input.
When the set condition defined by "Set Mode" is met, the value at the data input will be set to the parameter
defined by "Set Type".
Attributes:
Parameters Description
Ld d-axis inductance of the machine, in H
Lq q-axis inductance of the machine, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Speed Maximum motor speed, in rpm
Sampling Frequency Sampling frequency of the block, in Hz
Attributes:
Parameters Description
Ld d-axis inductance of the machine, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Speed Maximum motor speed, in rpm
Sampling Frequency Sampling frequency of the block, in Hz
Attributes:
Parameters Description
Ld d-axis inductance of the machine at the rated operating condition, in H
Lq q-axis inductance of the machine at the rated operating condition, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Speed Maximum motor speed, in rpm
Sampling Frequency Sampling frequency of the block, in Hz
Attributes:
Parameters Description
Ld d-axis inductance of the machine, in H
Lq q-axis inductance of the machine, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Power Maximum motor power, in W
Maximum Motor Speed Maximum motor speed, in rpm
Torque Loop Time Constant Time constant of the integrator of the internal torque control loop
Sampling Frequency Sampling frequency of the block, in Hz
The block has the following inputs and outputs:
Tcmd: Input torque command
Vdc: DC bus voltage
Wm: Motor mechanical speed, in rad/sec.
Tem: Motor developed torque, in N*m
Id: Reference current for the d-axis current loop
Iq: Reference current for the q-axis current loop
nm_th: Base speed in rpm, beyond which the drive enters the field weakening region
FW: Flag (0: MTPA; 1: field-weakening control; 2: MTPV)
This block provides feedback control of the developed torque with the internal feedback loop.
Given the dc bus voltage and the mechanical speed, this block will calculate the base speed nm_th. Below the
base speed nm_th, the motor will operate in the maximum torque region with MTPA control. Above the base
speed nm_th, the motor will operate in the maximum power region with field weakening control. Furthermore,
as the motor speed increases further, depending on the motor parameters and operating conditions, the motor
will operate in the MTPV control to maximize the power output.
This block is used in the Motor Control Design Suite and HEV Design Suite.
Attributes:
Parameters Description
Ld d-axis inductance of the machine, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Power Maximum motor power, in W
Maximum Motor Speed Maximum motor speed, in rpm
Torque Loop Time Constant Time constant of the integrator of the internal torque control loop
Sampling Frequency Sampling frequency of the block, in Hz
Attributes:
Parameters Description
Ld d-axis inductance of the machine at the rated operating condition, in H
Lq q-axis inductance of the machine at the rated operating condition, in H
Vpk / krpm Peak line-to-line back emf constant of the machine, in V/krpm (mechanical
speed)
Number of Poles Number of poles of the machine
Maximum Inverter Current Maximum inverter current, in A
Maximum Motor Power Maximum motor power, in W
Maximum Motor Speed Maximum motor speed, in rpm
Torque Loop Time Constant Time constant of the integrator of the internal torque control loop
Sampling Frequency Sampling frequency of the block, in Hz
The block has the following inputs and outputs:
Tcmd: Input torque command
Vdc: DC bus voltage
Wm: Motor mechanical speed, in rad/sec.
Ld: Ld inductance based on the operating currents, in H Lq:
Lq inductance based on the operating currents, in H Tem:
Motor developed torque, in N*m
Id: Reference current for the d-axis current loop
Iq: Reference current for the q-axis current loop
nm_th: Base speed in rpm, beyond which the drive enters the field weakening region
FW: Flag (0: MTPA; 1: field-weakening control; 2: MTPV)
This block provides feedback control of the developed torque with the internal feedback loop.
Given the dc bus voltage and the mechanical speed, this block will calculate the base speed nm_th. Below the
base speed nm_th, the motor will operate in the maximum torque region with MTPA control. Above the base
speed nm_th, the motor will operate in the maximum power region with field weakening control. Furthermore,
as the motor speed increases further, depending on the motor parameters and operating conditions, the motor
will operate in the MTPV control to maximize the power output.
Attributes:
Parameters Description
PI Gain Gain of the voltage loop PI controller
PI Time Constant Time constant of the voltage loop PI controller, in sec.
Maximum Inverter Current Maximum inverter current, in A
Sampling Frequency Sampling frequency of the voltage PI controller, in Hz
The voltage control block has the following inputs and outputs:
Vdc*: DC bus voltage reference
Vdc: DC bus voltage feedback
Wm: Motor mechanical speed in rad/sec.
Icmd: Current amplitude reference
This block uses a digital PI controller to regulate the dc bus voltage. It generates the machine current reference.
Vbatt
Vm
Ibatt
Attributes:
Parameters Description
Converter Rated Power Rated power of the dc-dc converter, in W
Battery-side Rated Voltage Converter rated voltage on the battery side, in V
Number of Cells in Series Number of cells Ns in series in the battery pack
Number of Cells in Parallel Number of cells Np in parallel in the battery pack
Vdc
Vm
Ibatt
Attributes:
Parameters Description
Current/Voltage Mode Operation mode of the discharge control (0: current mode; 1: voltage mode)
Converter Rated Power Rated power of the dc-dc converter, in W
Battery-side Rated Voltage Converter rated voltage on the battery side, in V
DC Bus Voltage Reference DC bus voltage reference, in V
Current PI Gain Gain of the current loop PI controller
Current PI Time Constant Time constant of the current loop PI controller, in sec.
Voltage PI Gain Gain of the voltage loop PI controller
Voltage PI Time Constant Time constant of the voltage loop PI controller, in sec.
Control Block Output Limit The upper limit of the control block output Vm. The lower limit is 0.
The dc-dc discharging control block has the following inputs and outputs:
Vdc: DC bus voltage feedback
Ibatt: Current flowing into the battery
Vm: Modulation signal output
This block implements constant-voltage or constant-current discharging control to a battery. When the
operation mode is set to Voltage Mode (1), the converter regulates the dc bus voltage, and the voltage loop
generates the reference for the current loop. When the operation mode is set to Current Mode (0), the converter
regulates the current flowing into the dc bus to the maximum current that the converter can deliver.
Digital PI controllers are used in the voltage and current loops.
Vdc Rgn
Tes
Wm
Attributes:
Parameters Description
Regen Power Threshold Threshold of the motor power level. Beyond the threshold, regeneration is
enabled.
Regen Enable Time Time from which regeneration is enabled. Before this time, regeneration is
disabled.
Sampling Frequency Sampling frequency of the low-pass filter for speed feedback, in Hz
The dc-dc regeneration control block has the following inputs and outputs:
Vdc: DC bus voltage feedback
Tes: Estimated developed torque of the traction motor
Wm: Mechanical speed of the traction motor in rad/sec.
Rgn: Regeneration flag (0: no regeneration; 1: regeneration)
This block generates a regeneration flag based on the dc bus voltage and the traction motor power. When the
motor power is negative (in generation mode) and the power amplitude exceeds the threshold, the regeneration
flag is set to 1 to enable regeneration.
To avoid false triggering due to start-up transient, a regeneration enable time is defined. Regeneration is
possible only after this time has passed.
Image:
1-ph PLL 1-ph enhanced PLL
Attributes:
Parameters Description
Proportional Gain Kp The proportional gain Kp. Refer to the block diagram of 1-ph PLL
Integral Gain Ki The integral gain Ki. Refer to the block diagram of 1-ph PLL.
Rated Input Frequency Rated frequency of the input signal, in Hz
Coefficient Lambda A positive constant to reduce frequency swings. Used in enhanced PLL only.
Working Principle:
Attributes:
Parameters Description
Proportional Gain Kp The proportional gain Kp. Refer to the block diagram of 3-ph PLL
Integral Gain Ki The integral gain Ki. Refer to the block diagram of 3-ph PLL.
Rated Input Frequency Rated frequency of the input signal, in Hz
Rated Input Amplitude Rated amplitude of the input signal
(peak)
Coefficient Lambda A positive constant to reduce frequency swings. Used in enhanced PLL only.
Working Principle:
The PLL-3ph block accepts three-phase balanced or near balanced input. The ePLL-3ph can processes general
three-phase signals regardless of being balanced or unbalanced. It is able to decompose the signal into its
positive-sequence, negative-sequence and zero-sequence components. Furthermore, it provides all signal
attributes of those components including their magnitudes, and phase angles. It eliminates the errors caused by
the presence of negative-sequence or zero-sequence components.
For power system applications, the coefficient Lambda is suggested to be selected in the range
0 < Lambda < 20
This chapter provides descriptions for the components in PSIM element library’s Other section.
Example:
The circuit below implements the step change of a load. In the circuit, the on-off switch controller is used to
control the bi-directional switch. The step voltage source, which is connected to the controller input, changes
from 0 to 1 at the time of 12 ms. The closure of the switch results in the short-circuit of the resistor across the
switch and the increase of the current.
On-off
Controller
+ +
Parameters Description
I/O Signal Type It is set to Control to model.
Gate Voltage High The high level of the gate voltage, in V
Gate Voltage Low The low level of the gate voltage, in V
Gate Resistance Gate resistance, in Ohm
Gate Current Flag Flag for gate current display
Attributes for Power to ideal switch:
Parameters Description
I/O Signal Type It is set to Power to ideal switch.
Gate Threshold Voltage When the input voltage is above the gate threshold voltage, the output is 1.
Otherwise, the output is 0.
Enable/Disable
Attributes:
Parameters Description
Frequency Operating frequency of the controlled switch/switch module, in Hz
Pulse Width On-time pulse width of the switch gating, in deg.
The input for the delay angle alpha is in deg.
Example:
The figure below shows a thyristor circuit using delay angle control. In the circuit, the zero-crossing of vs,
which corresponds to the moment that the thyristor would start conducting naturally, is used to provide the
synchronization. The delay angle is set at 30o. The gating signal is delayed from the rising edge of the
synchronization signal by 30o.
vsync
Image:
Attributes:
Parameters Description
Frequency Switching frequency, in Hz
Update Angle Update angle, in deg., based on which the gatings are internally updated. If the
angle is 360o, the gatings are updated at every cycle. If it is 60o, the gatings are
updated at every 60o.
File Name Name of the file storing the PWM gating pattern
A lookup table, which is stored in a file, contains the gating patterns. It has the following format:
n, m1, m2, ..., mn
k1
G1,1, G1,2, ..., G1,k1
... ... ...
kn
Gn,1, Gn,2, ..., Gn,kn
where n is the number of gating patterns; mi is the modulation index correspondent to Pattern i; and ki is the
number of switching points in Pattern i. The modulation index array m1 to mn should be monotonically
increasing. The output will select the ith pattern if the input is smaller than or equal to mi. If the input exceeds
mn, the last pattern will be selected.
Attributes:
Parameters Description
Carrier Frequency The frequency of the triangular carrier wave, in Hz. Must be greater than 0.
Peak Value Peak value of the triangular wave, In the figure below, the peak value is b.
Bottom Value Bottom value of the triangular wave, In the figure below, the bottom value is a.
Duty Cycle Duty cycle of the rising slope interval. Must be in the range between 0 and 1.
Phase Delay Phase delay of the triangular waveform, in degree. When the value is 0, the wave
starts at the bottom of the rising slope, as shown in the figure below.
Dead Time The dead time between the output Q and Qn, in second.
The input signal is Uref in the figure above. This controller is to compare the input signal with a triangular
wave, and to generate the gate signals for a pair of interlocked switches.
The outputs for single phase controller are:
Q: The "Upper switch pulse" as indicated in the figure above.
Qn: Complement of Q with the deadtime set in the parameters.
Vcr: The carrier waveform
The outputs for 3-phase controller are:
ap, bp, and cp: The "Upper switch pulse" as indicated in the figure above.
an, bn, and cn: Complement of p signals with the deadtime set in the parameters.
Vcr: The carrier waveform
Working Principle:
z
ap
an
bp
bn
cp
cn
Vcr
Attributes:
Parameters Description
Carrier Frequency The frequency of the triangular carrier wave, in Hz. Must be greater than 0.
Peak Value Peak value of the triangular wave, In the figure below, the peak value is b.
Bottom Value Bottom value of the triangular wave, In the figure below, the bottom value is a.
Duty Cycle Duty cycle of the rising slope interval. Must be in the range between 0 and 1.
Phase Delay Phase delay of the triangular waveform, in degree. When the value is 0, the wave
starts at the bottom of the rising slope, as shown in the figure below.
Dead Time The dead time between the output Q and Qn, in sec.
Sampling Frequency The sampling frequency, in Hz
Working Principle:
The input signal is Uref in the figure above. This controller is to sample the input signal, to compare it with a
triangular wave, and to generate the gate signals for a pair of interlocked switches.
The sampling frequency is independent of the switching frequency.
266 Chapter 6: Other Components
The outputs for the single phase controller are:
Q: The "Upper switch pulse" as indicated in the figure above.
Qn: The compliment of Q with the deadtime set in the parameters.
Vcr: The carrier waveform
The outputs for the 3-phase controller are:
ap, bp, and cp: The "Upper switch pulse" as indicated in the figure above.
an, bn, and cn: Complement of p signals with the deadtime set in the parameters.
Vcr: The carrier waveform
Attributes:
Parameters Description
Sampling Frequency The sampling frequency, in Hz
Working Principle:
Attributes:
Parameters Description
Phase Delay The delay of the pulses from the sampling point. The definition is shown in the
figure below, in degree.
Sampling Frequency The sampling frequency (the same as the switching frequency), in Hz
Working Principle:
Parameters Description
Modulation Mode The modulation mode can be one of the following:
0: for 7-segment modulation
1: for 5-segment modulation
Sampling Frequency Sampling frequency of the block, in Hz
For more details, please refer to the online help page of this block.
Attributes:
Parameters Description
Sampling Frequency Sampling frequency of the block, in Hz
For more details, please refer to the online help page of this block.
6.3 Sensors
Four sensors are provided: Voltage sensor and current sensor for instantaneous value measurement, and voltage
sensor (average) and current sensor (average) for average value measurement.
A voltage sensor or current sensor measures the voltage or current in the power circuit and send it to the control
circuit.
The current sensor has an internal resistance of 1 .
Images:
Parameter Description
Gain Gain of the sensor
Sampling Frequency Sampling frequency fs for the average voltage/current sensor, in Hz
(average sensors)
Output Prob Enable Enable the probe for waveform display.
(3-phase sensors)
The average sensor integrates the input of the sensor and gives the average value during the sampling period, as
shown below.
Wattmeter / kW Meters
VAR Meters VA -Power Factor Meters
W kWh W kWh
Var Var
Attributes of Meters:
Parameters Description
Operating Frequency Operating frequency or fundamental frequency of the AC meters, in Hz
Cut-off Frequency Cut-off frequency of the low-pass (DC meters) or high-pass (AC meters) filter, in
Hz
kWh Meter Start Time Time from which the kilowatt hour meter starts, in sec. (for W/kWh meters only)
kWh Meter Stop Time Time at which the kilowatt hour meter stops, in sec. (for W/kWh meters only)
VA Display Flag Display flag for apparent power (0: no display; 1: display) (for VA-Power Factor
meters only)
PF Display Flag Display flag for power factor (0: no display; 1: display) (for VA-Power Factor
meters only)
DPF Display Flag Display flag for displacement power factor (0: no display; 1: display) (for VA-
Power Factor meters only)
In the images for the single-phase/3-phase wattmeter / kWh meter, the node with the letter "W" is for the real
power output, in watt, and the node with the letter "kWh" is for the kilowatt hour output, in kilowatt-hour.
A low-pass filter is used in the dc meter and wattmeter models to filter out high-frequency components, whereas
a high-pass filter is used in the ac meter models to filter out the dc component. The cut-off frequency determines
the transient response of the filter.
Except the voltage and current probes, the readings of all the meters are meaningful only when the readings
reach the steady state.
The single-phase and 3-phase VAR meter measure the reactive power (VAR) at the fundamental frequency; and
the VA-Power Factor meters measure the apparent power (VA), the total power factor (PF), and the
displacement power factor (DPF). The kilowatt hour meter reading gives the integration of the real power over
a time interval defined by the start time and the stop time.
For a single-phase circuit, the real power P, reactive power Q, apparent power S, total power factor PF, and the
displacement power factor DPF are defined as follows.
Assume both the voltage and current contains harmonics, i.e.
v(t) = 2V1 sin( 1 t + 1 ) + 2V2 sin( 2 t + 2 ) + ...
where is the fundamental frequency and all others are harmonic frequencies. We have the rms values of the
voltage and current as:
The total power factor PF and the displacement power factor DPF are then defined as follow:
PF = P
---
S
DPF = cos(1 – 1 )
Note that all the 3-phase meters, including 3-phase wattmeter/kWh meter, VAR meter, VA-Power Factor meter,
are for 3-phase 3-wire circuit only, and cannot be used in 3-phase 4-wire circuit. The models of the meters are
based on the assumption that the summation of 3-phase voltages and currents must be equal to zero, that is:
va + vb + vc = 0
ia + ib + i c = 0
For 3-phase 4-wire circuit, single-phase meters should be used instead.
To use the single-phase or 3-phase wattmeter/VAR meters, insert the meters into the circuit.
Example:
This example shows how single-phase and 3-phase meters are used. The circuit on the left shows the use of the
wattmeter and VAR meter, and the circuit on the right shows the use of the three-phase wattmeter and VAR
meter.
A B A B C D
Interface for current scope, and
Interface for 2-channel scope 1-channel and 4-channel voltage scopes
The 1-channel and 4-channel voltage scope and the current scope have the same interface. For the 4-channel
scope, the channel can be selected through the drop-down channel selection, and the settings apply that the
channel selected.
The scope is designed to operate in a similar way as the actual oscilloscope in the lab. It has 3 main sections:
Timebase section, Channel section, and Trigger section.
In the Timebase section, the scale of time (x axis) is defined.
In the Channel section, the scale of the Y axis, as well as the offset and the color of the waveform, are defined.
The channel display mode can be either DC, AC, or Gnd (for ground). When the display mode is in DC, the
entire waveform is displayed. If the display mode is in AC, only the ac portion of the waveform is displayed.
When the display mode is Gnd, the waveform will show 0.
In the Trigger section, the trigger conditions are defined. The trigger can be set to either ON or OFF. When the
trigger is off, the waveform is free-running, and the display of the waveform in the scope may vary from one
frame to another. If the trigger is on, the waveform display will only start when the trigger conditions are met.
This will lead to a steady waveform display.
There are three trigger modes: rising-edge triggering, falling-edge triggering, and one-shot triggering (if the
once checkbox is checked, the one-shot triggering is selected). The one-shot triggering will trigger only once,
and it is useful, for example, in situations where a transient needs to be captured.
The trigger level sets the level at which the triggering occurs. For example, if Channel A is selected with the
rising-edge triggering and the trigger level of 0V, whenever the Channel A input crosses over 0 from negative to
positive, triggering will occur and the waveform display will start from that instant.
On the scope, if the Auto scale checkbox is checked, the scale of all the channels will be automatically adjusted
so that the waveforms are within the display of the scope.
Note that voltage scopes have connecting terminals which can be connected to either power circuit nodes or
control circuit nodes. The scopes will display the node-to-ground voltages at these nodes.
The current scope, on the other hand, has no connecting terminals. It is associated with any element that has the
parameter of the current flag, and it is enabled by right clicking on top of the element, and selecting the branch
current under the Current Scopes, as shown below. After the branch current is selected, a check mark will
appear in front of the branch current name.
C/P
LOAD I
V
P
k=1
Attributes:
Parameters Description
Transformation Flag Transformation flag (0: The q-axis leads the d-axis; 1: The q-axis lags the d-axis)
The angle at the bottom of the blocks is in rad.
It should be noted that, in power circuit, currents must first be converted into voltage quantities (using current-
controlled voltage sources) before they can be transformed. Also, if an input terminal is not used (such as in the
dqo-to-abc transformation block where only Phase d and q are not used, and Phase o is not used), it must be
connected to ground.
Depending on the transformation flag, the transformation equations are as follows.
From abc to dqo, with the transformation flag set to 0:
To have the power invariant transformation, replace 2/3 with and 1/2 with
From dqo to abc, with the transformation flag set to 0:
Example:
In this example, three symmetrical ac waveforms are transformed into dqo quantities. The angle is defined as
= t where = 2*60. Since the angle changes linearly with time, a piecewise linear voltage which has a
ramp waveform is used to represent . The simulation waveforms show the three-phase ac (top), the angle
(middle), and the dqo output. In this example, the “q” component is constant, and both the “d” and the “o”
components are zero.
In the images, the letter "al" refers to , and the letter "be" refers to . The transformation equations are:
From abc to
From ab to
From ac to
From to abc
dq to (Inverse Park)
d d al
al d d al
be q
q sin q be sin
cos q cos be
In the images, the letter "al" refers to , and the letter "be" refers to . The phase angle input can be either in
radian or sin() and cos().
The transformation equations are:
From to dq
From dq to
In the images, the letter "r" refers to the amplitude, and "a" refers to the phase angle , in rad.
The transformation equations are:
From Cartesian to polar
If the input is 0.99, the output will be 10. If the input is 1.5, the output will be 10 + (---1---.-5-----–----1----)------(---3---0----–-----1---0---) =20.
2–1
Attributes for one-dimensional lookup table (external file):
Parameter Description
Graph File Name of the SIMVIEW file to be used as the lookup table data
Input Column Input column of the lookup table, selected from a drop-down menu after a graph file is
loaded.
Output Column Output column of the lookup table, selected from a drop-down menu after a graph file is
loaded.
A lookup table with external file can read the data in either text format or SIMVIEW binary format, with or
without the text heading (for example "Time V1 V2 ...") that a SIMVIEW file contains.
1-Dimensional Lookup Tables:
For 2-dimensional lookup tables, the node on the left is for the row index input, and the node on the top is for
the column index input.
A 2-dimensional lookup table with integer input has two inputs. The output data is stored in a 2-dimensional
matrix. The two inputs correspond to the row and column indices of the matrix. For example, if the row index is
3 and the column index is 4, the output will be A(3,4) where A is the data matrix.
280 Chapter 6: Other Components
A 2-dimensional lookup table with floating-point input is similar to the lookup table with integer input. The
difference is that inputs are floating-point values, and interpolation is used to calculate the output.
The following shows a 2-dimensional lookup table with integer inputs:
3, 4
1., -2., 4., 1.
2., 3., 5., 8.
3., 8., -2., 9.
If the row index is 2 and the column index is 4, the output will be 8. If the row index is 5, regardless of the
column index, the output will be 0.
The following shows a 2-dimensional lookup table with floating-point inputs:
3, 4
1.1 2.2 3.3
1.2 2.3 3.4 4.5
1., -2., 4., 1.
2., 3., 5., 8.
3., 8., -2., 9.
If the row input is 2 and the column input is 3, the following table shows the four points that enclose the input
point, and the output value of 3.826 through interpolation:
The lookup table file should be prepared externally. The data for the lookup table are stored in a file and have
the following format:
L, M, N
Chapter 6: Other Components 281
Vx1 Vx2 … VxL
Vy1 Vy2 … VyM
Vz1 Vz2 … VzN
A111, A121, …, A1M1
A211, A221, …, A2M1
………………
AL11, AL21, …, ALM1
A112, A122, …, A1M2
A212, A222, …, A2M2
………………
AL12, AL22, …, ALM2
A11N, A12N, …, A1MN
A21N, A22N, …, A2MN
………………
AL1N, AL2N, …, ALMN
where
L is the number of x-axis, M is the number of y-axis, and N is the number of z-axis;
Vx is the x-axis vector, Vy is the y-axis vector, and Vz is the z-axis vector;
Aijk is the output value at x=i, y=j, and z=k. Note that Vectors Vx, Vy, and Vz must be monotonically
increasing.
If an input falls between two points, interpolation is used to calculate the value. If an input is less than the
minimum or greater than the maximum value, the input will be set to be the same as the minimum or maximum
value.
Example:
The following shows a 3-dimensional lookup table:
3, 3, 3
123
456
789
1.1 1.2 1.3
2.1 2.2 2.3
3.1 3.2 3.3
1.4 1.5 1.6
2.4 2.5 2.6
3.4 3.5 3.6
1.7 1.8 1.9
2.7 2.8 2.9
3.7 3.8 3.9
When the inputs: x=1.5, y=4.5, and z=7.5, the resulted output V=1.8 through interpolation.
Attributes:
Parameters Description
Expression f(x1,x2,...,xn) Expression of the output versus inputs where n is the number of inputs
Expression df/dxi Expression of the derivative of the function f versus the ith input
.
Chapter 6: Other Components 283
Images:
1-input 3-input 6-input
1 1 1 1
2 2
3 3
6 6
input output
Attribute:
Parameter Description
File Name Name of the DLL file
The node with a dot is for the first input (in[0]). The input/output node sequence is from the top to the bottom.
The images and parameters of a General DLL Block example are shown below.
Image (for a block with 2 inputs and 3 outputs):
1
1
input 2 output
2 3
Attribute:
Parameter Description
DLL File Name of the DLL file
Input Data File Name of the input data file that DLL reads (optional)
Number of Input Nodes Number of input nodes (optional)
Number of Output Nodes Number of output nodes (optional)
IN Nodes List of input nodes (optional)
OUT Nodes List of output nodes (optional)
Parameter 1 Parameter to be passed from PSIM into DLL (optional)
Parameter 2 Parameter to be passed from PSIM into DLL (optional)
Edit Image (button) Click this button to edit and customize the image of the DLL block.
Display File (button) Click this button to display the content of the Input Data File (optional).
Read File (button) If the Input Data File is modified, click this button to reload the data file
(optional).
The node with a dot is the first input (in[0]). The input/output node sequence is from the top to the bottom.
By default, users define the number of inputs and outputs. But the number of inputs and outputs, the node
names, as well as the number of parameters and the parameter names can all be defined inside the DLL routine.
For more details on defining and programming for the general DLL block, please refer to the help file "Help
General DLL Block.pdf" and related examples.
The name of the DLL file can be arbitrary. The DLL file can be placed in one of the two places, in the order of
precedence: in the PSIM directory, and in the same directory as the schematic file that uses the DLL file.
Note: When a DLL file is used in multiple DLL blocks in a schematic, if global or static variables are declared
and used in the DLL code, these global/static variables will be the same and be shared among all the DLL
284 Chapter 6: Other Components
blocks. If this is not what users intended, the DLL calculation can be incorrect, and users should avoid using
global/static variables in the code in this case.
Several examples using the simple DLL blocks and the general DLL blocks are provided in the
"examples\custom DLL" sub-folder in the PSIM directory.
6.5.6 C Block
A C block allows users to enter C code directly without compiling the code, unlike in external DLL blocks
where the code needs to be compiled into a DLL using an external compiler. The code of the C block will be
interpreted and executed at runtime by a built-in C interpreter in PSIM.
The interface of the C block dialog window is shown below.
Input/output ports
Area for
custom code
The number of input and output ports of the C block is defined in the Number of Input/Output Ports section. If
the number of ports is changed, the image of the block in the schematic will change accordingly.
The function Insert GetPsimValue allows the C block to access element parameters and parameters defined in
a parameter file. Assuming that the circuit has a resistor called R1, to access the resistance value of R1, click on
Insert GetPsimValue. The following dialog window will appear.
2-input / 3-output
in[0] out[0]
in[1] out[2]
Input/output
ports
Area for
custom code
The number of input and output ports of the ports is defined in the Number of Input/Output Ports section. After
the number of ports is changed, the image of the block in the schematic will change accordingly.
Variables that can be used in the code include:
t: Time passed from PSIM
delt: Time step passed from PSIM
x1, x2, ... :Inputs 1, 2, etc.
y1, y2, ... :Outputs 1, 2, etc.
Chapter 6: Other Components 287
When the checkbox "Enable Fixed Point Header Files" is checked, by clicking on Fixed Point Settings, one
can define the fixed point data types of the C block inputs and outputs.
By clicking on the Variables button, one can define variables that can be passed from the main circuit into the
C block. The variable can be a numerical value or a formula, for example:
k1 = 15.2
k1 = Freq/sqrt(2)
where Freq is a variable defined in a parameter file.
By clicking on the Insert GetPsimValue button, one can get the variables defined elsewhere and use them in
the C code. The usage of this function is the same as in the C block.
Unlike the C block, the simplified C block can be used for automatic code generation.
6.6 IC Models
Several PWM IC and driver IC models are provided.
6.6.1 PWM IC
The following PWM IC models are provided:
IC Name Description
UC3823A High speed PWM controller for high frequency switch-mode power
UC3823B supplies. The UC3823A and UC3823B and the UC3825A and UC3825B
UC3825A family of PWM controllers are improved versions of the standard UC3823
UC3825B and UC3825 family.
UC3842 Current mode fixed frequency PWM controller for off-line or dc-dc
UC3843 converters. The UC3842/3/4/5 family of control devices provides the
UC3844 necessary functions to implement off-line or dc-to-dc fixed frequency
UC3845 current mode control schemes.
UC3846 Current mode fixed frequency PWM controller for off-line or dc-dc
converters. The UC3846 family of control ICs provides the necessary
functions to implement fixed frequency, current mode control schemes.
UC3854 High power factor preregulator providing active power factor correction.
UC3854A UC3854A/B products are pin compatible enhanced versions of the
UC3854B UC3854. It provides all the functions necessary for active power factor
corrected preregulators.
UC3872 Resonant lamp ballast controller. UC3872 is a resonant lamp ballast
controller optimized for driving cold cathode fluorescent, neon, and other
gas discharge lamps.
UCC3806 Low power, dual output, current mode PWM controller. With the same
block diagram and pinout of the popular UC3846 series, the UCC3806 line
features increased switching frequency capability while reducing the bias
current used within the device.
UCC3817 BiCMOS power factor preregulator with average current mode control. The
UCC3818 UCC3817/18 family provides all the functions necessary for active power
factor corrected preregulators. The controller achieves near unity power
factor by shaping the ac input line current waveform to correspond to that
of the ac input line voltage.
Attribute:
Parameter Description
Model Level All these IC models, except UC3901, have two levels:
- Level 1: The PWM gating outputs are control signals with logic level of 1
(high) and 0 (low)
- Level 2: the PWM gating outputs are power signals which can directly
drive three-state switches.
The UC3901 model is a Level-2 model only.
6.6.2 Driver IC
The following driver IC models are provided:
IR21834 Half-bridge driver for high voltage, high speed power MOSFET and IGBT
with dependent high and low side referenced output channels.
IRS21867 High and low side driver for voltage, high speed power MOSFET and
IGBT driver with independent high and low side referenced output
channels.
TC4423A 3A dual output high-speed power MOSFET drivers.
TC4424A TC4423A: dual inverting.
TC4425A
TC4424A: dual non-inverting.
TC4425A: one inverting and one non-inverting.
TC4426A 1.5A dual output high-speed power MOSFET drivers.
TC4427A TC4426A: dual inverting.
TC4428A
TC4427A: dual non-inverting.
TC4428A: one inverting and one non-inverting.
Attribute:
Parameter Description
Initial Value Initial value of the node voltage
A parameter file is a text file created by a text editor. It supports the following format:
// Text from the character // to the end of the line is treated as comment
k1 = 12.3 // Define the value of the variable k1
k1 = a + b*c // Define k1 in a math expression
(global) k1 = 12.3// Define k1 as a global variable (for use in SimCoder)
L1 = 3m // power-of-ten suffix is supported. L1 = 3e-3
C1 = 100uF // C1 = 100e-6. The unit "F" is ignored.
Note that, as compared to Version 9.1, the following format is no longer supported:
LIMIT var1 Vlow Vupper // This should be replaced by the "if...else if..." statement
% as comment. Now comments must start with double slash //. % is now used as modulo operation.
var1 value (for example "R1 2.5"). Now an equal sign must be used to define a variable.
290 Chapter 6: Other Components
The definition "(global)" is used in SimCoder only for automatic code generation. Please refer to the SimCoder
User Manual on how it is used. For PSIM simulation, this definition is ignored. That is, a parameter definition
"(global) K1 = 1.2" is treated the same as "K1 = 1.2".
Conditional statements and error/warning message functions are supported, as shown below:
if (k1 > 10)
{
a = 10
b=1
}
else if (k1 <= 20)
{
a = 20
b=2
}
else
{
Error {"Error: The value of k1 is out of the range. k1 = %f", k1}
}
if (k1 == 20)
{
Warning {"Warning: The value of k1 is equal to %.0f", k1}
}
When writing the conditional statements "if...else if...else...", the standard C syntax applies (without the
semicolon ; at the end of each statement though).
In addition, the while loop is supported. For example,
iflag = 1
a=0
b = 0.1
while (iflag == 1)
{
a = a + b if (a > 10)
iflag = 0
}
Supported operators and mathematical functions in a parameter file are:
+ // addition
- // subtraction
* // multiplication
/ // division
% // modulo operator that returns the remainder after division (e.g. 5 % 2 = 1)
^ // to the power of
= // equal assignment
== // conditional equal
!= // not equal
> // greater than
>= // equal or greater than
< // less than
<= // equal or less than
! // not
&& // and
|| // or
sin(x) // sine
cos(x) // cosine
tan(x) // tangent
asin(x) // arcsine
acos(x) // arccosine
atan(x) // arctangent
atan2(y,x) // arctangent with x and y defined
sinh(x) // hyperbolic sine
cosh(x) // hyperbolic cosine
Chapter 6: Other Components 291
tanh(x) // hyperbolic tangent
pow(x,y) // x to the power of y
sqrt(x) // square root
exp(x) // base-e exponential of x, i.e. e^x
ln(x) (or log(x)) // natural logarithm of x (base e)
log10(x) // common logarithm of x (base 10)
abs(x) // absolute
sign(x) // sign function that returns 1 if x > 0, -1 if x < 0, and 0 if x = 0
ceil(x) // function that returns the integer larger than x
floor(x) // function that returns the integer smaller than x
if (...){...} else if (...){...} else {...} // conditional if statement
iif (condition, value1, value2) // inline if statement (note it is "iif" not "if")
while (...) {...} // while loop
Error {"Error text %f, %f", var1, var2} // Error statement. Up to 5 variables are supported.
Warning {"Warning text %f, %f", var1, var2} // Warning statement. Up to 5 variables are supported
Note that the input or output of all trigonometric functions is in rad. Also, the Error or Warning reporting
functions can control the variable number format, as shown below.
Error {"Error message"}
Error {"Error message %.nf", k1}// Print the value of k1, where n is the number of digits after the
// decimal point. For example, if k1 = 12.34, %.1f will give 12.3
Warning {"Warning message"}
Warning {"Warning message %.nf", k1}// Print the value of k1, where n is the number of digits after
// the decimal point. For example, if k1 = 12.34, %.1f will give 12.3
An Error function will stop the simulation, while a Warning function will allow the simulation to proceed.
To display the variable values of a parameter file, go to Edit >> Show Values. For example, the figure below
shows a parameter file on the left, and the values on the right.
The function Show Values provides a very convenient way of checking the calculation.
Parameter File in Circuit Schematic:
When a parameter file element is used in a circuit schematic, it has the same hierarchy as the circuit in which it
resides. A variable defined in a parameter file in a higher-level circuit can be used in all lower circuits, but not
the other way around. Also, a variable define in a parameter file in circuit cannot be used in another circuit of
the same level.
For example, assume that a main circuit contain a parameter file "main_param.txt", and the main circuit
contains two subcircuits S1 and S2, with a parameter file "sub1_param.txt" in S1 and another parameter file
"sub2_param.txt" in S2. A variable defined in "main_param.txt" can be used in both S1 and S2 circuits as well
as in parameter files "sub1_param.txt" and "sub2_param.txt". However, a variable defined in "sub1_param.txt"
or "sub2_param.txt" can not be used in the higher level main circuit and in "main_param.txt".
The AC Sweep Probe is used to measure the response of the node-to-ground voltage with respect to the
excitation source. The AC Sweep Probe (loop) is used to measure the response of a closed loop.
Attributes:
Parameters Description
Start Frequency Start frequency of the ac sweep, in Hz
End Frequency End frequency of the ac sweep, in Hz
No. of Points Number of data points
Flag for Points Flag to define how the data points is generated.
Flag = 0: Points are distributed linearly in LOG10 scale
Flag = 1: Points are distributed linearly in linear scale
Source Name Name of the excitation source
Start Amplitude Excitation source amplitude at the start frequency
End Amplitude Excitation source amplitude at the end frequency
Freq. for extra Points Frequencies of additional data points. If the frequency-domain characteristics
change rapidly at a certain frequency range, one can add extra points in this region
to obtain better data resolution.
Attributes:
Parameters Description
Start Frequency Start frequency of the ac sweep, in Hz
End Frequency End frequency of the ac sweep, in Hz
No. of Points Number of data points
Flag for Points Flag to define how the data points is generated.
Flag = 0: Points are distributed linearly in LOG10 scale
Flag = 1: Points are distributed linearly in linear scale
Source Name Name of the excitation source
(f1,V1) (f2,V2) ... Specify the frequency and amplitude of the excitation source at each point. Note
(fn,Vn) that f1 must be the same as the Start Frequency, and fn must be the same as the
End Frequency.
Attributes:
Parameters Description
Start Frequency Start frequency of the AC sweep, in Hz
End Frequency End frequency of the AC sweep, in Hz
No. of Points Number of data points
Flag for Points Flag to define how the data points is generated.
Flag = 0: Points are distributed linearly in LOG10 scale
Flag = 1: Points are distributed linearly in linear scale
Source Name Name of the excitation source
Number of Cycles Number of cycles N that simulation will run to obtain ac sweep results.
Steady State Time Steady state time Tsteady at which steady state is reached, in sec.
Flag for Waveforms Flag to save the time-domain simulation waveforms at each ac sweep frequency.
When the flag is set to 1, time-domain waveforms will be saved to files in a
subfolder. The file name will indicate the injection frequency.
(f1,V1) (f2,V2) ... Specify the frequency and amplitude of the excitation source at each point. Note
(fn,Vn) that f1 must be the same as the Start Frequency, and fn must be the same as the
End Frequency.
The excitation source profile is the same as for the AC Sweep (1) block.
To use this block for ac sweep, first run the circuit with no signal injection and find out when the circuit reaches
the steady state. Then use this steady state time in the ac sweep definition.
AC
Sweep
m-sine
Attributes:
Parameters Description
Start Frequency Start frequency of the ac sweep, in Hz
End Frequency End frequency of the ac sweep, in Hz
No. of Points Number of data points
Flag for Points Flag to define how the data points is generated.
Flag = 0: Points are distributed linearly in LOG10 scale
Flag = 1: Points are distributed uniformly in LOG10 scale
Source Name Name of the excitation source
Source Amplitude Excitation source peak amplitude at the start frequency.
Number of Cycles The number of cycles of the excitation source amplitude to be simulated
Steady State Time The time at which the circuit has reached the steady state, in second. One can run a
single time simulation to determine the steady state time.
Attributes:
Parameters Description
Name Name of the parameter to be swept
Start Starting value of the parameter
End End value of the parameter
Increment Increment step value of the parameter
Enabled When checked, the parameter line will be enabled.
For example, let the resistance of a resistor be “Ro”. To sweep the resistance from 2 Ohm to 10 Ohm, with an
increment step value of 2 Ohm, check the Enabled checkbox, and define the following:
Several types of independent voltage/current sources are available in PSIM. The notation of a current source
direction is: the current flows out of the higher-potential node, through the external circuit, and back into the
lower-potential node of the source.
Note that current sources can be used in the power circuit only.
7.1 Constant
The constant element allows users to define a constant. It behaviors as a grounded voltage source.
Image:
Attribute:
Parameter Description
Value Value of the constant
7.2 Time
The Time element is a special case of the piecewise linear voltage source. It is treated as a grounded voltage
source, and the value is equal to the simulation time, in sec.
Image:
7.3 Ground
There are three different ground elements in PSIM library. Although they are in different shape, they are
electrically connected together. The different shape of these grounds provide the convenience for user to
separate the grounding in different functional sections of the circuits.
Images:
7.4.1 DC Source
A dc source has a constant amplitude. The reference of the grounded dc voltage sources is the ground.
Images:
DC DC (battery) Grounded DC (circle) Grounded DC (T) Current
Attribute:
Parameter Description
Amplitude Amplitude of the source
Series Resistance Source series resistance, in Ohm (for DC and DC (battery) voltage sources only)
Series Inductance Source series Inductance, in H (for DC and DC (battery) voltage sources only)
The series resistance and inductance represent the source impedance.
Vm
Voffset
t
1/f
Images:
Current
Attributes:
Parameters Description
Peak Amplitude Peak amplitude Vm
Frequency Frequency f, in Hz
Phase Angle Initial phase angle , in deg.
DC Offset DC offset Voffset
Series Resistance Source series resistance, in Ohm (for voltage source only)
Series Inductance Source series inductance, in H (for voltage source only)
Tstart Starting time, in sec. Before this time, the source is 0.
Chapter 7: Sources 301
To facilitate the setup of three-phase circuits, a symmetrical three-phase Y-connected sinusoidal voltage source
is provided. The dotted phase of the source refers to Phase A.
Image:
3-phase Voltage
a
Attributes:
Parameters Description
V (line-line rms) Line-to-line rms voltage amplitude
Frequency Frequency f, in Hz
Initial Angle (phase A) Initial angle for Phase A, in deg.
Series Resistance Source series resistance, in Ohm
Series Inductance Source series inductance, in H
Attributes:
Parameters Description
Vpeak-peak Peak-to-peak amplitude Vpp
Frequency Frequency, in Hz
Duty Cycle Duty cycle D of the high-potential interval
DC Offset DC offset Voffset
Phase Delay Phase delay of the waveform, in deg.
Rise Time (SPICE) Rise time from low to high, in sec. (for SPICE only)
Fall Time (SPICE) Fall time from high to low, in sec. (for SPICE only)
Vpp
D*T Voffset
0 t
T
(T=1/f)
When the phase delay is positive, the waveform is shifted to the right along the time axis.
Attributes:
Parameters Description
Vpeak-peak Peak-to-peak amplitude Vpp
Frequency Frequency, in Hz
Duty Cycle Duty cycle D of the rising slope interval
DC Offset DC offset Voffset
Phase Delay Phase delay of the waveform, in deg.
D*T Vpp
0 t
Voffset
T
(T=1/f)
When the phase delay is positive, the waveform is shifted to the right along the time axis.
A sawtooth-wave voltage source is a special case of the triangular source with the duty cycle of 1 and dc offset
and phase delay of 0, and with one node grounded. Its parameters are defined as below:
Parameters Description
Vpeak Peak amplitude
Frequency Frequency, in Hz
Fall Time (SPICE) Fall time, in sec. (for SPICE only)
Voltage Current
Attributes:
For the Step type source:
Parameters Description
Vstep Value Vstep after the step change
Tstep Time Tstep at which the step change occurs
Transition Time (SPICE) Transition time from low to high, in sec. (for SPICE only)
For the Step (2-level) type source:
Parameters Description
Vstep1 Value Vstep1 before the step change
Vstep2 Value Vstep2 after the step change
Tstep Time Tstep at which the step change occurs
Transition Time Transition time Ttransition from Vstep1 to Vstep2
Vstep1
Ttransition
0 Tstep t 0 Tstep t
For SPICE, the transition time cannot be 0, and must be a non-zero value.
Voltage Current
Parameters Description
Frequency Frequency of the waveform, in Hz
No. of Points n No. of points
Values V1...Vn Values at each point
Time T1...Tn Time at each point, in sec.
Attributes for Piecewise Linear (in pair):
Parameters Description
Frequency Frequency of the waveform, in Hz
Times, Values (t1,v1) ... Time and value at each point
The time and value pair must be enclosed by left and right brackets. The time and value can be separated by
either a comma, such as (1.2m,5.5), or a space, such as (1.2m 5.5), or both, such as (1.2m, 5.5).
Example:
The following is a non-periodic piecewise linear source. It has 3 segments which can be defined by four points
(marked in the figure).
3
2
1
Time (sec.)
0 0.1 0.2 0.3
The specification for the piecewise linear voltage source will be:
Frequency 0.
No. of Points n 4
Values V1...Vn 1. 1. 3. 3.
Times T1...Tn 0. 0.1 0.2 0.3
The specification for the piecewise linear (in pair) voltage source will be:
Frequency 0.
Times, Values (t1,v1)... (0., 1) (0.1, 1) (0.2, 3) (0.3, 3)
where Vm is the peak-to-peak amplitude of the source, n is a random number in the range of 0 to 1, and Voffset is
the dc offset.
Images:
Voltage Current
Attributes:
Parameters Description
Peak-Peak Amplitude Peak-to-peak amplitude of the source
DC Offset DC offset
Duration (SPICE) Duration of an individual voltage value, in sec. (for SPICE only)
Attributes:
Parameters Description
Expression The mathematical expression of the source
Tstart Start time of the source
In the expression, “T” or “t” represents time. For example, to implement a sinusoidal source, the expression will
be: sin(2*3.14159*60*t+2.09).
Images:
Voltage-controlled Current-controlled Current-controlled Variable-gain
(flowing through) voltage-controlled
Current-controlled Variable-gain
Voltage-controlled Current-controlled voltage-controlled
(flowing through)
Attribute:
Parameter Description
Gain Gain of the source
For voltage-controlled sources, the controlling voltage is from the positive node (+) to the negative node (-).
For current-controlled sources (with an arrow pointing from one node to another), the control nodes are
connected across a RLC branch, and the direction of the controlling current is indicated by the arrow.
For current-controlled sources (with a wire connecting the two nodes), the controlling current flows from one
control node to another, as indicated by the arrow. A 10-uOhm resistor is used to sense the controlling current.
The output of a controlled source, except variable-gain controlled sources, is equal to the gain multiplied by the
controlling voltage or current. For the variable-gain controlled sources, the output is equal to the following:
vo = (k v in2 ) vin1
io = (k v in2 ) v in1
Input 1 is on the side with the multiplication sign, and Input 2 is on the side with the letter k.
The difference between a variable-gain controlled source and a nonlinear source with multiplication is that, for
the nonlinear source with multiplication, values of both vin1 and vin2 at the current time step are used to calculate
the output and are updated in each iteration. But for the variable-gain controlled source, it is assumed that the
change of vin2 is small from one time step to the next, and the value of vin2 at the previous time step is used at
the current time step. This assumption is valid as long as vin2 changes at a much slower rate as compared to vin1
and the time step is small as compared to the change of vin2. Variable-gain controlled sources can be used in
circuits which may otherwise have convergence problem with nonlinear sources with multiplication.
Example:
is is
Nonlinear (square-root):
Nonlinear (power):
In the nonlinear power source, the term sign(vin) is 1 if vin is positive, and it is -1 if vin is negative.
Note that these nonlinear sources can be used in the power circuit only.
Images:
Attributes:
Parameters Description
Gain Gain k of the source
Coefficient k1 Coefficient k1
Coefficient k2 Coefficient k2
Where Gain is the parameter for all sources, while k1 and k2 are for nonlinear power source.
For the nonlinear (division) source, Input 1 is on the side of the division sign.
Q0 Q0 Q1
Q1
clock
clock
1V
1V
In the circuit on the left, the initial values of both Q0 and Q1 are assumed to be zero. At the clock rising edge, Q0
will change to 1. Without delay, the position of Q1, which should remain at 0, will toggle to 1 at the same time.
To prevent this, a time delay element with the delay period of one time step needs to be inserted between Q0 and
the input (J) of the second flip-flop.
It should be noted that, in PSIM, the power circuit and the control circuit are solved separately. There is one
time step delay between the power and the control circuit solutions.
8.2 Debugging
Some of the approaches in debugging a circuit is discussed in the following.
Symptom:
Simulation results show sudden changes (discontinuity) of inductor currents and capacitor voltages.
Solution:
This may be caused by the interruption of inductor current path and short-circuit of capacitor (or
capacitor-voltage source) loops. Check the switch gating signals. If necessary, include overlap or
dead time pulses to avoid open-circuit or shooting-through.
If an initial current is assigned to an inductor, initial switch positions should be set such that a path is
provided for the current flow. Otherwise, the inductor current will be forced to start from zero.
Symptom:
Simulation waveforms look incorrect or inaccurate, or the waveform resolution is poor.
W-1 Warning!!! The program failed to converge after 10 iterations when determining switch positions.
The computation continues with the following switch positions: ... ...
This warning occurs when the program fails to converge when determining switching positions. Since
the computation continues based on the switch positions at the end of the 10th iteration, results could
be inaccurate. One should be cautious when analyzing the results.
There are many factors that cause this problem. The following measures can be taken to isolate and
solve the problem:
- Check the circuit and make sure the circuit is correct.
- Check the switch gating signals.
- Connect small resistors/inductors in series with switches and voltage sources.
W-2 Warning!!! The program did not reach the steady state after 60 cycles when performing the ac
sweep.
This warning occurs when the program fails to reach the steady state after 60 cycles when performing
the ac sweep. The cause of the problem could be that the system is poorly damped at that particular
frequency, or the signal amplitude is too small.
You may try the following to isolate and solve the problem:
- Run the time-domain simulation with the excitation source at that frequency and see if time-
domain waveforms are oscillatory.
- Increase the excitation voltage amplitude for larger signal level, or
- Reduce the time step for better accuracy and resolution.