Al-Nassim إنذار عن طريق البريد الالكتروني بإستخدام الاردوينو

Ahmad Altonji

Administrator
طاقم الإدارة
دارة إنذار عند فتح باب و الإشعار بالبريد الالكتروني
فكرة الموضوع اتت بعد انتشار الانترنت بشكل واسع حيث اصبحت اجهزتنا متلصة بالانترنت على مدار الساعة
في المنزل
في المكتب
في السيارة
وحتى اوقات التنزه
وكثيرا منا من يرغب بعمرفة ما اذا تم فتح باب شقته او مكتبه او حتى خزنته اثناء غيابه يمكنكم الان معرفة هذا الامر فورا و عن طريق رسالة بريد الكتروني تصلك اينما كنت


اليكم الشرح :
اولا يلزمنا ما يلي

  • Arduino UNO
  • PHPoC Shield for Arduino
  • Magnetic sensor SAMSUNG SIM
do.php


ثانيا اليكم طريقة التوصيل :
  • نقوم بتركيب الـ PHPoC Shield for Arduino على الـ Arduino UNO
  • نحضر كبل الشبكة و نوصله بالـ PHPoC Shield for Arduino و نتأكد ان الاتصال بشبكو الانترنت قد تم بشكل سليم
  • نقوم بوصل اسلاك الـ Magnetic sensor بحيث يكون السلك الأسود موصلا مع A0 على الـ Shield و السلك الأحمر مع 5V على الـ Shield
ملاحظة : قد تم وصل الاسلاك على الـ Shield لانه قد تم تركيبه على الـ Arduino UNO وقد تم توصيل جميع الاقطاب

صور توضيحية لطريقة التوصيل :

do.php


do.php


ثالثا وهنا سيتم ادراج الكود البرمجي للـ Arduino

PHP:
#include "SPI.h"
#include "Phpoc.h"
 
PhpocEmail email;
 
void setup() {
  Serial.begin(9600);
 
  Phpoc.begin(PF_LOG_SPI | PF_LOG_NET | PF_LOG_APP);
 
  //Phpoc.beginIP6(); uncomment this line if you are going to use IPv6
 
  pinMode(A0, INPUT);
}
 
int previous_status = 1;
 
 
void loop() {
  int current_status = digitalRead(A0);
  int returnValue;
 
  if (previous_status == 1 && current_status == 0) {    // if door is opened...
    email.setOutgoingServer("smtp.gmail.com", 587);
    email.setOutgoingLogin("Google ID", "Google Password");
 //Ahmad Altonji
 //www.altonji.net
 //Mob:+963935888592
 //Syria - Aleppo
 
    email.setFrom("Gmail address ", "Sender Name"); //your email on gmail and password
    email.setTo("Receiver email address", "Receiver Name"); // Receiver email address and Receiver Name
    
    email.setSubject("Door is opened. [#905]");  // Mail Subject
    
    // Mail Contents
    email.beginMessage();
    email.println("#905");
    email.println("");
    email.println("Door is opened.");
    email.endMessage();               
 
    if (email.send() > 0)  // Send Email
      Serial.println("Your Mail has been sent successfully");
    else
      Serial.println("Your Mail is not sent");
 
    
  }   else if (previous_status == 0 && current_status == 1) { // if door is closed...
 
 
  }
 
  previous_status = current_status;
  delay(1500);
 
}

فيديو توضيحي :


أرجو أن أكون وفقت بالشرح
 
التعديل الأخير:
أعلى