Sisällysluettelo:

MOSFETin hallinta Arduino PWM: llä: 3 vaihetta
MOSFETin hallinta Arduino PWM: llä: 3 vaihetta

Video: MOSFETin hallinta Arduino PWM: llä: 3 vaihetta

Video: MOSFETin hallinta Arduino PWM: llä: 3 vaihetta
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Heinäkuu
Anonim
Image
Image
Piirikaavio
Piirikaavio

Tässä ohjeessa tarkastelemme kuinka hallita virtaa MOSFETin kautta käyttämällä Arduino PWM (Pulse Width Modulation) -lähtösignaalia.

Tässä tapauksessa manipuloimme arduino -koodia antaaksemme meille muuttuvan PWM -signaalin arduinon digitaaliseen nastaan 9 ja suodatamme sitten tämän signaalin saadaksemme meille säädettävän DC -tason, jota voidaan käyttää MOSFET -portissa.

Tämän avulla voimme ohjata transistoria pois päältä -tilasta, jossa virta ei virtaa tilaan, jossa virtaa on vain muutama milliampi, tai tilaan, jossa transistorin läpi virtaa useita ampeereja.

Tässä asetan PWM: n niin, että meillä on 8192 pulssin leveysvaihteluvaihetta, jotka antavat meille erittäin hyvän hallinnan MOSFETista.

Vaihe 1: Piirikaavio

Piiri on hyvin suoraviivainen. Arduino -nastan D9 PWM -signaali on integroitu tai suodatettu R1: n ja C1: n yhdistelmällä. Esitetyt arvot toimivat hyvin 1,95 kHz: n toimintataajuudella tai 13 -bittisellä toiminnalla 8192 portaalla (2 teholle 13 = 8192).

Jos päätät käyttää eri lukumäärää, sinun on ehkä muutettava R1- ja C1 -arvoja. Jos esimerkiksi käytät 256 vaihetta (8 -bittinen toiminta), PWM -taajuus on 62,45 KHz, sinun on käytettävä toista C1 -arvoa. Huomasin, että 1000uF toimi hyvin tällä taajuudella.

Käytännön kannalta PWM -asetus 0 tarkoittaa, että DC -taso MOSFET -portissa on 0 V ja MOSFET kytketään kokonaan pois päältä. PWM -asetus 8191 tarkoittaa, että DC -taso MOSFET -portissa on 5 V ja MOSFET on olennaisesti, ellei sitä ole kytketty kokonaan päälle.

Vastus R2 on paikallaan vain sen varmistamiseksi, että MOSFET sammuu, kun portin signaali poistetaan vetämällä portti maahan.

Jos virtalähde pystyy syöttämään PWM -signaalin määräämän virran MOSFET -portissa, voit kytkeä sen suoraan MOSFET -verkkoon ilman sarjavastusta virran rajoittamiseksi. Virtaa rajoittaa vain MOSFET ja se poistaa ylimääräisen tehon lämmönä. Varmista, että sinulla on riittävä jäähdytyselementti, jos käytät sitä suuremmille virroille.

Vaihe 2: Arduino -koodi

Arduino -koodi
Arduino -koodi

Arduino -koodi on liitteenä. Koodi on hyvin kommentoitu ja melko yksinkertainen. Koodilohko riveillä 11-15 asettaa arduinon nopeaan PWM -toimintaan ulostulolla nastassa D9. Voit muuttaa PWM -tasoa muuttamalla vertailurekisterin OCR1A arvoa. Jos haluat muuttaa PWM -vaiheiden määrää, muuta ICR1 -arvoa. esim. 255 8 -bittiselle, 1023 10 -bittiselle, 8191 13 -bittiselle toiminnalle. Huomaa, että kun muutat ICR1: tä, toimintataajuus muuttuu.

Silmukka lukee vain kahden painikekytkimen tilan ja lisää OCR1A -arvoa ylös tai alas. Olen asettanut tämän arvon asetuksessa () arvoon 3240, joka on juuri sen arvon alapuolella, jossa MOSFET alkaa käynnistyä. Jos käytät toista transistoria tai C1- ja R1 -suodatinpiiriä, tämä arvo on hieman erilainen sinulle. Paras aloittaa esiasetetulla arvolla nolla ensimmäistä kertaa yrittäessäsi tätä joka tapauksessa!

Vaihe 3: Testitulokset

Testitulokset
Testitulokset
Testitulokset
Testitulokset

Kun ICR1 on asetettu arvoon 8191, nämä tulokset sain vaihtamalla virran 0 ja 2 AMPS välillä:

OCR1A (PWM -asetus Virta (ma) Gate Voltage (Vdc) 3240 0 ma 0v3458 10ma 1.949v4059 100ma 2.274v4532 200ma 2.552v4950 500ma 2.786v5514 1000ma 3.101v6177 1500ma 3.472v6927 2000ma 3.895v

Suositeltava: