- Необходимые компоненты
- Управление вентилятором переменного тока с помощью Arduino
- 1. Детектор перехода через ноль
- 2. Цепь управления фазовым углом.
- 3. Потенциометр для управления скоростью вентилятора.
- 4. Блок генерации сигналов ШИМ
- Принципиальная электрическая схема
- Программирование Arduino для управления скоростью вентилятора переменного тока
ПРЕДУПРЕЖДЕНИЕ!! Принципиальная схема, обсуждаемая в этом проекте, предназначена только для образовательных целей. Имейте в виду, что работа с сетевым напряжением 220 В переменного тока требует крайней осторожности и соблюдения правил техники безопасности. Не касайтесь каких-либо компонентов или проводов во время работы цепи.
Легко включить или выключить любой бытовой прибор с помощью переключателя или какого-либо механизма управления, как мы это делали во многих проектах домашней автоматизации на базе Arduino. Но есть много приложений, где нам нужно частично управлять мощностью переменного тока, например, для управления скоростью вентилятора или интенсивностью лампы. В этом случае используется метод ШИМ, поэтому здесь мы узнаем, как использовать ШИМ, сгенерированный Arduino, для управления скоростью вентилятора переменного тока с помощью Arduino.
В этом проекте мы продемонстрируем управление скоростью вентилятора Arduino AC с помощью TRIAC. Здесь метод управления фазой сигнала переменного тока используется для управления скоростью вентилятора переменного тока с использованием сигналов ШИМ, генерируемых Arduino. В предыдущем уроке мы контролировали скорость вращения вентилятора постоянного тока с помощью ШИМ.
Необходимые компоненты
- Arduino UNO
- 4N25 (Детектор перехода через нуль)
- Потенциометр 10k
- MOC3021 0pto-соединитель
- (0-9) В, понижающий трансформатор 500 мА
- BT136 TRIAC
- 230 В переменного тока Осевой вентилятор переменного тока
- Соединительные провода
- Резисторы
Управление вентилятором переменного тока с помощью Arduino
Работу можно разделить на четыре части. Они следующие
1. Детектор перехода через ноль
2. Схема управления фазовым углом
3. Потенциометр для контроля скорости вентилятора
4. Схема генерации сигнала ШИМ
1. Детектор перехода через ноль
Электропитание переменного тока, которое мы получаем в нашем доме, составляет 220 В переменного тока, 50 Гц. Этот сигнал переменного тока имеет переменный характер и периодически меняет свою полярность. В первой половине каждого цикла он течет в одном направлении, достигая пикового напряжения, а затем снижается до нуля. Затем в следующем полупериоде он течет в альтернативном направлении (отрицательном) до пикового напряжения, а затем снова достигает нуля. Для управления скоростью вентилятора переменного тока необходимо ограничивать или контролировать пиковое напряжение обоих полупериодов. Для этого нам необходимо определить нулевую точку, от которой сигнал должен контролироваться / прерываться. Эта точка на кривой напряжения, где напряжение меняет направление, называется пересечением нулевого напряжения.
Схема, показанная ниже, представляет собой схему детектора перехода через нуль, которая используется для определения точки перехода через нуль. Сначала напряжение 220 В переменного тока понижается до 9 В переменного тока с помощью понижающего трансформатора, а затем оно подается на оптопару 4N25 на его контакты 1 и 2. Оптопара 4N25 имеет встроенный светодиод с контактом 1 в качестве анода и контактом 2 в качестве катод. Таким образом, согласно схеме ниже, когда волна переменного тока приближается к точке пересечения нуля, встроенный светодиод 4N25 погаснет, и в результате выходной транзистор 4N25 также будет выключен, а вывод выходного импульса будет подтянуться до 5В. Аналогично, когда сигнал постепенно увеличивается до пикаточки, затем загорится светодиод, и транзистор также включится с заземляющим контактом, подключенным к выходному контакту, что делает этот контакт 0V. Используя этот импульс, точка пересечения нуля может быть обнаружена с помощью Arduino.
2. Цепь управления фазовым углом.
После обнаружения точки перехода через нуль, теперь мы должны контролировать время, в течение которого питание будет включаться и выключаться. Этот сигнал PWM будет определять величину напряжения, подаваемого на двигатель переменного тока, который, в свою очередь, управляет его скоростью. Здесь используется TRIAC BT136, который управляет напряжением переменного тока, поскольку это силовой электронный переключатель для управления сигналом напряжения переменного тока.
TRIAC - это трехконтактный переключатель переменного тока, который может быть запущен сигналом низкой энергии на его выводе затвора. В SCR он проводит только в одном направлении, но в случае TRIAC мощность может регулироваться в обоих направлениях. Чтобы узнать больше о TRIAC и SCR, следите за нашими предыдущими статьями.
Как показано на рисунке выше, TRIAC срабатывает при угле включения 90 градусов путем подачи на него небольшого сигнала стробирующего импульса. Время «t1» - это время задержки, которое задается в соответствии с требованиями к регулировке яркости. Например, в этом случае угол зажигания составляет 90 процентов, следовательно, выходная мощность также будет уменьшена вдвое, и, следовательно, лампа также будет светиться с половинной интенсивностью.
Мы знаем, что частота сигнала переменного тока здесь 50 Гц. Таким образом, период времени будет 1 / f, что составляет 20 мсек. Для полупериода это будет 10 мс или 10 000 микросекунд. Следовательно, для управления мощностью лампы переменного тока диапазон «t1» может варьироваться от 0 до 10000 микросекунд.
Оптопара:
Оптопара также известна как оптоизолятор. Он используется для поддержания изоляции между двумя электрическими цепями, такими как сигналы постоянного и переменного тока. По сути, он состоит из светодиода, излучающего инфракрасный свет, и фотодатчика, который его обнаруживает. Здесь оптопара MOC3021 используется для управления вентилятором переменного тока с помощью сигналов микроконтроллера, которые являются сигналом постоянного тока.
Схема подключения TRIAC и оптопары:
3. Потенциометр для управления скоростью вентилятора.
Здесь потенциометр используется для изменения скорости вентилятора переменного тока. Мы знаем, что потенциометр - это трехконтактное устройство, которое действует как делитель напряжения и обеспечивает переменное выходное напряжение. Это переменное аналоговое выходное напряжение подается на аналоговый входной терминал Arduino для установки значения скорости вентилятора переменного тока.
4. Блок генерации сигналов ШИМ
На последнем этапе на TRIAC подается импульс ШИМ в соответствии с требованиями к скорости, который, в свою очередь, изменяет время включения / выключения сигнала переменного тока и обеспечивает переменный выходной сигнал для управления скоростью вентилятора. Здесь Arduino используется для генерации импульса PWM, который принимает входной сигнал от потенциометра и выдает выходной сигнал PWM на TRIAC и схему оптопары, которая дополнительно приводит в движение вентилятор переменного тока с желаемой скоростью. Узнайте больше о генерации ШИМ с помощью Arduino здесь.
Принципиальная электрическая схема
Принципиальная схема этой схемы управления скоростью вращения вентилятора 230 В на базе Arduino приведена ниже:
Примечание: я показал полную схему на макетной плате только для понимания. Вы не должны использовать источник переменного тока 220 В непосредственно на макетной плате, я использовал точечную плату для выполнения соединений, как вы можете видеть на изображении ниже.
Программирование Arduino для управления скоростью вентилятора переменного тока
После аппаратного подключения нам нужно написать код для Arduino, который будет генерировать сигнал ШИМ для управления синхронизацией включения / выключения сигнала переменного тока с помощью входа потенциометра. Ранее мы использовали методы ШИМ во многих проектах.
Полный код этого проекта управления скоростью вентилятора переменного тока Arduino приведен в конце этого проекта. Пошаговое объяснение кода приведено ниже.
На первом этапе объявите все необходимые переменные, которые будут использоваться во всем коде. Здесь BT136 TRIAC подключен к выводу 6 Arduino. И объявлена переменная speed_val для хранения значения шага скорости.
int TRIAC = 6; int speed_val = 0;
Затем внутри функции настройки объявите вывод TRIAC как вывод, поскольку через этот вывод будет генерироваться вывод ШИМ. Затем настройте прерывание для обнаружения перехода через нуль. Здесь мы использовали функцию под названием attachInterrupt, которая настроит цифровой контакт 3 Arduino как внешнее прерывание и вызовет функцию с именем zero_crossing при обнаружении любых прерываний на своем выводе.
void setup () {pinMode (ЛАМПА, ВЫХОД); attachInterrupt (digitalPinToInterrupt (3), нулевое_пересечение, ИЗМЕНЕНИЕ); }
Внутри бесконечного цикла считайте аналоговое значение с потенциометра, подключенного к A0, и сопоставьте его с диапазоном значений (10-49).
Чтобы узнать этот диапазон, нам нужно провести небольшой расчет. Ранее сообщалось, что каждый полупериод эквивалентен 10 000 микросекунд. Итак, здесь диммирование будет регулироваться за 50 шагов, что является произвольным значением и может быть изменено. Здесь минимальные шаги принимаются равными 10, а не нулю, потому что шаги 0-9 дают примерно одинаковую выходную мощность, а максимальные шаги принимаются равными 49, поскольку практически не рекомендуется брать верхний предел (который в данном случае равен 50).
Тогда время каждого шага можно рассчитать как 10000/50 = 200 микросекунд. Это будет использовано в следующей части кода.
void loop () {int pot = analogRead (A0); int data1 = карта (горшок, 0, 1023,10,49); speed_val = data1; }
На последнем этапе настройте управляемую прерыванием функцию zero_crossing. Здесь время затемнения можно рассчитать, умножив время отдельного шага на номер. шагов. Затем по истечении этого времени задержки TRIAC может быть запущен с использованием небольшого импульса высокого уровня длительностью 10 микросекунд, которого достаточно для включения TRIAC.
void zero_crossing () {int chop_time = (200 * скорость_вал); delayMicroseconds (chop_time); digitalWrite (TRIAC, HIGH); delayMicroseconds (10); digitalWrite (TRIAC, LOW); }
Полный код вместе с рабочим видео для этого управления вентилятором переменного тока с использованием Arduino и PWM приведен ниже.