Съдържание:

Ok Google Water Waterer/пистолет за вода: 20 стъпки
Ok Google Water Waterer/пистолет за вода: 20 стъпки

Видео: Ok Google Water Waterer/пистолет за вода: 20 стъпки

Видео: Ok Google Water Waterer/пистолет за вода: 20 стъпки
Видео: grandson - Blood // Water (Official Audio) 2024, Ноември
Anonim
Ok Google Google Waterer/воден пистолет
Ok Google Google Waterer/воден пистолет

Това е забавен проект, който използва началната страница на Google или всеки телефон с помощник на Google, за да пръска вода върху някого или да полива някои растения. Той също така има много потенциално приложение за други приложения като светлини, отопление, вентилатори и т.н. Ако ви харесва това, моля, гласувайте за тези проекти в конкурса IOT. Благодаря.

Стъпка 1: Необходими ресурси

Необходими ресурси
Необходими ресурси

Ще ви трябва следното:

  • Малина пи (всеки модел, който има достъп до интернет)
  • 12v водна помпа (това е, което използвах)
  • 12v захранване (използвайте този или този, който лежи наоколо)
  • 2 -канално реле 5V (това е типът, който използвах)
  • Някои женски към женски джъмпери водят
  • Пластмасова кутия за задържане на вода
  • Някакъв начин водата да се изцеди от помпата (огънах пластмасова тръба, но можете просто да използвате сламка)

Използвахме релета, тъй като позволява да го включите дистанционно с малиново пи, вместо да се налага физически да бъдете там, за да го включите, както бихте направили, ако беше просто превключвател.

Стъпка 2: Google Асистент

Уверете се, че имате някакъв начин за достъп до Google Асистент. Бихте могли да използвате начална страница на Google или телефон.

Стъпка 3: Изрязване на проводници

Рязане на проводници
Рязане на проводници

Използвайте ножове за рязане и след това отстранете краищата на вашето 12v захранване и помпа, така че да могат да бъдат прикрепени към релето. Не забравяйте да отстраните достатъчно обвивката, за да осигурите стабилна връзка.

Стъпка 4: Прикрепете помпата към релето

Прикрепете помпата към релето
Прикрепете помпата към релето
  1. Развийте средния извод на двете релета
  2. Поставете проводници от водната помпа
  3. Завийте отново

Стъпка 5: Прикрепете захранването към релето

Прикрепване на захранването към релето
Прикрепване на захранването към релето
  1. Развийте клемите
  2. Включете проводниците от 12v захранването
  3. Завийте ги обратно на място

Стъпка 6: Свързване на Raspberry Pi към релето

Свързване на Raspberry Pi към реле
Свързване на Raspberry Pi към реле

Свържете малиново пи към релето, както е показано на диаграмата по -горе. Ще трябва да свържете релето към земя, 5v и 2 GPIO пина.

Стъпка 7: Закрепване на помпата

Закрепване на помпата
Закрепване на помпата

Използвайте blu-tack или тиксо, за да закрепите помпата в пластмасов контейнер.

Стъпка 8: Насочване на водата

Режисура вода
Режисура вода
Режисура вода
Режисура вода

Ако искате водата да изпръска някого в лицето, трябва да го насочите. За да направя това, използвах топлинен пистолет, за да огъна пластмасова тръба във формата, показана по -горе. След това залепих капака на химикалката отгоре. Като алтернатива можете да използвате сламка.

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

Стъпка 9: Съберете всичко заедно

Сглобявайки всичко заедно
Сглобявайки всичко заедно
Сглобявайки всичко заедно
Сглобявайки всичко заедно
Сглобявайки всичко заедно
Сглобявайки всичко заедно

Добавих още една пластмасова кутия и сложих малиновото пи и релето в него, за да спра да се намокри.

Включих схемата по -горе, за да направя схемата малко по -ясна.

Стъпка 10: Тестването на хардуера работи

За да тествате работата на помпата, изпълнете следния код на малиновото пи. Това трябва да изключи и след това да включи помпата (или обратното).

от gpiozero LED за импортиране

import time #this ще импортира съответните модули, от които се нуждаем за този код

реле = LED (14)

relay2 = LED (15) #присвояване на релета на LED

докато е вярно:

relay.on () #предположихте… включване на релето relay.off () #предположихте … изключване на времето за реле.sleep (1) #спане за 1 секунда relay.on () #relay on relay.off () #relay off time.sleep (1) #seping

Стъпка 11: Импортиране на колба

Най -лесният начин асистентът на Google да контролира малиновото пи е като го накара да хоства уеб сървър. След това можем да накараме Google да посети страница на този сървър, когато кажете нещо и кодирате малиновото пи, за да включите и изключите релето при посещение на сървъра. Ако искате по-задълбочен урок за колба: посетете този урок от raspberry pi.

На вашето малиново пи импортирайте модула на колбата на python.

  1. Уверете се, че сте свързани с интернет
  2. Отворете терминал
  3. Напишете в:

sudo pip3 инсталира колба

Ако това не работи:

  • Уверете се, че сте свързани с интернет
  • Вижте това ръководство

Стъпка 12: Създайте папка за нашата програма и преминете към нея

Направете това, като отворите терминал и въведете:

mkdir webapp

cd webapp

Стъпка 13: Кодиране на уеб сървър

  1. Отворете празен ход 3
  2. Файл> Създай нов
  3. Запазете го в папката на уеб приложението, която току -що създадохте
  4. Вмъкнете този код

от колба за импортиране Flaskот gpiozero внос LED време за импортиране #това са модули за импортиране, необходими за този проект реле = LED (14) реле2 = LED (15) #присвояване на релета LED приложение = колба (_ име_) #присвояване на колба име на променлива, така че по -лесно е да стартирате код с него по -късно на @app.route ('/', methods = ['GET']) #правене на GET на уеб страницата "" "тази функция ще върне това, което се показва на главната страница "" "def index (): връщане" Main page " @app.route ('/on') #включване на релетата чрез функцията по -долу" "" включване на релетата и отпечатване, за да се провери дали функцията работи правилно " "" def on (): print ("здравей") relay.on () relay2.off () връщане 'on' @app.route ('/off') #изключване на релетата чрез функцията по -долу "" "завъртане изключете релетата и отпечатайте hi, за да проверите дали функцията работи правилно "" "def off (): print (" здравей ") relay.off () relay2.on () връщане 'off' @app.route ('/go') #стартиране на функцията go "" "тази функция включва релетата, така че пръска вода" "" def go (): relay.on () r elay2.off () time.sleep (3) relay.off () relay2.on () return ('go') "" "достъп до уеб страницата през съответния порт (8000 обикновено е домашен) и хост" "" ако _name_ == '_main_': app.run (отстраняване на грешки = вярно, порт = 8000, хост = '0.0.0.0')

Коментарите обясняват какво се случва в кода

Стъпка 14: Тестването на кода работи

Отворете уеб браузъра си и въведете URL адреса

Трябва да видите бял екран, но трябва да можете да чуете щракването на релето или ако помпата е включена, тя трябва да продължи.

За да изключите помпата, отидете на

Забележка: 127.0.0.1 означава „дом“, т.е. този компютър: 5000 означава „порт 5000“, който е портът, на който работи уеб сървърът. Ако това работи, можете да направите още една крачка напред:

1. Намиране на вашия малинов pis ip адрес, като въведете:

име на хост -I

2. На всеки компютър, свързан към същия wifi като вашия пи, посещавате pisipadress/on

Това трябва да включи релето.

Това показва как можете да контролирате вашето малиново пи от всеки компютър, свързан към същия wifi като вашия малинов пи.

Стъпка 15: Тунелиране

Така че Google Home може да посети този уебсайт, ще трябва да създадете тунел, така че компютри, които не са свързани към същия ip адрес, тъй като все още можете да изключите и включите релето. Можете да направите това с ngrok. Това е програма, която можете да инсталирате на малиново пи, която ще ви позволи да посетите уебсайта на колбата от всеки компютър.

Посетете уебсайта им за повече информация:

Стъпка 16: Инсталиране на Ngrok

Въведете тази връзка на вашето малиново пи: https://ngrok.com/download и следвайте инструкциите за изтегляне и настройка на ngrok.

Стъпка 17: Тестване на Ngrok

Уверете се, че вашият флаш сървър работи. Отворете друг терминал и въведете cd webapp

След това стартирайте ngrok, като въведете

./ngrok http 5000

Това трябва да ви покаже URL адрес, към който трябва да можете да отидете на всяко устройство. Копирайте това и го изпратете по имейл за следващата стъпка

Ако това не работи:

  1. Уверете се, че колбата работи
  2. Уверете се, че използвате ngrok в същата папка като програмата за колба
  3. Уверете се, че сте копирали правилната връзка (тя се променя всеки път, когато рестартирате програмата)

Стъпка 18: IFFF

IFFF: If This Then Това е безплатна програма, която може да се използва, за да накарате вашия google home да посети уеб сървър, когато му кажете нещо, За да настроите това, изпълнете следните стъпки:

  1. Или посетете https://ifttt.com/ или изтеглете приложението
  2. Създай профил
  3. Щракнете върху създаване на нов аплет (понякога под моите аплети)
  4. Щракнете върху това
  5. Потърсете в Google и изберете Google Assistant
  6. Щракнете върху кажете проста фраза
  7. Под това, което искате да кажете, поставете „активиране на воден пистолет“
  8. Щракнете върху създаване на тригер
  9. Щракнете върху това
  10. Търсене в мрежата
  11. Щракнете върху webnooks
  12. Щракнете върху Направете уеб заявка
  13. Под URL въведете URL адреса, който ngrok ви даде по -рано/go
  14. Под Метод изберете GET
  15. Под Съдържание изберете текст/обикновен
  16. Щракнете върху Създаване
  17. Щракнете върху Край

Стъпка 19: Готово

Сега, когато кажете „хей google“(поставете избраната от вас фраза), помпата трябва да се включи.

Ако това не работи (отне ми около 15 опита да го накарам да работи):

  1. Уверете се, че всички програми работят
  2. Уверете се, че всички потенциални клиенти са свързани
  3. Уверете се, че URL адресът, който сте въвели в IFTT, е най -новият
  4. Уверете се, че малиновото пи е свързано с интернет

Стъпка 20: IOT конкуренция

Ако този урок ви е харесал, моля, гласувайте за нас в състезанието IOT. Много благодаря.

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