Sadržaj:

Generator funkcija: 12 koraka (sa slikama)
Generator funkcija: 12 koraka (sa slikama)

Video: Generator funkcija: 12 koraka (sa slikama)

Video: Generator funkcija: 12 koraka (sa slikama)
Video: Автомобильный генератор для генератора с самовозбуждением с использованием ДИОДА 2024, Srpanj
Anonim
Generator funkcija
Generator funkcija
Generator funkcija
Generator funkcija

Ova uputa opisuje dizajn generatora funkcija temeljenog na Maxims -ovom analognom integriranom krugu MAX038

Generator funkcija vrlo je koristan alat za nakaze elektronike. Potreban je za ugađanje rezonantnih krugova, ispitivanje audio i video opreme, projektiranje analognih filtera i za mnoge druge različite svrhe.

Danas postoje dvije glavne vrste generatora funkcija; digitalni, (temeljeni na DSP -u, DDS -u …) koji se sve češće koriste i analogni, koji su bili podrijetlo.

Obje vrste imaju svoje prednosti i nedostatke. Digitalni generatori mogu generirati signale s vrlo stabilnom frekvencijom, ali imaju problema s generiranjem vrlo čistih sinusnih signala (što nije problem za analogni). Također, generatori s glavnom funkcijom širenja temeljeni na DDS pristupu nemaju tako veliki raspon generiranja frekvencija.

Dugo sam želio dizajnirati generator korisnih funkcija, koji bi nekako mogao kombinirati neke prednosti oba tipa (analognih i digitalnih) generatora. Odlučio sam dizajn zasnovati na Maxim čipu MAX038*

* Napomena: Maxim više ne proizvodi i ne prodaje ovaj čip. To je zastarjelo. Još uvijek ga je moguće pronaći na eBayu, Aliexpressu i drugim web stranicama za elektroničke komponente.

Postoje i drugi čipovi za generiranje analognih funkcija (XR2206 iz Exara, icl8038 iz Intersila), ali imao sam

dostupan je jedan MAX038 i ja sam ga koristio. Digitalne značajke generatora funkcija izvedene su jednim čipom Atmega328. Njegove funkcije su sljedeće:

  • kontrolira odabir frekvencijskog raspona
  • kontrolira vrstu signala (sinusni, pravokutni, trokutasti, pilasti)
  • mjeri amplitudu signala
  • mjeri DC pomak
  • mjeri frekvenciju signala
  • mjeri THD sinusnog signala u audio rasponu (ovo se još mora primijeniti)
  • prikazuje sve ove informacije na LCD zaslonu veličine 16x2.

Korak 1: Opis MAX038

MAX038 Opis
MAX038 Opis

Priložio sam podatkovni list MAX038. Tu se mogu vidjeti najvažniji parametri čipa:

♦ 0,1Hz do 20MHz raspon radnih frekvencija

♦ Trokutni, pilasti, sinusni, kvadratni i pulsni valni oblici

♦ Nezavisna podešavanja frekvencije i radnog ciklusa

♦ 350 do 1 frekvencijski raspon

♦ Varijabilni radni ciklus od 15% do 85%

♦ Izlazni međuspremnik niske impedancije: 0,1Ω

♦ Niski temperaturni pomak od 200 ppm/° C

Drugi važan zahtjev je potreba dvostrukog napajanja (± 5V). Izlazna amplituda je fiksna (~ 2 VP-P s pomakom od 0 V DC).

Na stranici 8 podatkovnog lista može se vidjeti blok-dijagram čipa. Na stranici 11 može se vidjeti najjednostavniji sklop koji se može koristiti za generiranje signala sinusnog vala. Ovaj krug je uzet kao osnova za dizajn generatora funkcija.

Korak 2: Krug…

Krug…
Krug…

Na slici je prikazan krug generatora funkcija. Napravio sam ovu sliku s najvećom mogućom razlučivošću kako bih jamčio da se svaka vrijednost.uređaja može ispravno očitati. Sheme izgledaju prilično složene i da bih ih bolje razumio, objasnit ću njihove glavne dijelove zasebno. Mnogi bi me čitatelji mogli kriviti da je sklop previše suvišan. To je istina. Isprva možete vidjeti da sadrži dva čipa MAX038. Razlog je taj što PCB podržava obje vrste paketa SO i DIP. Višak se može vidjeti i u nekim funkcijama -

1) LED diode prikazuju trenutni raspon aktivnih frekvencija, ali se također prikazuju i na LCD -u;

2) LED diode se također koriste za označavanje vrste signala, ali i LCD prikazuje te informacije

Dizajn je napravljen na ovaj način kako bi korisniku omogućio veću fleksibilnost - prema želji ne bi mogao koristiti LCD ili jednostavno može izostaviti lemljenje LED dioda. Lemio sam ih kako bih mogao otkloniti pogreške u funkcionalnostima tijekom faza projektiranja.

Također se može primijetiti da koristim puno opampsa. Neki od njih mogu se izostaviti bez problema - osobito međuspremnici. U današnje vrijeme opamps sami po sebi nude veliku redundanciju - u jednom paketu možete pronaći 2, 4 čak 8 zasebnih pojačala, i to po relativno niskoj cijeni. Zašto ih ne koristiti?

Suvišni su i kondenzatori za filtriranje - svaki upotrijebljeni analogni čip ima svoju vlastitu bateriju kondenzatora (tantal + keramički kondenzatori za oba izvora). Neki od njih također se mogu izostaviti.

Korak 3: Objašnjenje kruga - Napajanje (1)

Objašnjenje kruga - Napajanje (1)
Objašnjenje kruga - Napajanje (1)

Kao što sam rekao, ovaj generator zahtijeva dvostruko napajanje. Pozitivni napon nastaje uporabom linearnog regulatora napona 7805. Negativno napajanje generira čip 7905. Srednja točka dodira 2x6V transformatora spojena je na zajedničko uzemljenje ploče. Generirana napajanja - i pozitivno i negativno odvajaju se od analognih i digitalnih klinova. Dvije LED diode ukazuju na prisutnost svakog napajanja.

Korak 4: Objašnjenje kruga - Upravljanje frekvencijskim rasponom (2)

Objašnjenje kruga - Upravljanje frekvencijskim rasponom (2)
Objašnjenje kruga - Upravljanje frekvencijskim rasponom (2)

Za pokrivanje velikog frekvencijskog raspona koristi se više kondenzatorskih banaka. Kondenzatori imaju različite vrijednosti i definiraju različite podfrekvencije. Tijekom rada koristi se samo jedan od ovih kondenzatora - njegova donja ploča uzemljena je MOS tranzistorskom sklopkom. Donju ploču kondenzatora koja će biti uzemljena kontrolira Atmega328 pomoću čipa demultipleksera 74HC238. Kao MOS sklopke koristio sam tranzistore BSS123. Glavni zahtjev za ovu sklopku je imati nizak Ron i najmanji mogući kapacitet odvoda. Digitalna kontrola kondenzatorske baterije može se izostaviti - PCB sadrži rupe za lemljenje žica za mehanički okretni prekidač.

Korak 5: Objašnjenje kruga - podešavanje frekvencije (3)

Objašnjenje kruga - podešavanje frekvencije (3)
Objašnjenje kruga - podešavanje frekvencije (3)

Na slici su prikazani upravljački krug frekvencije i radnog ciklusa. Tamo sam koristio standardni LM358 opamp (dvostruko pojačalo u jednom paketu). Koristio sam i dva 10K potenciometra.

Čip MAX038 generira interni referentni napon od 2,5 V, koji se normalno koristi kao referenca za sva podešavanja.

Ovaj napon se primjenjuje na invertirajući ulaz IC8a i generira referencu negativnog napona koji se koristi za DADJ (podešavanje radnog ciklusa). Oba napona se primjenjuju na potenciometru za DADJ, čiji je srednji slavina puferirana i primijenjena na DADJ pin čipa MAX038. Kratkospojnik JP5 može se koristiti za onemogućavanje funkcije DADJ, kada je spojen na masu. Upravljanje frekvencijom "Course" vrši se promjenom struje koja je potopljena / izvor u MAIN038 "IIN" pin. Ova struja definirana je otpornikom R41 i izlaznim naponom opampa koji puferira srednju slavinu potenciometra za kontrolu frekvencije kursa. Sve se to može zamijeniti jednim potenciometrom (u spoju s reostatom) između pinova REF i IIN MAX038.

Korak 6: Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)

Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)
Objašnjenje kruga - Upravljanje amplitudom, SYNC generiranje signala … (4)

Kao što je zapisano u podatkovnom listu, izlazni signal pf MAX038 ima amplitudu ~ 1 V s istosmjernim naponom jednakim potencijalu uzemljenja.

Htio sam imati mogućnost upravljanja amplitudom signala i moći sam definirati DC pomak. Kao dodatnu značajku želio sam imati SYNC signal s razinama CMOS paralelno s izlaznim signalom. Prema zadanim postavkama čip MAX038 generira takav signal, ali u tablici sam pročitao da ako je ova značajka omogućena (što znači - DV+ pin spojen na 5V), mogu se primijetiti neki vrhovi (šum) u izlaznom analognom signalu. Htio sam zadržati što je moguće čistiji i iz tog sam razloga izvana generirao signal SYNC. PCB je izveden na način da se DV+ pin može lako premostiti na glavno napajanje. SYNC pin je usmjeren na BNC konektor - samo 50 Ohm otpornik mora biti lemljen. U tom slučaju može se izostaviti sklop za generiranje SYNC signala. Ovdje kao što vidite koristim i dvostruke potenciometre, ali oni nisu spojeni paralelno. Razlog tome je - relativno mjerim amplitudu. Napon u srednjoj točki jednog potenciometra detektira Atmega328 ADC i na temelju te vrijednosti izračunava se amplituda signala. Naravno da ova metoda nije vrlo precizna (oslanja se na podudaranje obje sekcije potenciometra, što se ne događa uvijek), ali je dovoljno precizna za moje primjene. U ovom krugu IC2A radi kao međuspremnik napona. IC4A također. IC2B opamp radi kao zbrajajuće pojačalo - stvara izlazni signal funkcionalnog generatora kao zbroj pomaka napona i glavnog signala s podešenom amplitudom. Razdjelnik napona R15. R17 generira odgovarajući naponski signal za mjerenje pomaka glavnog signala istosmjerne struje. Osjeti ga ADC Atmega328. IC4B opamp radi kao usporednik - kontrolira pretvarač generacije SYNC koji realiziraju dva MOS tranzistora (BSS123 i BSS84). U6 (THS4281 - Texas Instruments) pomiče izlazni signal koji generira MAX038 DC s 2,5 V i pojačava ga 1,5 puta. Tako generirani signal detektira AVR ADC i dalje se obrađuje pomoću FFT algoritma. U ovom sam dijelu koristio visokokvalitetne opamps od tračnice do tračnice s propusnošću od 130 MHz (TI - LMH6619).

Radi lakšeg razumijevanja kako točno funkcionira generiranje SYNC signala, dodajem neke slike LTSpice simulacija kruga. Na trećoj slici: plavi signal je pomak napona (ulaz IC2B). Zeleni je izlazni signal s podešenom amplitudom. Crvena je izlazni signal funkcionalnog generatora, Cijan krivulja je SYNC signal.

Korak 7: Dizajn PCB -a

Dizajn PCB -a
Dizajn PCB -a

Koristio sam "Eagle" za projektiranje PCB -a. Naručio sam PCB -e na "PCBway". Njima je trebalo samo četiri dana za proizvodnju ploča i tjedan dana za njihovu isporuku. Njihova je kvaliteta visoka, a cijena izuzetno niska. Platio sam samo 13 USD za 10 PCB -a!

Osim toga, mogao sam naručiti PCB -e različitih boja bez povećanja cijene. Odabrao sam žute:-).

Prilažem gerber datoteke prema pravilima dizajna "PCBway".

Korak 8: Lemljenje

Image
Image
Lemljenje
Lemljenje
Lemljenje
Lemljenje

Prvo sam zalemio uređaje za napajanje.

Nakon ispitivanja opskrbnog bloka, lemio sam čip Atmega328 s pripadajućim uređajima: kvarcni kristal, kondenzatori, kape za filtriranje i ISP konektor. Kao što vidite, imam kratkospojnik u opskrbnoj liniji AVR čipa. Isključujem ga kad programiram čip putem ISP -a. U tu svrhu koristim USBtiny programator.

Kao sljedeći korak lemio sam de-mux čip 74HC238, LED diode pokazuju frekvencijski raspon. U čip Atmega učitao sam mali Arduino program koji je testirao multipleksiranje. (pogledajte video ispod gornje veze)

Korak 9: Lemljenje …

Lemljenje…
Lemljenje…
Lemljenje…
Lemljenje…
Lemljenje…
Lemljenje…

Kao sljedeći korak lemio sam opamps koji rade u DC modu (LM358) te potenciometre za podešavanje frekvencije i DADJ i provjerio sve njihove funkcije.

Nadalje sam lemio sklopke BSS123, kondenzatore za određivanje frekvencije i čip MAX039. Testirao sam funkcionalni generator koji ispituje signal na izvornom izlazu signala čipa. (Možete vidjeti moj stari sovjetski, proizveden 1986., još uvijek radeći osciloskop na djelu:-))

Korak 10: Više lemljenja …

Više lemljenja…
Više lemljenja…
Više lemljenja…
Više lemljenja…
Više lemljenja…
Više lemljenja…

Nakon toga sam lemio utičnicu za LCD zaslon i testirao je sa skicom "Hello world".

Ostale preostale opamps, kondenzatore, potenciometre i BNC konektore sam lemio.

Korak 11: Softver

Image
Image
Softver
Softver

Za izradu firmvera Atmega328 koristio sam Arduino IDE.

Za mjerenje frekvencije koristio sam biblioteku "FreqCounter". Datoteka skice i korištena biblioteka dostupni su za preuzimanje. Napravio sam posebne simbole koji predstavljaju trenutno korišteni način rada (sinus, pravokutnik, trokut).

Na gornjoj slici se mogu vidjeti informacije prikazane na LCD -u:

  • Frekvencija F = xxxxxxxx u Hz
  • Raspon frekvencija Rx
  • Amplituda u mV A = xxxx
  • Odmak u mV 0 = xxxx
  • vrsta signala x

Generator funkcija ima dva gumba na prednjoj strani s lijeve strane - oni se koriste za promjenu frekvencijskog raspona (korak gore -korak dolje). Desno od njih nalazi se klizni prekidač za upravljanje načinom rada, a nakon njega slijeva nadesno slijedi potenciometar za kontrolu frekvencije (naravno, fino, DADJ), amplitude i pomaka. Blizu potenciometra za podešavanje pomaka postavljen je prekidač koji se koristi za komutaciju između fiksnog pomaka na 2,5 V DC i podešenog.

Pronašao sam malu pogrešku u kodu "Generator.ino" u ZIP datoteci - zamijenjeni su simboli za sinusne i trokutaste valne oblike. U jednoj datoteci "Generator.ino" koja je ovdje priložena pogreška je ispravljena.

Korak 12: Treba biti gotov …

Image
Image

Kao posljednji korak namjeravam implementirati dodatnu značajku - mjerenje THD -a sinusnog signala frekvencije zvuka u stvarnom vremenu pomoću FFT -a. To je potrebno jer se radni ciklus sinusnog signala može razlikovati od 50%, što može biti uzrokovano unutarnjim neusklađenostima čipova i drugim razlozima te bi moglo stvoriti harmonijska izobličenja. Radni ciklus može se podesiti potenciometrom, ali bez promatranja signala na osciloskopu ili analizatoru spektra nemoguće je fino izrezati njegov oblik. Izračunavanje THD -a na temelju algoritma FFT moglo bi riješiti problem. Rezultat THD izračuna bit će prikazan na LCD -u u gornjem desnom praznom prostoru.

Na videu se može vidjeti spektar generiranog sinusnog signala MAX038. Analizator spektra temelji se na Arduino UNO ploči + 2,4 -inčni TFT štit. Analizator spektra koristi biblioteku SpltRadex Arduino koju je razvio Anatolij Kuzmenko za izvođenje FFT -a u stvarnom vremenu.

Još uvijek nisam odlučio - koristiti ovu knjižnicu ili koristiti biblioteku FHT koju su stvorili Musiclabs.

Namjeravam koristiti podatke preuzete s mjerenja frekvencijskog mjerila za izračun odgovarajućeg vremenskog okvira uzorkovanja i obustaviti uporabu dodatnih prozora tijekom izračuna FFT -a. Trebam samo pronaći malo slobodnog vremena da se to dogodi. Nadam se da ću uskoro imati neke rezultate….

Preporučeni: