INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
SIM900 GSM mit Arduino UNO ?
29.10.2020, 19:37
Beitrag #1
SIM900 GSM mit Arduino UNO ?
Hallo zusammen,

Habe ein Problem mit Anruf-betätigung und -empfang.

Das Gsm-Modul sim900 scheint gewisse Abfragen (AT-Kommandos) richtig zu beantworten. Also ob die sim funktioniert, das Netz vorhanden ist und die Signalstärke usw. .

Bei den Versuch einen Anruf zu tätigen kommt die Fehlermeldung no dial tone .

An was könnte es liegen das kein Anruf getätigt und entgegengenommen werden kann ?

Hier noch der Code :

Code:
#include <SoftwareSerial.h>

#define PIR 12

// Configure software serial port
SoftwareSerial SIM900(7, 8);
char incoming_char=0;

void setup() {
  pinMode(PIR, INPUT);
  // initialize serial communications
  Serial.begin(9600);
  SIM900power();
  // Arduino communicates with SIM900 GSM shield at a baud rate of 19200
  // Make sure that corresponds to the baud rate of your module
  SIM900.begin(19200);
  // Give time to your GSM shield log on to network
  delay(20000);

  SIM900.print("AT+CLIP=1\r"); // turn on caller ID notification
  delay(100);

  SIM900.println("AT"); //Handshaking with SIM900
  updateSerial();
  SIM900.println("AT+CCALR?"); //able to call okay ?
  updateSerial();
  SIM900.println("AT+CSQ"); //Signal quality test, value range is 0-31 , 31 is the best
  updateSerial();
  SIM900.println("AT+COPS?"); //Connection test
  updateSerial();
  SIM900.println("AT+COPS=?"); //Operator list
  updateSerial();
  SIM900.println("AT+CBC"); //Battery test
  updateSerial();
  SIM900.println("AT+CCID"); //Read SIM information to confirm whether the SIM is plugged
  updateSerial();
  SIM900.println("AT+CREG?"); //Check whether it has registered in the network
  updateSerial();
}

void loop() {
if(digitalRead(PIR) != LOW) {
  Serial.println("PIR run");
  delay(2000);
  // Make the phone call
  callSomeone();
}
if(digitalRead(PIR) != HIGH) {
  Serial.println("PIR stop");
  //digitalWrite(redLED, LOW);
  delay(2000);
}

updateSerial();

// Display any text that the GSM shield sends out on the serial monitor
  if(SIM900.available() >0) {
    // Get the character from the cellular serial por
    // With an incomming call, a "RING" message is sent out
    incoming_char=SIM900.read();
    //  Check if the shield is sending a "RING" message
    if (incoming_char=='R') {
      delay(10);
      Serial.print(incoming_char);
      incoming_char=SIM900.read();
      if (incoming_char =='I') {
        delay(10);
        Serial.print(incoming_char);
        incoming_char=SIM900.read();
        if (incoming_char=='N') {
          delay(10);
          Serial.print(incoming_char);
          incoming_char=SIM900.read();
          if (incoming_char=='G') {
            delay(10);
            Serial.print(incoming_char);
            // If the message received from the shield is RING
            // Send ATA commands to answer the phone
            SIM900.print("ATA\r");
          }
        }
      }
    }
  }
}

void updateSerial()
{
  delay(500);
  while (Serial.available())
  {
    SIM900.write(Serial.read());//Forward what Serial received to Software Serial Port
  }
  while(SIM900.available())
  {
    Serial.write(SIM900.read());//Forward what Software Serial received to Serial Port
  }
}

void SIM900power() {
  pinMode(9, OUTPUT);
  digitalWrite(9,LOW);
  delay(1000);
  digitalWrite(9,HIGH);
  delay(2000);
  digitalWrite(9,LOW);
  delay(3000);
  Serial.println("SIMpower okay");
}

void callSomeone() {
  // REPLACE THE X's WITH THE NUMER YOU WANT TO DIAL
  // USE INTERNATIONAL FORMAT CODE FOR MOBILE NUMBERS
  SIM900.println("ATD + +49xxxxxxxxx;"); // die Nummer ist nur ein Beispiel
  delay(100);
  SIM900.println();
  //Serial.println(SIM900.println());
  
// In this example, the call only last 30 seconds
// You can edit the phone call duration in the delay time
  delay(50000);
  // AT command to hang up
  SIM900.println("ATH"); // hang up
  //Serial.println(SIM900.println());
  Serial.println("call okay");
}

Vielen Dank

Freundliche Grüsse
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.10.2020, 22:39
Beitrag #2
RE: SIM900 GSM mit Arduino UNO ?
Hallo,
die meisten Probleme der Funktion von Arduino und GSM-Modul liegen bei der Spannungsversorgung.
Wie hast du die Teile angeschlossen und mit welcher Spannung/Strom betreibst du diese ?

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.10.2020, 22:55
Beitrag #3
RE: SIM900 GSM mit Arduino UNO ?
(29.10.2020 22:39)hotsystems schrieb:  Hallo,
die meisten Probleme der Funktion von Arduino und GSM-Modul liegen bei der Spannungsversorgung.
Wie hast du die Teile angeschlossen und mit welcher Spannung/Strom betreibst du diese ?

Hallo,

Für den Arduino UNO und SIM900 shield, benutze ich je eine 9 Volt Alkalin Batterie.

Spannungsstand, 8.25 und 8.43 Volt.

Vielen Dank

Mit freundlichen Grüssen
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
29.10.2020, 23:43
Beitrag #4
RE: SIM900 GSM mit Arduino UNO ?
(29.10.2020 22:55)Marco1234 schrieb:  Hallo,

Für den Arduino UNO und SIM900 shield, benutze ich je eine 9 Volt Alkalin Batterie.

Spannungsstand, 8.25 und 8.43 Volt.

Vielen Dank

Mit freundlichen Grüssen
Marco

Hallo Marco,

da könnte ich mir vorstellen, dass die Kappazität der Batterie beim Senden in die Knie geht, somit also nicht ausreicht.
Erfahrungsgemäß ziehen die Module ca. 2A im Sendefall, gerne auch mal mehr. Da musst du ein kräftiges Netzteil verwenden und meist noch einen Elko (ca. 1000µF) zur Pufferung.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.10.2020, 18:17
Beitrag #5
RE: SIM900 GSM mit Arduino UNO ?
(29.10.2020 23:43)hotsystems schrieb:  
(29.10.2020 22:55)Marco1234 schrieb:  Hallo,

Für den Arduino UNO und SIM900 shield, benutze ich je eine 9 Volt Alkalin Batterie.

Spannungsstand, 8.25 und 8.43 Volt.

Vielen Dank

Mit freundlichen Grüssen
Marco

Hallo Marco,

da könnte ich mir vorstellen, dass die Kappazität der Batterie beim Senden in die Knie geht, somit also nicht ausreicht.
Erfahrungsgemäß ziehen die Module ca. 2A im Sendefall, gerne auch mal mehr. Da musst du ein kräftiges Netzteil verwenden und meist noch einen Elko (ca. 1000µF) zur Pufferung.

Hallo Dieter,

Danke, dass könnte auch sein. Ich probiers mal mit einem Netzteil das min. 2 Ampere liefern kann.
Oder was denkst du, könnte man auch zwei 9 Volt Batterien parallel schalten. Wieviel Kapazität hat so eine 9 Volt Block Batterie (Energizer(Alkaline)) ?

Undo wie wird der Kondensator geschaltet/verdrahtet ?

Vielen Dank

Mit freundlichen Grüssen
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.10.2020, 18:41
Beitrag #6
RE: SIM900 GSM mit Arduino UNO ?
Nein, die Batterien solltest du nicht parallel schalten.
Der Elko wird parallel zur Versorgungsspannung geschaltet, + auf + und - auf -.
Welche Kapazität die Batterien haben, hängt sehr vom Type ab.
Kaum mehr wie 700mA, oder so.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.10.2020, 20:23
Beitrag #7
RE: SIM900 GSM mit Arduino UNO ?
(30.10.2020 18:41)hotsystems schrieb:  Nein, die Batterien solltest du nicht parallel schalten.
Der Elko wird parallel zur Versorgungsspannung geschaltet, + auf + und - auf -.
Welche Kapazität die Batterien haben, hängt sehr vom Type ab.
Kaum mehr wie 700mA, oder so.

Okay, weder es mal mit einem passenden Netzteil probieren und mich nochmals melden. Eigentlich wollte ich das Gerät mobil halten.

Oder was meinst du zu diesen Batterien ?

Vielen Dank
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.10.2020, 21:43
Beitrag #8
RE: SIM900 GSM mit Arduino UNO ?
Solch kleine Batterien habe i.d.R. einen viel zu hohen Innenwiderstand um bei 2A noch genügend Ausgangsspannung liefern zu können.
Akkus schneiden da besser ab.

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Arduino Mega 2560 vs Arduino DUE Batucada 24 11.711 11.07.2020 15:46
Letzter Beitrag: Tommy56
  Probleme mit SIM900 GSM seit PinManagment test BennIY 0 1.763 31.07.2016 23:33
Letzter Beitrag: BennIY
  LCD Anzeige für Arduino Mega2560 an Arduino Due? DaniDD 1 4.870 03.06.2015 12:16
Letzter Beitrag: DaniDD
  Arduino Pin mit anderem Arduino auslesen - geht das? Gelegenheitsbastler 8 10.894 08.05.2015 20:49
Letzter Beitrag: Bitklopfer
  Original Arduino MEGA 2560 und Original Arduino TFT LCD screen funzt nicht Odiug 6 7.469 12.12.2014 15:28
Letzter Beitrag: Odiug
  Arduino XBee mit XBee Arduino Werte versenden th3Khem 2 5.204 23.08.2013 10:12
Letzter Beitrag: th3Khem
Question Arduino Mega ADK oder Arduino Due? Baja-Junky 1 10.836 14.08.2013 21:16
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste