Dolní propust pro předzpracování videosignálu

 

Martin Kolář
kolarm3@fel.cvut.cz


Članek obsahuje příklad postupu návrhu filtru typu Doplní Propust, který má sloužit jako antialiasingový filtr pro předzpracování obrazového  signálu  pro digitalizaci. Pro jeho realizaci byla použita funkční simulace pasivního LC filtru a jako aktivní prvek byl použit transkonduktanční operační zesilovač OTA-C


Obsah:

Zadání
Sestavení tolerančního schématu
Výběr aproximace
Výběr realizační struktury
Návrh filtru s ideálními prvky
Ověření návrhu a realizace
Vyrovnání skupinového zpoždění
Realizace proudového módu
Alternativní návrh
Shrnutí návrhu
Použitá literatura

 

1. Zadání

DP pro předzpracování video signálu

DP má sloužit jako antialiasingový filtr pro předzpracování obrazového signálu pro digitalizaci. Propustné pásmo: 0 - 4,5 MHz / ap < 0,5 dB. Nepropustné pásmo volte s ohledem na vzorkovací kmitočet 12 MHz a 8-bitovou digitalizaci.  Doplňkovým požadavkem je vyrovnání skupinového zpoždění filtru tak, aby bylo konstantní v celém propustném pásmu s maximální chybou ± 20 %. 
Doporučení: 
Realizujte jako aktivní filtr RC. Zvažte možnost řešení v proudovém módu.

 

2. Sestavení tolerančního schématu

a)

Nezpřísněné hodnoty tolerančního schématu:

 
 

 

Mez propustného pásma fp:   4,5 MHz
Mez propustného pásma fs:   6 MHz
ap   0,4 dB
as   48,2 dB

 
  Mez propustného pásma - volíme na základě zadaných hodnot pro propustné pásmo.  
Mez nepropustného pásma - volíme polovinu vzorkovacího kmitočtu, aby nedocházelo k překrývání spekter při dalším zpracování signálu.  
ap - volíme na základě zadání.
as - volíme na základě počtu bitů při vzorkování.
 
  image1.gif (17879 bytes)  
  kde n je počet bitů při vzorkování.  
     

b)

Zpřísnění požadavků na toleranční schéma s ohledem na rezervy nutné pro respektování skutečných vlastností obvodových prvků při realizaci:

 
 
1) Na útlumové ose
  image2.gif (17879 bytes)
  image3.gif (17879 bytes)
2) Na kmitočtové ose
 
Provozní teploty filtru: image6.gif (17879 bytes)
Maximální teplota působící na filtr: image7.gif (17879 bytes)
  Pro mez propustného pasma
  image4.gif (17879 bytes)
  Pro mez nepropustného pásma
  image5.gif (17879 bytes)
 
 

Zpřísněné hodnoty toleračního schématu

 
 

Mez propustného pásma fp:   4509000 Hz
Mez propustného pásma fs:   5988000 Hz
ap   0,2 dB
as   51,2 dB

 

 

3. Výběr aproximace

Porovnání vypočtených parametrů jednotlivých aproximací pro zpřísněné toleranční schéma

Aproximace Stupeň Nová hodnota as
Butterworthova 27 53,2617
Čebyševova 11 56,1259
IČebyševova A 11 56,1259
IČebyševova B 12 62,9818
Cauerova 6 51,6679

Butterworthova aproximace má sice monotonní průběh v propustném pásmu, ale má příliš veliký stupeň (veliký počet součástek).

Čebyševova aproximace má nejhorší vlastnosti skupinového zpoždění, dost vysoký stupeň a i nevýhodu zvlněného propustného pásma.

Inverzní Čebyševova aproximace má sice poměrně vysoký stupeň, ale má nezvlněné propustné pásmo tím dobré skupinové zpoždění v propustném pásmu. Proto se jeví jako nejvýhodnější pro realizaci daného filtru.

Cauerova aproximace má sice nejmenší stupeň, ale její nevýhody jsou zvlněné propustné pásmo a ne příliš dobré skupinové zpoždění.

Vzájemné porovnání přesnosových funkcí vypočtených pomocí internetové stránky [4] a skupinových zpoždění jednotlivých aproximaxí je provedeno v MATLABu (porovnej.m, porovnej.doc).

 

4. Výběr realizační struktury

Při realizaci daného aktivního filtru jsem vzhledem k velikosti pracovních frekvencí jako aktivní prvek použil transkonduktanční operační zesilovač (OTA-C), který umožňuje dosáhnout vyššího mezního kmitočtu i rychlosti přeběhu (umožňuje zavedení proudové zpětné vazby).
Pro návrh obvodové struktury jsem použil funkční simulaci pasivního LC filtru, která je výhodná pro realizaci filtrů vyšších řádů s OTA-C a je velmi dobře aplikovatelná ve filtrech v proudovém módu. Výsledný filtr by se realizoval v integrované podobě.
Nevýhodou tohoto řešení je obtížná optimalizace dynamických poměrů uvnitř obvodové struktury filtru a existence "plovoucích" kapacitorů, která v případě monolitické integrace filtru klade vyšší nároky na výrobní technologii.

 

5. Návrh filtru s ideálními prvky

Při návrhu funkční simulace vycházíme z příčkové struktury vytvořené pro danou aproximaci. Původně zamýšlené řešení, pomocí Invezní Čebyševovy aproximace, se pro daný filtr nedá použít kvůli zápornému prvku v příčkové struktůře LC. Jako náhradu proto volím též vhodnou Caerovu aproximaci, která má sice zvlnění v propustném pásmu, ale nejmenší stupeň a skupinové zpoždění jen o trochu horší než Inverzní Čebyšev.

Výchozí příčková struktura:

obr1.gif (17879 bytes)

Obr.1: Zapojení výchozí normované dolní propusti

ri = 1.0; c1 = 1.1305; l2 = 1.0907; c2 = 0.2785; c3 = 1.6773; l4 = 0.9480; c4 = 0.5437; c5 = 1.7049; l6 = 0.8944; rz = 0.65.

Z ekvivalentního obvodu pro normovanou dolní propust sestavíme obvodové rovnice (proudy podélných větví a napětí příčných větví, proudy vynásobíme pomocným normovacím odporem R).

obr2.gif (17879 bytes)

Obr.2: Ekvivalentní obvod k modifikovaným rovnicím

image8.gif (17879 bytes)     image9.gif (17879 bytes)

Tuto soustavu rovnic realizujeme přímo s využitím integrátorů OTA-C. Tomu odpovídá následující blokové uspořádání.

obr3.gif (17879 bytes)

Obr.3: Obvodové řešení se zpětnovazebními integrátory

Konkrétnímu obvodovému řešení na bázi integrátorů OTA-C odpovídá následující zapojení, které je přímou realizací blokové struktury. Je použita varianta se zjednodušenou realizací výstupní větve, s volbou pomocného normovacího odporu R = rz. Při výpočtu parametrů porovnáme přenosy jednotlivých větví blokové struktury s přenosy integrátoru OTA-C. Platí tedy

image10.gif (17879 bytes)

přičemž volitelným parametrem je gm.

obr4.gif (17879 bytes)

Obr.4: Zapojení výsledného filtru s integrátory OTA-C

Normované hodnoty prvků pro dané zapojeni:

image11.gif (17879 bytes)     image12.gif (17879 bytes)     image13.gif (17879 bytes)
obr1.gif (17879 bytes)

Pro nastavení optimálních dynamických poměru uvnitř obvodu, bez dalších pomocných funkčních bloků zařazených do jednotlivých dílčích smyček obvodové struktury, použijeme pomocný napěťový zesilovač zařazený na výstup filtru. Tento zesilovač bude mít zesílení A = 1/|H(0)|, kde |H(0)| reprezentuje základní přenos filtru pro image31.gif (851 bytes)= 0. Dodatečným zesílením se dosáhne úpravy konstanty přenosu h0 = A|H(0)| na jednotkovou hodnotu a zároveň se dynamická převýšení vyrovnají na úroveň zesílení výstupního signálu.

Kmitočtové a impedanční odnormování:

obr1.gif (17879 bytes)

S ohledem na realizovatelné hodnoty kapacit kondenzátorů uvažujeme hodnotu transkonduktance OTA gm skut = 300 µS.

Odnormované hodnoty prvků:

    obr1.gif (17879 bytes)       obr1.gif (17879 bytes)       obr1.gif (17879 bytes)
obr1.gif (17879 bytes)

6. Ověření návrhu a realizace

a)

S ideálními součáskami

 
 

Ideální transkonduktanční zesilovač je v principu napětím řízený zdroj proudu, charakterizovaný reálnou kmitočtově nezávislou transkonduktanci gm. Pro kterou platí i0 = gmui.

Výpis programu pro PSpice:   filtr.cir

  
          V1 1 0 ac 1;                      Vstupní napětí s modulem 1 a nulovou fází          
          R  1 0 10G;		

          G1 4 0 1 2 -0.195e-3;             OTA-C G01    
          R1 4 0 10G;		
          G2 4 0 0 4 -0.3e-3;               OTA-C G02
          R2 4 0 10G;		
          G3 5 0 2 3 -0.3e-3;               OTA-C G1  
          R3 5 0 10G;		 
          G4 2 0 4 5 -0.3e-3;               OTA-C G2  
          R4 2 0 10G;		
          G5 3 0 5 6 -0.3e-3;               OTA-C G3  
          R5 3 0 10G; 		
          G6 6 0 3 7 -0.3e-3;               OTA-C G4  
          R6 4 6 10G;		
          G7 7 0 6 8 -0.3e-3;               OTA-C G5  
          R7 7 0 10G;		 
          G8 8 0 7 8 -0.3e-3;               OTA-C G6  
          R8 8 0 10G;		
  
          CI1 2 0  7.78pF;        
          CI2 5 0 17.77pF;
          CI3 3 0 11.54pF;        
          CI4 6 0 15.44pF;
          CI5 7 0 11.73pF;        
          CI6 8 0 14.57pF;
    
          Cx2 2 3 1.92pF;         
          Cx4 3 7 3.74pF;
  
          E1 9 0 8 0 -2.5;                  Zesilovač A se zesílením 1/|H(0)|	
  
         .ac lin 100 100 100Meg
         .probe
         .end
       

Kde odpory RR9 jsou pouze pomocné, pro spuštění simulace v programu PSpice.

graf1.gif (14708 bytes) graf2.gif (12914 bytes)

Graf 1: Průběh v nepropustném pásmu

Graf 2: Průběh v propusném pásmu

Zvlnění v propustném pásmu odpovídá požadovaným hodnotám na filtr. Kmitočet v nepropustném pásmu při -51,2 dB neodpovídá frekvenci požadované v přísněných požadavcích. Tato chyba není způsobena špatným návrhem nebo simulací, ale použitím špatné přenosové funkce.

 

 

b)

S reálnými součáskami

 
 

Reálný OTA má kmitočtově závislou transkonduktanci gm = gm(jimage31.gif (851 bytes)), ale na rozdíl od zesílení OZ je kmitočtová závislost gm podstatně příznivější a kmitočet dominantního pólu je běžně v oblasti stovek kHz až jednotek MHz. Vstupní a výstupní impedance jsou konečné. S ohledem na proudový (tj. vysokoimpedanční) výstup OTA je výraznější vliv výstupní impedance.

 

 
 

Model OTA:

obr1.gif (17879 bytes)

Obr.5: Model transkonduktančního zesilovače OTA

Kde rezistor R0 volíme 1000 až 10000 krát 1/gm. Kondenzátory Ci a Co mají velikost jednotky až desítky pF. Při návrhu lze s nimi počítat (jejich hodnoty se sčítají s hodnotami kondenzátoru CI) a při reálných vlastnostech se potom neuplatní.

Při volbě R0 1000 krát 1/gm a neuvažování vstupních a výstupních kapacit se zvlnění v propustném pásmu zvětšilo z 200 mdB na 223 mdB, hodnota v nepropustném pásmu při 51,2 dB se téměř nezměnila.   Při volbě těchto parametrů náhradního modelu OTA filtr splňuje požadavky zadání.

 

obr6.gif (17879 bytes)

Obr.6: Uvažovnání realních vlasností transkonduktančního zesilovače OTA

Obrázek naznačuje jak se vstupní a výstupní kapacity zesilovačů OTA přičítají k jednotlivým kapacitám integrátorů. Pokud budeme znát přibližné hodnoty vstupních a výstupních kapacit zesilovačů OTA, potom o tyto hodnoty zmenšíme integrační kapacity (při návrhu filtrů z OTA-C zesilovači je proto vhodné volit takové hodnoty gm, aby šli vypočtené kondenzátory integrátoru realizovat i při odečtení parazitních kapacit). Tím se neuplatní vstupní a výstupní kapacity při reálných vlastnostech. Kapacity připojené paralelně ke zdroji napětí a na zemnící svorky se neuplatní. Jediné kapacity, které by se mohli negativně projevit jsou kapacity ve smyčce 1 (uzel vi).
Při simulaci s kapacitou mezi body vi a zemí o velikosti 4 pF nedošlo k téměř žádné změně amplitudové charakteristiky filtru. Při velikosti kapacity 40 pF došlo ke zvětšení zvlnění v propustném pásmu na 6 dB a k posunutí meze propustného i nepropustného pásma viz. Graf 3. parkap.cir

graf3.gif (16592 bytes)

Graf 3: Simulace s uvažováním parazitních kapacit v uzlu vi

 

7. Vyrovnání skupinového zpoždění

a)

Vyrovnání skupinového zpoždění zpřísněním kmitočtu propustného pásma

 

Jednou z možností jak vyrovnat skupinové zpoždění v propustném pásmu je zpřísnit kmitočet propustného pásma fp. Zvýšením kmitočtu fp dojde k rozšíření propustného pásma a zúžení přechodového pásma a tím k posunutí maxima skupinového zpoždění na hodnotu nového kmitočtu propustného pásma. Čímž dojde k částečnému vyrovnání skupinového zpoždění vzhledem k původnímu propustnému pásmu. Vlivem zpřísňování dochází ovšem také k nárůstu stupně aproximace (počtu součástek).

Závěr:

Pro Cauerovu aproximaci jsem zpřísňoval hodnoty fp postupně na 5 MHz, 5,2 MHz a na 5,5 MHz. Skupinové zpoždění se ani při zvýšení kmitočtu fp na hodnotu 5,5 MHz (±45%) nepovedlo vyrovnat tak, aby splňovalo požadované zadání. Dosažené průběhy jsou porovnány na grafech Korigování skup. zp. zpřísněním fp na 5MHz, 5.2MHz, 5.5MHz - Cauer zpris_fp.m, grdelays.m, rozbal.m.

 

b)

Vyrovnání skupinového zpoždění pomocí fázovacích článku

 

Obecně

Skupinové zpoždění image37.gif (877 bytes) součinu přenosových funkcí H(p) = H1(p)H2(p) je dáno součtem skupinových zpoždění image35.gif (1000 bytes).

Pro vyrovnávač skupinového zpoždění obecně platí

image20,gif (17879 bytes)

 
kde K je konstanta,
  image32.gif (933 bytes) je skupinové zpoždění filtru,
  image36.gif (926 bytes) je skupinové zpoždění vyrovnavače, které je doplňkovou funkcí charakteristiky filtru,
  image34.gif (896 bytes) je povolená změna skupinového zpoždění v korigovaném kmitočtovém pásmu.

 

 

Postup při korigování skupinového zpoždění

Při analýze vyrovnávačů skupinového zpoždění pracujeme, s normovanými veličinami. Označíme-li image37.gif (877 bytes) jako nejvyšší kmitočet korigovaného pásma image38.gif (886 bytes), pak pro normování kmitočtu platí vztah image39.gif (968 bytes) a normované skupinové zpoždění je dáno vztahem image40.gif (943 bytes)

image21.gif (17879 bytes)

Z daných vstupních normovaných parametrů a tabulek pro vyrovnávače skupinového zpoždění prvního a druhého řádu viz. skripto [2] se snažíme složit takové výsledné skupinové zpoždění, aby splňovalo požadavky zadání. U fázovacích článků 2. řádu volíme parametr Q podle tabulky 7.3 v závislosti na potřebné velikosti skupinového zpoždění doplňkového ke zpoždění daného filtru.

Vztah přenosové funkce a skupinového zpoždění fázovacího článku 2. řádu:

image22.gif (17879 bytes)

 

 

Realizace fázovacího článku pomocí zesilovačů OTA-C

Pro realizaci fázovacího článku je možné využít vícevstupové uspořádání Bikvadu OTA-C.

obr7.gif (17879 bytes)

Obr.7: Bikvad OTA-C pro realizaci fázovacího článku

Jednotlivé hodnoty parametrů pro realizaci fázovacího článku získáme porovnáním přenosové funkce fázovacího článku druhého řádu s přenosovou funkcí daného zapojení:

image23.gif (17879 bytes)

postupným zjednodušováním dostaneme

image24.gif (17879 bytes)

z toho volíme gm4,C1, C2 známe hodnoty image41.gif (877 bytes), Q a zbývající hodnoty dopočítáme.

Fázovací články druhého řádu pro vyrovnání skupinového zpoždění na požadovanou hodnotu mají tyto parametry (jejich hodnotu jsem určil v MATLABu pomocí vyrovsz.m, grdelays.m, rozbal.m):

image25.gif (17879 bytes)     image26.gif (17879 bytes)     image27.gif (17879 bytes)

Hodnoty fázovacích článků potom jsou:

image28.gif (17879 bytes)     image29.gif (17879 bytes)     image30.gif (17879 bytes)

 

 

Schéma pro měření filtru s fázovacími články:

obr9.gif (17879 bytes)

Obr.8: Zapojení pro měření filtru s fázovacími články

graf4.gif (16300 bytes)

Graf 4: Simulace filtru s fázovacími články skupzp.cir

Při simulaci filtru s fázovacími články s ideálními součástkami vyšlo skupinové zpoždění filtru shodné jako při vyrovnávání skupinového zpoždění přenosové funkce filtru v MATLABu. Fázovací články nijak neovlivnily amplitudovou charakteristiku. Při vyrovnání pomocí těchto tří fázovacích článků je chyba v celém propustném pásmu ±12,4 %.

 

8. Realizace proudového módu

Filtr v proudovém módu vytvoříme přidruženou transformací z filtru pracujícího v napěťovém módu. Transformace zachovává vlastnosti výchozího obvodu.

Postup:

  1. Zaměníme vstup a výstup obvodu při zachování impedančních poměrů zakončení.

    obr10.gif (17879 bytes)

  2. Pasivní síť obvodu zachováme beze změny.
  3. U dvojbranových prvků změníme opět vstupní a výstupní brány při dodržení podmínky, že se nesmí změnit charakter impedance brány (napětím řízený zdroj proudu - OTA zůstane napětím řízený zdroj proudu).

Výsledné schéma filtru v proudovém módu:

obr11.gif (17879 bytes)

Obr.9: Zapojení filtru s integrátory OTA-C v proudovém módu

Výpis programu pro PSpice:   proudmod.cir
  
    I1 1 0 ac 1;

    G8 2 1 1 0 -0.3e-3; G7 3 1 2 0 -0.3e-3;
    G6 4 2 3 0 -0.3e-3; G5 5 3 4 0 -0.3e-3;
    G4 6 4 5 0 -0.3e-3; G3 7 5 6 0 -0.3e-3;
    G2 0 7 7 0 -0.3e-3; G1 8 6 7 0 -0.195e-3;

    Rp 8 0 0.00001p;

    CI6 1 0 14.57pF;  CI5 2 0 11.73pF;
    CI4 3 0 15.44pF;  CI3 4 0 11.54pF;
    CI2 5 0 17.77pF;  CI1 6 0 7.78pF;

    Cx2 6 4 1.92pF;   Cx4 4 2 3.74pF;
  

kde Rp je pomocný snímací odpor pro určení výstupního proudu.

graf6.gif (16100 bytes) graf5.gif (10600 bytes)

Graf 5: Průběh v nepropustném pásmu

Graf 6: Průběh v propusném pásmu

9. Alternativní návrhy

10. Shrnutí návrhu

Původně zamýšlené řešení, Invezní Čebyševovou aproximací, se pro daný obvod nedalo použít kvůli zápornému prvku v příčkové struktuře LC. Proto jsem jako náhradu zvolil též vhodnou Cauerovu aproximaci, která má ze zbývajících aproximací nejvhodnější vlastnosti pro realizaci daného filtru a příčková struktura u ní šla realizovat. Navržený filtr je podobný jako v příkladu 6.8 na straně 181 [1].
Realizaci filtru jsem ovšem prováděl z přenosové funkce (vypočtené pomocí internetové stránky [4]), která nesplňuje požadavky tolerančního schématu. Pro splnění zadání by stačilo přepočítat hodnoty filtru (po dalším zpřísnění tolerančního schématu).
Při simulaci filtru v napěťovém a proudovém mód vycházeli srovnatelné výsledky.
Skupinové zpoždění v propustném pásmu realizovaného filtru jsem vyrovnal pomocí třech fázovacích článků druhého řádu s OTA-C zesilovači z chyby ± 64% na ± 12,4%.
Při simulaci filtru spolu s fázovacími články s modelem transkonduktančního zesilovače OTA-C podle obrázku 5 nebyli splněny požadavky jak pro amplitudovou charakteristiku tak pro skupinové zpoždění ani pro parametry modelu Ci,Co = 0.1 pF a Ro = 10 Mimage42.gif (863 bytes). Chybu při simulaci s reálnými OTA-C zesilovači způsobují hlavně fázovací články realfilt.cir.

Použitá literatura

[1] Martinek,P., Boreš,P., Hospodka,J.: Elektrické filtry. Vydavatelství ČVUT, Praha 2003
[2] Laipert,M., Vlček,M.: Lineární obvody. Vydavatelství ČVUT, Praha
[3] Kejhar,M., Kirschner,M., Musil,V., Stříbrný.V: Program SPICE v příkladech Vydavatelství ČVUT, Praha 1995
[4] Stránky pro návrh elektrických filtrů