Talaan ng mga Nilalaman:

Function Generator: 12 Hakbang (na may Mga Larawan)
Function Generator: 12 Hakbang (na may Mga Larawan)

Video: Function Generator: 12 Hakbang (na may Mga Larawan)

Video: Function Generator: 12 Hakbang (na may Mga Larawan)
Video: Electric Science Free Energy Using Speaker Magnet 100% 2024, Hulyo
Anonim
Function Generator
Function Generator
Function Generator
Function Generator

Inilalarawan ng itinuturo na ito ang disenyo ng function generator batay sa Maxims's Analog integrated circuit MAX038

Ang function generator ay lubhang kapaki-pakinabang na tool para sa freaks ng electronics. Kailangan ito para sa pag-tune ng mga circuit ng resonance, pagsubok ng kagamitan sa audio at video, pagdidisenyo ng mga analog filter at para sa maraming iba`t ibang mga layunin.

Ngayon mayroong dalawang pangunahing uri ng mga generator ng pagpapaandar; digital, (batay sa DSP, DDS…) na higit na madalas na ginagamit at analog, na kung saan ay ang mga pinagmulan.

Ang parehong uri ay may kanilang mga kalamangan at dehado. Ang mga digital generator ay maaaring makabuo ng mga signal na may napaka-matatag na dalas, ngunit mayroon silang mga problema sa pagbuo ng napaka-purong mga signal ng sine (kung ano ang hindi problema para sa isang analog). Gayundin ang pangunahin na kumakalat ng mga generator ng pagpapaandar batay sa diskarte ng DDS ay hindi gaanong kalaki sa saklaw ng pagbuo ng dalas.

Simula ng mahabang panahon nais kong mag-disenyo ng isang kapaki-pakinabang na generator ng pagpapaandar, na maaaring pagsamahin ang ilan sa mga pakinabang ng parehong uri (analog at digital) na mga generator. Napagpasyahan kong ibase ang disenyo sa Maxim chip MAX038 *

* Remark - ang chip na ito ay hindi na ginawa at ibinebenta ng Maxim. Ito ay lipas na. Posible pa ring hanapin ito sa eBay, Aliexpress at iba pang mga site para sa mga elektronikong sangkap.

Mayroon ding mga iba pang mga analog function generator chip (XR2206 mula sa Exar, icl8038 mula sa Intersil), ngunit mayroon akong

isang MAX038 ang magagamit, at ginamit ko ito. Ang mga digital na tampok ng generator ng pagpapaandar ay ginaganap ng isang Atmega328 chip. Ang mga pagpapaandar nito ay ang mga sumusunod:

  • kinokontrol ang pagpili ng saklaw ng dalas
  • kinokontrol ang uri ng signal (sine, hugis-parihaba, tatsulok, sawtooth)
  • sumusukat sa amplitude ng signal
  • sinusukat ang offset ng DC
  • sumusukat sa dalas ng signal
  • sinusukat ang THD ng sine signal sa saklaw ng audio (kailangan pa ring ipatupad)
  • ipinapakita ang lahat ng impormasyong ito sa isang character na 16x2 LCD display.

Hakbang 1: Paglalarawan ng MAX038

Paglalarawan MAX038
Paglalarawan MAX038

Inilakip ko ang MAX038 datasheet. Makikita ang pinakamahalagang mga parameter ng chip:

♦ 0.1Hz hanggang 20MHz Saklaw ng Frequency ng Operating

♦ Mga Triangle, Sawtooth, Sine, Square, at Pulse Waveforms

♦ Malayang Pagdaragdag ng Frequency at Duty-Cycle

♦ 350 hanggang 1 Saklaw ng Pag-sweep ng Frequency

♦ 15% hanggang 85% Variable Duty Cycle

♦ Mababang-Impedance Output Buffer: 0.1Ω

♦ Mababang 200ppm / ° C Temperature Drift

Ang isa pang mahalagang kinakailangan ay ang pangangailangan ng dalawahang suplay (± 5V). Ang output amplitude ay naayos (~ 2 VP-P na may 0 V DC offset).

Sa pahina 8 ng datasheet makikita ang block-diagram ng maliit na tilad. Sa pahina 11 ay makikita ang pinakasimpleng circuit, na maaaring magamit para sa pagbuo ng sine signal ng alon. Ang circuit na ito ay kinuha bilang batayan para sa disenyo ng function generator.

Hakbang 2: Ang Circuit …

Ang Circuit …
Ang Circuit …

Sa larawan ay ipinakita ang circuit ng function generator Ginawa ko ang imaheng ito ng may pinakamataas na posibleng resolusyon upang garantiya na ang bawat.device na halaga ay maaaring basahin nang maayos. Ang mga eskematiko ay mukhang kumplikado at upang mas maintindihan ay ipapaliwanag ko nang magkahiwalay ang mga pangunahing bahagi. Maraming mga mambabasa ang maaaring sisihin sa akin na ang circuit ay masyadong kalabisan. Tama iyan. Sa una maaari mong makita na naglalaman ito ng dalawang chips na MAX038. Ang dahilan dito ay sinusuportahan ng PCB ang parehong uri ng mga package na SO at DIP. Ang kalabisan ay makikita rin sa ilang mga pagpapaandar -

1) Ipinapakita ng LED ang kasalukuyang aktibong saklaw ng dalas, ngunit ito rin ay ipinapakita sa LCD;

2) Ginagamit din ang mga LED upang ipahiwatig ang uri ng signal, ngunit ipinapakita rin ng LCD ang impormasyong ito

Ang disenyo ay tapos na sa ganitong paraan upang payagan ang higit na kakayahang umangkop sa gumagamit - sa ilalim ng pagnanais hindi niya maaaring gamitin ang LCD, o maaari lamang na alisin ang paghihinang ng mga LED. Naghinang ako sa kanila upang ma-debug ang pagpapaandar sa mga yugto ng disenyo.

Mapapansin din na gumagamit ako ng maraming mga opamp. Ang ilan sa mga ito ay maaaring tanggalin nang walang mga problema - lalo na ang mga buffer. Sa kasalukuyang oras ang mga opamp sa pamamagitan ng kanilang sarili ay nag-aalok ng malaking kalabisan - sa isang pakete maaari mong makita ang 2, 4 kahit 8 magkakahiwalay na amplifiers, at ito sa medyo mababang presyo. Bakit hindi gamitin ang mga ito?

Ang kalabisan din ang mga pagsasaayos ng capacitor - ang bawat analog chip na ginamit ay may sariling capacitor bank (tantalum + ceramic capacitors para sa parehong mga supply). Ang ilan sa kanila ay maaari ring alisin.

Hakbang 3: Pagpapaliwanag sa Circuit - Power Supply (1)

Paliwanag sa Circuit - Power Supply (1)
Paliwanag sa Circuit - Power Supply (1)

Tulad ng sinabi ko na ang generator na ito ay nangangailangan ng dalawahang supply. Ang positibong boltahe ay nilikha sa pamamagitan ng paggamit ng 7805 linear voltage regulator. Ang negatibong supply ay nabuo ng 7905 chip. Ang gitnang tap point ng 2x6V transpormer ay konektado sa karaniwang lupa ng board. Ang nabuong mga power supply - parehong positibo at negatibo ay pinaghiwalay sa analog at digital ng mga chock. Dalawang LEDs ang nagpapahiwatig ng pagkakaroon ng bawat supply.

Hakbang 4: Pagpapaliwanag sa Circuit - Pagkontrol sa Saklaw ng Frequency (2)

Paliwanag sa Circuit - Pagkontrol sa Saklaw ng Frequency (2)
Paliwanag sa Circuit - Pagkontrol sa Saklaw ng Frequency (2)

Upang masakop ang saklaw ng malaking dalas ng isang maramihang capacitor bank ang ginagamit. Ang mga capacitor ay may magkakaibang halaga at tinutukoy nila ang iba't ibang mga sub-saklaw ng dalas. Isa lamang sa mga capacitor na ito ang ginagamit sa panahon ng trabaho - ang ilalim na plato ay pinagbabatayan ng switch ng transistor ng MOS. Aling mga capacitor sa ilalim na plato na mai-grounded ay kinokontrol ng Atmega328 sa pamamagitan ng paggamit ng demultiplexer chip 74HC238. Bilang paglipat ng MOS ginamit ko ang BSS123 transistors. Ang pangunahing kinakailangan para sa switch na ito ay upang magkaroon ng mababang Ron at ang pinakamababang posibleng capacitance ng alisan ng tubig. Ang digital control ng capacitor bank ay maaaring alisin - ang PCB ay naglalaman ng mga butas para sa paghihinang ng mga wire para sa mechanical rotary switch.

Hakbang 5: Pagpapaliwanag sa Circuit - ang Pagsasaayos ng Frequency (3)

Pagpapaliwanag sa Circuit - ang Frequency Adjustment (3)
Pagpapaliwanag sa Circuit - ang Frequency Adjustment (3)

Sa larawan ay ipinapakita ang dalas at daloy ng kontrol sa cycle ng tungkulin. Doon ko ginamit ang karaniwang LM358 opamp (dual amplifier sa isang pakete). Gumamit din ako ng dalawahang 10K potentiometers.

Ang MAX038 chip ay bumubuo ng panloob na boltahe na sanggunian na 2.5V, na ginagamit nang normal bilang sanggunian para sa lahat ng mga pagsasaayos.

Ang boltahe na ito ay inilalapat sa pag-invert ng input ng IC8a at bumubuo ito ng negatibong sanggunian ng boltahe na ginamit para sa DADJ (pag-aayos ng duty cycle). Ang parehong mga voltages ay inilapat sa potentiometer para sa DADJ, kung saan ang gitnang tapikin ang buffered at inilapat sa DADJ pin ng MAX038 chip. Ang jumper JP5 ay maaaring magamit upang hindi paganahin ang pagpapaandar ng DADJ, kapag nakakonekta sa lupa. Ang "kurso" na kontrol sa dalas ay preformed sa pamamagitan ng pagbabago ng kasalukuyang lumubog / sourced sa MAX038 "IIN" pin. Ang kasalukuyang ito ay tinukoy ng risistor R41 at ang output boltahe ng opamp buffering sa gitnang tapikin ng potensyal na kontrol ng dalas ng potensyomiter. Ang lahat ng ito ay maaaring mapalitan ng solong potensyomiter (sa reostat na koneksyon) sa pagitan ng mga REF at IIN MAX038 na mga pin.

Hakbang 6: Pagpapaliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Hudyat ng SYNC… (4)

Pagpapaliwanag sa Circuit - Control ng Amplitude, Pagbuo ng Hudyat ng SYNC… (4)
Pagpapaliwanag sa Circuit - Control ng Amplitude, Pagbuo ng Hudyat ng SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)
Paliwanag sa Circuit - Pagkontrol sa Amplitude, Pagbuo ng Senyal na SYNC… (4)

Tulad ng nakasulat sa datasheet ang output signal pf ang MAX038 ay may amplitude ~ 1 V na may boltahe ng DC na katumbas ng potensyal sa lupa.

Nais kong magkaroon ng posibilidad na makontrol ang amplitude ng signal at upang tukuyin ang DC offset sa pamamagitan ng aking sarili. Bilang karagdagang tampok nais kong magkaroon ng signal ng SYNC na may mga antas ng CMOS na kahanay ng signal ng output. Bilang default ang MAX038 chip ay bumubuo ng gayong signal, ngunit sa datasheet nabasa ko na kung pinagana ang tampok na ito (kung ano ang ibig sabihin - ang DV + pin na konektado sa 5V), ang ilang mga tuktok (ingay) ay maaaring sundin sa output analog signal. Nais kong panatilihin ito ay malinis hangga't maaari at sa kadahilanang iyon nilikha ko ang signal ng SYNC sa labas. Ang PCB ay tapos na sa paraan na ang DV + pin ay madaling mai-bridged sa pangunahing suplay. Ang pin ng SYNC ay isinasakay sa konektor ng BNC - 50 Ohm risistor lamang ang dapat na solder. Sa kasong ito, maaaring mawala ang signal circuitry ng SYNC signal. Dito tulad ng nakikita mo Gumagamit din ako ng mga dalawahang potentiometers, ngunit hindi sila konektado sa kahanay. Ang dahilan para doon ay - Sinusukat ko ang amplitude. Ang boltahe sa gitnang punto ng isang potentiometer ay nadarama ng Atmega328 ADC at ang signal amplitude ay kinakalkula batay sa halagang ito. Siyempre ang pamamaraang ito ay hindi masyadong tumpak (umaasa ito sa pagtutugma ng parehong mga seksyon ng potensyomiter, na hindi palaging nangyayari), ngunit ito ay sapat na tumpak para sa aking mga aplikasyon. Sa circuit na ito ay gumagana ang IC2A bilang boltahe buffer. IC4A din. Gumagana ang IC2B opamp bilang summing amplifier - lumilikha ito ng output signal ng functional generator bilang kabuuan ng offset boltahe at ang pangunahing signal na may nababagay na amplitude. Ang divider ng boltahe R15. R17 ay bumubuo ng naaangkop na signal ng boltahe para sa pagsukat ng DC pangunahing signal offset. Ito ay nadama ng Atmega328 ADC. Gumagana ang IC4B opamp bilang tagapaghambing - kinokontrol nito ang inverter na henerasyon ng SYNC na napagtanto ng dalawang MOS transistors (BSS123 at BSS84). Inililipat ng U6 (THS4281 - Texas Instruments) ang output signal na nabuo ng MAX038 DC na may 2.5 V at pinalalakas ito nang 1.5 beses. Kaya ang nabuong signal ay nadama ng AVR ADC at naproseso pa sa FFT algorithm. Sa bahaging ito gumamit ako ng de-kalidad na riles sa mga rail opamp na may 130 MHz bandwidth (TI - LMH6619).

Upang madaling maunawaan kung paano eksakto ang pagbuo ng signal ng SYNC, gumagana kasama ako ng ilang mga larawan ng mga simulation ng LTSpice ng circuit. Sa pangatlong larawan: ang asul na signal ay ang offset boltahe (input ng IC2B). Ang berde ay ang signal ng output na may nababagay na amplitude. Ang pula ay ang signal ng output ng functional generator, Ang cyan curve ay ang signal ng SYNC.

Hakbang 7: Disenyo ng PCB

Disenyo ng PCB
Disenyo ng PCB

Ginamit ko ang "Eagle" para sa pagdidisenyo ng PCB. Inorder ko ang PCB sa "PCBway". Tumagal lamang sila ng apat na araw upang makagawa ng mga board at isang linggo upang maihatid ang mga ito. Mataas ang kanilang kalidad, at ang presyo ay napakababa. 13 USD lang ang bayad ko sa 10 PCB!

Bilang karagdagan sa na maaari akong mag-order ng iba't ibang mga PCB na kulay nang walang pagtaas ng presyo. Pinili ko ang mga dilaw:-).

Inilalakip ko ang mga gerber file alinsunod sa mga patakaran sa disenyo ng "PCBway".

Hakbang 8: Paghihinang

Image
Image
Paghihinang
Paghihinang
Paghihinang
Paghihinang

Una kong pinaghinang ang mga power supply circuitry device..

Matapos masubukan ang supply block, na-solder ko ang Atmega328 chip kasama ang mga sumusuportang aparato: quartz crystal, capacitor, filtering cap at ang ISP connector. Tulad ng nakikita mong mayroon akong isang lumulukso sa linya ng suplay ng AVR chip. Ididiskonekta ko ito kapag pinrograma ko ang chip sa pamamagitan ng ISP. Gumagamit ako ng USBtiny programmer para sa hangaring iyon.

Bilang susunod na hakbang ay hinihinang ko ang de-mux chip 74HC238, ipinapahiwatig ng LED ang saklaw ng dalas. Nag-load ako ng isang maliit na programa ng Arduino sa Atmega chip, na sumusubok sa multiplexing. (tingnan ang video sa ilalim ng link sa itaas)

Hakbang 9: Paghihinang…

Paghihinang…
Paghihinang…
Paghihinang…
Paghihinang…
Paghihinang…
Paghihinang…

Bilang susunod na hakbang ay hinihinang ko ang mga opamp na nagtatrabaho sa DC mode (LM358) at ang dalas at mga potensyal ng pagsasaayos ng DADJ at sinuri ang lahat ng kanilang mga pagpapaandar.

Dagdag dito hinangin ko ang mga switch ng BSS123, ang dalas na tumutukoy ng mga capacitor at ang MAX039 chip. Sinubukan ko ang functional generator na sumusisiyasat ng signal sa output ng signal ng chip ng katutubong. (Maaari mong makita ang aking lumang Soviet, na ginawa noong 1986, gumagana pa rin ang oscilloscope sa pagkilos:-))

Hakbang 10: Higit pang Paghinang…

Marami pang Paghihinang…
Marami pang Paghihinang…
Marami pang Paghihinang…
Marami pang Paghihinang…
Marami pang Paghihinang…
Marami pang Paghihinang…

Pagkatapos nito ay hinangin ko ang socket para sa display ng LCD at sinubukan ito gamit ang "Hello world" sketch.

Inhinang ko ang iba pang natitirang mga opamp, capacitor, potentiometers at ang mga konektor ng BNC.

Hakbang 11: Software

Image
Image
Software
Software

Para sa paglikha ng Atmega328 firmware ginamit ko ang Arduino IDE.

Para sa pagsukat ng dalas ginamit ko ang "FreqCounter" library. Ang sketch file at ang ginamit na library ay magagamit para sa pag-download. Lumikha ako ng mga espesyal na simbolo upang kumatawan sa kasalukuyang ginagamit na mode (sine, hugis-parihaba, tatsulok).

Sa larawan sa itaas ay makikita ang impormasyong ipinakita sa LCD:

  • Dalas F = xxxxxxxx sa Hz
  • Saklaw ng dalas Rx
  • Ang dami sa mV A = xxxx
  • Offset sa mV 0 = xxxx
  • uri ng signal x

Ang function generator ay may dalawang mga pindutan ng itulak sa harap sa kaliwang bahagi - ginagamit ang mga ito ang pagbabago ng saklaw ng dalas (hakbang pataas -taas pababa). Sa kanan ng mga ito ay ang slide switch para sa pagkontrol ng mode, pagkatapos nito mula kaliwa hanggang kanan sundin ang potensyomiter para sa pagkontrol ng dalas (kurso, pagmultahin, DADJ), amplitude at ng offset. Malapit sa offset na potensyomiter ng pagsasaayos ay inilalagay ang switch na ginamit upang magbawas sa pagitan ng naayos na 2.5V DC offset at ang na-tono.

Natagpuan ko ang isang maliit na error sa "Generator.ino" code sa ZIP file - ang mga simbolo para sa mga form ng alon ng sine at tatsulok ay napalitan. Sa solong "Generator.ino" na file na naka-attach dito, ang error ay naitama.

Hakbang 12: Upang Magawa…

Image
Image

Bilang huling hakbang nilalayon kong magpatupad ng karagdagang tampok - pagsukat ng THD ng signal ng sine ng dalas ng audio sa real time gamit ang FFT. Kailangan ito, dahil ang cycle ng tungkulin ng sine signal ay maaaring magkakaiba mula sa 50%, kung ano ang maaaring sanhi ng mga panloob na hindi pagtutugma ng maliit na tilad at iba pang mga kadahilanan at maaaring lumikha ng mga maharmonong pagbaluktot. Ang cycle ng tungkulin ay maaaring maiakma ng potentiometer, ngunit nang walang pagmamasid sa signal sa oscilloscope o spectrum analyzer imposibleng i-trim ng mabuti ang hugis nito. Ang pagkalkula ng THD batay sa FFT algorithm ay maaaring malutas ang problema. Ang resulta ng mga kalkulasyon ng THD ay ipapakita sa LCD sa kanang tuktok na walang laman na puwang.

Makikita sa video ang spectrum ng nabuo ng MAX038 sine signal. Ang spectrum analyzer ay batay sa Arduino UNO board + 2.4 TFT na kalasag. Ginagamit ng spectrum analyzer ang library ng SpltRadex Arduino na binuo ni Anatoly Kuzmenko upang maisagawa ang FFT sa real time.

Hindi pa rin ako nagpasya - gamitin ang library na ito o gamitin ang FHT library na nilikha ng Musiclabs.

Nilalayon kong gamitin ang impormasyong kinuha mula sa mga sukat ng sukat ng dalas upang makalkula ang tamang window ng pag-sample at upang suspindihin ang paggamit ng karagdagang windowing habang kinakalkula ang FFT. Kailangan ko lamang maghanap ng libreng oras upang maganap ito. Inaasahan kong magkaroon ng ilang mga resulta sa lalong madaling panahon ….

Inirerekumendang: