kopplung von femag und der umrichtersimulation plecs
TRANSCRIPT
electrical engineering software
Kopplung von FEMAG und der Umrichtersimulation PLECS
Electronics: Apple
GE Appliance
Panasonic
Philips
Tyco
Semiconductors: ABB
Infineon
Texas Instruments
Transphorm
Wolfspeed
Aerospace: Boeing
Goodrich
GE Aviation
Northrop Grumman
UTC Aerospace
Automotive: BMW
Ford
General Motors
Mercedes Benz
Toyota
!2
Some of our Customers Today
High Power: ABB
Alstom
Bombardier
GE Energy
Siemens
Automation & Drives: Danfoss
Eaton
Hilti
Lenze
Rockwell
Renewables: American Superconductor
Danfoss
Schneider Electric
SMA
Yaskawa
Telecoms: Delta
Emerson Network Power
GE Critical Power
Huawei
Intel
Academic: Aachen
Aalborg
Nottingham
Wisconsin at Madison
Virginia Tech
Model based design with PLECS
Requirements
System Design MIL Simulation
Software Design SIL Simulation
MCU Code Verification PIL Simulation
Integration HIL Simulation
Calibration
!3
Power converter
Controller
LoadPower input Power output
Control signals
Reference
Measurement
vi ii io vo
Heat
!4
Circuit and System Level Modelling
Instantaneous switching
Fast and efficient simulation
PLECS System Model
!5
Non-ExcitedSMShaftInertisShaftStiffness
ShaftDamping
Mass
WheelGearBacklash
HardStop
2-LevelIGBTConv.
3
V
Electrical Interface Mechanical Load
Electrical Machines
Different machine models
!6
Slip-RingIM
Squirrel-CageIM
Open-WindingIM
SaturableSlip-RingIM
Salient-PoleSM
Round-RotorSM
Perm.-MagnetSM
Non-ExcitedSM
Sync.Rel.Machine
BLDCMachine
BLDC
BLDCMachine(Simple)
BLDC
DCMachine SwitchedReluctanceMachine(6/4)
3
3 6/4SRM
SwitchedReluctanceMachine(8/6)
4
4 8/6SRM
SwitchedReluctanceMachine(10/8)
5
5 10/8SRM
Implementation AC Machines
!7
x = Ax+Bu
y = Cx+Du
<latexit sha1_base64="cwnGlDc+jGpowo/+V/hk+BIkynU=">AAACCHicbVDLSgMxFM3UVx1foy5dGCyCIJQZEXQj1NaFywr2AZ2hZNJMG5p5kId0GLp046+4caGIWz/BnX9jpu1CWw8Ezj3n3iT3+AmjQtr2t1FYWl5ZXSuumxubW9s71u5eU8SKY9LAMYt520eCMBqRhqSSkXbCCQp9Rlr+sJb7rQfCBY2je5kmxAtRP6IBxUhqqWsdur1YZqMxvILXI3gKq8p1zVRXtby6UV2rZJftCeAicWakBGaod60vfSNWIYkkZkiIjmMn0ssQlxQzMjZdJUiC8BD1SUfTCIVEeNlkkTE81koPBjHXJ5Jwov6eyFAoRBr6ujNEciDmvVz8z+soGVx6GY0SJUmEpw8FikEZwzwV2KOcYMlSTRDmVP8V4gHiCEudnalDcOZXXiTNs7Kj+d15qVKdxVEEB+AInAAHXIAKuAV10AAYPIJn8ArejCfjxXg3PqatBWM2sw/+wPj8ATxBluM=</latexit><latexit sha1_base64="cwnGlDc+jGpowo/+V/hk+BIkynU=">AAACCHicbVDLSgMxFM3UVx1foy5dGCyCIJQZEXQj1NaFywr2AZ2hZNJMG5p5kId0GLp046+4caGIWz/BnX9jpu1CWw8Ezj3n3iT3+AmjQtr2t1FYWl5ZXSuumxubW9s71u5eU8SKY9LAMYt520eCMBqRhqSSkXbCCQp9Rlr+sJb7rQfCBY2je5kmxAtRP6IBxUhqqWsdur1YZqMxvILXI3gKq8p1zVRXtby6UV2rZJftCeAicWakBGaod60vfSNWIYkkZkiIjmMn0ssQlxQzMjZdJUiC8BD1SUfTCIVEeNlkkTE81koPBjHXJ5Jwov6eyFAoRBr6ujNEciDmvVz8z+soGVx6GY0SJUmEpw8FikEZwzwV2KOcYMlSTRDmVP8V4gHiCEudnalDcOZXXiTNs7Kj+d15qVKdxVEEB+AInAAHXIAKuAV10AAYPIJn8ArejCfjxXg3PqatBWM2sw/+wPj8ATxBluM=</latexit><latexit sha1_base64="cwnGlDc+jGpowo/+V/hk+BIkynU=">AAACCHicbVDLSgMxFM3UVx1foy5dGCyCIJQZEXQj1NaFywr2AZ2hZNJMG5p5kId0GLp046+4caGIWz/BnX9jpu1CWw8Ezj3n3iT3+AmjQtr2t1FYWl5ZXSuumxubW9s71u5eU8SKY9LAMYt520eCMBqRhqSSkXbCCQp9Rlr+sJb7rQfCBY2je5kmxAtRP6IBxUhqqWsdur1YZqMxvILXI3gKq8p1zVRXtby6UV2rZJftCeAicWakBGaod60vfSNWIYkkZkiIjmMn0ssQlxQzMjZdJUiC8BD1SUfTCIVEeNlkkTE81koPBjHXJ5Jwov6eyFAoRBr6ujNEciDmvVz8z+soGVx6GY0SJUmEpw8FikEZwzwV2KOcYMlSTRDmVP8V4gHiCEudnalDcOZXXiTNs7Kj+d15qVKdxVEEB+AInAAHXIAKuAV10AAYPIJn8ArejCfjxXg3PqatBWM2sw/+wPj8ATxBluM=</latexit><latexit sha1_base64="cwnGlDc+jGpowo/+V/hk+BIkynU=">AAACCHicbVDLSgMxFM3UVx1foy5dGCyCIJQZEXQj1NaFywr2AZ2hZNJMG5p5kId0GLp046+4caGIWz/BnX9jpu1CWw8Ezj3n3iT3+AmjQtr2t1FYWl5ZXSuumxubW9s71u5eU8SKY9LAMYt520eCMBqRhqSSkXbCCQp9Rlr+sJb7rQfCBY2je5kmxAtRP6IBxUhqqWsdur1YZqMxvILXI3gKq8p1zVRXtby6UV2rZJftCeAicWakBGaod60vfSNWIYkkZkiIjmMn0ssQlxQzMjZdJUiC8BD1SUfTCIVEeNlkkTE81koPBjHXJ5Jwov6eyFAoRBr6ujNEciDmvVz8z+soGVx6GY0SJUmEpw8FikEZwzwV2KOcYMlSTRDmVP8V4gHiCEudnalDcOZXXiTNs7Kj+d15qVKdxVEEB+AInAAHXIAKuAV10AAYPIJn8ArejCfjxXg3PqatBWM2sw/+wPj8ATxBluM=</latexit>
Basierend auf gesteuerten Stromquellen (Rotor reference frame)
Basierend auf variablen Induktivitäten (Voltage behind reactance)
Components: Rotational Backlash
Restricts relative displacement of two gears
No torque transmitted in interval Hard stop:
Backlash:
!8
Gear 1
Gear 2
Backlash
✓ 2 (�b/2, b/2)
θmin θmaxθ
τ
Sticking
Slidingbackward
Slidingforward
� > �brk � < -�brk
> 0 < 0
�brk-�
�C cv�
Components: Rotational Friction
Combines static and sliding friction in a rotational system Sticking Mode
Sliding Mode
!9
⌧ 2 {0, |⌧brk|}⌧ = �(⌧c + cv · !)
electrical engineering software
Plexim GmbH
Technoparkstrasse 1 CH-8005 Zurich
Phone +41 44 533 51 00 Email [email protected] Web www.plexim.com
Plexim, Inc.
5 Upland Road, Suite 4 Cambridge, MA 02140
Phone +1 617 209 2121 Email [email protected] Web www.plexim.com
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Coupling FEMAG with PLECSFEMAG Anwendertreffen 2018
Ronald Tanner
ProFEMAG AG
Friedrichshafen, 14./15. November 2018
R. Tanner FEMAG and PLECS 1 / 6
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Architecture and Procedure
R. Tanner FEMAG and PLECS 2 / 6
create machine modelrun FE simulationcreate lookup tablesrun system simulationprocess results
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Prepare Drive System Model
R. Tanner FEMAG and PLECS 3 / 6
Set Simulation Parameters/Initialization:Load Lookup-Tables for PMSM-Machine- andMTPA-Blocks as MAT-Files:Mtpa = load('mtpa.mat');Mot.mag_t = load('psidq.mat');
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Python Script (1): Create Model, Run Simulation
R. Tanner FEMAG and PLECS 4 / 6
machine = {"name": "PM 270 L8","poles": 8,"outer_diam": 0.26924,"bore_diam": 0.16192,"inner_diam": 0.11064,"airgap": 0.00075,"lfe": 0.08356,"stator": {
"num_slots": 48,"mcvkey_yoke": "M330 -50A","statorRotor3": {
"slot_height": 0.0335,...
}},"magnet": {
"mcvkey_yoke": "M330 -50A","magnetIronV": {
"magn_angle": 145.0,...}
},"windings": {
"num_phases": 3,"num_layers": 1,"num_wires": 9,"coil_span": 6.0,...
}}
simulation = {"calculationMode": "psd_psq_fast","magn_temp": 60.0,"maxid": 0.0,"minid": -200.0,"maxiq": 200.0,"miniq": -200.0,"delta_id": 40.0,"delta_iq": 40.0,"speed": 50.0
}
femag = femagtools.Femag(workdir ,magnetizingCurves='.')
r = femag(machine , simulation)
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Python Script (2): Create Lookup Tables
R. Tanner FEMAG and PLECS 5 / 6
id = r['psidq ']['id']iq = r['psidq ']['iq']_psid = scipy.interpolate.RectBivariateSpline(
iq, id, np.array(r['psidq ']['psid ']))_psiq = scipy.interpolate.RectBivariateSpline(
iq, id, np.array(r['psidq ']['psiq ']))
ldd = _psid(iq, id, dx=0, dy=1)lqq = _psiq(iq, id, dx=1, dy=0)ldq = _psid(iq, id, dx=1, dy=0)lqd = _psiq(iq, id, dx=0, dy=1)
scipy.io.savemat('psidq.mat' ,
dict(imd=np.array(id).reshape(1, -1),imq=np.array(iq).reshape(1, -1),Psid=_psid(iq, id).T,Psiq=_psiq(iq, id).T,Lmidd=ldd.T,Lmiqq=lqq.T,Lmidq=ldq.T
))
nsamples = 14tsamples = 14Tmax = 200nmax = 8000/60umax = 300Tvec = np.linspace(-Tmax, Tmax, tsamples)nvec = np.linspace(0, nmax, nsamples)r1 = 0.015ls = 1e-4pm = femagtools.machine.create(bch, r1, ls)
iqdtq = np.array([[pm.iqd_torque_imax_umax(T, n, umax)
for T in Tvec]for n in nvec])
tq = np.array([[pm.torque_iqd(x, y)for x in iq] for y in id])
scipy.io.savemat('mtpa.mat' ,
dict(torque=Tvec.reshape(1, -1),ws=nvec.reshape(1, -1),id=iqdtq[:, :, 1].T,iq=iqdtq[:, :, 0].T,maxtorque=np.max(iqdtq[:, :, 2]),mintorque=np.min(iqdtq[:, :, 2]),imd=np.array(id).reshape(1, -1),imq=np.array(iq).reshape(1, -1),Te=tq.T))
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
...
.
Python Script (3): Run System Simulation
R. Tanner FEMAG and PLECS 6 / 6
Send XML-RPC-Requests to the running PLECS instanceto load system model, start simulation and process results:
plecs_model = "pmsm-mtpa-fw"with xmlrpc.client.ServerProxy(
"http://localhost:1080/RPC2") as server:server.plecs.load(os.path.join(os.getcwd(),
plecs_model + ".plecs"))opts = {'ModelVars ': {'Vbat': 500}}result = server.plecs.simulate(plecs_model , opts)
time = result['Time']i1 = result['Values '][0:3]psi = result['Values '][3:5]wm = result['Values '][5]torque = result['Values '][6]
Conclusion:With Python a fast and easy coupling of PLECS andFEMAG can be realized which allows a detailedsimulation and optimization of complete drive systems.