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

מערכת אבטחה טלפונית עם Arduino: 5 שלבים
מערכת אבטחה טלפונית עם Arduino: 5 שלבים

וִידֵאוֹ: מערכת אבטחה טלפונית עם Arduino: 5 שלבים

וִידֵאוֹ: מערכת אבטחה טלפונית עם Arduino: 5 שלבים
וִידֵאוֹ: Security Alarm System with NodeMCU using Blynk 2.0 2024, נוֹבֶמבֶּר
Anonim
מערכת אבטחה טלפונית עם Arduino
מערכת אבטחה טלפונית עם Arduino

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

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

לשם כך נשתמש בלוח תואם Arduino עם מודול SIM800L וחיישן PIR. חיישן ה- PIR יהיה אחראי לאיתור הימצאותו של פולש ו- SIM800L יהיה אחראי לשלוח הודעת SMS להתראה לבעל הבית.

אספקה

  • לוח תואם Arduino
  • חיישן PIR
  • התנגדות 10kR
  • מגשרים
  • פרוטובארד
  • מודול SIM800L

שלב 1: לב הפרויקט

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

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

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

אם אתה רוצה להוריד את הלוח התואם Arduino, תוכל לגשת לקישור זה ולקבל את הקבצים לרכישת הלוחות שלך ב- JLCPCB.

עכשיו, בואו נתחיל!

שלב 2: המעגל האלקטרוני של הפרויקט והתכנות

פרויקט המעגל האלקטרוני והתכנות
פרויקט המעגל האלקטרוני והתכנות
פרויקט המעגל האלקטרוני והתכנות
פרויקט המעגל האלקטרוני והתכנות

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

#include SoftwareSerial שבב (10, 11);

מחרוזת SeuNumero = "+5585988004783";

#חיישן הגדרה 12

bool ValorAtual = 0, ValorAnterior = 0;

הגדרת חלל ()

{Serial.begin (9600); Serial.println ("Inicializando Sistema …"); עיכוב (5000); chip.begin (9600); עיכוב (1000);

pinMode (חיישן, INPUT); // Configura o Pino do Sensor como Entrada

}

לולאת חלל ()

{// Valor do pino do sensor ValorAtual = digitalRead (חיישן);

אם (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert; ValorAnterior = 1; }

אם (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude (); ValorAnterior = 0; }

}

void IntrudeAlert () // Funcao for enviar mensagem de alerta Umidade Baixa

{chip.println ("AT+CMGF = 1"); עיכוב (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); עיכוב (1000); SMS מחרוזת = "התראה על חדירה!"; chip.println (SMS); עיכוב (100); chip.println ((char) 26); עיכוב (1000); }

void NoMoreIntrude () // Funcao for enviar mensagem de alerta Umidade Normal

{chip.println ("AT+CMGF = 1"); עיכוב (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); עיכוב (1000); SMS מחרוזת = "אין יותר פריצה!"; chip.println (SMS); עיכוב (100); chip.println ((char) 26); עיכוב (1000); }

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

#לִכלוֹל

לאחר הגדרת הספרייה הוגדרו סיכות התקשורת Tx ו- Rx. סיכות אלה הן סיכות חלופיות ומשמשות לאפשר תקשורת טורית על סיכות ארדואינו אחרות. ספריית SoftwareSerial פותחה על מנת לאפשר לך להשתמש בתוכנה לשכפול הפונקציונליות

שבב תוכנה Serial (10, 11);

לאחר מכן הוכרז מספר הטלפון הסלולרי המוצג להלן.

מחרוזת SeuNumero = "+5585988004783";

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

ההודעה תישלח אם יתגלה פולש בתוך הבית. חיישן ה- PIR (פסיבי אינפרא אדום) הוא חיישן המשמש לזיהוי תנועה מהאות האינפרא אדום. מהאות שנשלח ל- Arduino, מודול ה- SIM800L ישלח הודעה למשתמש.

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

שלב 3: הפונקציה Void Setup ()

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

הגדרת חלל ()

{

Serial.begin (9600); Serial.println ("Inicializando Sistema …"); עיכוב (5000); chip.begin (9600); עיכוב (1000); pinMode (חיישן, INPUT); // Configura o Pino do Sensor como Entrada}

כפי שניתן לראות, שתי התקשורת הטורקית אותחלה. Serial.begin משמש לאתחול הסדרה המקורית של ה- Arduino וה- chip.begin הוא סדרת החיקוי דרך הספרייה SoftwareSerial. לאחר מכן, נבצע עבור פונקציית לולאת הריק.

שלב 4: הפרויקט ופונקציית הלולאה הריקת

הפרויקט ופונקציית לולאת הריק
הפרויקט ופונקציית לולאת הריק
הפרויקט ופונקציית לולאת הריק
הפרויקט ופונקציית לולאת הריק

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

לולאת void () {// Le o valor do pino do sensor ValorAtual = digitalRead (sensor);

אם (ValorAtual == 1 && ValorAnterior == 0)

{IntrudeAlert ();

ValorAnterior = 1;

}

אם (ValorAtual == 0 && ValorAnterior == 1)

{NoMoreIntrude ();

ValorAnterior = 0;

}

}

ראשית, האות מחיישן הנוכחות של PIR ייקרא כפי שמוצג להלן.

ValorAtual = digitalRead (חיישן);

לאחר מכן, יאומת אם הערך במשתנה ValorAtual הוא 1 או 0, כפי שמוצג להלן.

if (ValorAtual == 1 && ValorAnterior == 0) {IntrudeAlert ();

ValorAnterior = 1;

} if (ValorAtual == 0 && ValorAnterior == 0) {NoMoreIntrude ();

ValorAnterior = 0;

}

כתוב את המשתנה ValorAtual זה 1 והמשתנים ValorAnterior זה 0, החיישן למעשה מופעל ופנים הוא מושבת (ValorAnterior == 0). בדרך זו, הפונקציה תבוצע והמשתמש יקבל את ההודעה בנייד שלך. לאחר מכן, ערך המשתנה ValorAnterior יהיה שווה ל -1.

באופן זה, המשתנה ValorAnterior יסומן כי המצב האמיתי של החיישן מופעל.

כעת, אם הערך של המשתנה ValorAtual הוא 0 והערך של המשתנה ValorAnterior הוא שווה ל- 0, החיישן אינו מזהה חדירה ואז ערכו מופעל.

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

ההודעות שנשלחו למשתמש מוצגות למעלה.

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

שלב 5: פונקציות לשליחת הודעות

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

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

void IntrudeAlert () // Funcao para enviar mensagem de alerta Umidade Baixa {chip.println ("AT+CMGF = 1"); עיכוב (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); עיכוב (1000); SMS מחרוזת = "דלת פתוחה!"; chip.println (SMS); עיכוב (100); chip.println ((char) 26); עיכוב (1000); }

void NoMoreIntrude () // Funcao for enviar mensagem de alerta Umidade Normal

{chip.println ("AT+CMGF = 1"); עיכוב (1000); chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r"); עיכוב (1000); SMS מחרוזת = "דלת סגורה!"; chip.println (SMS); עיכוב (100); chip.println ((char) 26); עיכוב (1000); }

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

ה- AT+CGMF = 1 משמש להגדרת המודול לעבודה במצב טקסט SMS. לאחר העיכוב, המערכת תשלח את ההודעה למשתמש באמצעות הפקודה הבאה.

chip.println ("AT + CMGS = \" " + SeuNumero +" / "\ r");

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

SMS מחרוזת = "דלת סגורה!"; chip.println (SMS); עיכוב (100); chip.println ((char) 26); עיכוב (1000);

הצ'אר (26) משמש לאותת סוף ההודעה. תהליך עבודה זה דומה לשתי פונקציות לשליחת הודעה למשתמש.

הכרות

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

מוּמלָץ: