Cov txheej txheem:

Arduino Timers: 8 Txoj Haujlwm: 10 Kauj Ruam (nrog Duab)
Arduino Timers: 8 Txoj Haujlwm: 10 Kauj Ruam (nrog Duab)

Video: Arduino Timers: 8 Txoj Haujlwm: 10 Kauj Ruam (nrog Duab)

Video: Arduino Timers: 8 Txoj Haujlwm: 10 Kauj Ruam (nrog Duab)
Video: Hmong new song 2016 Daum Raug Xub Red Label Official MV เพลงม้งใหม่ล่าสุด 2017 2024, Lub rau hli ntuj
Anonim
Arduino Timers: 8 Txoj Haujlwm
Arduino Timers: 8 Txoj Haujlwm

Arduino Uno lossis Nano tuaj yeem tsim cov cim digital raug ntawm rau rau tus pin tshwj xeeb los ntawm kev siv peb lub sijhawm ua haujlwm. Lawv tsuas yog xav tau ob peb lus txib los teeb tsa thiab siv tsis muaj CPU mus ua haujlwm!

Kev siv lub sijhawm tuaj yeem ua rau muaj kev hem thawj yog tias koj pib los ntawm ATMEGA328 daim ntawv qhia tag nrho, uas muaj 90 nplooj nplooj siab rau lawv cov lus piav qhia! Ob peb built-in Arduino cov lus txib twb tau siv lub sijhawm, piv txwv li millis (), ncua (), laus (), AnalogWrite () thiab lub tsev qiv ntawv servo. Tab sis txhawm rau siv lawv lub zog tag nrho, koj yuav tsum teeb tsa lawv los ntawm kev sau npe. Kuv qhia ntawm no qee qhov macros thiab cov haujlwm ua kom yooj yim dua thiab muaj pob tshab.

Tom qab piav qhia luv luv ntawm lub sijhawm, ua raws 8 txoj haujlwm txias uas vam khom lub cim teeb tsa nrog lub sijhawm.

Kauj Ruam 1: Cov Cheeb Tsam Xav Tau

Yuav tsum tau Cheebtsam
Yuav tsum tau Cheebtsam

Txhawm rau ua txhua 8 txoj haujlwm koj yuav xav tau:

  • Arduino Uno lossis sib xws
  • Ib daim ntawv tiv thaiv nrog mini protoboard
  • 6 daim kab xev jumper cable
  • 6 lub khob cij cij luv luv (ua rau koj tus kheej los ntawm 10cm cov tub ntxhais sib txuas hlau)
  • 2 khej coj
  • 1 dawb 5mm LED
  • ib qho 220 Ohm resistor
  • 10 kOhm resistor
  • 10kOhm potentiometer
  • 2 ceramic 1muF capacitors
  • 1 electrolytic 10muF capacitor
  • 2 diodes, 1n4148 lossis zoo sib xws
  • 2 micro servo motors SG90
  • 18 Ohm hais lus
  • 20m ntawm nyias (0.13mm) enameled hlau

Kauj Ruam 2: Txheej txheem cej luam ntawm Arduino Timers rau Kev Tsim Teeb Meem

Timer0 thiab timer2 yog 8-ntsis timers, txhais tau tias lawv suav tau los ntawm 0 txog 255 feem ntau. Timer1 yog timer 16-ntsis, yog li nws tuaj yeem suav tau txog 65535. Txhua lub sijhawm muaj ob tus lej txuas txuas: 6 thiab 5 rau timer0, 9 thiab 10 rau timer1, 11 thiab 3 rau timer2. Lub sijhawm ua haujlwm tau nce ntxiv ntawm txhua lub voj voog Arduino, lossis ntawm tus nqi uas tau txo los ntawm qhov ntsuas ua ntej, uas yog 8, 64, 256 lossis 1024 (32 thiab 128 kuj tseem tso cai rau timer2). Cov timers suav los ntawm 0 txog 'TOP' thiab tom qab ntawd rov ua dua (nrawm PWM) lossis nqis qis (theem raug PWM). Tus nqi ntawm 'TOP' yog li txiav txim siab zaus. Cov pins tso tawm tuaj yeem teeb tsa, rov pib dua, lossis ntxeev ntawm qhov txiaj ntsig ntawm Kev Tso Tawm Sib Piv Sau Npe, yog li cov txiav txim siab lub luag haujlwm. Tsuas yog timer1 muaj peev xwm ntawm nws tus kheej teeb tsa zaus thiab lub luag haujlwm hloov pauv rau ob qho pins tso tawm.

Kauj ruam 3: LED ntsais

Image
Image
LED ntsais
LED ntsais
LED ntsais
LED ntsais

Qhov qis tshaj plaws uas tuaj yeem ncav cuag nrog 8-ntsis timers yog 16MHz/(511*1024) = 30, 6Hz. Yog li ua kom LED ntsais nrog 1Hz, peb xav tau timer1, uas tuaj yeem ncav cuag zaus 256 zaus me dua, 0.12 Hz.

Txuas lub LED nrog nws cov anode (ceg ntev) rau pin9 thiab txuas nws cov cathode nrog 220 Ohm resistor rau hauv av. Upload cov cai. LED yuav ntsais ntawm qhov tseeb 1Hz nrog lub luag haujlwm ntawm 50%. Lub voj () ua haujlwm tsis muaj dab tsi: lub sijhawm tau pib ua ntej ntawm teeb tsa () thiab tsis xav tau kev saib xyuas ntxiv.

Kauj Ruam 4: LED Dimmer

Image
Image
LED Dimmer
LED Dimmer
LED Dimmer
LED Dimmer

Pulse-dav tes taws los piav yog txoj hauv kev zoo los tswj kev siv ntawm LED. Nrog tus tsav tsheb kom raug, nws tseem yog txoj hauv kev nyiam los tswj kev nrawm ntawm cov tshuab hluav taws xob. Txij li lub teeb liab yog 100% rau lossis 100% tawm, tsis muaj lub zog poob rau ntawm kev ua haujlwm tsis tu ncua. Yeej, nws zoo li flashing LED nrawm dua qhov muag tuaj yeem ua raws. 50Hz yog hauv paus ntsiab lus txaus, tab sis nws tseem yuav zoo li flicker me ntsis thiab thaum lub LED lossis lub qhov muag txav mus, qhov kev tsis txaus siab tsis tu ncua 'txoj kev' yuav tshwm sim. Siv lub prescale ntawm 64 nrog lub sijhawm 8-ntsis, peb tau txais 16MHz/(64*256) = 977Hz, uas haum rau lub hom phiaj. Peb xaiv timer2, yog li timer1 tseem muaj rau lwm txoj haujlwm, thiab peb tsis cuam tshuam nrog Arduino sijhawm () ua haujlwm, uas siv timer0.

Hauv qhov piv txwv no lub luag haujlwm voj voog, thiab yog li qhov kev siv, yog tswj hwm los ntawm lub zog ntsuas. LED thib ob tuaj yeem tswj hwm ntawm nws tus kheej nrog tib lub sijhawm ntawm tus pin 3.

Kauj Ruam 5: Digital-to-Analog Converter (DAC)

Image
Image
Digital-rau-Analog Converter (DAC)
Digital-rau-Analog Converter (DAC)
Digital-rau-Analog Converter (DAC)
Digital-rau-Analog Converter (DAC)

Arduino tsis muaj qhov tseeb analog tso tawm. Qee qhov qauv siv qhov ntsuas hluav taws xob sib piv los tswj hwm qhov ntsuas (tso saib qhov sib txawv, pom qhov pib thiab lwm yam). Nrog tsuas yog ib lub capacitor thiab resistor, timer1 tuaj yeem siv los tsim qhov hluav taws xob sib piv nrog kev daws teeb meem ntawm 5mV lossis zoo dua.

Lub lim qis dhau tuaj yeem "nruab nrab" PWM teeb liab rau qhov sib piv sib piv. Lub capacitor txuas nrog los ntawm tus tiv thaiv rau PWM tus pin. Cov yam ntxwv tau txiav txim siab los ntawm PWM zaus thiab tus nqi ntawm tus tiv thaiv thiab lub peev xwm. Kev daws teeb meem ntawm 8-ntsis timers yuav yog 5V/256 = 20mV, yog li peb xaiv Timer1 kom tau txais 10-ntsis kev daws teeb meem. RC Circuit yog thawj qhov kev txiav txim qis qis lim thiab nws yuav muaj qee qhov ripple. Lub sijhawm ntsuas ntawm RC Circuit yuav tsum loj dua lub sijhawm PWM teeb liab kom txo qis. Lub sijhawm peb tau txais 10-ntsis qhov tseeb yog 1024/16MHz = 64mus. Yog tias peb siv 1muF capacitor thiab 10kOhm resistor, RC = 10ms. Lub ncov-rau-ncov feem ntau yog 5V*0.5*T/(RC) = 16mV, uas tau txiav txim siab txaus ntawm no.

Nco ntsoov tias DAC no muaj qhov cuam tshuam loj heev tso zis (10kOhm), yog li qhov hluav taws xob yuav poob qis yog tias nws rub tawm tam sim no. Txhawm rau zam qhov ntawd, nws tuaj yeem cuam tshuam nrog opamp, lossis lwm qhov sib xyaw ntawm R thiab C tuaj yeem xaiv, piv txwv li 1kOhm nrog 10muF.

Hauv qhov ua piv txwv, DAC cov zis raug taw qhia nrog lub zog ntsuas. Qhov thib ob ywj siab DAC channel tuaj yeem ua haujlwm nrog timer1 ntawm tus pin 10.

Kauj Ruam 6: Metronome

Image
Image
Metronome
Metronome
Metronome
Metronome

Lub metronome pab txhawm rau taug qab cov lus sib dhos thaum ua suab paj nruag. Rau cov mem tes luv luv, cov khoom tso tawm ntawm lub sijhawm arduino tuaj yeem pub ncaj qha rau tus hais lus, uas yuav ua rau pom meej meej. Nrog lub zog ntsuas, ntsuas zaus tuaj yeem tswj tau los ntawm 40 txog 208 tus neeg ntaus ib feeb, hauv 39 qib. Timer1 xav tau rau qhov yuav tsum tau ua kom raug. Tus nqi ntawm 'TOP', uas txiav txim siab zaus, tau hloov kho hauv lub voj () ua haujlwm, thiab qhov ntawd yuav tsum tau saib xyuas! Koj pom ntawm no tias WGM hom sib txawv los ntawm lwm qhov piv txwv uas tau kho tas li: hom no, nrog TOP teeb tsa los ntawm OCR1A rau npe, muaj ob npaug ntxiv thiab tiv thaiv tiv thaiv TOP uas ploj lawm thiab tau txais qhov teeb meem ntev. Txawm li cas los xij, qhov no txhais tau tias peb tuaj yeem siv tsuas yog 1 tus pin tso tawm.

Kauj Ruam 7: Suab Spectrum

Image
Image
Suab Spectrum
Suab Spectrum
Suab Spectrum
Suab Spectrum

Tib neeg tuaj yeem hnov ntau dua 3 qhov kev txiav txim ntawm qhov ntau ntawm lub suab nrov, los ntawm 20Hz txog 20kHz Qhov piv txwv no ua rau pom tag nrho nrog lub zog loj. 10muF capacitor tau muab tso nruab nrab ntawm tus hais lus thiab Arduino txhawm rau thaiv DC tam sim no. Timer1 tsim lub voj voos xwmfab. Waveform tiam neeg hom ntawm no yog Phase-correct PWM. Hauv hom ntawd, lub txee pib suav rov qab thaum nws nce mus txog qhov kawg, uas ua rau cov mem tes uas muaj lawv txhais tau tias tsau, txawm tias thaum lub sijhawm ua haujlwm sib txawv. Txawm li cas los xij, nws tseem ua rau lub sijhawm uas yog (yuav luag) ob npaug, thiab nws tsuas yog tshwm sim uas nrog prescale 8, timer1 npog tag nrho lub ntsej muag hnov tau, tsis tas yuav hloov pauv prescale. Kuj tseem nyob ntawm no, txij li tus nqi ntawm TOP tau hloov pauv ntawm-mus-siv, siv OCR1A raws li sab saum toj txo cov teeb meem.

Kauj Ruam 8: Servo Motors

Image
Image
Servo Tsav
Servo Tsav
Servo Tsav
Servo Tsav

Muaj cov tsev qiv ntawv muaj zog, tab sis yog tias koj tsuas muaj ob lub servos los tsav, koj kuj yuav ua tau ncaj qha nrog timer1, thiab yog li txo CPU, siv nco, thiab zam kev cuam tshuam. Qhov nrov SG90 servo siv lub teeb liab 50Hz, thiab cov mem tes ntev ntsuas tus lej txoj haujlwm. Zoo tagnrho rau timer1. Qhov zaus raug kho, yog li ob qho txiaj ntsig ntawm tus pin9 thiab tus pin 10 tuaj yeem siv los tswj cov kev pabcuam ntawm nws tus kheej.

Kauj Ruam 9: Voltage Doubler thiab Inverter

Voltage Doubler thiab Inverter
Voltage Doubler thiab Inverter
Voltage Doubler thiab Inverter
Voltage Doubler thiab Inverter
Voltage Doubler thiab Inverter
Voltage Doubler thiab Inverter

Qee zaum koj txoj haujlwm xav tau qhov hluav taws xob siab dua 5V lossis qhov tsis zoo. Tej zaum nws yuav yog khiav MOSFET, los ua lub hauv paus piezo, ua kom lub zog opamp, lossis rov pib dua EEPROM. Yog tias qhov kos tam sim no me me txaus, txog ~ 5mA, lub twj tso kua mis yuav yog qhov kev daws teeb meem yooj yim tshaj plaws: tsuas yog 2 diodes thiab ob lub capacitors txuas nrog lub teeb liab los ntawm lub sijhawm tso cai rau ob npaug ntawm arduino 5V txog 10V. Hauv kev coj ua, muaj 2 diode tee, yog li nws yuav zoo li 8.6V hauv kev coj ua rau ob npaug, lossis -3.6V rau inverter.

Qhov zaus ntawm lub xwmfab nthwv dej yuav tsum txaus kom tso dej txaus los ntawm diodes. 1muF capacitor txav 5muC ntawm kev hloov pauv thaum qhov hloov pauv ntawm 0 thiab 5V, yog li rau 10mA tam sim no, zaus yuav tsum yog yam tsawg 2kHz. Hauv kev xyaum, qhov ntau dua yog qhov zoo dua, vim nws txo qhov ripple. Nrog timer2 suav los ntawm 0 txog 255 yam tsis muaj prescale, zaus yog 62.5kHz, uas ua haujlwm tau zoo.

Kauj Ruam 10: Hloov Fais Fab Wireless

Image
Image
Wireless Power Transfer
Wireless Power Transfer
Wireless Power Transfer
Wireless Power Transfer

Nws tsis yog qhov yooj yim los them lub ntse saib tsis muaj cable, tab sis tib yam tuaj yeem yooj yim ua ib feem ntawm Arduino project. Ib lub kauj nrog lub teeb liab ntau tuaj yeem hloov lub zog mus rau lwm lub kauj nyob ze los ntawm induction, tsis muaj kev sib cuag hluav taws xob.

Ua ntej npaj cov kauj. Kuv siv daim ntawv yob ntawm 8.5cm txoj kab uas hla thiab xaim xov ntawm 0.13mm txoj kab uas hla los ua 2 coils: thawj nrog 20 tig, theem nrab nrog 50 tig. Qhov tus kheej inductance ntawm cov kauj no nrog N windings thiab lub vojvoog R yog ~ 5muH * N^2 * R. Peb tsim lub teeb liab nrog zaus ntawm 516kHz, ua rau muaj qhov cuam tshuam ntawm 2pi*f*L = 275Ohm. Qhov no yog qhov txaus txaus uas Arduino tsis mus dhau qhov tam sim no.

Txhawm rau ua kom cov kauj zoo tshaj plaws, peb xav siv qhov tseeb AC qhov chaw. Muaj qhov ua kom yuam kev uas tuaj yeem ua tiav: ob qhov kev tso tawm ntawm lub sijhawm tuaj yeem ua haujlwm nyob rau theem sib txawv, los ntawm kev hloov pauv ib qho ntawm cov txiaj ntsig. Txhawm rau ua kom nws zoo ib yam dua li sine wave, peb siv Phase-correct PWM. Txoj kev no, nruab nrab ntawm tus pin 9 rau 10, qhov hloov pauv ntawm ob qho 0V, tus pin 9 +5V, ob qho 0V, tus pin 10 +5V. Cov txiaj ntsig tau qhia hauv daim duab los ntawm cov kab ke nthuav dav (nrog rau 1024 prescale, qhov khoom ua si no tsis muaj ntau bandwidth).

Txuas tus thawj kauj rau tus pin 9 thiab 10. Txuas lub LED mus rau lub kauj thib ob. Thaum lub kauj thib ob raug coj los ze rau ntawm thawj, LED teeb ci ntsa iab.

Pom zoo: