Оглавление:

ESP8266 Реле с контролем температуры: 9 шагов (с изображениями)
ESP8266 Реле с контролем температуры: 9 шагов (с изображениями)

Видео: ESP8266 Реле с контролем температуры: 9 шагов (с изображениями)

Видео: ESP8266 Реле с контролем температуры: 9 шагов (с изображениями)
Видео: Разработка WEB-интерфейса для ESP8266. Часть 1: Подготовка скетча в Arduino IDE 2024, Ноябрь
Anonim
Image
Image

Мой друг - ученый, который проводит эксперименты, очень чувствительные к температуре и влажности воздуха. В помещении инкубатора есть небольшой керамический обогреватель, но термостат обогревателя не был достаточно точным, он мог поддерживать температуру только в пределах 10-15 градусов.

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

Мы взяли ESP8266, реле, DHT22 и какую-то онлайн-платформу IoT.

Шаг 1. Расходные материалы

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

  • ESP8266 ESP-01 (или аналогичная плата ESP8266)
  • Датчик температуры и влажности DHT-22
  • Регулятор переменного напряжения LM317 (или стандартный регулятор на 3,3 В было бы проще)
  • Реле высокого тока 5 В (я начал с 10 А, но сгорел в течение 2 дней)
  • Различные резисторы и конденсаторы
  • Провода перемычки
  • Стандартная электрическая розетка и крышка
  • Электрическая банда
  • Старый USB-штекер с адаптером
  • Старая электрическая вилка

Оглядываясь назад, можно сказать, что использование NodeMCU вместо ESP-01 имело бы гораздо больший смысл. В то время у меня его не было, поэтому я обходился тем, что было у меня под рукой.

Шаг 2: Строительство розетки

Строительство розеток
Строительство розеток

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

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

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

Шаг 3: Дизайн Curciut

Curciut Design
Curciut Design
Curciut Design
Curciut Design

Схема довольно проста, но если вы используете ESP-01, как я, вам нужно будет добавить регулятор напряжения, чтобы получить 3,3 В. Стандартные реле требуют 5 В, поэтому вам понадобится шина 3,3 В и 5,0 В.

В моей схеме использовался стабилизатор напряжения LM317 с набором резисторов, чтобы получить постоянную шину 3,3 В, я подключил USB 5 В для питания реле. Есть реле на 3,3 В, но они не нужны для сильноточных реле, если вы собираетесь запитать небольшой обогреватель.

DHT22 требует подтягивающего резистора 4,7 кОм.

Шаг 4: припаяйте плату

Припаиваем плату
Припаиваем плату
Припаиваем плату
Припаиваем плату
Припаиваем плату
Припаиваем плату
Припаиваем плату
Припаиваем плату

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

Я использовал плату USB для вилки питания, но она была довольно слабой, и вместо нее заменил ее двумя контактами. Я использовал два женских разъема на плате и припаял два штырьковых контакта прямо к старому USB-разъему. Это оказалось более надежным и прочным. Цвета USB-проводки:

Черный Земля Красный 5V

Я также использовал штекерные разъемы, чтобы открыть контакты DHT22 и Relay на моей перфорационной плате, чтобы соединить их стандартными перемычками.

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

Шаг 5: Установите печатную плату

Установите печатную плату
Установите печатную плату
Установите печатную плату
Установите печатную плату
Установите печатную плату
Установите печатную плату

На боковой стороне монтажной коробки закрепите монтажную плату с помощью винтов и / или горячего клея. Убедитесь, что размещение выполнено таким образом, чтобы перемычки доходили до реле, установленного внутри коробки, и вы могли легко подключить разъем питания.

Добавьте к датчику DHT22 перемычку с термоусадкой, длина которой соответствует вашей ситуации. Моя была около 8 дюймов в длину. Вместо этого я использовал кабель CAT5, чтобы провода можно было слегка согнуть, чтобы они оставались свободными.

Шаг 6: Код Арудино

Кодекс Арудино
Кодекс Арудино

Код Arduino использует мой класс SensorBase, который доступен на моей странице Github. Вам не нужно использовать мой код SensorBase. Вы можете писать прямо на сервер MQTT и Thingspeak.

В этом проекте есть три основные функции программного обеспечения:

  1. Локальный веб-сервер для установки и просмотра значений
  2. Удаленный сервер MQTT для отправки и хранения данных
  3. Панель инструментов Thingspeak для графического отображения данных

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

  • Код сенсорной базы на Github.
  • Лабораторный код на Github.

Шаг 7. Панель инструментов Thingspeak

Панель управления Thingspeak
Панель управления Thingspeak
Панель управления Thingspeak
Панель управления Thingspeak

Настройте бесплатную учетную запись Thingspeak и определите новую панель управления. Вам нужно будет использовать тот же порядок элементов, который я перечислил ниже, имена не имеют значения, но порядок имеет значение.

Если вы хотите добавить или удалить элементы, настройте параметры Thingspeak в коде Arduino. Это довольно просто и хорошо задокументировано на их веб-сайте.

Шаг 8: Настройка CloudMQTT

Настройка CloudMQTT
Настройка CloudMQTT
Настройка CloudMQTT
Настройка CloudMQTT
Настройка CloudMQTT
Настройка CloudMQTT

Любая служба MQTT или аналогичная служба IoT, такая как Blynk, будет работать, но я предпочитаю использовать CloudMQTT для этого проекта. В прошлом я использовал CloudeMQTT для многих проектов, и, поскольку этот проект будет передан другу, имеет смысл создать новую учетную запись, которую также можно передать.

Создайте учетную запись CloudMQTT, а затем создайте новый «экземпляр», выберите размер «Симпатичный кот», поскольку мы используем его только для управления, без ведения журнала. CloudMQTT предоставит вам имя сервера, имя пользователя, пароль и номер порта. (Обратите внимание, что номер порта не является стандартным портом MQTT). Перенесите все эти значения в свой код ESP8266 в соответствующие места, убедившись, что регистр правильный. (серьезно, скопируйте / вставьте значения)

Вы можете использовать панель «Пользовательский интерфейс Websocket» в CloudMQTT, чтобы увидеть подключения вашего устройства, нажатия кнопок и, в странном сценарии, получение сообщения об ошибке.

Вам также понадобятся эти параметры при настройке клиента Android MQTT, поэтому при необходимости запишите значения. Надеюсь, ваш пароль не слишком сложен для ввода на телефоне. Вы не можете установить это в CloudMQTT.

Шаг 9: Заключительное тестирование

Заключительное тестирование
Заключительное тестирование

Теперь нам нужно протестировать финальное устройство.

Прежде чем что-либо тестировать, дважды проверьте КАЖДЫЙ провод и используйте мультиметр в режиме непрерывности, чтобы проследить все провода. Убедитесь, что все подключено к тому месту, где вы думаете. Поскольку реле изолирует высокое напряжение от низкого напряжения, вам не нужно беспокоиться о коротком замыкании вашего микроконтроллера.

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

Добавьте свой ESP2866 в свою сеть Wi-Fi, подключившись к устройству через телефон или ноутбук. Он использует стандартную библиотеку WifiManager, и у него есть вся необходимая документация на его странице Github.

Используя лампочку накаливания, я поместил датчик DHT22 рядом с лампочкой и подключил лампу к розетке. Это позволило температуре быстро нагреться, срабатывая реле, чтобы выключить лампу и повторить процесс. Это было очень полезно для проверки всего, включая мое Wi-Fi-соединение.

Ваше устройство должно правильно включать реле, когда температура слишком низкая, и выключать его, когда температура достигает высокого значения. По моему опыту, это позволило поддерживать температуру в лабораторных помещениях в пределах 1 градуса Цельсия 24 часа в сутки.

Рекомендуемые: