热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

Tips for Saber Users in the Simulation of Power Electronic Circuits

  • 1星
  • 2021-05-29
  • 46.86KB
  • 需要1积分
  • 0次下载
标签: 仿真

仿真

Tips  for  Saber  Users  in  the  Simulation  of  Power  Electronic  Circuits

Tips for Saber Users in the Simulation of Power Electronic Circuits.txt
Tips for Saber Users in the Simulation of Power Electronic Circuits
By: Ahmed Elasser
Rensselaer Polytechnic Institute
Department of Electric Power Engineering
Troy,NY,12180
E-mail: elassa@rpi.edu
Abstract: In this article, some useful tips for Saber users are described
for successful simulation of power electronic circuits. The tips described
were tried on power electronic converters operating at frequencies as high
as 40kHz and a maximum power of 10kW. The simulation was done on a Sun
Sparc station with 16Meg of real Memory. All the tips described here are
for the 3.1a Version using the human interface.
1 Writing an Appropriate Netlist: (for human interface version)
Usually writing a Saber netlist is the easiest thing to do for any
Saber User. However, there are many ways to write an appropriate netlist.
First of all you should include in your netlist shorts if you want to
measure the current in the branches instead of the zero dc voltages.
However, this may not be the best way especially in the case of templates
with their own internal current. You may also want to specify the value of
the series resistance for the c and l templates. To do this more
efficiently, you have to specify a value for the built-in series resistor.
This specification allows you to have a more realistic model without adding
an external resistance. In case of the capacitor, when you do not specify a
value for the built in (Electrical Serial Resistance) E.S.R, the number of
nodes is reduced which leads to a corresponding saving in the simulation
time.
In some cases, the addition of shorts or zero-dc voltages is not
necessary because you can get the current by specifying them in the
SIGLIST. When you are only interested in getting the waveforms from Saber
and not the details of the commutations, it is much better to replace the
semiconductors with the ideal switches. There is a variety of switches
implemented in the Saber Template Library.
It is also better to specify the group of the diode or the
semiconductor in the netlist, especially when you are operating at high
frequencies (e.g diode.1 e1 e2=group=high_speed). You can also specify some
parameters of the model like the saturation current or the distribution.
Keep in mind that it is much better to replace the semiconductors with
behavioral switches, as many as you can, because this gives you an idea
about the functioning of the converter. Some components like the IGBT are
not very appropriate to use especially at high frequencies. Actually the
IGBT model used by Saber is highly non linear and thus requires a lot of
simulation time. It is much easier to use either digital switches like the
sw_l4, pwm_l4, the behavioral switch, or the state-spaced averaged models.
It is also useful to replace the control circuit by pulse voltage sources.
In the case of switching power supplies you can replace the switch and its
control by one element.
2 Ways of running Saber:
Usually when you want to run Saber for an application, you start
by a dc analysis and then the transient analysis. In some cases the
transient does not take a lot of time but in many converters the transient
is very long and takes several thousand clock cycles before reaching the
steady state. As we are not very interested in this numerical transient, it
is advisable to run it as fast as possible and to get rid of it.
One way to do that is to take a big TIME STEP and a large Truncation
Error. Generally a truncation error of 0.001 is more than sufficient. In
some cases it is even possible to specify a truncation error of 0.1. It is
also important that you specify certain parameters during the dc analysis
(e.g. you can specify the value of the output voltage and save a lot of time
第 1 页
Tips for Saber Users in the Simulation of Power Electronic Circuits.txt
for the simulator to reach that point).
The SIGSET command is also useful in this case. It allows you to
create an initial point to start the dc or the TRansient analysis. Note
that SIGSET does not work in conjunction with the simulation. An
alternative to it is the use of the option HOLDNODES which works in
conjunction with the simulation of the dc analysis. You may want to specify
not to release HOLD after the dc analysis in order to help the dc simulation
converge more quickly and/or easily. When RELHOLDnodes is set to yes, it
will solve the dc holding the nodes to the specified values. When finished,
it will automatically use the final point of the dc analysis as an initial
point to solve a normal dc. This option is valid only when a steady-state
solution exists. When there is no steady solution, one has to set RELHOLD
to NO. This is true in the case of oscillators. However, you have to be
careful when using the HOLDNODES because it may result in a different
result than the SIGSET, especially in case of circuits with parasitic
elements such as inductors or capacitors. The SIGSET command specifies only
the value of the node voltage while the HOLDNODES imposes the voltage and
the current. SIGSET is essentially an initial point editor, and as such,
has no validity with regards to simulation.
Another important thing to consider is the files created by Saber
for each analysis. In general if you are not interested in extracting the
initial point or any variables from any level of hierarchy not already in
the SIGList for the PLotfile(s), you do not need to keep the data file.
Therefore it is easy to tell Saber to ignore it simply by giving an
underscore `_' instead of a name in the transient analysis menu. Ie,
``DF _'' The same thing applies for the plot file. You may only need
to keep the initial point and the end point. Ie, TRIP and TREP.
After completing the transient and reaching the steady state, a
good accuracy is needed in order to have a very good result. For best
accuracy, TruncationERRor may be set to 0.1m and the TruncationERRorTYPE to
ALL for the version 3.2. (For previous release use STATIC.) It may be
helpful to increase the DENSITY to 16 or 32 or even in some cases to 64.
Generally a time step of 0.001u is good enough for power electronic
converters operating at high frequencies (up to 50 kHz). However, it is not
a critical parameter since Saber uses a variable-size timestep which
automatically adjusts the timestep in order to keep to the accuracy settings
(eg, TruncationERror). Keep in mind to use for each transient the previous
result. This is possible by using the CONTinue menu and CONTinue TRansient
with the appropriate TimeEnd.
3 Avoiding Troubles with Saber: (Transient Analysis)
In some cases and even with all the precautions taken, you may run
in trouble and get an error message. The error message may be one of the
followings:
1
2
3
4
SINGULAR JACOBIAN MATRIX
ALGORITHM NO NON LINEAR SOLUTION
PL DATABASE EOF
CLASS-OPEN-FILE
One way to get around the first error if it has happened during the
transient analysis is to run Saber with the hierarchy flattened:
Saber -d flat file.sin
This usually fixes the problem. If the problem has not been fixed, try to
fix it either by increasing the density or by reducing the truncation error
and the time step. It is also sometimes useful to change the time
resolution of the simulator. You may also need to alter parameter values so
that various instances of a template type don't have too wide of a range of
values (e.g c.1=1p; c.2 =1 #Farad). This problem may also arise from
choosing a very small TimeStep relative to TimeEnd because of the wide
difference of time constants (stiff system).
The second error is usually fixed by the adjustment of the
truncation error and the density. A couple of other things to do in this
case is:
1. Switch to the first order integration method.
2. switch to the Trapezoidal integration method.
However, the last two methods may not be very accurate if the
第 2 页
Tips for Saber Users in the Simulation of Power Electronic Circuits.txt
converter is operating at high frequencies.
When you get the message PL DATABASE EOF, you have to run again the
simulation for a few cycles. It is also possible to fix the problem by
editing the ASCII *.p1.* file and changing the value for npoints (near the
bottom of the file) to a slightly smaller value. Therefore, you will avoid
the need to resimulate.
Whenever you get the error CLASS-OPEN FILE you need to check your
disk quota because you went over it.
In some cases you may need to run the simulation step by step and
after each step use the old transient end point (TRep) as your new transient
initial point (TRip). When you are using IDEAL SWITCHES instead of real
models of the semiconductors, you have to be aware that the ON resistance of
the switch should be finite. Theoretically you can use a zero ON resistance
and an infinite OFF resistance but it is advisable to give a small ON
resistance and a big value but finite for the OFF resistance. The same
thing applies to the rise time and the fall time of many templates like the
pulse template. The Rise and Fall times must be strictly positive.
第 3 页
展开预览

猜您喜欢

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×