Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

4-контактный ШИМ-контроль вентилятора, 25 кГц, с Arduino Uno

Компоненты и расходные материалы

Осевой вентилятор, 12 В постоянного тока
× 1
Arduino UNO
× 1
Кабель USB-A - Mini-USB
× 1
Перемычки (общие)
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Мне было интересно узнать об этом проекте и о том, как управлять своими 4-контактными вентиляторами PWM. У меня было 5 лежащих, и я подумал, что мои тоже могут попробовать. Значения частоты можно регулировать от 125 Гц до 8 МГц, а также можно изменять рабочий цикл. В схеме используется режим 10 PWM с коррекцией фазы на таймере 1 OCR1A (вывод 9) и ICR1 (вывод 10). Чтобы понять это, потребовалась некоторая отладка, и у меня есть портативный осциллограф. Это значительно упрощает просмотр частот и рабочих циклов, при этом не требуется никаких предположений. Вот ссылка:Осциллограф.

Я настоятельно рекомендую вам поискать техническое описание вашего вентилятора, так как контрольный штифт в моем случае был желтым (который обычно называется тахометрическим проводом). Не забудьте также найти приемлемый частотный диапазон (ИЛИ " ЦЕНТРАЛЬНАЯ ЧАСТОТА ") для выбранного вентилятора. Возможно, вам придется изменить кодовую частоту, чтобы она соответствовала вашим потребностям. Наконец, вам понадобится хороший блок питания (мой - это преобразованный блок питания ATX из старого ПК).

ПРИМЕЧАНИЕ. Я попытался использовать другой таймер и управлять двумя вентиляторами независимо. Не работает. Причина этого в том, что разрешение второго таймера ниже (16 бит против 8 бит). Это означает, что шаги в регулировке частоты и коэффициента заполнения зашумлены, а формы сигналов все больше и больше деформируются. Это также не так просто при вводе значений.

Код

  • Код
Код Arduino
Загрузите этот файл и запустите его в среде Arduino IDE.
 const byte OC1A_PIN =9; const byte OC1B_PIN =10; const word PWM_FREQ_HZ =25000; // Отрегулируйте это значение, чтобы настроить частоту (Частота в Гц!) (Установить в настоящее время на 25 кГц) const word TCNT1_TOP =16000000 / (2 * PWM_FREQ_HZ); void setup () {pinMode (OC1A_PIN, OUTPUT); // Очистить регистры управления и счетчика Timer1 TCCR1A =0; TCCR1B =0; TCNT1 =0; // Установка конфигурации Таймера1 // COM1A (1:0) =0b10 (Выход A очищает возрастание / устанавливает падение) // COM1B (1:0) =0b00 (Нормальный режим работы выхода B) // WGM (13:10) =0b1010 (Фаза правильная ШИМ) // ICNC1 =0b0 (подавитель шума захвата входа отключен) // ICES1 =0b0 (выбор фронта захвата входа отключен) // CS (12:10) =0b001 (выбор входного сигнала =clock / 1) TCCR1A | =(1 < 

Схема


Производственный процесс

  1. Затемнение света с ШИМ с помощью кнопки
  2. Включение Alexa Control для потолочного вентилятора
  3. Часы Arduino с исламским временем молитв
  4. Управление монетоприемником с помощью Arduino
  5. Arduino с Bluetooth для управления светодиодом!
  6. Arduino Nano:управление двумя шаговыми двигателями с помощью джойстика
  7. Отображение изображения на ЖК-экране TFT с помощью Arduino UNO!
  8. Управление светодиодной матрицей с помощью Arduino Uno
  9. Светодиодный куб 4x4x4 с Arduino Uno и 1sheeld
  10. ThimbleKrox - управление мышью пальцами