اردوينو GSM SIM900


- بعض التطبيقات العملية نحتاج احياناً للتواصل مع الهواتف الخلوية , بغرض ارسال رسائل او استقبالها و حتى اجراء مكالمات او استقبالها .
                           
- تعتبر القطعه SIM900 نظام متكامل و فعّال للاتصالات الخلوية رباعية التردد (850 - 900 - 1800 - 1900 ميجا هيرتز ) قادرة على التعامل مع شرائح الهاتف النقّال  ارسال و استقبال المكالمات و الرسائل النصية بالأضافة لاحتوائها مزايا اخرى مثل امكانية الوصول للانترنت عبرها , دعمها لخدمة التموضع العالمي GPRS . 

- نستطيع بواسطة هذه القطعه ارسال و استقبال المكالمات و الرسائل النصية و التحكم بهذه العمليات بواسطة الأردوينو .

* التجربة :
1) أردوينو .
2)EFCOM Pro GSM SIM900
3) اسلاك توصيل 
4)لوحة توصيل صغيرة breadboard
5) زمور او ضوء صغير LED Or Buzzer
6) مقاومة 50 - 100 أوم . 
7) شريحة هاتف SIM Card
8)مصدر تغذية لا يقل عن 5 فولت - 1 أمبير 


مكونات دارة ال GSM  كالأتي :

- من المهم استخدام شريحة هاتف فعّالة و غير مغلقة Locked و ان تحتوي على رصيد كافي " في حال اردت الأتصال او ارسال رسائل نصية " و ان تكون في مكان توجد به تغطية لشبكة الهاتف.


- تحتوي هذه اللوحة على زرين على الجانب الأيمن , وضيفتهما هو وضع ال SIM900 في وضع اعادة التشغيل و بدء الأتصال بالشبكة .


-على الجهة اليسرى من الصورة هناك 3 أضوية LED :
1) PWR LED : يدل على تغذية اللوحة بالفولتية و بدء تشغيلها .
2)NET LED : هذا الضوء في حال كان يعطي ترميشاً Blink سريعاً فهذا يعني انه لم يربط القطعه مع شبكة الهاتف , اذا تم الربط مع الشبكة بشكل صحيح فسوف يعطي ترميشاً بطيئاً .
3) STA LED:هذا يعطي مؤشراً على بدء الأتصال مع الشبكة في محاولة للاتصال بها .




يجب تغذية هذه اللوحة بمصدر جهد كافي لا يزيد جهده عن 5 فولت و لا يقل تياره عن 1 أمبير لان SIM900 تسحب تياراً عالياً في وضعيه التشغيل . 


التوصيل : 


او مع توصيل الزمور لأول تجربة :




سأقوم بتنفيذ تجربة ارسال و استقبال للمكالمات و معرفة اذا ما كان هنالك اتصال ورد او ان ال SIM900 يقوم باجراء مكالمة .
قم بتغيير رقم الهاتف في المثال بالرقم الذي يناسبك .
عليك ايضاً قبل تحميل البرنامج تحميل هذه المكتبة و وضعها في مسار المكتبات الخاصة بالأردوينو .
البرنامج : 
/*
SIM900A breakout
send and receive calling 
code written by : AIT-LASRI YOUNES
https://www.facebook.com/arduino.electromaroc/

*/
#include <SoftwareSerial.h>
#include "SIM900.h"
#include "sms.h"
#include "call.h"
CallGSM call;
SMSGSM sms;
const int buzzer = 12 ;
boolean BuzzerStatus = false ; 
byte CheckCallStatus;
void setup() {
  // put your setup code here, to run once:
  Serial.begin(38400);
  pinMode(buzzer,OUTPUT);
  Serial.println("Mohannad Rawashdeh,GSM Shield Starting ...");
    //Start configuration of shield with baudrate.
  //For http uses is raccomanded to use 4800 or slower.
  if (gsm.begin(19200)){ Serial.println("Ready to use ");}
  else{ Serial.println("Failed to initilaize ! " ); }
}

void check(){
  Serial.print("CheckCallStatus is : ");
  switch(CheckCallStatus){
  case 0: Serial.println("no call untill Now");BuzzerStatus = false ; break;
  case 1: Serial.println("Voice call Incoming");BuzzerStatus=!BuzzerStatus;break;
  case 2: Serial.println("Active Voice call ");break;
  }
}
void loop() {
CheckCallStatus=call.CallStatus();check();
digitalWrite(buzzer,BuzzerStatus);
if (Serial.read() =='a'){
 delay(1000);
call.Call("xxxxxxxxx"); //Put Your number here
 CheckCallStatus=call.CallStatus();check();
delay(20000);// wait to make a Call !
call.HangUp();// Interrupt the calling , finish it .
  // put your main code here, to run repeatedly: 
}
delay(1000);

  // put your main code here, to run repeatedly:  
}

                               


EmoticonEmoticon