Mis On PWM Ja Kuidas Seda Arduinos Kasutatakse

Mis On PWM Ja Kuidas Seda Arduinos Kasutatakse
Mis On PWM Ja Kuidas Seda Arduinos Kasutatakse

Sisukord:

Anonim

Mõelgem välja, mis on PWM-i akronüümi taga, kuidas see töötab, milleks see on mõeldud ja kuidas saame seda kasutada Arduinoga töötamisel.

Vajalik

  • - Arduino;
  • - Valgusdiood;
  • - takisti takistusega 200 Ohm;
  • - arvuti.

Juhised

Samm 1

Arduino digitaalsed tihvtid võivad anda ainult kaks väärtust: loogika 0 (LOW) ja loogika 1 (HIGH). Sellepärast on nad digitaalsed. Kuid Arduinol on "erilised" järeldused, mis on tähistatud PWM-iga. Mõnikord tähistatakse neid lainelise joonega "~" või ringitakse ringi või eristatakse neid kuidagi teistest. PWM tähistab pulsilaiuse modulatsiooni või pulsilaiuse modulatsiooni (PWM).

Impulsi laiusega moduleeritud signaal on püsiva sagedusega, kuid muutuva töötsükliga (impulsi kestuse ja kordusperioodi suhe) impulsi signaal. Tulenevalt asjaolust, et enamikul looduse füüsikalistel protsessidel on teatav inertsus, tasandatakse järsud pingelangused vahemikus 1 kuni 0, võttes selle keskmise väärtuse. Töötsükli määramisega saate muuta PWM-väljundi keskmist pinget.

Kui töötsükkel on 100%, siis Arduino digitaalväljundis on kogu aeg loogiline pinge "1" või 5 volti. Kui määrate töötsükli 50% -le, on pool ajast väljundis loogiline "1" ja pool-loogiline "0" ning keskmine pinge on 2,5 volti. Ja nii edasi.

Programmis ei ole töötsükkel määratud protsentidena, vaid arvuna vahemikus 0 kuni 255. Näiteks käsk "analogWrite (10, 64)" käsib mikrokontrolleril saata signaali töötsükliga 25 % digitaalsele PWM-väljundile # 10.

Pulsilaiuse modulatsiooni funktsiooniga Arduino tihvtid töötavad umbes 500 Hz sagedusel. See tähendab, et impulsi kordumise periood on umbes 2 millisekundit, mida mõõdetakse joonisel toodud roheliste vertikaalsete löökidega.

Tuleb välja, et saame digitaalses väljundis simuleerida analoogsignaali! Huvitav, eks?

Kuidas me saame seda kasutada? Rakendusi on palju! Näiteks on need LED-heleduse reguleerimine, mootori kiiruse reguleerimine, transistori voolu juhtimine, heli väljavõtmine pieso-emitterist …

2. samm

Vaatame kõige elementaarsemat näidet - LED-i heleduse reguleerimine PWM-i abil. Paneme kokku klassikalise skeemi.

3. samm

Avame "Fade" visandi näidetest: File -> Samples -> 01. Basics -> Fade.

4. samm

Muudame seda natuke ja laadime selle Arduino mällu.

5. samm

Lülitame toite sisse. LEDi heledus suureneb järk-järgult ja seejärel järk-järgult väheneb. Oleme simuleerinud analoogsignaali digitaalväljundis, kasutades impulsi laiuse modulatsiooni.

Soovitan: