תוכן עניינים:
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
במדריך זה אני הולך להראות לך כיצד לזהות את אירוע פתיחת הדלת ולשלוח הודעה באמצעות Gmail באמצעות Arduino Uno.
אם אתה מתחיל, אתה יכול ללמוד על wifi וחיישן ב- Arduino - WiFi ו- Arduino - חיישן דלתות.
בואו נתחיל!
זיהוי אירוע פתיחת דלת חיישן מגנטי בו השתמשתי כולל שני חלקים: חיישן ומגנט. כאשר שני חלקים נמצאים בקרבת מקום, סיכת הפלט של החיישן היא גבוהה, אחרת סיכת הפלט נמוכה. תוך שימוש בתכונה זו, התקנתי חלק אחד מהחיישן על עלה הדלת והשני על משקוף הדלת. על ידי בדיקת מצב סיכת הפלט, נוכל לזהות מתי הדלת נפתחת ולאחר מכן להעביר התראה או לשלוח הודעה.
אירוע טיפול
כאשר מתרחש אירוע פתיחת הדלת, נשלחת הודעה באמצעות Gmail.
שלב 1: דברים שאנחנו צריכים
1. ארדואינו UNO או Genuino UNO
2. מגן PHPoC עבור Arduino
3. חיישן מגנטי
שלב 2: הרכבה
1. ערימת מגן PHPoC על Arduino.
2. חבר כבל LAN למגן עבור אתרנט.
3. הצמד חיווט בין Arduino לחיישן.
---- 5v -------- סיכה אדומה.
---- A0 ------- סיכה שחורה.
שלב 3: התקן ערכה זו על הדלת
1. חבר את חלק החיישן, ערכת Arduino (כולל מגן PHPoC) למשקוף הדלת
2. חבר את חלק המגנט על עלה הדלת.
3. כוח ארדואינו
4. התחבר לאינטרנט באמצעות כבל LAN או USB Wifi Dongle.
שלב 4: הורד והתקן את הספרייה ב- Arduino
התקן את ספריית PHPoC ו- ezButton
שלב 5: קוד ארדואינו
#לִכלוֹל
#כלול דוא"ל PhpocEmail; לחצן ezButton (A0); // צור אובייקט כפתור המתחבר לסיכה A0; הגדרת void () {Serial.begin (9600); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET | PF_LOG_APP); //Phpoc.beginIP6 (); אל תגיב על שורה זו אם אתה מתכוון להשתמש ב- IPv6 button.setDebounceTime (100); // הגדר את זמן הניתוק ל -100 אלפיות השנייה} לולאת חלל () {button.loop (); // חייבים לקרוא לפונקציית הלופ () תחילה אם (button.isPressed ()) {// אם הדלת נפתחת … email.setOutgoingServer ("smtp.gmail.com", 587); email.setOutgoingLogin ("מזהה Google", "סיסמת Google"); email.setFrom ("כתובת Gmail", "שם השולח"); email.setTo ("כתובת הדוא"ל של המקלט", "שם המקלט"); email.setSubject ("הדלת נפתחת. [#905]"); // נושא הדואר // תוכן הדואר email.beginMessage (); email.println ("#905"); email.println (""); email.println ("הדלת נפתחת."); email.endMessage (); if (email.send ()> 0) // Send Email Serial.println ("הדואר שלך נשלח בהצלחה"); אחרת Serial.println ("הדואר שלך לא נשלח"); } אחרת אם (button.isReleased ()) {// אם הדלת סגורה … // כתוב קודים באותו אופן}}
שלב 6: הפניות לפונקציות
- לוּלָאָה()
- להכין()
- Serial.begin ()
- Serial.println ()
- לְעַכֵּב()
- עבור לולאה
- בעוד לולאה
- אחרת
- String.toInt ()