Съдържание:
- Стъпка 1: Първи стъпки
- Стъпка 2: Температура и влажност: DHT22 / DHT11
- Стъпка 3: Водоустойчива температура: DS18B20
- Стъпка 4: Светлина: Фоторезистор / Фотоелемент (цифрово: Вкл. / Изкл.)
- Стъпка 5: Светлина: Фоторезистор / Фотоелемент (аналогов)
- Стъпка 6: Оптичен детектор: QRD1114
- Стъпка 7: Заключителни думи
Видео: Изграждане на Homie устройства за IoT или домашна автоматизация: 7 стъпки (със снимки)
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:52
Тази инструкция е част от моята серия „Направи си сам автоматизация на дома“, вижте основната статия „Планиране на система за домашна автоматизация“. Ако все още не знаете какво е Homie, погледнете homie-esp8266 + homie от Марвин Роджър.
Има много много сензори. Обхващам най -основните, за да дам на читателя изискванията да започне да изгражда „нещо“. Това може да не е ракетна наука, но всъщност трябва да работи.
Ако нямате части, внимавайте за предстоящите ми инструкции „Източник на електронни части от Азия“.
Позволете ми да добавя няколко бръмчащи думи: IoT, ESP8266, Homie, DHT22, DS18B20, домашна автоматизация.
Темата трябва да е доста ясна сега:-)
Също така тази инструкция вече е достъпна и от личната ми страница:
Стъпка 1: Първи стъпки
Конвенции
Тази инструкция използва D1 Mini клонинги. Това са съвместими с WiFi контролери Arduino, използващи чип ESP8266. Те се доставят в много малък форм-фактор (~ 34*25 мм) и са евтини (~ 3-4 $ за клонинги).
Ще илюстрирам всяка компилация, използвайки D1 Mini, макет и някои сензори. Включвам законопроект за всеки материал (BOM) за всеки, но ще пропусна очевидни неща като проводници и макет (мини или пълен). Ще се съсредоточа върху „активните части“.
За проводници/кабели в диаграми (библиотека Fritzing + AdaFruitFritzing) използвах:
- Червено/оранжево за захранване, обикновено 3.3V. Понякога ще бъде 5V, бъдете внимателни.
- Черно за земята.
- Жълто за цифрови сигнали за данни: Битовете се движат и могат да бъдат прочетени както са от чипове.
- Синьо/лилаво за аналогови сигнали за данни: Тук няма битове, просто обикновено напрежение, което трябва да бъде измерено и изчислено, за да се разбере какво се случва.
Homie за ESP8266 изпраща дузина примери, оттам започнах да изграждам тази инструкция.
Платка
D1 е доста удобен за макет, но ще спести само един ред щифтове нагоре и надолу. Всеки пример ще има D1 от дясната страна и компонентите от лявата страна. Горните и долните захранващи релси ще се използват за пренасяне на 3.3V или 5V.
Забележка
Примерите на Homie са изградени като ".ino" скици за Arduino IDE. Моят собствен код обаче е изграден като ".ccp" за PlatformIO.
Това ще направи много малка разлика, тъй като скиците са достатъчно прости, за да бъдат копирани/поставени независимо от избрания от вас инструмент.
Стъпка 2: Температура и влажност: DHT22 / DHT11
Изграждане на устройството
DHT22 използва:
- Един цифров щифт за комуникация с контролера, свържете го към D3
- Два проводника за захранване (3.3V или 5V + GND)
- Цифровият щифт трябва да се поддържа висок (свързан към захранването), за това използваме резистор между захранващата шина и пина за данни
Код
Проектът PlatformIO може да бъде изтеглен от:
Оригиналният пример за Homie е тук (но не използва сензор):
За DHT22 използвайте DHT сензорна библиотека (ID = 19)
BOM
- Контролер: Wemos D1 Mini
- Резистор: 10KΩ
-
Сензор: (един от тези)
- DHT22: Използвал съм 4 -пинов тип, който изисква допълнителен резистор. Има 3 пинови модула, доставени като SMD, които включват резистора.
- DHT11: Това е по -евтино, но по -малко точно, проверете вашите изисквания
Стъпка 3: Водоустойчива температура: DS18B20
Изграждане на устройството DS18B20 използва:
- Един цифров щифт за комуникация с контролера, свържете го към D3
- Два проводника за захранване (3.3V или 5V + GND)
- Цифровият щифт трябва да се поддържа висок (свързан към захранването), за това използваме резистор между захранващата шина и пина за данни
DS18B20 е 1-жичен сензор. Той използва шина и като такива множество сензори могат да използват един щифт за данни.
Възможно е също НЕ да използвате 3.3V/5V за захранване на сензора, това се нарича паразитен режим на захранване. Вижте листа с данни за подробности.
Код
Проектът PlatformIO може да бъде изтеглен от:
Подобно на DHT22, оригиналният пример за Homie е тук (но не използва сензор):
За 1-Wire шина използвайте пакет OneWire (ID = 1)
За DS18B20 използвайте DallasTemperature (ID = 54)
BOM
- Контролер: Wemos D1 Mini
- Резистор: 4.7KΩ
- Сензор: DS18B20, на снимката е водоустойчив
- 3 щифта с винтова клема за улесняване на свързването на кабела към платката
Стъпка 4: Светлина: Фоторезистор / Фотоелемент (цифрово: Вкл. / Изкл.)
Изграждане на устройството
(За съжаление, нямате компонент Fritzing за цифровата фотоклетка)
Цифровият модул на фотоклетката използва:
- Един цифров щифт за комуникация с контролера, свържете го към D3
- Два проводника за захранване (3.3V + GND)
Възможно е да се използва аналогова фотоклетка, но това не е документирано тук, вижте отличната статия на Adafruit „Използване на фотоклетка“.
Забележка: В този пример има потенциометър на сензорната платка. Използва се за задаване на границата между „светла“и „тъмна“околна светлина. При четене 1 лампата е изключена, затова четене 0 означава светлина, ако е включена.
Код
Проектът PlatformIO може да бъде изтеглен от:
BOM
Контролер: Wemos D1 Mini
Сензор: Фоточувствителен / модул за откриване на светлина
Стъпка 5: Светлина: Фоторезистор / Фотоелемент (аналогов)
Изграждане на устройството
Аналоговият сензор на фотоклетката действа като резистор. Той ще се свързва между аналогов вход и 3.3V.
Между GND и пина за данни се поставя резистор, за да се създаде делител на напрежение. Целта е да се създаде известен диапазон от стойности:
- Ако няма светлина, фотоклетката ще блокира основно VCC, като по този начин ще свърже GND с вашия пин за данни: Pin ще прочете почти 0.
- Ако има много ярка светлина, фотоклетката ще позволи на VCC да тече към пина за данни: Pin ще отчете почти пълно напрежение и като такъв близо до max (1023).
Забележка: Стойностите на аналоговите изводи се четат в диапазон 0-1023 с помощта на analogRead. Това не е практично за работа с 1 байтови стойности, за това функцията на картата на Arduino ще помогне за намаляване от 0-1023 на (например) 0-255.
За калибриране на минимални/максимални стойности за вашия сензор, използвайте скица като тази от Arduino.
Код
Проектът PlatformIO може да бъде изтеглен от:
BOM
- Контролер: Wemos D1 Mini
- Сензор: Светлозависим резистор (LDR) / Фоторезистор
- Резистор: 1K или 10K, трябва да се калибрира въз основа на вашата клетка
Препратки
- Изходният код на сървъра на PiDome за състоянието на осветление на дадено място
- „Използване на фотоклетка“на Adafruit
- "Фоторезистори" тук на инструкции
- Някакъв адски луд "Photocell Tutorial", ако искате малко математика и графики
Стъпка 6: Оптичен детектор: QRD1114
Изграждане на устройството
Код
BOM
Препратки
- Физически изчисления: QRD1114 включва примерен код за четене на сензора и използване на прекъсване за въртящ се енкодер + прецизен дизайн на печатни платки
- Ръководство за свързване на оптичен детектор QRD1114 в Sparkfun
Стъпка 7: Заключителни думи
Тази инструкция е много кратка, за да обясни основното наблюдение.
За да отидем по -далеч, ще трябва да свържем релета, IR излъчвател … Надяваме се, че това ще бъде разгледано по -късно, тъй като свободното време ми позволява. Основната разлика е, че не само ще „четем“(има ли светлина?), Но и „пишем“(включете светлината!).
Препоръчано:
Как да направим домашна автоматизация, базирана на IoT с контролно реле на сензори NodeMCU: 14 стъпки (със снимки)
Как да направим домашна автоматизация на базата на IoT с реле за управление на сензори NodeMCU: В този проект, базиран на IoT, направих домашна автоматизация с модул за релейно управление Blynk и NodeMCU с обратна връзка в реално време. В ръчен режим този релейен модул може да се управлява от мобилен телефон или смартфон и, ръчно превключване. В автоматичен режим този умен
Домашна автоматизация, контролирана от Интернет/облак, използвайки Esp8266 (aREST, MQTT, IoT): 7 стъпки (със снимки)
Интернет/облачна контролирана домашна автоматизация, използваща Esp8266 (aREST, MQTT, IoT): ВСИЧКИ кредити на http://arest.io/ за облачната услуга !! IoT е най -обсъжданата тема в света в момента !! Облачните сървъри и услуги, които правят това възможно, са атракционната точка на днешния свят … ИЗТЕГЛЯНЕТО НА ДИСТАНЦИОННАТА БАРИЕРА беше и е
Домашна автоматизация с гласово управление (като Alexa или Google Home, не са необходими Wifi или Ethernet): 4 стъпки
Гласова автоматизирана домашна автоматизация (като Alexa или Google Home, без Wi -Fi или Ethernet) съществуващи електрически уреди (ако имате Moto -X smartp
Планиране на домашна система за домашна автоматизация: 12 стъпки
Планиране на система за домашна автоматизация „Направи си сам“: Целта на тази инструкция не е да ви каже как можете да правите каквото искате в дома си. Вместо това е написано, за да се превърне една идея в реалност, но също така да се превърне лудостта в здрав разум чрез разбиране на границите (технология, цена, необходимо време
Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: 10 стъпки (със снимки)
Мрежов контролер на IoT. Част 9: IoT, Домашна автоматизация: Отказ от отговорност ПРОЧЕТЕТЕ ТОЗИ ПЪРВО Тази инструкция описва проект, който използва мрежово захранване (в този случай UK 240VAC RMS), въпреки че са положени всички грижи за използване на безопасни практики и принципи на добър дизайн, винаги съществува риск от потенциално смъртоносен избирам