Development of a real-time wavelet library and its application in electric machine control

Size: px
Start display at page:

Download "Development of a real-time wavelet library and its application in electric machine control"

Transcription

1 Institute for Electrical Drive Systems & Power Electronics Technical University of Munich Professor Dr.-Ing. Ralph Kennel Qipeng Hu Development of a real-time wavelet library and its application in electric machine control

2 Institute for Electrical Drive Systems & Power Electronics Technical University of Munich Professor Dr.-Ing. Ralph Kennel Arcisstraße 1, 8333 München Tel.: 89/ Fax: 89/ Qipeng Hu Development of a real-time wavelet library and its application in electric machine control

3 Development of a real-time wavelet library and its application in electric machine control Institute for Electrical Drive Systems & Power Electronics Technical University of Munich Professor Dr.-Ing. Ralph Kennel Submitted for the Degree of Master of Science (M.Sc.) in Power Engineering (TUM) Qipeng Hu Born in PR. China Supervision: Dr. Jianbo Gao Beginning: End: Date of Presentation:

4 Acknowledgement First of all, I d like to show my respect to Prof. Dr.-Ing. Kennel. He is such a knowledgeable person and his lecture is always so interesting. This is the reason I choose to do my master thesis in his institute. And I want to thank my supervisor Dr. Jianbo Gao. He helped me a lot to set up the test platform and showed me how to tune the system. I m appreciated that he gave me his trust and let me to do my researches with the maximum freedom. Whenever I think I can t continue to improve my test results, he can always give me valuable suggestions to make me step further. I can t finish my thesis without his help. PhD student Zhe Chen kindly helped me to find a suitable test machine. Dr. Zhixun Ma discussed the technical issues with me. I would miss the days I studied in the institute for Electrical Drive Systems & Power Electronics. Finally, it s never enough to say thank you to my parents, my dear wife, Wenqi and my lovely daughter, Leonie. Without you all become meaningless. Qipeng Hu I

5 Institute for Electrical Drive Systems & Power Electronics Technical University of Munich Professor Dr.-Ing. Ralph Kennel Arcisstraße 1, 8333 München Tel.: 89/ Fax: 89/ MASTERTHESIS (NO. MA17) Name of Student: Qipeng Hu Steinfeld Str , Odelzhausen Interest of Study: Power Engineering (MSPE) Title of Thesis: Development of a real-time wavelet library and its application in electric machine control Supervisor: Dr. Jianbo Gao Problem Statement: 1. Introduce the mathematical background of wavelet transform. Implement the real-time wavelet library 3. Discuss the intrinsic delay of wavelet transforms 4. Integrate the real-time wavelet library into the existing Pentium test system 5. Design a wavelet filter to clean the rotor speed signal 6. Discuss the mechanism to denoise the stator current when sensorless control is applied II

6 Declaration The work in this thesis is based on research carried out at the Institute for Electrical Drive Systems and Power Electronics, Technische Universität München (TUM) supervised by Dr. Jianbo Gao. No part of this thesis has been submitted anywhere for any other degree or qualification and it is all my own work unless referenced to the contrary in the text. III

7 Abstract Wavelet theory becomes widely used in many areas. This thesis first gives a brief introduction about the mathematical background of the Fourier Transform and Short-Time Fourier Transform. The two transformations can be seen as the predecessors of wavelet transform. Then the multi-resolution concept is described. And the mathematical explanation about continuous wavelet transform and discrete wavelet transform are presented. Examples are given to all of the above transformations to have a feeling about their strengths and weaknesses. The main task of this thesis is to implement a real-time wavelet library running in Linux kernel space. The software architecture of the library is introduced. The prototypes of the functions are shown. The working principles of all the external functions are described with examples and figures. Test data are generated to demonstrate the performance of the real-time wavelet library. The performance of the wavelet denoisng and wavelet filter is compared with the traditional filter techniques. And the intrinsic delay of the real-time wavelet transform is discussed. The wavelet library is integrated into the Pentium test bench. The real-time wavelet transform is implemented in electric machine controls. The Pentium system and necessary background knowledge about machine control are described. Two experiments are introduced. The first experiment designs a wavelet filter to replace a low pass filter in the speed loop of field oriented control. The steps of how to design a wavelet filter is described. Unfortunately, due to the large delay, the result is not promising. The second experiment tries to remove the high frequency carrier signal current from the stator current when sensorless control is used. The wavelet denoising and wavelet filter techniques are discussed. The performance of the proposed methods is compared with the traditional filter technique. Finally, some conclusions about the real-time wavelet transforms are given. IV

8 Content Acknowledgement... I Declaration... III Abstract... IV Content... V 1. Introduction Time Frequency Representation....1 Fourier Transform (FT).... Short-Time Fourier Transform (STFT) Wavelet Analysis Continuous Wavelet Transform (CWT) Discrete Wavelet Transform (DWT) Real-time Wavelet Library General Architecture Naming Conventions Software Architecture Context information Working Principles Library Initialization Filter Banks One Step DWT Wavelet Decomposition One Step IDWT Wavelet Reconstruction Wavelet Denoising Wavelet Separate Reconstruction Wavelet Filtering Delay of Wavelet Transforms Applications in Electric Machines Pentium Test Bench Hardware Structure Software Structure Field Oriented Control (FOC) Rotor speed signal filtering Stator current denoising Sensorless control Wavelet denoising Conclusions... 7 Lists of Figures Lists of Tables References V

9 VI

10 1. Introduction The mathematical basis of wavelet theory was originated from Fourier Transform (FT) developed by French mathematician Josef Fourier. In 199, Alfred Haar developed the first wavelets family which is known as the simplest wavelets family set. In 198s, the Wavelet Transform (WT) was developed by Jean Morlet and Alex Grossman, as an alternative of Short-Time Fourier Transform (STFT). Later in 1988, Stephane Mallat and Yves Meyer proposed the theory of multi-resolution signal decomposition. And with the work of Ingrid Daubechies, the famous Daubechies wavelets family was created [1][]. At present wavelets theory is widely applied in various areas, including telecommunications, image processing and compression, speech processing, mining, physics, mechanics and etc. The distinct feature of wavelet transform makes it especially suitable to analyze the non-stationary signals. Because of this reason, wavelet transform also becomes popular in applications of electric machine controls in recent years, e.g. in fault detection [3]. Some attempts are made in this thesis to integrate wavelet transforms in the machine control loop. Considering wavelet theory is still a relatively new concept for researcher in machine control area, a simple introduction to the mathematical basis of wavelets is presented in Chapter. Please note that it is not the author s intension to make readers lose themselves in the complicated mathematical derivations, so only the mathematical background which is necessary to understand wavelet transforms in engineering applications will be introduced here. Though wavelet analysis is used more and more in electric machine controls, most of the existing wavelet tools, such as Matlab wavelet tool box [4], are based on off-line algorithm. The whole block of test data has to be saved in advance before wavelet analysis can be applied. It becomes a problem for machine controls which needs real-time response. For this reason, a real-time wavelet library is implemented. The working principle and performance of the wavelet transforms will be discussed in Chapter 3. This is also the main task of this thesis. Besides the exciting features of wavelet transforms, the intrinsic delay prevents it to be widely used in real-time applications. Chapter 4 will discuss the reasons of the delay and the influencing factors. Two applications are presented in Chapter 5 to show the possible areas of the wavelets analysis in machine controls. A comparison between the wavelet analysis and the existing filter techniques will be discussed. At last, some conclusions are given in Chapter 6. 1

11 . Time Frequency Representation In practical applications, signals are usually measured as a function of time. The signal represented in time domain shows how the signal changes over time, and can be called as time representation. In contrast, a signal can also be represented in frequency domain which shows the frequency information of a signal over a range of frequency band. To transform between time and frequency domains, Fourier Transform is the most well-known mathematical method. Time frequency representation can be considered as a hybrid between time representation and frequency representation. It provides some time information and some frequency information at the same time with certain resolutions. Short-Time Fourier Transform and wavelet transform are two examples of this technique..1 Fourier Transform (FT) Fourier Transform is widely used in many applications in physics and mathematics. It decomposes the original signal x(t) to complex exponential functions of different frequencies (.1). The frequency function X(f) can be reconstructed back to time function x(t) by inverse Fourier Transform (.). X f = x t = x t e jπft dt X f e jπft df (.1) (.) In equation (.1), the function x(t) is integrated over time from minus infinity to plus infinity, therefore the time information is totally lost in the resulting frequency function X(f). It means that no matter when a certain frequency component appears in the signal, the frequency spectrum will always be the same. This feature makes the Fourier Transform only suitable to analyze stationary and pseudo-stationary signals. To clarify this issue, a stationary signal with frequencies of 1, 5, 5 and 15Hz is plotted in Fig..1 (a). Fourier Transform is then applied to this signal to get its frequency spectrum in Fig..1 (b). The four spectral components correspond exactly to 1, 5, 5 and 15Hz. This example shows that the Fourier Transform works well with stationary signals which repeat themselves periodically.

12 Fig..1 Stationary Signal and its Fourier Transform (a) original signal with frequency of 1, 5, 5 and 15 Hz (b) its Fourier Transform Unfortunately, most real-world signals have some non-stationary characteristics. Suppose a signal starting with frequency of 1Hz and later its frequency abruptly changes to 5, 5 and 15Hz in every ms (Fig.. (a)). Its frequency spectrum is calculated by Fourier Transform and shown in Fig.. (b). Fig.. Non-Stationary Signal and its Fourier Transform (a) signal with frequency abrupt changes of 1, 5, 5 and 15Hz in every ms (b) its Fourier Transform Though the two signals in Fig..1 and Fig.. are totally different in their time representations, the results from Fourier Transform are more or less the same. From this example, a conclusion can be easily drawn. Fourier Transform is not suitable for non-stationary signal analysis.. Short-Time Fourier Transform (STFT) To analyze non-stationary signals, the Short-Time Fourier Transform (STFT) has been introduced. The frequency components at any given time are analyzed, rather than the whole frequency spectrum of the entire signal. The Short-Time Fourier Transform can be considered as an addition to Fourier Transform, the time function x(t) is multiplied by a window function w(t) which is non-zero for a short time (e.g. a Gaussian-like function) [5]. With the window function sliding along the time axis, the time function x(t) is mapped onto a time-frequency plane. A time-frequency representation of the signal is therefore obtained. The equation of STFT is defined by [6] 3

13 X τ, ω = + x t w t τ e jωt dt (.3) The width of window function w(t) influences the resolution of the analysis. A wide window function usually contains more cycles of waves than a narrow window. It produces good frequency resolution, but poor time resolution. The Fourier Transform can be considered as an extreme case of STFT when the width of the window function w(t) is set to infinitely large. In Fourier Transform, the time information is totally lost and a good frequency measurement is obtained. On the other hand, a narrow window provides the good time resolution and poor frequency resolution. Fig..3 Signal with 3 frequency components, 1Hz from s to 4s, 18Hz from 6s to 8s and 35Hz from 5s to 9s Fig..4 Short-Time Fourier Transform of the signal in Figure.3 with different window sizes Fig..3 and Fig..4 show an example that the time-frequency resolution influenced by the different window sizes. The signal in Fig..3 has three frequency components and the 4

14 sampling frequency is 1 khz. With the increasing width of the window, as shown in Fig..4 (a) to (d), the time resolution reduces and frequency resolution increases accordingly. Once the width of the window function w(t) is chosen, the resolution remains unchanged during the entire analysis procedure (Fig..7 (a)). According to the well-known Heisenberg inequality (.4), the shadowed area in Fig..7 (a) has a lower limit value. ω t 1 (.4) When a Gaussian function is chosen as a window function, the lower limit is achieved, and the STFT becomes the Gabor Transform. In practical applications, to choose a suitable width of the window function is always an important issue..3 Wavelet Analysis Wavelet transform is developed as an alternative approach of STFT. The advantage of wavelet transform is that it analyses the signal with different resolutions according to the signal s different frequencies [][5][6]. Wavelet transform uses a wide window to the low frequency component of the signal, and a narrow window to the high frequency component of the same signal. As a result, a good frequency resolution to the low frequency component and a good time resolution to the high frequency component can be achieved. This approach is called Multiple Resolution Analysis (MRA). Fortunately, it meets the technical needs too. The low frequency components usually appear for a long time in a signal and we are more interested in their frequency information. For the high frequency components, we are usually interested in the time point when they appear..3.1 Continuous Wavelet Transform (CWT) Continuous Wavelet Transform analyses the signal in the similar way as STFT does, i.e. the signal is windowed before the Fourier Transform is applied. The similarity between a signal and an analyzing function is measured. The analyzing function is called wavelet ψ. The signal x(t) is compared with a set of basic functions ψ a,b t which is shifted and scaled from the mother wavelet. Fig..5 lists four examples of wavelets. The general equation of CWT is given in (.5) [1][][6]. X ψ a, b = x t ψ a,b t dt with ψ a,b t = 1 a ψ(t b a ) (.5) where * represents complex conjugate. Parameter b is called translation, which specifies 5

15 the location of the wavelet and moves along the time axis during integration. Parameter a is called scale, which compresses or stretches the wavelet ψ. Fig..5 Examples of wavelet (a) Haar (b) Morlet (c) Daubechies (d) Meyer For a large scale value, the wavelet is stretched. The coarse feature of the signal is analyzed. So a large scale value relates low frequency. For a small scale value, the wavelet is compressed. The high frequency components of the signal are analyzed. So a small scale value relates to high frequency. Fig..6 (b) shows an example of the basic functions. From left to right, the scale parameter decreases. Fig..6 (a) shows the basic functions of STFT for comparison. Fig..6 Basic functions of STFT and wavelet, (a) STFT (b) wavelet 6

16 When scale value is high, the wavelet transform corresponds to a global view of the signal x(t), i.e. high frequency resolution. When scale value is low, the transformation corresponds to a detailed view of the signal, i.e. high time resolution. Though the product of ω t still remains constant during the entire transformation, different than STFT, the individual value of ω and t changes (Fig..7 (b)). The time resolution increases at an expense of the frequency resolution and vice versa. Δt Δt ω ω Δω Δω t (a) time-frequency plane for STFT (b) time-frequency plane for Wavelet Transform Fig..7 Time-Frequency plane of STFT and WT t Signal Scale increase Shifting Fig..8 Computation scheme of CWT The computation of CWT can be explained in Fig..8. First, a wavelet is selected. Usually, 7

17 the wavelet is chosen to have the similar shape with the signal feature which is to be detected. The result of CWT could be different with different wavelet selected. The wavelet is scaled and shifted to the right along the time axis until the whole signal is covered. Then the wavelet is scaled to the next value and the above process will be repeated. Fig..9 shows an example to apply continuous wavelet transform to a non-stationary signal. The original signal is shown in Fig..9 (a). The signal contains 3 frequency components, 5 Hz from s to 4s, 35 Hz from 4.8s to 5.s with amplitude of. and 18 Hz from 6s to 8s. The discrete Meyer is chosen as the analyzing wavelet function. The CWT result is shown in Fig..9 (b)(c)(d) from different point of views. The scale value is transformed to pseudo frequency in order to have a better comparison with the STFT results in Fig..4. The 5 Hz component has the highest frequency resolution and lowest time resolution and it is just the opposite for the 35 Hz component. Fig..9 Non-Stationary Signal and its Continuous Wavelet Transform (a) original signal (b)(c)(d) CWT from different point views The continuous wavelet transform is reversible. The inverse wavelet transform is defined as [1], x t = 1 C ψ a b X ψ a, b ψ a,b t db da a (.6) in which C ψ is called admissibility constant and the following admissibility condition must be satisfied, 8

18 C ψ = + Ψ(ω) dω ω < (.7) The admissibility condition implies, Ψ = must have a zero average value and oscillate. + ψ t dt =. It constrains the wavelet An important drawback of continuous wavelet transform is the high redundancy. The calculation may require large computation time and resources. The discrete wavelet transform provides a fast way to analyze and synthesis the original signal, with significant reduction of computation effort. It will be discussed in the next section..3. Discrete Wavelet Transform (DWT) The main idea of DWT is the same as CWT. Instead of continuous wavelet functions, filter banks with different cutoff frequencies are used to obtain the time-scale representation of a digital signal. The digital signal is passed through the half-band high pass filter to analyze its high frequency components, and through the half-band low pass filter to analyze its low frequency components. After filtering operation, half of the frequency band is removed from the original signal. In other words, the resolution halves because of filtering. So it is not necessary to keep the original sampling rate. According to Nyquist s sampling rule, in such situation, the information in the signal will not get lost if the sampling rate reduces by. This operation is accomplished by sub-sampling which removes every other sample of the signal. A demonstration of sub-sampling is shown in Fig..11. Since the scale can be seen as the inverse of frequency, sub-sampling by also means that the scale doubles. The filtering and sub-sampling processes are shown in Fig..1 and can be described as the following equation [1], + y[n] = g k x[n k] k= (.8) where y[n] represents the lower resolution signal by low pass filtering and sub-sampling, and g[k] is the impulse response of the half band low pass filter. x[n] Half-band Low pass filter y[n] Fig..1 Resolution and scale changes DWT is computed by passing the original signal into two half-band filters at the same time. 9

19 After sub-sampling, the signal is decomposed into a detail coefficient which is the high frequency part of the original signal and an approximation coefficient which is the low frequency part of the original signal. x[n] high pass hid lod DWT d a Signal processing high pass hir lor IDWT x_r[n] low pass low pass Sub-sampling Up-sampling Fig..11 DWT and inverse DWT If the two decomposition filters are ideal half-band filters, the detail and approximation coefficients will perfectly represent the original signal. The decomposed signal can be reconstructed by up-sampling and summing the results up. Up-sampling is just the opposite of sub-sampling, which inserts a or an interpolate value between every two sampling points (Fig..11). Up-sampling by doubles the sampling frequency. Fig..11 shows the DWT and Inverse DWT operations. The two filters at left side are called analysis filters, and the two filters at the right side are called synthesis filters. However, ideal filters are not practical. If non-ideal filters are used, the signal can be perfectly reconstructed only under some constrains. First, the high pass and low pass filters should be the quadrature mirror filters with the following relations, hir[k] = 1 k lor[n k + 1], k = 1,,, N (.9) hid[k] = 1 k lod[n k + 1], k = 1,,, N (.1) Furthermore, the analysis filter and synthesis filter are time reversed. hir[k] = hid[ k], k = 1,,, N (.11) lor[k] = hir[ k], k = 1,,, N (.1) If the above relations are met, the signal is decomposed onto an orthogonal base. The 1

20 one level wavelet decomposition can be expressed, + d k = x n hid n + k n= + a[k] = x n lod n + k n= (.13) (.14) where hid is the high pass decomposition filter, lod is the low pass decomposition filter, d is the detail coefficient and a is the approximation coefficient. The signal can be reconstructed easily because it is decomposed onto an orthogonal base. The equation for inverse DWT is designed as, + x[n] = (d k hir n + k + (a k lor( n + k)) k= (.15) The discrete wavelet transform can be cascaded to multiple levels. The cascading can be performed on either the low frequency band, or the high frequency band or both (wavelet packet). But usually, it is applied on low frequency band only. Fig..1 shows an example of four-level wavelet decomposition. At each decomposition level, the frequency band of the signal halves because of the filtering. The frequency of the signal is more precise than in the previous level. So the frequency resolution doubles after the filtering. Due to sub-sampling, the number of data samples halves. Only half of the samples are used to represent the original signal, therefore the frequency resolution halves. Though radian is the unit of frequency for discrete signals, Hz is still used in this thesis to have a more intuitive feeling. As an example, if the original signal is sampled at khz, according to Nyquist s sampling rule, the frequency band of the original signal is from to 1 khz. After the half-band high pass filter, the frequency of the signal becomes from 5 Hz to 1 khz. So the frequency resolution doubles than in the original signal. If the original signal has 14 samples, the coefficient becomes 51 samples after sub-sampling. It means that the time resolution halves compared with the original signal. After the half-band low pass filter and sub-sampling, the frequency of the signal spans from to 5 Hz and also contains 51 samples. 11

21 x[n] fs= khz [ ~ 1 Hz] 14 samples lod hid lod hid lod hid lod hid a4 d4 d3 d d1 [ ~ 6.5 Hz] [6.5 ~ 15 Hz] [15 ~ 5 Hz] [5 ~ 5 Hz] [ 5 ~ 1 Hz] 3 samples 64 samples 18 samples 56 samples 51 samples Fig..1 Four level wavelet decomposition with sampling frequency of khz The low frequency coefficient is passed through the same filter sets and the second level of decomposition is computed. After four level of decomposition, the frequency bands of the coefficients is shown in Fig..13. Level 4 Level 3 Level Level 1 a4 d4 d3 d d1 Frequency (Hz) Fig..13 Frequency bands of four-level wavelet decomposition with sampling frequency of khz The corresponding reconstruction can be obtained by up-sampling and passing through the reconstruction filters. A two-level reconstruction is described in Fig

22 d1 d hir hir lor x_r[n] a lor Fig..14 Two-level wavelet reconstruction To illustrate the wavelet decomposition, a signal is constructed with 4 frequency components. The signal is plotted in Fig..15. Their frequency, amplitude, start and end time are shown in the following table. Frequency (Hz) Amplitude (normalized) Start time (s) End time (s) The sampling frequency is khz, and the signal lasts for 5 seconds. Four-level wavelet decomposition is performed using discrete Meyer wavelet filters. Because the sampling frequency and level of decomposition are the same as in Fig..1 and Fig..13, the frequency resolution discussed in the previous example is still applicable here. The detail coefficients and approximation coefficients are computed and plotted by Matlab. The d1 coefficient spans the frequency from 5 Hz to 1 Hz. The frequency component of 6 Hz in the original signal mainly appears in this coefficient. The d coefficient spans the frequency from 5 Hz to 5 Hz. There should be no frequency component in this region, but a low amplitude signal can be observed in Fig..15. It is caused by the 6 Hz harmonics, because the filters used are not ideal filters. The d3 coefficient contains the frequency from 15 Hz to 5 Hz. The d4 coefficient contains the frequency from 6.5 Hz to 15 Hz. In both of the two frequency bands, no significant signal can be observed. The spikes are caused by the sudden change of frequency in the original signal. The a4 coefficient contains the coarse approximation of the original signal with frequency from to 6.5 Hz. The original signal with 5 Hz, 18 Hz and 35 Hz components all lies in this region. This coefficient is an approximation of the original signal without the noise at 6 Hz. But the number of samples is dramatically reduced. 13

23 Fig..15 An example of four-level wavelet decomposition 14

24 3. Real-time Wavelet Library Though there are already many technical papers and applications about wavelet transforms, the regularly used DWT libraries are often based on off-line mechanism, such as the famous Matlab wavelet tool box. The entire signal, no matter how large it is, has to be obtained first, before it can be analyzed using the off-line toolbox. However, this assumption is not always possible. In applications of electric machine controls, the signal cannot be known in advance. The on-line analysis of the measured voltage or current signals with a minimum delay is required. According to the analysis results, the corresponding control strategy will be generated and immediately used in the machine. Even in some applications that time is not critical, the computer might run out of memory if the whole signal is too large. In the above mentioned situations, the traditional wavelet library is not suitable any more. To solve the problem and apply wavelet transforms to electric machine controls, a real-time wavelet library is implemented and introduced in this chapter. The most commonly used wavelet functions are implemented and listed in TABLE 3.1. The real-time wavelet library is first implemented and debugged with Microsoft Visual Studio, because it provides a very easy to use interface to debug software codes. Normally people do not have to worry that a small bug makes the operating system crash, which is usually the case in Linux kernel space. In Chapter 5, the library will be transported to Linux kernel spaces. The necessary changes will be discussed there. The examples demonstrated in this chapter are all generated by the implemented real-time wavelet library unless otherwise stated. To have a better view, the computed data are input into Matlab and plotted. 15

25 TABLE 3.1 Function lists of the real-time wavelet library Functions Names Utility Functions vec_val_mul vec_reverse Descriptions Computes the product of a vector and a scalar Reverses the input vector quad_mirror_filter Computes the quadrature mirror vector of the input vector fifo_write ring_write ring_read Internal Functions _filter_select _orth_filter _bior_filter External Functions wavelet_init wavelet_filters wavelet_rtdwt wavelet_rtidwt wavelet_rtdec wavelet_rtrec wavelet_rtden wavelet_rtdec_sig wavelet_rtfil Pushes a number into a FIFO Writes a number into a ring structure Reads a number from a ring structure Selects the scaling filter according to the specified wavelet name Computes the orthogonal wavelet filter set Computes the biorthogonal wavelet filter set Initializes the real-time wavelet library Generates the wavelet filter banks Real-time single-level 1D wavelet decomposition Real-time single-level 1D wavelet reconstruction Real-time wavelet decomposition Real-time wavelet perfect reconstruction Real-time wavelet denoising Real-time wavelet decomposition and separate reconstruction Real-time wavelet filtering 3.1 General Architecture In this section, the architecture of the wavelet library is introduced to give a general overview of the library Naming Conventions The library is written in C language. In order to be easily transported to Linux kernel space, the code should be independent to operating systems as far as possible. Following are some naming conventions, All the functions with a prefix of wavelet_ are the external functions. Users should invoke these functions to perform their wavelet transforms. All the functions with a prefix of _ are the internal functions that users should not invoke directly. Or users at least know the consequence when they call these functions. 16

26 All the functions with a prefix of test_ are the test functions for debug purpose. All other functions are the utility functions that finish certain mathematical calculation or procedure. User can invoke these functions if it makes their own coding works easier Software Architecture The software architecture of the wavelet library is given in Fig The blue rectangular box in the center of the figure is a data structure called wavelet_rtmra_param which acts as a context to save all the information used in the wavelet transforms, such as the filter banks, count of the signal, thresholds for denoising, decomposition results and so on. A detailed introduction about this data structure is given in section The three big arrows show the direction of data flow, whether data will be written into or read from the structure. The yellow ovals are the external functions which should be used by the users to perform wavelet analysis. The green ovals are utility functions which might be called by all the other functions in the library or even by functions outside of the library. The grey ovals are internal functions, and invoking these functions should be avoided. The small arrows between the ovals show the direction of function calls. The working principles and prototypes of the external functions are shown in section

27 Test functions vec_val_mul vec_reverse _orth_filter quad_mirror_filter _bior_filter wavelet_init wavelet_filters _filter_select wavelet_rtdwt wavelet_rtidwt ring_write fifo_write wavelet_rtdec Data Structure Wavelet_rtmra_param wavelet_rtrec ring_read wavelet_rtden wavelet_rtfil wavelet_rtdec_sig Fig. 3.1 Software architecture of real-time wavelet library Context information The data structure wavelet_rtmra_param saves all the information needed for the real-time wavelet transform. The important fields of the structure are listed in Fig. 3.. The blue boxes are the fields which will be configured at the library initialization. These fields remain unchanged once they are setup. Filter banks field contains the two decomposition filters and two reconstruction filters for wavelet analysis and synthesis. Levels of decomposition field specifies the decomposition levels for the transformation. Denosing thresholds field contains the threshold values at each level for wavelet denoising. The type of thresholding is saved in this field too. 18

28 The green boxes contain the run-time variables. The detail and approximation coefficients will be updated for every decomposition operation. The coefficients will be used by the wavelet reconstructions. Users can modify the coefficients for their own purpose. For example, users can set some of the coefficients to be zero to design a wavelet filter. The flags for coefficients are used to specify whether the coefficient at the corresponding level is updated or not for the current decomposition operation. Filter banks Levels of decomposition Denoising thresholds Detail & approximation coefficients Flags for detail & approximation coefficents Signal count Decomposition FIFOs Reconstruction FIFOs Flag for reconstruction ready Fig. 3. Important fields of wavelet_rtmra_param data structure The grey boxes are only for internal uses. Normally, these fields should not be modified by users. Otherwise, the wavelet transform may end up with incorrect results. Signal count field records the count of the input samples. It is used for sub-sampling and up-sampling operations. Decomposition FIFOs field saves the historical data for wavelet decomposition. One FIFO for each decomposition level is required. The length of the FIFO equals to the length of the filter. Reconstruction FIFOs field saves the historical data for wavelet reconstruction. There are two FIFOs for each reconstruction level. The length of the FIFO is the same as the length of the reconstruction filter. Besides the FIFOs, a ring structure for each level is defined in this field to temporarily save the detail coefficients. The reason to use the ring structure is described in section Flags for reconstruction ready field specifies whether the reconstruction operation can start. Only when all the internal FIFOs are fully filled with data, can the reconstruction begin. Otherwise, a perfect reconstruction cannot be fulfilled. 19

29 3. Working Principles 3..1 Library Initialization Function Prototype int wavelet_init (wavelet_families wavelet, // [in] Name of the wavelet unsigned char order1, // [in] Order 1 unsigned char order, // [in] Order unsigned int level, double *threshold, wavelet_den_thresh sorh, wavelet_rtmra_param *p) // [in] Decomposition level // [in] An array of threshold values // [in] Type of wavelet denoising // [out]pointer to WT context Description This function initializes the wavelet library according to the input parameters. It should be invoked before calling any other functions. All the input parameters as well as the generated filter banks will be saved into the wavelet context structure pointed by parameter p. The parameter wavelet specifies the name of wavelet which will be used during transformation. Currently seven most commonly used wavelets are supported and listed in TABLE 3.. TABLE 3. Supported Wavelets and their names defined in the library Wavelet Families Defined Names Wavelet Orders (Order1.Order) Haar WAV_HAAR N/A Daubechies WAV_DAUBECHIES 1,, 3, 4, 5, 6, 7, 8, 9, 1 Symlets WAV_SYMLETS 1,, 3, 4, 5, 6, 7, 8 Coiflets WAV_COIFLETS 1,, 3, 4, 5 Discrete Meyer WAV_DMEY N/A BiorSpline WAV_BIORSPLINE 1.1, 1.3, 1.5,.,.4,.6,.8, 3.1, 3.3, 3.5, 3.7, 3.9, 4.4, 5.5, 6.8 ReverseBiorSpline WAV_RBIORSPLINE 1.1, 1.3, 1.5,.,.4,.6,.8, 3.1, 3.3, 3.5, 3.7, 3.9, 4.4, 5.5, 6.8 The parameter level specifies the number of decomposition levels. The maximum supported level number is 1. By modifying the macro definition of WAVELET_MAX_DEC_LEVEL, more than 1 levels of decomposition can be achieved. However, please keep in mind, with increasing number of levels, the memory used to save the wavelet context is dramatically increased.

30 The parameter threshold is an array of threshold values corresponding to each decomposition level which will be used in wavelet denoising. If no wavelet denoising will be performed, this parameter could be set to NULL. The parameter sorh specifies the type for wavelet denoising. Currently, both soft thresholding and hard thresholding are supported. More information of wavelet denoising will be introduced in section The parameter p points to the wavelet context structure wavelet_rtmra_param which should be allocated before this function is called. The structure saves all the context information for wavelet transforms. 3.. Filter Banks Function Prototype int wavelet_filters (wavelet_families wavelet, // [in] Name of the wavelet unsigned char order1, // [in] Order 1 unsigned char order, // [in] Order double *lod, double *hid, double *lor, double *hir, unsigned int *length) // [out]low pass decomposition filter // [out]high pass decomposition filter // [out]low pass reconstruction filter // [out]high reconstruction filter // [out]the length of the four filters Description This function computes four filters associated with the orthogonal or biorthogonal wavelet specified by parameters wavelet, order1 and order. Haar, Daubechies, Symlets, Coiflets and Discrete Meyer are orthogonal wavelets. BiorSpline and ReverseBiorSpline are biorthogonal wavelets. The four filters associated with orthogonal wavelets are tightly related to each other, and their relations are shown in Fig. 3.3 [4]. A scaling filter is first selected according to the wavelet name and order. Then the low pass reconstruction filter is computed by the normalization of the scaling filter. The low pass reconstruction filter and high pass reconstruction filter are quadrature mirror filters, which satisfies the following equation [4], hir k = 1 k lor N k, k =, 1,, N (3.1) The low pass reconstruction filter is reversed to get the low pass decomposition filter, and the high pass reconstruction filter is reversed to get the high pass decomposition filter. 1

31 Scaling filter normalization Low pass reconstruction filter Reverse Low pass decomposition filter Quadrature mirror Quadrature mirror High pass reconstruction filter Reverse High pass decomposition filter Fig. 3.3 Orthogonal Wavelet Filter Set The four parameters lod, hid, hir and hir are pointers points to the pre-allocated buffers which should be large enough to hold the computed filters. An example of orthogonal wavelet filters computed by the library is shown in Fig The four filters are computed by the real-time wavelet library with input parameters of wavelet = WAV_DAUBECHIES and order1 = 4. The calculated results are input into Matlab and plotted. The relation of the four filters can be easily observed in Fig Fig. 3.4 DB4 filters generated by the library

32 Fig. 3.5 Wavelet filter set of DB4 Orthogonal wavelets cannot have symmetry and exact reconstruction at the same time (except for the Haar wavelet). With biorthogonal filters, two scaling wavelets are used instead of one. Design of symmetric wavelet functions becomes possible. Fig. 3.6 shows the relations of the four filters computed from two scaling filters. The blue boxes are the filters which will be output. The white boxes are filters which will not be used in our applications and simply discarded. Decomposition filter Reconstruction filter normalization normalization Low pass reconstruction filter Reverse Low pass decomposition filter Low pass reconstruction filter Reverse Low pass decomposition filter Quadrature mirror Quadrature mirror Quadrature mirror Quadrature mirror High pass reconstruction filter Reverse High pass decomposition filter High pass reconstruction filter Reverse High pass decomposition filter Fig. 3.6 Biorthogonal Wavelet Filter Set Fig. 3.7 gives an example of biorthogonal wavelet filters. The input parameters are set to wavelet = WAV_BIORSPLINE, order1 = 3 and order = 5. 3

33 Fig. 3.7 Bior 3.5 filters generated by the library The computed filter sets are plotted with Matlab and shown in Fig Fig. 3.8 Wavelet filter set of Bior 3.5 4

34 3..3 One Step DWT Function Prototype void wavelet_rtdwt (double *x, // [in] the signal double *lod, // [in] low pass decomposition filter double *hid, // [in] high pass decomposition filter unsigned int filter_len, // [in] length of the filter double *ca, // [out]approximation coefficient double *cd) // [out]detail coefficient Description This function computes one step of discrete wavelet transform. The input signal should have the same length as the two filters, and the convolution of the signal with the two filters is computed with only one step. Fig. 3.9 shows the working principle. A DB wavelet filter which has a filter length of 4 is chosen for simplicity reasons. The values of two filters can be calculated by wavelet_filters() function and listed in TABLE 3.3. TABLE 3.3 DB wavelet filters Hid a b c d Lod e f g h Hid filter a b c d cd Signal x x[] x[1] x[] x[3] Lod filter e f g h ca Fig. 3.9 One-step discrete wavelet transform The parameter ca is the approximation coefficient which is the result by passing the signal x through low pass decomposition filter lod. The mathematical equation is shown as following, ca = x e + x 1 f + x g + x[3] h (3.) where x[] is the latest value and x[3] is the oldest. Similarly, the signal x is passed 5

35 through high pass decomposition filter to get the detail coefficient cd. The mathematical equation is shown as following, cd = x a + x 1 b + x c + x[3] d (3.3) If ca is further input into this function, the one step DWT function is cascaded. A multiple level decomposition can be achieved. Note that, unlike the normal DWT, the sub-sampling is not performed here. Since the sub-sampling is close related to the count of the input signal points, the operation is moved outside of this function and performed in wavelet_rtdec() function which will be introduced in next section Wavelet Decomposition Function Prototype void wavelet_rtdec (double x, // [in] the measured data sample wavelet_rtmra_param *p) // [out] Pointer to wavelet_rtmra_param Description This function performs the real-time multilevel 1-D wavelet analysis using the wavelet filters specified in wavelet_init() function. The real-time wavelet decomposition basically has the same idea and the calculation results as the traditional off-line decomposition, but with some modifications. At each sampling period, only one data point (e.g. voltage, current or other physical quantities) will be measured and transferred to this function instead of the whole signal. This function is realized by cascaded calling of wavelet_rtdwt()functions. Fig. 3.1 shows an example of -level real-time wavelet decomposition. Fig. 3.1 (a) is the initial state of all the FIFOs and filter banks after wavelet_init() function is called but before any wavelet transform is performed. FIFOs are used to save historical data with a length equals to the length of filters. In this example, four data points will be saved. In Fig. 3.1 (b), red colored x represents that a new data point is sampled and wavelet_rtdec() function is called. The value is first pushed into FIFO_x for future use. But because of sub-sampling, the coefficient will be dropped this time. Even calculation in this case is not necessary. The flag for d1 is set to WAVELET_DEC_DROPPED to indicate the coefficient is discarded. And the flags for d and a are set to WAVELET_DEC_NONE to indicate that no value is input to this level and no operation is performed. In Fig. 3.1 (c), another data sample arrives, the coefficient of d1 and a1 will be calculated by calling wavelet_rtdwt() function. The value of d1 will be saved in p->d[], and the flag for d1 is set to WAVELET_DEC_UPDATED to inform the upper layer function that a 6

36 detail coefficient at this level is calculated. The value of a1 is pushed into FIFO_a1 for future use. Again due to sub-sampling, the coefficient at level will be dropped. No calculation is performed at this level, and the flag for d and a are set to WAVELET_DEC_DROPPED. a Hid b c d d1 x FIFO_x Hid a b c d d Lod e f g h a1 FIFO_a1 (a) Lod e f g h a a Hid b c d d1 p->d[] = p->d_flag[] = WAVELET_DEC_DROPPED x FIFO_x X Hid a b c d d p->d[1] = p->d_flag[1] = WAVELET_DEC_NONE Lod e f g h a1 FIFO_a1 (b) Lod e f g h a p->a = p->a_flag = WAVELET_DEC_NONE a Hid b c d d1 X p->d[] = X p->d_flag[] = WAVELET_DEC_UPDATED x FIFO_x X X Hid a b c d d p->d[1] = p->d_flag[1] = WAVELET_DEC_DROPPED Lod e f g h a1 FIFO_a1 X (c) Lod e f g h a p->a = p->a_flag = WAVELET_DEC_DROPPED a Hid b c d d1 p->d[] = p->d_flag[] = WAVELET_DEC_DROPPED x FIFO_x X X X Hid a b c d d p->d[1] = p->d_flag[1] = WAVELET_DEC_NONE Lod e f g h a1 FIFO_a1 X (d) Lod e f g h a p->a = p->a_flag = WAVELET_DEC_NONE a Hid b c d d1 X p->d[] = X p->d_flag[] = WAVELET_DEC_UPDATED x FIFO_x X X X X Hid a b c d d X p->d[1] = X p->d_flag[1] = WAVELET_DEC_UPDATED Lod e f g h a1 FIFO_a1 X X (e) Lod e f g h a X p->a = X p->a_flag = WAVELET_DEC_UPDATED Fig. 3.1 An example of multilevel 1-D wavelet analysis The third data point is input into the function in Fig. 3.1 (d). It is first pushed into FIFO_x. Because of the sub-sampling at level 1, the coefficient will be dropped. This step is the 7

37 same as in Fig. 3.1 (b). When the fourth data point comes in Fig. 3.1 (e), d1 and a1 are computed. The value of a1 is pushed into FIFO_a1. Coefficients d and a will also be calculated this time. All the three flags are set to WAVELET_DEC_UPDATED. When the next data point arrives, the transformation repeats the same procedures from (b) to (e). From the above example, it is easy to observe that the coefficient at each decomposition level will be updated only at a certain time interval which is associated with their level number. Fortunately, by checking the index of the input samples, it is predictable whether the coefficient at certain decomposition level will be computed or discarded in the present function call. Fig shows the relation between signal index number and the update status of the coefficients at different levels. At level 1, when the signal index is an integer multiple of, the coefficients will be computed and updated, otherwise, the coefficients will be discarded. At level, when the signal index is an integer multiple of 4, the coefficients will be updated. If the signal index is an integer multiple of, but not an integer multiple of 4, the coefficients will be discarded. For other index numbers, since the coefficients are already discarded at level 1, no operation will be performed at level. To extend the relation to level k, When signal index is an integer multiple of k, the coefficients will be updated. When signal index is an integer multiple of k 1, but not an integer multiple of k, the coefficients will be discarded. For all the other index numbers, the coefficients are already discarded by previous levels. No data is input to the present level. As a result, no operation needs to be done. Signal index number SIGNAL d1 d d3 d4 a X X X X X X X X X X X X X X X X Decomposition level The coefficient is discarded X The coefficient is updated No operation Fig Relation of signal index numbers and coefficients output Another difference of the real-time wavelet decomposition and traditional off-line wavelet decomposition is that no extension can be made at the beginning and the end of the signal. Normally, such as in Matlab, signal will be extended according to the defined extension mode before DWT is performed. Fig. 3.1 shows a commonly used symmetric extension mode. Both sides of the signal are mirrored and extended with a length which 8

38 equals to the length of the filter minus one. But for real-time applications, it is not possible to predict future, so no extension at the beginning of the signal can be done. Or more precisely, only extensions with zeroes can be performed. Similarly, it is not possible to detect the end of the signal or maybe even the signal is infinite, so the extension at the end of the signal is not possible either. If Daubechies 1 wavelet filters are used during transformation, the length of the wavelet filters is. When the real-time decomposition function is called for the first time, the FIFO contains 19 zeroes. The decomposition will result in a very small value. Only when the FIFO is fully filled with sampled data, decomposition starts to output the real coefficients. This problem becomes worse with more levels of decomposition. In Chapter 4, this issue will be discussed further. Extended Signal with Symmetric Extension Mode Original Signal Filter a b c d No Extension (real-time DWT) Fig. 3.1 Extension modes used in Matlab and in real-time wavelet library 3..5 One Step IDWT Function Prototype double wavelet_rtidwt (double *ca, // [in] the approximation buffer double *cd, double *lor, double *hir, // [in] the detail buffer // [in] low pass reconstruction filter // [in] high pass reconstruction filter unsigned int filter_len) // [in] length of the filters Description Similarly with wavelet_rtdwt() function, this function computes one step of inverse discrete wavelet transform. The approximation and detail coefficient buffers must have the same length as the two reconstruction filters. Fig shows the calculation algorithm, and again DB wavelet filters are used. The ca buffer convolves with low pass reconstruction filter with only one step, and the cd buffer convolves with the high pass reconstruction filter with only one step. The two convolution results are then added to obtain the reconstructed signal point. The mathematical equation is as following, 9

39 x r = cd d + cd 1 c + cd b + cd 3 a +ca h + ca 1 g + ca f + ca 3 e (3.4) The up-sampling is not executed in this function, since it is also close related to the input signal index number. Before calling this function, the up-sampling should already be applied. CD buffer cd cd[] cd[1] cd[] cd[3] d c b a Hir filter X_r CA buffer ca ca[] ca[1] ca[] ca[3] h g f e Lor filter Fig One-step inverse discrete wavelet transform 3..6 Wavelet Reconstruction Function Prototype void wavelet_rtrec (wavelet_rtmra_param *p, // [in] pointer to MRA context double *x, unsigned int *x_len) // [out]the reconstructed signal point // [out]length of the returned point Description This function performs the multilevel 1-D wavelet reconstruction. The decomposed detail and approximation coefficients are saved in the wavelet_rtmra_param data structure by the wavelet_rtdec() function. A single reconstructed point will be returned from pointer x. During normal operation, x_len always returns 1. But before all the FIFOs at each reconstruction level are fully setup, x_len returns which indicates that no reconstructed point is output at the present function call. Fig shows an example of -level real-time wavelet reconstruction. More complicated than the wavelet decomposition algorithm, there are FIFOs at each reconstruction level to hold the history values of the detail and approximation coefficients. 3

40 d1 d a FIFO_d X X d c b a Hir FIFO_a X X h g f e Lor FIFO_d1 X X d c b a Hir FIFO_a1 X X h g f e Lor (a) Wavelet_rtidwt() x_r p->d_flag[] = WAVELET_DEC_DROPPED p->d_flag[1] = WAVELET_DEC_NONE p->a_flag = WAVELET_DEC_NONE d1 d a FIFO_d X X d c b a Hir FIFO_a X X h g f e Lor FIFO_d1 X X d c b a Hir FIFO_a1 X X h g f e Lor (b) x_r X p->d_flag[] = WAVELET_DEC_UPDATED p->d_flag[1] = WAVELET_DEC_DROPPED p->a_flag = WAVELET_DEC_DROPPED d1 d a FIFO_d X X d c b a Hir FIFO_a X X h g f e Lor X X FIFO_d1 X X d c b a Hir FIFO_a1 X X h g f e Lor (c) X X x_r X p->d_flag[] = WAVELET_DEC_DROPPED p->d_flag[1] = WAVELET_DEC_NONE p->a_flag = WAVELET_DEC_NONE d1 d a FIFO_d X X d c b a Hir FIFO_a X X h g f e Lor FIFO_d1 X X d c b a Hir FIFO_a1 X X h g f e Lor (d) X X x_r X p->d_flag[] = WAVELET_DEC_UPDATED p->d_flag[1] = WAVELET_DEC_UPDATED p->a_flag = WAVELET_DEC_UPDATED d1 d X a X FIFO_d X X d c b a Hir FIFO_a X X h g f e Lor X X X X FIFO_d1 X X d c b a Hir FIFO_a1 X X h g f e Lor (e) X X X X x_r X Fig An example of multilevel 1-D wavelet reconstruction 31

41 Some assumptions are made to make the example easier to understand. The test system is shown in Fig The wavelet decomposition function is directly connected to reconstruction function. The decomposed coefficients are used to reconstruct the signal without any data processes in between. The reconstruction function has been invoked for more than 8 times, which means that all the FIFOs at all reconstruction levels are already fully setup. Reconstructions should not start if all the FIFOs are not yet fully filled with the coefficient values. Otherwise, a perfect reconstruction cannot be achieved. Fig (a) shows the initial status of all FIFOs. The signal index at this time point is supposed to be 8, 16, 4 and so on. x represents that the value is fed either from the deeper reconstruction level or directly from wavelet decomposition. represents that a zero value is inserted into the FIFO because of up-sampling. The values marked in red color are the changed parts in the present step. The values marked in green color are the unchanged parts in the present step. x wavelet_rtdec() d1 d wavelet_rtrec() x_r a Fig The test system for wavelet reconstruction Based on the above assumptions, another decomposition operation is performed. No coefficients are output this time because of the sub-sampling at level 1, and the flags are set as shown in Fig (b). By checking the flags, the wavelet_rtrec() function inserts a zero value in both FIFO_d1 and FIFO a1, and then the wavelet_rtidwt() function is called at level 1 and a signal point x_r is therefore reconstructed. When the next wavelet decomposition is computed, the value of d1 is updated. The values of d and a are dropped due to sub-sampling at level (Fig (c)). At this time, a zero value will be inserted into FIFO_d and FIFO_a in wavelet_rtrec() function, a1 will be calculated. With the values of a1 and d1, by calling the wavelet_rtidwt() function for the second time, the reconstructed signal x_r is computed. In the next time point, no coefficients are computed by decomposition (Fig (d)). Similar with Fig (b), zero value is inserted into FIFO_d1 and FIFO_a1 to compute the reconstructed x_r. In Fig (e), coefficients of d1, d and a are all computed by wavelet decomposition. In reconstruction function, d and a are used to calculate a1, and then d1 and a1 are used to calculate x_r. When the next x_r is reconstructed, the reconstruction will repeat the same procedures from (b) to (e). 3

42 From the example, it can be observed that the actions at each reconstruction level are determined by the decomposition flags. The relations are shown in the following table, TABLE 3.4 Relation between decomposition flags and reconstruction actions Flags set by decomposition Actions of reconstruction WAVELET_DEC_UPDATED Coefficient is inserted into the FIFO. WAVELET_DEC_DROPPED Zero is inserted into the FIFO. WAVELET_DEC_NONE No operation for this level. Using the similar test system in Fig. 3.15, a 9-level wavelet analysis and synthesis are computed with DB4 wavelet filters. The test signal in Fig..15 is decomposed using the real-time wavelet decomposition, and then the computed coefficients are directly used for real-time reconstruction of the original signal. In Fig. 3.16, the reconstructed signal is exactly the same as the original signal but with a large phase shift. Fig An example for real-time wavelet reconstruction The shift is caused by the setup procedure of the FIFOs at each reconstruction level. In this example, the delay is about 35 samples. The decomposition depth and the length of the wavelet filters are two factors which influences the number of delay. In real-time applications, large delay should always be avoided. Otherwise the system may even become unstable. The delay causes another problem when the reconstruction function is implemented. Due to delay, the detail coefficients cannot be immediately used in wavelet reconstruction (except with the coefficients at deepest level). A buffer is required at each reconstruction level to temporarily save the details coefficients. A ring structured buffer is defined in Fig. 33

43 3.17. The tail pointer always points to an empty element to save the new arrived detail coefficient. The head pointer always points to the oldest detail coefficient which will be read out for reconstruction. In the -level wavelet analysis and synthesis, a ring structure for d and a is not necessary because the decomposed values at the deepest level will be used by the reconstruction without delay. More information about delay will be introduced in Chapter 4. x hid wavelet_rtdec() d1 tail X X X X head wavelet_rtrec() hir x_r hid d hir lod lod a lor lor Fig A ring structure is used to save the detail coefficients temporarily 3..7 Wavelet Denoising Function Prototype void wavelet_rtden (double x, // [in] the measured data point wavelet_rtmra_param *p, double *xd, unsigned int *xd_len) // [in] pointer to MRA context // [out]the denoised data point // [out]length of the returned point Description This function cleans up the noises contained in the input signal by thresholding the detail coefficients. The wavelet denoising is based on the assumption that noises have much smaller energy than the signal power. The corrupted signal is first decomposed into N levels. Then the detail coefficients are processed in the denoising function. At last the modified detail coefficients along with the unchanged approximation coefficient are reconstructed and a denoised signal is obtained (Fig. 3.18). Thresholding the detail coefficients will remove some signal power. The denoising process is irreversible and it is not possible to remove the noises without affecting the signal. x[k] Wavelet Decomposition d1 d d3 d4 d5 Wavelet Denoising d1' d' d3' d4' d5' Wavelet Reconstruction x_r[k] dn an dn' an Fig Wavelet denoising working principle 34

44 Soft thresholding and hard thresholding are two methods to process the detail coefficients. For soft thresholding, the threshold value will be subtracted from coefficients which are greater than the threshold (Fig (a)). The equations of soft thresholding is y t = x t δ, when x t > δ y t =, when x t < δ y t = x t + δ when x t < δ (3.5) Hard thresholding will remove the coefficients smaller than the threshold δ and leave the coefficients above the threshold untouched (Fig (b)). The hard thresholding is y t = x t when x t > δ y t = when x t < δ (3.6) x(t) x(t) y_soft(t) y_hard(t) (a) Soft thresholding (b) Hard thresholding Fig Soft thresholding and Hard thresholding For off-line wavelet denoising, such as in Matlab wavelet toolbox, there are some rules to select the threshold levels, e.g. Stein's Unbiased Risk Estimate, fixed threshold and minimax principle. However, these rules are not suitable for real-time denoising, since all these rules need to know the whole signal in advance. So an interface is provided to the users in wavelet_init() function to set the threshold for each level of decomposition according to the signal to be analyzed. Fig. 3. is an example to demonstrate the real-time wavelet denoising. The original signal (Fig. 3. (a)) is corrupted by Gaussian white noise with a signal to noise ratio of 3. Then the wavelet_rtden() function is called to remove the noises. Soft thresholding is used, and the thresholding is arbitrarily set to 3 for all the levels of decomposition. In Fig. 3. (c), it can be observed that the noise is removed from the noisy signal, and the denoised signal is slightly distorted compared with the original signal. Again, a large delay appears at the beginning of the denoised signal due to wavelet transforms. 35

45 Fig. 3. An example of real-time wavelet denoising, sym8, 5 level of decomposition, soft thresholding 3..8 Wavelet Separate Reconstruction Function Prototype void wavelet_rtdec_sig (double x, // [in] the measured data point wavelet_rtmra_param *p, double *xr) // [in] pointer to MRA context // [out]the decomposed time series Description This function returns the decomposed time series of the input signal. It is different with the mentioned wavelet decomposition in section 3..4, where the output is the wavelet coefficients. This function is mathematically the same as the combined use of wavelet_rtdec() and wavelet_rtrec() under the condition that only the coefficients of a single decomposition level are used for reconstruction and all other coefficients are set to zero. Fig. 3.1 shows a 4-level decomposition followed with separate reconstructions for every level. The sampling frequency is 1 khz. The frequency band of the input signal x is from to 5 Hz. After four levels of decomposition, the distribution of the frequency bands is shown in the figure. Each decomposition level is reconstructed by itself with all other levels set to be zero. An array of decomposed time series is received. 36

46 d1, [5, 5] d1 d d3 a3 Wavelet Real-time Reconstruction x_r[], [5, 5] x, [,5Hz] d, [15, 5] d3, [6.5, 15] d1 d d3 a3 Wavelet Real-time Reconstruction x_r[1], [15, 5] a3, [, 6.5] d1 d d3 a3 Wavelet Real-time Reconstruction x_r[], [6.5, 15] d1 d d3 a3 Wavelet Real-time Reconstruction x_r[3], [, 6.5] Fig. 3.1 Working principle of separate reconstruction This function is supposed to be used in multiple resolution controls. The idea is that several controllers are specially designed for different frequency bands. When the majority signal power lies in a certain frequency band, the output of the corresponding controller dominates compared with the other controllers. One application of multiple resolution control could be the MR-PI controllers used in sensorless machine controls [8]. When the machine is running at high speed, the high frequency PI controller optimized for noise reduction dominates the control. When the machine is running at low speed, the low frequency PI controller which is designed for disturbance rejection begins to take charge. Fig. 3. shows the concept of multiple resolution control. err_r[], [5, 5] PI1 err, [,5Hz] wavelet_rtdec_sig() err_r[1], [15, 5] err_r[], [6.5, 15] err_r[3], [, 6.5] PI PI3 Σ y PI4 Fig. 3. Multiple resolution controller [8] A signal contains four frequency components is shown in Fig. 3.3 (a). From to ms, the signal is a sinusoidal wave with frequency of 3 Hz. From ms to 4 ms, the frequency abruptly changes to 1 Hz. From 4 ms to 6 ms, the frequency changes to 18 Hz. And from 6 ms to 1s, the frequency changes to 3 Hz. The signal is input into 37

47 wavelet_rtdec_sig() function and analyzed with DB4 wavelet filters and 3 levels of decomposition. The decomposed time series is shown from Fig. 3.3 (b) to (e). The signal is decomposed into four frequency bands, and the separation of the 4 frequency components is relatively good. With increasing wavelet orders, the separation will become better. However, the delay increases too. Fig. 3.3 An example of decomposing original signal to time series In this example, the delay is not obvious at high frequency band (b), but relatively large at low frequency band (d) and (e) (marked with circle). Fortunately, it meets the practical requirement. Fast response is usually the most important in high frequency band. But in low frequency band, the issue of delay is not very critical. This method can be seen as a trade-off to perfect reconstruction which is introduced in section In perfect reconstruction, the delay of the deepest decomposition level determines the delay of the reconstructed signal. 38

48 3..9 Wavelet Filtering Function Prototype void wavelet_rtfil (double x, // [in] the sampled data point wavelet_rtmra_param *p, unsigned int coef_id, double *xf, unsigned int *xf_len) // [in] pointer to the context // [in] the frequency band to be passed // [out]filtered data point // [out]length of the filtered signal Description This function filters the input signal. The input parameter x is the sampled signal point, and xf returns the filtered signal. By setting the number of coef_id, this function could be a high pass, low pass or band pass filter. The working principle of wavelet filter is shown in Fig Three levels of decomposition are demonstrated. The input signal is first decomposed into 4 frequency bands by wavelet_rtdec() function. Then only the coefficient specified by coef_id is reconstructed. All the other coefficients are set to zero, so that the corresponding frequency bands are removed. In this example, all the detail coefficients are removed. Only the approximation coefficient a3 is used to reconstruct the signal. Then the function works as a low pass filter. If d, d3 and a3 are removed, the filter becomes high pass. If d or d3 is used to synthesis the signal, the filter becomes a band pass filter. coef_id d1 d1 x wavelet_rtdec() d d3 d d3 wavelet_rtrec() xf a3 a3 Fig. 3.4 Working principle of wavelet filter Comparison with Butterworth filter To test the performance of wavelet filter, the frequency response of the wavelet filter is 39

49 drawn first. Fig. 3.5, Fig. 3.6 and Fig. 3.7 show the frequency responses of three wavelets, DB1, DB4 and DB8. The logarithmic coordinates are used, and an asymptote line is drawn to measure the slop of the roll-off. An approximated result is DB1 has a roll-off of -db/decade DB4 has a roll-off of -4db/decade DB8 has a roll-off of -6dB/decade It has to be emphasized that the above results are not exactly precise. The slope of the asymptote line may be quite different if drawn by other persons. The intension of the comparison is to have some basic knowledge about the performance of wavelet filters. DB1 -db/dec Fig. 3.5 Frequency response of DB1 DB4-4dB/dec Fig. 3.6 Frequency response of DB4 4

50 DB8-6dB/dec Fig. 3.7 Frequency response of DB8 A signal with only Gaussian white noise is generate in Fig. 3.8 (a). The sampling frequency is set to 1 Hz. According to Nyquist s rules, the maximum frequency in the signal is 5 Hz. The Fast Fourier Transform is applied to the signal, and its frequency spectrum is plotted in Fig. 3.8 (b). The signal contains equal power within the entire frequency band. The DB1, DB4 and DB8 wavelet filters will be compared with Butterworth filters of the first, second and third orders respectively. Six low pass filters are designed with a cut-off frequency of 15 Hz. levels of decomposition are required for wavelet filters. The white noise signal is input into the 6 filters. Matlab is used to simulate the results. Fig. 3.9 shows the comparison of DB1 wavelet filter and the first order Butterworth filter. Fig. 3.3 shows the comparison of DB4 wavelet filter and the second order Butterworth filter. Fig shows the comparison of DB8 wavelet filter and the third order Butterworth filter. From the comparisons, it can be observed that the high frequency components of the white noise signal have been removed. With increasing wavelet orders, the filtering effect becomes better. 41

51 Fig. 3.8 Gaussian white noise and its frequency spectrum Fig. 3.9 Comparison of DB1 -level wavelet filter and the first order Butterworth filter 4

52 Fig. 3.3 Comparison of DB4 -level wavelet filter and the second order Butterworth filter Fig Comparison of DB8 -level wavelet filter and the third order Butterworth filter Comparison with moving average filter The moving average filter is a very simple low pass filter, which is commonly used by scientists and engineers. It takes the average of N samples and outputs one single point. The mathematical equation of a moving average filter is, 43

53 y[k] = 1 N N i=1 x[k + i 1] (3.7) The same white noise signal in Fig. 3.8 is input into a moving average filter with a window size of 4 numbers. The frequency spectrum of the filtered signal is plotted in Fig The moving average filter has a similar filtering behavior as the DB1 wavelet filter. Fig. 3.3 Moving average filter with window size of 4 In this section, the wavelet filter is compared with Butterworth filter and moving average filter. It shows that the wavelet filter finishes its job pretty well. From next chapter, an important drawback of real-time wavelet transforms will be discussed. 44

54 4. Delay of Wavelet Transforms When the wavelet reconstruction function is introduced in Chapter 3, some assumptions are made. The reconstruction is not demonstrated from the first function call, but with the assumption that the reconstruction function has been called for several times and the internal FIFOs have finished the setup procedure. The assumption relates to a very important drawback of real-time wavelet transform, i.e. the delay. The FIFOs at each reconstruction level have to be fully filled with data before the first reconstruction signal point can be computed. This procedure which is called data alignment starts from the deepest level, and finishes until the FIFO at first level is setup. During this procedure, a delay is imposed. The delay is always a big problem for real-time applications, and in this chapter it will be discussed in detail. To make the example not too complicated, a DB1 -level wavelet decomposition and reconstruction is introduced in Fig In initial state, all the FIFOs in decomposition and reconstruction functions are set to zero. In Fig. 4.1 (a), the sample is input into the decomposition function. Due to sub-sampling at level 1, the coefficient is discarded. The coefficients d1 and a1 have no output. When the second sample comes, the d1 and a1 are computed (Fig. 4.1 (b)). The value of d1 is temporarily saved in the ring structure because the data alignment of wavelet reconstruction is not finished yet. The coefficient a1 is input into the level of the decomposition. Because of the sub-sampling at this level, no d and a are computed. When the third sample is input, the d1 and a1 are not computed because of the sub-sampling at level 1 (Fig. 4.1 (c)). Till now, the reconstruction has totally no actions when the first 3 samples are decomposed. When the fourth data point is decomposed, d1, d and a are computed. The d and a are input into the reconstruction function. For this example, the FIFO_dr and FIFO_ar are now considered to be finished the data alignment, and ar1 is reconstructed. The criteria to determine if the data alignment is finished is that the corresponding reconstruction FIFO is filled with coefficients of [x,, x,,, x, ]. Similarly, FIFO_dr1 and FIFO_ar1 at level 1 are considered to have finished their alignment, and finally one sample is reconstructed. The delay in this case is 3. Only when the fourth sample is input into the decomposition function, the first sample can be reconstructed. To extend to p level with the wavelet filter length of N, the delay can be expressed by the following equation, 45

55 delay = p i=1 N 1 i 1 (4.1) X FIFO_x X Hid FIFO_a1 Hid a1 Hid Hid d1 d a Ring FIFO_dr b a Hir ar1 FIFO_ar f e Lor FIFO_dr1 b a Hir FIFO_ar1 X f e Lor (a) x_r X FIFO_x X X Hid X FIFO_a1 Hid X a1 Hid Hid d1 d a Ring FIFO_dr b a Hir ar1 FIFO_ar f e Lor FIFO_dr1 b a Hir FIFO_ar1 X f e Lor (b) x_r X FIFO_x X X X Hid FIFO_a1 Hid X a1 Hid Hid d1 d a Ring FIFO_dr b a Hir ar1 FIFO_ar f e Lor (c) FIFO_dr1 b a Hir FIFO_ar1 X f e Lor x_r X FIFO_x X X X X Hid FIFO_a1 Hid X X X a1 Hid Hid d1 d a X X Ring X FIFO_dr X b a Hir ar1 FIFO_ar X f e Lor FIFO_dr1 X b a Hir FIFO_ar1 X f e Lor (d) x_r X Fig. 4.1 Data alignment of wavelet filters The following table shows the relation between the level of decomposition, wavelets and delay. The wavelets from DB1 to DB1 correspond to filter length from to with a step 46

56 of. The level of decomposition is set from 1 to 1. TABLE 4.1 Delay of Daubechies wavelet filters in number of samples DB1 DB DB3 DB4 DB5 DB6 DB7 DB8 DB9 DB1 1 level level level level level level level level level level level level The result is disappointing. For DB4 9-level decomposition and reconstruction, the delay is 3577 samples, which meets the results of the example in Fig For DB1 1-level decomposition and reconstruction, the delay is 7785 samples. If the sampling frequency is 16 khz, the delay would be 4.87 second! This is definitely not acceptable in real-time applications. The data in TABLE 4.1 is plotted in Fig. 4. with Matlab to have a better view. Fig. 4. Relation between level of decomposition, wavelets and delay 47

57 The delay is determined by the mathematical algorithm of wavelet transform. Increasing the sampling rate will not reduce the delay. When the sampling frequency increases, the maximum frequency contained in the original signal increases too. For example, if the sampling frequency doubles from 1 khz to khz, the maximum frequency of the signal also doubles from 5 Hz to 1 khz. To reach the frequency of interest, one more level of decomposition is required. The benefit by oversampling is unfortunately cancelled. For the similar reason, though reducing the sampling frequency may decrease the level of decomposition, the overall delay remains unchanged. It simply moves from the wavelet filters to sampling periods. 48

58 5. Applications in Electric Machines After the real-time wavelet library is implemented, it is time to explore some applications using wavelet theories in electric machine controls. Fortunately, there is already a mature test bench which is called Pentium system. The Pentium system is developed by the institute for Electrical Drive Systems & Power Electronics. The hardware and the existing software architecture will be introduced in section 5.1. The wavelet library will be first integrated into the Pentium system. Then two applications are discussed in this chapter. (1) A wavelet filter is designed to filter the rotary speed signal. () Removes the induced high frequency current components in the sensorless control. High frequency injection method is used to explore the saliency in a permanent magnet synchronous machine (PMSM). 5.1 Pentium Test Bench Hardware Structure The test platform contains an industrial PC (PC 14) as the main processor and several extension boards to connect PC to the controlled plant [9]. The hardware system diagrams are demonstrated in Fig A brief introduction regarding to the hardware blocks are given below. PWM board produces the PWM signal to control the inverter switches. A sine-triangular PWM algorithm is currently implemented. A CPLD chip is used in the board, which can be reprogrammed without changing any hardware configurations. The D/A converter board consists two channels, which converts a digital signal to analog signal. During debug phase, the analog signal is usually connected to the oscilloscope to output some debug information. The A/D converter board converts the analog signal back to digital signal. It is used to sample the stator current of the PMSM. Two phases of currents are sampled, and the third phase is calculated according to Kirchhoff's current law. The Hex-Dec board provides an interface to communicate with users. The seven-segment LED display can display the programmable hex numbers. And four switches can be used to input the user command during run time. 49

59 The encoder board is used to sense the rotor speed of the electric machine. 4-Seven Segments Displays D/A Converter Rectifier Hex-Dec Board PC 14 PWM Modulator Board (CPLD) Inverter Switches A/D Converter Encoder Board PMSM Fig. 5.1 Hardware architecture of Pentium system 5.1. Software Structure Based on the above introduced hardware platform, a RT-Linux operating system is installed on the PC 14 processor. The standard Linux system is not suitable for real-time applications. One of the reasons is the task management of the standard Linux is based on time sharing technique to guarantee the optimum average performance [1]. The CPU time is divided into slices for all the executable tasks. When the task is not finished before its time slice is used up, the task will be switched out anyway. The next task with an available time slice will be executed. It is a fair scheduling technique. Though at each time point, only one task can be executed by one CPU, from macro point of view, several tasks are running concurrently. However, this scheduling cannot guarantee a task to be executed at a certain time point. And the task even with highest priority will be switched when its time slice is used up. The execution time of task and the delay between the task is ready to the task is scheduled are uncertain. This will generate a large and uncertain delay in the control loop and make the standard Linux not a good choice for real-time applications. 5

60 The RT-Linux is actually a real-time scheduler plus the standard Linux. It has the real-time capacity and meanwhile keeps most of the advantages of the standard Linux. The real-time tasks will never be blocked by the standard Linux part, and real-time and standard Linux environments can easily communicate with each other. Tasks are executed in kernel mode according their priorities. The task with the highest priority will be executed first. The standard Linux has the lowest priority and will be woken up only when no real-time tasks are ready. The real-time wavelet library introduced in the last chapters will be integrated into the Pentium system. Before the integration, it is necessary to have a basic understanding of the existing software architecture. It is shown in Fig. 5.. User sapce Kernel space Real-Time Application Control Param reading Safe Check Motor Control Standard Linux Kernel HF injection Sensorless Data recording AD/DA Debug Register R/W RT-ISR Real-Time Kernel (RT-Linux) Hardware Fig. 5. Software architecture of Pentium system In the bottom of the figure, the grey box is the hardware which is already introduced in section The RT-Linux works as a virtual machine. From its point of view, standard Linux works as a guest. The control code is running in kernel space to have the minimum delay to access to the hardware. The existing software platform has a large number of codes for various kinds of control purpose. The existing codes are summarized to several blocks according to their functionality. A short introduction is given in the following, Parameter reading block reads the physical quantities of the electric machine back to 51

61 the controller. The quantities could be stator current, position encoder values and so on. Safe check block helps to protect the machine not running in abnormal situations. The machine will be stopped if abnormal situations are detected, such as high temperature or high stator currents. Motor control block provides the control algorithm. Several control algorithms are already implemented, such as Voltage/Frequency control and Field Oriented Control. Sensorless control block estimates the position information of the machine without using an optical position encoder. Rotating high frequency and alternating high frequency injection methods can be chosen. Data recording block outputs the debug information to users through the D/A converter board. By connecting an oscilloscope, users can observe the stator current, voltage, controller output and etc. AD/DA block converts the analog signal to digital signal or the opposite. It triggers the conversion by sending commands to corresponding converter board. Debug block contains the code for debug usage. Register R/W block visits the physical addresses of the hardware to directly read or write values. All the other blocks need this block to communicate with the hardware. After the real-time application module is installed, at each pre-defined sampling time, an interrupt is triggered and an interrupt service routine (ISR) is invoked by the RT-Linux. In the ISR, normally the following jobs will be done. Save the environment data. Disable interrupt to prevent continuous interrupt. Start A/D conversion to get the motor current. Read the Hex card about the user input information. Read the encoder value to get the rotor speed. Check the motor temperature and current to make sure that they are smaller than the maximum value. If the safe check fails, the PWM control signal is set to zero, and the machine is immediately stopped. The control voltage is computed according to certain control algorithm. In this thesis, the Field Oriented Control (FOC) is used. If sensorless control is configured, a high frequency signal is injected and the rotor speed is estimated here. The reference three phase voltages are output to the inverter board to control the machine. According to the values read from Hex card, the debug information is output through the D/A converter board. Users can read the debug information with an oscilloscope. Restore the environment data. Most of the codes in wavelet library are operating system independent. No big changes have to be made to port the library into Linux kernel space. It is also the reason why this library is first implemented and debugged with Microsoft Visual Studio in Windows. It has 5

62 to be admitted that it is more complicated to debug in Linux kernel space where gets kernel panic easily. However, some of the modifications are still necessary. They are described as the following, All the printf() functions have to be changed to printk() functions, and the print level will be set. Fatal errors are set to a higher level and information messages are set to a lower level. At the lower print level, Linux does not guarantee that the message will be printed. All the malloc() functions to allocate a block of memory should be replaced by kmalloc() function. But sometimes the kmalloc() function may need time longer than the sampling period to finish, which makes it not suitable in real-time application. So all the dynamic allocations are avoided during the software porting. Instead, buffers are statically allocated when the module is installed into the kernel Field Oriented Control (FOC) Field Oriented Control is one of the two most commonly used motor control algorithms. The other one is Direct Torque Control. FOC is first presented by F. Blaschke in The basic idea is to control the AC machine like a separately excited DC motor. The flux and torque can be separately controlled by two components of currents, i.e. torque producing current and flux producing current. The two components are orthogonally aligned. When one component is controlled, the other one will not be influenced [13][14]. ω ref + I d, ref = Speed PI Controller + - I q, ref ω - r + - Current PI Controller u d * u q * θ r dq / αβ transform αβ / abc transform U a U b U c Inverter I d I q LPF LPF dq / αβ transform αβ / abc transform I a I b I c θ r LPF dθ r /dt sensor PMSM Fig. 5.3 System block of FOC Fig. 5.3 shows the block diagram of Field Oriented Control. In the figure, abc, αβ and dq are three reference frames. The abc frame is the stator reference frame which aligns with the three phase system. The αβ frame is the stator orthogonal reference frame. The α-axis and β-axis are orthogonally aligned. The α-axis has the same direction with the a-axis. The dq frame is the rotor reference frame. It rotates with the electrical rotor speed. 53

63 Figure 5.4 shows their relations. The abc frame can be transformed to αβ frame with Clarke transform. The αβ frame can be transformed to dq frame with Park transform. b β q d β m α a c Fig. 5.4 Relations of abc, αβ and dq frames In Fig. 5.3, there are two control loops. The inner loop is called the current loop. The reference values are the two current components in dq frame. The output of the controller is the reference stator voltage in dq frame. The outer loop is called the speed loop. The electrical rotor speed is the reference value of the controller. The output is the reference current components in dq frame, and they are directly connected to the current controller. In some applications, there is a third loop which is outside of the speed loop. It is called the position loop. But in this thesis, the structure in Fig. 5.3 is used. The working principle of current loop is explained in the following, The three phase stator currents are measured and transformed to αβ frame according to the Clarke transform. The currents are further transformed to dq frame by Park transform. The rotor position is needed during the transformation. In the dq frame, the current component I d can be used to control the flux and the component I q is used to control the torque. A current PI controller is used in this application to control the two current components. The reference value of I d is set to be zero because the machine is only running in the base speed range in this thesis. The reference value of I q is obtained from the output of the speed loop. The current components I d and I q are low pass 54

64 filtered before they are fed back into the controller, in order to remove current ripples, or more importantly, to remove the high frequency injection current when sensorless control is used. The output of the current PI controller is the reference voltage values in dq frame. The reference voltage is transformed back to αβ frame by inverse Park transform, and to abc frame by inverse Clarke transform. The three phase reference voltages are input into the PWM board to control the voltage source inverter (VSI). The reference values of the current PI controller are the stator currents. But it is not so obvious to decide the current reference value. In many applications, people want to control the rotational speed of the machine. The speed loop shown in Fig. 5.3 finishes the requirement. It is discussed in the following. The rotor position is either measured by a position sensor or estimated by sensorless algorithms. The derivative of the rotor position is computed to get the rotor speed. Then a low pass filter is used to remove the ripples. The rotor speed is compared with the reference speed. Error is input into the Speed PI controller to compute the reference value of I q. The reference value of I q is fed into the current loop. In the following experiment, a wavelet filter is designed to remove the ripples from the rotor speed signal. 5. Rotor speed signal filtering By completely removing the coefficients in some decomposition levels, the signal components in some frequency ranges are removed. Based on the theory already explained in section 3..9, a wavelet low pass filter is designed to remove the high frequency harmonics from the rotor speed signal. The speed loop is relatively slow compared with current loop. The intension to test the real-time wavelet library with this experiment is to minimize the influence of the intrinsic delay caused by wavelet transform. The sampling frequency of the Pentium system is khz. Encoder has a maximum of 496 steps. If the reference rotor speed is set to 1.5 Hz, the rotor speed signal before the low pass filter is shown in Fig With a relatively high sampling frequency and a relatively low rotor speed, at each sampling time, the encoder rotates an angle smaller than its resolution. Only after two or three sampling periods, the encoder can output an angle difference of 1. The rotor speed is computed by dividing the angle difference with the sampling period. It is the reason that a rotor speed signal with such a high ripple can be observed. 55

65 Fig. 5.5 Rotor speed signal before filtering In order to get a smoothed rotor speed signal, a low pass filter is used. The existing test platform uses the first order low pass filter with a cut-off frequency of 16 Hz. A wavelet filter with the similar cut-off frequency will be designed. X[k] - [, 817Hz] D1 - [485Hz, 817Hz] D - [4.5Hz, 485Hz] D3 - [11.5Hz, 4.5Hz] D4 - [51.63Hz, 1.5Hz] D5 - [55.31Hz, 51.63Hz] D6 - [17.66Hz, 55.31Hz] D7 - [63.83Hz, 17.66Hz] D8 - [63.83Hz, 17.66Hz] D9 - [31.91Hz, 63.83Hz] A9 - [, 15.96Hz] Fig. 5.6 Frequency ranges of each decomposition level First of all, the number of decomposition levels should be decided. Since the sampling frequency is khz, a wavelet decomposition of 9 levels is required. The frequency bands of each decomposition level are shown in Fig All the detail coefficients will be discarded, and only the approximation coefficient a9 is used to reconstruct the signal. The reconstructed signal will contain the frequency range only from to Hz, which meets the requirements. From the conclusion in section 3..9, the DB4 wavelet filter has a filtering capability similar with the second order Butterworth filter, and therefore it is chosen to expect a better performance than the existing first order low pass filter. Fig. 5.7 shows the filtering capability of the DB4 9-level wavelet filter. The rotor speed signal has much smaller ripples than the existing first order low pass filter if the specified wavelet filter is used. It proves the conclusion in section 3..9 is valid. 56

66 Ch1: Rotor speed signal before filtering Ch: Rotor speed signal after the existing order 1 low pass filter Ch3: Rotor speed signal after the DB4 9-level wavelet filter Fig. 5.7 Filtering capability comparison at steady states Though in steady state, the specified wavelet filter seems work pretty good, it is totally different if some transient situations are involved. When the speed of the machine ramps up from to 1.5 Hz, the rotor speed signals after the two filters are shown in Fig A large delay about ms in the wavelet filter case can be observed. In TABLE 4.1, a wavelet filter of DB4 9-level of decomposition has a delay of 3577 samples. The sampling frequency is khz, the delay can be computed. delay = =.19s = 19ms 1634 The calculated result from the theoretic derivation meets the experiment. Unfortunately, it means that the designed filter cannot be used in the application. Ch1: Rotor speed signal before filtering Ch: Rotor speed signal after the existing order 1 low pass filter Ch3: Rotor speed signal after the DB4 9-level wavelet filter Fig. 5.8 Filtering capability comparison at transient states 57

67 Other attempts are made to reduce the delay involved in wavelet transform. Fig. 5.9 shows a wavelet filter with DB4 8-level of decomposition. The delay halves, but at the same time, the filtering capability is already worse than the existing first order low pass filter. Ch1: Rotor speed signal before filtering Ch: Rotor speed signal after the existing order 1 low pass filter Ch3: Rotor speed signal after the DB4 8-level wavelet filter Fig. 5.9 Wavelet filter with DB4 8 levels of decomposition If a DB1 (Haar) 9-level wavelet filter is used, the result is shown in Figure 5.9. The delay reduces to about 3 ms. But at transient, the filtered signal is not a smoothed line anymore. The reason of this phenomenon is that wavelet transform in fact calculates the similarity of the wavelets and the signal. Haar wavelet is a step-like waveform (in Figure.4 (a)), so the step-like feature is extracted from the rotor speed signal. Ch1: Rotor speed signal before filtering Ch: Rotor speed signal after the existing order 1 low pass filter Ch3: Rotor speed signal after the DB1 9-level wavelet filter Fig. 5.1 Wavelet filter with DB1 9 levels of decomposition 58

68 A conclusion can almost be drawn. But the author still wants to find a wavelet filter which at least can make the machine rotate. So a compromise is made to choose a wavelet filter of DB and 5 levels of decomposition. The cut-off frequency then increases to Hz. The benefit is that the delay decreases to about 6 ms. Fig shows the comparison between this wavelet filter and the existing low pass filter. Though the delay becomes smaller, the ripple remained in the speed signal is much larger. Ch1: Rotor speed signal after the DB 5-level wavelet filter Ch: Rotor speed signal after the existing 1 st order low pass filter Fig Wavelet filter with DB 5 levels of decomposition The good news is that at least with this wavelet filter the machine rotates. Fig. 5.3 is drawn again in Fig. 5.1 the new system architecture. The existing first order low pass filter is replaced by a wavelet filter. ω ref + I d, ref = Speed PI Controller + - I q, ref ω - r + - Current PI Controller u d * u q * θ r dq / αβ transform αβ / abc transform U a U b U c Inverter I d I q LPF LPF dq / αβ transform αβ / abc transform I a I b I c Wavelet low pass filter DB 5-level dθ r /dt θ r sensor PMSM Fig. 5.1 FOC with wavelet filter for rotor speed signal filtering The reference rotor speed jumps from, 1.5 Hz, 5 Hz and finally to 1 Hz. In Fig. 5.13, the rotor speed can follow the reference speed correctly. Fig (a) shows a detail look of the speed control using the wavelet filter. Fig (b) shows the speed control using the existing first order low pass filter. It can be observed that the delay of wavelet filter is still larger. 59

69 Ch1: Reference rotor speed Ch: Real rotor speed Fig Speed control when wavelet filter is used (a) wavelet filter is used Ch1: Reference rotor speed Ch: Real rotor speed (b) the existing order 1 low pass filter is used Fig A detailed look of the speed control when wavelet filter is used In section 3..9, the performance of wavelet filters and Butterworth filters are compared using Matlab simulations. In this experiment, the filters are further compared using the real test platform. Again, the wavelet filters of DB1, DB4 and DB8 are compared with Butterworth filters of the first, second and third orders respectively. The cut-off frequency 6

70 is set to 15 Hz. The wavelet filter needs 9 levels of decomposition. The results are shown in the Fig. 5.15, Fig and Fig The two filters should be compared with each other are marked with red arrows. Ch1: Wavelet filter DB1 9 level Ch: Butterworth filter order 1 Ch3: Butterworth filter order Ch4: Butterworth filter order 3 Fig Wavelet filter DB1 9 level vs Butterworth filter first order Ch1: Wavelet filter DB4 9 level Ch: Butterworth filter order 1 Ch3: Butterworth filter order Ch4: Butterworth filter order 3 Fig Wavelet filter DB4 9 level vs Butterworth filter second order It can be observed that the filtering capability of the wavelet filter is as same as or even a little bit better than the corresponding Butterworth filters. But the real problem to prevent wavelet transforms to be used in electric machine control is the delay imposed by wavelet transforms. With increasing the levels of decomposition and wavelet orders, the delay rapidly becomes unacceptable in real-time applications. 61

71 Ch1: Wavelet filter DB8 9 level Ch: Butterworth filter order 1 Ch: Butterworth filter order Ch4: Butterworth filter order 3 Fig Wavelet filter DB8 9 level vs Butterworth filter third order Fig. 5.15, Fig and Fig show that a properly designed wavelet filter has the similar filtering behavior as the Butterworth filter. But the implementation of wavelet filter is much more complicated and needs more calculations. With the increase of decomposition levels, the time to calculate the wavelet transforms also increases. Another even worse drawback of the wavelet filter is the delay. In this experiment, the cut-off frequency of the filter is relatively too low comparing to the sampling frequency, which makes the levels of decomposition too high. Therefore a large delay is unavoidable. With such a large delay imposed in the control loop, it is not possible to make the whole system stable. In this experiment, wavelet filters don t have advantages compared with the traditional filters. There is no reason to use a much complicated wavelet filter when a simple traditional filter can finish the job Stator current denoising In this experiment, the Pentium test system is running without a speed sensor. The rotor speed is estimated by sensorless control. A method to denoise the stator current will be discussed. Before the experiment is described, a brief introduction is presented to have a basic understanding about what is sensorless control Sensorless control Sensorless control extracts the position or speed information of an electric machine without a speed sensor. The advantages of sensorless control are the reduced hardware complexity, lower cost and increased reliability [1]. 6

72 The methods to estimate the rotor positions can be generally divided into two groups: 1) Use the fundamental excitation to estimate the rotor position ) Use a separate excitation signal to estimate the rotor position. The fundamental excitation method has problems to extract the speed or position information at very low speed, due to the lower signal-to-noise ratio, lack of frequency separation and parameter mismatch. The machine becomes even unobservable at zero stator frequency. The separate excitation method exploits the saliency properties of the machine, such as rotor slot harmonics or saturation effects. Either a rotating or an alternating high frequency voltage is injected into the machine, and a carrier signal current is induced under the modulation of the saliency inside the machine. The carrier signal current can be decomposed into a negative sequence current which contains the spatial information and a positive sequence current which should be discarded. In this experiment, a rotating carrier voltage signal with a frequency of khz is injected into the PMSM. Therefore a carrier signal current with khz is induced and added to the fundamental stator current. The high frequency current signal is used to estimate the rotor speed, but it should be removed from the stator current before the current is fed back into the current loop of the field oriented control. Otherwise, the high frequency current may act as disturbances in the current loop, and make the performance of the control deteriorate. In section 5.1.3, Fig. 5.3 shows that two low pass filters are used to remove the high frequency current components from the stator current. The stator currents are represented in dq reference frame with notation of I d and I q. The two current components before and after the low pass filter are shown in Fig The two filters are first order low pass filters with cut-off frequency of 1 Hz. In the figure, the stator currents are buried with high frequency harmonics, and it is necessary to clean the stator currents before they are fed back into the current controller. The task of this experiment is to design a mechanism to obtain a clean stator current with the similar effect as the two low pass filters do. The first proposed method uses the wavelet denoising technique, and the second proposed method uses wavelet filters. 63

73 Ch1: Id before low pass filtered Ch: Iq before low pass filtered Ch3: Id after low pass filtered Ch4: Iq after low pass filtered Fig Stator currents before and after low pass filtered 5.3. Wavelet denoising Wavelet denoising technique is already discussed in section If the induced carrier signal current can be considered as noises, they can be removed by wavelet denoising. When the stator current abruptly changes, the fast changing behavior remains in the stator current after the denoising process. Fig. 5.3 is drawn again in Fig to show the new system diagram with wavelet denoising instead of the traditional low pass filters. ω ref + I d, ref = Speed PI Controller + - I q, ref ω - r + - Current PI Controller u d * u q * High frequency voltage dq / αβ transform αβ / abc transform u a u b u c Inverter I q I d Wavelet denoising Wavelet denoising I d_n I q_n dq / αβ transform αβ / abc transform I a I b I c I β I α Sensorless estimator PMSM Fig New system diagram with wavelet denoising The possible fast changes occurred in stator current could be caused by speed regulation. If the reference rotor speed jumps to a higher value, the torque producing current I q will increase correspondingly. A higher torque is generated to make the machine to accelerate. When the rotor speed approaches to the reference rotor speed, the current I q slowly 64

74 reduces back to the normal value. An example of the I q under such speed regulations is shown in Fig. 5.. Fig. 5. Stator current I q when reference rotor speed has a step change With the similar procedure, the levels of decomposition are determined first. Though it is clear that the induced carrier signal current has a frequency of khz, the frequency of the current changes under speed regulation is unknown. So the stator current I q is decomposed step by step using wavelet transforms to show the frequency bands of the current I q. Fig. 5.1 shows the decomposition levels from 1 to 3. Fig. 5. shows the decomposition levels from 4 to 6. Fig. 5.3 shows the decomposition levels from 7 to 8. Fig. 5.4 shows the decomposed current I q at level 9. The frequency bands of each decomposition level shown in Fig. 5.6 are still valid in this experiment, because the sampling frequency is the same. In the figures, it can be observed that there is no fast changing components appeared from level 1 to level 3 where the induced carrier current mainly lies. The current changes appear from level 4 and downward. Unfortunately, it means that more than 3 levels of decomposition are required to make wavelet denoising effective. Similar as in the previous experiment, a large delay will be imposed into the control loop. We can almost say no to the wavelet denoising method in this experiment due to the large delay. Ch1: reference value of Iq Ch: detail coefficient D1 Ch3: detail coefficient D Ch4: detail coefficient D3 Fig. 5.1 Wavelet decomposition of I q from level 1 to level 3 65

75 Ch1: reference value of Iq Ch: detail coefficient D4 Ch3: detail coefficient D5 Ch4: detail coefficient D6 Fig. 5. Wavelet decomposition of I q from level 4 to level 6 Ch1: reference value of Iq Ch: detail coefficient D7 Ch3: detail coefficient D8 Fig. 5.3 Wavelet decomposition of I q from level 7 to level 8 Ch1: reference value of Iq Ch4: detail coefficient D9 Fig. 5.4 Wavelet decomposition of I q at level 9 66

76 To reduce the delay, a DB 3-level wavelet decomposition is chosen to only remove the induced high frequency current and all the low frequency noises will be remained in the current signal and reconstructed. The cut-off frequency increases 1 khz. The wavelet denoising becomes a wavelet filter, because no fast changing event can be observed in the first three levels. The wavelet denoising loses its merit. Anyway, the wavelet denoising is also implemented to make a comparison. From the detail coefficients measured in Fig. 5.1, Fig. 5., Fig. 5.3 and Fig. 5.4, the following threshold values are chosen. The coefficients with values smaller than the threshold value will be considered as noise and removed. CD1 CD CD3 CD4 CD5 CD6 CD7 CD8 CD The wavelet filter with DB 3-level of decomposition, the wavelet denoising with DB 9-level of decomposition and the existing first order low pass filter with cut-off frequency of 1 Hz are compared in Fig The results show that the wavelet filter has the similar filtering ability with the low pass filter but with a sharper peak. The reason is the cut-off frequency of the wavelet filter is set to 1 khz which is 1 times higher than the low pass filter. In this case, the wavelet denoising is disappointing, with an expense of much larger delay, the filtering effect is not considerably better than the wavelet filter. Ch1: reference value of Iq Ch: Iq after the low pass filter Ch3: Iq after the wavelet filter with DB 3 level Ch4: Iq after the wavelet denosing with DB 9 level Fig. 5.5 Comparison, lowpass filter, wavelet filter and wavelet denoising Finally, the low pass filter is replaced by the designed wavelet filter and sensorless control is applied. Fig. 5.6 shows the current I q and the rotor speed when the reference rotor speed changes from 5 Hz to 1 Hz. The original system is tested under the same condition and results are shown in Fig. 5.7 as a comparison. 67

77 Ch1: reference value of Iq Ch: Iq after the wavelet filter with DB 3 level Ch3: reference value of rotor speed ω Ch4: real rotor speed Fig. 5.6 Speed regulation with wavelet filter integrated Though the current I q increases faster when the wavelet filter is used in the system, the rotor speed does not seem to increase faster. The machine needs the similar time to accelerate to the new reference speed. The advantage got from the wavelet filter is not big enough to be observed in the whole system. Ch1: reference value of Iq Ch: Iq after the low pass filter Ch3: reference value of rotor speed ω Ch4: real rotor speed Fig. 5.7 Speed regulation using the original system At last, this wavelet filter is compared with Butterworth filters of the second and third orders with the cut-off frequency of 11.5 Hz. In Fig. 5.8, the wavelet filter has a better performance. 68

78 Ch1: reference value of Iq Ch: Iq after wavelet filter with DB 3 level Ch3: Iq after order Butterworth filter Ch4: Iq after order 3 Butterworth filter Fig. 5.8 Filter comparisons, wavelet filter, Butterworth filter of second and third orders In summary, the wavelet denoising is proved failed to be used in this experiment due to its large delay. A wavelet filter with 3 levels of decomposition is designed as an alternative. The performance of the filtering is better than the existing low pass filter, but for the whole system the improvement is limited. 69

Introduction to Wavelet Transform. Chapter 7 Instructor: Hossein Pourghassem

Introduction to Wavelet Transform. Chapter 7 Instructor: Hossein Pourghassem Introduction to Wavelet Transform Chapter 7 Instructor: Hossein Pourghassem Introduction Most of the signals in practice, are TIME-DOMAIN signals in their raw format. It means that measured signal is a

More information

Introduction to Wavelets Michael Phipps Vallary Bhopatkar

Introduction to Wavelets Michael Phipps Vallary Bhopatkar Introduction to Wavelets Michael Phipps Vallary Bhopatkar *Amended from The Wavelet Tutorial by Robi Polikar, http://users.rowan.edu/~polikar/wavelets/wttutoria Who can tell me what this means? NR3, pg

More information

Fourier and Wavelets

Fourier and Wavelets Fourier and Wavelets Why do we need a Transform? Fourier Transform and the short term Fourier (STFT) Heisenberg Uncertainty Principle The continues Wavelet Transform Discrete Wavelet Transform Wavelets

More information

EE216B: VLSI Signal Processing. Wavelets. Prof. Dejan Marković Shortcomings of the Fourier Transform (FT)

EE216B: VLSI Signal Processing. Wavelets. Prof. Dejan Marković Shortcomings of the Fourier Transform (FT) 5//0 EE6B: VLSI Signal Processing Wavelets Prof. Dejan Marković ee6b@gmail.com Shortcomings of the Fourier Transform (FT) FT gives information about the spectral content of the signal but loses all time

More information

Digital Image Processing

Digital Image Processing In the Name of Allah Digital Image Processing Introduction to Wavelets Hamid R. Rabiee Fall 2015 Outline 2 Why transform? Why wavelets? Wavelets like basis components. Wavelets examples. Fast wavelet transform.

More information

Introduction to Wavelets. For sensor data processing

Introduction to Wavelets. For sensor data processing Introduction to Wavelets For sensor data processing List of topics Why transform? Why wavelets? Wavelets like basis components. Wavelets examples. Fast wavelet transform. Wavelets like filter. Wavelets

More information

VU Signal and Image Processing. Torsten Möller + Hrvoje Bogunović + Raphael Sahann

VU Signal and Image Processing. Torsten Möller + Hrvoje Bogunović + Raphael Sahann 052600 VU Signal and Image Processing Torsten Möller + Hrvoje Bogunović + Raphael Sahann torsten.moeller@univie.ac.at hrvoje.bogunovic@meduniwien.ac.at raphael.sahann@univie.ac.at vda.cs.univie.ac.at/teaching/sip/17s/

More information

TRANSFORMS / WAVELETS

TRANSFORMS / WAVELETS RANSFORMS / WAVELES ransform Analysis Signal processing using a transform analysis for calculations is a technique used to simplify or accelerate problem solution. For example, instead of dividing two

More information

HIGH QUALITY AUDIO CODING AT LOW BIT RATE USING WAVELET AND WAVELET PACKET TRANSFORM

HIGH QUALITY AUDIO CODING AT LOW BIT RATE USING WAVELET AND WAVELET PACKET TRANSFORM HIGH QUALITY AUDIO CODING AT LOW BIT RATE USING WAVELET AND WAVELET PACKET TRANSFORM DR. D.C. DHUBKARYA AND SONAM DUBEY 2 Email at: sonamdubey2000@gmail.com, Electronic and communication department Bundelkhand

More information

Wavelet Transform. From C. Valens article, A Really Friendly Guide to Wavelets, 1999

Wavelet Transform. From C. Valens article, A Really Friendly Guide to Wavelets, 1999 Wavelet Transform From C. Valens article, A Really Friendly Guide to Wavelets, 1999 Fourier theory: a signal can be expressed as the sum of a series of sines and cosines. The big disadvantage of a Fourier

More information

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar

Biomedical Signals. Signals and Images in Medicine Dr Nabeel Anwar Biomedical Signals Signals and Images in Medicine Dr Nabeel Anwar Noise Removal: Time Domain Techniques 1. Synchronized Averaging (covered in lecture 1) 2. Moving Average Filters (today s topic) 3. Derivative

More information

CHAPTER 3 WAVELET TRANSFORM BASED CONTROLLER FOR INDUCTION MOTOR DRIVES

CHAPTER 3 WAVELET TRANSFORM BASED CONTROLLER FOR INDUCTION MOTOR DRIVES 49 CHAPTER 3 WAVELET TRANSFORM BASED CONTROLLER FOR INDUCTION MOTOR DRIVES 3.1 INTRODUCTION The wavelet transform is a very popular tool for signal processing and analysis. It is widely used for the analysis

More information

Orthonormal bases and tilings of the time-frequency plane for music processing Juan M. Vuletich *

Orthonormal bases and tilings of the time-frequency plane for music processing Juan M. Vuletich * Orthonormal bases and tilings of the time-frequency plane for music processing Juan M. Vuletich * Dept. of Computer Science, University of Buenos Aires, Argentina ABSTRACT Conventional techniques for signal

More information

The Discrete Fourier Transform. Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido

The Discrete Fourier Transform. Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido The Discrete Fourier Transform Claudia Feregrino-Uribe, Alicia Morales-Reyes Original material: Dr. René Cumplido CCC-INAOE Autumn 2015 The Discrete Fourier Transform Fourier analysis is a family of mathematical

More information

Application of The Wavelet Transform In The Processing of Musical Signals

Application of The Wavelet Transform In The Processing of Musical Signals EE678 WAVELETS APPLICATION ASSIGNMENT 1 Application of The Wavelet Transform In The Processing of Musical Signals Group Members: Anshul Saxena anshuls@ee.iitb.ac.in 01d07027 Sanjay Kumar skumar@ee.iitb.ac.in

More information

INDEX Space & Signals Technologies LLC, All Rights Reserved.

INDEX Space & Signals Technologies LLC, All Rights Reserved. INDEX A A Trous Transform (Algorithme A Trous). See also Conventional DWT named for trousers with holes, 23, 50, 124-128 Acoustic Piano, 9, A12, B2-B3. See also STFT Alias cancellation. See also PRQMF

More information

Detection of Voltage Sag and Voltage Swell in Power Quality Using Wavelet Transforms

Detection of Voltage Sag and Voltage Swell in Power Quality Using Wavelet Transforms Detection of Voltage Sag and Voltage Swell in Power Quality Using Wavelet Transforms Nor Asrina Binti Ramlee International Science Index, Energy and Power Engineering waset.org/publication/10007639 Abstract

More information

Lecture 25: The Theorem of (Dyadic) MRA

Lecture 25: The Theorem of (Dyadic) MRA WAVELETS AND MULTIRATE DIGITAL SIGNAL PROCESSING Lecture 25: The Theorem of (Dyadic) MRA Prof.V.M.Gadre, EE, IIT Bombay 1 Introduction In the previous lecture, we discussed that translation and scaling

More information

Detection, localization, and classification of power quality disturbances using discrete wavelet transform technique

Detection, localization, and classification of power quality disturbances using discrete wavelet transform technique From the SelectedWorks of Tarek Ibrahim ElShennawy 2003 Detection, localization, and classification of power quality disturbances using discrete wavelet transform technique Tarek Ibrahim ElShennawy, Dr.

More information

WAVELET SIGNAL AND IMAGE DENOISING

WAVELET SIGNAL AND IMAGE DENOISING WAVELET SIGNAL AND IMAGE DENOISING E. Hošťálková, A. Procházka Institute of Chemical Technology Department of Computing and Control Engineering Abstract The paper deals with the use of wavelet transform

More information

SAMPLING THEORY. Representing continuous signals with discrete numbers

SAMPLING THEORY. Representing continuous signals with discrete numbers SAMPLING THEORY Representing continuous signals with discrete numbers Roger B. Dannenberg Professor of Computer Science, Art, and Music Carnegie Mellon University ICM Week 3 Copyright 2002-2013 by Roger

More information

ARM BASED WAVELET TRANSFORM IMPLEMENTATION FOR EMBEDDED SYSTEM APPLİCATİONS

ARM BASED WAVELET TRANSFORM IMPLEMENTATION FOR EMBEDDED SYSTEM APPLİCATİONS ARM BASED WAVELET TRANSFORM IMPLEMENTATION FOR EMBEDDED SYSTEM APPLİCATİONS 1 FEDORA LIA DIAS, 2 JAGADANAND G 1,2 Department of Electrical Engineering, National Institute of Technology, Calicut, India

More information

ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL

ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL ADDITIVE SYNTHESIS BASED ON THE CONTINUOUS WAVELET TRANSFORM: A SINUSOIDAL PLUS TRANSIENT MODEL José R. Beltrán and Fernando Beltrán Department of Electronic Engineering and Communications University of

More information

Fault Location Technique for UHV Lines Using Wavelet Transform

Fault Location Technique for UHV Lines Using Wavelet Transform International Journal of Electrical Engineering. ISSN 0974-2158 Volume 6, Number 1 (2013), pp. 77-88 International Research Publication House http://www.irphouse.com Fault Location Technique for UHV Lines

More information

Wavelet Transform. From C. Valens article, A Really Friendly Guide to Wavelets, 1999

Wavelet Transform. From C. Valens article, A Really Friendly Guide to Wavelets, 1999 Wavelet Transform From C. Valens article, A Really Friendly Guide to Wavelets, 1999 Fourier theory: a signal can be expressed as the sum of a, possibly infinite, series of sines and cosines. This sum is

More information

TIME FREQUENCY ANALYSIS OF TRANSIENT NVH PHENOMENA IN VEHICLES

TIME FREQUENCY ANALYSIS OF TRANSIENT NVH PHENOMENA IN VEHICLES TIME FREQUENCY ANALYSIS OF TRANSIENT NVH PHENOMENA IN VEHICLES K Becker 1, S J Walsh 2, J Niermann 3 1 Institute of Automotive Engineering, University of Applied Sciences Cologne, Germany 2 Dept. of Aeronautical

More information

WAVELETS: BEYOND COMPARISON - D. L. FUGAL

WAVELETS: BEYOND COMPARISON - D. L. FUGAL WAVELETS: BEYOND COMPARISON - D. L. FUGAL Wavelets are used extensively in Signal and Image Processing, Medicine, Finance, Radar, Sonar, Geology and many other varied fields. They are usually presented

More information

LabVIEW Based Condition Monitoring Of Induction Motor

LabVIEW Based Condition Monitoring Of Induction Motor RESEARCH ARTICLE OPEN ACCESS LabVIEW Based Condition Monitoring Of Induction Motor 1PG student Rushikesh V. Deshmukh Prof. 2Asst. professor Anjali U. Jawadekar Department of Electrical Engineering SSGMCE,

More information

A Study on Peak-to-Average Power Ratio in DWT-OFDM Systems

A Study on Peak-to-Average Power Ratio in DWT-OFDM Systems TELKOMNIKA Indonesian Journal of Electrical Engineering Vol. 12, No. 5, May 2014, pp. 3955 3961 DOI: http://dx.doi.org/10.11591/telkomnika.v12.i5.5375 3955 A Study on Peak-to-Average Power Ratio in DWT-OFDM

More information

Harmonic Analysis of Power System Waveforms Based on Chaari Complex Mother Wavelet

Harmonic Analysis of Power System Waveforms Based on Chaari Complex Mother Wavelet Proceedings of the 7th WSEAS International Conference on Power Systems, Beijing, China, September 15-17, 2007 7 Harmonic Analysis of Power System Waveforms Based on Chaari Complex Mother Wavelet DAN EL

More information

Fourier Analysis. Fourier Analysis

Fourier Analysis. Fourier Analysis Fourier Analysis Fourier Analysis ignal analysts already have at their disposal an impressive arsenal of tools. Perhaps the most well-known of these is Fourier analysis, which breaks down a signal into

More information

Chapter 5. Signal Analysis. 5.1 Denoising fiber optic sensor signal

Chapter 5. Signal Analysis. 5.1 Denoising fiber optic sensor signal Chapter 5 Signal Analysis 5.1 Denoising fiber optic sensor signal We first perform wavelet-based denoising on fiber optic sensor signals. Examine the fiber optic signal data (see Appendix B). Across all

More information

APPLICATION OF DISCRETE WAVELET TRANSFORM TO FAULT DETECTION

APPLICATION OF DISCRETE WAVELET TRANSFORM TO FAULT DETECTION APPICATION OF DISCRETE WAVEET TRANSFORM TO FAUT DETECTION 1 SEDA POSTACIOĞU KADİR ERKAN 3 EMİNE DOĞRU BOAT 1,,3 Department of Electronics and Computer Education, University of Kocaeli Türkiye Abstract.

More information

INDEX TO SERIES OF TUTORIALS TO WAVELET TRANSFORM BY ROBI POLIKAR THE ENGINEER'S ULTIMATE GUIDE TO WAVELET ANALYSIS ROBI POLIKAR

INDEX TO SERIES OF TUTORIALS TO WAVELET TRANSFORM BY ROBI POLIKAR THE ENGINEER'S ULTIMATE GUIDE TO WAVELET ANALYSIS ROBI POLIKAR INDEX TO SERIES OF TUTORIALS TO WAVELET TRANSFORM BY ROBI POLIKAR THE ENGINEER'S ULTIMATE GUIDE TO WAVELET ANALYSIS THE WAVELET TUTORIAL by ROBI POLIKAR Also visit Rowan s Signal Processing and Pattern

More information

Nonlinear Filtering in ECG Signal Denoising

Nonlinear Filtering in ECG Signal Denoising Acta Universitatis Sapientiae Electrical and Mechanical Engineering, 2 (2) 36-45 Nonlinear Filtering in ECG Signal Denoising Zoltán GERMÁN-SALLÓ Department of Electrical Engineering, Faculty of Engineering,

More information

FPGA implementation of DWT for Audio Watermarking Application

FPGA implementation of DWT for Audio Watermarking Application FPGA implementation of DWT for Audio Watermarking Application Naveen.S.Hampannavar 1, Sajeevan Joseph 2, C.B.Bidhul 3, Arunachalam V 4 1, 2, 3 M.Tech VLSI Students, 4 Assistant Professor Selection Grade

More information

Lecture 17 z-transforms 2

Lecture 17 z-transforms 2 Lecture 17 z-transforms 2 Fundamentals of Digital Signal Processing Spring, 2012 Wei-Ta Chu 2012/5/3 1 Factoring z-polynomials We can also factor z-transform polynomials to break down a large system into

More information

WAVELET OFDM WAVELET OFDM

WAVELET OFDM WAVELET OFDM EE678 WAVELETS APPLICATION ASSIGNMENT WAVELET OFDM GROUP MEMBERS RISHABH KASLIWAL rishkas@ee.iitb.ac.in 02D07001 NACHIKET KALE nachiket@ee.iitb.ac.in 02D07002 PIYUSH NAHAR nahar@ee.iitb.ac.in 02D07007

More information

Linear Time-Invariant Systems

Linear Time-Invariant Systems Linear Time-Invariant Systems Modules: Wideband True RMS Meter, Audio Oscillator, Utilities, Digital Utilities, Twin Pulse Generator, Tuneable LPF, 100-kHz Channel Filters, Phase Shifter, Quadrature Phase

More information

2.1 BASIC CONCEPTS Basic Operations on Signals Time Shifting. Figure 2.2 Time shifting of a signal. Time Reversal.

2.1 BASIC CONCEPTS Basic Operations on Signals Time Shifting. Figure 2.2 Time shifting of a signal. Time Reversal. 1 2.1 BASIC CONCEPTS 2.1.1 Basic Operations on Signals Time Shifting. Figure 2.2 Time shifting of a signal. Time Reversal. 2 Time Scaling. Figure 2.4 Time scaling of a signal. 2.1.2 Classification of Signals

More information

Evoked Potentials (EPs)

Evoked Potentials (EPs) EVOKED POTENTIALS Evoked Potentials (EPs) Event-related brain activity where the stimulus is usually of sensory origin. Acquired with conventional EEG electrodes. Time-synchronized = time interval from

More information

Introduction to Wavelet Transform. A. Enis Çetin Visiting Professor Ryerson University

Introduction to Wavelet Transform. A. Enis Çetin Visiting Professor Ryerson University Introduction to Wavelet Transform A. Enis Çetin Visiting Professor Ryerson University Overview of Wavelet Course Sampling theorem and multirate signal processing 2 Wavelets form an orthonormal basis of

More information

Filter Banks I. Prof. Dr. Gerald Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany. Fraunhofer IDMT

Filter Banks I. Prof. Dr. Gerald Schuller. Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany. Fraunhofer IDMT Filter Banks I Prof. Dr. Gerald Schuller Fraunhofer IDMT & Ilmenau University of Technology Ilmenau, Germany 1 Structure of perceptual Audio Coders Encoder Decoder 2 Filter Banks essential element of most

More information

[Panday* et al., 5(5): May, 2016] ISSN: IC Value: 3.00 Impact Factor: 3.785

[Panday* et al., 5(5): May, 2016] ISSN: IC Value: 3.00 Impact Factor: 3.785 IJESRT INTERNATIONAL JOURNAL OF ENGINEERING SCIENCES & RESEARCH TECHNOLOGY PERFORMANCE OF WAVELET PACKET BASED SPECTRUM SENSING IN COGNITIVE RADIO FOR DIFFERENT WAVELET FAMILIES Saloni Pandya *, Prof.

More information

MOHD ZUL-HILMI BIN MOHAMAD

MOHD ZUL-HILMI BIN MOHAMAD i DE-NOISING OF AN EXPERIMENTAL ACOUSTIC EMISSIONS (AE) DATA USING ONE DIMENSIONAL (1-D) WAVELET PACKET ANALYSIS MOHD ZUL-HILMI BIN MOHAMAD Report submitted in partial fulfillment of the requirements for

More information

Sampling and Reconstruction of Analog Signals

Sampling and Reconstruction of Analog Signals Sampling and Reconstruction of Analog Signals Chapter Intended Learning Outcomes: (i) Ability to convert an analog signal to a discrete-time sequence via sampling (ii) Ability to construct an analog signal

More information

FFT analysis in practice

FFT analysis in practice FFT analysis in practice Perception & Multimedia Computing Lecture 13 Rebecca Fiebrink Lecturer, Department of Computing Goldsmiths, University of London 1 Last Week Review of complex numbers: rectangular

More information

Time-Frequency Analysis of Shock and Vibration Measurements Using Wavelet Transforms

Time-Frequency Analysis of Shock and Vibration Measurements Using Wavelet Transforms Cloud Publications International Journal of Advanced Packaging Technology 2014, Volume 2, Issue 1, pp. 60-69, Article ID Tech-231 ISSN 2349 6665, doi 10.23953/cloud.ijapt.15 Case Study Open Access Time-Frequency

More information

Chapter 3 Spectral Analysis using Pattern Classification

Chapter 3 Spectral Analysis using Pattern Classification 36 Chapter 3 Spectral Analysis using Pattern Classification 3.. Introduction An important application of Artificial Intelligence (AI) is the diagnosis of fault mechanisms. The traditional approaches to

More information

Removal of ocular artifacts from EEG signals using adaptive threshold PCA and Wavelet transforms

Removal of ocular artifacts from EEG signals using adaptive threshold PCA and Wavelet transforms Available online at www.interscience.in Removal of ocular artifacts from s using adaptive threshold PCA and Wavelet transforms P. Ashok Babu 1, K.V.S.V.R.Prasad 2 1 Narsimha Reddy Engineering College,

More information

FPGA implementation of LSB Steganography method

FPGA implementation of LSB Steganography method FPGA implementation of LSB Steganography method Pangavhane S.M. 1 &Punde S.S. 2 1,2 (E&TC Engg. Dept.,S.I.E.RAgaskhind, SPP Univ., Pune(MS), India) Abstract : "Steganography is a Greek origin word which

More information

Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau

Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau Multirate Signal Processing Lecture 7, Sampling Gerald Schuller, TU Ilmenau (Also see: Lecture ADSP, Slides 06) In discrete, digital signal we use the normalized frequency, T = / f s =: it is without a

More information

Enhancement of Speech Signal by Adaptation of Scales and Thresholds of Bionic Wavelet Transform Coefficients

Enhancement of Speech Signal by Adaptation of Scales and Thresholds of Bionic Wavelet Transform Coefficients ISSN (Print) : 232 3765 An ISO 3297: 27 Certified Organization Vol. 3, Special Issue 3, April 214 Paiyanoor-63 14, Tamil Nadu, India Enhancement of Speech Signal by Adaptation of Scales and Thresholds

More information

ECE 201: Introduction to Signal Analysis

ECE 201: Introduction to Signal Analysis ECE 201: Introduction to Signal Analysis Prof. Paris Last updated: October 9, 2007 Part I Spectrum Representation of Signals Lecture: Sums of Sinusoids (of different frequency) Introduction Sum of Sinusoidal

More information

Review of Signal Processing Techniques for Detection of Power Quality Events

Review of Signal Processing Techniques for Detection of Power Quality Events American Journal of Engineering and Applied Sciences Review Articles Review of Signal Processing Techniques for Detection of Power Quality Events 1 Abhijith Augustine, 2 Ruban Deva Prakash, 3 Rajy Xavier

More information

Finite Word Length Effects on Two Integer Discrete Wavelet Transform Algorithms. Armein Z. R. Langi

Finite Word Length Effects on Two Integer Discrete Wavelet Transform Algorithms. Armein Z. R. Langi International Journal on Electrical Engineering and Informatics - Volume 3, Number 2, 211 Finite Word Length Effects on Two Integer Discrete Wavelet Transform Algorithms Armein Z. R. Langi ITB Research

More information

Windows and Leakage Brief Overview

Windows and Leakage Brief Overview Windows and Leakage Brief Overview When converting a signal from the time domain to the frequency domain, the Fast Fourier Transform (FFT) is used. The Fourier Transform is defined by the Equation: j2πft

More information

EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM

EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM EE 215 Semester Project SPECTRAL ANALYSIS USING FOURIER TRANSFORM Department of Electrical and Computer Engineering Missouri University of Science and Technology Page 1 Table of Contents Introduction...Page

More information

Digital Signal Processing. VO Embedded Systems Engineering Armin Wasicek WS 2009/10

Digital Signal Processing. VO Embedded Systems Engineering Armin Wasicek WS 2009/10 Digital Signal Processing VO Embedded Systems Engineering Armin Wasicek WS 2009/10 Overview Signals and Systems Processing of Signals Display of Signals Digital Signal Processors Common Signal Processing

More information

International Journal of Advanced Research in Computer Science and Software Engineering

International Journal of Advanced Research in Computer Science and Software Engineering ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: Elimination of White Noise Using MMSE & HAAR Transform Sarita

More information

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters FIR Filter Design Chapter Intended Learning Outcomes: (i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters (ii) Ability to design linear-phase FIR filters according

More information

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 7, February 2013)

International Journal of Digital Application & Contemporary research Website:   (Volume 1, Issue 7, February 2013) Performance Analysis of OFDM under DWT, DCT based Image Processing Anshul Soni soni.anshulec14@gmail.com Ashok Chandra Tiwari Abstract In this paper, the performance of conventional discrete cosine transform

More information

Multirate Digital Signal Processing

Multirate Digital Signal Processing Multirate Digital Signal Processing Basic Sampling Rate Alteration Devices Up-sampler - Used to increase the sampling rate by an integer factor Down-sampler - Used to increase the sampling rate by an integer

More information

WAVELET TRANSFORM ANALYSIS OF PARTIAL DISCHARGE SIGNALS. B.T. Phung, Z. Liu, T.R. Blackburn and R.E. James

WAVELET TRANSFORM ANALYSIS OF PARTIAL DISCHARGE SIGNALS. B.T. Phung, Z. Liu, T.R. Blackburn and R.E. James WAVELET TRANSFORM ANALYSIS OF PARTIAL DISCHARGE SIGNALS B.T. Phung, Z. Liu, T.R. Blackburn and R.E. James School of Electrical Engineering and Telecommunications University of New South Wales, Australia

More information

Practical Application of Wavelet to Power Quality Analysis. Norman Tse

Practical Application of Wavelet to Power Quality Analysis. Norman Tse Paper Title: Practical Application of Wavelet to Power Quality Analysis Author and Presenter: Norman Tse 1 Harmonics Frequency Estimation by Wavelet Transform (WT) Any harmonic signal can be described

More information

Sound pressure level calculation methodology investigation of corona noise in AC substations

Sound pressure level calculation methodology investigation of corona noise in AC substations International Conference on Advanced Electronic Science and Technology (AEST 06) Sound pressure level calculation methodology investigation of corona noise in AC substations,a Xiaowen Wu, Nianguang Zhou,

More information

2.

2. PERFORMANCE ANALYSIS OF STBC-MIMO OFDM SYSTEM WITH DWT & FFT Shubhangi R Chaudhary 1,Kiran Rohidas Jadhav 2. Department of Electronics and Telecommunication Cummins college of Engineering for Women Pune,

More information

Keywords Decomposition; Reconstruction; SNR; Speech signal; Super soft Thresholding.

Keywords Decomposition; Reconstruction; SNR; Speech signal; Super soft Thresholding. Volume 5, Issue 2, February 2015 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Speech Enhancement

More information

Electrical & Computer Engineering Technology

Electrical & Computer Engineering Technology Electrical & Computer Engineering Technology EET 419C Digital Signal Processing Laboratory Experiments by Masood Ejaz Experiment # 1 Quantization of Analog Signals and Calculation of Quantized noise Objective:

More information

Railscan: A Tool for the Detection and Quantification of Rail Corrugation

Railscan: A Tool for the Detection and Quantification of Rail Corrugation Railscan: A Tool for the Detection and Quantification of Rail Corrugation Rui Gomes, Arnaldo Batista, Manuel Ortigueira, Raul Rato and Marco Baldeiras 2 Department of Electrical Engineering, Universidade

More information

PERFORMANCES OF ORTHOGONAL WAVELET DIVISION MULTIPLEX (OWDM) SYSTEM UNDER AWGN, RAYLEIGH, AND RICEAN CHANNEL CONDITIONS

PERFORMANCES OF ORTHOGONAL WAVELET DIVISION MULTIPLEX (OWDM) SYSTEM UNDER AWGN, RAYLEIGH, AND RICEAN CHANNEL CONDITIONS PERFORMANCES OF ORTHOGONAL WAVELET DIVISION MULTIPLEX (OWDM) SYSTEM UNDER AWGN, RAYLEIGH, AND RICEAN CHANNEL CONDITIONS Mohammed Tarique Department of Electrical Engineering, Ajman University of Science

More information

Digital Image Processing

Digital Image Processing Digital Image Processing Lecture # 5 Image Enhancement in Spatial Domain- I ALI JAVED Lecturer SOFTWARE ENGINEERING DEPARTMENT U.E.T TAXILA Email:: ali.javed@uettaxila.edu.pk Office Room #:: 7 Presentation

More information

An Analysis on Wavelet Applications as Speech Data Mining Tools

An Analysis on Wavelet Applications as Speech Data Mining Tools An Analysis on Wavelet Applications as Speech Data Mining Tools Senthil Devi K A #1, Dr. Srinivasan B *2 #1 Assistant Professor, Gobi Arts & Science College, Tamil Nadu, India. #2 Associate Professor,

More information

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters

(i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters FIR Filter Design Chapter Intended Learning Outcomes: (i) Understanding of the characteristics of linear-phase finite impulse response (FIR) filters (ii) Ability to design linear-phase FIR filters according

More information

Analysis and pre-processing of signals observed in optical feedback self-mixing interferometry

Analysis and pre-processing of signals observed in optical feedback self-mixing interferometry University of Wollongong Research Online University of Wollongong Thesis Collection 1954-2016 University of Wollongong Thesis Collections 2008 Analysis and pre-processing of signals observed in optical

More information

Department of Electronic Engineering NED University of Engineering & Technology. LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202)

Department of Electronic Engineering NED University of Engineering & Technology. LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202) Department of Electronic Engineering NED University of Engineering & Technology LABORATORY WORKBOOK For the Course SIGNALS & SYSTEMS (TC-202) Instructor Name: Student Name: Roll Number: Semester: Batch:

More information

A DWT Approach for Detection and Classification of Transmission Line Faults

A DWT Approach for Detection and Classification of Transmission Line Faults IJIRST International Journal for Innovative Research in Science & Technology Volume 3 Issue 02 July 2016 ISSN (online): 2349-6010 A DWT Approach for Detection and Classification of Transmission Line Faults

More information

ANALYSIS OF PARTIAL DISCHARGE SIGNALS USING DIGITAL SIGNAL PROCESSING TECHNIQUES

ANALYSIS OF PARTIAL DISCHARGE SIGNALS USING DIGITAL SIGNAL PROCESSING TECHNIQUES ANALYSIS OF PARTIAL DISCHARGE SIGNALS USING DIGITAL SIGNAL PROCESSING TECHNIQUES A Thesis Submitted in Partial Fulfillment of the Requirements for the Award of the Degree of Master of Technology in Power

More information

Experiment 6: Multirate Signal Processing

Experiment 6: Multirate Signal Processing ECE431, Experiment 6, 2018 Communications Lab, University of Toronto Experiment 6: Multirate Signal Processing Bruno Korst - bkf@comm.utoronto.ca Abstract In this experiment, you will use decimation and

More information

EEE508 GÜÇ SİSTEMLERİNDE SİNYAL İŞLEME

EEE508 GÜÇ SİSTEMLERİNDE SİNYAL İŞLEME EEE508 GÜÇ SİSTEMLERİNDE SİNYAL İŞLEME Signal Processing for Power System Applications Triggering, Segmentation and Characterization of the Events (Week-12) Gazi Üniversitesi, Elektrik ve Elektronik Müh.

More information

PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture 11-2

PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture PYKC 27 Feb 2017 EA2.3 Electronics 2 Lecture 11-2 In this lecture, I will introduce the mathematical model for discrete time signals as sequence of samples. You will also take a first look at a useful alternative representation of discrete signals known

More information

Analysis of Power Quality Disturbances using DWT and Artificial Neural Networks

Analysis of Power Quality Disturbances using DWT and Artificial Neural Networks Analysis of Power Quality Disturbances using DWT and Artificial Neural Networks T.Jayasree ** M.S.Ragavi * R.Sarojini * Snekha.R * M.Tamilselvi * *BE final year, ECE Department, Govt. College of Engineering,

More information

Automatic Peak Picking Using Wavelet De-noised Spectra in Automated Struture Determination.

Automatic Peak Picking Using Wavelet De-noised Spectra in Automated Struture Determination. Automatic Peak Picking Using Wavelet De-noised Spectra in Automated Struture Determination http://www.nmrlab.net Automatic peak picking in automatic structure determination Wavelet de-noising Peak Integration

More information

Wavelet Transform Based Islanding Characterization Method for Distributed Generation

Wavelet Transform Based Islanding Characterization Method for Distributed Generation Fourth LACCEI International Latin American and Caribbean Conference for Engineering and Technology (LACCET 6) Wavelet Transform Based Islanding Characterization Method for Distributed Generation O. A.

More information

Comparision of different Image Resolution Enhancement techniques using wavelet transform

Comparision of different Image Resolution Enhancement techniques using wavelet transform Comparision of different Image Resolution Enhancement techniques using wavelet transform Mrs.Smita.Y.Upadhye Assistant Professor, Electronics Dept Mrs. Swapnali.B.Karole Assistant Professor, EXTC Dept

More information

Analysis of LMS Algorithm in Wavelet Domain

Analysis of LMS Algorithm in Wavelet Domain Conference on Advances in Communication and Control Systems 2013 (CAC2S 2013) Analysis of LMS Algorithm in Wavelet Domain Pankaj Goel l, ECE Department, Birla Institute of Technology Ranchi, Jharkhand,

More information

An Adaptive Wavelet and Level Dependent Thresholding Using Median Filter for Medical Image Compression

An Adaptive Wavelet and Level Dependent Thresholding Using Median Filter for Medical Image Compression An Adaptive Wavelet and Level Dependent Thresholding Using Median Filter for Medical Image Compression Komal Narang M.Tech (Embedded Systems), Department of EECE, The North Cap University, Huda, Sector

More information

Wavelet Transform for Classification of Voltage Sag Causes using Probabilistic Neural Network

Wavelet Transform for Classification of Voltage Sag Causes using Probabilistic Neural Network International Journal of Electrical Engineering. ISSN 974-2158 Volume 4, Number 3 (211), pp. 299-39 International Research Publication House http://www.irphouse.com Wavelet Transform for Classification

More information

Practical Applications of the Wavelet Analysis

Practical Applications of the Wavelet Analysis Practical Applications of the Wavelet Analysis M. Bigi, M. Jacchia, D. Ponteggia ALMA International Europe (6- - Frankfurt) Summary Impulse and Frequency Response Classical Time and Frequency Analysis

More information

Characterization of Voltage Sag due to Faults and Induction Motor Starting

Characterization of Voltage Sag due to Faults and Induction Motor Starting Characterization of Voltage Sag due to Faults and Induction Motor Starting Dépt. of Electrical Engineering, SSGMCE, Shegaon, India, Dépt. of Electronics & Telecommunication Engineering, SITS, Pune, India

More information

Theory of Telecommunications Networks

Theory of Telecommunications Networks Theory of Telecommunications Networks Anton Čižmár Ján Papaj Department of electronics and multimedia telecommunications CONTENTS Preface... 5 1 Introduction... 6 1.1 Mathematical models for communication

More information

A DUAL TREE COMPLEX WAVELET TRANSFORM CONSTRUCTION AND ITS APPLICATION TO IMAGE DENOISING

A DUAL TREE COMPLEX WAVELET TRANSFORM CONSTRUCTION AND ITS APPLICATION TO IMAGE DENOISING A DUAL TREE COMPLEX WAVELET TRANSFORM CONSTRUCTION AND ITS APPLICATION TO IMAGE DENOISING Sathesh Assistant professor / ECE / School of Electrical Science Karunya University, Coimbatore, 641114, India

More information

Lecture 7 Frequency Modulation

Lecture 7 Frequency Modulation Lecture 7 Frequency Modulation Fundamentals of Digital Signal Processing Spring, 2012 Wei-Ta Chu 2012/3/15 1 Time-Frequency Spectrum We have seen that a wide range of interesting waveforms can be synthesized

More information

Spectrum Analysis - Elektronikpraktikum

Spectrum Analysis - Elektronikpraktikum Spectrum Analysis Introduction Why measure a spectra? In electrical engineering we are most often interested how a signal develops over time. For this time-domain measurement we use the Oscilloscope. Like

More information

CS 514: Wavelet Analysis of Musical Signals

CS 514: Wavelet Analysis of Musical Signals CS 54: Wavelet Analysis of Musical Signals Luke Tokheim http://www.cs.wisc.edu/ ltokheim/cs54/ May 3, 22 Contents Input Signals 2 Wavelets Used 2 2. Daubechies Wavelets....................................

More information

Two-Dimensional Wavelets with Complementary Filter Banks

Two-Dimensional Wavelets with Complementary Filter Banks Tendências em Matemática Aplicada e Computacional, 1, No. 1 (2000), 1-8. Sociedade Brasileira de Matemática Aplicada e Computacional. Two-Dimensional Wavelets with Complementary Filter Banks M.G. ALMEIDA

More information

FAULT DETECTION OF FLIGHT CRITICAL SYSTEMS

FAULT DETECTION OF FLIGHT CRITICAL SYSTEMS FAULT DETECTION OF FLIGHT CRITICAL SYSTEMS Jorge L. Aravena, Louisiana State University, Baton Rouge, LA Fahmida N. Chowdhury, University of Louisiana, Lafayette, LA Abstract This paper describes initial

More information

Optimum Wavelet Selection for Orthogonal Wavelet Division Multiplex (OWDM) Based Broadcasting System

Optimum Wavelet Selection for Orthogonal Wavelet Division Multiplex (OWDM) Based Broadcasting System T RANSACTIONS ON N ETWORKS AND C OMMUNICATIONS TNC SOCIETY FOR SCIENCE AND EDUCATION UNITED KINGDOM VOLUME 4, ISSUE 4 ISSN: 2054-7420 Optimum Wavelet Selection for Orthogonal Wavelet Division Multiplex

More information

Wavelet Applications. Scale aspects. Time aspects

Wavelet Applications. Scale aspects. Time aspects Wavelet Applications Wavelet Applications Wavelets have scale aspects and time aspects, consequently every application has scale and time aspects. To clarify them we try to untangle the aspects somewhat

More information

Lab 3.0. Pulse Shaping and Rayleigh Channel. Faculty of Information Engineering & Technology. The Communications Department

Lab 3.0. Pulse Shaping and Rayleigh Channel. Faculty of Information Engineering & Technology. The Communications Department Faculty of Information Engineering & Technology The Communications Department Course: Advanced Communication Lab [COMM 1005] Lab 3.0 Pulse Shaping and Rayleigh Channel 1 TABLE OF CONTENTS 2 Summary...

More information