Управление 16 реле с компьютера

Управление нагрузкой - тема интересная и имеет широкое применение. Сегодня рассмотрим 2 варианта управления модулем 16 реле:

  • С помощью Arduino и матричной клавиатуры.
  • С компьютера. Для этого напишем программу на Python.


Как вы понимаете, к реле можно подключить разнообразную нагрузку: светильник, лампочку, чайник, фен, утюг, нагреватели и т.д. Кроме подключения одного потребителя, можно организовать управление освещением по зонам, нагрев, полив и пр.

В предыдущей статье я рассматривал управление 16 реле с сенсорного дисплея Nextion.

Что понадобится для проекта управления 16 реле.

Чтобы управлять модулем 16 реле с компьютера, достаточно модуля RoboIntellect controller 001. Купить RoboIntellect controller 001 можно на OZON. Про данный модуль на канале у меня есть отдельное видео.


Рекомендую посмотреть его, после чего приступать к данному проекту.

Также планирую сделать управление 16 реле с использованием Arduino и матричной клавиатуры. Про матричную клавиатуру у меня есть отдельный урок, ознакомиться с которым можно тут.

Также планирую сделать управление 16 реле с использованием Arduino и матричной клавиатуры.

Подключить 16 реле и матричную клавиатуру в Arduino UNO или Arduino NANO не получится, недостаточно пинов для подключения. Нам нужно 16 для реле и 8 для подключения матричной клавиатуры и того 24 пина. Можно использовать Arduino MEGA. Но если нет данной платы под рукой, воспользуемся модулем RoboIntellect controller 001, который можно получить через 7-8 дней после заказа.

Подключить 16 реле и матричную клавиатуру в Arduino UNO или Arduino NANO не получится

С набором электроники определились. Можно приступить к сборке и программированию.

Подключение RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.

Давайте подключим RoboIntellect controller 001, матричную клавиатуру 4х4 к Arduino и проверим, чтобы всё работало как нужно. А благодаря светодиодам по каждому каналу управления на плате RoboIntellect controller позволит визуально определить, что всё сделано правильно.

Подключение RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.

Схема подключения RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.

Схема подключения RoboIntellect controller 001, матричной клавиатуры 4х4 к Arduino.

Данная схема подключения позволяет управлять 16 реле с использованием матричной клавиатуры с 16 кнопками. Это даёт возможность назначить для каждой реле свою кнопку для управления.

Управление 16 реле с помощью Arduino и матричной клавиатуры.

В связи с тем, что реле низкоуровневые, для включения нужно подать сигнал низкого уровня GND. Поэтому светодиоды на модуле RoboIntellect выключаются для того, чтобы включалось реле на плате. Эту особенность нужно учесть при программировании, однако на электрическую схему это никак не повлияет.

Управление 16 реле с помощью Arduino и матричной клавиатуры.

Схема подключения модуля 16 реле.

Схема подключения модуля 16 реле.

Программа Arduino управления 16 реле с помощью матричной клавиатуры.

Первым делом нужно установить необходимые библиотеки. Скачать их можно внизу статьи в разделе «Файлы для скачивания»Программа Arduino управления 16 реле с помощью матричной клавиатуры. Если у вас модуль клавиатуры такой же, как у меня, то менять в коде ничего не нужно. Но я всё же вкратце рассмотрю основные моменты в коде.

Для работы с матричной клавиатурой нужно установить количество рядов и строк клавиатуры, указать массив символов на кнопках матричной клавиатуры.

Для работы с матричной клавиатурой нужно установить количество рядов и строк клавиатуры

Далее указываем пины подключения клавиатуры. Больше ничего настраивать не нужно, если, конечно, модуль клавиатуры у вас не отличается от моего. Если у вас модуль большего или меньшего размера, то необходимо подправить инициализацию клавиатуры, а также условия отвечающие за определения нажатия клавиши.

В функцию releOn(1) отправляем номер реле, состояние которого нужно изменить.

В функцию releOn(1) отправляем номер реле, состояние которого нужно изменить.

Сейчас можно приступить к управлению реле. При нажатии на клавишу матричной клавиатуры включается или выключается соответствующее реле.

Сейчас можно приступить к управлению реле.

При желании данный пример можно расширить, подключив светодиоды для индикации состояния реле или подключить OLED - дисплей и выводить состояния реле на него. Вариантов доработки и применения данного проекта очень большое.

Управление 16 реле с компьютера.

Управлять реле с компьютера без микроконтроллера нам поможет RoboIntellect controller 001, на борту которого распаян адаптер USB to I2C.

 RoboIntellect controller 001, на борту которого распаян адаптер USB to I2C.

Для того чтобы приступить к управлению платой с ПК, нужно установить SDK разработчика, которую можно скачать с сайта.

Для того чтобы приступить к управлению платой с ПК, нужно установить SDK разработчика, которую можно скачать с сайта.

Также нужно произвести дополнительные настройки, о которых написано в инструкции, которую можно скачать также с сайта разработчика или внизу статьи в разделе «Файлы для скачивания».

Про данные настройки я рассказывал в видео: «Изучаем Python, программируя робот - манипулятор».


Затем скачайте пример кода на Python внизу статьи.

Для того чтобы воспользоваться программой, её необходимо извлечь из архива. Откройте папку с программой и запустите в ней командную строку. Для запуска скрипта на Python пишем следующую команду: python setBit.py

Python пишем следующую команду: python setBit.py

Далее необходимо ввести модель i2c адаптера (ch341/cp2112). В моём случае это «ch341».

Далее необходимо ввести модель i2c адаптера (ch341/cp2112). В моём случае это «ch341».

Программа произведёт инициализацию устройства.

Программа произведёт инициализацию устройства.

После нужно ввести команду (on – для включения реле, off – для выключения) и номер порта (1 - 16), к которому подключено реле.Но так как у меня модуль низкоуровневого реле, включение и выключение происходит в обратном порядке.

После нужно ввести команду (on – для включения реле, off – для выключения) и номер порта (1 - 16)

Нажатием клавиши Enter запускаем выполнение команды. Команды успешно выполняются.

Для выхода из программы введите Q и нажмите Enter. Также выйти из программ можно с помощью сочетания клавиш Ctrl + C.

Для выхода из программы введите Q и нажмите Enter. Также выйти из программ можно с помощью сочетания клавиш Ctrl + C.

Исходный пример на Python можно дополнить, например, сделать графический интерфейс управления реле.

Исходный пример на Python можно дополнить, например, сделать графический интерфейс управления реле. Область применения ограничиваться только вашей фантазией. Удачных экспериментов!

Вывод.

Исходя из данного проекта, можно сделать следующий вывод: реализовать управление реле не так и сложно. Но если нам нужно сделать управление большим количеством реле, в этом отлично поможет RoboIntellect controller 001. Его плюсом является тот фактор, что данный модуль можно использовать как в Arduino проекте, так и самостоятельно для управления с реле или другими устройствами с компьютера.

Понравился проект Управление 16 реле с компьютера? Не забудь поделиться с друзьями в соц. сетях.

А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.

Спасибо за внимание!

Технологии начинаются с простого!

Фотографии к статье

Файлы для скачивания

Библиотека  Adafruit PWM Servo Driver Library Библиотека Adafruit PWM Servo Driver Library.zip15 Kb 607 Скачать
Библиотека Keypad Библиотека Keypad.zip30 Kb 626 Скачать
Код для arduino Код для arduino.ino2 Kb 606 Скачать
Все для arduino в одном архиве  Все для arduino в одном архиве .zip88 Kb 609 Скачать
Пример на python для управления реле с пк через usb Пример на python для управления реле с пк через usb.zip6073 Kb 673 Скачать

Комментарии

Ваше Имя*


Разработка проектов