Cov txheej txheem:
- Kauj Ruam 1: Kev Txiav Txim Siab
- Kauj Ruam 2: Cov Cheeb Tsam Xav Tau
- Kauj Ruam 3: Kev tsim kho
- Kauj ruam 4: Txoj Cai
- Kauj ruam 5: Siv
Video: Arduino Waveform Generator: 5 Kauj Ruam (nrog Duab)
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:26
Lub Ob Hlis 2021 hloov tshiab: txheeb xyuas qhov hloov tshiab nrog 300x tus qauv piv txwv, raws li Raspberry Pi Pico
Hauv chav kuaj mob, ib tus neeg feem ntau xav tau cov cim rov ua dua ntawm qee qhov zaus, cov duab thiab qhov dav. Nws yuav yog los ntsuas lub tshuab hluav taws xob, txheeb xyuas lub Circuit Court, cov khoom siv lossis tus actuator. Cov tshuab hluav taws xob muaj zog muaj peev xwm muaj muag, tab sis nws yooj yim los ua kom muaj txiaj ntsig ib qho koj tus kheej nrog Arduino Uno lossis Arduino Nano, saib piv txwv:
www.instructables.com/id/Arduino-Waveform-…
www.instructables.com/id/10-Resister-Ardui…
Nov yog qhov kev piav qhia ntawm lwm tus nrog rau cov yam ntxwv hauv qab no:
* Cov ntaub ntawv raug tseeb: 8-ntsis tso tawm siv R2R DAC, 256-qauv ua qauv
* Ceev: 381 kHz tus nqi piv txwv
* Qhov tseeb: 1mHz qib zaus ntau zaus. Raws li qhov tseeb raws li Arduino siv lead ua.
* Kev ua haujlwm yooj yim: yoj yoj thiab zaus siv tau nrog ib tus lej nkag teb chaws
* Ntau yam kev nthuav dav: millivolts txog 20V
* 20 qhov kev txiav txim ua ntej tau teev tseg. Ncaj nraim ntxiv ntxiv.
* Yooj yim ua: Arduino Uno lossis Nano ntxiv rau cov khoom sib xyaw
Kauj Ruam 1: Kev Txiav Txim Siab
Ua ib qho teeb liab analog
Ib qhov tsis txaus ntawm Arduino Uno thiab Nano yog tias nws tsis muaj digital-to-analog (DAC) hloov pauv, yog li nws tsis tuaj yeem ua kom nws tso tawm qhov hluav taws xob analog ncaj qha rau ntawm tus pin. Ib qho kev daws teeb meem yog R2R tus ntaiv: 8 tus pin digital tau txuas nrog lub network resistor kom 256 qib ntawm cov zis tuaj yeem mus txog. Los ntawm kev nkag mus rau qhov chaw nres nkoj ncaj qha, Arduino tuaj yeem teeb 8 tus pin ib txhij nrog ib qho lus txib nkaus xwb. Rau cov neeg tawm tsam network, 9 tus tiv thaiv nrog tus nqi R xav tau thiab 8 nrog tus nqi 2R. Kuv siv 10kOhm ua tus nqi rau R, uas ua rau tam sim no los ntawm tus pin rau 0.5mA lossis tsawg dua. Kuv kwv yees R = 1kOhm tuaj yeem ua haujlwm ib yam, vim tias Arduino tuaj yeem xa tau yooj yim 5mA rau tus pin, 40mA rau ib qho chaw nres nkoj. Nws yog qhov tseem ceeb uas qhov sib piv ntawm R thiab 2R resistors yog tiag tiag 2. Qhov ntawd yog qhov yooj yim tshaj plaws los ntawm kev tso 2 resistors ntawm tus nqi R hauv koob, rau tag nrho ntawm 25 resistors.
Phase accumulator
Ua kom muaj cov yoj yoj los nqis los rov ua ntu zus ntawm 8-tus lej rau Arduino pins. Cov ntaub ntawv yoj tau khaws cia rau hauv ib qho ntawm 256 bytes thiab cov kab no tau piv txwv thiab xa mus rau tus pin. Qhov zaus ntawm cov teeb liab tso tawm yog txiav txim siab los ntawm ib qho kev nce qib dhau los ntawm kab. Txoj hauv kev muaj zog, meej thiab muaj kuab heev los ua uas yog nrog cov theem accumulator: tus lej 32-ntsis tau nce ntxiv nyob rau ib ntus, thiab peb siv 8 qhov tseem ceeb tshaj plaws raws li qhov ntsuas ntawm kab.
Sampling ceev
Kev cuam tshuam tso cai ua piv txwv ntawm lub sijhawm tau teev tseg zoo, tab sis cov nyiaj siv ua ntej ntawm kev cuam tshuam txwv cov qauv piv txwv rau ~ 100kHz. Lub voj tsis muaj qhov kawg los hloov kho theem, ua piv txwv ntawm cov nthwv dej thiab teeb tsa tus pin siv 42 teev mus, yog li ua tiav qhov piv txwv ntawm 16MHz/42 = 381kHz. Kev sib hloov lossis thawb lub cav sib hloov ua rau tus pin hloov pauv thiab cuam tshuam uas tau tawm ntawm lub voj los hloov qhov teeb tsa (yoj yoj lossis zaus). Nyob rau theem no 256 tus lej hauv kab ntawv tau rov xam dua kom tsis muaj qhov kev suav tseeb ntawm qhov yoj yoj yuav tsum tau ua hauv lub voj loj. Qhov siab tshaj plaws uas tuaj yeem tsim tau yog 190kHz (ib nrab ntawm kev ntsuas tus qauv) tab sis tom qab ntawd tsuas muaj ob qho piv txwv rau ib lub sijhawm, yog li tsis muaj kev tswj hwm ntau npaum li cas. Lub interface zoo li tsis tso cai teeb tsa zaus ntau dua 100kHz. Ntawm 50kHz, muaj 7-8 tus qauv rau ib lub sijhawm thiab ntawm 1.5 kHz thiab qis dua tag nrho 256 tus lej khaws cia hauv cov kab ntawv tau ua piv txwv txhua lub sijhawm. Rau cov qauv nthwv dej qhov twg lub teeb liab hloov pauv tau yooj yim, piv txwv li sine wave, hla mus kuaj tsis muaj teeb meem. Tab sis rau cov txheej txheem nthwv dej nrog qhov nqaim nqaim, piv txwv li ib puag ncig nthwv dej nrog lub luag haujlwm me me, muaj qhov txaus ntshai uas rau ntau zaus ntau dua 1.5 kHz uas ploj lawm ib qho piv txwv tuaj yeem ua rau lub nthwv dej tsis ua raws li qhov xav tau
Qhov tseeb ntawm qhov zaus
Tus lej uas theem tau nce ntxiv ntawm txhua tus qauv yog sib piv rau qhov zaus. Yog li qhov zaus tuaj yeem teeb tsa kom raug ntawm 381kHz/2^32 = 0.089mHz. Hauv kev coj ua qhov tseeb no tsis tshua xav tau, yog li cov kev txwv cuam tshuam los teeb tsa zaus hauv cov theem ntawm 1mHz. Qhov tseeb meej ntawm qhov zaus yog txiav txim siab los ntawm qhov tseeb ntawm Arduino moos zaus. Qhov no nyob ntawm hom Arduino tab sis feem ntau hais qhia zaus ntawm 16.000MHz, yog li qhov tseeb ntawm ~ 10^-4. Txoj cai tso cai hloov kho qhov sib piv ntawm qhov zaus thiab theem nce ntxiv kom raug rau qhov sib txawv me me ntawm 16MHz kev xav.
Buffering thiab amplification
Cov resistor network muaj qhov tso tawm siab impedance, yog li nws qhov hluav taws xob tso tawm sai sai yog tias thauj khoom txuas nrog. Qhov ntawd tuaj yeem daws tau los ntawm kev cuam tshuam lossis ua kom nrov nrov. Ntawm no, qhov tsis tuaj yeem thiab nthuav dav tau ua tiav nrog opamp. Kuv siv LM358 vim tias kuv muaj qee qhov. Nws yog qhov qeeb opamp (tua tus nqi 0.5V ib microsecond) yog li ntawm qhov ntau zaus thiab qhov siab siab lub teeb liab tau cuam tshuam. Qhov zoo yog tias nws tuaj yeem tswj tau qhov hluav taws xob ze rau 0V. Txawm li cas los qhov hluav taws xob tso tawm tsuas yog txwv rau ~ 2V hauv qab txoj kab tsheb, yog li siv +5V lub zog txwv qhov tso tawm hluav taws xob rau 3V. Cov kauj ruam-up modules yog compact thiab pheej yig. Pub +20V rau opamp, nws tuaj yeem tsim cov cim nrog qhov hluav taws xob txog 18V. (NB, cov txheej txheem hais tias LTC3105 vim tias yog tib qib uas kuv pom hauv Fritzing. Qhov tseeb kuv tau siv MT3608 module, saib cov duab hauv cov kauj ruam tom ntej). Kuv xaiv los thov hloov qhov sib txawv rau qhov tso tawm ntawm R2R DAC tom qab ntawd siv ib qho ntawm opamps txhawm rau kho lub teeb liab yam tsis muaj kev hloov pauv thiab lwm qhov los ua kom nrov nrov los ntawm 5.7, yog li lub teeb liab tuaj yeem ncav cuag qhov siab tshaj ntawm 20V. Cov zis tam sim no yog qhov txwv, ~ 10mA, yog li yuav xav tau lub zog loj dua yog tias lub teeb liab yog tsav tus hais lus loj lossis hluav taws xob.
Kauj Ruam 2: Cov Cheeb Tsam Xav Tau
Rau cov tub ntxhais waveform generator
Arduino Uno lossis Nano
16x2 LCD zaub + 20kOhm trimmer thiab 100Ohm series resistor rau backlight
5-pin rotary encoder (nrog rau khawm sib xyaw)
25 resistors ntawm 10kOhm
Rau qhov tsis/amplifier
LM358 lossis lwm yam opamp dual
step-up module raws li MT3608
50kOhm sib txawv resistor
10 kOhm resistor
47 kOhm resistor
1muF capacitor
Kauj Ruam 3: Kev tsim kho
Kuv tau muag txhua yam ntawm 7x9cm tsab ntawv pov thawj, raws li qhia hauv daim duab. Txij li thaum nws tau txais kev ntxhov siab me ntsis nrog txhua lub xov hlau kuv tau sim xim cov coj uas nqa qhov hluav taws xob zoo liab thiab cov uas nqa hauv av dub.
Tus encoder kuv siv muaj 5 tus pin, 3 ntawm ib sab, 2 ntawm lwm sab. Sab nrog 3 tus pin yog tus encoder tiag, sab nrog 2 tus pin yog kev sib koom ua ke. Ntawm 3-tus pin sab, tus pin nruab nrab yuav tsum txuas nrog hauv av, lwm ob tus pin rau D10 thiab D11. Ntawm 2-tus pin sab, ib tus pin yuav tsum txuas nrog hauv av thiab lwm qhov rau D12.
Nws yog qhov phem tshaj plaws uas kuv tau ua tab sis nws ua haujlwm. Nws yuav zoo rau muab tso rau hauv ib lub thawv, tab sis tam sim no qhov haujlwm ntxiv thiab tus nqi tsis yog qhov tseeb tiag. Nano thiab cov zaub tau txuas nrog tus pin-headers. Kuv yuav tsis ua qhov ntawd dua yog tias kuv yuav tsim ib qho tshiab. Kuv tsis tau tso cov khoom sib txuas ntawm lub rooj tsav khoom kom khaws cov cim qhia. Hloov chaw, Kuv khaws lawv nrog cov khej coj los ntawm cov kab tooj liab uas nthuav tawm, sau raws li hauv qab no:
R - teeb liab los ntawm R2R DAC
B - tsis teeb liab
A - teeb liab teeb liab
T - timer teeb liab los ntawm tus pin 9
G - hauv av
+ - qhov zoo 'siab' qhov hluav taws xob los ntawm cov qauv nce qib
Kauj ruam 4: Txoj Cai
Cov cai, daim duab Arduino, txuas nrog thiab yuav tsum muab xa mus rau Arduino.
20 waveforms tau npaj ua ntej. Nws yuav tsum ncaj kom ntxiv lwm qhov nthwv dej. Nco ntsoov tias cov nthwv dej tsis xwm yeem sau txog 256 tus nqi sib xws nrog qhov muaj txiaj ntsig zoo, tab sis cov qauv qub tau rov ua dua txhua lub sijhawm. Cov cim tsis tseeb muaj suab zoo li lub suab nrov, tab sis qhov kev yoj suab no zoo li ntau dua li tus xuav.
Txoj cai teeb tsa 1kHz teeb liab ntawm tus pin D9 nrog TIMER1. Qhov no muaj txiaj ntsig los txheeb xyuas lub sijhawm ntawm cov teeb liab analog. Qhov ntawd yog qhov kuv xam pom tias tus naj npawb ntawm lub moos mus yog 42: Yog tias kuv xav tias yog 41 lossis 43, thiab tsim tawm 1kHz teeb liab, nws qhia meej muaj qhov sib txawv ntawm qhov teeb liab ntawm tus pin D9. Nrog tus nqi 42 lawv sib txig.
Feem ntau, Arduino cuam tshuam txhua millisecond kom taug qab lub sijhawm nrog millis () ua haujlwm. Qhov no yuav cuam tshuam kev tsim lub teeb liab raug, yog li qhov cuam tshuam tshwj xeeb yog xiam oob khab.
Tus sau hais tias: "Sketch siv 7254 bytes (23%) ntawm qhov chaw khaws cov program. Qhov siab tshaj plaws yog 30720 bytes. Cov kev hloov pauv thoob ntiaj teb siv 483 bytes (23%) ntawm lub cim xeeb tsis zoo, tawm hauv 1565 bytes rau qhov hloov pauv hauv zos. Qhov siab tshaj plaws yog 2048 bytes." Yog li muaj qhov chaw txaus rau ntau txoj cai ntxiv. Ceev faj tias koj yuav tsum xaiv "ATmega328P (qub bootloader)" txhawm rau upload ua tiav rau Nano.
Kauj ruam 5: Siv
Lub tshuab hluav taws xob tuaj yeem siv hluav taws xob yooj yim los ntawm mini-USB cable ntawm Arduino Nano. Nws yog qhov ua tau zoo tshaj plaws nrog lub txhab nyiaj hluav taws xob, yog li tsis muaj kev phom sij hauv av nrog lub cuab yeej uas nws tuaj yeem txuas nrog.
Thaum hloov pauv nws yuav ua kom muaj 100Hz sine wave. Los ntawm kev hloov lub pob qhov rooj, ib qho ntawm lwm 20 hom yoj tuaj yeem xaiv. Los ntawm kev tig thaum thawb, tus cursor tuaj yeem teeb tsa rau ib qho ntawm tus lej ntawm qhov zaus, uas tom qab ntawd tuaj yeem hloov mus rau tus nqi uas xav tau.
Qhov dav dav tuaj yeem tswj hwm nrog lub hwj chim thiab yog qhov tsis tuaj yeem lossis lub teeb liab tau siv tau.
Nws yog qhov muaj txiaj ntsig tiag tiag los siv lub oscilloscope txhawm rau txheeb xyuas lub teeb liab, tshwj xeeb yog thaum lub teeb liab muab cov khoom siv tam sim no rau lwm lub cuab yeej. Yog tias muaj ntau dhau tam sim no, lub teeb liab yuav kaw thiab lub teeb liab raug cuam tshuam ntau
Rau qhov qis heev, qhov tso tawm tuaj yeem pom nrog LED hauv kab nrog 10kOhm resistor. Lub suab nrov tuaj yeem hnov nrog tus hais lus. Nco ntsoov teeb lub teeb liab me me ~ 0.5V, txwv tsis pub tam sim no tau txais siab dhau thiab lub teeb liab pib clipping.
Pom zoo:
DIY Function/Waveform Generator: 6 Cov Kauj Ruam (nrog Duab)
DIY Function/Waveform Generator: Hauv qhov haujlwm no peb yuav tau saib luv luv ntawm kev ua lag luam/cov qauv siv hluav taws xob txhawm rau txiav txim siab yam twg yog qhov tseem ceeb rau DIY version. Tom qab ntawd kuv yuav qhia koj yuav ua li cas tsim lub tshuab hluav taws xob ua haujlwm yooj yim, analog thiab tus lej
Cov Duab Duab Duab thiab Cov Duab 1: 4 Cov Kauj Ruam (nrog Duab)
Cov Duab Duab Cubes thiab Cov Duab 1: Thaum sim nrog qee cov ntoo ntoo thiab cov duab los qhia, kuv pom ob peb txoj hauv kev los ua cov voos thiab lwm yam duab los ntawm cov khoom siv yooj yim. Los ntawm kev muab cov no los ua Cov Ntawv Qhia, Kuv vam tias yuav txhawb nqa kev ua si thiab kev kawm. Kev hloov pauv ntawm qhov kev qhia no
Yuav Ua Li Cas Thiaj Li Tshem Tawm Lub Computer Nrog Cov Kauj Ruam Yooj Yim thiab Duab: 13 Kauj Ruam (nrog Duab)
Yuav Tsum Tshem Tawm Lub Khoos Phis Tawj Li Cas Nrog Cov Kauj Ruam Yooj Yim thiab Duab: Nov yog cov lus qhia txog yuav ua li cas tshem lub PC. Feem ntau ntawm cov khoom siv yooj yim yog hloov pauv thiab tshem tawm tau yooj yim. Txawm li cas los xij nws yog ib qho tseem ceeb uas koj tau koom nrog nws. Qhov no yuav pab tiv thaiv koj kom tsis txhob poob ib feem, thiab tseem ua rau kev rov ua dua tshiab
Tus Nqi Tsawg Tus Nqi Waveform Generator (0 - 20MHz): 20 Cov Kauj Ruam (nrog Duab)
Tus Nqi Tsawg Tus Nqi Waveform Generator (0 - 20MHz): ABSTRATH Txoj Haujlwm no los ntawm qhov xav tau kom tau txais lub tshuab hluav taws xob yoj hluav taws xob nrog bandwidth ntau dua 10 Mhz thiab cuam tshuam sib txawv hauv qab 1%, txhua qhov no nrog tus nqi qis. Cov ntawv no piav qhia kev tsim qauv ntawm lub tshuab hluav taws xob yoj hluav taws xob nrog bandwidth ove
Cov Duab Duab Duab Duab, WiFi Txuas - Raspberry Pi: 4 Cov Kauj Ruam (nrog Duab)
Cov Duab Duab Duab Duab, WiFi Txuas - Raspberry Pi: Nov yog txoj hauv kev yooj yim heev thiab tus nqi qis mus rau cov duab thav duab digital - nrog qhov zoo ntawm kev ntxiv /tshem cov duab hla WiFi ntawm 'nyem thiab luag' siv (pub dawb) xa cov ntaub ntawv . Nws tuaj yeem siv tau los ntawm qhov me me £ 4.50 Pi Zero. Koj tseem tuaj yeem hloov pauv