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

מערכת בית חכם: 6 שלבים
מערכת בית חכם: 6 שלבים

וִידֵאוֹ: מערכת בית חכם: 6 שלבים

וִידֵאוֹ: מערכת בית חכם: 6 שלבים
וִידֵאוֹ: התקנת מתג חכם לתאורה 2024, נוֹבֶמבֶּר
Anonim
מערכת בית חכם
מערכת בית חכם

מדריך זה יעזור להסביר כיצד להגדיר ולהשתמש במערכת הבית החכם שלנו באמצעות תוכנת Matlab וחומרת Raspberry Pi. בסוף ההוראה הזו, אתה אמור להיות מסוגל להשתמש במלואו במוצר שלנו בקלות!

שלב 1: שלב 1: דרושים חלקים וחומרים

שלב 1: דרושים חלקים וחומרים
שלב 1: דרושים חלקים וחומרים
שלב 1: דרושים חלקים וחומרים
שלב 1: דרושים חלקים וחומרים
  • פאי פטל
  • לוח לחם (x2)
  • חיישן תנועה PIR
  • מודול LCD
  • תאורת לד
  • קַבָּל
  • מצלמת פטל פי
  • מנוע מיקרו סרוו
  • חוטים כפולים (20)

שלב 2: שלב 2: הצהרת בעיות

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

שלב 3: שלב 3: תצורת חיישן תנועה

שלב 3: תצורת חיישן תנועה
שלב 3: תצורת חיישן תנועה

חיישן התנועה מחובר לסיכת חשמל 3.3V, סיכה הארקה וסיכה דיגיטלית לבחירתך. הם מחוברים ליציאות VCC, GND ו- OUT בחיישן התנועה, בהתאמה. חיישן התנועה יזהה כאשר מישהו נמצא בקרבתו ומפעיל את הנורית כדי לציין שהאורות דולקים. לאחר שכבר לא זוהה תנועה, הנורית תכבה את עצמה. הקוד הוא כדלקמן:

בעוד שזה נכון

motionDetected = readDigitalPin (rpi, 3);

אם motionDetected == 1

writeDigitalPin (rpi, 16, 1)

אַחֵר

writeDigitalPin (rpi, 16, 0)

סוֹף

סוֹף

שלב 4: שלב 4: תצוגת מודול LCD

שלב 4: תצוגת מודול LCD
שלב 4: תצוגת מודול LCD

ה- LCD לוקח את נתוני הטמפרטורה ממידע מזג האוויר החי המסופק מהאינטרנט. מודול ה- LCD מציג את קריאת הטמפרטורה הנוכחית. ב- Matlab קוראים את הטמפרטורה ואז עוברים בלולאת if כדי לקבוע כמה להתאים את הגדרת הטמפרטורה בבית. הקוד הוא כדלקמן:

url = 'https://forecast.weather.gov/MapClick.php? lat = 35.9606 & lon = -83.9207 & FcstType = json';

data = webread (url);

a = data.currentobservation. Temp;

fprintf ('הטמפרטורה החיצונית היא %s / n', א)

x = str2num (a);

אם x> 80

fprintf ('הורד את התרמוסטט ל -15 מעלות')

writeDigitalPin (rpi, 26, 1) %מדליק אורות

elseif x> 75 && x <80

fprintf ('כבה את התרמוסטט / n')

writeDigitalPin (rpi, 26, 1) %מדליק אורות

elseif x 55

fprintf ('העלה את התרמוסטט ל -10 מעלות / n')

writeDigitalPin (rpi, 26, 0) %מכבה אורות

elseif x 45

fprintf ('העלה את התרמוסטט ל -20 מעלות / n')

writeDigitalPin (rpi, 26, 0) %מכבה אורות

elseif x 40

fprintf ('הגדל את התרמוסטט ל -25 מעלות / n')

writeDigitalPin (rpi, 26, 0) %מכבה אורות

elseif x 30

fprintf ('הגדל את התרמוסטט ל -35 מעלות / n')

אַחֵר

fprintf ('הפעל את התרמוסטט עד 65 מעלות / n')

סוֹף

שלב 5: שלב 5: מודול סרוו מוטורי

שלב 5: מודול סרוו מוטורי
שלב 5: מודול סרוו מוטורי

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

s = סרוו (rpi, 3)

writeDigitalPin (rpi, 4, 1)

writePosition (ים, 45)

temp_sys = תפריט ('מה אתה מרגיש?') מתאם זמני %

אם temp_sys == 1 %חם

writeDigitalPin (rpi, 26, 1) %מדליק אורות

writePosition (s, 0) %הופך את CW/CCW של המנוע

לסגור תריסים, לכבות אורות

elseif temp_sys == 2 %קר

writeDigitalPin (rpi, 26, 0) %מכבה אורות

writePosition (s, 180) %הופך את המנוע CCW/CW

לפתוח תריסים, להדליק אורות

elseif temp_sys == 3 %בדיוק

fprintf ('שמירה על מצב הטמפרטורה. / n')

סוֹף

שלב 6: שלב 6: מצלמת חיישן תנועה

שלב 6: מצלמת חיישן תנועה
שלב 6: מצלמת חיישן תנועה

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

i = 0

מצלמה ברורה

cam = cameraboard (rpi);

בעוד אני == 0

תמונת מצב (מצלמה); אחוז מאגר תמונות ברור

img = תמונת מצב (מצלמה);

imagesc (img);

סוֹף

מוּמלָץ: