Moim największym wyzwaniem związanym z tym pytaniem jest absurdalnie wysoka stopa wycofywania.
Zakładam, że sygnał jest niewykrywalny, jeśli jego wzmocnienie wynosi -20 dB. Oznacza to, że w zakresie przejściowym 200 Hz siła sygnału musi spaść o 20 dB.
Jeśli moje obliczenia są poprawne, ten filtr wymaga prędkości tłumienia wynoszącej 1200 dB / dec. Wymaga to 60 biegunów, co oczywiście nie jest możliwe.
Chciałbym zastosować analogowy filtr aktywny z minimalną falą w paśmie pasmowym. Duże przesunięcie fazowe nie jest zbyt ważne.
Jednym potencjalnym rozwiązaniem jest zastosowanie filtra wycinającego przy 5,2 kHz. Jednak częstotliwości powyżej szerokości pasma filtra wycinającego nadal nie są wystarczająco filtrowane.
Proszę wskazać wszelkie wady mojej logiki i / lub zaproponować potencjalne rozwiązania. Dziękuję Ci.
Odpowiedzi:
Dla Twojego filtra przyjęto 20dB / dec dla każdego zamówienia na filtr. Nie dotyczy to wszystkich typów filtrów.
Niech a f s t o p = 5,2 k H z . Następnie f s t o pf0=5kHz fstop=5.2kHz
Spójrz na ten eliptyczny filtr czwartego rzędu zaczerpnięty z artykułu z Wikipedii .
Chociaż nie do końca spełnia twoje wymagania, możesz to zobaczyć. Filtr eliptyczny wyższego rzędu może osiągnąć to, czego szukasz.
Należy pamiętać, że filtry eliptyczne mogą zaburzać fazę sygnału. Ponieważ nie wspomniałeś nic o ograniczeniach fazowych, założyłem, że odpowiedni jest filtr eliptyczny.
źródło
Ten rodzaj ostrej zmiany wymaga filtra cyfrowego. Nawet nie myśl o analogu. Musisz przekształcić wejście za pomocą funkcji sinc. Szerokość funkcji sinc (liczba punktów jądra) określa tłumienie pasma zatrzymania.
Nie zrobiłem matematyki, ale niektóre bardzo szybkie (może być wyłączone, twoje zadanie do poprawnego wykonania) obliczenia mówią, że prawdopodobnie potrzebujesz kilku 100 punktów, jeśli próbkujesz przy 20 kHz. 200 punktów przy 20 kHz oznacza szybkość MAC 4 MHz. Jest to wykonalne, w rzeczywistości znacznie poniżej tego, co współczesne DSP mogą zrobić dość łatwo. Oznacza to, że twój problem jest całkiem uleczalny. Może to zrobić coś w rodzaju dsPIC z serii E. Jest to raczej niski poziom, jeśli szukasz tylko możliwości DSP.
źródło
Jeśli zezwolisz na znaczne opóźnienie lub przetworzysz nagrany sygnał, możesz po prostu wykonać FFT, usunąć niepożądane komponenty i odwrócić transformację. Musisz skrócić fft z odpowiednią funkcją okna, aby dzwonek był akceptowalny.
źródło
Wybrałem układ kodeka audio (ADC + DAC), skierowałem cyfrowe wyjście ADC do wejścia DAC i ustawiłem częstotliwość próbkowania na 10 kHz.
Te układy zawierają już potrzebny silnik filtra cyfrowego. Szybka kontrola arkusza danych wydaje się potwierdzać, że uzyskasz wymaganą wydajność filtra.
źródło
Masz już wiele fajnych odpowiedzi z dobrymi tradycyjnymi rozwiązaniami, filtrami eliptycznymi, (krótki czas) FFT itp., Więc pomyślałem, że mogę dodać coś ze świata kodowania podpasmowego / transformacji falkowej.
Kodowanie podpasmowe oznacza podział widma częstotliwości na „przedziały”, każdy z tych przedziałów ma swój własny powiązany filtr. Węższe pasma, szersze filtry w dziedzinie czasu (oczywiście) - ale w obszarach, w których nie potrzebujemy bardzo ciasnych pasm, możemy uzyskać bardzo krótkie i tanie do obliczenia filtry.
Falki są funkcjami, które są wynikiem określonego rodzaju filtrów podpasmowych, które są generowane przez iterowane filtrowanie, a następnie podpróbkowanie.
Pomysł polegałby na znalezieniu interesujących podpasm, które pozwoliłyby nam najbardziej wycisnąć obliczenia, ale nadal uzyskać dobrą szczegółowość w interesującym paśmie.
Przykład dekompozycji pakietu kranu Daubechies 12 na trzech poziomach (Wikipedia):
Następnie możemy je selektywnie podsumować, aby uzyskać pożądaną odpowiedź. A te, których nie chcemy dodawać - nie musimy nawet obliczać! Będziemy potrzebować cieńszych, bliższych pasma 5–5,2 kHz, aby móc uzyskać wystarczająco strome zachowanie. Ale z drugiej strony, z dala od pasma 5–5,2 kHz możemy uciec tylko z kilkoma podziałami.
źródło
jeśli GWARANTUJESZ sinusoidalny sygnał wejściowy, to wystarczy jeden monostabilny strzał (74121). Lub ponownie wyzwalany 122/123.
Użyj komparatora przed 74121/122/123
Niektóre MCU zawierają komparatory analogowe jako urządzenia peryferyjne; po przekształceniu na falę prostokątną można użyć timerów itp., aby wykryć powyżej / poniżej 5000 Hz, jeśli MCU ma zegar stabilizowany XTAL. Nie ma potrzeby monostabilnego czujnika temperatury.
źródło