• 14-03-2025, 11:51:17
    #1
    Merhaba
    Arduino uno r3'e bağlı hareket sensörüm ve sim808 modülüm var.
    Hareket sensörü çalıştığında belirlediğim numaranın aranmasını istiyorum. Önceden bu kodu yazdırdım ve bağlantıları yaptım çalışıyordu ancak uzun bir süre sonra denediğimde sistem çalışmadı. Kodlarım da hazırda mevcut
    kod ve bağlantı konusunda yardımcı olabilecek var mı?
    Teşekkürler
  • 14-03-2025, 11:52:21
    #2
    kodu paylaşırsanız bakalım hocam
  • 14-03-2025, 12:28:20
    #3
    atik adlı üyeden alıntı: mesajı görüntüle
    kodu paylaşırsanız bakalım hocam
    Hocam şebeke zayıf veya yok hatası alıyorum serial monitörde
    hatların işin kodu yok ve telefon çeken bir yerdeyim
    donanımsal bir sorun olabilir mi?
    edit: şu an şebekede geldi. ama arama yapmıyor

    // ALARM PROJESİ HABER VEREN

    #include <DFRobot_SIM808.h>
    #include <SoftwareSerial.h>

    #define PIN_TX 11
    #define PIN_RX 10
    SoftwareSerial mySerial(PIN_TX,PIN_RX);
    DFRobot_SIM808 sim808(&mySerial);
    #define PHONE_NUMBER "+aranacak numara"

    #define pirpin 8
    int engel;

    void setup() {
    mySerial.begin(9600);
    Serial.begin(9600);
    pinMode(pirpin, INPUT);

    while(!sim808.init()){
    delay(1000);
    Serial.print("Sim808 init error rn");
    }
    Serial.println("Sim808 init success");
    }
    void loop() {
    int haraket = digitalRead(pirpin);
    if(haraket == HIGH){ // PIR PININDEN GELEN VERİ YÜKSEKSE
    if(engel == 0){ // EĞER PIR SENSÖRÜ DEVREDE DEĞİLSE
    sim808.callUp(PHONE_NUMBER);
    Serial.println("Aranıyor...");
    engel = 1; // PIR ÇALIŞTIĞINI BİLDİRELİMKİ DURMADAN ARAMA KOMUTU YOLLMASIN
    }
    }else{
    engel = 0; // PIR ÇALIŞMIYOR HARAKET YOK
    }
    }
  • 14-03-2025, 15:10:45
    #4
    Aramızdan Ayrılanlar - Vefat Edenler
    Else i kaldır hocam bir de öyle dene
  • 14-03-2025, 15:11:26
    #5
    Callupdan sonra delay koy
  • 14-03-2025, 19:02:27
    #6
    tekfir adlı üyeden alıntı: mesajı görüntüle
    Callupdan sonra delay koy
    olmadı ne yazık ki hocam
    şebeke de var ama çalmıyor
  • 15-03-2025, 20:26:33
    #7
    utku1 adlı üyeden alıntı: mesajı görüntüle
    Hocam şebeke zayıf veya yok hatası alıyorum serial monitörde
    hatların işin kodu yok ve telefon çeken bir yerdeyim
    donanımsal bir sorun olabilir mi?
    edit: şu an şebekede geldi. ama arama yapmıyor

    // ALARM PROJESİ HABER VEREN

    #include <DFRobot_SIM808.h>
    #include <SoftwareSerial.h>

    #define PIN_TX 11
    #define PIN_RX 10
    SoftwareSerial mySerial(PIN_TX,PIN_RX);
    DFRobot_SIM808 sim808(&mySerial);
    #define PHONE_NUMBER "+aranacak numara"

    #define pirpin 8
    int engel;

    void setup() {
    mySerial.begin(9600);
    Serial.begin(9600);
    pinMode(pirpin, INPUT);

    while(!sim808.init()){
    delay(1000);
    Serial.print("Sim808 init error rn");
    }
    Serial.println("Sim808 init success");
    }
    void loop() {
    int haraket = digitalRead(pirpin);
    if(haraket == HIGH){ // PIR PININDEN GELEN VERİ YÜKSEKSE
    if(engel == 0){ // EĞER PIR SENSÖRÜ DEVREDE DEĞİLSE
    sim808.callUp(PHONE_NUMBER);
    Serial.println("Aranıyor...");
    engel = 1; // PIR ÇALIŞTIĞINI BİLDİRELİMKİ DURMADAN ARAMA KOMUTU YOLLMASIN
    }
    }else{
    engel = 0; // PIR ÇALIŞMIYOR HARAKET YOK
    }
    }

    Hocam geç dönüş için kusura bakmayın şimdi görebildim.
    sim modulünün anteni tam yerine oturuyor mu anteni kontrol edin. Güç kaynağı olarak ne kullanıyorsunuz modül çalışırken yüksek akım çeker. Sim kartta sim kilidi var mı kontrol edin varsa çalışmaz.

    Aşağıya bıraktığım kodu kullanarak sim kart bağlantısını test edebilirsiniz. Signal quality 10 un altındaysa zayıf sinyal alıyorsunuzdur.
    void setup() {
        mySerial.begin(9600);
        Serial.begin(9600);
        pinMode(pirpin, INPUT);
    
        while (!sim808.init()) {
            delay(1000);
            Serial.println("Sim808 init error");
        }
        Serial.println("Sim808 init success");
    
        // Şebeke sinyal seviyesini kontrol et
        int signalStrength = sim808.checkSignalQuality();
        Serial.print("Signal Quality: ");
        Serial.println(signalStrength);
    
        // SIM kartın ağa bağlı olup olmadığını kontrol et
        if (sim808.checkNetworkRegistered()) {
            Serial.println("SIM kart ağa bağlı.");
        } else {
            Serial.println("SIM kart ağa bağlı değil, lütfen kontrol edin.");
        }
    }

    arama testi için kod:
    mySerial.println("ATD+905xxxxxxxxx;"); // Buraya test için kendi numaranızı yazın
    delay(1000);
  • 16-03-2025, 10:38:50
    #8
    Estafurullah
    hocam ilkinde ;
    exit status 1
    Compilation error: 'mySerial' was not declared in this scope

    ikincisinde;
    Compilation error: 'mySerial' does not name a type; did you mean 'Serial'?

    Bu hataları aldım

    atik adlı üyeden alıntı: mesajı görüntüle
    Hocam geç dönüş için kusura bakmayın şimdi görebildim.
    sim modulünün anteni tam yerine oturuyor mu anteni kontrol edin. Güç kaynağı olarak ne kullanıyorsunuz modül çalışırken yüksek akım çeker. Sim kartta sim kilidi var mı kontrol edin varsa çalışmaz.

    Aşağıya bıraktığım kodu kullanarak sim kart bağlantısını test edebilirsiniz. Signal quality 10 un altındaysa zayıf sinyal alıyorsunuzdur.
    void setup() {
        mySerial.begin(9600);
        Serial.begin(9600);
        pinMode(pirpin, INPUT);
    
        while (!sim808.init()) {
            delay(1000);
            Serial.println("Sim808 init error");
        }
        Serial.println("Sim808 init success");
    
        // Şebeke sinyal seviyesini kontrol et
        int signalStrength = sim808.checkSignalQuality();
        Serial.print("Signal Quality: ");
        Serial.println(signalStrength);
    
        // SIM kartın ağa bağlı olup olmadığını kontrol et
        if (sim808.checkNetworkRegistered()) {
            Serial.println("SIM kart ağa bağlı.");
        } else {
            Serial.println("SIM kart ağa bağlı değil, lütfen kontrol edin.");
        }
    }
    arama testi için kod:
    mySerial.println("ATD+905xxxxxxxxx;"); // Buraya test için kendi numaranızı yazın
    delay(1000);