Sari la conținut
ELFORUM - Forumul electronistilor

Generator de semnal


PKP98

Postări Recomandate

Buna seara!

 

Am intentia de a construi un mic generator de semnal (dreptunghiular, triunghiular, sinusoidal)  folosind un AD9833, un microprocesor (Atmega8, Atmega328...) si un LCD. Frecventa maxima o sa fie undeva la 10MHz, nu ma intereseaza mai mult. Initial mi-am generat un semnal dreptunghiular cu un Atmega16, afisam frecventa pe un LCD 2x16 ,era destul de precis. Urmatoarea etapa a fost transformarea semnalului generat intr-un semnal bialternanta, iar cu ajutorul a 4 tranzistori bipolari am reusit sa fac asta, doar ca semnalul nu era simetric, avea o componenta continua. Eliminarea acesteia, dar si alte neajunsuri (timpul de intrare in conductie si blocare al tranzistorilor bipolari ) m-au facut sa ma gandesc la un AO, tocmai ce studiez acum la facultate. Cu ajutorul unui LM358, am construit un amplificator neinversor alimentat de la +-9V, iar cu ajutorul a doua potentiometre puteam sa reglez teniunea de offset si amplitudinea varf la varf. Minunat pana aici !!! Problema apare desigur la frecvente mai mari ( 10kHz ) unde tensiunea la iesirea AO-ului "cea cu galben" arata diferit de cea de la intrare "cea cu albastru":

DS1-Z-Quick-Print2.jpg

 

Din ce am invatat si observat... de vina pare sa fie "Slew Rate-ul" care se poate observa ca are o valoare aproximativa de  0.4-0.45V/us ceea ce corespunde cu datasheet-ul AO-ului care are o valoarea de 0.5V/us. Ce amplificatoare operationale sa folosesc ...cele care au Slew Rate-ul foarte mare? In afara de latimea benzii de frecventa si Slew Rate...mai conteaza alt parametru?

Acesta este bun? https://www.analog.com/media/en/technical-documentation/data-sheets/1223fb.pdf

Motivul pentru care folosesc AD9833 este simplu, consider ca genereaza forme de unda mult mai corecte decat as putea genera eu cu un DAC, cu toate acestea nu ma astept ca la frecventa aceea de 10MHz undele generate sa fie perfecte...dar ma astept totusi ca pana la 2-3 MHz sa nu fie probleme.

Orice sugestie, critica, este bine-venita!

Multumesc frumos!

Link spre comentariu

Amplificatoarele operationale nu sunt destinate generatoarelor de semnal. Au amplificare foarte mare in bucla deschisa la frecvente foarte joase (Hz), dar amplificarea scade obligatoriu la frecvente mai mari (compensare in frecventa). La 1 MHz, LM358 are amplificare unitara. Sunt si AO mai rapide, dar nu pot genera un semnal curat peste cativa kHz.

Un generator de semnal pana la 1 MHz, bun si util, se poate face cu generatorul de functii  XR2206.    https://www.jameco.com/Jameco/Products/ProdDS/34972.pdf 

Se pot adauga un amplificator de putere, un voltmetru si un frecventmetru.

Link spre comentariu

Autorul topicului este un tinar studios, pe valul microcontrollerelor si cu acest generator DDS poate invata in plus si ceva programare. Realizarea este simpla,

 cumpara citeva module, sursa de alimentare, claviatura, afisaj, encoder, citeva switch-uri si adapteaza un proiect gata facut cu circuit,

 soft si HEX si gata generatorul. Are precizie si acuratete, forme de unda diverse si cu circuite de iesire adecvate poate obtine ce isi doreste.

  image.png.44f3c0bd4b46201544317fb883b4619a.png

Evident categoria "Old Boy" stie si poate realiza generatoare analogice, trebuie circuit, comutatoare, condensatoare de precizie, potentiometre,

 alimentator, scala gradata sau un modul de frecventmetru, atenuator calibrat de nivel, cutie etc. generator care pentru generatia" F" nu are nici un chichirez

 si poate chiar are o anumita ostilitate fata de asemenea realizari.

Am spus ca se cumpara module, deoarece este aproape imposibil sa realizezi un proiect de circuit pentru AD9833, cu anexele necesare si pentru inceput

 ar fi bine sa alegeti pentru model si studiu un proiect gata facut:  https://www.allaboutcircuits.com/projects/how-to-DIY-waveform-generator-analog-devices-ad9833-ATmega328p/

Generatorul din link are scheme, soft, proiect de circuite si multe aprecieri.

Succes!

 

@gsabac

 

Link spre comentariu

In primul rand vreau sa va multumesc pentru atentia acordata!

Pe de alta parte:

Acum 2 ore, puriu a spus:

Amplificatoarele operationale nu sunt destinate generatoarelor de semnal.

Eu nu vreau sa-mi generez semnalul cu ajutorul amplificatoarelor operationale, de asta se ocupa un modul cu AD9833 controlat de un microcontroler prin intermediul comunicarii seriale SPI. Cu ajutorul amplificatoarelor operationale vreau sa-mi transform semnalul meu generat deja de AD9833 care are valori doar pozitive intr-un semnal bialternanta. De exemplu semnalul dreptunghiular generat de AD9833 are amplitudinea de 3v si valorea minima 0v. Eu vreau sa obtin la iesire un semnal dreptunghiular cu valorea minima de -3v si valorea maxima de 3v, adica sa fie deoparte si de alta a axei Ox. Nu stiu daca ma exprim corect...

Ideea este ca un amplificator neinversor ma ajuta sa obtin o tensiune de offset variabila "ma pot plimba cu semnalul in sus si jos fata de axa Ox", obtin si o amplificare a semnalului, mica cei drept, dar exista . Am mai cautat cate ceva si am gasit aceasta schema care foloseste un EL2001 si face exact ce vreau eu, de amplificare nu sunt sigur.

hsfglc11.gif

In foaia de catalog scrie ca acest EL2001 are un Slew Rate de 2000v/us, doar ca este un amplificator buffer, care ofera un curent maricel la iesire si o protectie la scurt circuit. 

Cum a spus si domnul @gsabac  o sa folosesc un modul cu AD9833, nu sunt inca in stare sa proiectez un cablaj pentru asemenea frecventa. Oricum sunt sigur ca o sa intampin probleme legate de trasee si alte nebunii, dar rezolvarea o sa vina la timpul ei...pana atunci trebuie sa ajung acolo.

Exact asta vreau sa fac si eu "link-ul postat mai sus", doar ca am nevoie de un AO mai capabil, cu un Slew Rate mult mai mare decat cel utilizat acolo.

Problema apare la alegerea AO-ului, sunt destul de scumpe cele bune si nu vreau sa cumpar ceva gresit!

 

Multumesc frumos!

Link spre comentariu

Ar trebui precizata si amplificarea folosita / dorita pt  Op amp pentru ca in fuctie de asta se poate calcula slew rate-ul minim. Totodata reglarea amplificarii si a offsetului cu acelasi op amp nu este cea mai buna solutie. Lt1223 ar putea fi o solutie buna pentru aceasta aplicatie cu conditia ca amplificarea sa fie maxim 20db ( x10 ) pentru  10 Mhz.Si am vazut ca este si rezonabil ca pret.  Oricum nu teastepta sa gasesti un op amp cu slew rate mare si GBW  >100 Mhz la pret de cativa lei.

Link spre comentariu

Nivelul de iesire din circuitul AD9833 este dat in documentatie.

VOUT reglabil de la 40mV la 650mV doar tensiune pozitiva cu componenta continua.
Voltage Output. The analog and digital output from the AD9833 is available at this pin.

An external load resistor is not required because the device has a 200 Ω resistor on-board.

Deci amplificatorul de iesire extern, va fi excitat cu un generator cu impedanta redusa insa trebuie conectat pe CC deoarece se pot genera

 si frecvente extrem de joase. Toate circuitele prezentate sunt bune, eu prefer LM7171 2,5-4$ in functie de tip, care are performante bune la 10MHz

 sinusoidal si dreptunghiular si amplificarea necesara  ar fi cam de 10-15.

La acest generator problemele pricipale sunt din domeniul software (eventual si learning) si trebuie  experimentat si construit mai intii generatorul si daca se reuseste

 se poate trece la un modul de iesire si eventual chiar la un atenuator calibrat.

 

@gsabac

Link spre comentariu

Am mai rasfoit putin documentatia pentru AD9833 si am gasit doar ca tensiunea de iesire este cuprinsa intre 38mV si 0.65V, nu am gasit faptul ca aceasta ar putea fi reglabila, poate nu am am inteles eu.

Citat

An external load resistor is not required because the device has a 200 Ω resistor on board. The DAC generates an output voltage of typically 0.6 V p-p.

 Eu consider ca cei 38mV reprezinta componenta continua, iar amplitudinea varf la varf este ( 0.65V-0.038) care face aproximativ cei 0.6 V p-p. Daca lucrurile stau in felul urmator, o amplificare de 20dB este suficienta .

Am luat in calcul si acel LM7171 si acum chiar nu stiu ce sa mai aleg.

Multumesc frumos!

Link spre comentariu
2 hours ago, gsabac said:

La acest generator problemele pricipale sunt din domeniul software (eventual si learning) si trebuie  experimentat si construit mai intii generatorul si daca se reuseste

 se poate trece la un modul de iesire si eventual chiar la un atenuator calibrat.

 

@gsabac

Din contra... asta mi se pare cel mai usor de facut. Pana la urma are doar 3 amarati de registri.

Nu prea ma prind cu tensiunea de iesire cum e... nu vad sa se poata regla din soft si nici din schema bloc a ic-ului nu reiese asta. Vad ca vout este legat direct la iesirea dac-ului.

Link spre comentariu
46 minutes ago, PKP98 said:

Am luat in calcul si acel LM7171 si acum chiar nu stiu ce sa mai aleg.

LM7171 a mai fost folosit de catre un coleg pentru un generator cu DDS.

Editat de franzm
Link spre comentariu
12 hours ago, PKP98 said:

Am mai rasfoit putin documentatia pentru AD9833 si am gasit doar ca tensiunea de iesire este cuprinsa intre 38mV si 0.65V, nu am gasit faptul ca aceasta ar putea fi reglabila, poate nu am am inteles eu.

 Eu consider ca cei 38mV reprezinta componenta continua, iar amplitudinea varf la varf este ( 0.65V-0.038) care face aproximativ cei 0.6 V p-p. Daca lucrurile stau in felul urmator, o amplificare de 20dB este suficienta .

Am luat in calcul si acel LM7171 si acum chiar nu stiu ce sa mai aleg.

Multumesc frumos!

Am rasfoit cu atentie marita documentatia circuitului AD9833 si intradevar nu am gasit nici o referinta ca nivelul s-ar regla prin soft, deci daca luam in consideratie

 un nivel mediu de circa +350mV, asa cum se arata si in documentatia din link-ul "allaboutcircuits" nivelul de zero al circuitul de iesire se aduce la zero cu un trimer,

  si tot asa cred ca ati realizat si dvs.

Alegeti circuitul pe care il obtineti cel mai convenabil si capabil de a scoate la iesire semnale dreptunghiulare acceptabile,

 adica fronturi de iesire de 10- 15nS pentru un semnal dreptunghiular la frecventa de 10MHz.

 

@gsabac

  

Link spre comentariu

Buna seara!

 

Mi-am facut putin timp si am ales 4 amplificatoare operationale din cele prezentate aici:

1. Cel prezentat de @nico_2010  este SMD, mai greu cu PCB-ul si lipirea lui, iar alimentarea este de +-5V, asta inseamna o amplitudine varf la varf a semnalului meu de maxim 8V.

2. LM7171 http://www.ti.com/lit/ds/symlink/lm7171.pdf pare destul de bun, are un Slew Rate de 4100V/us, alimentare de +-15V si o amplificare de aproximativ 30dB la frecventa de 10MHz si este destul de ieftin, nu inteleg de ce, poate ma ajuta cineva.

3. LT1223 https://www.analog.com/media/en/technical-documentation/data-sheets/1223fb.pdf pare varianta mai proasta (parerea mea... astept comentarii) a lui LM7171. Are un Slew Rate de 1000v/us, alimentare +-15V si o amplificare de 20dB la frecventa de 10MHz.

4. AD811 https://www.analog.com/media/en/technical-documentation/data-sheets/AD811.pdf destul de scump, are un Slew Rate de 2500V/us, alimentare +-15V si o amplificare de 20dB pana la frecventa de 30Mhz.

 

Eu m-am gandit la o amplitudine varf la varf a semnalului final de minim 5Vpp, ce parere aveti, este mica, este mare?

Sursa de alimentare diferentiala este formata clar dintr-un transformator capsulat (2x12V--2x0.3A), doua stabilizatoare 7812 si 7912. Alimentarea de 5V...probabil cu un 7805 de la cei 12V sau caut un transformator cu o alta infasurare separata.

Ideea este ca vreau cat mai repede cu putinta sa dau comanda de piesele necesare asa ca as dorii sugestii, pareri, critici....

Nu m-am hotarat cum o sa fac varierea amplitudinii varf la varf (continuu cu un potentiometru sau in trepte din 5 in 5dB ). As dorii o mica protectie la iesirea generatorului (nu am idee cum as putea sa fac) si o iesire TTL (o sa ma ajute in proiectele mele care in general sunt cu microcontrolere).

 

Multumesc frumos pentru interes si ajutor!

 

 

 

 

Editat de PKP98
Link spre comentariu
Acum 9 ore, PKP98 a spus:

Nu m-am hotarat cum o sa fac varierea amplitudinii varf la varf (continuu cu un potentiometru sau in trepte din 5 in 5dB ). As dorii o mica protectie la iesirea generatorului (nu am idee cum as putea sa fac) si o iesire TTL (o sa ma ajute in proiectele mele care in general sunt cu microcontrolere).

 

 De ce nu faci tu proiectul din link-ul pe care l-ai mentionat in primul topic? Folosind modularizarea iti va fi mai usor sa-ti dezvolti proiectul si sa-l modifici pe masura ce iti vin idei cu privire la cum protejezi iesirea (exista solutii si pentru asta) si/sau cum sa obtii semnal TTL (si pentru asta exista solutii, chiar simple). In plus, initial poti comanda doar piesele de care ai nevoie pentru varianta de baza si ulterior iti poti comanda componentele de care ai nevoie pentru extinderea proiectului.

In alta ordine de idei si modificarea nivelului de iesire a semnalulului o poti face digital, folosind un potentiometru digital (ceva de genul MCP41010 ...MCP41100).

Mergi pe varianta LM7171 (accepta scurtcircuit pe iesire pe perioada nedefinita).

Link spre comentariu

Exista si variante analogice , cu cativa tranzistori . Semnalul de iesire se poate transforma in dreptunghi la fel de usor ( sau de greu ... ) . Semnalul triunghiular , ma rog , la frecvente de MHz , o fi si el necesar ... momentan nu stiu la ce . Se gasesc si pentru asta rezolvari . 

 

P.S. - o schema pe care am testat - o acum zeci de ani ... 30 KHz - 30 MHz . Semnalul e de buna calitate , stabil , cu nivel suficient . Cu ceva interventii la L1 si L12 , se extinde inferior la 10 KHz si superior peste 50 MHz . Se poate " moderniza " , acord cu varicap ( tensiune de comanda C.C. , eventual sintetizata de alte blocuri ) etc . Tranzistorii nu sant " batuti in cuie " , se pot adapta si variante mai moderne , cu performante (si) mai bune .

 

Generator semnal.PNG

Editat de gauss
Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări