אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino: 5 שלבים (עם תמונות)
אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino: 5 שלבים (עם תמונות)
Anonim
אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino
אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino
אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino
אוטומציה ביתית מבוססת SMS אנדרואיד ו- Arduino

! ! ! הודעה ! ! !

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

לאחרונה קיבלתי מודול Quad Band GSM/GPRS זול יחסית לשחק איתו. זהו מודול SIM800L ומתקשר עם כל מיקרו באמצעות יציאה טורית. הוא הגיע כולל אנטנת הרכבה בלוח.

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

שלב 1: פקודות SMS

פקודות SMS
פקודות SMS

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

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

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

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

פקודות בקרת SMS:

o1: 1 - הפעל את הפלט 1

o1: 0 - כבה את הפלט 1

o1: p - פלט דופק 1 מופעל ולאחר מכן כבה

o2: 1 - הפעל את הפלט 2

o2: 0 - כבה את הפלט 2

o2: p - פלט דופק 2 מופעל ולאחר מכן כבה

o3: 1 - הפעל את הפלט 3

o3: 0 - כבה את הפלט 3

o3: p - פלט דופק 3 מופעל ולאחר מכן כבה

o4: 1 - הפעל את הפלט 4

o4: 0 - כבה את הפלט 4

o4: p - פלט דופק 4 מופעל ולאחר מכן כבה

???? - סטטוס בקשה של כניסות ויציאות

#### - איפוס המערכת

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

פקודות תגובה לבקר ה- SMS:

i1: x i2: x i3: x i4: x o1: x o2: x o3: x o4: x

כאשר x הוא מצב הקלט/פלט, 1 עבור מופעל, 0 עבור כבוי.

שלב 2: בניית בקר ה- SMS

בניית בקר ה- SMS
בניית בקר ה- SMS
בניית בקר ה- SMS
בניית בקר ה- SMS
בניית בקר ה- SMS
בניית בקר ה- SMS

ציוד נדרש:

כל ארדואינו, או ATMEGA328p העומד בפני עצמו על קרש לחם

מודול SIM800L GSM/GPRS עם כרטיס SIM המסוגל לשלוח ולקבל הודעות SMS

הורד ממיר DC/DC

הערה !

ממיר DC/DC נדרש להפעלת מודול ה- SIM800L. מודול זה פועל בין 3.7V ל- 5V, בהתאם לגרסה שיש לך. מודול זה דורש גם ספק כוח שיכול לספק עד 2A כאשר המודול מעביר נתונים. לא ניתן להפעיל אותו ישירות מה- Arduino Uno !

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

הכוח למעגל הוא באמצעות ממיר DC/DC, כאשר מתח המוצא מוגדר ל- 4.5V. ישנם ארבעה נוריות לדמיית היציאות הדיגיטליות, וארבעה כפתורים לכניסות הדיגיטליות. ה- SIM800L מחובר לסיכות Rx/Tx של ה- ATMEGA328p.

נורית חמישית משמשת לציון מתי המערכת עסוקה בשליחת SMS.

שלב 3: תכנות ה- ATMEGA328p

תכנות ה- ATMEGA328p
תכנות ה- ATMEGA328p
תכנות ה- ATMEGA328p
תכנות ה- ATMEGA328p

לפני התכנות, פתח את קובץ INO וערוך את מספר הטלפון. החלף את xxxxxxxxxx במספר הטלפון הסלולרי שלך בשורה 46. הידור מחדש והעלה את הקובץ.

כמו כן, קרא את ההוראות כיצד להגדיר את יציאת התוכנה הטורית בקובץ INO.

//=============================================================================//

//! ! ! הערה ! ! !

// ================

//

// BUFFER בספריית סדרה של תוכנה שתשתנה ל -200

//

// כדי להשתמש בתוכנה סדרתית, המשתמש צריך גם לשנות את ה- BUFFER Serial Software ל- 200.

// יש לערוך זאת בקובץ הבא:

//

// C:/Program Files/Arduino x.x.x/Hardware/Arduino/AVR/Libraries/SoftwareSerial/src/SoftWareSerial.h

//

// שנה מאגר כדלקמן:

//

// #ifndef _SS_MAX_RX_BUFF

// #define _SS_MAX_RX_BUFF 200

// גודל חיץ RX

// #endif

//

//=============================================================================

עיין במדריך זה לתכנת ה- ATMEGA328p על לוח הלוח באמצעות UNO Arduino.

www.instructables.com/id/Arduino-UNO-as-AtM…

שלב 4: שימוש בבקר ה- SMS

שימוש בבקר ה- SMS
שימוש בבקר ה- SMS

שימוש בבקר ה- SMS

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

ניתן לערוך את הודעות ה- SMS והפקודות לצרכיך בקובץ INO.

בדיקת יציאות בקר ה- SMS

מהטלפון הסלולרי שלך, שלח את הפקודות הבאות למספר כרטיס ה- SIM800L שלך:

o1: 1, זה יפעיל את הפלט 1.

בטלפון שלך תקבל את ה- SMS הבא:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 1 o2: 0 03: 0 o4: 0

01: 0, זה יכבה את הפלט 1.

בטלפון שלך תקבל את ה- SMS הבא:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

01: p, זה יפעיל את פלט 1 למשך שנייה אחת, ואז יכבה שוב את פלט 1 (דופק).

בטלפון שלך תקבל את ה- SMS הבא:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

בדיקת כניסות בקר ה- SMS

בבקר ה- SMS לחץ על כפתור 1 בקצרה

בטלפון שלך תקבל אוטומטית את ה- SMS הבא:

i1: 1 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

בבקר ה- SMS, לחץ לחיצה קצרה על כפתור 2

בטלפון שלך תקבל אוטומטית את ה- SMS הבא:

i1: 1 i2: 1 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

בבקר ה- SMS לחץ על כפתור 3 בקצרה

בטלפון שלך תקבל אוטומטית את ה- SMS הבא:

i1: 1 i2: 1i3: 1 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

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

אפס אזעקות

כדי לאפס את מצב הקלט, שלח את הפקודה הבאה:

####, זה יאפס את מצב הקלט.

בטלפון שלך תקבל את ה- SMS הבא:

i1: 0 i2: 0 i3: 0 i4: 0 o1: 0 o2: 0 03: 0 o4: 0

עדכוני מצב

תוכל גם לבקש את הסטטוס בכל עת על ידי שליחת הפקודה הבאה:

????, זה יבקש עדכון סטטוס של I/O.

בטלפון שלך תקבל את ה- SMS הבא:

i1: x i2: x i3: x i4: x o1: x o2: x 03: x o4: x

כאשר x מציין את הסטטוס, 1 עבור מופעל, 0 עבור כבוי.

שלב 5: יישום אנדרואיד

יישום אנדרואיד
יישום אנדרואיד
יישום אנדרואיד
יישום אנדרואיד
יישום אנדרואיד
יישום אנדרואיד

באמצעות MIT App Inventor 2 (https://ai2.appinventor.mit.edu/), יצרתי ממשק משתמש פשוט לטלפון הסלולרי אנדרואיד שלי. יישום זה מאפשר לך להתאים אישית את התיאור של כל קלט/פלט. הוא גם מאפשר הזנת מספר הטלפון.

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

כדי לערוך את האפליקציה, צור חשבון MIT App Inventor 2, וייבא את קובץ AIA.

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