Управление реле с помощью сенсорного дисплея DWIN и Arduino, ESP32.

Это уже не первый проект про управление реле с помощью сенсорного дисплея. Ранее я рассказывал про управление 16 реле с помощью дисплея Nextion. Сегодня рассмотрим управление реле с помощью более дешёвого, но не менее функционального дисплея компании DWIN. Сделаю два варианта прошивки: первый для Arduino UNO (NANO) и второй для ESP32 (Arduino MEGA). Зачем и почему 2 варианта кода сейчас расскажу.



Подготовка дисплея DWIN для прошивки.

Первое, что нужно сделать — это уделить внимание малозаметной перемычке. Она есть на большинстве дисплеев и отвечает за режим работы serial порта.

Подготовка дисплея DWIN для прошивки.

Если перемычка замкнута/спаяна - режим TTL/UART. Если перемычка разъединена - режим RS232.С завода дисплеи идут без перемычки, поэтому её нужно замкнуть, можно просто спаять или припаять smd резистор номиналом 0 Ом.

Затем нужно подготовить карту памяти. Про этот этап у меня есть отдельная статья, в которой всё подробно расписано.

После этого можно приступить к прошивке дисплея.

Прошивка дисплея компании DWIN.

Для загрузки примера нужна прошивка, которую можно скачать внизу статьи в разделе «Файлы для скачивания». Пример сделал для дисплеев разрешением 800x480 px. Соответственно, он подойдёт для дисплеев 5 и 7 дюймов с данным разрешением экрана, но не ко всем. Смотрите разрешение своего дисплея в даташите к нему. Если разрешение дисплея больше, чем 800x480 px, то по краям вы увидите чёрные полосы.

В архиве проекта нужно скопировать папку DWIN_SET на карту памяти. Файлы должны располагаться на карте по пути: «/DWIN_SET/».

Вставляем SD карту в HMI модуль. Подайте питание.

Вставляем SD карту в HMI модуль. Подайте питание.

Вставляем SD карту в HMI модуль. Подайте питание.

Вы увидите синий экран с надписями. Необходимо дождаться пока не появится строчка с надписью «SD Card Process... END!».

Вы увидите синий экран с надписями. Необходимо дождаться пока не появится строчка с надписью «SD Card Process... END!».

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

Если что-то пошло не так, то информация на дисплее будет следующая. В этом случае рекомендую вернуться к статье про подготовку SD карты.

Прошивка для дисплея DWIN.

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

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

Подробнее о подготовке к работе дисплея рассказывать не буду, так как по данному проекту сделаю уроки программирования дисплея DWIN. Расскажу только основные моменты, которые помогут расширить или уменьшить количество управляемых реле. Максимальное количество реле, которыми можно управлять - 16.

Для создания элемента управления одним реле буду использовать инструмент «Bit icon».

Для создания элемента управления одним реле буду использовать инструмент «Bit icon».

Его нужно настроить следующим образом.

 Его нужно настроить следующим образом.

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

Для остальных элементов управления делаем по аналогии и увеличиваем только бит управления.

Поверх иконки устанавливаем элемент обработки нажатия на тачскрин «Incremental Adjustment».

Поверх иконки устанавливаем элемент обработки нажатия на тачскрин «Incremental Adjustment».

Производим следующие настройки. Необходимо обратить внимание на параметр «Bit».

 Производим следующие настройки. Необходимо обратить внимание на параметр «Bit»

Его нужно изменить таким образом, чтобы он соответствовал биту, который выставили в элементе «Bit icon». Для первого элемента это 0, для второго 1 и т.д.

Его нужно изменить таким образом, чтобы он соответствовал биту, который выставили в элементе «Bit icon».

Вот так будут выглядеть элементы управления реле в редакторе «DWIN DGUS».

Вот так будут выглядеть элементы управления реле в редакторе «DWIN DGUS».

Для кнопок включения и выключения всех реле буду использовать инструмент «Return Key code».

Для кнопок включения и выключения всех реле буду использовать инструмент «Return Key code».

Тут нужно обратить внимание на следующие параметры.

Тут нужно обратить внимание на следующие параметры.

Основной параметр — это обнуление и заполнение всех бит. Соответственно, для выключения или включения всех реле.

Основной параметр — это обнуление и заполнение всех бит. Соответственно, для выключения или включения всех реле.

Если Вы считаете, что всё сложно и непонятно, не расстраивайтесь! Я сниму блок уроков, в которых подробно расскажу про каждый элемент и объясню, почему мы используем данные параметры.

Схема подключения Arduino модуля 8 реле и дисплея DWIN.

Схема подключения Arduino модуля 8 реле и дисплея DWIN.

Подключим к Arduino модуль 8 реле и дисплей DWIN. Реле можно подключить и к другим пинам, этот параметр настраивается в прошивке.

Схема подключения ESP32 модуля 8 реле и дисплея DWIN.

Схема подключения ESP32 модуля 8 реле и дисплея DWIN.

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

По аналогии ко второму UART подключение осуществляется у Arduino MEGA.

Код Arduino UNO (NANO) для управления 8 – 16 реле с сенсорного дисплея DWIN.

Код Arduino UNO (NANO) для управления 8 – 16 реле с сенсорного дисплея DWIN.

В коде можно поменять всего несколько параметров или оставить без изменений.

  • DEBAG - Отвечает за вывод в монитор порта отладочной информации. 1 - вкл.0 - выкл.
  • Level – отвечает за тип подключённого реле. 1 - реле высокого уровня, 0 - реле низкого уровня.
  • relays_num – Количество подключённых реле. Максимум 16.
  • relays[relays_num] – массив пинов, к которым подклеены реле.

Если вам нужно увеличить количество подключённых реле, для этого необходимо поменять переменную relays_num и дописать пины дополнительно подключённых реле в массиве relays[relays_num]. Так же для дисплея нужно будет добавить кнопки управления, увеличив бит последующих кнопок.

Скачать код можно внизу статьи в разделе «файлы для скачивания».

Код Arduino MEGA и ESP32 для управления 8 – 16 реле с сенсорного дисплея DWIN.

Данный код практически ничем не отличается кроме того, что для подключения дисплея используется Serial2, а для отладки Serial.

Код Arduino MEGA и ESP32 для управления 8 – 16 реле с сенсорного дисплея DWIN.

Коды для ESP32 и Arduino MEGA имеют небольшие отличия, поэтому к статье я прикреплю для каждой платы свои файлы.

Подведём итог.

Постарался сделать максимально универсальный код, чтобы его можно было использовать с разными платами: Arduino UNO, NANO, MAGA, ESP32, ESP8266. Кроме этого, реализовал поддержку реле разного типа: высокоуровневого и низкоуровневого реле.

Постарался сделать максимально универсальный код, чтобы его можно было использовать с разными платами: Arduino UNO, NANO, MAGA, ESP32, ESP8266.


Приобрести дисплей DWIN можно в официальном магазине DWIN Technology на AliExpress.

Понравился проект Управление реле с помощью сенсорного дисплея DWIN и Arduino, ESP32? Не забудь поделиться с друзьями в соц. сетях.

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

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

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

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

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

Код Arduino UNO (NANO) для управления 8 – 16 реле с сенсорного дисплея DWIN Код Arduino UNO (NANO) для управления 8 – 16 реле с сенсорного дисплея DWIN.zip2 Kb 1277 Скачать
Код ESP32 для управления 8 – 16 реле с сенсорного дисплея DWIN Код ESP32 для управления 8 – 16 реле с сенсорного дисплея DWIN.zip2 Kb 1127 Скачать
Код Arduino MEGA для управления 8 – 16 реле с сенсорного дисплея DWIN. Код Arduino MEGA для управления 8 – 16 реле с сенсорного дисплея DWIN. .zip2 Kb 990 Скачать
Фоны и иконки Фоны и иконки.zip247 Kb 1197 Скачать
Прошивка для дисплея DWIN Прошивка для дисплея DWIN .zip690 Kb 1374 Скачать

Комментарии

Ваше Имя*

Вячеслав

Гость: Вячеслав (21 мая, 2022 в 15:49)

На esp прошивать только 8_relays.ino?


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