Управление несколькими вентиляторами с помощью Arduino Uno
Я новичок в области Arduino. Хотя у меня есть вопрос относительно подключения нескольких вентиляторов к 1 выводу PWM Arduino. Цель состоит в том, чтобы подключить от 8 до 16 вентиляторов к одному контакту ШИМ-разъема Arduino и управлять их скоростью отдельно с помощью потенциометра. Как я видел, этого можно добиться с помощью транзисторов. Вопрос в том, есть ли какие-либо ограничения на количество вентиляторов, которые я могу подключить и контролировать отдельно с помощью транзисторов? Могу ли я, например, использовать 16 транзисторов и управлять 16 вентиляторами отдельно?
Заранее благодарим за ответы
@dmxyler, 👍0
Обсуждение2 ответа
Один вывод ШИМ может управлять только одним вентилятором (или одной группой вентиляторов). Вы не можете иметь один вывод ШИМ, выводящий разные значения на разные вентиляторы, поскольку один вывод может иметь только одно значение. (Да, есть способы мультиплексировать его посредством разделения времени, но это и сложно, и не очень хорошая идея).
Вам понадобится один PWM на каждый вентилятор, если вы хотите индивидуально контролировать скорость каждого вентилятора. Это означает максимум 6 вентиляторов на Arduino.
Чтобы добиться большего, вам придется либо использовать программный ШИМ (который может вызвать дрожание, что может не быть проблемой для простых вентиляторов), либо внешний ШИМ- контроллер. Или добавьте больше Arduino.
Если все, что вам нужно, это потенциометрическое управление вентиляторами, вы можете сделать это без использования Arduino. Пара операционных усилителей (это может быть одна микросхема с двумя операционными усилителями), один из которых действует как генератор треугольных волн, а другой как компаратор, будет генерировать для вас ШИМ. Вот пример:
Изображение ElectroBOOM (посмотрите как-нибудь его видео, они веселые)
Могу ли я объединить несколько Arduino Unos вместе? например, подключить экран к одному Arduino Uno и кнопкам и использовать 2–3 Arduino для управления вентиляторами, но отображать информацию на первом Arduino? Можно ли использовать Arduino в качестве расширителя? Если да, то как?, @dmxyler
@dmxyler Конечно. Вам просто нужно заставить их общаться друг с другом. I2C и последовательный порт — распространенные способы — существует множество онлайн-ресурсов., @Majenko
ок, спасибо за совет. Попытаюсь. Хорошего дня :), @dmxyler
Одним из вариантов управления несколькими выходами ШИМ является использование драйвера ШИМ I2C (например, PCA9685). Он имеет 16 выходов ШИМ и управляется с помощью Arduino с помощью I2C, для которого требуется всего 2 контакта на Arduino.
Руководство: https://learn.adafruit.com/16-channel-pwm-servo-driver
- Как устранить шум от вентилятора 12 В с ШИМ-управлением на низкой скорости
- Транзисторный усилитель для управления динамиком с использованием ШИМ Arduino
- Использовать Arduino Nano V3 для программирования другого Arduino (Pro Mini)?
- Уменьшить яркость светодиода с помощью NPN-транзистора
- Как прочитать значение PIN PWM-выхода?
- ШИМ на выводах не ШИМ
- Переключение соленоида С помощью выхода Arduino 5V?
- Невозможно установить рабочий цикл на 0% с помощью пользовательского PWM
Требуется дополнительная информация о том, «можно ли добиться этого с помощью транзисторов». Более того, я не думаю, что мультиплексирование ШИМ — хорошая идея. См. ответы на этом https://arduinoprosto.ru/q/31099/pwm-multiplexing-on-arduino-nano., @dhimaspw
Вам нужно 16 вентиляторов на одном выводе ШИМ, так? Каково назначение вывода ШИМ?, @Nick Gammon
Идея состоит в том, что цель состоит в том, чтобы подключить от 6 до 16 вентиляторов (в зависимости от ситуации, я не знаю, сколько на данный момент), и я хочу управлять ими отдельно с помощью потенциометра. Идея состоит в том, что они должны управляться отдельно, как, например, FAN1 — 100% (максимальная частота вращения). ФАН2 - 70% И так далее.. Теперь вы понимаете цель? Каким будет лучшее решение в этой ситуации? Так же подключу экран 128х64 и 4 кнопки для навигации по меню, @dmxyler