- Zakres regulacji częstotliwości: 0,1 Hz…39999,9 Hz.
- Krok zmiany częstotliwości: 0,1 Hz.
- Dostępne kształty sygnałów: sinusoidalny, trójkątny, prostokątny (wypełnienie 50%).
- Amplituda sygnału wyjściowego: 0…10 Vpp.
- Składowa stała: zerowa lub sygnał unipolarny (przełączane).
- Impedancja wyjściowa: bliska zeru.
- Zasilanie: 12…15 V DC, maksymalnie 50 mA.
- Sposób regulacji częstotliwości: impulsator.
- Sposób regulacji amplitudy: potencjometr.
Generator zaprojektowano z myślą o testowaniu urządzeń audio. Cenę obniżono dzięki programowej implementacji generatora DDS, bez użycia zewnętrznego generatora sygnałowego. Kształty sygnałów zostały dostosowane do najczęstszych pomiarów w układach audio:
- sinusoidalny: pomiar charakterystyki przenoszenia i wzmocnienia,
- trójkątny: ocena zniekształceń nieliniowych,
- prostokątny: oscylacje, ocena pasma przenoszenia.
Zasada działania
Bezpośrednia synteza cyfrowa (ang. DDS – Direct Digital Synthesis) to metoda wytwarzania sygnału w oparciu o odczytywanie odpowiednich próbek zapisanych w tablicy. Próbki sygnału są wystawiane na przetwornik cyfrowo-analogowy, który przekształca je w proporcjonalną wartość napięcia.
Gdyby z tablicy próbek odczytywać wszystkie po kolei, wówczas częstotliwość wytwarzanego sygnału byłaby stała. W tym układzie częstotliwość próbkowania wynosi 300 kHz, zaś tablica próbek zawiera ich 256, więc częstotliwość sygnału wyjściowego wynosiłaby 1171,875 Hz (300 kHz/256). Metoda DDS polega na tym, że nie trzeba odczytywać wszystkich próbek. Zgodnie z twierdzeniem Nyquista wystarczy, aby na jeden okres najwyższej częstotliwości w sygnale przypadały nie mniej niż 2 próbki. Dla sygnału sinusoidalnego minimum to dwie próbki na okres. Przy tej samej częstotliwości próbkowania można uzyskać – teoretycznie – sygnał analogowy o częstotliwości 150 kHz. Jak zostanie pokazane dalej, jakość tego sygnału byłaby bardzo niska.
Użytkownika nie interesuje jedynie częstotliwość minimalna i maksymalna, lecz także cała gama częstotliwości pośrednich. Można odczytywać co drugą próbkę, co trzecią i tak dalej. Niestety, skok częstotliwości jest równy częstotliwości minimalnej.
Generatory fabryczne z powodzeniem generują sygnał o częstotliwości zadanej z precyzją rzędu mHz lub lepszą. Można sobie poradzić z tym problemem na dwa sposoby. Pierwszy z nich to zwiększenie liczby próbek np. do 300 milionów. Wtedy krok regulacji częstotliwości wyniesie 1 mHz, za to potrzebna będzie olbrzymia pamięć na tak liczny zbiór próbek. Drugą opcją jest podział przez liczbę niecałkowitą – tej metody użyto w prezentowanym generatorze.
Przy użyciu mikrokontrolera o architekturze 32-bitowej to zadanie zostaje znacznie uproszczone. Jeżeli do zaadresowania jest 256 próbek, wówczas wystarczy do tego tylko 8 bitów. Pozostałe 24 bity rejestru akumulatora fazy to „część ułamkowa”.
W ten sposób, w pamięci nadal można przechowywać 256 próbek. Przetwornik ma rozdzielczość 12 bitów, zatem próbki są 2-bajtowe – wymagane jest tylko 512 bajtów.
Sygnał na wyjściu przetwornika C/A jest aproksymowany za pomocą przebiegu schodkowego. Należy go odfiltrować za pomocą dolnoprzepustowego filtru regeneracyjnego, aby uzyskać zeń sygnał pożądany. W jego widmie jest wiele częstotliwości harmonicznych, w tym składowa sygnału użytecznego oraz składowa o częstotliwości równej częstotliwości próbkowania. Założono, że maksymalna częstotliwość wytwarzanego sygnału to 40 kHz, natomiast częstotliwość próbkowania wynosi 300 kHz. Charakterystyka amplitudowa filtru w paśmie przepustowym powinna być możliwie płaska. Jednocześnie tłumienie częstotliwości próbkowania powinno być jak najsilniejsze. Są to bardzo rygorystyczne wymagania, których jednoczesne spełnienie nie będzie łatwe.