כיצד לעצב מערכת אוטומציה ביתית מבוססת Arduino באמצעות שלט טלוויזיה?

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



מערכת אוטומציה באמצעות שלט טלוויזיה

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



כיצד להשתמש בשלט טלוויזיה כדי ליצור מערכת אוטומציה ביתית?

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



שלב 1: איסוף הרכיבים

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



  • מקלט IR TSOP 1738
  • שלט רחוק
  • קרש לחם
  • חוטי מגשר

שלב 2: לימוד הרכיבים

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

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

ארדואינו ננו



TSOP 1738 הוא מודול IR לשלט רחוק. יש לו תדר מוביל של 38kHz. הוא מורכב מגלאי פוטו שמזהה את האות ואז מווסת אותו מחדש. הפלט שלה משמש ישירות על ידי Arduino או כל לוח מיקרו-בקר אחר.

חיישן TSOP

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

מודול ממסר

בשלט טלוויזיה רגיל יש כפתור הפעלה וכל מקשי המספרים עליו. מקשים מספריים אלה ישמשו למיתוג מכשירי החשמל.

שלב 3: הכנת המעגל

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

  1. קח קרש לחם והכניס לתוכו את Arduino Nano ו- TSOP 1738 שלך.
  2. הפעל את מודול TSOP 1738 ואת מודול הממסר דרך Arduino. חבר את הַחוּצָה סיכה של TSOP1738 לפין 11 של ארדואינו וגם לחבר את IN סיכות של מודול הממסר לארדואינו. אני שולט רק בשני מכשירים חשמליים ולכן אני משתמש כאן רק במודולי ממסר. אם ברצונך לשלוט על מכשירי חשמל נוספים, חבר באופן דומה יותר מודולי ממסר.

    תרשים מעגל

שלב 4: תחילת העבודה עם Arduino

אם לא עבדתם בעבר על Arduino IDE, אל דאגה מכיוון שלב אחר שלב להגדרת Arduino IDE מוצג למטה.

  1. חבר את לוח ה- Arduino למחשב ופתח את לוח הבקרה. לחץ על חומרה וסאונד. עכשיו פתוח מכשירים ומדפסת ומצא את היציאה אליה מחובר הלוח שלך. במקרה שלי זה כן COM14 אבל זה שונה במחשבים שונים.

    מציאת נמל

  2. לחץ על תפריט הכלים והגדר את הלוח כ- ארדואינו ננו (AT Mega 328P) .

    לוח הגדרה

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

    הגדרת נמל

  4. באותו תפריט כלים, הגדר את המעבד כ- ATmega328p (Bootloader ישן) .

    מעבד הגדרה

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

    כלול ספרייה

  6. הורד את הקוד המצורף למטה ולחץ על כפתור ההעלאה כדי לצרוב את הקוד בלוח Arduino Nano שלך.

    העלה

הקלק על ה הורד כפתור כדי לקבל את הקוד.

שלב 5: קוד

קל מאוד להבין את הקוד אך עדיין, הוא מתואר בקצרה להלן.

1. התקנה בטלה () היא פונקציה בה אנו מאתחלים את סיכות INPUT או OUTPUT. פונקציה זו קובעת גם את קצב השידור באמצעות Serial.begin () פקודה. Baud Rate הוא מהירות התקשורת של המיקרו-בקר.

2. לולאה בטל () היא פונקציה הפועלת שוב ושוב בלולאה. בלולאה זו אנו כותבים קוד המספר ללוח המיקרו-בקר אילו משימות לבצע וכיצד.

3. כאשר אנו שולחים נתונים משלט הטלוויזיה, ארדואינו צריך לפענח נתונים אלה. לשם כך צירפנו ספרייה מיוחדת #לִכלוֹל <IRremote.h>. פונקציה בספריה זו תשמש לפענוח הנתונים של כל מפתח, שנשלח מהשלט.

#include int RECV_PIN = 11; IRrecv irrecv (RECV_PIN); תוצאות decode_results; הגדרת חלל () {Serial.begin (9600); irrecv.enableIRIn (); } loop loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); irrecv.resume (); } עיכוב (100); }

הקוד שלעיל קורא את הערכים שנשלחו מהשלט ומפענח אותו לערך ה- HEX המתאים לו. קוד זה לקוח מהדוגמאות של ספריית IRremote ב- Arduino IDE. קוד זה מצורף גם בקישור ההורדה בשם test.ino סיפק לעיל. הפלט של פונקציה זו, כאשר כל מקשי המספרים נלחצים, יהיה:

לְפַעֲנֵחַ

4. ב code.ino מצורף בקישור ההורדה שלמעלה, מאותתים סיכות של ארדואינו שישמשו. בתוך ה לולאה בטל () פונקציה, כאשר לוחצים על כפתור בשלט הרחוק, בתחילה שֶׁקֶר המצב מופנה נָכוֹן והממסר המתאים מופעל. אם לוחצים שוב על אותו כפתור, הוא יעבור למצב הבוליאני ויכבה את הממסר. כפתור ההפעלה יפעיל או יכבה את כל הממסרים.

loop loop () {if (irrecv.decode (& results)) {Serial.println (results.value, HEX); עיכוב (100); אם (results.value == 0x40BD00FF) {i =! i; digitalWrite (IN1, i); } אם (results.value == 0x40BD807F) {j =! j; digitalWrite (IN2, j); // עיכוב (200); } אם (results.value == 0x40BD28D7) {m =! m; digitalWrite (IN1, m); digitalWrite (IN2, m); digitalWrite (IN3, m); digitalWrite (IN4, m); // עיכוב (200); } irrecv.resume (); // קבל את הערך הבא // עיכוב (100); }}

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