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

 
» » Подключение 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, датчик температуры, светодиоды



   Благодарим Вас за интерес к информационному проекту digitrode.ru.
   Если Вы хотите, чтобы интересные и полезные материалы выходили чаще, и было меньше рекламы,
   Вы можее поддержать наш проект, пожертвовав любую сумму на его развитие.


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

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

Оставить комментарий
Цитата
  • Группа: Гости
  • 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