jak ustalić stałą czasową RC w cyfrowym filtrze dolnoprzepustowym PWM?


17

Szukam najlepszej stałej czasowej RC i jej przyczyny w PWM do konwersji sygnału cyfrowego na analogowy na podstawie cyklu pracy i częstotliwości oraz innych parametrów. Częstotliwość PWM wynosi 10 kHz.


szukam równań, aby rozwiązać ten problem i określić ilość Rc na podstawie cyklu pracy i częstotliwości oraz innych parametrów. Doceniam to, jeśli ktoś może mi pomóc
Azin

Odpowiedzi:


25

Najlepszy RC jest nieskończony, wtedy masz idealnie pozbawioną tętnień moc wyjściową DC. Problem polega na tym, że reakcja na zmiany w cyklu pracy trwa zawsze. Więc zawsze jest to kompromis.

Filtr RC pierwszego rzędu ma częstotliwość odcięcia wynoszącą

fado=12)πRdo

i roll-off 6 dB / oktawę = 20 dB / dekadę. Wykres pokazuje charakterystykę częstotliwości dla częstotliwości odcięcia 0,1 Hz (niebieski), 1 Hz (fioletowy) i 10 Hz (inny kolor).

wprowadź opis zdjęcia tutaj

Widzimy więc, że dla filtra 0,1 Hz podstawa 10 kHz sygnału PWM jest tłumiona o 100 dB, co nie jest złe; da to bardzo niskie tętnienie. Ale!

wprowadź opis zdjęcia tutaj

Ten wykres pokazuje odpowiedź krokową dla trzech częstotliwości odcięcia. Zmiana cyklu pracy jest krokiem w poziomie prądu stałego i pewną zmianą harmonicznych sygnału 10 kHz. Krzywa z najlepszym tłumieniem 10 kHz jest najwolniejsza w odpowiedzi, oś x to sekundy.

wprowadź opis zdjęcia tutaj

Ten wykres pokazuje czas reakcji 30 µs RC (częstotliwość graniczna 5 kHz) dla 50% cyklu roboczego sygnału 10 kHz. Występuje ogromne tętnienie, ale reaguje na zmianę z 0% cyklu pracy w 2 okresach lub 200 µs.

wprowadź opis zdjęcia tutaj

Jest to czas RC 300 µs (częstotliwość graniczna 500 Hz). Nadal niektóre tętnienia, ale przejście od 0% do 50% cyklu pracy zajmuje około 10 okresów lub 1 ms.

Dalsze zwiększanie RC do milisekund spowoduje dalsze zmniejszenie tętnienia i wydłuży czas reakcji. Wszystko zależy od tego, na ile tętnienia możesz sobie pozwolić i jak szybko chcesz reagować filtr na zmiany cyklu pracy.

Ta strona oblicza, że ​​dla R = 16 kΩ i C = 1 µF mamy częstotliwość odcięcia 10 Hz, czas ustalania do 90% z 37 ms dla tętnienia szczytowego 8 mV przy maks. 5 V.

edytuj
Możesz poprawić swój filtr, przechodząc do wyższych zamówień:

wprowadź opis zdjęcia tutaj

Niebieska krzywa była zwykłym filtrem RC z 20 dB / dekadą. Filtr drugiego rzędu (fioletowy) ma tłumienie 40 dB / dekadę, więc dla tej samej częstotliwości odcięcia będzie miał tłumienie 120 dB przy 10 kHz zamiast 60 dB. Te wykresy są dość idealne i można je najlepiej uzyskać za pomocą aktywnych filtrów, takich jak klucz Sallen.

wprowadź opis zdjęcia tutaj

Równania

Napięcie tętnienia szczytowego dla filtra RC pierwszego rzędu w zależności od częstotliwości PWM i stałej czasowej RC:

V.rjapplmi=mi-refaP.W.M.Rdo(mi1faP.W.M.Rdo-mirefaP.W.M.Rdo)(1-mirefaP.W.M.Rdo)1-mi1faP.W.M.RdoV.+

E&OE. „d” oznacza cykl pracy, 0..1. Fala jest największa dla d = 0,5.

Odpowiedź krokowa na 99% wartości końcowej wynosi 5 x RC.

Częstotliwość odcięcia dla filtra Sallen-Key:

fado=12)πR1 R2) do1 do2)

W przypadku filtra Butterwortha (maksymalne płaskie): R1 = R2, C1 = C2


Cześć tnx dla twojej odpowiedzi. Szukam równań, aby rozwiązać ten problem i określić ilość Rc na podstawie cyklu pracy i częstotliwości oraz innych parametrów. doceniam, jeśli ktoś może mi pomóc
azin

Ładne wykresy! Z jakiego oprogramowania korzystałeś?
m.Alin

1
@ m.Alin - 1, 2 i 5: Mathematica, 3 i 4: niektóre stare rzeczy, które kiedyś stworzyłem w Excelu.
stevenvh

tnx dużo za odpowiedź. to było bardzo przydatne
Azin

1
@ m.Alin - patrz mój komentarz 2 cm w górę :-)
stevenvh

8

Jak powiedział Steven, jest to kompromis między tłumieniem częstotliwości PWM a czasem odpowiedzi. Dlatego każda taka decyzja musi zaczynać się od specyfikacji tego, czego chcesz od powstałego sygnału analogowego. Jaki musi być stosunek sygnału do szumu, a przynajmniej ile szumów na częstotliwości PWM można tolerować? Jak szybko musi osiąść na poziomie hałasu? Lub na odwrót, na jakiej częstotliwości jesteś zainteresowany?

Należy pamiętać, że spełnienie określonego zestawu kryteriów przy określonym wyjściu PWM może nie być możliwe. Powiedzmy, że chcesz dobrej jakości dźwięku. Powiemy, że to do 8 kHz i 60 dB sygnału do szumu. Tak się nie stanie z żadnym rozsądnie wykonalnym filtrem analogowym z PWM 20 kHz, a na pewno nie z czymś tak prostym jak pojedynczy R i C.

Jako przykład, spójrzmy wstecz i zobaczmy, jakie cechy charakterystyczne PWM musiałyby być, aby obsługiwać powyższy przykład głosu za pomocą pojedynczego filtra R, C. Powiedzieliśmy już, że częstotliwość wycofywania -3 dB wynosi 8 kHz, więc na tym ustawiliśmy R i C. Częstotliwość wycofywania pojedynczego filtra R, C wynosi:

  F = 1 / (2 π RC)

Kiedy R jest w omach, C w faradach, wtedy F jest w hercach. Powinno być oczywiste, że to równanie można zmienić, aby rozwiązać dla dowolnego z R, C lub F, biorąc pod uwagę dwa pozostałe. Trzymam 1 / (2 π) = .15915 zawsze w rejestrze w moim kalkulatorze, ponieważ obliczenia te pojawiają się regularnie w elektronice. Następnie po prostu dzielę to przez dwa z R, C lub F, aby uzyskać trzeci.

Mamy dwa stopnie swobody, a powyższe równanie ogranicza tylko jeden z nich. Drugi może być uważany za impedancję, jaką ma mieć uzyskany sygnał. Strzelajmy dla około 10 kΩ, co zrobimy R, aby zobaczyć, do czego dochodzi C:

  1 / (2 π 8kHz 10kΩ) = 1,99 nF

To w zasadzie standardowa wartość kondensatora 2 nF, więc po prostu pójdziemy z tym. Gdyby nie osiągnęła wspólnej wartości, wybralibyśmy wartość bliską, a następnie wróciliśmy i odpowiednio dostosowaliśmy R. Rezystory są dostępne w znacznie drobniejszych wariantach i przy wyższych tolerancjach niż zwykłe kondensatory, więc zwykle znajdujesz bliską wartość kondensatora, a następnie pozwól, aby sterowała dokładną wartością rezystora.

Więc ustaliliśmy R = 10 kΩ i C = 2 nF. Należy pamiętać, że wynika to z wymogu górnej częstotliwości 8 kHz. Nie mamy już wyboru, więc czas ustalania i stosunek sygnału do szumu będą takie, jakie będą. Wszystko, co możemy teraz zrobić, to ustalić, czy będzie wystarczająco dobre, czy też odwrotnie, jakie charakterystyki PWM byłyby konieczne do obsługi specyfikacji sygnału wyjściowego.

Ponieważ specyfikacja była stosunkiem sygnału do szumu wynoszącym 60 dB, oznacza to, że hałas musi być mniejszy niż 1 część na 1000 napięcia, co oznacza, że ​​częstotliwość PWM musi zostać znacznie osłabiona. Pojedynczy filtr R, C tłumi odwrotnie proporcjonalnie do częstotliwości po częstotliwości wycofania. Jest to przybliżenie, które załamuje się w pobliżu częstotliwości wycofywania i poniżej, ale jest wystarczające w większości przypadków po oktawie lub dwóch powyżej częstotliwości wycofywania. Innymi słowy, 16 kHz będzie tłumione przez 2 z pewnym błędem, 32 kHz przez 4 z mniejszym błędem, a następnie możesz właściwie podzielić interesującą częstotliwość przez częstotliwość wycofywania, aby uzyskać tłumienie. Chcemy, aby częstotliwość PWM była tłumiona o 1000, co oznacza, że ​​musi ona wynosić 8 MHz lub więcej. To wysokie, ale wykonalne w przypadku niektórych procesorów. Na przykład,

Teraz spójrzmy na rozdzielczość PWM. Ponownie, jest to napędzane przez specyfikację 60 dB sygnału do szumu, co wiemy już oznacza 1: 1000. Wymagałoby to rozdzielczości PWM wynoszącej co najmniej 999 (zawsze otrzymujesz jeden poziom wyjściowy wyższy niż rozdzielczość PWM). Oznacza to, że wewnętrzny zegar wycinania PWM musi działać 999 razy częściej niż częstotliwość wyjściowa PWM 8 MHz, czyli w zasadzie 8 GHz. Nie stanie się tak z rozsądnie dostępnymi częściami z półki.

Istnieje jednak sposób na obejście tych ograniczeń, polegający na użyciu więcej niż jednego filtra R, C. Kiedy chcę ładny sygnał analogowy, zwykle używam dwóch lub trzech z nich kolejno. Zobaczmy, jak zastosowanie trzech kolejnych filtrów R, C zmienia rzeczy.

Początkowo mówiliśmy, że nasza górna interesująca częstotliwość wynosi 8 kHz, co oznacza, że ​​możemy tolerować obniżenie o 3 dB, chyba że powiemy inaczej. Pojedynczy filtr R, C tłumi się o 3 dB przy częstotliwości wycofywania, więc ustawiliśmy go na poziomie 8 kHz. Nie możemy mieć trzech filtrów przy 8 kHz, ponieważ osłabiłyby one łącznie o 9 dB. Więc usuwamy filtry według liczby biegunów (w tym przypadku osobne filtry R, ​​C).

Trzy filtry R, ​​C (trzy bieguny) mają zatem częstotliwość 24 kHz. Wydaje się, że robiąc to, straciliśmy grunt, ale dużą zaletą jest to, że częstotliwości powyżej, które są teraz tłumione przez stosunek kostki zamiast tylko stosunku jak w przypadku pojedynczego bieguna. Ponownie chcemy, aby częstotliwość PWM była tłumiona o 1000, czyli 10 ^ 3, więc musimy tylko 10 razy przekraczać częstotliwości filtrowania, co oznacza, że ​​240 kHz jest wystarczająco wysokie. To duża różnica od 8 MHz. Teraz wewnętrzny zegar PWM lub częstotliwość wycinania PWM musi wynosić tylko 240 MHz. To wciąż wysoki, ale osiągalny.

Mam nadzieję, że dzięki temu uzyskałeś wgląd w problemy. Jeśli podasz konkretne specyfikacje, możemy przepracować określone wartości dla twojego przypadku.


Cześć tnx dla twojej odpowiedzi. Szukam równań, aby rozwiązać ten problem i określić ilość Rc na podstawie cyklu pracy i częstotliwości oraz innych parametrów. Doceniam to, jeśli ktoś może mi pomóc
Azin

@azin: Cykl roboczy nie ma z tym nic wspólnego, ale częstotliwość PWM tak, jak szczegółowo opisałem w mojej odpowiedzi.
Olin Lathrop

2

Możliwe jest poprawienie wydajności w stosunku do pojedynczego RC za pomocą kaskadowych stopni RC. Nie można uzyskać tak dobrej wydajności w czystym wielostopniowym filtrze pasywnym RC, jak można uzyskać z filtrów aktywnych, ale wydajność może być jednak lepsza niż w przypadku pojedynczego stopnia. Niestety nie znam żadnych konkretnych dobrych metod obliczania optymalnych wartości RC.

Należy również zauważyć, że chociaż modulacja szerokości impulsu jest najczęstszą formą modulacji cyklu pracy, nie jest jedyna. Jednym prostym podejściem, które może być bardzo przydatne w przypadkach, w których docelowe napięcie wyjściowe nie zmienia się zbyt często, a prawdopodobieństwo, że wyjście znajduje się bliżej środka zakresu niż na krawędziach, jest generowanie zestawu sygnałów przez obliczanie (bieżąca wartość licznika ”, a nie„ poprzednia wartość licznika) oraz ORAZ ten sygnał z bitami żądanej wartości danych, w odwrotnej kolejności (tak, że MSB wartości danych zostaje AND'owany xor bieżącego licznika LSB i poprzedni). Zastosowanie takiego podejścia z np. Sześciobitową modulacją cyklu roboczego oznaczałoby, że fala cyklu roboczego 32/64 będzie reprezentowana przez częstotliwość równą połowie zegara PWM, zamiast fali prostokątnej o częstotliwości 1/64 zegara PWM. Cykl pracy 33/64 byłby reprezentowany głównie przez częstotliwość równą połowie zegara PWM, ale z dodatkowymi wysokimi impulsami.

Oto demo tego, o czym mówię.


Cześć tnx dla twojej odpowiedzi. Szukam równań, aby rozwiązać ten problem i określić ilość Rc na podstawie cyklu pracy i częstotliwości oraz innych parametrów. Doceniam to, jeśli ktoś może mi pomóc
Azin

@ supercat - twoja odpowiedź wydaje się opisywać technikę, która ma ogólne właściwości, o których myślałem i szukałem (znacznie wyższa częstotliwość niż podstawowa częstotliwość PWM). Czy znasz nazwę tej techniki?
żaglowiec

@gbulmer: Nie znam nazwy tego podejścia, ale można to zaobserwować w projekcie CD4089 (patrz arkusz danych ti.com/lit/ds/symlink/cd4089b.pdf ).
supercat

0

Wszystkie udzielone do tej pory wspaniałe odpowiedzi, dobrze napisane i odpowiednie, ale często najlepsza odpowiedź wymaga lepszego pytania.

Kiedy rozważasz „najlepszą ilość RC?”, Jakie założenia należy wziąć pod uwagę przy każdym projekcie;

  1. Czym jest impedancja filtra w stosunku do impedancji źródła i obciążenia?

    Jeśli nie jest to krytyczne, wybierz R pomiędzy źródłem a ładowaniem. Powiedzmy jednak, że jeśli sterownik CMOS ma wartość 10 ~ 100 Ω i że obciążenie wynosi 100 kΩ, ale chcesz dokładności 0,3% w przypadku utraty prądu stałego, wybierz R << 0,3% obciążenia R lub, jak to nazywam, „metoda impedancji” dla rozważań dotyczących ładowania, więc tutaj R <0,003 * 1e5 = 300Ω. Ten wybór R nie jest krytyczny, ale musisz uważać, aby nie załadować filtra, więc możesz wybrać współczynniki impedancji do szybkiego obliczenia strat prądu stałego i odrzucenia prądu przemiennego.

    • jeśli chcesz, aby szum przy 10 kHz PWM wynosił <1% źródła, wybierz impedancję Zc (f), aby była <1% R dla serii RC LPF.
    • jeśli chcesz obniżyć tętnienie> 80dB dla wszystkich harmonicznych powyżej 0,5 MHz z powodów interferencyjnych, powiedzmy w radiu AM lub testach FCC / CE EMC, ponownie spójrz na stosunek impedancji trzonka wraz z ESR względem R oszacuj wartość C, a następnie wybierz nieco większy z margines dla temp. tolerancja i zastanów się, ile potrzebujesz marginesu. Wiesz, że filtry pierwszego rzędu mają nachylenie 20dB / dekadę, a następnie możesz zdecydować, czy filtr pierwszego rzędu jest wystarczający. Kaskadowe filtry RC muszą uwzględniać efekty ładowania na każdym etapie. Filtry LC kosztują więcej i może być potrzebny aktywny filtr.

Zakładając, że znasz impedancję kryteriów współczynnika impedancji kondensatora, jest prostym rozwiązaniem. W przeciwnym razie, aby znaleźć impedancję pośrodku źródła i obciążenia, rozważ jedną metodę Rf = √ (Rs * Rl), gdzie Rf jest wartością RC filtru dla źródła, Rs i obciążenia Rl jako jedną metodą dla środkowego zakresu.

Zaletą projektowania jest to, że zależy od twoich kryteriów, często istnieje wiele „najlepszych” odpowiedzi na wartość RC. :)


0

Czy określić najlepszą stałą czasową RC w filtrze dolnoprzepustowym cyfrowo-analogowym PWM?

Najlepsza odpowiedź zależy od różnych pytań;

? Jakie jest spektrum oryginalnych danych? BW =? ? Jak duże odrzucenie nośnika PWM jest dopuszczalne? Atten = 40dB? 60? 10 ??

Projektowanie filtra opartego tylko na stałej czasowej pomija większe znaczenie zrozumienia zachowania danych. Najlepiej jest zdefiniować oryginalny sygnał, aby można było zaprojektować prosty „optymalnie dopasowany filtr”. Musimy dbać o zachowanie oryginalnego sygnału i odrzucenie sygnału nośnego (PWM f).

Możesz wybrać dowolny LPF n-tego rzędu, aby dopasować filtr do oryginalnego sygnału. Proste 1-czipowe przełączane filtry kondensatorów lub filtry aktywne dają najlepsze wyniki. Rodzaj LPF zależy od kryteriów dopasowania oryginalnego sygnału.

Wybierz Best = maksymalnie płaski freq. odpowiedź, opóźnienie grupy MF lub najbardziej strome spódnice lub filtr Nyquista do 1/2 PWM f.

Następnie następna najlepsza metoda:

określ ilość drgań w napięciu z niedoskonałych filtrów RC.

Jeśli projektowałeś PLL VCXO dla RF i używałeś PWM do sterowania pętlą, możesz zainteresować się fałszywymi pasmami bocznymi z PWM, więc powinieneś rozważyć LPF z wycięciem na PWM. To jest łatwe, gdy znajdziesz odpowiedź;

Jak duże jest odrzucenie nośnika PWM

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.