цифровая электроника
вычислительная техника
встраиваемые системы

 
» » Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Автор: Mike(admin) от 9-01-2015, 08:15

В мире появляется все больше проектов, показывающих полезность применения популярного Wi-Fi модуля ESP8266. Доступность SDK и поддержка сообществом ускоряют их появление.


Дешевый Wi-Fi модуль ESP8266

В данном случае рассматривается проект, в котором показывается автономная работа ESP8266 (без внешнего контроллера, например, Arduino): запуск HTTP daemon, настройка через вебинтерфейс, использование пользовательского интерфейса для управления светодиодом, подключенным к линии GPIO модуля, использование пользовательского интерфейса для считывания данных с датчика температуры и влажности DHT22.


В мире существует несколько версий модуля ESP8266. Наиболее популярной является DIP-версия. Но у нее выведены на разъем только линии GPIO0 и GPIO2, поэтому в данном случае воспользуемся SMD-версией, где доступны все выводы.


версии ESP8266

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


Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Конденсатор желательно поставить для обеспечения модуля бОльшим током, поскольку переходник FTDI выдает только примерно 50 мА, а при активной работе модуля в режиме WiFi может потребоваться до 200 мА. В данном случае используется конденсатор на 1000 мкФ, хотя можно взять на 470 мкФ.


SMD-версия (ESP-03) имеет следующее расположение выводов:


ESP8266

Для программирования ESP8266 некоторые выводы должны быть соединены следующим образом:


1. CH_PD к VCC
2. GPIO02 к VCC
3. GPIO00 к GND
4. GPIO15 к GND


Для нормального запуска достаточно подключить CH_PD к VCC и GPIO15 к GND.


Благодаря представленному сообществом проекту «esp8266 httpd» запуск http-сервера не представляет большого труда. Зачастую для встраиваемых систем довольно сложно настроить соединение и произвести конфигурацию. Но этот проект преодолевает данные трудности благодаря предоставлению пользовательского интерфейса. Если после запуска модуль не в состоянии соединиться с WiFi сетью, используя сохраненные настройки, то автоматически активируется режим точки доступа (Access Point), и вы увидите ESP_XXXXXX, где XXXXXX будут представлять собой последние 6 цифр MAC-адреса модуля ESP8266.


Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Вы можете подключиться к этой открытой точке доступа и пройти по http://192.168.4.1 для сканирования WiFi сетей и ввода пароля.


Главная страница:


Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Страница соединения с WiFi:


Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Пароль будет сохранен, и после этого модуль автоматически будет подключаться к данной сети. После соединения с сетью, возможно, вам будет интересно, какой IP-адрес использует ваш ESP8266. Модуль использует DHCP, поэтому его адрес может меняться. Вы можете настроить статический IP, если ваш маршрутизатор позволяет это, либо находить IP-адрес каждый раз, когда вы хотите использовать его. В Linux’e для этого можно ввести команду:


sudo arp-scan –retry 7 –quiet –localnet –interface=wlan0 | grep -s -i 18:fe:34


Переход по IP-адресу модуля откроет такой же пользовательский интерфейс, который мы видели раньше. Ниже показаны интерфейсы для управления светодиодом и для считывания температуры и влажности с датчика DHT22.


Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

Подключение ESP8266 к датчику DHT22 и светодиоду и управление через веб-сервер

В данном случае светодиод соединен с выводом GPIO13, но вместо него можно подключить, например, реле. Страница для DHT22 представляет собой обычную html-страницу, но она может быть и JSON-строкой, которая может периодически опрашиваться с панели http://freeboard.io/, или потоком Node-RED.


Исходный код приложения доступен здесь, в архиве также имеются бинарники, так что вы сразу же можете запрограммировать ESP8266 без использования SDK:


sudo ./esptool.py –port /dev/ttyUSB0 write_flash 0x00000 firmware/0x00000.bin

sudo ./esptool.py –port /dev/ttyUSB0 write_flash 0x40000 firmware/0x40000.bin

sudo ./esptool.py –port /dev/ttyUSB0 write_flash 0x12000 webpages.espfs


Перевод © digitrode.ru


<Via>


Теги: ESP8266, датчик температуры, светодиоды




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

Комментарии:

Оставить комментарий
Цитата
  • Группа: Гости
  • ICQ:
  • Регистрация: --
  • Статус:
  • Комментариев: 0
  • Публикаций: 0
^
Где еще можно почитать про написание WEB интерфейса на русском языке? Признаться я не совсем понял как создать полноценную интернет страницу внутри модуля, а в англ я не силен (((
Цитата
  • aziz

  • 13 февраля 2015 13:53
  • Группа: Гости
  • ICQ:
  • Регистрация: --
  • Статус:
  • Комментариев: 0
  • Публикаций: 0
^
Может быть об этом что-нибудь есть на русскоязычном ресурсе http://esp8266.ru/
Цитата
  • Баран

  • 19 декабря 2015 23:36
  • Группа: Гости
  • ICQ:
  • Регистрация: --
  • Статус:
  • Комментариев: 0
  • Публикаций: 0
^
я благодоря вашей статье сжог свой esp. правильное подключение вот
http://esp8266.ru/wp-content/uploads/ESP_improved_stability-300x224.png