Design, Implementation, Comparison, and Performance analysis between Analog Butterworth and Chebyshev-I Low Pass Filter Using Approximation, Python and Proteus

Filters are broadly used in signal processing and communication systems in noise reduction. Butterworth, Chebyshev-I Analog Low Pass Filters are developed and implemented in this paper. The filters are manually calculated using approximations and verified using Python Programming Language. Filters are also simulated in Proteus 8 Professional and implemented in the Hardware Lab using the necessary components. This paper also denotes the comparison and performance analysis of filters using Manual Computations, Hardware, and Software.


Butterworth Filter
The Butterworth filter has a maximum flat response, that is, no passband ripple and a sharp roll-off. It is known as the "flat maximum magnitude" filter. [9] The increase in order results in a more non-linear phase response of the Butterworth Filter. Two parameters mathematically define this filter; the cut-off frequency and the number of poles. The frequency response is at most smooth in the passband and rolls to zero in the stopband. [4] The magnitude squared response of low pass Butterworth filter- Butterworth filters are used as high-frequency Low Pass filter detection, smoothing filters, and anti-aliasing filters.

Chebyshev-I Filter
Chebyshev filters may be analog or digital filters; Chebyshev comes in two types: Chebyshev Type-I and the other is called Chebyshev Type-II. Chebyshev Type-I filter has a steeper roll and more passband ripple. Chebyshev minimizes the error between the ideal and the real filter characteristics. As the ripples are present in the passband, Chebyshev has less ripple response in the passband and a more erratic response in the stopband. The response of the Chebyshev filter process is weak. [15] The Chebyshev Type reduces the absolute difference between the ideal and the practical frequency response over the entire passband. It filters by adding the same ripple in the passband. The transition is steeper from the passband to the stopband comparing to the Butterworth filter. [19] The magnitude squared response of low pass Chebyshev-I filter- 3 Softwares and Programming Language

Proteus 8 Professional
The Proteus Design Suite is used to design the filters and simulate to get the results. [11] 3.2 Python Python is a high-level, and general programming language. Python is used to decide if our measurements are accurate and to map the appropriate readings on the graph. It has been used to compare the filters as well. [17][10] Python Packages used: SciPy [21], NumPy [6][7], Matplotlib [8].
4 Design and Implementation of Analog Butterworth Low Pass Filter 4.1 Approximation [13]When n stages are cascaded, we get the nth order filter. The higher the value of n(order), the sharper cut-off. For nth order filter (Butterworth Polynomial of Order n) - If Hω is expressed in decibels- This is the design equation, which has been used throughout.

Design Introduction
Specifications that we used to efficiently design an Analog Low Pass Butterworth Filter--A passband gain of −0.5 dB was used.
-100 rad/s was assumed for the frequency up to which the pass band gain remained more or less constant. -An attenuation of −20 dB was used.
-From 200 rad/s the attenuation was started.

Design Procedure
-Calculating the Values of n and ω c : Using the given values of H 1 (ω) and H 2 (ω), we can solve from the equation (3)  . If the order of the filter, n is an even number, the location of the first Pole will be θ 2 , with respect to the x-axis. Whereas, if the order of the filter, n is an odd number, the location of the first Pole will be on the x-axis.
-Finding the Expression of H(s): Transfer Function can be generated from the calculations obtained. In case of a first order filter, the transfer function will be- In case of second order filter, the transfer function will be of this format- a + jb and a − jb being the poles, determined earlier.
-Circuit Components: Comparing equation (8), with the equation (6) for the First-order filter components and with the equation (7) for the Secondorder filter components, we get, 1st Second-Order Filter: R = 10kΩ,

Circuit Design
The computed components were assembled to create a Fifth-Order Butterworth Analog Low Pass filter. The following circuit was constructed with components and tested in the Hardware Lab and with software simulations.

Proteus Implementation
The circuit is constructed in the proteus environment, using the mathematically computed filter components. The circuit is then connected to the input voltage signal generator, where a square signal is fed. The value of input frequency was 15.91Hz ≈ 100 rad/s. The output voltage of the circuit is observed using a digital oscilloscope, which gives a desired result. The Frequency Response shows desired output by the simulation as well.  We can conclude by saying that our circuit simulation produced the desired output. The results show the stable pole locations on the left of the imaginary axis, which matches our calculations distinctively. As the order of the filter is odd, there will be pole location on the x-axis. The map shows a pole location on the x-axis. So, the mapping is correct.

Python
-Frequency Response Mapping: scipy.signal.freqs zpk function has been used to get the frequency response of the Butterworth filter designed, which shows accurate results.  The designed circuit was implemented with hardware components in the lab, which gave the following voltage output results.
where, ε = amount of ripple in the magnitude, and C n = Chebyshev coefficient, given by The Chebyshev Polynomials can be expressed in decibels as well.

Design Introduction
Same specifications that we used to design an Analog Low Pass Butterworth Filter was used to design the Chebyshev-I Filter. In case of Chebyshev design, ω 1 = ω c .

Design Procedure
-Calculating the Value of n: Given the equation (9), at ω 1 = ω c , the value of C n is 1. For the value of H 1 (ω), we can compute the value of ε from this equation. Similarly, using the value of ε obtained, and with the H 2 (ω), we can calculate the value of C n from this equation as well. Then with the value of ε and C n , we can get the order of the filter, n using the equation (10). -Determining the Poles of H(s): First we need to calculate the valid Butterworth poles, with obtained order of the filter, n. By Butterworth poles, it is meant that, we should calculate the poles of a Butterworth filter with this value. [14] Then, we need to calculate the factor k, from the following expression After obtaining k, we need to find the values of tanh k and cosh k.Then, we need to multiply the real part of the butterworth poles with tanh k. This is known as normalization. Now, the poles are denormalized by multiplying with cosh k to get the desired Chebyshev poles.
where, P is the magnitude of the poles, which is given by- And C 1 , C 2 , C 3 , C 4 are the Chebyshev Poles. -Determination of the Circuit Components: The procedures to calculate the circuit components, are same as the Butterworth circuit component calculation.

Manual Mathematical Calculations
n: With the specified values taken, the order of the filter, (n) is calculated. First the value of ε is calculated, and then it is used to obtain the value of C n . Then from the equation (10) we get the value of n = 3.07 ≈ 4. [13].

Circuit Design
The computed components were assembled to create a Fourth-order Chebyshev-I analog low-pass filter. The following circuit was constructed with components, and was tested in the Hardware Lab and also with software simulations. The circuit is constructed in the proteus environment, using the mathematically computed filter components. The circuit is then connected to the input voltage signal generator, where a square signal is fed. The value of input frequency was 15.91Hz ≈ 100 rad/s. The circuit's output voltage may be observed using a digital oscilloscope, which gives the desired result. The Frequency Response shows desired output by the simulation as well. We can conclude by saying that our circuit simulation produced the desired output.

Python
-Order and Cut-off Frequency Determination: scipy.signal.cheb1ord function has been used to determine the order of the filter n. Using this function we get, Order of the Filter, N : 4. The results match the mathematically calculated results.
-Pole-Zero Location Determination: scipy.signal.cheby1 function has been used to get the pole, zero locations of the Chebyshev-I filter. Using this we get, Pole Locations: −19.42936433 ± 103.61354304j, −46.90663488 ± 42.91813477j. -Pole and Zero Location Mapping: plotPoleZeros function is created to map the pole-zero location on an S-plane.
The results show the stable pole locations on the left of the imaginary axis, which matches our calculations distinctively. As the order of the filter is even, there will be no pole on the x-axis. So, the mapping is correct, as there are no poles on the x-axis. -Frequency Response Mapping: scipy.signal.freqs zpk function has been used to get the frequency response of the Chebyshev-I filter designed, which shows accurate results.

Hardware Implementation
The developed circuit was implemented with hardware components in the lab, which provided the following voltage output values. 6 Comparison and Performance Analysis

Butterworth Filter Performance Analysis
The Butterworth filter is the ideal solution between attenuation and phase reaction. It does not have a ripple in the passband or stopband, and because of this, it is often referred to as a maximum flat filter. The Butterworth filter achieves its flatness at the cost of a comparatively broad transition area from the passband to the stopband, with average transient characteristics. [22][3] -A Butterworth filter does not have any ripple in the passband and the stopband. The designed filter does not have any ripples as well.
-If we increase the order of the filter, it will move closer to its ideal response.
But, if the order is increased, the amount of components increases as well. -In the simulation a slight fluctuation in the passband can be seen, which is not a ripple or ringing. It is basically due to the approximation of the values of the capacitors. -We can see the sharp roll-off around the cut-off frequency, which is the desired outcome. -Hardware implementation of the frequency response characteristics is slightly off due to the noise and other external occurrences, but gives similar results as the the software implementations.
Butterworth's ideal frequency response is unattainable as it creates an intense ripple of the passband. [1] Our Hardware and Software, both simulations provide similar results. We can conclude that the designed Butterworth filter gives the desired effect, both in Hardware and Software.

Chebyshev-I Filter Performance Analysis
The inclusion of the passband ripple as a parameter makes the Chebyshev filter's specification process a little more complicated than for the Butterworth filter, but it also increases versatility. The nominal gain of the filter is equal to the overall passband gain of the filter. Chebyshev Type I filters have ripple in the passband and monotone in the stopband. As such, the Type I filters roll off smoother than the Butterworth filters, but at the cost of a higher passband ripple. [2] -Chebyshev-I filters have ripple in the passband. Our calculations show slight ripple in the passband, but this is due to the lower value of maximum ripple allowed ε. If we increase the value of ε, then we will find a large amount of ripple. But, as the calculation demands, the filter is correctly configured to give the expected response. -As the characteristics of Chebyshev-I filter suggests, it provides maximally flat stopband. -Comparatively has faster roll-off. But, it is at the cost of higher passband ripple. -The increase of the order of the filter will result in a more ideal response.
-Hardware implementation of the Frequency Response Characteristics is marginally off due to noise and other external occurrences, but achieves comparable effects as mathematical calculations and software implementations. -Some Mathematical and Software calculations differ due to the approximation values, which can be overlooked. Esp. the pole-zero locations calculated manually and obtained from the python program differs slightly, which can be ignored.
Both our hardware and software simulations produce very similar findings. However, we can infer that the designed Chebyshev-I filter gives the expected results, both in Hardware and Software.

Comparison between Butterworth and Chebyshev-I Filter
The Butterworth filters are designed to provide as flat a frequency response as possible in the passband. [5] On the other hand, Chebyshev-I filters are analog or digital filters with a roll-off steeper than Butterworth filters and have ripple in the passband. Through the experiment, the key comparison factors obtained are, -We can see that, for the same requirements, the number of poles in Butterworth (n = 5) is higher relative to the Chebyshev filter (n = 4), that is, the order of the Chebyshev filter is smaller than that of Butterworth. This is a tremendous benefit, since fewer discrete components would be used to create a filter. -Chebyshev has a steeper roll-off near the cut-off frequency relative to Butterworth. While the monotony of the pass band is affected. This means that the Chebyshev filter at the same order attenuates the stop band frequencies in a better way than the Butterworth filter. Therefore, the same order Chebyshev low-pass filter will operate more efficiently than the Butterworth low-pass filter when disposing of undesirable frequencies, however, if the Butterworth filters, it could be a better alternative if a ripple-less and maximally flat solution is required. Thus, the application case of the filters determines the usability in certain situations.
[12] -The Chebyshev filter has a larger decrease in magnitude with an increase in frequency than Butterworth. So, the derivative of Chebyshev's gain is going to be more detrimental than the Butterworth filter. Butterworth and Chebyshev-I are two types of analog filters that are used for several purposes. This study's main objective is to design, implement, compare, and analyze these two filters correctly and efficiently. The results obtained from the Mathematical Calculations, Software and Hardware implementations are quite identical, suggesting that the tests have been carried out successfully and that the purpose of this research has been accomplished.