Wi-Fi термометр для контроля и управления температурой в помещении
Рассуждая о сетях, мы редко вспоминаем об их применениях, выходящих за рамки путешествий по просторам Интернета. Между тем, таких применений не счесть. Сети предназначались для передачи данных вообще, а также между компьютером и производственным оборудованием, в частности. Вариант такого оборудования – это разнообразные приборы бытового назначения, климатические или иные датчики с модулем Wi-Fi. Например, датчик температуры и влажности.
Wi-Fi для измерения температуры
Первым делом спросим себя, зачем все это вообще нужно? Зачем объединять беспроводные сети и измеритель градусов? Вот несколько примеров такого использования, где возможность неограниченно перемещать датчик в пространстве окажется очень полезной:
- Дистанционный съем показаний со счетчиков газа.
- Удаленный контроль котельного оборудования.
- Система удаленного контроля температуры в помещениях.
Могут быть и другие альтернативы. В качестве умственной разминки, подумайте над этим вопросом. В чем заключается польза во всех этих случаях? Главным образом в удобстве, обусловленном тотальной автоматизацией промышленных и бытовых процессов.
Если контролеры газа могут снять показания, не прикасаясь к счетчику, это значительно оптимизирует их труд. Если оборудование котельной может управляться на расстоянии, то почему бы не снимать на расстоянии параметр температуры? Под помещением же может пониматься многое: и квартира, и частный дом, и теплица в огороде и производственный цех. С помощью похожих устройств можно даже проводить операции по управлению тем или иным прибором.
Вот краткий перечень других полезностей:
- Подключение в отсутствие поблизости сети LAN.
- Измерения во множестве точек.
- Тонкая настройка датчика при помощи особого софта.
- Небольшие габариты.
- Комбинирование с иными устройствами (например, с внешним термометром или датчиком дыма).
Датчик своими руками
Пример сборки смотрите в следующем видео:
Собрать устройство, о котором идет речь в нашей заметке, можно и самостоятельно. Например, изготовить Wi-Fi-датчик температуры нетрудно, соединив беспроводной модуль c маркировкой ESP8266 и температурный датчик DS18B20.
Конечно, придется повозиться с паяльником и приобрести другие компоненты схемы, наподобие резистора на 4,7 кОм, светодиодных индикаторов, проводов и USB-UART-TTL адаптер. Но, в общем и целом, ничего особенно сложного в данной конструкции нет. Схема напоминает ту, которые дети собирают в радиолюбительских кружках и школах домов пионеров.
Так вот, рассматриваемая модель программируется и конфигурируется на базе популярной программно-аппаратной платформы Arduino, лучшей на сегодня в классе конструкторов. На сайтах в Интернете найдется немало инструкций по созданию вполне работоспособных электронных поделок.
Мы привели эту информацию исключительно для того, чтобы подвигнуть вас на путь технического творчества!
Образцы серийно-выпускаемых датчиков
Хотя датчик можно сконструировать самому, все-таки лучше приобрести готовое изделие. Примеры устройств мы приведем ниже.
Обзор «умного» датчика от Xiaomi смотрите тут:
Страж ТН-20 Wi-Fi
Это датчик температуры и влажности с Wi-Fi по цене около 10000 рублей. Особенности:
- Совмещены два датчика;
- Получение уведомлений в приложение об изменениях в параметрах температуры и влажности;
- Контроль показаний в режиме реального времени;
- Возможность работы без электричества;
- Сенсорный дисплей;
- Звуковое и световое оповещение об изменении заданных параметров;
- Возможность работы при низких температурах;
- Возможность подключения к ПК и конфигурация программного обеспечения.
Simpal W230-C
Умная Wi-Fi розетка с датчиком для контроля температурного режима в помещении. Устройство используется для управления электроприборами, а также может контролировать микроклимат в помещении, благодаря встроенному датчику температуры.
Для управления используется мобильное приложение, доступное для Android и iOS.
SAURES R-1
Комплект беспроводной датчик температуры с Wi-Fi + контроллер. Назначение устройства:
- Дополнение счетчиков газа для удаленной передачи показаний;
- Контроль за работой котлов;
- Удаленный контроль за температурой в доме, теплице и ином помещении.
Прибор устанавливается в помещение, где нужен контроль температурного режима, а контролировать температуру можно через браузер или мобильное приложение.
Вот такие возможности предлагает нам Wi-Fi. Благодаря встроенному беспроводному модулю, стал реальным не только выход в Интернет, но и удаленный контроль и управление температурой и влажностью у себя дома!
Сообщества › Arduino для автомобиля › Блог › WIFI датчик температуры на базе WIFI модуля ESP8266 и датчика температуры DS18B20
Предисловие: Содержание данного поста на первый взгляд может не подходить для форума «ARDUINO для автомобиля», но если внимательно посмотреть, я думаю найдется, что то полезное…
1. Введение.
По случаю попали ко мне в руки WIFI модуль ESP8266 (ESP-01) и датчик температуры DS18B20. Задача – построить автономный датчик температуры, данные с которого можно посмотреть на компьютере/планшете. В будущем эти данные должны использоваться для контроля в «умном доме»…
Чип ESP8266 очень подходит для этого, так как обладает небольшими размерами, ценой, а самое главное, что его контроллер может заменить Arduino – он может сам выполнять все необходимые действия.
Вариантов модулей на чипе ESP8266 множество — все о ESP8266 можно прочесть тут — esp8266.ru/ больше чем здесь, я думаю вы на русском языке не найдете.
У меня ESP-01 – у которого только два управляемых выхода – GPIO 0 и GPIO 2:
Что касается датчика температуры DS18B20 – тоже достаточно популярное устройство, а главное он цифровой – значит, выдает готовые значения и работает по протоколу 1-Wire – можно будет использовать библиотеку OneWire. Кроме того специально для температурных датчиков Dallas DS18B20 есть Arduino-библиотека DallasTemperature. milesburton.com/Main_Page…mperature_Control_Library
Что касается построения такого WIFI датчика температуры – устройство ни уникальное – в интернете есть описания подобных схем на тех же компонентах, но программируются на языке Lua – вариант geektimes.ru/post/255594/. Но судя по описанию – там тоже все не просто так. Да и не хотелось «учить» еще один язык…
Я к Arduino уже как то привык.
Поэтому решено искать варианты Arduino скетчей. Тем более что и тут есть наработки:
— датчик температуры для проекта «Народный мониторинг» —
arduinolab.pw/index.php/2…o-monitoringa-na-esp8266/ — его я тоже попробовал.
А вот тут от того же автора скетч который позволяет выводить параметры температуры через браузер – именно его я использовал. vk.com/doc148062645_43703…630&dl=4f5f570366aac0e93a
Но оказалось, что бы его загрузить предстоит кое-что сделать.
2. Нужно:
1. Модуль ESP8266 (ESP-01);
2. Датчик температуры DS18B20;
3. USB-UART-TTL адаптер – например CР2102 (+драйвер);
4. Резистор 4,7 кОм;
5. Провода мама – мама/папа;
6. Изолента/термоусадка;
3. Настройка ADRUINO IDE для работы с WIFI ESP8266.
Для того, что бы загружать скетчи через ADRUINO IDE непосредственно на модуль ESP8266 необходимо провести апгрейд ADRUINO IDE – загрузить в него программу «ESP8266» для поддержки модуля (см. ссылку github.com/esp8266/arduino).
Как сказано на одном из сайтов:
«Программа ESP8266 поставляется с библиотеками, которые позволяют через интерфейс WiFi с помощью протоколов IP, TCP, UDP обмениваться данными с WEB, SSDP, mDNS и DNS серверами, использовать flash память для создания файловой системы, обеспечить работу с SD картами, сервоприводами, работать с периферийными устройствами по шинам SPI и I2C.»
Для этого нужно:
1. Зайти в меню «Файл» — выбрать «Настройки».
2. В ячейку «Дополнительные ссылки для Менеджера плат» внести ссылку arduino.esp8266.com/stabl…age_esp8266com_index.json
3. Зайти в меню «Инструменты» в «Плата:…» — выбрать «Менеджер плат…».
4. В закладке «Менеджер плат» нужно найти нужную прошивку — в поле указать например esp8266 – в окне высветится нужная прошивка.
5. Установить выбранную прошивку «esp8266» – щелкнуть на поле с прошивкой – появится кнопка «Установить» — нажать. Установка займет некоторое время – будет скачивать около 153 Мб.
6. После завершения установки в меню «Инструменты» в закладке «Плата:…» ниже перечня плат Arduino появится новые платы – «ESP8266 Modules».
7. Выбрать нужный модуль – в общем случае это «Generic ESP8266 Module».
4. Подключение ESP8266 к компьютеру для перепрошивки.
Как правильно подключить модуль много и хорошо написано – например тут:
esp8266.ru/esp8266-podklu…bnovlenie-proshivki/#full
Я для подключения ESP8266 к компьютеру для перепрошивки использовал USB-UART-TTL адаптер CР2102.
Схема подключения обычная да UART, за исключением двух особенностей:
1. Для включения модуля нужно подать +3,3В на вывод модуля CH_PD. Я припаял перемычку с VCC.
2. На время загрузки скетча необходимо подать «минус» на вывод модуля GPIO 0.
Если речь идет о настройке/отладки нескольких модулей имеет смысл сделать специальный комплект проводов для подключения.
Так же есть особенность с питанием модуля.
Во первых, он должен питаться от 3,3 В.
Во вторых, он очень прожорливый – мощности питания от USB-UART-TTL адаптера ему не хватало – компьютер постоянно сообщал, что к нему «подключено неизвестное устройство, при установке которого возникли проблемы».
Поэтому для питания модуля нужно организовать отдельное питание.
Если предполагается использовать более высокое напряжение — нужно использовать понижающий стабилизатор.
В моем случае я использовал две батареи АА 1,5В соединенные последовательно – но испытания показали хватает не на долго (возможно батареи были севшие).
ВНИМАНИЕ! При подключении внешнего источника питания при прошивке нужно соединить его с минусом USB-UART-TTL адаптера.
5. Загрузка скетча.
Если все сделали – можно начинать загрузку скетча:
vk.com/doc148062645_43703…630&dl=4f5f570366aac0e93a
Но для начала нужно в строчках с именем сети и пароля указать имя и пароль вашей сети:
const char *ssid = «…»;
const char *password = «…»;
Процесс загрузки визуально отличается от привычной загрузки – он будет сопровождаться рядом точек в окне статуса загрузки (см. фото).
Если этого не происходит и появилось сообщение об ошибке – включите и выключите питание модуля WIFI.
Если загрузка прошла успешно, уберите перемычку с GPIO 0 и «массы».
Откройте Serial порт в Arduino IDE и убедитесь, что модуль начал работать и самое важно – запишите IP адрес вашего модуля:
Connected to «Название вашей сети»
IP address: 192.168.ХХ.ХХ
MDNS responder started
HTTP server started Теперь можно отключать USB-UART-TTL адаптер и подключать датчик температуры.
6. Подключение датчика температуры.
Схема подключения датчика температуры типовая (см. рисунок).
Потребуется правда поработать паяльником – припаять сопротивление 4,7 кОм и датчик температуры, а так же перемычку включения питания (см. ранее).
Есть еще один вывод который может пригодится — вывод RST – «Сброс» — для этого нужно подать на него «минус». Пару раз пригодилась эта «кнопка» — возможно потому, что схема собрана на весу…
7. Работа датчика.
Если все прошло правильно датчик начнет помаргивать синим светодиодом и излучать в WIFI эфир температуру. А вот что бы эта температура стала «видима» нужно в браузере указать IP адрес вашего модуля (мы его знаем из пункта 5) и на экране появится вот такая картинка: