Съдържание:
- Консумативи
- Стъпка 1: Създаване на канал на Thingspeak
- Стъпка 2: Използване на IFTTT App
- Стъпка 3: Най -накрая Започнете да кодирате
Видео: LED управление, базирано на Google Assistant, използващо Raspberry Pi: 3 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:50
Хей!
В този проект ще внедрим контрол на светодиода, базиран на Google Assistant, използвайки Raspberry Pi 4, използвайки HTTP в Python. Можете да замените светодиода с крушка (очевидно не буквално, между вас ще ви е необходим релеен модул) или друг домакински уред, така че този проект да може да бъде допълнително реализиран за целите на домашната автоматизация.
Консумативи
Какво ще ви е необходимо за този проект:
1. Малина Пи
2. LED
3. Джъмперни проводници-2 (мъжки към женски)
4. Платформа
5. Приложение IFTTT (https://play.google.com/store/apps/details?id=com.ifttt.ifttt&hl=en_IN)
6. Профил на Thingspeak (https://thingspeak.com/)
Някои предпоставки:
1. Основи на работата в мрежа-HTTP
2. Python за достъп до уеб данни
Стъпка 1: Създаване на канал на Thingspeak
Ако сте нов в Thingspeak и никога не сте го използвали преди, следвайте стъпките по -долу:
Отидете на
Ще трябва да се регистрирате, преди да започнете да използвате Thingspeak
След като се регистрирате, отидете в секцията Канали
Под Канали изберете Нов канал (вижте изображението за справка)
В Нов канал ще видите различни информационни полета. Просто трябва да попълните полето Име. Можете да кръстите канала си както искате. Прикачих изображение, където съм кръстил канала си като Raspberry Pi 4. Оставете останалите кутии такива, каквито са.
Честито! Успешно създадохте канал за вашия IoT проект. (вижте приложеното изображение, където можете да видите моя канал на име Raspberry Pi 4 успешно създаден)
Стъпка 2: Използване на IFTTT App
Трябва да използваме това приложение за задействане на GET заявка за публикуване на данни във вашия създаден канал Thingspeak с помощта на Google Assistant. Мислете за това приложение като за интерфейс между Google Assistant и вашия канал Thingspeak.
След това създаваме GET заявки в приложението IFTTT.
Изтеглете приложението IFTTT от
Създайте своя акаунт
Отидете на Направете свои собствени аплети от нулата
Докоснете Ако тази опция
Изберете услуга за задействане като Google Assistant
В това изберете Изречете проста фраза
При тази опция ще се появят някои информационни полета. За целта се обърнете към изображенията и попълнете съответно подробностите! (има две изображения за тази цел: 1. За да включите светодиода 2. За да изключите светодиода)
Завършихме частта If This, която е Google Assistant. Сега избираме Тогава тази опция, която е Webhooks.
Под това изберете Направете уеб заявка
Вижте изображението за информация, която трябва да попълните в полетата. Вижте този URL адрес https://api.thingspeak.com/update?api_key=INSERT YOUR WRITE API KEY & field1 = 1
В горния URL адрес ще забележите, че споменах за ВМЕСТВАНЕ НА КЛЮЧА НА API ЗА НАПИСВАНЕ. Това е API ключът, който е идентичност на канала, който сте създали на Thingspeak (вижте изображението). Write API key ще ви помогне да запишете конкретни данни в канала си и по същия начин Read API key ще ви помогне да получите данни от канала.
Освен вашия ключ за запис на API, останалата информация от полетата остава същата.
И така, тук сте създали тригер, когато когато кажете на вашия Google Асистент „Включете светодиода“, той ще изпрати „1“до вашия канал Thingspeak.
Сега по подобен начин трябва да създадете нов аплет в приложението IFTTT за изключване на светодиода. Прикачих изображения, ако сте объркани за същото. В противен случай процедурата за изключване на светодиода е същата като тази на това, което сте направили по -горе, с изключение на някои малки промени.
Стъпка 3: Най -накрая Започнете да кодирате
Ще обясня основната цел на кода на Python. Трябва да извлечем данните от канала на Thingspeak, които ще бъдат или „1“, или „0“въз основа на това, което казвате на вашия Google Асистент. Трябва да включим или изключим светодиода въз основа на това. Ако качената стойност на канала на Thingspeak е "1", тогава включваме светодиода, а ако е "0", го изключваме.
В кода ще ви трябват две неща: 1. Вашият API ключ за четене 2. Вашият идентификатор на канал (вижте изображенията за същото)
Ето кода (ако приемем, че знаете предпоставките за HTTP и Python):
импортиране на urllib
заявки за импортиране
импортиране на json
време за импортиране
импортирайте RPi. GPIO като GPIO
GPIO.setmode (GPIO. BOARD)
GPIO.setup (7, GPIO. OUT)
опитвам:
докато (1):
URL = 'https://api.thingspeak.com/channels/INSER YOUR CHANNEL ID/fields/1.json? Api_key =' KEY = 'ВМЕСТВАНЕ НА КЛЮЧА НА ПРОЧЕТАНЕТО
HEADER = '& results = 2'
NEW_URL = URL+KEY+HEADER
#print (NEW_URL)
get_data = requests.get (NEW_URL).json ()
#print (get_data)
feild_1 = get_data ['емисии']
#print ("Поле:", feild_1)
t =
за x в feild_1:
t.append (x ['field1'])
печат (t [1])
ако int (t [1]) == 1:
GPIO.изход (7, 1)
elif int (t [1]) == 0:
GPIO.изход (7, 0)
с изключение на KeyboardInterrupt:
GPIO.cleanup ()
Препоръчано:
Дистанционно управление, базирано на браузър Arduino (Linux): 9 стъпки (със снимки)
Дистанционно управление, базирано на браузър Arduino (Linux): Имаме деца. Обичам ги на парчета, но продължават да крият дистанционното за сателита и телевизията, когато пускат детските канали. След като това се случва ежедневно в продължение на няколко години и след като скъпата ми съпруга ми позволи да имам
Arduino и MPU6050 базирано цифрово духовно ниво: 3 стъпки
Arduino и MPU6050 базирано цифрово духовно ниво: Добре дошли в първата ми инструкция! Надявам се да го намерите информативно. Моля, не се колебайте да оставите обратна връзка, независимо дали е положителна или отрицателна. Този проект е да направите arduino & Цифров нивелир, базиран на MPU6050. Докато завършеният дизайн и
Реинженеринг на серийно базирано устройство: 6 стъпки (със снимки)
Реинженеринг на серийно базирано устройство: Регенериране на сериен интерфейс Целенасочено за регенериране на Fluke 6500 Ще направя това, защото оригиналният софтуер на Fluke е много "неприятен за потребителя, не интуитивен" или как колегата ми казва "f*d up". Нека започнем мистерията
Arduino базирано управление на Nextion Touch: 4 стъпки
Arduino базирано управление на Nextion Touch: Един приятел търсеше готино решение за управление на ОВК (отопление, вентилация, климатизация) на колата си чрез сензорен екран и Arduino. Идеята е вдъхновена от мой по -стар проект за вътрешното управление на опъната лимузина, но тя трябва
Разширено DC електронно натоварване, базирано на Arduino: 5 стъпки
Разширено базирано на Arduino DC електронно зареждане: Този проект се спонсорира от JLCPCB.com. Проектирайте проектите си с помощта на онлайн софтуер EasyEda, заредете съществуващите файлове на Gerber (RS274X) и след това поръчайте частите си от LCSC и изпратете целия проект директно до вашата врата. Аз бях в състояние