Как подключить вентилятор к ардуино
По сути, Arduino - это радиоконструктор. Основная плата - ядро радиоконструктора помимо микроконтроллера содержит стабилизатор питания, позволяющий запитывать плату от различных источников питания, и USB интерфейс, позволяющий подключить плату (и запитать) непосредственно к компьютеру для загрузки кода без использования кучи разнообразн.
По сути, Arduino - это радиоконструктор. Основная плата - ядро радиоконструктора помимо микроконтроллера содержит стабилизатор питания, позволяющий запитывать плату от различных источников питания, и USB интерфейс, позволяющий подключить плату (и запитать) непосредственно к компьютеру для загрузки кода без использования кучи разнообразнейших программаторов и для двухстороннего обмена информацией.
Вообще, отцам основателям проекта стоит поставить памятник при ещё жизни, настолько простой и привлекательной стала робототехника благодаря их усилиям и усилиям многих энтузиастов по всему миру. Уже выпускаются десятки клонов этой платформы (вот что open-source животворящий делает!). Seeeduino, Iteaduino, Freaduino, DFRduino. "тысячи их". Одни полностью копируют исходный Arduino, другие содержат приятные "плюшки" в виде модулей беспроводной связи, дополнительных выводов, USB hub, SD-card слоты и т.д.
Помимо самих плат предлагается обилие всевозможных плат расширения, датчиков, и исполнительных механизмов. Причём конструкция продумывается таким образом, чтобы по максимуму избавить конструктора от необходимости общения с паяльником. Но ведь паяльник - лучший друг настоящего оверклокера? Значит, сам Бог велел нам повнимательней посмотреть на эту заморскую диковину. И вот почему.
Я обратил внимание на платформу Arduino после того как пытался выбрать себе реобас в новую систему. Так как планировалось, что система будет работать с некоторым разгоном, охлаждение должно было быть достаточно эффективным, но рёв взлетающего самолёта посреди ночи явно разбудит домочадцев. Можно было бы найти какой-то компромис, но все карты спутали производители процессоров внедрившие динамическое управление тактовой частотой (читай - тепловыделением). Достичь компромиса шум-надёжность с помощью классического пассивного реобаса в новых условиях было уже невозможно. Всевозможные активные реобасы либо обладали весьма скромным функционалом, либо стоили как самолёт и/или их приобретение было весьма затруднительно по причине отсутствия таковых на отечественном рынке. Но даже у систем за большие деньги функционал на мой перфекционистский взгляд недостаточно гибок. Последние надежды на интеллектуальное управление режимом системой охлаждения разбились о Asus Fan Xpert. Количество каналов управления по температуре на Asus Rampage IV Formula оказалось равно всего 2-м, а управление каналом (температура-обороты) всего по 2-м точкам (линейно) - не самое элегантное решение.
Updated. У платы Asus Rampage IV Extreme так же всего два канала, но управляются они уже по трём точкам - прямо таки неслыханная щедрость со стороны Asus!
Таким образом, мысль получить за относительно скромные деньги стопроцентно настраиваемую легкомасштабируемую модульную систему, показалась весьма заманчивой. В этой серии статей я постараюсь провести читателя от первых шагов знакомства с Arduino до построения собственного убер-реобаса [с блэкджеком и шлюхами].
Итак, приступим. Для начала определимся что нам потребуется по минимуму для опытов и построения реобаса.
Самый минимум - собственно плата Arduino, USB кабель и немного провода (в изоляции, естественно).
Arduino Nano (цена около 800р.)
Arduino Uno (цена 800-900р.)
Arduino Mega 128/256 (цена 1100-1500р.)
Есть ещё чипы (вообще без платы) с прошитым Arduino-загрузчиком, но они более подходят только для реализации уже отлаженных решений, т.к. для работы с ней помимо макетной "беспаечной" платы (bredboard) потребуется плата адаптер или горсть резисторов конденсаторы и разъёмы. Не очень-то подходит для начального уровня.
Arduino Nano для удобства тоже требует breadboard, но всё необходимое для подключения по USB на ней уже распаяно. Так что дешевизна этого и одночипового вариантов мнимая.
По большому счёту эти платы отличаются только количеством выводов и программа написанная для младшей модели запустится и на старшей. Наоборот тоже, при условии, что используете то же самое количество выводов платы. В большинстве случаев вполне достаточно Arduino Uno (или её клона). Но если вы задумаете построить убер-реобас, то лечше сразу взять Arduino Mega, т.к. только подключение символьного ЖК дисплея отнимет у вас сразу шесть цифровых выходов. Останется всего 7, из них надо будет хотя бы один отдать под кнопочное управление, ещё 4 займёт плата расширения с SD-карточкой (для логирования и хранения калибровок датчиков). Таким образом с Uno либо придётся искать компромисы, отказавшись от ЖК индикатора и выводя информацию только на монитор через USB-подключение, либо расширять функционал объединяя несколько плат Ардуино или же за счёт применения всевозможных регистров-контроллеров шины (что хоть и приемлемо для проффи но всё равно муторно). Плата Arduino Mega содержит 32 дополнительных цифровых ввода-вывода, что сильно упростит подключение всевозможной переферии.
Теперь о самих выводах.
В первом приближении их можно условно разделить на три группы:
- аналоговые входы (A0, A1, A3. )
- цифровые вход/выходы (D0, D1, D2. )
- цифровые вход/выходы с возможностью ШИМ (PWM) вывода. (PWM D3, PWM D5. )
Дабы не утомлять читателя, назначение и особенности работы выводов буду давать по мере необходимости. Нетерпеливые могут найти информацию в Сети самостоятельно. Мы же перейдём непосредственно к первому эксперименту.
Все начинающие работать с Arduino первым делом начинают подключать светодиоды и баловаться с их включением-выключением. Но мы же не какие-то там моддеры! Хотя и для управления подсветкой Ардуино тоже более чем подойдёт, но начнём мы с подключения PWM (4-х контактного вентилятора). Это даже ещё проще чем светодиод.
Вот принципиальная схема:
Здесь и далее обозначения выводов Arduino полностью совпадает с нанесёнными на плату, см. увеличенные фотографии выше, или wiki страницы приобретённых Вами плат Arduino. (У меня, например такая)
После сборки схемы в програмную оболочку Arduino загрузим код:
// начало
// глобальные переменные
int fanCtrlPin = 3; // выходы на драйвер вентилятора D3
// установка частоты PWM на 32кГц (примерно)
//для нужного типа платы убрать "//" в начале строки
// это для плат типа Arduino Nano и Uno:
// TCCR2B = (TCCR2B & 0xF8) | 0x01; // timer 2 (pins 11,3)
// это для плат типа Arduino Mega:
В ассортименте многих производителей систем охлаждения есть вентиляторы с адресной подсветкой (ARGB, также иногда именуемая D-RGB), в обязательном порядке требующие наличия специального контроллера. Функционал контроллера в исчерпывающем количестве случаев ограничивается возможностью коррекции скорости вращения и переключением режимов работы подсветки, которые от компании к компании разнятся крайне слабо, а в большинстве случаев и вовсе идентичны. Глоток свежего воздуха в поднадоевшую ARGB-тему решила внести компания Gelid, выпустив уникальный контроллер Codi6 на базе Arduino UNO.
Контроллер Gelid Codi6
Gelid Codi6 поставляется в маленькой коробке с габаритами чуть крупнее, чем пачка сигарет. С лицевой стороны размещено схематическое изображение контроллера с отмеченными основными разъёмами и портами.
С оборота приведено более расширенное описание и некоторые технические параметры. Ключевое – Codi6 базируется на платформе Arduino UNO, что и обеспечивает огромные возможности настройки.
Внутри коробки содержится немногочисленный комплект. Помимо самого контроллера, он включает:
Производитель предусмотрел два варианта закрепления Codi6. Можно либо воспользоваться винтами и магнитами для фиксации к стенке корпуса, либо приклеить на дно устройства двухсторонний скотч. Правда, место размещения будет всё равно резко ограничено, ведь длинна USB-кабеля едва достигает 200 мм.
Для Arduino UNO выпускается множество так называемых Arduino Shield. Это платы, которые просто вставляется в коннекторы самой Arduino, и имеют самый различный функционал. Кратко говоря, Gelid Codi6 – это комплект из Arduino UNO, Shield от Gelid, акрилового корпуса и кабелей.
На днище контроллера никаких примечательных элементов нет.
В целом, для базового подключения будет достаточно только USB-порта. Его мощности достаточно для программирования контроллера, но для работы вентиляторов при приличных оборотах и работы подсветки потребуется дополнительное питание. На один канал подсветки контроллер способен отдавать до немалых 4 А тока (20 Вт мощности).
Естественно, к Codi6 можно подключить любые вентиляторы. Сторонним пропеллерам в любом случае можно будет задавать скорость вращения (при условии коннектора 4-pin PWM), но подсветка будет работать только у вентиляторов с ARGB-подсветкой (3-pin разъём ARGB).
Дополнительные датчики
Дальномер HC-SRO4 позволяет засекать движения на расстоянии до 4 метров с поразительной точностью до 5 мм. Благодаря ему функционал расширяется возможностью ответной реакции на появление препятствия. К примеру, при входе в комнату подсветка в компьютере может включаться, или при взмахе рукой будут переключаться режимы работы. Иными словами, HC-SRO4 позволяет осуществлять управление жестами. Наличие человека за компьютером HC-SRO4 распознаёт с переменным успехом, но на взмахи руками откликается адекватно.
Как на мой взгляд куда больше расширяет функционал звуковой датчик. Это компактная плата с микрофоном, усилителем и подстрочным резистором. Можно запрограммировать смену скорости вращения крыльчатки или режима работы подсветки на хлопки или свист. Самое банальное, но одновременно с тем прикольное – подсветка вентиляторов в режиме светомузыки.
Подключение дополнительных датчиков проблем не вызовет. Как на контроллере, так и на датчиках, все контакты для удобства подписаны.
Вентиляторы Gelid Radiant-D
Иметь в ассортименте продвинутый контроллер и при этом не иметь вентиляторов с ARGB-подсветкой – непочетно. Для Codi6 компания предлагает 120-мм пропеллеры Radiant-D.
В Gelid Radiant-D первоочерёдное внимание было уделено именно подсветке, а не технической стороне. Подсветка обеспечивается девятью светодиодами, каждым из которых можно управлять, на то подсветка и называется адресной, что выливается в красивейшие эффекты. Диоды сосредоточены вокруг ротора, поэтому он получился столь массивным (53 мм против ~40 мм обычно).
Полупрозрачная 7-лопастная крыльчатка выполнена с геометрическими изысками. Производитель именует эту технологию High Precision Shark-Tooth Blade. Теоретически акуловидные зазубрины на кромках препятствует образованию завихрений, благодаря чему обеспечивается высокое статическое давление.
Radiant-D базируются на надёжном подшипнике двойного качения с заявленным сроком наработки в 100 тыс. часов (11,4 года), что весьма немалый срок для такого подшипника. Но Gelid подкрепляет уверенность 5-летним гарантийным сроком. В характеристиках значится скорость вращения в диапазоне 500-2000 об/мин, производительность до 131 м 3 /ч, что для 120-мм крыльчатки серьёзное заявление, а также уровень шума до 40,4 дБА.
В заявленное количество прокачиваемых кубов воздуха в час охотно верится. Дуют они действительно очень прилично.
В плане нюансов исполнения Gelid Radiant-D представляют собой самые обычные вентиляторы. Простая цельнопластиковая рамка без изысков, кабель без оплётки. Жаль, что не позаботились даже о антивибрационных проставках по углам.
Из корпуса выходят разом два длинных (500 мм) кабеля: 4-контактный с PWM-разъёмом для ротора крыльчатки, и 3-pin для ARGB-подсветки. Отмечу, что 3-pin разъём подсветки нельзя подключать к 4-pin разъёму подсветки, поскольку первый рассчитан на напряжение 5 В, а второй на 12 В. Здесь производителям не плохо было бы позаботиться о защите от дурака. Длина кабеля однозначно радует.
Что касается подсветки, как и у всех ARGB-вентиляторов она смотрится умопомрачительно.
Процесс подключения и настройки
В комплекте к Gelid Codi6 отсутствует какая-либо техническая документация бумажного вида. Подробное руководство по подключению и первоначальной настройке компания разместила на официальной странице контроллера.
Сперва необходимо скачать драйвер СH340 USB. Отмечу, что в моём случае по окончании установки выдавалась ошибка, но несмотря на её появление Codi6 в системе определился.
Далее в Диспетчере устройств Windows нужно в разделе “Порты (COM и LTP)” нужно найти устройство USB-SERIAL CH340 и запомнить номер COM-порта. Вероятно, он будет там один.
Для Gelid Codi6 есть две наиболее подходящие библиотеки для работы с подсветкой – FastLED и AdafruitNeoPixel. Функционал одинаков, различия меж ними заключаются лишь немного в синтаксисе. Для установки, к примеру, FastLED, в окне Arduino IDE нажимаем “Скетч>>Подключить библиотеку>> Управление библиотеками” (или Ctrl+Shift+I). В окне поиска вводим FastLED, выбираем версию, жмём установка. Для программирования кнопки пригодится библиотека NewPing.
Готово! Вы великолепны! На данном этапе Gelid Codi6 полностью подключен и готов к работе. На странице контроллера Gelid разместила несколько примеров кода для различных режимов работы подсветки и не только.
За, против и вердикт
Лежащая в основе платформа Arduino допускает подключение многих дополнительных датчиков: вибро-, влаго-, свето- и целого спектра других. Датчиков натурально всего, что разительно расширяет функционал. Впрочем, распинаться про общие достоинства платформы Arduino не имеет никакого смысла. Arduino может почти всё.
Существенный плюс Codi6 кроется в ценнике. Он оценивается в $29, что сопоставимо контроллерами от других компаний, но возможностей обеспечивает кратно больше.
К недостаткам по сравнению с другими контроллерами можно отнести полуоткрытый корпус и множество проводов. Внутри готовой системы всё это аккуратно расположить будет проблематично. Во-вторых, он не допускает управления скоростью вращения вентиляторов по отдельности.
В конечном счёте Gelid Codi6 можно рекомендовать лишь тем, кто действительно готов настолько заморочиться, чтобы сделать свою систему уникальной, и чтобы подсветка несла не только декоративную функцию, но и информативную.
В ассортименте многих производителей систем охлаждения есть вентиляторы с адресной подсветкой (ARGB, также иногда именуемая D-RGB), в обязательном порядке требующие наличия специального контроллера. Функционал контроллера в исчерпывающем количестве случаев ограничивается возможностью коррекции скорости вращения и переключением режимов работы подсветки, которые от компании к компании разнятся крайне слабо, а в большинстве случаев и вовсе идентичны. Глоток свежего воздуха в поднадоевшую ARGB-тему решила внести компания Gelid, выпустив уникальный контроллер Codi6 на базе Arduino UNO.
Контроллер Gelid Codi6
Gelid Codi6 поставляется в маленькой коробке с габаритами чуть крупнее, чем пачка сигарет. С лицевой стороны размещено схематическое изображение контроллера с отмеченными основными разъёмами и портами.
С оборота приведено более расширенное описание и некоторые технические параметры. Ключевое – Codi6 базируется на платформе Arduino UNO, что и обеспечивает огромные возможности настройки.
Внутри коробки содержится немногочисленный комплект. Помимо самого контроллера, он включает:
Производитель предусмотрел два варианта закрепления Codi6. Можно либо воспользоваться винтами и магнитами для фиксации к стенке корпуса, либо приклеить на дно устройства двухсторонний скотч. Правда, место размещения будет всё равно резко ограничено, ведь длинна USB-кабеля едва достигает 200 мм.
Для Arduino UNO выпускается множество так называемых Arduino Shield. Это платы, которые просто вставляется в коннекторы самой Arduino, и имеют самый различный функционал. Кратко говоря, Gelid Codi6 – это комплект из Arduino UNO, Shield от Gelid, акрилового корпуса и кабелей.
На днище контроллера никаких примечательных элементов нет.
В целом, для базового подключения будет достаточно только USB-порта. Его мощности достаточно для программирования контроллера, но для работы вентиляторов при приличных оборотах и работы подсветки потребуется дополнительное питание. На один канал подсветки контроллер способен отдавать до немалых 4 А тока (20 Вт мощности).
Естественно, к Codi6 можно подключить любые вентиляторы. Сторонним пропеллерам в любом случае можно будет задавать скорость вращения (при условии коннектора 4-pin PWM), но подсветка будет работать только у вентиляторов с ARGB-подсветкой (3-pin разъём ARGB).
Дополнительные датчики
Дальномер HC-SRO4 позволяет засекать движения на расстоянии до 4 метров с поразительной точностью до 5 мм. Благодаря ему функционал расширяется возможностью ответной реакции на появление препятствия. К примеру, при входе в комнату подсветка в компьютере может включаться, или при взмахе рукой будут переключаться режимы работы. Иными словами, HC-SRO4 позволяет осуществлять управление жестами. Наличие человека за компьютером HC-SRO4 распознаёт с переменным успехом, но на взмахи руками откликается адекватно.
Как на мой взгляд куда больше расширяет функционал звуковой датчик. Это компактная плата с микрофоном, усилителем и подстрочным резистором. Можно запрограммировать смену скорости вращения крыльчатки или режима работы подсветки на хлопки или свист. Самое банальное, но одновременно с тем прикольное – подсветка вентиляторов в режиме светомузыки.
Подключение дополнительных датчиков проблем не вызовет. Как на контроллере, так и на датчиках, все контакты для удобства подписаны.
Вентиляторы Gelid Radiant-D
Иметь в ассортименте продвинутый контроллер и при этом не иметь вентиляторов с ARGB-подсветкой – непочетно. Для Codi6 компания предлагает 120-мм пропеллеры Radiant-D.
В Gelid Radiant-D первоочерёдное внимание было уделено именно подсветке, а не технической стороне. Подсветка обеспечивается девятью светодиодами, каждым из которых можно управлять, на то подсветка и называется адресной, что выливается в красивейшие эффекты. Диоды сосредоточены вокруг ротора, поэтому он получился столь массивным (53 мм против ~40 мм обычно).
Полупрозрачная 7-лопастная крыльчатка выполнена с геометрическими изысками. Производитель именует эту технологию High Precision Shark-Tooth Blade. Теоретически акуловидные зазубрины на кромках препятствует образованию завихрений, благодаря чему обеспечивается высокое статическое давление.
Radiant-D базируются на надёжном подшипнике двойного качения с заявленным сроком наработки в 100 тыс. часов (11,4 года), что весьма немалый срок для такого подшипника. Но Gelid подкрепляет уверенность 5-летним гарантийным сроком. В характеристиках значится скорость вращения в диапазоне 500-2000 об/мин, производительность до 131 м 3 /ч, что для 120-мм крыльчатки серьёзное заявление, а также уровень шума до 40,4 дБА.
В заявленное количество прокачиваемых кубов воздуха в час охотно верится. Дуют они действительно очень прилично.
В плане нюансов исполнения Gelid Radiant-D представляют собой самые обычные вентиляторы. Простая цельнопластиковая рамка без изысков, кабель без оплётки. Жаль, что не позаботились даже о антивибрационных проставках по углам.
Из корпуса выходят разом два длинных (500 мм) кабеля: 4-контактный с PWM-разъёмом для ротора крыльчатки, и 3-pin для ARGB-подсветки. Отмечу, что 3-pin разъём подсветки нельзя подключать к 4-pin разъёму подсветки, поскольку первый рассчитан на напряжение 5 В, а второй на 12 В. Здесь производителям не плохо было бы позаботиться о защите от дурака. Длина кабеля однозначно радует.
Что касается подсветки, как и у всех ARGB-вентиляторов она смотрится умопомрачительно.
Процесс подключения и настройки
В комплекте к Gelid Codi6 отсутствует какая-либо техническая документация бумажного вида. Подробное руководство по подключению и первоначальной настройке компания разместила на официальной странице контроллера.
Сперва необходимо скачать драйвер СH340 USB. Отмечу, что в моём случае по окончании установки выдавалась ошибка, но несмотря на её появление Codi6 в системе определился.
Далее в Диспетчере устройств Windows нужно в разделе “Порты (COM и LTP)” нужно найти устройство USB-SERIAL CH340 и запомнить номер COM-порта. Вероятно, он будет там один.
Для Gelid Codi6 есть две наиболее подходящие библиотеки для работы с подсветкой – FastLED и AdafruitNeoPixel. Функционал одинаков, различия меж ними заключаются лишь немного в синтаксисе. Для установки, к примеру, FastLED, в окне Arduino IDE нажимаем “Скетч>>Подключить библиотеку>> Управление библиотеками” (или Ctrl+Shift+I). В окне поиска вводим FastLED, выбираем версию, жмём установка. Для программирования кнопки пригодится библиотека NewPing.
Готово! Вы великолепны! На данном этапе Gelid Codi6 полностью подключен и готов к работе. На странице контроллера Gelid разместила несколько примеров кода для различных режимов работы подсветки и не только.
За, против и вердикт
Лежащая в основе платформа Arduino допускает подключение многих дополнительных датчиков: вибро-, влаго-, свето- и целого спектра других. Датчиков натурально всего, что разительно расширяет функционал. Впрочем, распинаться про общие достоинства платформы Arduino не имеет никакого смысла. Arduino может почти всё.
Существенный плюс Codi6 кроется в ценнике. Он оценивается в $29, что сопоставимо контроллерами от других компаний, но возможностей обеспечивает кратно больше.
К недостаткам по сравнению с другими контроллерами можно отнести полуоткрытый корпус и множество проводов. Внутри готовой системы всё это аккуратно расположить будет проблематично. Во-вторых, он не допускает управления скоростью вращения вентиляторов по отдельности.
В конечном счёте Gelid Codi6 можно рекомендовать лишь тем, кто действительно готов настолько заморочиться, чтобы сделать свою систему уникальной, и чтобы подсветка несла не только декоративную функцию, но и информативную.
Доделываю самодельный контроллер светодиодного светильника.
Застопорился на вопросе подключения 4-pin pwm вентилятора к
платформе arduino (у меня mega). Хочу чтобы был конроль
оборотов по показаниям термодатчика. Со всем разобрался,
осталось правильно подключить вентилятор. Выручайте.
Нужна схема подключения вентилятора, желательно, по-простому
(я совсем начинающий).
Вот такие нашел
Спасибо! Буду разбираться.
Как разберешься, нам Мы ведь тоже начинающие.
Вроде как разобрался. Может кому понадобится.
А вот и сама схема подключения, нарисовал как смог в паинте)
Тогда уже все сюда. до кучи
прошу помощи вроде по теме, прикрутил к ардуино mega вентиляторы на охлаждение воды и радиатора, но не могу ни как разобраться с кодом, вентиляторы с PWM, может есть у кого написанный код для сего модуля.
В гугле забанили? Или лень?
Так зачем мучатся, купите готовый термоконтроллер.
Кстати, если вентиляторы 3-х питовые, то там всё чуть сложнее, если ШИМить напряжение питания, то вентилятор будет шуметь.
Я у себя для решения этой проблемы перед вентиляторами поставил LC фильтра из дросселя 5mH и кондера 2000мкФ
Тут конечно желательно частоту ШИМ поднять максимально тогда.
Второй вариант- подключаем всё через транзистор дарлингтона, а токозадающий сигнал снимаем с аналоговой ноги ардуино(analogWrite) через LC фильтр и токозадающий резистор(считаем через коэффициэнт усиление транзистора)
Читайте также: