Izveidojiet šo Buck Converter, izmantojot Arduino

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā projektā mēs samazināsim 12 V DC līdz jebkurai DC vērtībai starp 2 un 11 voltiem. Ķēde, kas pazemina līdzstrāvas spriegumu, ir pazīstama kā buck pārveidotājs. Nepieciešamo izejas spriegumu vai pazemināšanas spriegumu kontrolē, izmantojot arduino pievienotu potenciometru.

Autors Ankits Negi



IEVADS PĀRVEIDOTĀJIEM:

Pārsvarā ir divu veidu pārveidotāji:

1. Buka pārveidotājs



2. Palielināt pārveidotāju

Abi pārveidotāji maina ieejas spriegumu atbilstoši prasībām. Tie ir līdzīgi a transformators ar vienu galveno atšķirību. Tā kā transformators palielina / pazemina maiņstrāvas spriegumu, līdzstrāvas pārveidotāji palielina / pazemina līdzstrāvas spriegumu. Abu pārveidotāju galvenās sastāvdaļas ir:

A. MOSFET

B. INDUKTORS

C. KAPACITORS

BUCK CONVERTER: kā norāda pats nosaukums, buck nozīmē pazemināt ieejas spriegumu. Buka pārveidotājs dod mums spriegumu, kas ir mazāks par ieejas līdzstrāvas spriegumu ar lielu strāvas jaudu. Tā ir tieša pārveidošana.

BOOST CONVERTER: kā norāda pats nosaukums, boost nozīmē palielināt ieejas spriegumu.

Palielināšanas pārveidotājs dod mums līdzstrāvas spriegumu vairāk nekā līdzstrāvas spriegums ieejā. Tā ir arī tieša pārveidošana.

** Šajā projektā mēs izveidosim buck pārveidotāja ķēdi, lai samazinātu 12 v DC, izmantojot arduino kā PWM avotu.

PWM BIEŽUMA MAINĪŠANA ARDUINO PINOS:

Arduino UNO PWM tapas ir 3, 5, 6, 9, 10 un 11.

Lai veiktu PWM, tiek izmantota šāda komanda:

analogWrite (PWM PIN NO, PWM VALUE)

un šo tapu PWM frekvence ir:

Arduino tapām 9, 10, 11 un 3 ---- 500Hz

Arduino 5. un 6. tapām - 1 kHz

Šīs frekvences ir piemērotas vispārējai lietošanai, piemēram, LED izbalēšanai. Bet tādām ķēdēm kā buck vai palielināt pārveidotāju , ir nepieciešams augstas frekvences PWM avots (desmitiem KHZ diapazonā), jo MOSFET ir nepieciešama augsta frekvence, lai perfekti pārslēgtos, kā arī augstas frekvences ieeja samazina ķēdes komponentu, piemēram, induktora un kondensatora, vērtību vai izmēru. Tāpēc šim projektam mums ir nepieciešams augstas frekvences PWM avots.

Labi ir tas, ka mēs varam mainīt arduino PWM tapu PWM biežumu, izmantojot vienkāršu kodu:

ARDUINO UNO:

Pieejamā PWM frekvence D3 un D11:
// TCCR2B = TCCR2B & B11111000 | B00000001 // PWM frekvencei 31372,55 Hz
// TCCR2B = TCCR2B & B11111000 | B00000010 // PWM frekvencei 3921,16 Hz
// TCCR2B = TCCR2B & B11111000 | B00000011 // PWM frekvencei 980,39 Hz
TCCR2B = TCCR2B & B11111000 | B00000100 // PWM frekvencei 490,20 Hz (DEFAULT)
// TCCR2B = TCCR2B & B11111000 | B00000101 // PWM frekvencei 245,10 Hz
// TCCR2B = TCCR2B & B11111000 | B00000110 // PWM frekvencei 122,55 Hz
// TCCR2B = TCCR2B & B11111000 | B00000111 // PWM frekvencei 30,64 Hz
Pieejamā PWM frekvence D5 un D6:
// TCCR0B = TCCR0B & B11111000 | B00000001 // PWM frekvencei 62500,00 Hz
// TCCR0B = TCCR0B & B11111000 | B00000010 // PWM frekvencei 7812,50 Hz
TCCR0B = TCCR0B & B11111000 | B00000011 // PWM frekvencei 976,56 Hz (DEFAULT)
// TCCR0B = TCCR0B & B11111000 | B00000100 // PWM frekvencei 244,14 Hz
// TCCR0B = TCCR0B & B11111000 | B00000101 // PWM frekvencei 61,04 Hz
Pieejamā PWM frekvence D9 un D10:
// TCCR1B = TCCR1B & B11111000 | B00000001 // iestatiet taimera 1 dalītāju uz 1 PWM frekvencei 31372,55 Hz
// TCCR1B = TCCR1B & B11111000 | B00000010 // PWM frekvencei 3921,16 Hz
TCCR1B = TCCR1B & B11111000 | B00000011 // PWM frekvencei 490,20 Hz (DEFAULT)
// TCCR1B = TCCR1B & B11111000 | B00000100 // PWM frekvencei 122,55 Hz
// TCCR1B = TCCR1B & B11111000 | B00000101 // PWM frekvencei 30,64 Hz
** mēs izmantosim tapu Nr. 6 PWM, tāpēc kods:
// TCCR0B = TCCR0B & B11111000 | B00000001 // PWM frekvencei 62,5 KHz

KOMPONENTU SARAKSTS:

1. ARDUINO UNO

2. INDUKTORS (100Uh)

3. ŠOTKIJAS DIODA

4. KAPACITORS (100 jūdzes)

5. IRF540N

6. POTENCIOMETRS

7. 10k, 100ohm RESISTOR

8. LOAD (šajā gadījumā motors)

9.12 V BATERIJA

APKURES DIAGRAMMA

Buck Converter, izmantojot Arduino

Buck Converter Izmantojot Arduino elektroinstalācijas izkārtojumu

Veiciet savienojumus, kā parādīts shēmā.

1. Pievienojiet potenciometra gala spailes attiecīgi arduino UNO 5v kontaktam un zemējuma tapai, turpretim tā stikla tīrītāja spailei - analogo tapu A1.

2. Savienojiet arduino PWM 6. kontaktu ar mosfet pamatni.

3. Pozitīvs akumulatora kontaktspraudnis, lai iztukšotu mosfetu, un negatīvs - schottky diode p-spailei.

4. No schottky diode p-spailes savienojiet slodzi (motoru) virknē ar induktoru ar mosfet avota spaili.

5. Tagad savienojiet schottky diode n-spaili ar mosfet avota spaili.

6. Pievienojiet 47uf kondensatoru pāri motoram.

7. Visbeidzot savienojiet arduino zemes tapu ar mosfet avota termināli.

MOSFET mērķis:

Mosfet tiek izmantots, lai pārslēgtu ieejas spriegumu augstā frekvencē un nodrošinātu lielu strāvu ar mazāku siltuma izkliedi.

Arduino mērķis:

Lielam mosfet pārslēgšanās ātrumam (aptuveni 65 KHz frekvencē)

Induktora mērķis:

Ja šī ķēde tiek darbināta, nepieslēdzot induktoru, pastāv lielas iespējas sabojāt mosfet, pateicoties augstsprieguma tapām uz mosfet spailes.

Lai novērstu mosfet no šiem augstsprieguma tapām, tas ir savienots, kā parādīts attēlā, jo tad, kad mosfet ir uz tā, tas uzkrāj enerģiju un, kad mosfet ir izslēgts, tas atdod šo uzkrāto enerģiju motoram.

Schottky diode mērķis:

Pieņemsim, ka schottky diode nav savienota ķēdē. Šajā gadījumā, kad mosfet ir izslēgts, induktors atbrīvo enerģiju slodzei vai motoram, kam ir ļoti neliela ietekme uz slodzi, jo strāvas plūsmai ir nepilnīga cilpa. Tādējādi schottky diode pabeidz strāvas plūsmas cilpu. Tagad parasts diode šeit nav pievienots, jo schottky diodei ir zems sprieguma kritums uz priekšu. Led mērķis:
lai samazinātu spriegumu visā slodzē.

Potenciometra mērķis:

Potenciometrs piešķir analogo vērtību arduino (pamatojoties uz tīrītāja spailes stāvokli), saskaņā ar kuru pwm spriegumu saņem mosfet vārtu spaile no Arduino PWM 6. kontakta. Šī vērtība galu galā kontrolē izejas spriegumu visā slodzē.

Kāpēc rezistors ir savienots starp vārtiem un avotu?

Pat nelielu troksni var ieslēgt MOSFET. Tādējādi a nolaist rezistoru ir savienots starp vārtiem un zemi, t.i., avotu.

Programmas kods

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)
}

KODA PASKAIDROJUMS

1. Mainīgais x ir sprieguma vērtība, kas saņemta no tapas A1, pie kuras ir pievienots katla tīrītāja spaile.

2. Mainīgajam y piešķir kartēto vērtību, kas ir no 0 līdz 255.

3. ** kā jau iepriekš paskaidrots ķēdes, piemēram, buck vai boost konvertera, iepriekšējā sadaļā, ir nepieciešams augstas frekvences PWM avots (desmitiem KHZ diapazonā), jo MOSFET ir nepieciešama augsta frekvence, lai perfekti pārslēgtos, un augstas frekvences ieeja samazina vērtību vai lielumu ķēdes sastāvdaļu, piemēram, induktors un kondensators.

Tādējādi mēs izmantosim šo vienkāršo kodu, lai ģenerētu apm. 65 kHz frekvence: TCCR0B = TCCR0B & B11111000 | B00000001 // PWM frekvencei 62,5 KHz uz 6. kontakta

Kā tas strādā:

Tā kā potenciometrs piešķir analogo vērtību arduino (pamatojoties uz tīrītāja spailes stāvokli), tas nosaka pwm sprieguma vērtību, ko mosfet vārtu terminālis saņem no Arduino PWM 6. kontakta.

Un šī vērtība galu galā kontrolē izejas spriegumu visā slodzē.

Kad mosfet ir ieslēgts, induktors uzkrāj enerģiju un, kad tas izslēdzas, šī uzkrātā enerģija tiek atbrīvota uz slodzi, t.i., šajā gadījumā motors. Tā kā šis process notiek ļoti augstā frekvencē, mēs samazinām līdzstrāvas spriegumu visā motorā, kas ir atkarīgs no tīrītāja termināla stāvokļa, jo mosfet ir no sprieguma atkarīga ierīce.

Attēlu prototips:

Videoklips no iepriekš izskaidrotās Buck Converter shēmas, izmantojot Arduino




Pāri: Vienkārša digitālā ūdens plūsmas mērītāja shēma, izmantojot Arduino Nākamais: 4 vienkāršas tuvuma sensoru shēmas - izmantojot IC LM358, IC LM567, IC 555