Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Это руководство основано на ESP8266 и его приложении в качестве WiFi-термометра, на котором запущен веб-сервер HTTP. Также доступны 2 режима: STA в качестве клиента или AP в качестве точек доступа.
Шаг 1: Введение в термометр
Сегодня я кратко представлю проект Wi-Fi термометра. В термометре используется чип Wi-Fi ESP8266 на плате разработки NodeMCU v3 Lolin. Помимо регистрации данных, чип Wi-Fi также содержит веб-сервер, на который выводятся измеренные данные. Данные измеряются каждый раз при загрузке страницы. В режиме ожидания данные не записываются. Веб-сервер позволяет запускать код HTML + CSS, что позволяет в некоторой степени создать красивый графический интерфейс для отображения температуры для пользователя, например, в таблице. Javascript также может автоматически обновлять данные на странице, но я не использовал эту опцию.
Шаг 2. Версии WiFi-термометра
Есть две версии этого проекта, функциональность сайта как таковая одинакова. В обоих случаях ESP8266 запускает веб-сервер, который отображает значения температуры в таблице. Возможности подключения различаются по версиям. В одном случае можно использовать существующую сеть LAN, к которой плата подключается и содержит веб-сервер на статическом или динамическом IP-адресе. После ввода IP в окне браузера пользователь получает запрос от ESP с указанием температуры по запросу.
Во втором случае плата передает собственный SSID в режиме AP в качестве точки доступа. Пользователь получает доступ к плате, вводя сетевой пароль (включен в ESP8266). Плата передает SSID с шифрованием WPA / WPA2 PSK, либо можно транслировать открытую сеть Wi-Fi. Данные доступны только в пределах досягаемости этой сети Wi-Fi за пределами локальной сети дома. DHCP-сервер также работает на ESP, который после успешной аутентификации пользователя назначает IP-адрес из диапазона. Сайт расположен по IP-адресу шлюза - ESP.
Шаг 3. OneWire - схемы и датчики DS18B20
Данные о температуре записываются с пары датчиков температуры DS18B20, подключенных к шине OneWire, что позволяет собирать данные по одному проводнику с возможностью протягивания проводника на расстояние от десятков до сотен метров. DS18B20 выпускаются в двух основных вариантах - т.н. внутренний датчик в корпусе транзистора или в водонепроницаемом исполнении - наружный датчик в алюминиевой трубке. OneWire подходит для работы в условиях помех и может вместить до 256 датчиков. Отдельные датчики разделены по заводскому адресу - серийному номеру. Есть 2 основных варианта подключения датчика. Подключение нормальное и паразитное, оба могут питаться от 3,3 - 5,5 В. Различия очевидны на схемах подключения OneWire.
Шаг 4: Схема для всех (режим AP / STA) Термометры ESP8266
Шаг 5: исходные коды
Доступно по адресу: https://arduino.php5.sk/wifi-teplomer.php?lang=en или: [email protected] Спросите AP вашего режима для точки доступа или STA для клиента в существующей сети Wi-Fi. Обе версии используют веб-сервер, работающий на ESP8266.