
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:04

Что касается оборудования, в проекте используются:
- Ардуино Уно / Мега 2560
- Экран Ethernet Wiznet W5100 / Модуль Ethernet Wiznet W5200-W5500
- Датчик температуры DS18B20 на шине OneWire
- Реле SRD-5VDC-SL-C используется для переключения котла
Шаг 1: Описание термостата Ethernet

Arduino - это удобная встроенная платформа, которую можно использовать, например, для создания комнатного термостата, который мы покажем сегодня. Термостат доступен из локальной сети, в которой он расположен, при этом он оснащен веб-интерфейсом, который используется для настройки всех элементов термостата. Веб-интерфейс работает прямо на Arduino в режиме веб-сервера. Веб-сервер позволяет запускать несколько независимых HTML-страниц, которые могут быть информативными или даже функциональными. Веб-сервер работает на 80-м порту -
Электромагнитное реле SRD-5VDC-SL-C, используемое в проекте, позволяет переключать до 10А при 230В - мощность 2300Вт. В случае переключения цепи постоянного тока (нагрузки) можно переключить 300 Вт (10 А при 30 В постоянного тока). В качестве альтернативы реле OMRON G3MB-202P SSR полностью совместимо по электрической схеме, которая подходит только для неиндуктивных нагрузок и исключительно для цепей переменного тока. Максимальная коммутируемая мощность 460 Вт (230 В, 2 А). Потребление Arduino с экраном Ethernet и другой периферией находится на уровне 100-120 мА при разомкнутом реле. В закрытом состоянии ниже 200 мА при питании 5 В.
Шаг 2: веб-интерфейс

Веб-интерфейс термостата позволяет:
- Просмотр температуры в реальном времени с датчика DS18B20
- Просмотр состояния реле в реальном времени с динамическим изменением выхода на странице
- Измените целевую (эталонную) температуру в диапазоне от 5 до 50 ° C с шагом 0,25 ° C.
- Измените гистерезис в диапазоне от 0 до 10 ° C с шагом 0,25 ° C.
Веб-интерфейс предназначен для работы с экранами большего и меньшего размера. Он отзывчивый, поддерживает широкоформатные экраны высокой четкости, а также мобильные устройства. Интерфейс использует импортированные стили CSS фреймворка Bootstrap с внешнего сервера CDN, который загружает клиентское устройство при открытии страницы, запущенной на Arduino. Поскольку память Arduino Uno ограничена, он может запускать страницы размером всего несколько килобайт. Импорт стилей CSS с внешнего сервера снизит производительность и нагрузку на память Arduino. Программная реализация (для Arduine Uno) использует 70% флэш-памяти (32 КБ - загрузчик 4 КБ) и 44% оперативной памяти (2 КБ).
Статические части веб-страницы (верхний и нижний колонтитулы HTML-документа, CSS-ссылки Bootstrap, метатеги, заголовок HTTP-ответа, тип содержимого, форма и т. Д.) Хранятся непосредственно во флэш-памяти Arduino, что может значительно уменьшить объем оперативной памяти, используемой пользователем. -сгенерированный контент. Таким образом, веб-сервер более стабилен и может одновременно обрабатывать множественное подключение нескольких устройств в сети.
Чтобы сохранить установленные значения даже после сбоя питания, они сохраняются в памяти EEPROM Arduino. Относительная температура к смещению 10, гистерезис к смещению 100. Каждое из значений занимает максимум 5B в памяти EEPROM. Предел транскрипции EEPROM находится на уровне 100 000 транскриптов. Данные перезаписываются только при отправке HTML-формы. Если при первом запуске устройства в упомянутых смещениях EEPROM ничего не сохранено, автоматическая запись будет выполнена со значениями по умолчанию - эталон: 20,25, гистерезис 0,25 ° C.
Метатег Refresh обновляет всю страницу Arduino каждые 10 секунд. К этому времени необходимо записать изменение для термостата, иначе окна ввода будут сброшены при обновлении страницы. Поскольку библиотека Ethernet не включает использование асинхронного веб-сервера, необходимо переписать всю страницу. Динамические данные, которые в основном изменяются, - это текущее значение выхода - Вкл. / Выкл.
Шаг 3: HTML-страницы, работающие на веб-сервере, схемы, исходный код

HTML-страницы, работающие на Arduino:
- / - корневая страница, содержащая форму, текущий список логических выходов реле, температуру
- /action.html - обрабатывает значения из формы, записывает их в память EEPROM, перенаправляет пользователя обратно на корневую страницу
- / get_data / - передает данные о текущей температуре, эталонной температуре и гистерезисе третьей стороне (компьютеру, микроконтроллеру, другому клиенту…) в формате JSON.
Также существует расширенная версия этого термостата, в которую входят:
- Ручной режим для реле (неограниченное время, жесткое включение / выключение)
- Сторожевой таймер
- Доступны дополнительные датчики, например: SHT21, SHT31, DHT22, BME280, BMP280 и другие.
- Режим охлаждения
- Управление и настройка через RS232 / UART независимо от Ethernet
- ПИД-регулятор температуры для термостата
- Возможность использования платформ ESP8266, ESP32 для термостата
Программную реализацию проекта можно найти по адресу: https://github.com/martinius96/termostat-ethernet/ Реализация содержит программы для статического / динамического IPv4-адреса, назначенного шилду Ethernet.
Термостат предназначен только для температуры в помещении! (выше 0 ° C), к которому адаптирована системная логика. Возможна замена существующего комнатного термостата на термостат, возможна временная замена термостата в холодильнике, поддержание постоянной температуры в террариуме и тому подобное.
Рекомендуемые:
Считывание влажности с помощью датчика Ethernet: 3 шага

Считывание влажности с помощью датчика Ethernet: цель проекта заключалась в том, чтобы иметь возможность считывать показания влажности и температуры через сеть Ethernet, чтобы результаты можно было использовать для домашней автоматизации (Home Assistant и т. Д.). Датчик T9602 имел лучший форм-фактор и отличные характеристики. выступление на ар
Домашняя автоматизация с голосовым управлением (например, Alexa или Google Home, не требуется Wi-Fi или Ethernet): 4 шага

Домашняя автоматизация с голосовым управлением (например, Alexa или Google Home, не требуется Wi-Fi или Ethernet): это в основном реле, управляемые arduino на основе SMS, с настройкой помощника Google для отправки сообщений по голосовым инструкциям. Это очень просто и дешево, и работает как реклама Alexa с вашим существующие электроприборы (если у вас есть Moto -X smartp
Как найти IP-адреса устройств Ethernet?: 4 шага

Как найти IP-адреса устройств Ethernet?: В этой возможности мы рассмотрим проблему, которая возникла с нами, когда нам нужно получить IP-адрес устройства Ethernet, это может быть ПК, смартфон, ПЛК, в нашем случае это может быть Arduino с экранированным Ethernet, ESP8266 или ESP32. Если мы не
Преобразование маршрутизатора Power Over Ethernet: 4 шага (с изображениями)

Преобразование маршрутизатора Power Over Ethernet: идея, лежащая в основе этого проекта, состоит в том, чтобы превратить любой стандартный готовый маршрутизатор в устройство с поддержкой Power Over Ethernet (PoE) (описание в Википедии) [] без покупки каких-либо адаптеров или дополнительного оборудования. что-то довольно распространенное во многих деловых / неофициальных
FM-антенна через Ethernet: 3 шага

FM-антенна через Ethernet: Проблема: я использовал cat6 и коаксиальный кабель по всему дому. Но по какой-то причине мне никогда не приходила в голову идея установить дополнительный коаксиальный кабель или простой антенный провод. Теперь у меня нет возможности использовать мой хороший FM-тюнер, если я не повешу уродливый диполь на стене. Сол