Simulation PM/Reluctance motor

Call: Rotating Machine (r/phi-coordinate-system)

Data for the “PM/Reluct.Motor Simul.” procedure

The optional declaration of the second air gap (parameter m.fcradius2) is available since FEMAG-version 8.2.3.

m.move_action     =          0.0   --   Move Action: rotate=0; linear=1
m.arm_length      =        100.0   --   Effect. armature length          [mm]
m.num_pol_pair    =          2     --   Number of Pole pairs           (>= 1)
m.npols_gen       =          1     --   Number of Poles simulated      (>= 1)
m.speed           =       3000.0   --   Speed: rotate                 [1/min]
m.skew_angle      =          0.0   --   Skew angle                  [Deg; mm]
m.nu_skew_steps   =          0     --   No of skew sect:>0:finite;0:infinite
m.eval_force      =          0     --   Evaluate force density: no = 0;yes >0
m.current         =         20.0   --   Nominal stator coil current(Peak) [A]
m.angl_i_up       =          0.0   --   Angle current I vs. voltage Up  [Deg]
m.num_par_wdgs    =          0     --   Number of parallel Windings   (>= 1)
m.magn_temp       =         20.0   --   Temperature Magnet            [Deg C]
m.fc_radius       =         34.25  --   Radius air-gap center (torque)   [mm]
m.fc_radius2      =          0.0   --   Radius 2. air-gap center         [mm]  (opt. param.)
m.optim_i_up      =          0     --   Optimize < I vs Up : no = 0; yes > 0
m.calc_fe_loss    =          1.0   --   Calculate Losses:>0; areas>0; no = 0
m.nu_move_steps   =         49     --   Number of move steps
m.range_phi       =        180.0   --   Move range angle
m.phi_start       =          0.0   --   Start angle
m.pm_eff_aktiv    =              0 --   Generate additional output (>=1) \n

m.fc_mult_move_type =          1.0 --   Type of move path in air gap (1=circ)
m.fc_force_points   =        0     --   Number of move points in air gap \n

m.period_frac       =        1     -- Fraction of rotation range: 1 full, 6: 1/6 Period
m.pocfilename    = 'xyz.poc'\n

-- additional flux output in BCH/BATCH file (optional)
m.flx_x={}
m.flx_y={}
m.flx_x[1], m.flx_y[1] = pr2c((da1/2+h), math.pi/m.tot_num_sl)

m.flx_x[2], m.flx_x[2] = pr2c((dy1/2), math.pi/m.tot_num_sl)\n

run_models("pm_sym_fast")
../../../../../_images/PM.Reluct.Motor.Simul.01.png ../../../../../_images/PM.Reluct.Motor.Simul.02.png ../../../../../_images/PM.Reluct.Motor.Simul.03.png ../../../../../_images/PM.Reluct.Motor.Simul.04.png

Call: Linear Machine (x/y- and r/z-coordinate-system)

Data for the “PM/Reluct.Motor Simul.” procedure

Example for the call:

-- movement in x-direction

m.move_action     =          1.000 --   Move Action: rotate=0; linear=1
m.arm_length      =        700.000 --   Effect. armature length          [mm]
m.num_pol_pair    =          1.000 --   Number of Pole pairs           (>= 1)
m.two_pole_wi     =         72.000 --   2 X pole width                   [mm]
m.speed_linear    =         30.000 --   Speed:  linear                  [m/s]
m.skew_linear     =          0.000 --   Skew displacement                [mm]
m.nu_skew_steps   =          0.000 --   No of skew sect:>0:finite;0:infinite
m.eval_force      =          0.000 --   Evaluate force density: no = 0;yes >0
m.current         =         10.000 --   Nominal stator coil current(Peak) [A]
m.angl_i_up       =          0.000 --   Angle current I vs. voltage Up  [Deg]
m.num_par_wdgs    =          1.000 --   Number of parallel Windings   (>= 1)
m.magn_temp       =         20.000 --   Temperature Magnet            [Deg C]
m.line            =          1.000 --   Move path: line: 0 ; poly line: 1
m.npols_gen       =          1.000 --   Number of Sectors simulated   (>= 1)
m.calc_fe_loss    =          1.000 --   Calculate Losses:>0; areas>0; no = 0
m.nu_move_steps   =         73.000 --   Number of move steps
m.range_x         =         72.000 --   Move range x [mm]
m.range_y         =          0.000 --   Move range y [mm]
m.pm_eff_aktiv    =          0.000 --   Generate additional output (>=1)
m.optim_i_up      =          0.000 --   Optimize < I vs Up : no = 0; yes > 0 \n

m.fc_mult_move_type =        1.000  --  Type of move path in air gap
m.fc_force_points   =        5.000 --   number move points in air gap
m.fcpx_mm1        =         -1.000 --   x-coord of polyline [mm]
m.fcpy_mm1        =        101.500 --   y-coord of polyline [mm]
m.fcpx_mm2        =         72.500 --   x-coord of polyline [mm]
m.fcpy_mm2        =        101.500 --   y-coord of polyline [mm]
m.fcpx_mm3        =         72.500 --   x-coord of polyline [mm]
m.fcpy_mm3        =        118.500 --   y-coord of polyline [mm]
m.fcpx_mm4        =         -1.000 --   x-coord of polyline [mm]
m.fcpy_mm4        =        118.500 --   y-coord of polyline [mm]
m.fcpx_mm5        =         -1.000 --   x-coord of polyline [mm]
m.fcpy_mm5        =        101.500 --   y-coord of polyline [mm] \n

m.pocfilename     = 'xyz.poc'
run_models("pm_sym_fast")