Generator funkcyjny 400kHz na ICL8038

function-gen-14Warsztatowy generator funkcyjny z regulacją częstotliwości od 0Hz do ponad 400kHz, regulacją amplitudy, składowej stałej, wypełnienia, oraz oczywiście wyboru funkcji przebiegu – prostokąt, trójkąt, oraz sinus. Generator oparty o poczciwy generator scalony ICL8038 który do zastosowań amatorskich daje wystarczająco dobre przebiegi.

Zmiany i problemy

Układ ten został zaprojektowany nieco odmiennie niż nakazywała by nota katalogowa ICLa czy inne podobne konstrukcje. Przetestowałem różne konfiguracje z różnymi peryferiami i wybrałem tę najlepszą – tak aby uzyskać dobre przebiegi przy 400kHz. Niektórych elementów się pozbyłem, dodałem własne rozwiązania. Obydwie kostki które mam oscylują do około 420-430kHz, i praktycznie do takiej częstotliwości można je rozpędzać uzyskując dobry przebieg.

400kHz-sineNajwiększą bolączką tych scalonych generatorów jest silne zniekształcanie przebiegu sinusoidalnego na wyjściu pin 2 przy częstotliwościach powyżej 100kHz – dla tego większość rozwiązań opartych o ten układ ma tak lub podobnie ograniczoną częstotliwość. Tutaj ten problem obszedłem poprzez nie obciążanie wyjścia przebiegu prostokątnego z pinu 9 (otwarty kolektor który trzeba podciągnąć do zasilania). W jakiś sposób jakość innych przebiegów jest uzależniona od tego pinu. Rezystor podciągający jest załączany dopiero wraz z przełączeniem wyjścia na prostokąt – tym samym z resztą przełącznikiem. Pozbyłem się również zalecanego w nocie potencjometru 10M do „poprawy” przebiegu. Jak się okazało tylko on tam przeszkadzał, i dodawał charakterystyczny dziobek na szczycie górnej połówki sinusa.

400kHz-squareWyjście prostokąta z pinu 9 w trybie otwartego kolektora normalnie nigdy nie będzie w stanie dać przebiegu prostokątnego przy takich częstotliwościach. Zbocze narastające uzależnione jest wyłącznie od wspomnianego rezystora podciągającego i narasta bardzo wolno. Jeśli by dać zbyt mocny rezystor, to z kolei zbocze opadające będzie słabe bo wewnętrzny tranzystor będzie zbyt mocno obciążony. Tutaj przebieg prostokątny poprawiłem przy pomocy komparatora tak aby zbocza były jak najbardziej strome, strome na ile oczywiście pozwoli zastosowany komparator. Widoczny na schemacie LM393 o czasie reakcji 1.3µs został zastąpiony komparatorem LM293 o czasie reakcji 300ns – przy 400kHz prostokąt jest akceptowalny, ale dobrze będzie zastosować jeszcze szybszy model.

400kHz-triangleAmplituda sygnałów niestety nie jest równa na każdym przebiegu, testy pokazały że próbując dopasować sygnał zwykłymi dzielnikami R/R wierzchołki przebiegów będą bardzo zniekształcone (prostokąt i trójkąt zaokrąglone) – także zrezygnowałem z takich dzielników. Przy zasilaniu układu ICL napięciami +-12V, daje on przebiegi o napięciach VPP:

Sinus = 0.22 * VCC
Trójkąt = 0.33 * VCC
Prostokąt = 0.9 * VCC

Przy czym ten ostatni nas nie dotyczy bo wpada on na wejście komparatora zasilanego napięciami +-5V, dającym na wyjściu sygnał o wartości równej niemal swoim napięciom zasilania, załóżmy że jest to 9,5VPP (peak to peak). Ponieważ napięcie wejściowe dla komparatora posiada większą amplitudę niż jego napięcia zasilania, zdecydowałem się podać je przez zwykły rezystor ograniczający jego prąd. Tutaj, potencjometrem włączonym jako źródło napięcia porównującego dla komparatora, należy ustawić takie samo wypełnienie sygnału jakie zostało ustawione dla ICLa. Sygnał sinusoidalny pochodzący z ICL ma 5,28VPP, a trójkątny 7,92VPP – więc rozrzut nie jest tak duży. Tutaj mała uwaga, skala potencjometru amplitudy może mieć tylko funkcję ozdobną lub można dopasować ją tylko do jednego przebiegu. Zastosowanie dzielników R/R zaokrągla trójkąt i praktycznie całkowicie niszczy prostokąt zamieniając go w trapez lub gorzej – wybór należy do Was.

Regulacja amplitudy oraz składowej stałej

function-gen-6Tak otrzymane przebiegi trzeba podać jeszcze na wzmacniacz operacyjny który to umożliwi. Widoczny na schemacie TL072 (3MHz i Slew Rate na poziomie zaledwie 13V/µs) to absolutne minimum które się nadaje do takiego układu. Przebiegi trójkątne i sinusoidalne będą przeniesione w miarę ładnie, ale o prostokącie możemy zapomnieć. Testowałem również wzmacniacz NE5532 i wypada on znacznie gorzej (10MHz i 8V/µs slew rate). A LM358 nie ma co sobie zawracać nawet głowy. W tym przypadku użyłem wzmacniacza o symbolu LM6172 (100MHz i 3000V/µs) który radzi sobie świetnie – przenosi taki prostokąt jaki dostał z komparatora i umożliwia przy tym pełną regulację. Jego pierwsza połówka pracuje w roli wtórnika, tak aby druga pracująca w roli wzmacniacza nie obciążała swoim wejściem sygnałów z ICL bo te są bardzo „delikatne”. Zasilanie tego wzmacniacza z +-12V umożliwia uzyskanie regulacji amplitudy od 0V do 22V. Dodanie do układu regulacji składowej stałej w taki sposób w jaki zostało to zrobione wprowadza jedną niedogodność – przebiegi (a w szczególności prostokąt) o bardzo niskich częstotliwościach (poniżej 100Hz) będą obarczone efektem rozładowywania się kondensatora wspomagającego potencjometr regulacji składowej stałej. Na schemacie jest to 10uF bipolarny, w razie możliwości można dać większy aby zmniejszyć ten efekt.


Do budowy urządzenia wykorzystałem również publikowany wcześniej miernik częstotliwości na avr który dopełnia całość i umożliwia wykonanie nastawy przebiegu bez użycia zewnętrznego miernika lub oscyloskopu. Płytka generatora umożliwia przyłączenie takiego miernika, dostarczając mu napięcia zasilania oraz sygnału do pomiaru. Sygnałem tym zajmuje się druga połówka wcześniej wspomnianego komparatora, która pobiera sygnał zza przełącznika przebiegu, i wytwarza sygnał prostokątny o napięciach +-5V którego potem dolna połówka jest obcinana zwykłą diodą 1N4148 do poziomu -0,7V. Taki sygnał jest podawany na miernik, którego pin wejściowy AVR akceptuje takie sygnały.

Zasilacz

Zasilacz zawarty na płytce wytwarza napięcia +5V oraz -5V dla komparatora i miernika częstotliwości, oraz +12V i -12V dla układu ICL8038 i wzmacniacza operacyjnego. Podczas uruchamiania układu należy się upewnić czy miernik częstotliwości za bardzo nie obciąża gałęzi dodatniej zasilacza nie powodując spadku napięcia na tyle, że za stabilizatorami 7805 lub 7812 będą występować spadki w postaci uciętych połówek sinusoidy sieciowej. Gdyby tak się stało, należy zwiększyć pojemność głównego kondensatora filtrującego lub użyć mocniejszego transformatora. Transformator oczywiście o napięciach minimum 2x14V aby umożliwić poprawną pracę stabilizatorom 7812 oraz 7912.

Niedoskonałości

W tym artykule opisałem jak zrobić przedni panel do obudowy, a w załączniku oprócz płytki drukowanej znajduje się też gotowy do wydrukowania projekt przedniego panelu w formacie PDF, przystosowany do obudowy Z1A. Z powodu pewnych ograniczeń programu w którym panel ten projektowałem, skale potencjometrów przedstawiają pełne zakresy regulacji, np wypełnienia od 0% do 100%, gdzie układ takiej regulacji nie osiąga. W szereg z potencjometrami można próbować dodać rezystory tak aby jak najbardziej dopasować wskazania ze skali do stanu faktycznego – ja się w to nie bawiłem. Regulacja wypełnienia odbywa się w zakresie od około 5-10% do około 90-95%, jest nieliniowa, a regulując w dolnej połówce układ zmniejsza częstotliwość swojej oscylacji o rzędy wartości – jest to wada lub sposób działania układu ICL8038. Skale potencjometrów składowej stałej, amplitudy, oraz częstotliwości odzwierciedlają w miarę dokładnie stan faktyczny.

Ekranowanie, dryft

function-gen-10Układ elektroniczny został osłonięty blaszanym ekranem aby zminimalizować nań wpływ pola elektromagnetycznego z transformatora oraz przewodów sieciowych. Sam układ ICL zmienia swoją częstotliwość oscylacji zależnie od temperatury, więc po włączeniu generatora należy odczekać około dwóch minut aż wszystkie elementy się nagrzeją do swoich temperatur roboczych i dopiero wtedy dokonywać dokładnej regulacji częstotliwości. Przykładowo, przy zimnym układzie i nastawie na 400kHz, po rozgrzaniu częstotliwość spada o około 1-2 kHz. Po ustabilizowaniu się częstotliwość potrafi lekko pływać (winny układ ICL), ale nie powinna się zmieniać w czasie. Z tego też powodu odradzam aktywne chłodzenie obudowy – w mojej obudowie przepływ powietrza przy płytce praktycznie nie istnieje, a stabilizator 7805 (z racji obciążenia go miernikiem częstotliwości) potrafi się dobrze zagrzać – myślę że to nawet pomaga w ustabilizowaniu temperatury.

Dodatkowo

W swojej wersji dodałem także tryb wejścia dla miernika, po przełączeniu przełącznika wyboru zakresu na tryb wejścia, na złącze wyjściowe można podać zewnętrzne sygnały do pomiaru, a oscylacje samego ICLa zostają zatrzymane aby nie wprowadzać błędu. Należy podać sygnał o minimalnym napięciu 0V-3V – taki sygnał jest w stanie mierzyć miernik. Sygnał może być większy, zostaje on dopasowany przez te same elementy które dopasowują go po wyjściu z komparatora. Grafika w załączniku dokładnie obrazuje podłączenie przełączników, w tym przypadku użyłem dwóch obrotowych, 2 x 6 pozycji każdy. W roli złącza wyjściowego na zdjęciach widać „pozłacane” złącze RCA, jest to tymczasowe złącze, ponieważ zamówione przeze mnie gniazda BNC przyszły z dużym opóźnieniem.

W galerii poniżej znajdują się oscylogramy z pracy generatora przy 400kHz.

Galeria:

Pliki:
POBIERZ – Projekt płytki Eagle 6.4.0 oraz PDF wersja 1.1; Plik PDF przedniego panelu




5.00 avg. rating (98% score) - 4 votes

44 komentarze

  1. Cześć, czy te oscylogramy wklejone przy tekście przedstawiają efekt po poprawkach czy opisywane zniekształcenia? Bo wyglądają całkiem przyzwoicie, budowałem już generator na tym układzie i przebiegi były tak beznadziejne że nawet go nie używałem. Tutaj widzę kawał niezłej roboty przy rozpracowaniu tego układu, ciekawi mnie tylko czy tak samo zachowa się układ z innej serii, np wyprodukowany X lat temu – zaskoczyło mnie że sinus poprawia się gdy nie obciążamy wyjścia prostokąta – ewidentna niedoróbka icla, nie powinno tak być. Być może zbuduję ten układ od nowa i sprawdzę :)

    • Tak oscylogramy to już po poprawce. Sam jestem ciekaw jak zachowa się układ produkowany w innych latach, możesz zmontować nawet na stykówce i sprawdzić ;)

  2. Good job!
    I had one ICL8038,but was in search of some nice project like what you have done!
    Excellent job!

  3. RONALDO GOMES

    Gostei muito do trabalho com o icl8038, gostaria de saber se voce tem um desse ja prontinho como na foto pra vender porque eu interesso.

  4. Bardzo dobry projekt, właśnie kończę składać płytkę generatora.
    W jakim programie robiłeś panel czołowy? Czy dałoby radę podesłać plik abym mógł pozmieniać pozycje przełączników?

    pozdrawiam!

    • Front Designer 3.0 – niestety nie jest darmowy. Jeśli nadal jesteś zainteresowany to poszukam pliczku i podeślę na email z komentarza.

  5. Witam,gdy tylko zobaczyłem ten artykuł wyciągnąłem kupionego kiedyś icla i zabrałem się za budowę generatora. Autorowi muszę pogratulować inwencji, wiedzy i doskonale wykonanej pracy.

  6. Jaki masz oscyloskop ?

    • HSD-15030 którego chyba już nie idzie kupić chyba że używany. Sprawdza się świetnie, szkoda że tylko jeden kanał.

  7. Witam, właśnie kończę składać pytkę tylko zastanawiam się czy potencjometry użyte w projekcie były z końcówką A czy B?

  8. witam,dziekuje za umieszczenie wpanialego artykulu,mam pytanie czy jest mozliwosc zmniejszenie rozmiarow tzn zasilanie tylko z baterii?oraz czy duzo trzeba bedzie przerabiac gdzy chcialbym sobie zrobic generator w zakresie 20hz-20khz taki kieszonkowy zebym mogl go zabrac wszedzie,dziekuje za pomoc jestem poczatkujacym wiec prosze o wyrozumialosc

    • Zbuduj podstawową wersję wg noty bez dodatkowych układów, będzie prosta, i łatwo da się zasilić z baterii.

  9. Mógłbym Cię prosić o podesłanie schematu wtświetlacza?

  10. przy układach ad9850 masz zakres 0-30 mhz, z max odchyłką 0,5hz

  11. 7 cyfra wyświetlacza nigdy nie jest wykorzystana?? Chciałbym sklonować to urządzenie dla swojego warsztaciku, zastanawiam się czy nie pominąć tej cyfry.

    • Tak, łącząc miernik z tym generatorem, nigdy nie wyświetli on „najstarszej” cyfry, więc śmiało można się jej pozbyć.

  12. To miło, tym bardziej że w projekcie miernika brakuje paru rzeczy przy tej cyfrze.
    A jak bym ładnie poprosił i się uśmiechnął, udało by się z dobyć pdf’a z panelem bez pierwszej cyfry? Nawet okienko chyba w tedy by w środku wypadło.

    • Czego brakuje w projekcie miernika? Chodzi o ograniczenia darmowego eagle?

      Choćbym chciał to nie mogę, ani nie mam już projektu ani programu w którym to robiłem. Polecam prostą edycję choćby w paincie, wystarczy skrócić ramkę albo w ogóle ją wymazać, i wydrukować w skali 1:1, choć z tym już może być problem i trzeba będzie poeksperymentować.

  13. Tak chodziło mi właśnie o te ograniczenia, eagla.
    Trudno jakoś sobie poradzę, a jak nazywał się program w którym panel został stożony? Bardzo ładne skale.

    • Wydaje mi się że frontdesigner 3.0. Nie jest to darmowy program, ale fakt, skale można zrobić na prawdę ładne i dokładne, nie ma tu praktycznie żadnych ograniczeń w udziwnianiu. Z resztą cały program jest bardzo intuicyjny i funkcjonalny, gdyby nie ta zabójcza cena jak dla amatora :)

  14. Jak mocno grzeją się stabilizatory? Widzisz jakieś przeciw skazania by zasilać układ napięciem +- 15v?

    • 7805 grzeje się dosyć mocno bo zasila prądożerne wyświetlacze i jemu przyda się jakieś chłodzenie. Reszta jest w miarę chłodna. Napięcie +-15V po wyprostowaniu jest jak najbardziej ok.

  15. Nie wiem czy dobrze się zrozumieliśmy, nie chodziło mi o napięcie z transformatora tylko o napięcie zasilające, zamiast +-12v. Mam akurat 7815 i 7915, z większy się amplituda co było by korzystne. Max zasilania icl i lm6172 to 36v więc i zapas zostanie, ale może miałeś jakiś powód na te +-12?

    • Jeśli nic nie usmażysz to ok. Przetestuj czy układ się zachowuje dobrze przy takim napięciu. 7805 będzie jeszcze bardziej gorący.

  16. Chyba nadal się nie zrozumieliśmy :p ale to nic, zamiast 7805 będzie lm2590, także luz, czyli rozumiem że zrobiłeś +-12 bo tak było wygodnie takie miałeś części itp.. wiele rzeczy mam, część już jedzie, mam jeszcze pytanko o szybkość pomiaru miernika? Ile trwa pomiar?

    • Czemu się nie zrozumieliśmy? Możesz użyć 7X15 ale przetestuj (oscyloskop) czy całość działa sprawnie. Już nie pamiętam czemu dałem 7X12, nie chodziło o dostępne części. Może wzmacniacz operacyjny który początkowo używałem wymagał takiego napięcia.

      Z tym grzaniem się 7805 trochę się zapędziłem, myślałem że jest podpięty za 7812 ale zerknąłem na schemat i jest bezpośrednio za mostkiem :)

      Podstawa czasu to 1 sekunda, więc miernik zbiera próbki przez całą sekundę i odświeża wynik. Może to sporo i podczas nastawy częstotliwości będzie niewygodne, można w kodzie to przyśpieszyć ale rozdzielczość spadnie proporcjonalnie.

  17. Płytka na zdjęciach różni się od tej która znajduje się w pliku func-gen-1.1-preview.pdf Czym to jest spowodowane i czy ma to wpływ na działanie układu?

  18. i made pcb from zip file you provided but i noticed some connections do not exists, so which pcb is correct one in the pictures or the one in files ? connections im talking about are for those resistors under then GEN connector labeled 1k, 18k, 35k also in schematic they do not exist at all

    thanks in advance

    • PCB from pics was prototype. PCB from attachment is correct.

  19. Ihab F. Riad

    Hi, I am using ICL8038 for building a signal generator to produce sine wave in the range of 35-45Khz. I am using it with an ultrasonic reciver (this is for an experimental setup for measuring the speed of sound).
    I am using TL072 as shown in your circuit. I am using for power 0V and 12V from 7812.

    The problem is here, when I connect the ultrasonic sender and when it starts to oscillate at 40Kz the sine wave from the amplifier gets very distored. Any idea.

    Cheers

  20. Jakie to przełączniki obrotowe? 6 pozycji 2 obwody?

  21. Witam,

    Chciałbym się dowiedzieć jaką rolę spełnia C15, 10uF (zaraz nad potem 10K offset)?
    Co się zmieni jeżeli jego wartość zmaleje?

  22. Wiem, że nie jest to zbyt ambitne pytanie ale gdzie dokładnie podłączyć te piny?
    http://i.imgur.com/itmGTVk.jpg

    http://imgur.com/5f1OK0Q oraz chciałem zapytać czy dobrze rozumiem zastosowanie tych wyjść, pierwszy z napięciem można użyć np. do zasilania licznika częstotliwości, drugie piny służą do podłączenia wejścia tegoż licznika częstotliwości a trzecia para jest wyjściem generatora przebiegów prostokątnych?

  23. Jaki jest to rodzaj obudowy?? Bo widzę, że korzystasz tylko z tego jednego rodzaju i chciałbym się dowiedzieć co to jest.

  24. Marek Kondeja

    Podoba mi się projekt ale nie mam czasu na jego realizacje proszę o pomoc a czas to pieniądz tel 602667142

  25. فرشاد

    Tank you for this fancion ….. :-)ماچ

  26. This is the schematic I have.

  27. Nice work. I am particularly impressed with your write up. I have been trying to design a 100kHz square wave, triangular and sine wave generator using LM339 and TL072P. I need a working schematic as mine is not working.

    Attached is my schematic. thanks

  28. Hej,
    Jest gdzieś dostępny spis elementów czy trzeba sobie spisać ze schematu?

  29. manu morante

    Wide Frequency Range . . . . . . . . . . . .0.001Hz to 300kHz ( ICL8038 )

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Proszę pozostawić te dwa pola tak jak są: