Управление нагрузкой - тема интересная и имеет широкое применение. Сегодня рассмотрим 2 варианта управления модулем 16 реле:
С помощью Arduino и матричной клавиатуры.
С компьютера. Для этого напишем программу на Python.
Как вы понимаете, к реле можно подключить разнообразную нагрузку: светильник, лампочку, чайник, фен, утюг, нагреватели и т.д. Кроме подключения одного потребителя, можно организовать управление освещением по зонам, нагрев, полив и пр.
Чтобы управлять модулем 16 реле с компьютера, достаточно модуля RoboIntellect controller 001. Купить RoboIntellect controller 001 можно на OZON. Про данный модуль на канале у меня есть отдельное видео.
Рекомендую посмотреть его, после чего приступать к данному проекту.
Также планирую сделать управление 16 реле с использованием Arduino и матричной клавиатуры. Про матричную клавиатуру у меня есть отдельный урок, ознакомиться с которым можно тут.
Подключить 16 реле и матричную клавиатуру в Arduino UNO или Arduino NANO не получится, недостаточно пинов для подключения. Нам нужно 16 для реле и 8 для подключения матричной клавиатуры и того 24 пина. Можно использовать Arduino MEGA. Но если нет данной платы под рукой, воспользуемся модулем RoboIntellect controller 001, который можно получить через 7-8 дней после заказа.
С набором электроники определились. Можно приступить к сборке и программированию.
Подключение RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.
Давайте подключим RoboIntellect controller 001, матричную клавиатуру 4х4 к Arduino и проверим, чтобы всё работало как нужно. А благодаря светодиодам по каждому каналу управления на плате RoboIntellect controller позволит визуально определить, что всё сделано правильно.
Схема подключения RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.
Данная схема подключения позволяет управлять 16 реле с использованием матричной клавиатуры с 16 кнопками. Это даёт возможность назначить для каждой реле свою кнопку для управления.
Управление 16 реле с помощью Arduino и матричной клавиатуры.
В связи с тем, что реле низкоуровневые, для включения нужно подать сигнал низкого уровня GND. Поэтому светодиоды на модуле RoboIntellect выключаются для того, чтобы включалось реле на плате. Эту особенность нужно учесть при программировании, однако на электрическую схему это никак не повлияет.
Схема подключения модуля 16 реле.
Программа Arduino управления 16 реле с помощью матричной клавиатуры.
Первым делом нужно установить необходимые библиотеки. Скачать их можно внизу статьи в разделе «Файлы для скачивания»Если у вас модуль клавиатуры такой же, как у меня, то менять в коде ничего не нужно. Но я всё же вкратце рассмотрю основные моменты в коде.
Для работы с матричной клавиатурой нужно установить количество рядов и строк клавиатуры, указать массив символов на кнопках матричной клавиатуры.
Далее указываем пины подключения клавиатуры. Больше ничего настраивать не нужно, если, конечно, модуль клавиатуры у вас не отличается от моего. Если у вас модуль большего или меньшего размера, то необходимо подправить инициализацию клавиатуры, а также условия отвечающие за определения нажатия клавиши.
В функцию releOn(1) отправляем номер реле, состояние которого нужно изменить.
Сейчас можно приступить к управлению реле. При нажатии на клавишу матричной клавиатуры включается или выключается соответствующее реле.
При желании данный пример можно расширить, подключив светодиоды для индикации состояния реле или подключить OLED - дисплей и выводить состояния реле на него. Вариантов доработки и применения данного проекта очень большое.
Управление 16 реле с компьютера.
Управлять реле с компьютера без микроконтроллера нам поможет RoboIntellect controller 001, на борту которого распаян адаптер USB to I2C.
Для того чтобы приступить к управлению платой с ПК, нужно установить SDK разработчика, которую можно скачать с сайта.
Про данные настройки я рассказывал в видео: «Изучаем Python, программируя робот - манипулятор».
Затем скачайте пример кода на Python внизу статьи.
Для того чтобы воспользоваться программой, её необходимо извлечь из архива. Откройте папку с программой и запустите в ней командную строку. Для запуска скрипта на Python пишем следующую команду: python setBit.py
Далее необходимо ввести модель i2c адаптера (ch341/cp2112). В моём случае это «ch341».
Программа произведёт инициализацию устройства.
После нужно ввести команду (on – для включения реле,off – для выключения) и номер порта (1 - 16), к которому подключено реле.Но так как у меня модуль низкоуровневого реле, включение и выключение происходит в обратном порядке.
Нажатием клавиши Enter запускаем выполнение команды. Команды успешно выполняются.
Для выхода из программы введите Q и нажмите Enter. Также выйти из программ можно с помощью сочетания клавиш Ctrl + C.
Исходный пример на Python можно дополнить, например, сделать графический интерфейс управления реле. Область применения ограничиваться только вашей фантазией. Удачных экспериментов!
Вывод.
Исходя из данного проекта, можно сделать следующий вывод: реализовать управление реле не так и сложно. Но если нам нужно сделать управление большим количеством реле, в этом отлично поможет RoboIntellect controller 001. Его плюсом является тот фактор, что данный модуль можно использовать как в Arduino проекте, так и самостоятельно для управления с реле или другими устройствами с компьютера.
Понравился проект
Управление 16 реле с
компьютера? Не забудь поделиться с друзьями в соц. сетях.
Комментарии