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

אוטומציה ביתית עם פטל פי באמצעות לוח ממסר: 7 שלבים
אוטומציה ביתית עם פטל פי באמצעות לוח ממסר: 7 שלבים

וִידֵאוֹ: אוטומציה ביתית עם פטל פי באמצעות לוח ממסר: 7 שלבים

וִידֵאוֹ: אוטומציה ביתית עם פטל פי באמצעות לוח ממסר: 7 שלבים
וִידֵאוֹ: Bluetooth Home Automation using Raspberry Pi Part-1 2024, נוֹבֶמבֶּר
Anonim
אוטומציה ביתית עם פטל פי באמצעות לוח ממסר
אוטומציה ביתית עם פטל פי באמצעות לוח ממסר

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

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

שלב 1: נדרשת חומרה

חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת

אנו נשתמש ב:

פאי פטל

ה- Raspberry Pi הוא מחשב מבוסס לינוקס מבוסס לוח בודד. המחשב הקטן הזה מביא לאגרוף רישום כוח, המשמש כתרגילי אלקטרוניקה ופעולות מחשב כמו גיליונות אלקטרוניים, עיבוד תמלילים, גלישה באינטרנט ודוא"ל ומשחקים

I2C Shield או כותרת I2C

מתאם INPI2 (מתאם I2C) מספק את Raspberry Pi 2/3 יציאת I²C לשימוש עם התקני I2C מרובים

בקר ממסר I2C MCP23008

MCP23008 מ- Microchip הוא מרחיב יציאות משולב השולט על שמונה ממסרים דרך האוטובוס I²C. אתה יכול להוסיף ממסרים נוספים, קלט/פלט דיגיטלי, ממירים אנלוגיים לדיגיטליים, חיישנים והתקנים אחרים באמצעות יציאת הרחבה I²C המשולבת

חיישן טמפרטורה MCP9808

MCP9808 הוא חיישן טמפרטורה בעל דיוק גבוה המספק אותות חיישן מכוילים, ליניאריים בפורמט דיגיטלי, I²C

חיישן זוהר TCS34903

TCS34903 הוא מוצר משפחתי של חיישן צבע המספק את הערך של רכיב RGB של אור וצבע

כבל חיבור I2C

כבל חיבור I2C הוא כבל בעל 4 קווים שמיועד לתקשורת I2C בין שני התקני I2C המחוברים דרכו

מתאם מיקרו USB

כדי להפעיל את Raspberry Pi, אנו זקוקים לכבל מיקרו USB

מתאם מתח 12V ללוח ממסר

בקר ממסר MCP23008 פועל על מתח חיצוני של 12V וניתן לספק זאת באמצעות מתאם מתח 12V

אתה יכול לקנות את המוצר על ידי לחיצה עליהם. כמו כן, תוכל למצוא עוד חומר נהדר בחנות Dcube.

שלב 2: חיבור חומרה

חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה

החיבורים הנדרשים (עיין בתמונות) הם כדלקמן:

  1. זה יעבוד על I2C. קח מגן I2C עבור Raspberry pi וחבר אותו בעדינות לסיכות GPIO של Raspberry Pi.
  2. חבר את הקצה האחד של כבל I2C ליציאה של TCS34903 והקצה השני למגן I2C.
  3. חבר את הסיר של חיישן MCP9808 לשקע ה- TCS34903 באמצעות כבל I2C.
  4. חבר את הסיר של MCP23008 לחיישן MCP9808 באמצעות כבל I2C.
  5. חבר גם את כבל ה- Ethernet לנתב Raspberry Pi. Wi-Fi יכול לשמש גם לאותו.
  6. לאחר מכן, הפעל את ה- Raspberry Pi באמצעות מתאם מיקרו USB ולוח ממסר MCP23008 באמצעות מתאם 12V.
  7. לבסוף, חבר את האור עם ממסר ראשון ומאוורר או דוד עם ממסר שני. אתה יכול להרחיב את המודול או לחבר התקנים נוספים עם הממסרים.

שלב 3: תקשורת באמצעות פרוטוקול I2C

כדי להפעיל את Raspberry Pi I2C, המשך כפי שהוזכר להלן:

  1. במסוף, הקלד את הפקודה הבאה כדי לפתוח את הגדרות התצורה: sudo raspi-config
  2. בחר כאן "אפשרויות מתקדמות".
  3. בחר "I2C" ולחץ על "כן".
  4. אתחל את המערכת כדי להגדיר אותה בהתאם לשינויים שבוצעו באמצעות הפקודה אתחול מחדש.

שלב 4: תכנות המודול

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

כדי להגדיר את סביבת הג'אווה, התקן את "pi4j libraby" מתוך https://pi4j.com/1.2/index.html Pi4j היא ספריית קלט/פלט של Java עבור Raspberry Pi. שיטה קלה ומועדפת ביותר להתקנת "pi4j ספרייה "היא לבצע את הפקודה שתוארה ישירות ב- Raspberry Pi שלך:

תלתלים -s get.pi4j.com | sudo bash

אוֹ

תלתלים -s get.pi4j.com

יבוא com.pi4j.io.i2c. I2CBus; יבוא com.pi4j.io.i2c. I2CDevice; יבוא com.pi4j.io.i2c. I2CFactory; יבוא java.io. IOException; class MCP23008 {main static void main (String args ) זורק חריגה {int status, value, value1 = 0x00; // צור אוטובוס I2C אוטובוס I2CBus = I2CFactory.getInstance (I2CBus. BUS_1); // קבל מכשיר I2C, כתובת I2C MCP23008 היא 0x20 (32) מכשיר I2CDevice = bus.getDevice (0x20); // קבל מכשיר I2C, כתובת I2C MCP9808 היא 0x18 (24) I2CDevice MCP9808 = bus.getDevice (0x18); // קבל מכשיר I2C, כתובת I2C TCS34903 היא 0x39 (55) I2CDevice TCS34903 = bus.getDevice (0x39); // הגדר רישום זמן המתנה = 0xff (255), זמן המתנה = 2.78 ms TCS34903.write (0x83, (בייט) 0xFF); // אפשר גישה לערוץ IR TCS34903.write (0xC0, (בייט) 0x80); // הגדר את רישום Atime ל- 0x00 (0), מספרים מקסימליים = 65535 TCS34903.write (0x81, (byte) 0x00); // הפעלה, ADC מופעל, המתן מופעל TCS34903.write (0x80, (בייט) 0x0B); Thread.sleep (250); // קרא 8 בתים של נתונים עם נתונים ברורים/ir LSB בייט ראשון data1 = בתים חדשים [8]; // קרא נתוני טמפרטורה בייט נתונים = בתים חדשים [2]; status = device.read (0x09); // הגדירו את כל הסיכות כ- OUTPUT device.write (0x00, (בייט) 0x00); Thread.sleep (500); בעוד (נכון) {MCP9808.read (0x05, data, 0, 2); // המרת נתונים int temp = ((data [0] & 0x1F) * 256 + (data [1] & 0xFF)); אם (טמפ '> 4096) {טמפ' -= 8192; } cTemp כפול = טמפ ' * 0.0625; System.out.printf ("הטמפרטורה בצלזיוס היא: %.2f C %n", cTemp); TCS34903.read (0x94, data1, 0, 8); ir כפול = ((data1 [1] & 0xFF) * 256) + (data1 [0] & 0xFF) * 1.00; אדום כפול = ((data1 [3] & 0xFF) * 256) + (data1 [2] & 0xFF) * 1.00; ירוק כפול = ((data1 [5] & 0xFF) * 256) + (data1 [4] & 0xFF) * 1.00; כחול כפול = ((data1 [7] & 0xFF) * 256) + (data1 [6] & 0xFF) * 1.00; // חשב את הארה כפולה = (-0.32466) * (אדום) + (1.57837) * (ירוק) + (-0.73191) * (כחול); System.out.printf ("תאורה היא: %.2f lux %n", תאורה); אם (הארה 30) {value = value1 | (0x01); } אחרת {value = value1 & (0x02); } device.write (ערך 0x09, (בתים)); Thread.sleep (300); }}}

שלב 5: יצירת קובץ והפעלת הקוד

  1. ליצירת קובץ חדש בו ניתן לכתוב/להעתיק את הקוד, תעשה שימוש בפקודה הבאה: sudo nano FILE_NAME.javaEg. סודו ננו MCP23008.java
  2. לאחר יצירת הקובץ נוכל להזין כאן את הקוד.
  3. העתק את הקוד שצוין בשלב הקודם והדבק אותו בחלון כאן.
  4. הקש Ctrl+X ואז "y" ליציאה.
  5. לאחר מכן הרכיב את הקוד באמצעות הפקודה הבאה: pi4j FILE_NAME.javaEg. pi4j MCP23008.java
  6. אם אין שגיאות, הפעל את התוכנית באמצעות הפקודה שלא ציינה: pi4j FILE_NAMEEg. pi4j MCP23008.java

שלב 6: יישומים

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

שלב 7: משאבים

למידע נוסף על בקר ממסר TSL34903, MCP9808 MCP23008, עיין בקישורים הבאים:

  • גיליון נתונים TSL34903
  • גיליון נתונים MCP9808
  • גיליון נתונים MCP23008

מוּמלָץ: