Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

TechEkspert 24 Mar 2018 13:23 4128 14
  • Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Podczas testów generatora DDS miałem wrażenie, że możliwości układu zostały zepsute przez wzmacniacz wyjściowy.
    W poprzednim materiale zwróciliście uwagę na słabej jakości przetwornik D/A (rezystory 5%). Można zastosować lepsze rezystory, jednak może się okazać, że tańszym i lepszym rozwiązaniem będzie gotowy przetwornik DAC.

    Generowany sinusoidalny sygnał wyjściowy o kształcie sinusoidalnym i częstotliwości 1kHz jest akceptowalny:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału


    Przy częstotliwości 5kHz pojawiają się zniekształcenia, następnie sygnał przypomina trójkątny, przy wyższych częstotliwościach amplituda sygnału przyjmuje coraz mniejsze wartości.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału





    Patrząc na wyjście rezystorowego przetwornika DAC, nawet sygnał o częstotliwości 40kHz posiada akceptowalny kształt:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Spróbowałem wykonać najprostszą możliwą zmianę w układzie, wyjąłem z podstawki wzmacniacz LM358 i w jego miejsce włożyłem wzmacniacz TL082 (możecie zastosować także np. TL072). Jak dla mnie efekt był tak dobry, że na tym poprzestałem :)
    Poniżej kształty sinusoidalnych sygnałów wyjściowych 1kHz, 5kHz, 10kHz, 40kHz, 65kHz oraz przebieg piłokształtny 1kHz:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Sygnał wyjściowy trzyma zarówno kształt jak i stałą amplitudę przy większych częstotliwościach. Pobór prądu na liniach +12V/-12V wzrósł do ~3mA.

    Podałem sygnał (poprzez potencjometr) na wejście dość dobrej karty dźwiękowej i przyjrzałem się widmu częstotliwościowemu w audacity.

    Na początek "sztuczny" sygnał 1kHz wygenerowany w programie, wykorzystajmy go jako poziom odniesienia:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Widać idealne widmo.

    Na zniekształcenia będzie miała wpływ karta dźwiękowa, układy połączeniowe, dlatego drugim poziomem odniesienia będzie analiza nagrania sygnału sinusoidalnego z fabrycznego generatora dds o spodziewanych parametrach lepszych niż testowany generator:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Widoczny jest pik na drugiej harmonicznej i minimalny sygnał w okolicach 10kHz.

    Teraz pora na testowany generator dds:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnałuGenerator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Widać prążki na 3,5,7 harmonicznej.

    Widmo dla sygnału 5kHz:
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Sygnał na 3 harmonicznej.

    Moim zdaniem, całkiem niezłe efekty jak na wymianę w podstawce jednego wzmacniacza operacyjnego.


    Fajne! Ranking DIY
    Potrafisz napisać podobny artykuł? Wyślij do mnie a otrzymasz kartę SD 64GB.
  • #2 25 Mar 2018 18:49
    CosteC
    Poziom 27  

    Hej

    Już na oscyloskopie widać poprawę liniowości sygnału - fajna, prosta i tania poprawka.

    Co to "dobra karta dzwiękowa"? Widma masz wykreślone do -90 dB a prążki o których mówisz są na -82 dB. Sugeruje to co najmniej 16 bitową rozdzielczość karty - na pewno jest to coś lepszego niż wbudowane w płytę główną karty, tak powszechne dzisiaj. Czy możesz się podzielić tą informacją?

    Narzekasz na 5% DAC konstrukcji R-2R w generatorze. Liczyłeś kiedyś jakie zniekształcenia daje użycie 5% rezystorów w tej konstrukcji? Zniekształcenia będą zaskakująco małe.

  • #3 25 Mar 2018 19:56
    TechEkspert
    Redaktor

    Nie wiem czy jest to dobra karta (pewnie audiofile będą się ze mnie śmiali) ale jest lepsza niż wbudowana w laptopa,
    miałem dostęp do Sound Blaster Audigy FX

    Co do rezystorów 5% nie mam pojęcia jakie zniekształcenia mogą wprowadzać, zostało to podniesione w poprzednim temacie, dlatego o tym wspomniałem.
    Jak to policzyć?

  • #4 26 Mar 2018 21:38
    CosteC
    Poziom 27  

    Zmuszony jestem odszczekać. Precyzja rezystorów w przetworniku R-2R jest o tyle ważna, że rezystory powinny być takie same. Jeśli wszystkie będą miały +5% to nic się nie stanie. Gorzej jak jeden będzie +1% a drugi -1%. Odchyłka rezystora przy MSB powinna być lepsza niż LSB bo inaczej przetwornik straci monotoniczność. Nie przeszkadzało mi to bo brałem 1% z jednej rolki i miały bardzo równe wartości, natomiast przy 5% rezystorach musi być gorzej i liniowość nawet w 5 bitowym przetworniku może być słaba.

    Czy byłbyś w stanie wymienić rezystory na 1% i zobaczyć czy liniowość się poprawi?

  • #6 27 Mar 2018 20:51
    TechEkspert
    Redaktor

    @CosteC raczej nie mam zasobów na taką wymianę rezystorów z 5% na 1%, jak później sprawdzić liniowość? zawartość harmonicznych?

    @leonow32 częstotliwości niskie, chciałem użyć coś o większej rozdzielczości próbkowania.

  • #7 28 Mar 2018 12:46
    NoweMillennium
    Poziom 17  

    TechEkspert napisał:
    Co do rezystorów 5% nie mam pojęcia jakie zniekształcenia mogą wprowadzać, zostało to podniesione w poprzednim temacie, dlatego o tym wspomniałem.

    Nieliniowość.

    TechEkspert napisał:
    Jak to policzyć?

    Kalkulatorem :-)
    Na poważnie,. 1% to przetwornik powiedzmy (naciągane) 7-bit, w praktyce 6. Nie bawiąc się w ceregiele, dokładne liczenie itp 7-bit 128 poziomów czyli trochę więcej niż 1%. 16-bit 1/65534 potrzebne rezystory 0,001%. 0,01% kosztuja po ok 3..4zł/szt. W drabince R-2R należy użyć jednakowych i np 2R uzyskuje się przez szeregowe łaczenie R (albo R przez równoległe 2R).,

    CosteC napisał:
    i zobaczyć czy liniowość się poprawi?

    Sam oscyloskop się do tego nie nadaje. Jak na oscyloskopie widać nielinowość, to ma z 10%. Używa sie dobrego przetwornika, sygnał wprowadza na wzorcowy i badany, sygnał z obu przetworników wprowadza sie na wzmacniacz różnicowy i mierzy nieliniowość. Kto zbuduje na szybko wzmacniacz różnicowy do badania przetworników 16-bit? Na tym forum znam jednego, @paluszczasty (mam nadzieję, ze nie przekręciłem nicku). Widziałem jego projekty i z nim trzeba na ten temat porozmawiać. Zrobił kartę z AC 24-bit, realnie uzyskuje zdaje się 24-bit, bo wzmacniacz operacyjny "psuje".

    Dodano po 8 [minuty]:

    TechEkspert napisał:
    Moim zdaniem, całkiem niezłe efekty jak na wymianę w podstawce jednego wzmacniacza operacyjnego.

    Jaki to wzmacniacz? Może jest wolniejszy i robi sprzętowy antyaliasing ?

  • #8 28 Mar 2018 20:43
    CosteC
    Poziom 27  

    @NoweMillennium Nieliniowości sinusa widać na oscyloskopie przy 10% - powiedzmy że się zgodzę, ale nieliniowości przebiegów trójkątnych widać wcześniej, można mierzyć kursorami - i tak naprawdę o to mi chodziło. Oczywiście wspomiana metoda z przebiegiem wzorcowym jest niebo lepsza ale też o wiele bardziej skomplikowana.

    Wzmacniacz wymieniono z LM358 na TL082. Czyli z powolnego (SR = 0.3 V/us, GPB = 0.3 MHz) na dużo szybszy (SR = 8 V/us, GBB = 2.5 MHz) Myślę, wzmacniacz nie nadążał za sygnałem z DACa i wprowadzał zniekształcenia.

    Rezystory... 1k 1% 0805 kosztuje niecałe 7 zł +VAT za 100szt... 9 zł za 0.5% 100 szt. 30 szt 0.1% (chyba by wystarczyło) to koszt 12zł +VAT. Te ceny nie zabijają raczej, ale zacząłem się zastanawiać czy może jednak jakiś układ scalony. Ciekawe jest to że nie widzę przetwornika DAC 8 bit 1MS w podobnej cenie. Za niecałe 15 zł +VAT można kupić 8 bit 250 kS

  • #9 29 Mar 2018 01:26
    pawelr98
    Poziom 36  

    Tester do mnie już doszedł, jak będę budował to zalutuję rezystory ±1%.

    Wstawię wspomniany TL082 i zobaczymy co da się uzyskać.

    LM358 to typowy muł roboczy. Widywałem go najczęściej w układach automatycznej regulacji obrotów wentylatorów w zasilaczach ATX.Z innych "mułów" jest jeszcze LM324 (72 rok jeśli dobrze pamiętam).

    Co prawda nie mam cyfrowego oscyloskopu ale myślę iż na porządnym analogu też będzie dobrze widać jak to się ma po "ulepszeniu".

  • #10 30 Mar 2018 02:37
    pawelr98
    Poziom 36  

    Rozpakowałem zestaw i rezystory są najwidoczniej ±1%.
    Tak przynajmniej wynikałoby z kodu paskowego.

    Mam akurat identyczne rezystory jako podstawę mojego "zaopatrzenia warsztatowego".

    Patrząc do poprzedniego wątku zauważyłem jedynie wspomnienie o rezystorach ±1% a nie ±5%.Wynika z tego iż kolega TechEkspert popełnił błąd w pierwszym poście albo ja o czymś nie wiem.

    Niektórzy testowali("fake resistors" w google) te rezystory i twierdzili iż mogą być one podrabiane lub co najmniej "niższej jakości". Tak przynajmniej wynikało z pomiarów zmiany rezystancji w funkcji temperatury(wyższy współczynnik temperaturowy).
    http://electro-music.com/forum/viewtopic.php?t=31860
    Tutaj przykład.

    Rezystory ±0.1% mam ale są one w mostku RLC Meratronik E307 który to naprawiam i nie mam zamiaru (przynajmniej na razie) go demontować.
    Do kompletu są to większe rozmiarowo rezystory i ciężko byłoby je w tym DDS-ie zalutować.

    Wzmacniacz kupiłem TL072 czyli niskoszumny TL082.
    Taki właśnie siedzi teraz w podstawce.

    Jak ogarnę zasilanie to wrzucę zdjęcia oscylogramów.
    W ruch pewnie znowu pójdą diody zenera bo nie mam ochoty bawić się w robienie porządnego symetrycznego zasilania. Dwie zenerki 11V w szeregu i będzie OK.
    Tylko mikroprocesor dostanie swojego 7805.

    Po montażu zostały dwa rezystory extra.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

  • #11 30 Mar 2018 18:08
    TechEkspert
    Redaktor

    Co do rezystorów to nie sprawdzałem jakości swoich, zwyczajnie odniosłem się do komentarza że zdarzają się rezystory 5%.
    W testowanym zestawie także zostały 2 rezystory, podobnie jak wcześniej w DSO138, również zostały 2 rezystory, to jakiś standard? :)

  • #12 03 Kwi 2018 04:22
    pawelr98
    Poziom 36  

    No i DDS uruchomiony. Trochę zeszło bo musiałem wykombinować zasilacz na podstawie tego co było pod ręką. Trafo 230V/18V, mostek, kondensatory 4x1000µF 16V spięte równlolegle-szeregowo(wytrzymałość napięciowa i pojemność) i na koniec 78L05 z zenerką 11V podpiętą od nóżki GND do masy zasilacza.
    +5V dla procka brane z 7805, GND podpięte do nóżki GND 7805(11V względem masy zasilacza),-12V wpięte do masy zasilacza,+12V wpięte na dodatnią linię zasilacza.

    Na pierwszych trzech zdjęciach 100Hz sinus,wyraźnie widać pracę DAC nawet bez zbytniego powiększania. Luminofor świecił się kiedy DAC "stał" a przeskok nie naświetlał luminoforu odpowiednio długo. Na trzecim zdjęciu widać dokładnie pracę DAC.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Tutaj parę Sinusów dla wyższych częstotliwości.Odwzorowanie nie najgorsze ale dla niższych częstotliwości wciąż wyraźnie widać pracę DAC.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Tutaj fala prostokątna. Nie wygląda to za dobrze dla wysokich częstotliwości(zakres do 65kHz).Sondę akurat ostatnio kalibrowałem na podstawie kalibratora.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Trójkąt dla wyższej częstotliwości.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    I dla niższej.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    "Piła" nie wygląda za dobrze. Widać oscylacje.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    Znowu trójkąt w przybliżeniu, widać pracę DAC.
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału
    A tu nasz zasilacz sklecony tak naprawdę jedynie z części z odzysku (poza zenerką 11V i płytką uniwersalną).
    Generator funkcyjny DDS - prosty sposób na polepszenie jakości sygnału

    Podsumowując:
    Sinus i trójkąt wypadają nienajgorzej
    Prostokąt, piła mają oscylacje

    Sprawdzę jeszcze na drugim oscyloskopie (C1-107) te oscylacje, u kolegi TechEkspert ich nie widzę.

    TechEkspert napisał:
    Co do rezystorów to nie sprawdzałem jakości swoich, zwyczajnie odniosłem się do komentarza że zdarzają się rezystory 5%.
    W testowanym zestawie także zostały 2 rezystory, podobnie jak wcześniej w DSO138, również zostały 2 rezystory, to jakiś standard? :)

    Ja akurat tego 5% nigdzie nie widzę.
    W pierwszym poście odniósł się kolega do rezystorów 5%, jednak w poprzednim wątku takiego zarzutu nie było.

  • #13 03 Kwi 2018 18:58
    TechEkspert
    Redaktor

    Fajna analiza, analogowy oscyloskop i lampa z luminoforem pokazała swoją moc :)
    Umiejętnie korzystając z takiego sprzętu można sporo zobaczyć.
    Z procentami mi się coś pomyliło, chodziło o 1% i 0.1% https://www.elektroda.pl/rtvforum/viewtopic.php?p=17115570#17115570

  • #14 04 Kwi 2018 10:22
    pawelr98
    Poziom 36  

    Ja ten oscyloskop(Schlumberger 5228) lubię bo ma pasmo 250MHz. Radiowcy potrafili na nim oglądać przebiegi sięgające 500MHz.

    Do tego dochodzą trzy kanały z pełnym pasmem (trzeci kanał ma tylko 0.1V i 1V/Dz,brak płynnej regulacji wzmocnienia i terminatora 50R).
    Początki współpracy były słabe(konieczna korekta wzmocnienia, uszkodzony multiplekser w podstawie czasu) ale po naprawach okazał się być warty wydanych pieniędzy.

    Co do DDS to miłą niespodzianką jest to że pasują radzieckie złącza BNC, mam dwie ruskie przejściówki(dostałem razem z C1-107) i fajnie jest mieć możliwość ich użycia.

    Sprawdzałem też czy przebiegi przestają oscylować przy użyciu wbudowanego terminatora 50R, oscylacje osłabły ale wraz z nimi przysiadła amplituda.

    W weekend sprawdzę jak się ma sprawa na C1-107.
    Ten oscyloskop lubię za 20V/Dz (Schlumberger ma max 5V/Dz) więc do wielu pomiarów niepotrzebna mi sonda 10X.

  • #15 04 Kwi 2018 10:42
    3149400
    Użytkownik usunął konto