Zrób ten konwerter Buck za pomocą Arduino

Wypróbuj Nasz Instrument Do Eliminowania Problemów





W tym projekcie zamierzamy obniżyć napięcie stałe 12 V do dowolnej wartości DC między 2 a 11 woltów. Obwód obniżający napięcie DC jest nazywany konwerterem buck. Wymagane napięcie wyjściowe lub napięcie obniżające jest kontrolowane za pomocą potencjometru podłączonego do arduino.

Ankit Negi



WPROWADZENIE DO KONWERTERÓW:

Zasadniczo istnieją dwa typy konwerterów:

1. Konwerter Buck



2. Zwiększ konwerter

Oba przetwornice zmieniają napięcie wejściowe zgodnie z wymaganiami. Są podobne do transformator z jedną główną różnicą. Podczas gdy transformator podnosi / obniża napięcie prądu przemiennego, przetworniki prądu stałego zwiększają / zmniejszają napięcie prądu stałego. Głównymi elementami obu konwerterów są:

A. MOSFET

B. INDUCTOR

C. KONDENSATOR

BUCK CONVERTER: jak sama nazwa sugeruje, buck oznacza obniżenie napięcia wejściowego. przetwornica daje nam napięcie mniejsze niż wejściowe napięcie prądu stałego przy dużej wydajności prądowej. To jest konwersja bezpośrednia.

BOOST CONVERTER: jak sama nazwa sugeruje, boost oznacza zwiększenie napięcia wejściowego.

Konwerter Boost daje nam napięcie DC większe niż napięcie DC na wejściu. To także konwersja bezpośrednia.

** w tym projekcie zamierzamy wykonać obwód konwertera buck, aby obniżyć napięcie 12 V DC, używając arduino jako źródła PWM.

ZMIANA CZĘSTOTLIWOŚCI PWM NA STYKACH ARDUINO:

Piny PWM arduino UNO to 3, 5, 6, 9, 10 i 11.

Do wykonania PWM służy polecenie:

analogWrite (NR PIN PWM, WARTOŚĆ PWM)

a częstotliwość PWM dla tych pinów to:

Dla pinów Arduino 9, 10, 11 i 3 ---- 500 Hz

Dla pinów Arduino 5 i 6 ---- 1 kHz

Częstotliwości te są odpowiednie do zastosowań ogólnych, takich jak zanikanie diody LED. Ale dla obwodu jak konwerter buck lub boost , potrzebne jest źródło PWM o wysokiej częstotliwości (w zakresie dziesiątek KHZ), ponieważ MOSFET potrzebuje wysokiej częstotliwości do doskonałego przełączania, a wejście o wysokiej częstotliwości zmniejsza wartość lub rozmiar elementów obwodu, takich jak cewka i kondensator. Dlatego do tego projektu potrzebujemy źródła PWM wysokiej częstotliwości.

Dobrze, że możemy zmienić częstotliwość PWM pinów PWM arduino za pomocą prostego kodu:

DLA ARDUINO UNO:

Dostępna częstotliwość PWM dla D3 i D11:
// TCCR2B = TCCR2B i B11111000 | B00000001 // dla częstotliwości PWM 31372,55 Hz
// TCCR2B = TCCR2B i B11111000 | B00000010 // dla częstotliwości PWM 3921,16 Hz
// TCCR2B = TCCR2B i B11111000 | B00000011 // dla częstotliwości PWM 980,39 Hz
TCCR2B = TCCR2B i B11111000 | B00000100 // dla częstotliwości PWM 490,20 Hz (DEFAULT)
// TCCR2B = TCCR2B i B11111000 | B00000101 // dla częstotliwości PWM 245,10 Hz
// TCCR2B = TCCR2B i B11111000 | B00000110 // dla częstotliwości PWM 122,55 Hz
// TCCR2B = TCCR2B i B11111000 | B00000111 // dla częstotliwości PWM 30,64 Hz
Dostępna częstotliwość PWM dla D5 i D6:
// TCCR0B = TCCR0B i B11111000 | B00000001 // dla częstotliwości PWM 62500,00 Hz
// TCCR0B = TCCR0B i B11111000 | B00000010 // dla częstotliwości PWM 7812,50 Hz
TCCR0B = TCCR0B i B11111000 | B00000011 // dla częstotliwości PWM 976,56 Hz (DEFAULT)
// TCCR0B = TCCR0B i B11111000 | B00000100 // dla częstotliwości PWM 244,14 Hz
// TCCR0B = TCCR0B i B11111000 | B00000101 // dla częstotliwości PWM 61,04 Hz
Dostępna częstotliwość PWM dla D9 i D10:
// TCCR1B = TCCR1B i B11111000 | B00000001 // ustaw dzielnik timera 1 na 1 dla częstotliwości PWM 31372,55 Hz
// TCCR1B = TCCR1B i B11111000 | B00000010 // dla częstotliwości PWM 3921,16 Hz
TCCR1B = TCCR1B i B11111000 | B00000011 // dla częstotliwości PWM 490,20 Hz (DEFAULT)
// TCCR1B = TCCR1B i B11111000 | B00000100 // dla częstotliwości PWM 122,55 Hz
// TCCR1B = TCCR1B i B11111000 | B00000101 // dla częstotliwości PWM 30,64 Hz
** będziemy używać pin nr. 6 dla PWM stąd kod:
// TCCR0B = TCCR0B i B11111000 | B00000001 // dla częstotliwości PWM 62,5 KHz

LISTA ELEMENTÓW:

1. ARDUINO UNO

2. INDUCTOR (100Uh)

3. DIODA SCHOTTKY

4. KONDENSATOR (100 uf)

5. IRF540N

6. POTENCJOMETR

7. 10k, 100ohm REZYSTOR

8. OBCIĄŻENIE (w tym przypadku silnik)

AKUMULATOR 9,12 V.

SCHEMAT OBWODU

Konwerter Buck za pomocą Arduino

Konwerter Buck wykorzystujący układ okablowania Arduino

Wykonaj połączenia zgodnie ze schematem połączeń.

1. Podłącz końcówki potencjometru odpowiednio do pinu 5V i styku uziemienia arduino UNO, natomiast końcówkę wycieraczki do pinu analogowego A1.

2. Podłącz pin 6 PWM arduino do podstawy mosfetu.

3. Dodatni biegun baterii do odprowadzania mosfetu i ujemny biegun p diody Schottky'ego.

4. Z zacisku p diody Schottky'ego, podłącz obciążenie (silnik) szeregowo z cewką indukcyjną do zacisku źródłowego mosfetu.

5. Teraz podłącz końcówkę n diody Schottky'ego do końcówki źródłowej mosfetu.

6. Podłącz kondensator 47uf do silnika.

7. Na koniec podłącz pin uziemienia arduino do zacisku źródłowego mosfetu.

Cel MOSFET:

Mosfet służy do przełączania napięcia wejściowego z wysoką częstotliwością i zapewnienia wysokiego prądu przy mniejszym rozpraszaniu ciepła.

Cel arduino:

Do dużej szybkości przełączania mosfetu (przy częstotliwości ok. 65 KHz)

Cel induktora:

Jeśli ten obwód zostanie uruchomiony bez podłączenia cewki indukcyjnej, istnieje duże prawdopodobieństwo uszkodzenia mosfetu z powodu skoków wysokiego napięcia na końcówce mosfetu.

Aby zapobiec tym skokom wysokiego napięcia mosfet, jest on podłączony, jak pokazano na rysunku, ponieważ kiedy mosfet jest włączony, magazynuje energię, a kiedy mosfet jest wyłączony, oddaje tę zmagazynowaną energię do silnika.

Cel diody Schottky'ego:

Załóżmy, że dioda Schottky'ego nie jest podłączona w obwodzie. W tym przypadku, gdy mosfet jest wyłączony, cewka indukcyjna uwalnia swoją energię do obciążenia lub silnika, co ma bardzo niewielki wpływ na obciążenie, ponieważ istnieje niepełna pętla przepływu prądu. W ten sposób dioda Schottky'ego zamyka pętlę przepływu prądu. Teraz normalna dioda nie jest tutaj podłączona, ponieważ dioda Schottky'ego ma niski spadek napięcia przewodzenia.
wskazanie obniżenia napięcia na obciążeniu.

Cel potencjometru:

Potencjometr podaje wartość analogową do arduino (na podstawie położenia zacisku wycieraczki), zgodnie z którą napięcie pwm jest odbierane przez zacisk bramki mosfetu z pinu 6 PWM Arduino. Ta wartość ostatecznie kontroluje napięcie wyjściowe na obciążeniu.

Dlaczego rezystor jest podłączony między bramką a źródłem?

Nawet niewielka ilość szumu może włączyć mosfet. Stąd a rezystor obniżający jest podłączony między bramą a masą, tj. źródłem.

Kod programu

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

WYJAŚNIENIE KODU

1. Zmienna x to wartość napięcia otrzymana z pinu A1, do którego podłączony jest zacisk wycieraczki potencjometru.

2. Zmienna y ma przypisaną wartość z przedziału od 0 do 255.

3. ** jak już wyjaśniono w powyższej sekcji dla obwodu takiego jak przetwornica buck lub boost, potrzebne jest źródło PWM o wysokiej częstotliwości (w zakresie dziesiątek KHZ), ponieważ MOSFET wymaga wysokiej częstotliwości dla doskonałego przełączania, a wejście wysokiej częstotliwości zmniejsza wartość lub rozmiar elementów obwodu, takich jak cewka i kondensator.

Dlatego użyjemy tego prostego kodu do wygenerowania napięcia pwm o wartości ok. Częstotliwość 65 kHz: TCCR0B = TCCR0B i B11111000 | B00000001 // dla częstotliwości PWM 62,5 kHz na pinie 6

Jak to działa:

Ponieważ Potencjometr podaje wartość analogową do arduino (na podstawie położenia zacisku wycieraczki), określa to wartość napięcia pwm odbieranego przez zacisk bramki mosfetu z pinu 6 PWM Arduino.

Ta wartość ostatecznie kontroluje napięcie wyjściowe na obciążeniu.

Kiedy mosfet jest włączony, induktor magazynuje energię, a kiedy się wyłącza, ta zmagazynowana energia jest uwalniana do obciążenia, czyli w tym przypadku do silnika. A ponieważ proces ten odbywa się z bardzo dużą częstotliwością, uzyskujemy obniżające napięcie prądu stałego na silniku, które zależy od położenia zacisku wycieraczki, ponieważ mosfet jest urządzeniem zależnym od napięcia.

Obrazy prototypowe:

Klip wideo z powyższym wyjaśnionym obwodem konwertera Buck za pomocą Arduino




Poprzedni: Prosty obwód cyfrowego miernika przepływu wody wykorzystujący Arduino Dalej: 4 proste obwody czujnika zbliżeniowego - za pomocą IC LM358, IC LM567, IC 555