Wi-fi датчик температури повітря в приміщенні. Найдоступніший спосіб дистанційного моніторингу температури, вологості та тиску

Вітаю. Сьогодні я розповім вам про цікавий вимикач від фірми Itead – Sonoff TH. Вимикач підтримує віддалене управліннячерез хмару Wi-Fi, а також має датчики температури та вологості, тому може керувати підключеним пристроєм залежно від зміни цих параметрів. Додаткове керуванняпо радіоканалу – відсутня. Якщо вам цікава ця тема – ласкаво просимо під кат.

Sonoff TH поставляється в картонній коробочці:

Упаковка


На бічній грані коробочки нанесені технічні характеристикивимикача:

Опис від виробника:

Features

Support 90~250V AC power supply voltage.
Support checking real time Temperature and humidity.
Support preset temperature and humidity range to turn on/off devices.
Support fast configure SSID and passwordчерез APP.
Support automatic connect to server, register and update status info.
Support tracking device status and timely remote controlчерез APP.
Support setting single and repeat timing schedules
WiFi Characteristics

802.11 b/g/n
Built-in Tensilica L106 ultra-low power consumption 32-bit micro-MCU, dominant frequency support 80 MHz and 160 MHz, support RTOS
Built-in TCP/IP protocol stack
Built-in TR switch, balun, LNA, Power amplifier and matching network
Побудований в PLL, voltage regulator and power supply management components, 802.11b mode +20 dBm output power
A-MPDU&A-MSDU aggregation and 0.4μs guard interval
WiFi @ 2.4 GHz, supports WPA / WPA2 safe mode
Support cloud OTA upgrade
Support STA/AP/STA+AP mode
UART, I2C, PWM, GPIO
Deep sleep maintain current is 10 uA, shutdown current is less than 5 uA
Wake-up, connect and transfer data packets in 2 ms
Standby power consumption is less than 1.0 mW (DTIM3)
Operating temperature range: -40 ℃ - 125 ℃
Інші параметри як follows



У комплект входить три з'єднувальні дроти:

Датчик температури та вологості:

І сам вимикач:

Вимикач створений на тій же платформі і має таке ж реле, як і раніше, який я розглянув у п'ятій частині оглядів, присвячених розумному дому- Вимикач Sonoff RF. Посилання на попередні частини я дам наприкінці огляду.

Одночасно вимикач може відстежувати або температуру або вологість. Тому буде випробувано два вимикачі Sonoff TH:

Підключаємо датчик:

Провід підключено згідно зі схемою:

Подаємо живлення на вимикач:

Споживання:

Обидва вимикачі підключені. Настав час прив'язати їх до керуючого додатка eWeLink. Докладніше про роботу з програмою можна почитати в четвертій частині оглядів.

У додатку вибираємо "Add Device":

Довго натискаємо кнопку на вимикачі, поки світлодіод не почне блимати. Потім ставимо верхню галочку в додатку та натискаємо «Next»:

Програма попросить ввести пароль від Wi-Fi. Після цього натискаємо «Next»:

Виконується пошук пристроїв.

Введіть будь-яке ім'я для нового пристрою:

Вимикач «прив'язаний» до вашого облікового запису:

Після чого ми потрапляємо в головний екранкерування вимикачем. Вимикач встановлений у ручний режим. Наразі він відключений:

Вгорі ви можете побачити показання температури та вологості. Для того, щоб увімкнути вимикач – потрібно натиснути кнопку на вашому віртуальному пультіз будь-якої точки світу, де є інтернет, або рукою натиснути на кнопку на вимикачі.

Вимикач включений:

Якщо ми переведемо двигун у положення «Auto», то потрапимо в налаштування параметрів увімкнення та вимикання вимикача в автоматичному режимі:

Можна вибрати температуру чи вологість. У даному випадкуобрана вологість. У верхньому рядку- 60% вологості, вище яких вимикач відключиться.

У нижній – 40% Нижче яких – вимикач увімкнеться. Можна встановити будь-які параметри. І будь-які варіанти увімкнення/відключення.

Нині 43% вологості. Вимикач вимкнено:

Налаштування вимикача:

Можна поділитися можливістю керування з іншим пристроєм:

Задати різні таймери:

Трохи змінив налаштування вимикача, щоб швидше перевірити його роботу.

Вимикач відключився:

Вимикач увімкнувся:

Підключаємо та шукаємо другий вимикач:

Його ми налаштуємо для спрацьовування за температурою:

Всі налаштування ідентичні настройкам для вологості, тільки вибираємо температуру:

Я не дуже люблю наводити конкретні прикладивикористання в оглядах, щоб не обмежувати фантазії тих, хто його читає. Але в цьому випадку, я думаю, це буде доречним для кращого розуміння роботи вимикача.

Отже, беремо простий ультразвуковий зволожувач повітря:

Він вмикається клавішею і вимикається автоматично, коли вода закінчиться.

Проведемо його доопрацювання. Шукаємо у корпусі вільне місцедля плати вимикача Місця там небагато, але для невеликий плати– місце все ж таки знайшлося. Розмічаємо два отвори для кнопки та світлодіода вимикача:

І свердлимо отвори.

Ріжемо мережний провідвсередині корпусу зволожувача:

І підключаємо наш вимикач:

Тепер термоклеєм приклеюємо вимикач на місце. Термоклей потрібен, щоб складання зволожувача була зручнішою, оскільки після складання вимикач буде притиснутий корпусом зсередини. Начебто саме для нього і було залишено місце:

З заднього боку вирізаємо шматочок корпусу та вклеюємо туди датчик:

Ось що вийшло в результаті:

Акуратно збираємо зволожувач, наливаємо в нього воду і вмикаємо в мережу:

Все працює правильно:

Перевіряємо налаштування вимикача:

Між перевіркою та встановленням – минуло кілька днів. І додаток повідомляє про появу нової прошивки.

Ідемо в налаштування та прошиваємося:

Прошивка оновлена:

Комфортною вважається вологість від 40 до 60%. Тому залишаємо так:

Вимикач справно відпрацьовує у зволожувачі. А можна використовувати його для знищення вологи, наприклад, використавши його можливості для включення витяжної вентиляції у ванній кімнаті.

Другий вимикач, налаштувавши його на температурний діапазон – я вбудував у підлоговий вентилятор. Коли лягаєш спати – дуже спекотно. На ранок стає прохолодно. А вентилятор продовжує працювати. Тепер він включається і вимикається за заданою температурою.

Це лише окремі випадки застосування. Ви можете використовувати ці вимикачі так як вам потрібно. Виходячи з ваших потреб.

Поки писав огляд – виробник випустив нову версію Sonoff TH. На його переконання – принцип роботи нової версії не відрізняється від старої, розглянутої мною. І використання можливостей вимикача, описане у огляді – залишається актуальним

Дякую за увагу.

Мої попередні огляди, присвячені компонентам для розумного будинку:

Далі буде…

Товар надано для написання огляду магазином. Огляд опубліковано відповідно до п.18 Правил сайту.

Планую купити +61 Додати в обране Огляд сподобався +25 +50

Дисклеймер: дана стаття може містити помилки, оскільки я нещодавно працюю з модулем ESP8266 і ще не до кінця розумію багато архітектурних аспектів. даного пристрою.

Сьогодні практично в будь-якому будинку є Wi-Fi роутер і було б недалекоглядно не скористатися цим пристроєм для домашньої автоматизації, тим більше, що сьогодні на ринку є все доступне обладнання для реалізації будь-яких ідей. Нижче буде представлений варіант створення невеликого електронного пристрою, що є платформою для побудови різних датчиків/виконавчих механізмів на основі Wi-Fi модуля- ESP8266.


Даний модуль добре описаний, а на цьому сайті ви знайдете взагалі все, що знає людство про модуль ESP8266.

Отже, що має «вміти» пристрій:

  • Отримувати дані з датчика вологості/температури DHT22;
  • Керувати твердотілим реле (наприклад, SSR-25 DA);
  • Підключатися до Wi-Fi роутеруіз заданим логіном та паролем;
  • Передавати та отримувати дані через MQTT брокер;
  • Підключатися по USB для налагодження та прошивки.

Схема пристрою:

Модифікацій модуля ESP8266 дуже багато (варіанти), але, в принципі, відрізняються вони лише розмірами, типом антени та кількістю доступних портів вводу-виводу. Я використав модуль ESP8266 ESP-01:

У нього всього два порти (не рахуючи USART) - GPIO0, GPIO2, але для моїх цілей достатньо, один порт - для датчика і другий - для управління навантаженням.

Інтерфейс USB реалізується USB-USART перетворювачем CH340G.

Після того, як модуль прошитий, можна завантажувати наші скрипти. Способів безліч, але особисто мені подобається утиліта ESPlorer - дуже зручна софтина не тільки для завантаження скриптів, але й для розробки, дебагу скриптів.

Тепер докладніше. Нам потрібно залити три скрипти:

dht22.lua - власне модуль зчитує дані з датчика DHT22

- ***************************************************************************
- DHT22 module для ESP8266 with nodeMCU
- - Written by Javier Yanez
- but based on a script Pigs Fly from ESP8266.com forum
- - MIT license,
- ***************************************************************************

Local moduleName =...
local M = ()
_G = M

Local humidity
local temperature

Function M.read(pin)
local checksum
local checksumTest
humidity = 0
temperature = 0
checksum = 0

Use Markus Gritsch trick to speed up read/write on GPIO
local gpio_read = gpio.read

Local bitStream = ()
for j = 1, 40, 1 do
bitStream[j] = 0
end
local bitlength = 0
- Step 1: send out start signal to DHT22
gpio.mode(pin, gpio.OUTPUT)
gpio.write(pin, gpio.HIGH)
tmr.delay(100)
gpio.write(pin, gpio.LOW)
tmr.delay(20000)
gpio.write(pin, gpio.HIGH)
gpio.mode(pin, gpio.INPUT)

Step 2: DHT22 send response signal


local c=0
< 500) do c = c + 1 end
- bus will always let up eventually, don't bother with timeout
while (gpio_read(pin) == 0) do end
c=0
while (gpio_read(pin) == 1 і c< 500) do c = c + 1 end

Step 3: DHT22 send data
for j = 1, 40, 1 do
while (gpio_read(pin) == 1 and bitlength< 10) do
bitlength = bitlength + 1
end
bitStream[j] = bitlength
bitlength = 0
- bus will always let up eventually, don't bother with timeout
while (gpio_read(pin) == 0) do end
end

DHT data acquired, process.
for i = 1, 16, 1 do
if (bitStream[i] > 3) then
humidity = humidity + 2 ^ (16 - i)
end
end
for i = 1, 16, 1 do
if (bitStream > 3) then
temperature = temperature + 2^(16 - i)
end
end
for i = 1, 8, 1 do
if (bitStream > 3) then
checksum = checksum + 2^(8 - i)
end
end

ChecksumTest = (bit.band(humidity, 0xFF) + bit.rshift(humidity, 8) + bit.band(temperature, 0xFF) + bit.rshift(temperature, 8))
checksumTest = bit.band(checksumTest, 0xFF)

Якщо температура > 0x8000 then
- Convert to negative format
temperature = -(temperature - 0x8000)
end

Conditions compatible con float point and integer
if (checksumTest - checksum >= 1) or (checksum - checksumTest >= 1) then
humidity = nil
end
end

Function M.getTemperature()
return temperature
end

Function M.getHumidity()
return humidity
end


main.lua - основний скрипт, виконує підключення до Wi-Fi мережі, отримує дані, відправляє їх по mqtt та керує навантаженням

function subscribe()
m:subscribe("/myhome/"..id.."/light",0,function(conn)print(«Subscribe success»)end)
m:on(«message»,function(conn,topic,data)
print(topic… ": "..data)
if data==«ON»then gpio.write(3, gpio.LOW)end
if data==«OFF»then gpio.write(3, gpio.HIGH)end
end)
end

Function dht22_get_data()
dht22=require("dht22")
dht22.read(4)
local t=dht22.getTemperature()
local h=dht22.getHumidity()
if t~=nil then
t=((t-(t % 10))/10).."."..string.format("%.i",(t % 10))
else t=nil
end
if h~=nil then
h=((h-(h % 10))/10).."."..string.format("%.i",(h % 10))
else h=nil
end
dht22=nil
package.loaded[«dht22»]=nil
collectgarbage()
return t, h
end
function post_data()
t, h = dht22_get_data()
if t ~= nil then
m:publish("/myhome/"..id.."/temperature",t,0,0, function()
print(«Temperature»..t)
if h ~= nil then
m:publish("/myhome/"..id.."/humidity",h,0,0, function()print(«Humidity »..h)end)
end
end)
end
end

Function init_network()
collectgarbage()
print(id)
if wifi.sta.status() ~= 5 then
print(«Reconnecting WIFI»)
wifi.setmode(wifi.STATION)
wifi.sta.config("Login","password")
wifi.sta.connect()
tmr.alarm(0,5000,0,function()init_network()end)
else
print(«IP: »..wifi.sta.getip())
print(«Connecting to MQTT server»)
tmr.alarm(0,7000,0,function()init_network()end)
if m~=nil then
m:close()
end
m = mqtt.Client(id, 120)
m:connect(«192.168.0.x»,1883,0,function(conn)
tmr.stop(0)
print(«Connected»)
subscribe()
tmr.alarm(0, 60000, 1, function() post_data() end)
m:on("offline",function(con)
print(«offline.Reconnecting»)
init_network()
end)
end)
end
end

Gpio.mode(3, gpio.OUTPUT)
id=«esp_»..wifi.sta.getmac()
init_network()


init.lua – стартовий скрипт. Його першим запускає NodeMCU на старті.

print(«ESP8266_home_board_v_x.x»)
dofile("main.lc")


Тут є нюанс. На жаль, зовнішньої флеш пам'яті модуля не достатньо для завантаження NodeMCU та моїх скриптів, тому я використовую наступне «миличне» рішення: завантажую один скрипт, виконую команду node.compile(«dht22.lua») - дана командакомпілює скрипт в «dht22.lc», в результаті він займає менше місця і у флеш пам'яті та в оперативної пам'яті, та як потім NodeMCU завантажуватиме його на згадку під час виконання основного скрипта. Потім видаляємо нескомпільований скрипт командою file.remove («dht22.lua»). Виконуємо ті ж маніпуляції з main.lua. Останнім завантажуємо init.lua скрипт, його не компілюємо. Рестартім модуль.

На старті NodeMCU виконає init.lua скрипт, який у свою чергу запустить main.lua. "main.lua" скрипт буде коннектиться до мережі, відправляти дані в COM портта в мережу на заданий mqtt брокер.

Докладніше по скриптах відповім у коментарях.

Ну, начебто б усе. Якщо тема цікава, у наступній статті розповім про mqtt брокер і підключення всього цього до Openhab.

Дякую за увагу.

Теги:

  • ESP8266
  • NodeMCU
Додати теги

Вітаю. У сьогоднішньому огляді я розповім про нову версію вимикача Sonoff TH. У своєму попередньому огляді: "." я описав стару версію вимикача і наприкінці огляду додав, що Itead випускатиме нову версію цього вимикача, що не відрізняється за функціоналом. Сьогодні будуть розглянуті всі можливі (а їх чотири) варіанти вимикачів Sonoff TH.

Для початку, список компонентів для всіх варіантів вимикачів:

Sonoff TH10: $7.50
Sonoff TH16: $8.60
Sonoff Sensor-AM2301: $4.30
Sonoff Sensor-DS18B20: $3.50

Замовлення вимикачів було зроблено 8 вересня. Пошта Гонконгу спрацювала швидко, і вже 23 вересня вони були в мене:

Самі вимикачі TH – поставляються у картонних коробочках:

За назвою нескладно здогадатися, що TH10 розрахований на 10 ампер, а TH16 - на 16 ампер:

Features

Supports 90~ 250V AC input
Support max 10A /16A input
Power: 2200W(10A)/3500W(16A)
Support fast configure SSID and password connection через APP
Support automatic connect to server, register and update status info.
Support tracking device status and timely remote control through APP
Support setting countdown, single and repeat timing tasks
Support real-time temperature and humidity displaying
Support 3 temperature and humidity sensors (AM2301, DS18B20, DHT11)
Support preset temperature and humidity to turn on/off
Support group management, scene, smart scene


На відміну від старої версії- Тепер це не просто плата, у вимикачів з'явився корпус:

Зверху розташована кнопка. Вона служить для підключення вимикача до програми, а також для ручного керування роботою вимикача.

З одного боку вимикача є отвір для його кріплення. З іншого боку – ввідна панель:

Збоку знаходиться гніздо для підключення датчиків:

Знімемо кришку вступної панелі:

Застосовано самозатискні клеми.

Розберемо вимикачі:

Зверху TH16, знизу – TH10:

Вони повністю ідентичні крім використаного реле.

Реле на 10 Ампер:

Реле на 16 Ампер:

Кнопка та роз'єм підключення датчика:

Вид плат знизу:

У вимикачі застосована флеш-пам'ять:

Підтримка Wi-Fiздійснюється.

Оскільки я вважаю, що необхідно мати і ручне керуваннявимикачем, крім віддаленого по Wi-Fi, а вбудована кнопка на вимикачі при вбудовуванні його у нутрощі електроприладу – недоступна, то я трохи модернізував один із вимикачів під свої потреби. Зробив виносну кнопку, тепер її можна поставити у потрібне та зручне місце:

Було б непогано, щоб така кнопка була опціонально. Я не думаю, що складно вивести на корпус ще один роз'єм для кнопки і ті, кому вона необхідна, могли б придбати її окремо і підключити без пайки.

Перейдемо до датчиків. До вимикача можна підключити один із двох видів датчиків:

DS18B20 – лише температурний водонепроникний датчик (-55°С - +125°С):

І AM2301 – датчик температури та вологості (-40°С - +80°С; 0 - 99,9% вологості):

Підключимо датчики до вимикачів:

І підключимо самі вимикачі згідно зі схемою підключення:

Світиться значок Wi-Fi:

Настав час підключити вимикач до програми для смартфонів:

Як встановлювати та налаштовувати програму я докладно описав ось у своєму огляді. З моменту виходу того огляду - додаток тільки погарнішало і обзавелося російськомовним інтерфейсом.

Відкриваємо програму і вибираємо додати пристрій. Додавання пристроїв стало ще простіше і тепер проводиться за чотири прості кроки.

Крок перший. Натискаємо кнопку на вимикачі та утримуємо її натиснутою п'ять секунд:

Вибираємо бездротову мережута вводимо пароль від неї. Якщо раніше ви вже використовували програму, всі графи будуть відразу заповнені автоматично:

Задаємо зрозуміле ім'я для вимикача:

З'єднання завершено.

Сторінка управління вимикачем:

Наразі вимикач знаходиться на ручному управлінні та вимкнений.

Налаштування вимикача:

Можна поділитися правом керувати пристроєм з іншим смартфоном:

Задати одноразові та повторювані таймери:

Таймери зворотного відліку:

Інформація про вимикач:

Вимикач включений:

Якщо ми пересунемо повзунок у положення «Авто», то нам потрібно буде задати температуру або вологість та увімкнення/вимкнення вимикача:

Автоматичний режим. Тут за 30 градусів вимикач включиться, при 50 – відключиться.

Коли вимикач знаходиться в автоматичному режимі, він не реагує на натискання віртуальної кнопки:

Для вимикання, потрібно перевести вимикач у ручне керування та натиснути віртуальну кнопку. Інакше справа з реальною кнопкою. Навіть якщо вимикач знаходиться в автоматичному режимі, натискання реальної кнопки відразу його відключить. Повторне натискання увімкнеться. І вимикач перейде в режим, який був до відключення. Тому реальна кнопка в зручному місці просто необхідна.

Ось приклад налаштування включення/відключення щодо зміни температури:

При налаштуваннях, якщо температура стане вище 22 градусів, то вимикач увімкнеться, якщо температура опуститься нижче 18 градусів – то вимикач відключиться.

Налаштування для керування вимикачем для зміни вологості – задаються аналогічно:

Налаштування вологості буде доступне лише при використанні датчика AM2301.

Також вимикачами можна керувати безпосередньо з віртуального пульта:

Дії можна пов'язувати, а також створювати різні сценарії.

Коли вимикач увімкнений, то крім синього світлодіода, що сигналізує про роботі Wi-Fi, спалахує ще й червоний світлодіод:

Температурний датчик DS18B20 дійсно водонепроникний і правильно відстежує температуру води:

Зроблено все досить акуратно та якісно. Єдине побажання до вимикачів я вже зробив під час огляду про можливість підключення виносної кнопки управління.

Дякую за увагу.

Товар надано для написання огляду магазином. Огляд опубліковано відповідно до п.18 Правил сайту.

Планую купити +72 Додати в обране Огляд сподобався +32 +71
Продовжую розповідати про сучасні варіанти віддаленого стеженняза заміським будинком через інтернет. Раніше я вже розповідав про і. Сьогодні мова піде про російської розробки - бездротовий метеостанції ESPMeteo , яка стоїть по поточному курсутрохи більше ніж 10 доларів США.

Влаштована вона дуже просто. Невелика чорна коробочка має два входи під зовнішні датчики (температура/вологість) і роз'єм mini-USB, по якому подається живлення. Всередині є вбудований датчик атмосферного тиску. Для роботи пристрою потрібне живлення 5 вольт USB та наявність wi-fi мережіз доступом до інтернету. Всі.


2. У комплекті йде зовнішній датчиктемператури та вологості AM2302. Як живлення можна використовувати або звичайне зарядне пристрій USB, або, що раціональніше - ось такий powerbank, який по суті виконує функції джерела безперебійного живлення. Споживання пристрій ще встиг виміряти, т.к. під рукою не було USB тестера.

3. Настроюється пристрій елементарно. Після скидання апаратною кнопкою воно створює незахищену точку доступу Homes-smart, ви підключаєтеся до неї з будь-якого пристрою, заходьте за вказаною в інструкції адресою і вказуєте до якої мережі wi-fi необхідно підключитися. Після цього пристрій буде доступний з домашньої локальної мережі.

Для організації моніторингу на об'єкті, що будується, можна використовувати зв'язку з трьох пристроїв, які будуть достатньо мобільні і можуть бути встановлені де завгодно: ESPMeteo, powerbank, старий смартфону ролі точки доступу wi-fi.

4. Далі починається найцікавіше. Пристрій може надсилати дані на сервіс «Народний моніторинг», який дозволяє спостерігати за всіма датчиками, які відкриті для публічного доступу в системі. Сервіс безкоштовний, але розробників можна підтримати невеликою пожертвою (і отримати пакет смс-повідомлень, наприклад). Чи варто надавати публічний доступдо датчиків ви вирішуєте самостійно. За правилами, зрозуміло, заборонено в публічний доступ транслювати дані внутрішніх температурних датчиків. Воно і зрозуміло, це ваша ж безпека.

5. Стандартний інтервал отримання даних – кожні 5 хвилин. Статистику можна запросити у форматі CSV для подальшого аналізу. Одне з реально корисних моментів - можливість виміру атмосферного тиску, т.к. ті ж Wireless Tags вміють відстежувати лише температуру і вологість (зате вони восени навчилися показувати замість вологості, температуру точки роси, що є наочним показником реального станувологості). Можна також налаштувати сповіщення (по смс або електронній пошті) у разі виходу показань за встановлену межу, або у разі втрати зв'язку з пристроєм.

http://narodmon.ru/66475 - ось тут можна подивитися дані з моєї метеостанції.

6. Головна перевага цієї метеостанції полягає у її доступності. Коштує вона всього 950 рублів (150 рублів доставка до Москви з Брянська). І це готовий пристрій, яке можна ввімкнути та налаштувати за 15-20 хвилин. Враховуючи собівартість компонентів та час на складання, я взагалі дивуюсь чому вона коштує так дешево. Мабуть, треба було замовляти відразу два пристрої, щоб встановити не тільки в заміському будинку, а й у квартирі. Якщо ж ви товаришуєте з паяльником, можна зібрати аналогічний пристрій самостійно, про це можна почитати .

Крім цього на сайті « Народного моніторингу» у каталозі всіх сумісних пристроївможна знайти щось просунуте, наприклад з дистанційно керованими реле. Але коштуватимуть вони значно дорожче.

Ще пристрої із серії «інтернет речей», якими я користуюся:
(55 доларів база, 25-30 доларів кожен датчик, 18 доларів доставка з США)
(199 Євро + доставка із Бельгії).
(30-60 доларів камери, 70 доларів відеореєстратор)

Наступного тижня розповім про те, як я провів тепловізійне обстеження збудованого будинку та які результати отримав.