Оглавление:

Датчик движения Raspberry Pi IFTTT: 4 шага
Датчик движения Raspberry Pi IFTTT: 4 шага

Видео: Датчик движения Raspberry Pi IFTTT: 4 шага

Видео: Датчик движения Raspberry Pi IFTTT: 4 шага
Видео: Работа с облаком Microsoft Azure на Omega 2 2024, Июль
Anonim
Датчик движения Raspberry Pi IFTTT
Датчик движения Raspberry Pi IFTTT
Датчик движения Raspberry Pi IFTTT
Датчик движения Raspberry Pi IFTTT

Привет. Я учусь в 4-м классе и сегодня мы будем делать датчик движения IFTTT.

Запасы

1x маленькая картонная коробка

1x raspberry pi модель b + или a +

1x датчик PIR https://www.amazon.com/gp/product/B07KZW86YR/ref=p…(Various) перемычки

1x умная лампочка (необязательно)

Клейкая лента (необязательно)

аккаунт ifttt

Шаг 1: Вырежьте:

Резать
Резать

Вырежьте небольшое отверстие посередине верхней части коробки.

Шаг 2: Присоединение ИК-датчика:

Присоединение датчика PIR
Присоединение датчика PIR
Присоединение датчика PIR
Присоединение датчика PIR

Подключите контакт датчика PIR с надписью VCC к контакту 5V на Raspberry Pi. Это обеспечивает питание ИК-датчика. Подключите тот, который обозначен GND, к контакту заземления на Pi (также обозначенному GND). На этом схема завершена. Подключите тот, который помечен как OUT, к любому пронумерованному выводу GPIO на Pi. В этом примере мы выбрали GPIO 4. Вывод OUT будет выводить напряжение, когда датчик обнаруживает движение. Затем напряжение будет получено Raspberry Pi.

Шаг 3: Настройте Webhooks:

Настройте Webhooks
Настройте Webhooks

создайте новый апплет, а затем выберите Webhooks. а затем сделайте то же самое с уведомлениями.

Шаг 4: Код:

Для python 3 или thonny

#! / usr / bin / python # Импортировать RPi. GPIO как GPIOimport timeimport requests # Установить соглашение об именах GPIO GPIO.setmode (GPIO. BCM) # Отключить предупреждения GPIO GPIO.setwarnings (False) # Установить переменную для хранения идентификатора GPIO Pinpinpir = 17 # Установить вывод GPIO как input GPIO.setup (pinpir, GPIO. IN) # Переменные для хранения текущего и последнего состояний currentstate = 0previousstate = 0 try: print ("Ожидание установления связи PIR…").input (pinpir) == 1: currentstate = 0 print ("Ready") # Цикл, пока пользователи не выйдут с помощью CTRL-C, пока True: # Прочитать состояние PIR currentstate = GPIO.input (pinpir) # Если PIR срабатывает, если currentstate == 1 и previousstate == 0: print ("Обнаружено движение!") # Ваш URL IFTTT с именем события, ключом и параметрами json (значениями) r = requests.post ('https://maker.ifttt.com/trigger / YOUR_EVENT_NAME / with / key / YOUR_KEY_HERE ', params = {"value1": "none", "value2": "none", "value3": "none"}) # Записать новое предыдущее состояние previousstate = 1 # Подождать 120 секунд перед зацикливанием ain print ("Ожидание 120 секунд") time.sleep (120) # Если PIR вернулся в состояние готовности elif currentstate == 0 и previousstate == 1: print ("Ready") previousstate = 0 # Подождите 10 миллисекунд..sleep (0.01) за исключением KeyboardInterrupt: print ("Quit") # Сбросить настройки GPIO GPIO.cleanup ()

Наслаждаться!

Рекомендуемые: