Filtre/Narrow band pass filter: Rozdiel medzi revíziami

Z Kiwiki
Skočit na navigaci Skočit na vyhledávání
Riadok 38: Riadok 38:
 
=== Výpočet filtra ===
 
=== Výpočet filtra ===
  
Pre výpočet vlastností filtra použijeme jednoduchú tabeláciu prenosovej funkcie v jazyku Python. Vykreslenie charakteristiky je pomocou grafického balíku <ref name= "lit2"> [http://www.matplotlib.org], Matplotlib </ref>.
+
Pre výpočet vlastností filtra použijeme jednoduchú tabeláciu prenosovej funkcie v jazyku Python. Vykreslenie charakteristiky je pomocou grafického balíku matplotlib<ref name= "lit2"> [http://www.matplotlib.org], Grafická knižnica matplotlib </ref>.
 
   
 
   
 
<source lang="python" line>
 
<source lang="python" line>
Riadok 46: Riadok 46:
 
# Vstupne hodnoty
 
# Vstupne hodnoty
 
f=4000
 
f=4000
R1=1928
+
R1=1928; R2=101; R3=36644; R4=1928
R2=101
+
C1=20.63e-9;    C2=20.63e-9
R3=36644
 
R4=R1
 
C1=20.63e-9
 
C2=20.63e-9
 
  
 
# Vypocet admitancii
 
# Vypocet admitancii
Y1=1.0/R1
+
Y1=1.0/R1; Y2=1.0/R2; Y34=1.0/(R3+R4)
Y2=1.0/R2
 
Y34=1.0/(R3+R4)
 
  
 
# Tabelacia prenosovej charakteristiky
 
# Tabelacia prenosovej charakteristiky
ampl=[]
+
ampl=[]; freq=[]
freq=[]
 
 
for f in range(1000, 10000, 10):
 
for f in range(1000, 10000, 10):
 
p=(2*pi*f)*1.0j
 
p=(2*pi*f)*1.0j
 
K=-p*C2*Y1/(p*p*C1*C2 -( -(Y34)*( p*(C1+C2)+Y1+Y2 )  ) )
 
K=-p*C2*Y1/(p*p*C1*C2 -( -(Y34)*( p*(C1+C2)+Y1+Y2 )  ) )
ampl.append(abs(K))
+
ampl.append(abs(K)) # Vypocet absolutnej hodnoty
 
freq.append(f)
 
freq.append(f)
 
 
 
# Vykreslenie prenosovej charakteristiky
 
# Vykreslenie prenosovej charakteristiky
plot(freq,ampl)
+
plot(freq,ampl); grid(); show()
grid()
 
show()
 
 
</source>
 
</source>
  
Riadok 77: Riadok 68:
 
<center>  
 
<center>  
 
{|class="wikitable"
 
{|class="wikitable"
| align="center" width=500 | [[Súbor:nbpf_02.png ]]
+
| align="center" width=500 | [[Súbor:nbpf_02.png | 400px]]
 
|-
 
|-
 
| align="center" width=500 | '''Prenosová charakteristika filtra'''
 
| align="center" width=500 | '''Prenosová charakteristika filtra'''

Verzia zo dňa a času 07:17, 28. máj 2013

Zapojenie filtra

Nbpf 01.png
Zapojenie filtra

Analýza filtra

Analýzu vlastností filtra prevedieme pomocou zovšeobecnenej metódy uzlových napätí. [1]. Admitancie prvkov sú definované ako

[math] Y_1=1/R_1 [/math]
[math] Y_2=1/R_2 [/math]
[math] Y_{34}=1/(R_3+R_4) [/math]


Admitančná matica filtra pri použití ideálneho operačného zosilňovača má tvar

[math] \begin{bmatrix} Y_1 & -Y_1 & 0 & 0 \\ -Y_1 & p(C_1+C_2)+Y_1+Y_2 & -pC_2 & -pC_1 \\ 0 & -pC_2 & -Y_{34} & 0 \\ 0 & 0 & 1 & 0 \\ \end{bmatrix} [/math]


Komplexná napäťová prenosová funkcia filtra je určená pomerom subdeterminantov

[math] K(p) = \frac{D_{14}}{D_{11}}=(-1)^{(1+4)} \frac{p C_2 Y_1}{p^2 C_1 C_2 + Y_{34}*(Y_1+Y_2+p C_1+ p C_2 ) } [/math]

Výpočet filtra

Pre výpočet vlastností filtra použijeme jednoduchú tabeláciu prenosovej funkcie v jazyku Python. Vykreslenie charakteristiky je pomocou grafického balíku matplotlib[2].

 1 from scipy import *
 2 from pylab import *
 3 
 4 # Vstupne hodnoty
 5 f=4000
 6 R1=1928; R2=101; R3=36644; R4=1928
 7 C1=20.63e-9;     C2=20.63e-9
 8 
 9 # Vypocet admitancii
10 Y1=1.0/R1; Y2=1.0/R2; Y34=1.0/(R3+R4)
11 
12 # Tabelacia prenosovej charakteristiky
13 ampl=[]; freq=[]
14 for f in range(1000, 10000, 10):
15 	p=(2*pi*f)*1.0j
16 	K=-p*C2*Y1/(p*p*C1*C2 -( -(Y34)*( p*(C1+C2)+Y1+Y2 )  ) )
17  	ampl.append(abs(K))  # Vypocet absolutnej hodnoty 
18 	freq.append(f)
19 	
20 # Vykreslenie prenosovej charakteristiky
21 plot(freq,ampl); grid(); show()

Výstup programu

Nbpf 02.png
Prenosová charakteristika filtra

Odkazy a literatúra

  1. [1], Elektronika I, Analýza elektronických obvodov, strana 56
  2. [2], Grafická knižnica matplotlib