Automatic Frequency Identification under Sample Loss in Sinusoidal Pulse Width Modulation Signals Using an Iterative Autocorrelation Algorithm

In this work, we present a simple algorithm to calculate automatically the Fourier spectrum of a Sinusoidal Pulse Width Modulation Signal (SPWM). Modulated voltage signals of this kind are used in industry by speed drives to vary the speed of alternating current motors while maintaining a smooth torque. Nevertheless, the SPWM technique produces undesired harmonics, which yield stator heating and power losses. By monitoring these signals without human interaction, it is possible to identify the harmonic content of SPWM signals in a fast and continuous manner. The algorithm is based in the autocorrelation function, commonly used in radar and voice signal processing. Taking advantage of the symmetry properties of the autocorrelation, the algorithm is capable of estimating half of the period of the fundamental frequency; thus, allowing one to estimate the necessary number of samples to produce an accurate Fourier spectrum. To deal with the loss of samples, i.e., the scan backlog, the algorithm iteratively acquires and trims the discrete sequence of samples until the required number of samples reaches a stable value. The simulation shows that the algorithm is not affected by either the magnitude of the switching pulses or the acquisition noise.


Introduction
In a normal Alternating Current (AC) power system, the voltage varies sinusoidally at a specific frequency; usually 50 Hz or 60 Hz [1].However, in some industrial applications, AC motors are required to work with different supply frequencies; thus, adjustable speed drives are used to solve this problem by varying the frequency of the input voltage.
In general, an oscilloscope is used to observe the voltage and current waveforms.An oscilloscope is designed to capture a specific number of samples at a predefined sampling frequency; thus allowing the operator to examine a plot of the samples on a screen.The operator needs, however, to know the fundamental frequency of the input signal in order to display an exact integer number of cycles.
By knowing the fundamental frequency, the number of samples and sampling frequency can be adjusted exactly; otherwise, they need to be adjusted by trial and error.Nevertheless, if these parameters are not adjusted correctly, the Fourier transform will not contain the actual spectrum of the original signal; resulting in discontinuities and spectral leakage; i.e., the spilling of energy centered at one frequency into the surrounding spectral regions [2,3].Usually, to address this problem, the windowing technique is employed to reduce the amplitude of the discontinuities at the boundaries of each period, reducing spectral leakage [3].This process, however, produces errors when estimating the amplitude of the spectrum harmonics, while the capacity for detecting weak frequency components near strong components is also lost [2].
The waveform analyzed in the present study is the Sinusoidal Pulse Width Modulation (SPWM) [1,[4][5][6], which is used widely in AC drives because it pushes the harmonics into a high-frequency range [4]; thus decreasing the mechanical vibrations that affect the performance of AC motors.However, SPWM generates high-frequency harmonic components that lead to stress on the associated switching devices [1] and electrical power losses; such as rotor and stator winding heating, as well as eddy and hysteresis losses [7].In order to implement preventive maintenance and a detailed diagnosis of AC machines and their drives, it is necessary to determine the magnitude and location of the harmonics in a fast and accurate manner.
In former studies, the zero-crossing method has been used as one of the simplest ways to estimate the power system frequency; however, the measured signals typically contain harmonic distortions, which may introduce significant errors when using this method [8].In some practical applications, the autocorrelation function [9][10][11] is used to identify the periodicities in an observed physical signal, which may be corrupted by a random interference [9].In some recent studies, the problem of estimating the signal parameters for a sinusoidal waveform immersed in random noise has been addressed by using the autocorrelation function [12][13][14].There exists the non-parametric methods, which are based on the idea of estimating the autocorrelation sequence of a random process from a set of measured data and then taking the Fourier transform for estimating the power spectrum; and the parametric methods, which require some knowledge about how the data samples are generated [15,16].In addition, the covariance matrices [17][18][19] can be used to estimate the power spectrum assuming that the vector samples are taken from a zero-mean multivariate random Gaussian process.Although these methods are suitable for voice, radar and communication applications, our method is a straightforward engineering solution to a power electronics problem.
In the present study, we propose a frequency detection algorithm to deal with the problem of capturing a single SPWM signal cycle in a fast, automated and reliable manner.The pattern of pulses [6] produced by SPWM gating signals is not random or small, but we use a simulation to show that the autocorrelation function can be employed to identify the fundamental frequency of an SPWM signal despite the magnitude of the pattern of pulses under conditions with scan backlog [20,21] and acquisition noise [22].
First, the original signal is autocorrelated to estimate its period, then the number of samples required to process a single signal cycle is determined approximately.After those steps, the original signal sequence is trimmed iteratively until a single cycle can represent the Fourier spectrum accurately.A mathematical model is proposed for the scan backlog and used along with the acquisition noise effects in the steps of the algorithm.
The remainder of the article is organized as follows: In Section 2, we provide a summary of the background theory required to understand the proposed algorithm.Subsection 2.1 gives the definitions of the discrete Fourier transform, the root mean square (rms) and the Hanning window.An introduction to pure sinusoidal signal analysis is given to highlight the problem of capturing a non-integer number of cycles and to show why it is not convenient to use the windowing technique.Subsection 2.2 describes the relationship between time, the number of samples and the sampling frequency.Subsection 2.3 presents the analysis of the autocorrelation and the period estimation of unknown frequency signals.Subsection 2.4 gives the background theory for SPWM signals: the definitions for the reference signal, the carrier signal, the number of pulses per half cycle and the modulation index.In Section 3, we explain each step of the flowchart for the proposed algorithm.In Section 4, we show the results for the estimation of the input signal frequency, including the effects of the scan backlog and the signal noise.In Section 5, we give our conclusions regarding the main contributions of this study, as well as making suggestions for future research.In Appendix A, we include the parameter estimation of two signals, whose frequencies are non-integer.In Appendix B, the autocorrelation for periodic functions is defined.

Analysis of the Spectrum Leakage at Sinusoidal Signals
In this subsection, we provide an analysis of the spectrum leakage of a sinusoidal signal in order to highlight the need to acquire an integer number of cycles.In this analysis, we test a sinusoidal signal of 60 Hz and 200 volts-peak (Vp).
The discrete Fourier transform of a sequence of N samples is given by Equation ( 1), where xpnq is the discretized signal and Xpkq are the spectrum harmonics [23].
Equations ( 2) and ( 3) conform a modified version of the discrete Fourier transform, which is preferred in the present study.The factors 1{N and 2{N affect the height of each harmonic in order to represent its actual amplitude, where the coefficient 1{N is a normalizing factor used for the reconstruction sum [24] and a multiplication by two is used in order to represent the one-sided Fourier spectrum [3].The DC component, however, is not multiplied by two [3,7], as can be seen in Equation (2).The mathematical software tool used in this study is MATLAB [25].It is important to indicate that in order to ensure compatibility with this software, the lower and upper bounds of the summation are modified to start from n " 1 and to end at n " N. Furthermore, only half of the harmonics are used in the one-sided spectrum where k must be an integer; therefore, the index related to the location of each harmonic ranges from k " 1 to the floor integer of half of the samples.Here, the MATLAB function fft(X) is used to calculate the discrete Fourier transform of a sequence.Later, the output of this MATLAB function is modified according to Equations ( 2) and (3).
Equations ( 4)-( 6) are used to calculate the rms value of the input signal, where Vrms is the total rms value of the signal, Vrms DC is the rms value of the direct component and Vrms AC is the rms value of the alternate components of the signal.For example, Vrms 1 denotes the rms value of the first harmonic, Vrms 2 is the rms value of the second harmonic, and so on, up to Vrms k [4], where the subscript k represents the number of the spectrum harmonics used, as stated earlier.
Vrms DC " V DC (4) By displaying only 13 harmonics, the spectrum of an integer number of cycles for a sinusoidal signal of 200 Vp and 60 Hz has a single impulse located at the first harmonic at 60 Hz with a magnitude equal to the amplitude of the signal (as shown by the Fourier spectrum in Figure 1) and a rms value of 141.4 V. Nevertheless, because the Fourier transform assumes periodicity, if one period and a half of the signal is acquired, then the result of the Fourier analysis would be the worst, as shown in Figure 2, where it can be seen that there is a nonexistent DCcomponent at 0 Hz with an amplitude of 42.4 V and several harmonics around the fundamental frequency with wrong amplitudes.
To reduce the magnitude of the nonexistent harmonics caused by acquiring a non-integer number of cycles, a Hanning window [3] can be applied to the input signal.The Hanning window formula is given in Equation (7).A new windowed sequence of samples is obtained by multiplying each element of the discretized signal xpnq by each element of the Hanning window h w pnq.In this case, the indexes of the Hanning window are assigned from n " 1 to n " N to ensure software compatibility.h w pnq"0.5´0.5 cosp2πn{Nq; n"1, 2, 3, ..., N The resulting Fourier transform for one period and a half of the sine signal multiplied by the Hanning window is shown in Figure 3, where the total rms value is 86.6 V; therefore, representing an error of 38.7% calculated as | p141.4´86.6q|¨p100{141.4q.The analysis above demonstrates in a simple, but reliable manner that the window technique is not an appropriate solution when an accurate Fourier spectrum and its related calculations are needed, especially in power systems, where harmonics could be approximately hundreds of volts and should not be neglected.

Acquisition of a Signal Time-Lapse
Oscilloscopes and data acquisition boards are limited in terms of the number of samples they can store because they have a finite memory.They also capture the data using a specific sampling frequency, which is selectable in many cases.The length of the measured time [3], i.e., the time window t w to be displayed, is given by Equation ( 8), where N is the number of samples and T s is the sampling period.The sampling period can be related with the sampling frequency f s [3] using Equation (9).Then, Equation ( 8) can be rewritten as Equation (10).The period of the input signal T can be related to its frequency f using Equation (11).
T " For example, if a signal of 60 Hz is acquired, then the number of samples needed to display a single cycle on the screen is N" f s T"p100, 000qp1{60q " 1666.6 samples at a sampling frequency of 100 K samples per second, using t w " T. Nevertheless, as shown in Formula ( 10), the time window can be adjusted by varying the number of samples, as well as the sampling frequency.The maximum sampling frequency, however, should be used in order to get the best resolution.For this simulation, we set the sampling frequency at a value of 100 K s/s, while the number of samples remains variable.
When setting a constant sampling frequency, a lower limit for the input signal frequency is required because more samples are needed to display a signal on the screen as the signal frequency approaches zero Hertz.For simulation purposes, the memory buffer is set to store a maximum of 20,000 samples, which is the number of samples needed to display a signal of 5 Hz at 100 K s/s correctly; therefore, this simulation could not guarantee that the lower input frequencies would be analyzed correctly.

The Autocorrelation Function
If xpnq is a discrete causal sequence, i.e., [xpnq " 0 for n ă 0 and n ě N], then Equation ( 12) describes the autocorrelation sequence [9], where i " l, k " 0 for l ě 0 and i " 0, k " l for l ă 0. To save programming time, we used the MATLAB function xcorr(X) for calculating the autocorrelation, where X is a discrete sequence.
The autocorrelation function can be used to extract the fundamental frequency of a signal producing a new sequence of samples of length 2N ´1.If a discrete time signal xpnq is periodic, then its autocorrelation is also periodic with the same period [9,10]; i.e., its autocorrelation has large peaks every period; however, because the sequence has a finite number of samples, the magnitude of peaks decreases (see Appendix B for a detailed explanation about the autocorrelation of periodic discrete sequences).Therefore, the period of the original signal can be obtained using the two autocorrelation indices that belong to the consecutive maximums or the minimums.
At first, rather than estimating one signal period, the amount of time corresponding to half of the period is computed using the lag indexes of the global maximum and global minimum, r max and r min , respectively.In general, this method is faster because most of the software packages have functions to find the maximum and minimum values within a sequence (MATLAB functions rM, Is " maxpAq and rM, Is " minpAq were used).After numbering the autocorrelation lag indices from one to 2N ´1, the index of the global maximum value of the autocorrelation is l max , and the index of the global minimum value is l min .Since the autocorrelation samples are separated by a distance Ts, half of the period can be estimated using T{2 " T s pl max ´lmin q; however, small acquisition errors may occur, so the location of the global minimum cannot be determined accurately; i.e., the global minimum could be located to the right of the global maximum or to the left; therefore, an absolute value operation is needed; i.e., T{2 " T s | pl max ´lmin q |; thus, the period estimation, can be obtained by doubling half of the signal period, as can be seen in Equation (13).
Figure 4 illustrates the case where one and a half period of a sine wave of 200 Vp and 60 Hz has been autocorrelated.For the example shown in Figure 4, the maximum and minimum indices are l max " 2500 and l min " 1667, respectively.T " 2 T s |pl max ´lmin q| (13) For one period and a half of a sine wave of 200 Vp and 60 Hz, the calculation of the signal frequency based on the determination of the period using the autocorrelation function yields 60.024 Hz; thus, there is a frequency estimation error of 0.04%.

The Sinusoidal Pulse Width Modulation
There are several SPWM techniques, such as bipolar SPWM [1] and unipolar SPWM [5,26,27].In the present study, we consider the unipolar SPWM technique.The gating signals for unipolar SPWM can be created by comparing a normalized sinusoid (the reference signal) and a triangular waveform (the carrier signal) [4,5].The amplitude of the reference signal is A r , and the amplitude of the carrier signal is A c .The modulation index M is the ratio of these signals (see Equation ( 14)), which affects the width of the pulses.
The period of the reference signal T r is the same as the period of the SPWM signal T; thus, the switching period of the carrier signal T c [4] can be related to the number of pulses per half cycle p using Equation (15).It is important to note that the carrier period T c depends on the SPWM period T; therefore, given the integer constant of 2pp `1q, the carrier frequency is always constrained to be a multiple of the SPWM frequency.
By rewriting Equation ( 15), the frequency of the carrier signal f c can be determined given the frequency of the reference signal f r and the desired number of pulses per half cycle p, as can be seen in Equation (16).Equation ( 16) is a simpler form of Equation ( 15) because it involves the frequency of the SPWM signal.Here, the frequency of the reference signal is equal to the frequency of the SPWM signal; i.e., f r " f .
This type of modulation eliminates all of the Low Order Harmonics (LOH) less than or equal to 2p ´1, as shown in Equation (17).For example, when p " 5, the LOH is the ninth [4].
Figure 5 shows the resulting pattern of pulses for two periods of a reference signal of 60 Hz, with a modulation index of 0.5 and five pulses per half cycle.In this figure, the reference signal, the pattern of pulses and the carrier signal are displayed for the positive semi-cycle; but for clarity, only the reference signal and the pattern of pulses are shown for the negative semi-cycle.In this example, an unidirectional triangular wave is used as the carrier signal [4].
The voltage applied to the AC motor has the same shape as the pattern of pulses of Figure 5, but it is scaled to the available DC voltage of the speed driver.For example, if the available DC voltage at the speed driver is 200 V, then the amplitude of the SPWM is also 200 V; i.e., the peak voltage is 200 Vp. Figure 6 shows a single period for the resulting SPWM signal produced by the pattern of pulses in Figure 5, where the peak value is 200 V. Figure 7 shows the Fourier spectrum of the waveform illustrated in Figure 6 using the first 29 harmonics.The Vrms AC value of 111.6 V equals the total Vrms value because there is no DC component.Figure 8 shows one period and a half of the same SPWM signal, and Figure 9 shows the corresponding Fourier spectrum.Figure 9 shows, however, that there is a nonexistent DC component with an amplitude of 20.8 V and that Equation ( 17) is misled because there are several low order harmonics below the ninth harmonic.

Automatic Fourier Spectrum Detection Using Autocorrelation
Figure 10 shows a flowchart of the proposed algorithm.Each step in the flowchart is indicated by a number enclosed in a gray circle and explained in the following list.Here, the boldface type is used to indicate a sequence of values; the index n refers to a particular sample; the lowercase index i denotes the latest calculated value; and the lowercase k is used to represent the location of each harmonic in the Fourier spectrum.The maximum and minimum autocorrelation indices are not in boldface type because it is only necessary to retain their last calculations. (1) In this step, a white noise signal wpnq is added to the original SPWM signal xpnq to simulate the effect of the acquisition noise.(2) Initially, because there is no information about the signal frequency, the algorithm retrieves the entire buffer to obtain a first approximation.In this step, the scan backlog is neglected because the sample loss is irrelevant.(3) After being forced to enter the cycle for the first iteration, the algorithm compares the last two values regarding the number of samples needed to represent a single period.If these values differ for more than one sample, then the algorithm continues with the calculation; else, the Fourier spectrum is computed and displayed as indicated by Step 11. (4) The signal autocorrelation is calculated.If this is the first iteration, the autocorrelation is calculated for the 20 Ksamples; else, a trimmed version of the signal is used.(5) The result of the autocorrelation is normalized in order to maintain a constant size in the vertical axis of the screen.(6) The lag indexes for maximum and minimum values in the autocorrelation are obtained.This is achieved by using the MATLAB functions rM, Is " maxpXq and rM, Is " minpXq, where X is a discrete sequence, M is the maximum or minimum value (according to the function used) and I is the index where the value of interest is located.(7) The signal period, the signal frequency and the number of samples necessary to represent a single cycle are approximated by using Equations ( 10), ( 11) and ( 13), where the amount of time that needs to be displayed is the period of the signal; i.e., t w " T. (8) In this step, a simulation of the scan backlog effect is considered.The scan backlog indicates how much data remain in the buffer after each retrieval, providing a measure of how well the application is maintaining the throughput rate [20,23]; i.e., a Data Acquisition Card (DAQ) does not retrieve the data at the same rate as the sampling frequency f s .The retrieval speed refers to how fast the computer is taking samples from the buffer toward a specific application.
In this simulation, we assume a constant sampling frequency; hence, all of the samples are separated by a time interval of T s regardless of the retrieval speed.
Equation (18) shows our proposed model of the scan backlog.The scan backlog factor B is treated as a random variable that follows a uniform distribution; i.e., B~u(0,0.01).Therefore, the acquired number of N samples is reduced by 1% towards the actual number of samples processed N B in the worst case.For example, a number of samples less than or equal to 200 samples can be lost from a total of 20 K samples.
In this step, the original digital sequence is trimmed according to the computed number of samples necessary to represent a single cycle; however, this parameter is affected by the scan backlog effect; therefore, the algorithm needs at least two iterations to decide if the computed number of samples is correct.(10) In this step, a white-noise signal wpnq with a signal to noise ratio SNR " 30 dB is added to the acquired SPWM signal xpnq to model the acquisition noise.In every iteration, a different white noise signal is used because the computer must simulate the start of a new acquisition.

Algorithm Evaluation Methodology
To test the effectiveness of the autocorrelation and the Equation ( 13) for estimating the period SPWM signals, the autocorrelation is applied to the signal of Figure 8, which consists of one period and a half and a frequency of 60 Hz (see Figure 11).After applying Equations ( 13) and ( 11), the estimation of the signal frequency is 60.024 Hz; therefore, this estimation has an error of 0.04% regarding the actual frequency.After verifying the effectiveness of the autocorrelation and Equation ( 13) by themselves, we proceed to prove the algorithm.Initially, the algorithm retrieves the entire buffer.Figure 12 shows the initial screen, where 20 K of an SPWM signal of 200 Vp and 60 Hz were acquired.After running the algorithm illustrated in Figure 10, the final version of the input sequence is presented in Figure 13, and its corresponding normalized autocorrelation is shown in Figure 14.In addition, the automated approximation of the Fourier spectrum produced by the algorithm is presented in Figure 15, which resembles the exact Fourier spectrum of the SPWM signal shown in Figure 7.
The final computation of the fundamental frequency of the SPWM signal, including the addition of the white noise and the effect of the scan backlog, is 60.024 Hz; therefore, there is an error of 0.04% regarding the actual input frequency of 60 Hz.After running the algorithm 30 times and including the white noise effect, the average calculation of the total rms value is 111.9V, and the average estimation of the required number of samples is 1656.7 samples; representing an error of 0.2% in terms of the rms value and an error of 0.5% in terms of the number of samples (with one decimal place of significance).The average number of iterations required by the algorithm to converge to a stable number of samples under these conditions is 5.9 iterations.
To compare the latest results, the white noise is removed.Then, the average rms value is 111.8V, and the estimated number of samples is 1658.4samples; therefore, representing an average rms error of 0.2% and an error of 0.4% in terms of the required number of samples (with one decimal place of significance).The average number of iterations required by the algorithm to converge to a stable number of samples under these conditions is 6.9 iterations.

Conclusions and Future Work
Regarding the present study, we can conclude that:

•
It is important to represent a single SPWM signal period in the Fourier analysis; otherwise, the amplitude non-existing harmonics could lead to a poor electrical diagnosis.In industry, this could affect the preventive and corrective actions taken regarding the AC motors and their drives.

•
The autocorrelation function can be applied to calculate the period of SPMW signals regardless of the magnitude of the pattern of pulses.

•
The autocorrelation function can be used to estimate the period of SPWM signals under the loss of samples.

•
The acquisition noise had no substantial effect in the calculation of the required number of samples.
The main contributions of the present study are: • Taking advantage of the symmetry of the autocorrelation, we have searched for the maximum and minimum value indexes regardless of the global maximum and minimum locations.This allowed for a rapid estimation of the signal period.

•
We have provided a simple stochastic model for the scan backlog, to analyze the sample loss.

•
We have implemented an algorithm that uses the autocorrelation to iteratively calculate an SPWM signal period despite the loss of samples and acquisition noise.Thus, we have provided a simulation under realistic conditions for an acquisition process.
As future work, the following opportunity areas remain: • The scan backlog can also be modeled with variations in the sampling frequency around a set point.

•
In this study, the acquisition process commenced at the beginning of the positive semi-cycle; however, the variation of a specified trigger level can also be analyzed.

•
The analysis of other PWM techniques using this algorithm is encouraged.

•
The proposed algorithm can be programmed into a real acquisition device to analyze SPWM voltage and current signals.
Finally, it is important to say that if this algorithm is implemented in modern oscilloscopes and power analyzers, it could reduce the potential errors caused by the operator.The algorithm presented in this work could also be used in control applications where an in-line calculation of the fundamental frequency (or other harmonic) is needed for a fast and continuous analysis of SPWM signals.
corresponding normalized autocorrelation.Figure A8 shows the approximated Fourier spectrum, where the LOH is the seventeenth.After running the algorithm 30 times, the average frequency calculation results in 99.206 Hz, representing an error of 0.094 % regarding the exact frequency of 99.3 Hz.The average calculation of the total rms value is 113.0V, representing an error of 0.2% regarding the exact rms value of 112.7 V (with one decimal place of significance).The average estimated number of samples results in 1003.2 samples, representing and error of 0.3% regarding the exact number of 1007.0 samples (with one decimal place of significance).The average number of iterations required by the algorithm to converge to a stable number of samples for this particular frequency is 7.0 iterations.

Figure 1 .
Figure 1.Exact Fourier transform for a sine wave of 200 volts-peak (Vp) and 60 Hz.

Figure 2 .
Figure 2. Distorted Fourier transform of one period and a half for a sine wave of 200 Vp and 60 Hz.

Figure 3 .
Figure 3. Distorted Fourier transform of one period and a half for a sine wave of 200 Vp and 60 Hz using a Hanning window.

Figure 4 .
Figure 4. Autocorrelation of one cycle and a half for a sine wave of 200 Vp and 60 Hz.

Figure 5 .
Figure 5. Carrier signal, reference signal and pattern of pulses for an SPWM where p = 5 and M = 0.5.

Figure 6 .
Figure 6.Single period for an SPWM signal of 200 Vp and 60 Hz, where p = 5 and M = 0.5.

Figure 7 .
Figure 7. Fourier spectrum of a single period for an SPWM signal of 200 Vp and 60 Hz.

Figure 8 .
Figure 8.One period and a half for an SPWM signal of 200 Vp and 60 Hz, where p = 5 and M = 0.5.

Figure 9 .
Figure 9. Spectrum of one period and a half for an SPWM signal of 200 Vp and 60 Hz.

Figure 10 .
Figure 10.Flowchart of the algorithm based on the autocorrelation function.

Figure 11 .
Figure 11.Autocorrelation function for one period and a half for an SPWM signal of 200 Vp and 60 Hz, with p = 5 and M = 0.5.

Figure 12 .
Figure 12.Initial screen for an SPWM signal of 200 Vp and 60 Hz, where M = 0.5 and p = 5.

Figure 13 .
Figure 13.Final trimmed version for an SPWM signal of 200 Vp and 60 Hz, where M = 0.5 and p = 5.

Figure 14 .
Figure 14.Final normalized autocorrelation function of the trimmed version for an SPWM input signal of 200 Vp and 60 Hz, where M = 0.5 and p = 5.

Figure 15 .
Figure 15.Final Fourier spectrum of a trimmed version for an SPWM input signal of 60 Hz and 200 Vp.

Figure A2 .
Figure A2.Final trimmed version for an SPWM signal of 200 Vp and 33.7 Hz, with p = 5 and M = 0.5.

Figure A3 .
Figure A3.Final autocorrelation function of the trimmed version for an SPWM signal of 200 Vp and 33.7 Hz, with p = 5 and M = 0.5.

Figure A4 .
Figure A4.Final Fourier spectrum of a trimmed version for an SPWM signal of 200 Vp and 33.7 Hz, with p = 5 and M = 0.5.

Figure A5 .
Figure A5.Initial screen for an SPWM signal of 200 Vp and 99.3 Hz, where p = 9 and M = 0.5.

Figure A6 .
Figure A6.Final trimmed version for an SPWM signal of 200 Vp and 99.3 Hz, with p = 9 and M = 0.5.

Figure A7 .
Figure A7.Final autocorrelation function of the trimmed version for a SPWM signal of 200 Vp and 99.3 Hz, with p = 9 and M = 0.5.

Figure A8 .
Figure A8.Final Fourier spectrum of a trimmed version for an SPWM signal of 200 Vp and 99.3 Hz, with p = and M = 0.5.