תוכן עניינים:

שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים !: 6 שלבים (עם תמונות)
שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים !: 6 שלבים (עם תמונות)

וִידֵאוֹ: שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים !: 6 שלבים (עם תמונות)

וִידֵאוֹ: שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים !: 6 שלבים (עם תמונות)
וִידֵאוֹ: סרטון מדהים ומרגש עם מסר חזק במיוחד 2024, נוֹבֶמבֶּר
Anonim
שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים!
שמור על תינוקך קריר בקיץ הזה - שליטה במעריצים מטומטמים עם דברים חכמים!
שמירה על קור רוח התינוק בקיץ הקרוב - שליטה במעריצים מטומטמים עם דברים חכמים!
שמירה על קור רוח התינוק בקיץ הקרוב - שליטה במעריצים מטומטמים עם דברים חכמים!

נכון לפני שבועיים בזמן כתיבת זה, הפכתי לאבא לתינוק מדהים!

כשהעונות משתנות, הימים מתארכים והטמפרטורות מתחממות, חשבתי שזה יהיה טוב שיש איזה צג בחדר הילדים כדי לבדוק כמה חם שם למעלה!

לא התעסקתי עם הרבה פייתון במהלך השנים אבל רציתי לחזור לזה מאז השנה הראשונה שלי באוניברסיטה לפני כמעט 5 שנים! בגלל זה חשבתי שעדיף לתעד את מה שעשיתי, לעזור לי אחר כך, לעזור גם לכל מי שרוצה לעשות את אותו הדבר!

באמצעות פי פטל, Enviro pHAT ותקע קאסה חכם TP-link, אתה יכול לשלוט על התקעים באמצעות מסגרת IFTTT! זה ממש פשוט לביצוע ואתה יכול אפילו לשנות את ההדרכה הזו כדי לשלוט בכל דבר באמצעות חיישנים שונים והתקנים שונים! מקווה שתמצא את זה שימושי. אם אתה אוהב את זה להנחיה, אנא אל תשכח להצביע להגשה שלי בתחרות החיישנים!: D (סליחה על השאלות), זו הפעם הראשונה שאני עושה את זה ורוצה שיהיה לי סיכוי אפשרי לזכות במשהו על כל הזמן שאני משקיע בזה

** עריכה ** בימים הקרובים אני הולך לדחוף את הנתונים האלה ללוח של Grafana, אם אתה חושב שזה יהיה טוב, הודע לי על כך!: ד

בואו ניכנס לזה ממש…

אספקה

  1. כל פטל פטל יעשה אבל בחרתי ב- Zero W מכיוון שזה מה שהייתי צריך למסור בהגרלה שלי, יש לו גם את גורם הצורה הקטן ביותר עם WiFi מופעל כברירת מחדל! - פטל PI אפס w
  2. כרטיס SD, לכל אחד יש העדפות שונות לגבי אלה, אבל השתמשתי באחת כאלו! - כרטיס מיקרו אס די
  3. אם אתה תקוע, הנה התיעוד הרשמי הנתמך לכרטיסי SD -כרטיסי SD נתמכים רשמיים
  4. חוטי מגשר (יסביר בהמשך) - חוטי מגשר
  5. Enviro pHAT לכל החיישנים המפוארים! - Envrio-pHAT
  6. תקע חכם, הלכתי עם TP-Link מכיוון שאתה לא צריך שום רכזות מפוארות בכדי לגרום לזה לצאת מהקופסה! - תקע חכם!
  7. מאוורר מטומטם לשליטה, אתה יכול להשתמש בכל מאוורר, רק מצאתי מאוורר באמזון, אבל כל מאוורר שקעי קיר יעבוד מצוין - מאוורר מטומטם
  8. מגהץ, אך אם אינך מעוניין להשתמש במגהץ, תוכל לקבל כותרות לחיצה על ה- PI וה- pHAT שלך-GPIO-hammer-header

על מנת שהחיבור בין TP-links kasa ו- IFTTT יעבוד, יהיה עליך להגדיר חשבון kasa ו- IFTTT של TP-link לפני שתתחיל בהוראה זו. כשתקבל את התקע החכם TP-link ההוראות המצורפות לתקע החכם ינחו אותך בתהליך ההתקנה, כולל אופן מתן שם התקע והפונקציות הבסיסיות שלו

ברגע שיש לך את כל רשימת הקניות שלך הגיע הזמן להרכיב את הכל!

שלב 1: הגדרת ה- Pi Raspberry שלך

הדמיית כרטיס ה- micro-SD שלך קבל את התמונה האחרונה והגדולה ביותר של Raspbian, גרסת הלייט תסתדר מצוין, אם לא טוב יותר עבור אפס w! -

כתוב את התמונה הזו לכרטיס ה- SD, תזדקק לקורא ולדמות, אני משתמש באצ'ר -

הגדרת Wifi (אופציונלי) אם ל- PI שלך יש WIFI מובנה, למה שלא תגדיר אותו עכשיו כדי לחסוך הרבה התעסקויות עם קונסולות מאוחר יותר!

לאחר צילום ה- pi שלך, הכונן נפלט. נתק וחבר את כרטיס ה- SD כך שהוא יזוהה שוב על ידי המכשיר שלך. אמורה להופיע מחיצת אתחול.

צור קובץ ריק שנקרא wpa_supplicant.conf בתוך מחיצת האתחול של ה- pi שלך, כאן תוכל למקם את הקובץ הבא בקובץ החדש הזה:

רשת = {

ssid = "YOUR_SSID" psk = "YOUR_WIFI_PASSWORD" key_mgmt = WPA-PSK}

הפעלת SSH ב- PI לבחירתך (אופציונלי)

כברירת מחדל, תמונת Raspbian נקייה תהיה מושבתת מ- ssh שלה. יהיה עליך לאתחל את המערכת, לחבר מקלדת ותצוגה ל- Pi ולאחר מכן לאפשר ssh. שלב זה יאפשר ssh בעת האתחול הראשון. במחיצת האתחול, צור קובץ חדש בשם ssh. קובץ ריק עם השם הזה בדיוק.

לאחר שתשלים אותם שני שלבים אופציונליים, ה- PI שלך יתחבר אוטומטית ל- WIFI שלך ויפעיל את SSH כברירת מחדל.

לאחר שצילמת והגדרת את כרטיס ה- micro-SD, תוכל להכניס אותו ל- PI או לבחירה ולהפעיל אותו!

לאחר עדכון ה- PIO שלך לאחר שהפעלת את ה- PI, תוכל למצוא את כתובת ה- IP שלך ב- PI בהגדרות הנתבים האלחוטיים שלך. רוב הנתבים שונים, כך שזה יהיה קשה לכתוב מדריך לצערי!

לאחר שיש לך את ה- IP של ה- PI שלך, התחבר באמצעות SSH והתחבר באמצעות הדברים הבאים:

שם משתמש: pi

סיסמא: פטל

ברגע שיש לך הפעלת SSH פעילה עם ה- PI שלך, תרצה לעדכן אותה, פשוט הפעל את להלן עם ה- Y או N המתאים לאורך כל עדכון אותה:

עדכון sudo apt-get

sudo apt-get upgrade

תמיד טוב לאתחל PI לאחר התקנת עדכונים חדשים כדי לוודא שהוא רץ מחדש עם העדכונים האחרונים, ניתן להשיג זאת באמצעות

sudo reboot -n

עכשיו זה ה- PI מוכן, הגיע הזמן להמשיך לשלב הבא!

שלב 2: הגדרת ה- PHAT של Enviro

הגדרת ה- PHAT של Enviro
הגדרת ה- PHAT של Enviro
הגדרת ה- PHAT של Enviro
הגדרת ה- PHAT של Enviro

חיבור pHAT של Enviro

לאחר שה Pi שלך מעודכן, תוכל לחבר את pHAT Enviro ל- PI לפי בחירתך!

*** כדי לוודא שלא תפגע ב- PI או ב- pHAT שלך, הקפד לכבות אותו תחילה ***

כאן השתמשתי במוליכות המגשר מכיוון שאתה יכול לקבל שטיפה תרמית מהמעבד שמתחמם תחת ה- pHAT של Enviro. חום נוסף זה יכול לשנות את קריאות הטמפרטורה שתקבלו מאוחר יותר. בגלל זה השתמשתי ב -5 מוליכים מגשרים בפינים למטה:

  • פין 3 - GPIO2 (SDA I2C)
  • פין 5 - GPIO3 (SCL I2C)
  • פין 7 - GPIO4
  • סיכה 6 - טחון
  • סיכה 4 - 5V

אנא בדוק את תרשים החיווט בראש שלב זה לעיון חזותי או הקישור שלהלן:

pinout.xyz/pinout/enviro_phat

(סליחה על עבודת הצבע המסריחה)

בעת חיבור ה- pHAT שלך, וודא שהגדרת אותו בצורה הנכונה או שאולי אתה עלול לפגוע בו !!! לשם כך, הגדרתי את שלי כך שכותרות ה- ANALOG IN מכוונות לחריץ כרטיס ה- SD, מאוחר יותר זה התהפך בתמונות שלי בכדי שהוא יתאים ל"נשא "שלי.

התקנת התלות

הפעל את ה- PI שלך מחדש ו SSH חזרה

לאחר שתחזור ל- PI שלך, הפעל את הפעולות הבאות להתקנת חבילות ותוכנות נדרשות עבור ה- pHAT שלך של Enviro:

סלסול https://get.pimoroni.com/envirophat | לַחֲבוֹט

הקפד ללחוץ על Y או N בעת הצורך.

לאחר השלמת ההתקנה, הקפד להפעיל מחדש את ה- PI שלך …

sudo reboot -n

בדיקת ה- pHAT

כדי לוודא שה- pHAT שלך מחובר כראוי, תוכל להיכנס למודול פייתון ולהריץ כמה פקודות על ידי החזרת PI והקלדת פייתון, פעם אחת במודול פייתון הקלד את להלן:

ממזג האוויר לייבא envirophat

הדפסה (weather.temerpature ())

זה אמור להראות לך קריאה כמו להלן:

>> ממזג האוויר לייבא envirophat

>> הדפס (מזג אוויר.טמפרטורה ()) 24.0806166987

פתרון תקלות

אם אתה מקבל משהו בסגנון שגיאה להלן:

Traceback (השיחה האחרונה האחרונה): קובץ "", שורה 1, בקובץ "/usr/lib/python2.7/dist-packages/envirophat/bmp280.py", שורה 134, בטמפרטורת self.update () קובץ " /usr/lib/python2.7/dist-packages/envirophat/bmp280.py ", שורה 169, בעדכון אם self._read_byte (REGISTER_CHIPID) == 0x58: # לבדוק חיישן מזהה 0x58 = קובץ BMP280"/usr/lib/ python2.7/dist-packages/envirophat/bmp280.py ", שורה 116, ב- _read_byte return self.i2c_bus.read_byte_data (self.addr, הרשמה) IOError: [Errno 121] שגיאת I/O מרחוק

לאחר מכן תוכל להריץ:

sudo i2cdetect -y 1

פעולה זו תפעיל בדיקת אבחון של החיבורים/החיווט שלך והיית מחפש משהו כמו להלן:

pi@raspberrypi: ~ $ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 abcdef 00: - - - - - - - - - - - - - - 10: - - - - - - - - - - - - - 1d - - 20: - - - - - - - - - - 29 - - - - - - 30: - - - - - - - - - - - - - - - - - 40: - - - - - - - - - 49 - - - - - - 50: - - - - - - - - - - - - - - - - - 60: - - - - - - - - - - - - - - - - - - 70: - - - - - - - 77

אם לא, יהיה עליך לחזור ולבדוק את החיווט שלך שוב, אנא בדוק את תרשים החיווט ונסה שוב!

התקנת הסקריפט pi-baby-cooler.py

אם הכל בסדר והצלחת לקבל מדידת טמפרטורה, נוכל להמשיך ולהתקין את חבילת baby-cooler.py!

בשל האופן שבו מדריכים מטפלים בקישורים, צירפתי את סקריפט ה- py בכותרת השלב לעיל … כדי להעתיק זאת ל- PI שלך אני ממליץ להשתמש במשהו כמו WinSCP:

winscp.net/eng/download.php

WinSCP הוא לקוח SFTP ולקוח FTP פופולרי עבור Microsoft Windows! העתק קובץ בין מחשב מקומי לשרתים מרוחקים באמצעות פרוטוקולי העברת קבצים מסוג FTP, FTPS, SCP, SFTP, WebDAV או S3.

WinSCP הוא פשוט לשימוש, פשוט התחבר ל- PI שלך באמצעות כתובת ה- IP של ה- PI שלך ואז גרור ושחרר את קובץ.py למקום ממנו תרצה להריץ אותו עבורי זה מ /home /pi.

עכשיו סקריפט ה- py נמצא ב- PI שלך, הגיע הזמן להמשיך להגדרת חשבון / חיבורי IFTTT שלך

שלב 3: הגדרת חשבון/חיבור IFTTT שלך

הגדרת החשבון/חיבור IFTTT שלך
הגדרת החשבון/חיבור IFTTT שלך
הגדרת החשבון/חיבור IFTTT שלך
הגדרת החשבון/חיבור IFTTT שלך
הגדרת החשבון/חיבור IFTTT שלך
הגדרת החשבון/חיבור IFTTT שלך

בשלב הבא נבחן קבלת אסימון IFTTT, זה ישמש בעת קריאה לפונקציה חמה / קרה בתוך הסקריפט כדי להתחבר לתקע kasa ולהדליק / לכבות את המאוורר.

יצירת ה- Webhooks

עבור אל https://ifttt.com/ וצור חשבון אם עדיין אין לך חשבון.

לאחר שנכנסת, בשורת החיפוש, חפש: TP-link kasa

לאחר הטעינה, לחץ על שירותים ואז על קישור TP. לאחר מכן יהיה עליך לחבר את חשבון kasa שלך לחשבון IFTTT שלך, להתחבר לחשבון kasa שלך באמצעות IFTTT כדי ליצור חיבור.

לאחר קישור החשבון שלך לחץ על "היישומונים שלי" ואז על יישומון חדש, לחץ על "+זה" וחפש הוקי אינטרנט.

לחץ על "קבל בקשת אינטרנט", בתוך סוג שם האירוע hot (זה יכול להיות כל מה שאתה רוצה אבל עליך לעדכן זאת מאוחר יותר בתוך הסקריפט pi-baby-coller.py או שזה לא יעבוד, השתמשתי ב- hot כדי להפוך המאוורר דולק וקר כדי לכבות את המאוורר. לאחר מכן לחץ על צור הדק.

בשלב הבא עלינו לקשר את הטריגר החדש שלך לחשבון Kasa שלך, לחץ על "+זה" וחפש ב- kasa, לחץ על kasa TP-link ולאחר מכן לחץ על "הפעל", לאחר מכן בחר את המכשיר שברצונך להפעיל ולאחר מכן לחץ על צור פעולה. בדוק את הפעולה ולחץ על סיום אם הוא תקין.

**********

זכור שאם בחרת בשם אחר לאירוע מלבד "חם" ו"קר ", יהיה עליך לרשום אותם להמשך ולעדכן את הסקריפט! אחרת התסריט.py לא יעבוד

**********

לאחר שיצרנו וו האינטרנט הראשון שלנו, חזור על התהליך עבור "קר", אך הפעם אתה בוחר כיבוי במקום הפעלה בעת בחירת הפעולה +אותה פעולה.

לאחר שיהיו לנו שני הווקי אירועים בתוך הקטע בחשבון היישומונים שלי, לחץ על שירותים וחפש הוקי אינטרנט ואז לחץ על זה. כאן תראה לחצן תיעוד (מימין למעלה), לחץ על זה. כאן תמצא את מפתח האסימון IFTTT שלך. בזמן שכאן רשום את המפתח שלך (תזדקק לו מאוחר יותר), ערכתי את שלי בתוך התמונה אחרת כל אחד יוכל להפעיל או לכבות את התקעים החכמים שלי.

בודק את הווקים

כעת יצרנו שני וו -ווקים המחוברים לחשבון הקאסה שלנו, נוכל לבדוק אם הם עובדים או לא!

בתוך ה- PI שלך, תוכל להזין את הדברים הבאים:

curl -X POST

במקומות שבהם כתוב "חם" עליך להוסיף את שם האירוע שלך, אם השארת אותו כ"חם "עזוב את זה לבד. היכן שהוא אומר /אתה … עליך להחליף זאת במפתח אסימון IFTTT שלך. הקש על enter ואז אתה אמור לשמוע את לחיצת ממסר התקעים החכמים שלך שמפעילים את התקע. אם לא הצלחת לשמוע אותו תוכל לבדוק באפליקציית Kasa כדי לבדוק את סטטוס התקעים שלך.

כעת יש לנו את התלות עבור pHAT שלנו Enviro מותקן ועכשיו יש לנו התקנת IFTTT, הגיע הזמן לסיים עם שינוי הקוד.

שלב 4: עריכת הסקריפט

עריכת התסריט
עריכת התסריט

שם האירוע ו- IFTTT TOKENS חזרה על ה- pi שלך, הסלמי למיקום התסריט של pi-baby-cooler.py, בשבילי ה- in /home /pi (תיקיית הבית שלי) וערוך את הקובץ באמצעות ננו:

nano pi-baby-cooler.py

בתוך מאתר שבו כתוב def turn_off ()

def turn_off ():

# הגדר את מילת ההדק שלך - למשל "קר" - ואת האסימון IFTTT Webhook למטה. TRIGGER_WORD = "קר" TOKEN = "אסימון ה- IFTTT שלך הולך לכאן" request.post ("https://maker.ifttt.com/trigger/{trigger_word}/with/key/{token}". פורמט (trigger_word = TRIGGER_WORD, token = TOKEN)) print ("מאוורר כבוי!"):

זוהי הפונקציה לכיבוי המאוורר. זה עושה את זה על ידי שליחת webhook ל- IFTTT המפעיל את tplink HS100 לכבות. אם שמרת על עבודת ההפעלה בחשבון IFTTT שלך כמו "קר", תוכל להשאיר את זה בפנים, ופשוט להחליף את האסימון שקיבלת מתיעוד webhooks קודם לכן. אם אכן בחרת בשם אירוע אחר, החלף את המילה הזו כאן.

לאחר הדבקת אסימון IFTTT שלך, עבור לסעיף הבא שבו כתוב def turn_on ()

def turn_on ():# הגדר את מילת ההדק שלך - למשל "hot" - וסימן ה- IFTTT Webhook למטה. TRIGGER_WORD = "hot" TOKEN = "אסימון ה- IFTTT שלך הולך לכאן" request.post ("https://maker.ifttt.com/trigger/{trigger_word}/with/key/{token}".format (trigger_word = TRIGGER_WORD, token = TOKEN)) print ("מאוורר!")

פונקציה זו היא הפוכה של הכיבוי, היא מפעילה את התקע החכם TP-link!

אם שמרת על עבודת ההפעלה בחשבון IFTTT שלך כמו "חם", תוכל להשאיר זאת בפנים, ופשוט להחליף את האסימון שקיבלת מתיעוד webhooks קודם לכן. אם אכן בחרת בשם אירוע אחר, החלף את המילה הזו כאן.

כל השאר כבר מקודד, כך שלא תצטרך לבצע שינוי בקוד אחר TRIGGER_WORD, TOKEN וכמה התאמות בטמפרטורות הבאות!

שינוי הטמפרטורות

לאחר מכן, מצא היכן כתוב # משתנים מקומיים.

נסה: # משתנים מקומיים. מצב = 0 # קובע את מצב המתג נמוך = 20 # ערך נמוך לרמת הטמפרטורה (צלזיוס). גבוה = 24 # ערך גבוה לרמת הטמפרטורה (צלזיוס). period = 120 # עיכוב, בשניות, בין שיחות.

משתנה המצב הוא כיצד ה- pi יודע אם התקע דולק או לא. זה מתעדכן מאוחר יותר אם הוא מתחמם מדי (24+*c ואז המצב משתנה מאוחר יותר ל -1), זה גם יופעל ל- webhook ויופעל התקע החכם!

המשתנה הנמוך הוא כמה מגניב אני רוצה שהחדר יתקבל לפני שתכבה את התקע. אם אתה רוצה שהחדר יהיה חם יותר, פשוט שנה אותו לערך גבוה יותר. אם אתה רוצה שזה יהיה קריר יותר, הורד את הערך.

המשתנה הגבוה הוא הטמפרטורה המקסימלית שאני רוצה שהחדר יקבל לפני שאני רוצה שהמאוורר יבעט ויתחיל לקרר את החדר. אם אתה רוצה שהמאוורר יתחיל לפני זה, פשוט הורד את הערך, או אם אתה רוצה שהוא יהיה חם יותר אז תעלה את הערך.

משתנה התקופה הוא משך השניות בין בדיקות הטמפרטורה, אם תרצה שתסריט ה- pi יבדוק בתדירות נמוכה יותר, אז גבוה יותר את המספר אם תרצה לקצר את הזמן, הורד את המספר.

לאחר שביצעת את השינויים שלך שמור ויצא מהננו

CTRL + x

שלב 5: שימוש בסקריפט

שימוש בתסריט
שימוש בתסריט

הפעלת התסריט באופן מקומי

ישנן מספר דרכים בהן תוכל להריץ סקריפט זה, תוכל להתחבר באמצעות SSH ולהקליד את הדברים הבאים:

sudo python /pi-baby-cooler.py

פעולה זו תריץ את הסקריפט לפי דרישה, זה יעבוד רק כל עוד יש הפעלת SSH פעילה ל- PI. הדרך השנייה היא להשתמש במסך, המסך אינו מותקן כברירת מחדל אני לא חושב, כך שיהיה צורך להשתמש במסך להתקנת sudo apt.

להלן הדרכה מצוינת כיצד להשתמש במסך כראוי:

מסך או GNU מסך הוא מרבב מסוף. במילים אחרות, זה אומר שאתה יכול להתחיל הפעלת מסך ולאחר מכן לפתוח כל מספר חלונות (מסופים וירטואליים) בתוך אותה הפעלה. תהליכים הפועלים במסך ימשיכו לפעול כאשר החלון שלהם אינו גלוי גם אם תתנתק.

אוטומציה להפעלה באתחול

הדרך השנייה היא לערוך את קובץ האתחול ב- /etc/rc.local כדי לעשות זאת באמצעות ננו.

sudo nano /etc/rc.local

עריכת קובץ זה תפעיל את הסקריפט בעת אתחול. כלומר, הוא תמיד יפעל כאשר ה- PI מופעל, כך אני גם מריץ 90% מהסקריפטים שלי על PI אחרים.

אם השתמשת ב- rc.local, תוכל להריץ את הפקודה למטה כדי לבדוק מה פועל כעת ב- PI. זה נוח לפתור בעיות מאוחר יותר כדי לראות אם התסריט עובד בכלל או לא:

ps -aef | grep python

שלב 6: סיים

ובכן … תודה אם אתה עדיין כאן והגעת לנקודה זו!

מצטער שזה עבר די הרבה זמן, זה היה ההוראה הראשון שלי אי פעם ולא ממש ידעתי מה לרשום.

כפי שציינתי בהתחלה, למדריך זה יש יישומים רבים ושונים בעזרתו חום להפעלת תקע חכם! אתה יכול לקרר כל חדר בבית/בדירה/בדירה/במוסך/בסככה. אתה יכול אפילו לשנות את IFTTT כדי להפעיל כל מכשיר חכם שניתן לשלוט בו באמצעות IFTTT, זה לא חייב להיות רק מכשירי kasa עם קישור TP.

אשמח לשמוע אם ניסית את ההוראות האלה או אפילו אם מצאת שזה מעניין אנא השאירו לי תגובה למטה!

אם יש לך שאלות הקפד להשאיר אותן למטה ואני אנסה כמיטב יכולתי להשיב עליהן!

תחרות חיישנים
תחרות חיישנים
תחרות חיישנים
תחרות חיישנים

סגנית בתחרות החיישנים

מוּמלָץ: