Tehke see Buck Converter Arduino abil

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Selles projektis kavatseme 12 V DC alandada mis tahes DC väärtusele vahemikus 2 kuni 11 volti. Vooluallikat, mis alalisvoolu pinget alandab, nimetatakse buck muunduriks. Vajaliku väljundpinge või langetatava pinge juhtimiseks kasutatakse arduinoga ühendatud potentsiomeetrit.

Autor Ankit Negi



SISSEJUHATUS MUUTAJATELE:

Muundureid on põhimõtteliselt kahte tüüpi:

1. Buki muundur



2. Boost konverter

Mõlemad muundurid muudavad sisendpinge vastavalt nõudele. Need on sarnased a trafo ühe peamise erinevusega. Kui trafo suurendab alalisvoolu pinget üles / alla, siis alalisvoolu muundurid alalisvoolu pinget üles / alla. Mõlema muunduri põhikomponendid on:

A. MOSFET

B. Induktor

C. KAPASITAATOR

BUCK CONVERTER: nagu nimigi ütleb, tähendab buck sisendpinge langetamist. Bucki muundur annab meile pinge, mis on väiksem kui suure voolutugevusega sisendpinge. See on otsene pöördumine.

BOOST CONVERTER: nagu nimigi ütleb, tähendab võimendus sisendpinge suurendamist.

Boost converter annab meile alalisvoolu pinge rohkem kui alalisvoolu pinge sisendis. See on ka otsene pöördumine.

** selles projektis teeme 12 V DC alandamiseks pistikumuunduri vooluahela, kasutades PWM-i allikana arduino.

PWM-Sageduse muutmine ARDUINO PINS-idel:

Arduino UNO PWM-nööpnõelad on 3, 5, 6, 9, 10 ja 11.

PWM-i täitmiseks kasutatakse järgmist käsku:

analogWrite (PWM PIN NO, PWM VALUE)

ja nende tihvtide PWM-i sagedus on:

Arduino tihvtide 9, 10, 11 ja 3 jaoks - 500 Hz

Arduino tihvtide 5 ja 6 jaoks - 1 kHz

Need sagedused sobivad hästi üldotstarbeliseks kasutamiseks, nagu ledi tuhmumine. Kuid vooluringi jaoks buck või boost konverter , on vaja kõrgsageduslikku PWM-i allikat (kümnete KHZ vahemikus), kuna MOSFET vajab täiuslikuks ümberlülitamiseks kõrgsagedust ja ka kõrgsageduslik sisend vähendab vooluahela komponentide, näiteks induktiivpooli ja kondensaatori, väärtust või suurust. Seega vajame selle projekti jaoks kõrgsageduslikku PWM-i allikat.

Hea on see, et saame lihtsa koodi abil muuta arduino PWM-tihvtide PWM-i sagedust:

ARDUINO UNO:

Saadaval PWM sagedus D3 ja D11 jaoks:
// TCCR2B = TCCR2B & B11111000 | B00000001 // PWM-sageduse 31372,55 Hz korral
// TCCR2B = TCCR2B & B11111000 | B00000010 // PWM-sageduse 3921,16 Hz korral
// TCCR2B = TCCR2B & B11111000 | B00000011 // PWM-i sageduse 980,39 Hz korral
TCCR2B = TCCR2B & B11111000 | B00000100 // PWM-sageduse 490,20 Hz korral (DEFAULT)
// TCCR2B = TCCR2B & B11111000 | B00000101 // PWM-sageduse 245,10 Hz korral
// TCCR2B = TCCR2B & B11111000 | B00000110 // PWM-sageduse 122,55 Hz korral
// TCCR2B = TCCR2B & B11111000 | B00000111 // PWM-i sageduse 30,64 Hz korral
Saadaval PWM sagedus D5 ja D6 jaoks:
// TCCR0B = TCCR0B & B11111000 | B00000001 // PWM-i sageduse 62500,00 Hz korral
// TCCR0B = TCCR0B & B11111000 | B00000010 // PWM-sageduse 7812,50 Hz korral
TCCR0B = TCCR0B & B11111000 | B00000011 // PWM-sageduse 976,56 Hz korral (DEFAULT)
// TCCR0B = TCCR0B & B11111000 | B00000100 // PWM-sageduse 244,14 Hz korral
// TCCR0B = TCCR0B & B11111000 | B00000101 // PWM-sageduse 61,04 Hz korral
Saadaval PWM sagedus D9 ja D10 jaoks:
// TCCR1B = TCCR1B & B11111000 | B00000001 // seadistage taimeri 1 jagaja väärtusele 1 PWM-sageduse 31372,55 Hz jaoks
// TCCR1B = TCCR1B & B11111000 | B00000010 // PWM-sageduse 3921,16 Hz korral
TCCR1B = TCCR1B ja B11111000 | B00000011 // PWM-sageduse 490,20 Hz korral (DEFAULT)
// TCCR1B = TCCR1B & B11111000 | B00000100 // PWM-i sageduse 122,55 Hz korral
// TCCR1B = TCCR1B & B11111000 | B00000101 // PWM-i sageduse 30,64 Hz korral
** kasutame tihvti nr. 6 PWM-i jaoks, seega kood:
// TCCR0B = TCCR0B & B11111000 | B00000001 // PWM-i sageduse 62,5 KHz korral

KOMPONENTIDE LOETELU:

1. ARDUINO UNO

2. INDUKTOR (100Uh)

3. SCHOTTKY DIOD

4. Kondensaator (100uf)

5. IRF540N

6. POTENTIOMETER

7. 10k, 100ohm RESISTOR

8. LOAD (antud juhul mootor)

9.12 V AKU

JOONDIAGRAMM

Buck Converter Arduino abil

Buck Converter Arduino juhtmestiku paigutuse kasutamine

Tehke ühendused vastavalt skeemile.

1. Ühendage potentsiomeetri otsaklemmid vastavalt arduino UNO 5v tihvti ja maandatud tihvtiga, samas kui selle klaasipuhasti klemm ühendab analoognõela A1.

2. Ühendage arduino PWM-tihvt 6 mosfeti alusega.

3. Aku positiivne klemm mosfeti äravooluks ja negatiivne schottky dioodi p-klemmiks.

4. Ühendage schottky dioodi p-terminalist koormus (mootor) induktoriga järjestikku mosfeti lähteklemmiga.

5. Nüüd ühendage schottky dioodi n-terminal Mosfeti lähteklemmiga.

6. Ühendage 47uf kondensaator üle mootori.

7. Lõpuks ühendage arduino maandatud tihvt mosfeti lähteklemmiga.

MOSFETi eesmärk:

Mosfetit kasutatakse sisendsageduse kõrgel sagedusel lülitamiseks ja suure voolu tagamiseks vähem soojust hajutades.

Arduino eesmärk:

MOSFETi suure ümberlülituskiiruse jaoks (umbes sagedusel 65 KHz)

Induktori eesmärk:

Kui seda vooluahelat käivitatakse ilma induktiivpooli ühendamata, on mosfeti kahjustamise tõenäosus mosfeti klemmil kõrgepinge tõttu.

Nendest kõrgepinge naastude vältimiseks on mosfet ühendatud, nagu joonisel näidatud, kuna kui mosfet on peal, salvestab see energiat ja kui mosfet on välja lülitatud, annab see selle salvestatud energia mootorile.

Schottky dioodi eesmärk:

Oletame, et schottky diood pole vooluahelas ühendatud. Sel juhul, kui mosfet on välja lülitatud, vabastab induktiivpool oma energia koormusele või mootorile, millel on koormusele väga väike mõju, kuna voolu jaoks on puudulik silmus. Seega lõpetab schottky diood silmuse voolu läbimiseks. Nüüd ei ole tavaline diood siin ühendatud, kuna schottky dioodil on madal pinge langus. Juhitud eesmärk:
et näidata koormuse alandamise pinget.

Potentsiomeetri eesmärk:

Potentsiomeeter annab analoogväärtuse arduinole (põhineb klaasipuhasti terminali asukohal), mille kohaselt pwm pinge saab mosfeti väravaterminal Arduino PWM tihvtilt 6. See väärtus kontrollib lõppkokkuvõttes väljundpinget kogu koormuse ulatuses.

Miks takisti on ühendatud värava ja allika vahel?

Isegi väike müra võib mosfeti sisse lülitada. Seega a tõmmake takisti alla on ühendatud värava ja maa, st allika vahel.

Programmi kood

Burn this code to arduino:
int m // initialize variable m
int n // initialize variable n
void setup()
B00000001 // for PWM frequency of 62.5 KHz on pin 6( explained under code section)
Serial.begin(9600) // begin serial communication

void loop()
{
m= analogRead(A1) // read voltage value from pin A1 at which pot. wiper terminal is connected
n= map(m,0,1023,0,255) // map this ip value betwenn 0 and 255
analogWrite(6,n) // write mapped value on pin 6
Serial.print(' PWM Value ')
Serial.println(n)
}

KOODI SELETUS

1. Muutuja x on pinge väärtus, mis saadakse tihvtilt A1, millesse poti klaasipuhasti terminal on ühendatud.

2. Muutujale y määratakse vastendatud väärtus, mis jääb vahemikku 0–255.

3. ** nagu juba vooluahela (näiteks buck või boost converter) osas eespool selgitatud, on vaja kõrgsageduslikku PWM-i allikat (kümnete KHZ vahemikus), sest MOSFET vajab täiuslikuks ümberlülitamiseks kõrget sagedust ja kõrgsageduslik sisend vähendab väärtust või suurust skeemi komponentidest nagu induktiivpool ja kondensaator.

Seega hakkame selle lihtsa koodi abil genereerima pwm pinget umbes. 65 kHz sagedus: TCCR0B = TCCR0B & B11111000 | B00000001 // PWM-i sagedusel 62,5 KHz tihvtil 6

Kuidas see töötab:

Kuna potentsiomeeter annab arduinole analoogväärtuse (klaasipuhasti klemmi asukoha põhjal), määrab see PWM pinge väärtuse, mille mosfeti väravaklemm saab Arduino PWM tihvtilt 6.

Ja see väärtus kontrollib lõppkokkuvõttes väljundpinget kogu koormuse ulatuses.

Kui mosfet on sisse lülitatud, siis induktor salvestab energiat ja kui see välja lülitatakse, vabaneb salvestatud energia sel juhul koormusele, st mootorile. Kuna see protsess toimub väga kõrgel sagedusel, saame alalisvoolu pinge alla mootori, mis sõltub klaasipuhasti terminali asendist, kuna mosfet on pingest sõltuv seade.

Piltide prototüüp:

Videoklipp ülaltoodud selgitatud Buck Converter-vooluringist, kasutades Arduino




Eelmine: Arduino abil lihtne digitaalne veevoolumõõtja vooluring Järgmine: 4 lihtsat lähedusanduri ahelat - kasutades IC LM358, IC LM567, IC 555