27 Kasım 2014 Perşembe

Arduino ile Telefon Yapma ( GSM GPRS Shield Arduino )


Bu çalışmamızda GSM GSPRS shieldın arduino ile nasıl kullanılacağını, bağlantıların nasıl yapılacağını ve kodun nasıl yazılacağını inceleyeceğiz. GSM GPRS shieldlar AT komutları ile çalışmaktadır. Haberleşme modüllerine göre farklı AT komutları ile farklı işlemler yapılabilir.

Bu çalışmada SIM900 GSM GPRS shieldı kullanılmıştır.SIM 900 haberleşme modülünü kullanan bu sheild sayesinde bir telefonun yaptığı temel görevler yerine getirilebilmektedir. Örneğin arduino ile bir numara aranabilmekte, mesaj atılabilmekte ve internete girilebilmektedir.

GSM GPRS shield ile arduino bağlantısı oldukça basittir. Shield üzerindeki Tx, Rx pinleri sırasıyla arduinonun Rx, Tx pinlerine bağlanır. Haberleşme bu şekilde sağlanmış olur. Ancak birçok GSM GPRS shield 5V üzeri gerilimle ve 200mA - 1.5 A arası çalışma akımı ile çalışabilmektedir. Bu yüzden harici bir kaynaktann beslenmelidir. Bu kaynak ile arduino da aynı zamanda beslenebilir. Ancak arduinonun ve sheildın aynı kaynakla beslenmediği durumlarda groundlar birleştirilir.

arduino gsp/gprs code

Arduino GSM GPRS baglantısı



GSM GPRS Shield                Arduino

RX                                           TX
TX                                           RX
GROUND                            GROUND

Çalışma videosunu buradan izleyebilirsiniz: http://www.youtube.com/watch?v=BfiY58e4OQM&feature=youtu.be

Arduino ile bir telefonun aranması ; 



#include <SoftwareSerial.h> 
 
SoftwareSerial  Sim900Serial(2, 3); // sim900 gprs shield 
//rx-tx sırasıyla 2 ve 3 e takılır
 
void setup()
{
  Sim900Serial.begin(115200);               // GPRS baud rate  
  delay(2000);
  Sim900Serial.println("AT+IPR=19200");  // bu değer tüm gprs 
  //shieldlarında aynı değildir manuellerden bakılmalıdır
  delay(500);
  Sim900Serial.begin(19200);            // bu değer tüm gprs 
  //shieldlarında aynı değildir manuellerden bakılmalıdır   
  delay(1000); 
}
void loop()
{
  Sim900Serial.println("ATD05425420000;"); // aranmasını istediğiniz 
  //numara girlir. ATD komutu sim900'ün AT komut manueli incelendiğinde 
  //arama için kullanıldığı görülür
  //Örnek: Sim900Serial.println("ATD05425420000;"); vodafone müşteri 
  //hizmetlerinin numarası
  while(1);
}


Arduino ile bir telefona mesaj atılması ; 


#include <SoftwareSerial.h>
SoftwareSerial Sim900Serial(2, 3);
void setup()
{
  Sim900Serial.begin(115200);               // GPRS baud rate  
  delay(500);
  Sim900Serial.println("AT+IPR=19200");
  delay(500);
  Sim900Serial.begin(19200);               // GPRS baud rate , Tüm shieldlarda aynı değildir 
  delay(1000);
  Serial.begin(9600);               // bilgisayar seri port baud rate
 Serial.println("SMS gondermek icin g tusuna basiniz: "); 
}
void loop()
{   
   if (Serial.available())
    switch(Serial.read())
   {
     case 'g':
       SendTextMessage();
       break;
    } 
   if (Sim900Serial.available())
    Serial.write(Sim900Serial.read());
}
void SendTextMessage()
{
  Sim900Serial.print("AT+CMGF=1\r");    //SMS text halde gönderilir. Bu komutun ne iş yaptığı sim900 AT komut manuelinden bakılır
  delay(100);
  Sim900Serial.println("AT + CMGS = \"05425420000\"");//mesajın gönderileceği numara
  delay(100);
  Sim900Serial.println("golmuhendis.blogspot.com.tr");//gönderilecek mesaj
  delay(100);
  Sim900Serial.println((char)26);
  delay(100);
  Sim900Serial.println();
}





9 yorum:

  1. Bende araç takip sistemi yapmak istiyorum elimde uno kart var.Bu gsm/gps tracker bir sistem mi almam lazım sadece gps shield ürünler alsam yeter mi.Türkiyeden bir ürün almak istiyorum çünkü imei no sıkıntısı çıkmasın.Aynı zamanda modülden aldığı verileri de haritada göstermesi gerekiyor,sizin yaptığınız bu projeyi yapsam google mapsde gösterebilirmiyim aracın konumunu. Kütüphanesi olan arduinoya eklenebilir bir ürün tavsiye edebilirmisiniz ben istediğim gibi birşey bulamadım

    YanıtlaSil
    Yanıtlar
    1. Çok uzun bir zaman geçmiş ama çözümünü gsm ve gps shield alarak saglayabilirsiniz. Gps shielddan koordinatları alıp gsm shield ile yollayabilirsiniz yolladiginiz koordinatlari da direk harita uzerinden( google maps araciligi ile bulabilirsiniz)

      Sil
    2. Çok uzun bir zaman geçmiş ama çözümünü gsm ve gps shield alarak saglayabilirsiniz. Gps shielddan koordinatları alıp gsm shield ile yollayabilirsiniz yolladiginiz koordinatlari da direk harita uzerinden( google maps araciligi ile bulabilirsiniz)

      Sil
    3. gökhan bey paylaşım için çok teşekkürler fakat ATA ve ATH komutlarınını kullanımı hakkında da bilgi verebilir misiniz ?

      Sil
  2. sim 808 ile arama yapmak istiyorum ama sizin kodunuzdan yola çıkarak ama arama yapamıyorum

    YanıtlaSil
    Yanıtlar
    1. Sorunu çözebildinizmi bende aynı sorunu yaşıyorum sim 808 ile ilgili çok az ve yabancı kaynak var.. Cözebildiyseniz nasıl çözdünüz. Banada söylermisiniz tel 05444838080

      Sil
    2. ben de sesli mesaj yapmak istiyorum ama yardımcı olabilir misiniz? Arama yapabildiniz mi?

      Sil
  3. Sim808 için arama komutu ATD053......; şeklinde

    YanıtlaSil
  4. Tel no sonunda ya : Yada ; olucak unutmayın

    YanıtlaSil