Design of Distortionless Analog Filter Based on Matlab

Publisher:知识阁楼Latest update time:2010-01-28 Keywords:Matlab Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

O Introduction

The design of analog filters generally includes two aspects: determining the filter transfer function H(s) based on the technical indicators, i.e. the amplitude-frequency characteristics of the filter; and designing the actual network to implement this transfer function. The key to designing the filter H(s) is to find an approximation function, and there are currently many approximation functions. However, no matter which approximation function is used, very tedious calculations are required, and a table lookup is required based on the calculation results.

Matlab is a simple and efficient high-level language. It is a rich and powerful analysis tool. Its application covers almost all scientific and engineering computing fields. Matlab provides a wealth of functions for analog filter design. Through programming, it is easy to realize low-pass, high-pass, band-pass, and band-stop filters, and can draw the amplitude-frequency and phase-frequency characteristic curves of the filter, which greatly simplifies the design of analog filters. This paper introduces the design and implementation of a distortion-free analog filter using Matlab, and gives the simulation results of the amplitude-frequency and phase-frequency characteristics and the eye diagram after the signal passes through the distortion-free filter.

1 Distortionless filter design based on Matlab

Design requirements: A digital baseband signal with a frequency of 8 kHz is converted into an analog signal through digital/analog (D/A) conversion. The analog signal is input into the distortion-free filter, and the attenuation is required to be ~6 dB at 8 kHz; after 16 kHz (cut-off frequency), the attenuation reaches more than -60 dB. The purpose of this is to suppress harmonic interference and reduce the fluctuation of the waveform after the cut-off frequency after the analog signal passes through the distortion-free filter.

The distortion-free filter consists of three parts, namely, low-pass filter, band-stop filter and phase shift circuit. The low-pass filter is used to pass low-frequency signals within 8 kHz; the band-stop filter is used to suppress 16 kHz signals. After being cascaded with the previous low-pass filter, it can make the attenuation of the signal after 16 kHz reach more than 60 dB, effectively suppressing the interference of each harmonic and reducing the fluctuation of the waveform after 16 kHz; the phase shift circuit is used to compensate for the phase offset of the previous two circuits, so that the phase characteristic of the entire distortion-free filter becomes a straight line.

1.1 Low-pass filter design

The low-pass filter uses a Butterworth filter because it has a relatively flat amplitude-frequency characteristic and a good linear phase-frequency characteristic, and is often used as the primary of the filter. In Matlab, the [b, a] = butter(n, wn, 's') statement is used to implement the design of the Butterworth filter. Among them, [6, a] are the coefficients of the filter transfer function polynomial; n is the order of the filter; wn is the angular frequency at 3 dB; 's' represents the analog filter.

In this design, an 8th order Butterworth filter is used, and the frequency at -3 dB is 8 kHz. The main procedures are as follows:

Main procedures

Finally, the amplitude-frequency and phase-frequency characteristics of the low-pass filter are plotted as shown in Figure 1(a). The actual circuit uses the Max291 chip to implement the Butterworth filter, which is equivalent to an 8th-order Butterworth filter, as shown in Figure 1(b).

The amplitude frequency of the low pass filter

1.2 Band-stop filter design

The function of a band-stop filter (also known as a notch filter) is to suppress a certain frequency signal and pass other frequency signals. In Matlab, the statement [b, a] = butter (n, Wn, 'stop', 's') is used to implement a band-stop filter, where [b, a] are the coefficients of the filter transfer function polynomial; n is the order of the filter; wn = [fl*2*pi fu*2*pi] are the angular frequencies at the lower end of the stop band - 3 dB and the upper end - 3 dB; 's' represents the analog filter. The main program is as follows:

Main procedures

Similar to the amplitude-frequency and phase-frequency characteristics of the low-pass filter, the amplitude-frequency and phase-frequency characteristics of the band-stop filter are shown in Figure 2(a). In this design, the actual circuit uses a VCVS type second-order band-stop filter as shown in Figure 2(b). The values ​​of resistors R1, R2, R3, and capacitor C1 need to be determined, and their calculation formulas can be obtained through Matlab programming, and finally the corresponding nominal values ​​are selected according to the calculation results.

Band-stop filter amplitude frequency

1.3 Cascade of low-pass filter and band-stop filter

Cascade the low-pass and band-stop filters designed previously so that the amplitude-frequency characteristics of the circuit after cascading can meet the design requirements, that is, the attenuation at 8 kHz is -6 dB; the attenuation after 16 kHz (cut-off frequency) reaches more than -60 dB. If the requirements cannot be met, the Q value in the band-stop filter is continuously modified according to the simulation results until the design requirements are met. In Matlab, the conv function is used to realize the cascade of the two circuits. The main program is as follows:

Main procedures

b3 and a3 are the polynomial coefficients of the transfer function after the low-pass and band-stop filters are cascaded. Similar to the amplitude-frequency and phase-frequency characteristics of the low-pass filter, the amplitude-frequency and phase-frequency characteristics of the cascade circuit are shown in Figure 3. It can be seen that when Q is 0.7, the amplitude-frequency characteristic meets the design requirements, but the phase-frequency characteristic is not a straight line within 8000-Hz. In order to prevent the output signal from being distorted, a phase shift filter must be added to make the total phase shift characteristic a straight line.

Amplitude-frequency of low-pass and band-pass filters cascaded

1.4 Phase-shift filter design and phase-frequency characteristics of distortion-free filters

In this design, a first-order inverting gain all-pass filter circuit is used, and its transfer function is:

Band-stop filter amplitude frequency

The circuit diagram is shown in Figure 4. The low-pass, band-stop, and phase-shift circuits are cascaded to form a distortion-free filter. In Matlab, the phase-frequency characteristic curve of the phase-shift and distortion-free filter can be obtained by programming.

Practical Circuit of Phase Shift Filter

The main procedures are as follows:

Main procedures

%b, a are the transfer function polynomial coefficients of the distortion-free filter, where b3, a3 are the transfer function polynomial coefficients after the low-pass and band-stop filters are cascaded. The final phase curve is shown in Figure 5. It can be seen that the phase-frequency characteristic of the distortion-free filter is a straight line.

The actual circuits of each part are cascaded to obtain the actual circuit of the distortion-free filter. The input analog signal and output signal eye diagram of the distortion-free filter are shown in Figure 6. As can be seen from the figure, the eye diagram trace is clear. The eyes are large and straight, and the intersections between the eyes are clear. This shows that the amplitude-frequency and phase-frequency characteristics of the distortion-free filter are good and can meet the design requirements.

Figure 5 Phase-shift and frequency characteristics of distortion-free filters; Figure 6 Eye diagrams of input and output signals

2 Conclusion

Using Matlab to design analog filters is simple and convenient, and avoids complex calculations and table lookups. Through simulation, the frequency response curve after parameter modification can be intuitively seen. This design can meet the requirements of system design, avoid the trouble of repeated adjustment of hardware circuits, and greatly improve work efficiency. Matlab can not only be used for the design of analog filters, but also for the design of digital filters such as FIR and IIR. It is a very powerful tool in filter design.

Keywords:Matlab Reference address:Design of Distortionless Analog Filter Based on Matlab

Previous article:Rapid evaluation of power VDMOS reliability based on Arrhenius model
Next article:Design and Generation of Optimal Circuit Test Sets Based on BP Neural Network

Recommended ReadingLatest update time:2024-11-16 20:27

Remote data acquisition and interactive system design
In the process of scientific and technological development, the sharing of resource information is of great significance to the improvement of scientific research level. At present, in some enterprises, colleges and universities and scientific research institutions, due to the limitations of management system and eq
[Test Measurement]
Remote data acquisition and interactive system design
Matlab basic functions
Matlab basic functions abs : absolute value acos : arccosine acosh : archyperbolic cosine function acot : arccotangent acoth : archyperbolic cotangent acsc : arccosecant acsch : archyperbolic cosecant angle : phase angle asec : arcsecant asech : archyperbolic secant a
[Embedded]
Bloom Filter Concept Analysis
Storage and query of routing information In the reference, the author proposed to implement semantic routing in wireless sensor networks. The specific method is to store a semantic search table in each node, and each point in the search table corresponds to a regional classification. Each node has only a limited num
[Analog Electronics]
Bloom Filter Concept Analysis
How to use ACE in Python or MATLAB to quickly evaluate data converters
How to use ACE in Python or MATLAB to quickly evaluate data converters summary The evaluation board (EVB) and its accompanying software feature plug-and-play functionality, making it easy to evaluate the performance of ADI products. Its graphical user interface (GUI) provides an intuiti
[Analog Electronics]
How to use ACE in Python or MATLAB to quickly evaluate data converters
Harbin Institute of Technology and other universities banned from using US MATLAB software
Today (12), Foreign Ministry Spokesperson Hua Chunying held a regular press conference. Regarding the recent news that Harbin Institute of Technology and Harbin Engineering University were banned from using MATLAB by MathWorks, Hua Chunying said that any suppression could not stop the pace of China's scientific and te
[Mobile phone portable]
Simulation Analysis of Current-to-Frequency Ratio I/F Control System of Permanent Magnet Synchronous Motor in Matlab/Simulink
Preface This chapter uses the current-frequency ratio I/F control method to drive the rotation of the permanent magnet synchronous motor. First, the control principle of the current-frequency ratio I/F is analyzed, and then the simulation analysis of the current-frequency ratio I/F control system of the permane
[Embedded]
Simulation Analysis of Current-to-Frequency Ratio I/F Control System of Permanent Magnet Synchronous Motor in Matlab/Simulink
ML4835 composite PFC/CFL small fluorescent lamp based on Matlab circuit
Abstract: This paper introduces a general method for simulating power electronic circuits using Matlab. This method can obtain a large signal nonlinear simulation model of power electronic circuits, providing a convenient and fast means for simulation research of power electronic circuits. Keywords: Simulat
[Power Management]
ML4835 composite PFC/CFL small fluorescent lamp based on Matlab circuit
Latest Analog Electronics Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号