Rys. 2
zwiększana o pewien przyrost, proporcjonalny do częstotliwości sygnału. W opisywanym generatorze faza jest 32-bitowa, a okres próbkowania wynosi 8ps; stąd wynika, że częstotliwość sygnału można ustawić z rozdzielczością 1 / (R|is*2A32) = 0,0000291 Hz! Bieżąca wartość fazy wyznacza albo numer próbki przebiegu sinusoidalnego w pamięci ROM, albo bezpośrednio wartość próbki przebiegu prostokątnego czy piłokształtnego Próbki są kodowane przy użyciu 14 bitów.
Przetwornik cyfrowo-analogowy tworzą dwa układy modulacji szerokości impulsu (PWM), wchodzące w skład licznika (timera) 1 mikrosterownika. Każdy z układów PWM wytwarza przebieg prostokątny 125kHz o szerokości programowanej w 128 krokach. Oba układy są sterowane odpowiednio 7 starszymi i 7 młodszymi bitami próbek sygnału.
Analogowy przebieg wyjściowy powstaje w wyniku zsumowania obu sygnałów PWM w stosunku 1:128 (rezystory Rla, Rlb i R2), a następnie odfiltrowania składowych lezących poza pasmem akustycznym w filtrze dołnoprzepustowym trzeciego rzędu Filtr składa się z członu RC (Rla...R4, Cl2, U2C) oraz klasycznego filtru Sallen-Kcya drugiego rzędu (R5, Cl 3, R6, C14, U2B). Między filtrem a wyjściem generatora znajduje się tłumik. regulowany skokowo i płynnie (R7..R9, S3, U2A, P2, U2D).
Napięcie zasilające wynosi od 9 do 15V, pobór prądu ok. 50mA. Zasilanie może pochodzić z wbudowanego zasilacza sieciowego (rysunek 2), zasilacza zewnętrznego lub baterii.
Napięcie 5V dla mikrosterownika wytwarza stabilizator U3. Dioda Dl informuje świeceniem o załączeniu zasilania.
Do obsług: generatora służą następujące elementy:
- przełącznik SI (12-pozycyjny), ustalający główny tryb pracy,
- przełącznik S2 (12-pozycyjny), pozwalający wybierać częstotliwości wzorcowe.
- potencjometr PI, służący do płynnego przestrajania generatora,
- przełącznik S3 (4-pozycyjny), nastawiający tłumienie (OFF/-40/-20/0 dB),
- potencjometr P2, regulujący amplitudę sygnału od 0 do 100%,
Rodzaje pracy generatora w zależności od ustawień SI i S2 przedstawia tabela 1
Częstotliwości wzorcowe 20Hz, 200Hz, 2kllz i 20kHz uzyskamy w pozycjach 2, 3 i 4 przełącznika SI i pozycji 1 przełącznika S2, w skrajnych położeniach potencjometru PI.
Należy zwrócić uwagę, że masa wyjściowa generatora nic jest połączona z masą zasilania, lecz z +5V. Dzięki temu nie było konieczne użycie dodatkowego ujemnego napięcia zasilającego.
Jeszcze wyjaśnienie: pasmo częstotliwości 20kHz może się komuś wydać zbyt niskie jak na generator służący do pomiarów nowoczesnego sprzętu elektroakustycznego. Wartość ta nie jest jednak dziełem przypadku, lecz rezultatem kompromisu między prostotą i rozdzielczością przetwornika C/A z jednej, a z drugiej strony - częstotliwością próbkowania oraz złożonością filtru dolnoprzepustuwc-go, który udało się tu utrzymać w prostej postaci.
Układ elektroniczny razem z zasilaczem sieciowym zmontowałem na płytce uniwersalnej. Od lat preferuję ten rodzaj montażu; jest szybki i pozwala na łatwe dokonywanie zmian. Płytka modciu ma rozmiary ok. 120x 80mm. Należy pamiętać o zachowaniu należytej izolacji między obwodem pierwotnego uzwojenia transformatora (dołączonym do sieci 230V) a resztą układu.
Kilka uwag do użytych elementów. Z wyjątkiem Rll, wszystkie rezystory powinny być metalizowane. R7. R8 i R9 mogą mieć inne wartości, byle ich stosunek wynosił 90: 9:1 (w modciu użyłem 33kśi, 3,3ki2 oraz 360Ś2). Kondensatory C12...C 14 powinny mieć niski współczynnik cieplny
(np. ceramiczne NP0). Kondensatory blokujące 0,1 pF należy ulokować jak najbliżei układów scalonych: C3 i C4 przy U1, C6 przy U2, a C8 i C9 przy U3.
Generator umieściłem w uniwersalnej obudowie z tworzywa sztucznego o wymiarach 210x 180x70mm. Płyta czołowa (rysunek 3) została zaprojektowana przy użyciu napisanego przeze mnie dość prostego programu w języku C, który utworzył rysunek w postaci pliku graficznego audgen3.bmp o rozdzielczości 16 pikseli na milimetr. Następnie rysunek ten został przerobiony na format Corela. Rysunek ten wydrukowałem dnikarką atramentową na białej folii samoprzylepnej. Na płycie czołowej znajdują się od lewej do prawej następujące elementy: S2, SI, PI, S3, P2, Dl, J1 i Wl.
Program mikrosterownika napisałem w- ję zyku asemblera w środowisku AVR Studio 4.05. Tekst źródłowy jest zawarty w pliku uudgen.asm. Do programowania „w układzie” przez złącze J2 posłużył programator
Tabela 1
S1
S2
Rodzaj pracy
sinus 20Hz..20<Hz, przestrajame P1 (wykładnicze)
2 |
1 |
sinus 20Hz..200Hz, przestrajanie P1 (liniowe) |
2 |
2/3 / .. /12 |
sinus 25 / 30 / 31,25 t 40 / 50 / 60 / 62.5 i 80 i '00 / 125 /160 H? |
3 |
1 |
sinjs 200Hz..2kHz, przestrajame P1 (liniowe) |
3 |
2/3/.. /12 |
sinus 250 / 300 / 312,5 / 400 / 500 / 600 / 625 / 800 /1000 / 1250 /1600 Hz |
4 |
1 |
sinus 2kHz .20kHz, przestrajanie P1 (liniowe) |
4 |
2/3/.. /12 |
sinus 2,5 / 3 / 3,125 / 4 / 5 / 6 / 6.25 / 8 / 10 /12.5 /16 kHz |
5 |
X |
szum biały |
6 |
X |
sinus 1Hz |
7 |
X |
prostokąt 1 Hz |
8 |
X |
prostokąt 10 Hz |
9 |
X |
prostokąt 100Hz |
10 |
X |
pła 1Hz |
11 |
X |
piła 10Hz |
12 |
X |
piła 100Hz |
14 Lipiec2005 Elektronika dla Wszystkich