How to import a voltage or current waveform?


MANATEE software can run the NVH analysis of e-motors based on user-defined voltage or current waveforms. This is especially useful when enforcing non-sinusoidal currents coming from experiments or third party electromagnetic software, for instance to study the effect of additional current harmonics or unbalance on noise of electric motors.

Example of phase current waveforms imported in MANATEE
Example of phase current waveforms imported in MANATEE


Phase current or voltage waveforms can be imported as tables either as a .txt ASCII file or an Excel sheet. The waveform should be in magnitude (not RMS value) in [A] or [V]. The table dimension should be a [nt, qs+1] table with nt lines for each time step, a first column with time vector in seconds and the last columns for the qs phase values. The data files must be placed in a folder which is in your Matlab path (e.g. in your MachineData/MyMachines folder).

It is advised to import the voltage/current signal over one mechanical period, and make sure that the waveform is periodic. The final current/voltage waveform time should match with the final simulation time given by (assuming no time periodicities):

T_{f}= \frac{N_{rev}p}{(1-s)f_{s}

where Nrev is the number of mechanical revolutions given in Input.Simu.Nrev, p is the number of pole pairs given in Input.Magnetics.p, s is the slip given in Output.Electrical.slip0 (for induction motors) and fs is the fundamental electrical frequency from Output.Electrical.freq0.

Alternatively a large number of mechanical periods can be imported, but then the windowing functions of MANATEE should be used.

In case the simulation time does not fit with imported time waveforms, some warnings and instructions are given in MANATEE console output.

When importing a current waveform without rotor angular waveform, the rotor angle is set according to user-defined operating point. As an example, for PMSM, if a certain current magnitude and phase angle is defined in the simulation project, the corresponding Id/Iq point will be used to tune the rotor initial angle.

Note that MANATEE can filter the imported waveform according to specified simulation options (max frequency, max number of harmonics, etc).

GUI implementation


Scripting implementation

To import a time waveform of phase current (resp. phase to neutral voltage), one should respectively set the following MANATEE input variables are

Input.Simu.type_extsupply = 2; %current

for current waveform import or

Input.Simu.type_extsupply = 3;%voltage

for voltage waveform import. The path of the time waveform data should be specified for instance as

Input.Simu.pathname_supply = 'C:/User/Data/voltage.txt';

Small magnitude harmonics can be filtered using


In this case all harmonics with less of 1% o fthe fundamental wave are removed. If no harmonics should be removed one should specify


The maximum frequency of current harmonics to be used is specified by Input.Simu.max_curr_freq

Finally the maximum number of harmonics to be used in current/voltage spectrum is given by Input.Simu.Nmax_time_harm