Съдържание:

Управлявайте осветлението на дома с Google Assistant с помощта на Arduino: 7 стъпки
Управлявайте осветлението на дома с Google Assistant с помощта на Arduino: 7 стъпки

Видео: Управлявайте осветлението на дома с Google Assistant с помощта на Arduino: 7 стъпки

Видео: Управлявайте осветлението на дома с Google Assistant с помощта на Arduino: 7 стъпки
Видео: 1. Q light controller plus Getting started with QLC+. Fixtures and functions 2024, Ноември
Anonim
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino
Контролирайте осветлението на дома с помощта на Google Assistant, използвайки Arduino

(Актуализация на 22 август 2020 г.: Тази инструкция е на 2 години и разчита на някои приложения на трети страни. Всяка промяна от тяхна страна може да направи този проект неработещ. Може или не може да работи сега, но можете да го следвате като справка и съответно модифициране.)

Здравейте! Това е първият ми Instructable, в който ще покажа как можем да контролираме осветлението на къщите си с гласа си чрез гласов асистент на Google, използвайки Arduino. Не звучи ли готино да включвате и изключвате осветлението на дома, просто като дадете команда на гласовия асистент на Google, който вероятно всички имаме в нашите смартфони.

Така че нека започнем с Instructable. Този Instrucable не се ограничава само до светлини, но можете да контролирате всеки уред във вашия дом. В този проект ще използваме „релеен модул“, защото се занимаваме с променлив ток.

Забележка: Първо се уверете в безопасността си и продължете на свой собствен риск, тъй като променливият ток в нашите къщи работи при високо напрежение от 100V до 250V (варира в различните държави).

Стъпка 1: Предпоставки

Ще бъде от полза, ако изпълните следните изисквания, преди да започнете:

1) IFTTT акаунт (Можете да се регистрирате за безплатен акаунт на техния уебсайт или приложение)

Забележка: Регистрирайте се със същия имейл имейл, който е свързан с Google Assistant

2) Blynk акаунт (Можете да се регистрирате за безплатен акаунт, като изтеглите приложението blynk)

3) Устройство с Android с Google Assistant (Running Marshmallow 6.0 или по -нова версия, моята е 6.0)

Забележка: IOS устройството може да се използва с Google Assistant в него, но аз лично не съм го тествал.

4) Компютър с Windows с инсталирана „Arduino IDE“

Моля, вижте списъка с необходимите компоненти в следващата стъпка.

Стъпка 2: Необходими компоненти (с бързи спецификации)

Необходими компоненти (с бързи спецификации)
Необходими компоненти (с бързи спецификации)
Необходими компоненти (с бързи спецификации)
Необходими компоненти (с бързи спецификации)
Необходими компоненти (с бързи спецификации)
Необходими компоненти (с бързи спецификации)

Списък на необходимите компоненти:

1) Платка за микроконтролер Arduino Uno R3 (Количество: 1)

2) ESP8266 ESP-01 WiFi модул (количество: 1)

3) Релейни модули (едноканални 5V) (количество: 1)

4) Кабелни проводници (количество: според изискванията)

5) AC крушка, гнездо за електрическа крушка и електрически проводници (количество: 1 крушка, 1 гнездо за крушка, Електрически проводник с дължина според нуждите.)

1) Платка за микроконтролер Arduino Uno R3: Най-вероятно сте запознати с микроконтролерите Arduino. За тези, които не са, можете да го приемете като основен компонент в повечето от вашите IoT (Интернет на нещата) проекти. В този проект използвах "Arduino Uno". Базирано на ATmega328 MCU. Той има 14 цифрови входно/изходни пина (от които 6 пина могат да се използват за PWM изход), 6 аналогови входни пина, работи на 5V и входното напрежение варира от 7V-20V, 20 MHz тактова честота с 32 kb флаш памет.

Можем да свържем различни сензори към него и да поставим логиката си в код, за да получим необходимата функционалност от сензорите и да качим последната скица в Arduino чрез „Arduino IDE“.

2) ESP8266 ESP-01 WiFi модул: ESP8266 ESP-01 е най-достъпният WiFi модул и ние го използваме за свързване на нашия микроконтролер към WiFi мрежа и осъществяване на малки TCP/IP връзки. Той има 8 пина на чипа, които са Ground, TX, GPIO-2 (I/O с общо предназначение), CH_EN (Chip Enable), GPIO-0, Reset, RX, Vcc. Работи на захранване +3.3v.

3) Релеен модул: Тук използвам едноканален 5V релеен модул. Той има 3 пина за връзка с Arduino и 3 порта за свързване на устройства. Vcc щифт се използва за захранване на реле с 5V, заземен щифт, IN щифт за цифров вход. 3 порта са COM (общи), NO (нормално отворени), NC (нормално затворени) за захранване на устройствата (напр. Крушка).

4) Кабелни проводници: За връзка с Arduino. Можете да закупите комплект мъжки към мъжки, женски към женски, мъжки към женски джъмперни проводници от Amazon или от всеки друг пазар на вашия chioce.

5) AC крушка, гнездо за електрическа крушка и електрически проводници: За свързване на гнездо с релеен модул. Можете лесно да намерите тези артикули в къщата си или в близките магазини.

Стъпка 3: Конфигуриране на приложението Blynk

1) Отворете и влезте в приложението Blynk.

Ще получите енергиен баланс от 2000, който ще бъде използван за добавяне на приспособления. Тази енергия се възобновява при изтриване на приспособление, но няма да я получите обратно, ако я споделите. Затова го консумирайте разумно.

2) Създайте „Нов проект“и го кръстете както искате.

3) Изберете „Arduino Uno“от списъка с устройства и Тип връзка като „WiFi“, изберете вашата тема и кликнете върху „Създаване“.

4) Ще получите имейл с вашия оторизиран маркер. Моля, отбележете го.

5) Сега кликнете върху + знак отгоре и добавете един бутон.

6) Щракнете върху бутона и задайте изходния щифт на „Цифров“и „D7“. Задайте стойностите на щифтовете съответно на 1 и 0. (Тук може да възникне въпрос в съзнанието ви защо съм го настроил на (1, 0), а не (0, 1)? Е, обясних това в Стъпка 6 на тази инструкция). Задайте режима на превключване на „Натиснете“и наименувайте всички етикети, както желаете.

7) Отново кликнете върху + знак и добавете въвеждане на текст.

8) Щракнете върху Въвеждане на текст и задайте щифта „Output“на V0, „Character limit“на 5 и можете да наименувате други полета, както желаете.

9) Отворете командния ред на вашия компютър с активна интернет връзка и въведете следната команда:

ping blynk-cloud.com

Запишете IP адреса, който изглежда така

188.166.206.43

Това е IP адресът на blynk сървъра за вашата страна.

Сега преминете към следващата стъпка за създаване на аплет IFTTT.

Стъпка 4: Създаване на IFTTT аплет

Може би вече сте създали профила си в IFTTT.com или в приложението IFTTT. Ако не, моля, създайте го.

Стъпки за създаване на аплет IFTTT за Google Асистент:

1) Следвайте урока, споменат по -долу, заедно със стъпките, които споменавам тук:

Как да създам аплет IFTTT?

2) Създаване на тригер:

i) Търсете Google Assistant в лентата за търсене, докато създавате тригер.

ii) Изберете „Кажете фраза с текстова съставка“

iii) Можете да въведете три начина да кажете фразата си. Въведете фразите си с текстова съставка. Например въведох „turn $ lights“. Тук всичко, което ще кажа вместо $, ще бъде текстовата съставка. Също така въведете фразата, която искате да слушате от вашия Google Асистент.

iv) Изберете език и щракнете върху Създаване на тригер.

3) Изберете действие:

i) Търсете Webhooks в лентата за търсене, докато избирате действие.

ii) Кликнете върху „Направете уеб заявка“.

iii) Поставете следното в полето URL:

"ip адрес от предишната стъпка"/"Вашият маркер за удостоверяване"/pin/"Пин номер на въвеждане на текст blynk"

Поставете вашия IP адрес, маркер за удостоверяване и пинов номер (т.е. V0 или какъвто и да е пинов номер, който сте задали за въвеждане на текст в приложението blynk) без двойните кавички.

iv) Задайте „Метод“на PUT, „Тип съдържание“на application/json и копирайте следното в „Body“

["{{Текстово поле}}"]

4) Щракнете върху Край и преминете към следващата стъпка.

Стъпка 5: Работете

Работещи
Работещи

Работата е доста лесна, както можете да видите на снимката, когато кажем „OK Google“и дадем команда на Google Assistant „включи светлините“, аплетът IFTTT ще се задейства и „on“ще бъде предаден като текстова съставка на blynk приложение. Приложението Blynk го получава в полето за въвеждане на текст и го получаваме в кода на arduino, използвайки метода на библиотеката blynk param.asStr (); Когато се получи "включено", цифровият щифт D7 на платката arduino ще бъде настроен на 0 и светлините ще бъдат включени, а когато се получи "изключено", цифровият щифт D7 на платката arduino ще бъде зададен на 1 и светлините ще бъдат изключени (отново същото объркване от стъпка 3 … нали! Не се притеснявайте, обясних го в следващата стъпка.)

Стъпка 6: Връзки

Връзки
Връзки
Връзки
Връзки

В ума ви може да възникне въпросът, че "защо зададох щифт 7 на платката Arduino на 0 за висок вход и 1 за нисък вход на релейния модул?"

Отговорът е прост, защото релейният модул, който използвам, е активен ниско, което означава, че релето е активно, когато входът е 0 и неактивен, когато входът е 1. Но защо е по този начин? Това е така, защото когато Arduino се стартира, всички изходни щифтове на Arduino са настроени на високо по подразбиране, което ще настрои релето на активно при стартиране. Така че, за да настроите релето на неактивно в началото, то се активира ниско.

Сега нека проверим връзките.

Направих връзките между щифтовете на Arduino, ESP8266 и релейния модул на горната снимка. Споменах също връзките по -долу, защото знам колко страхотен е моят почерк:(Pin схема на ESP8266 ESP-01 е показана в стъпка 2.

Връзки между Arduino, ESP8266 и релеен модул:

Arduino ESP/реле

ПИН 7 ------------------------------------------------ ------- IN на реле

ПИН 2 ------------------------------------------------ - RX щифт на ESP

ПИН 3 ------------------------------------------------ - TX щифт на ESP

RESET -------------------------------------------- RESET щифт на ESP

GND 1 -------------------------------------------- Заземяващ щифт на ESP

GND 2 -------------------------------------------- Заземяващ щифт на релето

+3.3V ----------------------------------------------- ------- Vcc на ESP

+5V ------------------------------------------------ ------ Vcc на релето

Връзки между втория край на релейния модул и променливите светлини:

НЕ (нормално отворен) на релето -------------------- всеки един край на гнездото на крушката

COM (общ) на релето ------------------------- +ve край на AC захранването

оставащ край на захранването с променлив ток ---------------------- оставащ край на гнездото на крушката.

NC (нормално затворен) --------- оставете както е.

(Моля, вижте горната диаграма за по -добро разбиране)

Стъпка 7: Качване на код и тестване с Google Асистент

1) Отворете „Arduino IDE“на вашия компютър

2) Отворете под скицата в IDE

3) Заменете маркера за удостоверяване, WiFi ssid и паролата си с вашите идентификационни данни.

4) Качете кода на дъската на Arduino. (Винаги е най -добрата практика да качвате кода на неактивната платка Arduino и свързващите сензори след успешно качване)

5) Отворете приложението Blynk и включете вашата WiFi гореща точка.

6) Щракнете върху бутона за възпроизвеждане в горния десен ъгъл на приложението Blynk, за да стартирате проекта.

7) Ще бъдете уведомени веднага щом връзката бъде установена.

8) Сега е време за истинските неща. Кажете „OK Google“в телефона си, изчакайте Google Assistant да се отвори и сега изговорете фразата си като „включете светлините“, след няколко секунди Google Assistant ще ви отговори с фразата, която сте въвели, за да бъде слушана от Google Assistant в IFTTT като както в моя случай е "светлините са включени"

9) Кажете „изключете светлините“, за да ги изключите. Можете също да управлявате светлините си чрез бутона в приложението Blynk.

Честито! Светлините ви вече работят с вашия глас.

Препоръчано: