🌊 Próbkowanie ADC / DAC
Wizualizacja próbkowania sygnału z wykrywaniem aliasingu i szumem kwantyzacji. Pokazuje falę ciągłą, próbki i zrekonstruowany przebieg schodkowy. Sprawdzanie twierdzenia Nyquista z podglądem częstotliwości aliasowej.
Podobne symulacje
O tej symulacji
Poznaj przetwarzanie analogowo-cyfrowe i cyfrowo-analogowe. Zobacz, jak częstotliwość próbkowania, głębia bitowa i granica Nyquista wzajemnie oddziałują — i co się dzieje, gdy aliasing zniekształca sygnał ponad możliwość odzyskania.
Symulacja pokazuje, jak ciągły sygnał analogowy jest zamieniany na postać cyfrową i z powrotem. Czysta fala sinusoidalna jest próbkowana w dyskretnych chwilach i zaokrąglana do skończonego zbioru poziomów amplitudy (kwantyzacja), a następnie odtwarzana jako wyjście DAC. Zachowanie to podlega twierdzeniu o próbkowaniu Nyquista-Shannona, które wymaga, aby częstotliwość próbkowania była co najmniej dwukrotnie wyższa niż częstotliwość sygnału dla wiernego odwzorowania.
Model sterowany jest trzema suwakami: częstotliwością sygnału wejściowego (100–5000 Hz), częstotliwością próbkowania ADC (500–20000 Hz) oraz głębią bitową (1–12 bitów). Obniżenie częstotliwości próbkowania poniżej 2·f_sygnału wywołuje aliasing, zawijając ton do fałszywej częstotliwości, natomiast zmniejszenie głębi bitowej pogrubia stopnie kwantyzacji. Ta sama fizyka leży u podstaw dźwięku cyfrowego, nagrań CD, radia definiowanego programowo i każdego systemu akwizycji danych.
🔬 Co przedstawia
Podstawowy kompromis między częstotliwością próbkowania (rozdzielczością czasową) a głębią bitową (rozdzielczością amplitudy). Gdy częstotliwość próbkowania spadnie poniżej dwukrotności częstotliwości sygnału (granica Nyquista), aliasing tworzy fałszywe częstotliwości, których nie da się usunąć.
🎮 Jak korzystać
Zmieniaj suwak częstotliwości próbkowania, aby zobaczyć pojawiający się aliasing, gdy spadnie poniżej częstotliwości Nyquista. Zmień głębię bitową, aby zaobserwować szum kwantyzacji. Porównaj przebieg oryginalny, spróbkowany i zrekonstruowany.
💡 Czy wiesz, że?
Twierdzenie o próbkowaniu Nyquista-Shannona (1949) gwarantuje doskonałą rekonstrukcję tylko wtedy, gdy częstotliwość próbkowania przekracza dwukrotność najwyższej częstotliwości sygnału. Dlatego dźwięk CD wykorzystuje 44,1 kHz — tuż powyżej 2 × 20 kHz.
Najczęściej zadawane pytania
Czym jest ADC i DAC?
ADC (przetwarzanie analogowo-cyfrowe) zamienia ciągłe napięcie w strumień liczb, próbkując je w czasie i zaokrąglając każdą próbkę do ustalonej liczby poziomów. DAC (przetwarzanie cyfrowo-analogowe) odwraca ten proces, odtwarzając przebieg analogowy z tych liczb. Ta strona wizualizuje razem sygnał oryginalny, spróbkowane wyjście ADC oraz zrekonstruowane wyjście DAC.
Czym jest twierdzenie Nyquista?
Twierdzenie o próbkowaniu Nyquista-Shannona mówi, że sygnał ograniczony pasmowo można zrekonstruować doskonale tylko wtedy, gdy częstotliwość próbkowania jest co najmniej dwukrotnie wyższa niż jego najwyższa częstotliwość, co zapisuje się f_ADC ≥ 2·f_sygnału. Częstotliwość Nyquista to połowa częstotliwości próbkowania, czyli maksymalna częstotliwość sygnału, jaką system może odwzorować bez błędu.
Co powoduje aliasing w tej symulacji?
Aliasing pojawia się, gdy częstotliwość próbkowania spadnie poniżej 2·f_sygnału. Zbyt mała liczba próbek na cykl sprawia, że wysoka częstotliwość udaje niższą. Symulacja oblicza alias jako wartość |f_sygnału − k·f_ADC|, która mieści się poniżej f_ADC/2, zmienia kolor próbek na czerwony i wyświetla ostrzeżenie.
Co kontrolują trzy suwaki?
Suwak częstotliwości sygnału ustawia ton wejściowy w zakresie od 100 do 5000 Hz. Suwak częstotliwości próbkowania ustawia f_ADC w zakresie od 500 do 20000 Hz, decydując, jak często mierzona jest fala. Suwak głębi bitowej, od 1 do 12 bitów, ustala liczbę dostępnych poziomów amplitudy (od 2 do 4096) do kwantyzacji.
Czym jest głębia bitowa i szum kwantyzacji?
Głębia bitowa N wyznacza liczbę dyskretnych poziomów amplitudy, równą 2^N. Przy mniejszej liczbie bitów odstępy między poziomami są większe, więc każda próbka jest zaokrąglana grubiej, a błąd zaokrąglenia pojawia się jako szum kwantyzacji. Przy 1 bicie fala staje się prymitywnym dwupoziomowym schodkiem; przy 12 bitach 4096 poziomów sprawia, że schodek jest niemal gładki.
Co oznacza SQNR i jak jest obliczane?
SQNR to stosunek sygnału do szumu kwantyzacji, miara tego, jak wiernie przetwornik odwzorowuje sygnał. Symulacja wykorzystuje standardowe przybliżenie SQNR ≈ 6,02·N + 1,76 dB, gdzie N to głębia bitowa. Każdy dodatkowy bit dodaje w przybliżeniu 6 dB, więc 8 bitów daje około 50 dB, a 16 bitów około 98 dB.
Czym jest współczynnik próbkowania pokazany w statystykach?
Współczynnik próbkowania to f_ADC podzielone przez f_sygnału, pokazywane jako wielokrotność, na przykład 4.00x. Współczynnik równy 2 leży dokładnie na granicy Nyquista, więc każda wartość powyżej 2 spełnia twierdzenie, a każda poniżej powoduje aliasing. Wyższe współczynniki dają więcej próbek na cykl i wierniejszą rekonstrukcję.
Dlaczego zrekonstruowany sygnał czasem wygląda źle?
Gdy wystąpi aliasing, DAC potrafi odtworzyć sygnał tylko na podstawie otrzymanych próbek, a te próbki są zgodne z niższą częstotliwością aliasu, a nie z prawdziwym tonem. Rząd rekonstrukcji pokazuje więc alias, a nie oryginał, co pokazuje, że aliasing niszczy informację, której żadne dalsze przetwarzanie nie odzyska.
Czy ta symulacja jest fizycznie dokładna?
Wiernie oddaje podstawowe idee: jednolite próbkowanie, kwantyzację ze środkowym progiem do 2^N poziomów, warunek Nyquista oraz regułę SQNR 6,02·N + 1,76 dB — wszystkie są standardowe. Upraszcza sprawę, wykorzystując idealne wejście sinusoidalne i pomijając filtry antyaliasingowe, artefakty próbkowania z zatrzymaniem oraz filtrację rekonstrukcyjną, więc jest to model dydaktyczny, a nie emulator na poziomie obwodu.
Dlaczego płyty CD wykorzystują 44,1 kHz?
Ludzki słuch sięga w przybliżeniu do 20 kHz, a twierdzenie Nyquista wymaga próbkowania powyżej dwukrotności tej wartości, czyli co najmniej 40 kHz. Częstotliwość 44,1 kHz pozostawia zapas na praktyczny filtr antyaliasingowy i ma historyczne korzenie we wczesnych cyfrowych zapisach na taśmie wideo. Można to naśladować, ustawiając f_sygnału blisko granicy słyszalności i f_ADC nieco powyżej jej podwojenia.
Jak uniknąć aliasingu w rzeczywistym systemie?
Należy umieścić analogowy filtr dolnoprzepustowy antyaliasingowy przed ADC, aby usunąć wszelką zawartość powyżej częstotliwości Nyquista, a następnie wybrać częstotliwość próbkowania wyraźnie powyżej dwukrotności najwyższej interesującej częstotliwości. Nadpróbkowanie dodatkowo ułatwia wymagania wobec filtru. W tej symulacji wystarczy podnosić częstotliwość próbkowania, aż pojawi się zielona plakietka potwierdzająca spełnienie warunku Nyquista.