Управление несколькими вентиляторами с помощью Arduino Uno

Я новичок в области Arduino. Хотя у меня есть вопрос относительно подключения нескольких вентиляторов к 1 выводу PWM Arduino. Цель состоит в том, чтобы подключить от 8 до 16 вентиляторов к одному контакту ШИМ-разъема Arduino и управлять их скоростью отдельно с помощью потенциометра. Как я видел, этого можно добиться с помощью транзисторов. Вопрос в том, есть ли какие-либо ограничения на количество вентиляторов, которые я могу подключить и контролировать отдельно с помощью транзисторов? Могу ли я, например, использовать 16 транзисторов и управлять 16 вентиляторами отдельно?

Заранее благодарим за ответы

, 👍0

Обсуждение

Требуется дополнительная информация о том, «можно ли добиться этого с помощью транзисторов». Более того, я не думаю, что мультиплексирование ШИМ — хорошая идея. См. ответы на этом https://arduinoprosto.ru/q/31099/pwm-multiplexing-on-arduino-nano., @dhimaspw

Вам нужно 16 вентиляторов на одном выводе ШИМ, так? Каково назначение вывода ШИМ?, @Nick Gammon

Идея состоит в том, что цель состоит в том, чтобы подключить от 6 до 16 вентиляторов (в зависимости от ситуации, я не знаю, сколько на данный момент), и я хочу управлять ими отдельно с помощью потенциометра. Идея состоит в том, что они должны управляться отдельно, как, например, FAN1 — 100% (максимальная частота вращения). ФАН2 - 70% И так далее.. Теперь вы понимаете цель? Каким будет лучшее решение в этой ситуации? Так же подключу экран 128х64 и 4 кнопки для навигации по меню, @dmxyler


2 ответа


1

Один вывод ШИМ может управлять только одним вентилятором (или одной группой вентиляторов). Вы не можете иметь один вывод ШИМ, выводящий разные значения на разные вентиляторы, поскольку один вывод может иметь только одно значение. (Да, есть способы мультиплексировать его посредством разделения времени, но это и сложно, и не очень хорошая идея).

Вам понадобится один PWM на каждый вентилятор, если вы хотите индивидуально контролировать скорость каждого вентилятора. Это означает максимум 6 вентиляторов на Arduino.

Чтобы добиться большего, вам придется либо использовать программный ШИМ (который может вызвать дрожание, что может не быть проблемой для простых вентиляторов), либо внешний ШИМ- контроллер. Или добавьте больше Arduino.

Если все, что вам нужно, это потенциометрическое управление вентиляторами, вы можете сделать это без использования Arduino. Пара операционных усилителей (это может быть одна микросхема с двумя операционными усилителями), один из которых действует как генератор треугольных волн, а другой как компаратор, будет генерировать для вас ШИМ. Вот пример:

Изображение ElectroBOOM (посмотрите как-нибудь его видео, они веселые)

,

Могу ли я объединить несколько Arduino Unos вместе? например, подключить экран к одному Arduino Uno и кнопкам и использовать 2–3 Arduino для управления вентиляторами, но отображать информацию на первом Arduino? Можно ли использовать Arduino в качестве расширителя? Если да, то как?, @dmxyler

@dmxyler Конечно. Вам просто нужно заставить их общаться друг с другом. I2C и последовательный порт — распространенные способы — существует множество онлайн-ресурсов., @Majenko

ок, спасибо за совет. Попытаюсь. Хорошего дня :), @dmxyler


1

Одним из вариантов управления несколькими выходами ШИМ является использование драйвера ШИМ I2C (например, PCA9685). Он имеет 16 выходов ШИМ и управляется с помощью Arduino с помощью I2C, для которого требуется всего 2 контакта на Arduino.

Руководство: https://learn.adafruit.com/16-channel-pwm-servo-driver

,