Поиск

25 апреля 2016 г.

Управляем вентиляцией через интернет с помощью esp8266

WiFi модуль esp8266 используется в качестве веб-сервера для беспроводного управления вентиляцией через nRF24L01+.

Вот в эту конструкцию добавляется WiFi модуль, который выполняет роль «мозга» системы вентиляции.

Собранные значения углекислого газа отправляются на облачный сервер интернета вещей — ThingSpeak





Схема получается такой — с датчика CO2 микроконтроллером Atmel AVR ATtiny44A получаем уровень CO2, далее по воздуху, с помощью nRF24L01 передаем его на esp8266. 
Esp8266, в свою очередь, считает необходимую скорость вентиляторов и передает ее через тот-же nRF24L01 на проветриватели и вентиляторы.
Точное время берется через SNTP, и в зависимости от времени суток корректируются обороты вентиляторов.



График c зумом строится с помощью open-source библиотеки d3j (Data-Driven Documents):



Есть еще бегущий график — библиотека Smoothie Charts.

В качестве веб-сервера используется библиотека esp8266web, которая доработана:

  1. Сделано обновление прошивки по WiFi (firmware.bin). Загружается на место Web диска, затем при загрузке (Rapid_Loader_OTA) копируется на основное место.
  2. Добавлена функция записи в Web диск — WEBFSUpdateFile. Исправлены ошибки в библиотеке WEBFS (web/webfs.c).
  3. Увеличен лимит для размера при сохранении переменных, cookies в web_int_vars (функции web_parse_*).
  4. Уменьшен до 1 сектора (4096 байт) блок сохранения конфигурации в 0x7B000 (flash_epp), сохранение/восстановление конфигурации, добавлена функция current_cfg_length().
  5. Исправление потерю соединения к некоторым роутерам и отсутствие пере-подключения.
  6. Отладка в RAM память.
  7. и другие небольшие доработки

Написан драйвер nRF24L01, который использует блочное чтение/запись через HSPI на esp8266.

Схема:


Исходник: https://github.com/vad7/WirelessCO2_esp8266

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

Отправить комментарий