جدول المحتويات:

مستشعر حركة Raspberry Pi IFTTT: 4 خطوات
مستشعر حركة Raspberry Pi IFTTT: 4 خطوات

فيديو: مستشعر حركة Raspberry Pi IFTTT: 4 خطوات

فيديو: مستشعر حركة Raspberry Pi IFTTT: 4 خطوات
فيديو: How to make a security system using Raspberry Pi board 2024, سبتمبر
Anonim
مستشعر حركة Raspberry Pi IFTTT
مستشعر حركة Raspberry Pi IFTTT
مستشعر حركة Raspberry Pi IFTTT
مستشعر حركة Raspberry Pi IFTTT

أهلا. أنا طالب بالصف الرابع وسنقوم اليوم بصنع مستشعر حركة IFTTT

اللوازم

1x صندوق كرتون صغير

1x Raspberry Pi موديل b + أو A +

1x مستشعر PIR https://www.amazon.com/gp/product/B07KZW86YR/ref=p… (مختلف) أسلاك توصيل

1x مصباح ذكي (اختياري)

شريط لاصق (اختياري)

حساب ifttt

الخطوة 1: القص:

يقطع
يقطع

اقطع ثقبًا صغيرًا في منتصف الجزء العلوي من الصندوق.

الخطوة الثانية: توصيل مستشعر PIR:

إرفاق مستشعر PIR
إرفاق مستشعر PIR
إرفاق مستشعر PIR
إرفاق مستشعر PIR

قم بتوصيل دبوس مستشعر PIR المسمى VCC بالدبوس 5 فولت على Raspberry Pi. يوفر هذا الطاقة لمستشعر PIR. قم بتوصيل الجهاز المسمى GND بالدبوس الأرضي على Pi (المسمى أيضًا GND). هذا يكمل الدائرة. قم بتوصيل الدائرة المسمى OUT بأي دبوس GPIO مرقم على Pi. في هذا المثال ، اخترنا GPIO 4. سينتج دبوس OUT جهدًا عندما يكتشف المستشعر الحركة. سيتم بعد ذلك استقبال الجهد بواسطة Raspberry Pi.

الخطوة 3: إعداد Webhooks:

إعداد Webhooks
إعداد Webhooks

أنشئ تطبيقًا صغيرًا جديدًا ، ثم حدد Webhooks. ثم افعل الشيء نفسه مع الإخطارات.

الخطوة 4: الكود:

ل python 3 أو thonny

#! / usr / bin / python # Importsimport RPi. GPIO كطلبات GPIOimport timeimport # قم بتعيين اتفاقية تسمية GPIO # تعيين دبوس GPIO كمدخل GPIO.setup (pinpir ، GPIO. IN) # متغيرات للاحتفاظ بالحالة الحالية والأخيرة = 0 الحالة السابقة = 0 حاول: طباعة ("في انتظار تسوية PIR …") # Loop حتى يصبح إخراج PIR 0 بينما GPIO.input (pinpir) == 1: currentstate = 0 print ("Ready") # Loop حتى إنهاء المستخدمين باستخدام CTRL-C بينما صحيح: # قراءة PIR state currentstate = GPIO.input (pinpir) # إذا تم تشغيل PIR إذا كانت الحالة الحالية == 1 والحالة السابقة == 0: طباعة ("تم اكتشاف الحركة!") # عنوان URL الخاص بك IFTTT مع اسم الحدث والمفتاح ومعلمات json (القيم) r = request.post ('https://maker.ifttt.com/trigger / YOUR_EVENT_NAME / with / key / YOUR_KEY_HERE '، params = {"value1": "none"، "value2": "none"، "value3": "none"}) # سجل الحالة السابقة الجديدة للحالة السابقة = 1 # انتظر 120 ثانية قبل حلقات ag ain print ("Waiting 120 seconds") time.sleep (120) # إذا عاد PIR إلى حالة الاستعداد elif currentstate == 0 والحالة السابقة == 1: print ("Ready") السابقة = 0 # انتظر 10 مللي ثانية مرة.sleep (0.01) باستثناء KeyboardInterrupt: print ("Quit") # إعادة تعيين إعدادات GPIO GPIO.cleanup ()

يتمتع!

موصى به: