- Необходими компоненти:
- Електрическа схема и връзки:
- Обяснение на кода:
- Работа на DC-DC Buck Converter:
В този проект ще направим Buck Converter Circuit, използвайки Arduino и N-Channel MOSFET с максимален токов капацитет от 6 ампера. Ще намалим 12v DC до всяка стойност между 0 и 10v DC. Можем да контролираме стойността на изходното напрежение чрез завъртане на потенциометъра.
Преобразувателят за долар е преобразувател от постоянен в постоянен, който намалява постояннотоковото напрежение. Той е точно като трансформатор с една разлика; като има предвид, че трансформаторът намалява променливотоковото напрежение, конверторът понижава постояннотоковото напрежение. Ефективността на преобразувателя е по-ниска от трансформатора.
Основните компоненти на конвертора за долар са MOSFET; или n-канален или p-канален и високочестотен квадратен импулсен генератор (или таймер IC или микроконтролер). Arduino се използва тук като генератор на импулси, за тази цел може да се използва и 555 таймер IC. Тук демонстрирахме този преобразувател Buck, като контролирахме скоростта на постояннотоковия двигател с потенциометър, също тествахме напрежението с помощта на мултиметър. Проверете видеото в края на тази статия.
Необходими компоненти:
- Arduino Uno
- IRF540N
- Индуктор (100Uh)
- Кондензатор (100uf)
- Диод на Шотки
- Потенциометър
- 10k, 100ohm резистор
- Заредете
- 12v батерия
Електрическа схема и връзки:
Направете връзки, както е показано на схемата по-горе за DC-DC Buck Converter.
- Свържете един терминал на индуктор към източника на MOSFET, а друг към LED последователно с 1k резистор. Натоварването е свързано паралелно на тази подредба.
- Свържете 10k резистор между портата и източника.
- Свържете кондензатора паралелно към товара.
- Свържете положителния извод на батерията към източване и отрицателния към отрицателния извод на кондензатора.
- Свържете p терминала на диода към минуса на батерията и n терминала директно към източника.
- PWM щифтът на Arduino отива до портата на MOSFET
- GND щифт на Arduino отива към източника на MOSFET. Свържете го там или веригата няма да работи.
- Свържете екстремните клеми на потенциометъра съответно към 5v пин и GND щифт на Arduino. Докато клемата на чистачките към аналогов щифт А1.
Функция на Arduino:
Както вече беше обяснено, Arduino изпраща тактови импулси към базата на MOSFET. Честотата на тези тактови импулси е приблизително. 65 Khz. Това води до много бързо превключване на MOSFET и ние получаваме средна стойност на напрежението. Трябва да научите за ADC и PWM в Arduino, което ще ви изчисти как високочестотните импулси се генерират от Arduino:
- LED димер, базиран на Arduino, използващ ШИМ
- Как да използвам ADC в Arduino Uno?
Функция на MOSFET:
Mosfet се използва за две цели:
- За високоскоростно превключване на изходното напрежение.
- За осигуряване на висок ток с по-малко разсейване на топлината.
Функция на индуктора:
Индукторът се използва за управление на скокове на напрежението, които могат да повредят MOSFET. Индукторът съхранява енергия, когато MOSFET е включен и освобождава тази съхранена енергия, когато MOSFET е изключен. Тъй като честотата е много висока, стойността на индуктивността, необходима за тази цел, е много ниска (около 100uH).
Функция на диода на Шотки:
Диодът на Шотки завършва веригата на тока, когато MOSFET е изключен и по този начин осигурява плавно подаване на ток към товара. Освен това, диодът на Schottky разсейва много ниска топлина и работи добре при по-висока честота от обикновените диоди.
Функция на светодиода:
Яркостта на светодиода показва понижаващото напрежение в товара. Докато въртим потенциометъра, яркостта на светодиода варира.
Функция на потенциометъра:
Когато терминалът на чистачките на потенциометъра се изхвърли в различно положение, напрежението между него и земята се променя, което от своя страна променя аналоговата стойност, получена от щифт А1 на arduino. След това тази нова стойност се картографира между 0 и 255 и след това се дава на пин 6 на Arduino за ШИМ.
** Кондензаторът изглажда напрежението, дадено на товара.
Защо резистор между порта и източника?
Дори и най-малкият шум на портата на MOSFET може да го включи, поради което за да се предотврати това винаги се препоръчва да свържете резистор с висока стойност между портата и източника.
Обяснение на кода:
Пълният код на Arduino за генериране на високочестотни импулси е даден в раздела за кодове по-долу.
Кодът е прост и разбираем, така че тук сме обяснили само няколко части от кода.
На променлива x се присвоява аналоговата стойност, получена от аналогов щифт A0 на Arduino
x = analogRead (A1);
Променливата w се присвоява на картографираната стойност, която е между 0 и 255. Тук ADC стойностите на Arduino се преобразуват на 2 до 255, използвайки функцията за карта в Arduino.
w = карта (x, 0,1023,0,255);
Нормалната честота на ШИМ за щифт 6 е приблизително 1 kHz. Тази честота не е подходяща за цели като конвертор на долари. Следователно тази честота трябва да бъде увеличена до много високо ниво. Това може да се постигне с помощта на код от един ред в void setup:
TCCR0B = TCCR0B & B11111000 - B00000001; // промяна на честотата на pwm на 65 KHZ приблизително
Работа на DC-DC Buck Converter:
Когато веригата е включена, MOSFET се включва и изключва с честота 65 khz. Това кара индукторът да съхранява енергия, когато е включен MOSFET, и след това да даде тази натрупана енергия да се зареди, когато MOSFET се изключи. Тъй като това се случва при много висока честота, получаваме средна стойност на импулсното изходно напрежение в зависимост от положението на клемата на чистачките на потенциометъра по отношение на 5v терминал. И тъй като това напрежение между терминала на чистачките и земята се увеличава, се увеличава и картографираната стойност на pwm пин № 6 от Arduino.
Да приемем, че тази нанесена стойност е 200. Тогава PWM напрежението на щифт 6 ще бъде при: = 3.921 волта
И тъй като MOSFET е устройство, зависимо от напрежението, това pwm напрежение в крайна сметка определя напрежението в товара.
Тук демонстрирахме този преобразувател Buck чрез завъртане на DC мотор и на мултиметър, проверете видеото по-долу. Контролирахме скоростта на двигателя с потенциометър и контролирахме яркостта на светодиода с потенциометър.