per sms relais schalten? von nur einer nummer?

hi ich bin ganz neu!

ich kann zwar zeitsteuerungen usw aber mein neuee vorhaben… da hätte ich vllt unterstützung nötig.

ich habe :

arduino nano 3.0
gsm shield sim900 (wählbar ob hard oder software serial)
relais

was ich will :

per sms das relais an und ausschalten.
die steuerung darf aber nur von einer nummer gesteuert werden.

kann mir jemand da vllt helfen?

danke

Hallo!

Als erstes und auch am einfachsten kannst du dir selber helfen!

In der Arduino Ide hat es schon viele Beispiele mit der Gsm-Library! Probier zuerst mal dort ein paar Beispiele durch und somit bekommst du auch zuerst mal das Shield zum laufen.

Wenn das mal gut läuft und du im seriellen Monitor die Nummern und den Status des Shield siehst, dann kannst du die Anrufernummer mit einer gespeicherten Nummer vergleichen und bei übereinstimmung ein Relais an einem Pin schalten.

Achte aber darauf dass das Relais nicht direkt am Pin des Arduino hängt. Mach dich schlau wie man ein Relais an einen Mikrocontroller korrekt anschliesst!

Gruss Geissi

Dann zeig uns doch mal, welchen Sketch du dazu schon geschrieben hast und wo dein Problem ist.
Den Sketch bitte in Code-Tags (Schaltfläche </>) hier einfügen.

Ich würde dieses Beispiel als Vorlage verwenden. Die Nummer bekommst du mit diesem Befehl sms.remoteNumber(senderNumber, 20); und kannst sie dann in einer if-Abfrage Vergleichen.

ich hab noch nix geschrieben.. ich sammel vorerst information!

danke euch!

erstmal ist ja die frage... was ist am besten?

nano tx an rx vom shield nano rx an tx vom shield

oder rx und tx vom shield an normale i/o

hard oder software?!

leider kenn ich mich fast garnicht aus! aber ich erhoffe mir hier halt hilfe...

im endefekt solls am ende so aussehen:

sms geht raus sms beinhaltet den befehl an20

an20 bedeutet an für 20 minuten

fur 20 minuten wird nun die standheizung im auto aktiviert.

sind 10 minuten um schaltet ein 2. relais die innenraumbeluftung an.

nach 20 minuten geht beides aus.

wie gesagt zurzeit sammel ich noch informationen wie so ein script aussieht usw.

danke!

Es könnte etwa so aussehen (die Aktionen musst du natürlich noch mit Leben füllen)

bool HeizungLaeuft = false;
bool LichtIstAn = false;
unsigned long HeizungGestartet;
unsigned long LoopAnfang;

bool smsVonRichtigerNummerMitRichtigenInhaltEmpfangen();
void LichtAn();
void LichtAus();
void HeizungAus();
void HeizungAn();

void loop() {
  LoopAnfang = millis();
  if (!HeizungLauft) {
    if (smsVonRichtigerNummerMitRichtigenInhaltEmpfangen()) {
      HeizungAn();
      HeizungLauft = true;
      HeizungGestartet = LoopAnfang;
    }
  } else {
    if (!LichtIstAn) {
      if (LoopAnfang - HeizungGestartet > 10  * 60 * 1000) {
        LichtAn();
        LichtIstAn = true;
      }
    }
    if (LoopAnfang - HeizungGestartet > 20  * 60 * 1000) {
      LichtAus();
      LichtIstAn = false;
      HeizungAus();
      HeizungLauft = false ;
    }
  }
}

Und das

nano tx an rx vom shield 
nano rx an tx vom shield

mache bitte nie, da die Ports von der USB-Schnittstelle benutzt werden.

Das hier

oder rx und tx vom shield an normale i/o

ist meist richtig. Du benötigst nur eine zusätzliche Library https://www.arduino.cc/en/Reference/SoftwareSerial . Man muss nur prüfen, ob die rx und tx nicht auf dem Shield vertauscht sind.

mmmh ok!

also software serial!

ich werds erstmal eh so machen das ich 2 leds ans nano pack... und dann das mit der sms so zum laufen bringe.

dann kommt der schritt das nur die eine rufnummer für aktion am nano sorgt.

wenn das funktioniert muss ich ja nur noch den ablauf der routine (zeitliche abfolge der ansteuerung der leds) einbringen.

leider kenn ich mich mit der programmiersprache und at befehlen null aus!

danke für eure Hilfe!

hoer173: wenn das funktioniert muss ich ja nur noch den ablauf der routine (zeitliche abfolge der ansteuerung der leds) einbringen.

Oder aus meinem Post übernehmen, da ist der Zeitablauf so wie du ihn haben wolltest.

Zum Testen würde ich aber die 20 / 10 Minuten durch 20 / 10 Sekunden ersetzen.

hoer173:
leider kenn ich mich mit der programmiersprache und at befehlen null aus!

Mit der richtigen Dokumentation und einigen Büchern wirst du das auch lernen.

ps!

mein gsm sim900 shield hat nur 5 pins!

rx tx 5v gnd gnd

es ist nicht das orginale arduino shield!

ist das wichtig?!

hoer173: ps!

mein gsm sim900 shield hat nur 5 pins!

rx tx 5v gnd gnd

es ist nicht das orginale arduino shield!

ist das wichtig?!

Ich denke mal, das wird kein Problem sein. Poste doch mal ein Datenblatt des Shield oder mindestens einen Link wo das Shield her ist.

ja das einzige was ich uber das teil weis ist das es von ebay ist. und ich hab ne mail bekommen mit anhang... da stehn die at code Geschichten drin... und ne pdf komplett auf chinesisch... wo das schema drin ist.. suppppa ;) daraus kann man dann lesen was welche jumper position ist.....

http://www.sainsmart.com/sim900-gprs-gsm-board-quad-band-module-kit-for-arduino-high-quality-new.html

das ist die kiste... mit antenne etc

Auf der von dir geposteten Seite gibt es 4.2 MB Dokumentation in Englisch.

Das ist der Link https://s3-ap-northeast-1.amazonaws.com/sain-amzn/20/20-012-106/EN.zip

haste dir das mal angeschaut???? ich weis nicht wie ich das jumpern soll... damit ich den software serial zugang hab :(

also für mich ist erstmal interessant wie ich das teil richtig verkabel mit dem nano... :(

Hallo

Wie in meinem ersten Post schon angedeutet habe ich empfohlen die Beispiele zu erkunden! Da du ja dies leider nur sehr spährlich machst ist es auch schwierig so Hilfe anzubieten.

Es steht ganz genau geschrieben wie das Shield anzuschliessen ist. Auch wenn dein Shield davon abweicht ist die Belegung immernoch dieselbe.

Ich bin jetzt so freundlich und habe dies für dich herausgesucht: Shield Tx geht auf Nano Pin 3 Shield Rx geht auf Nano Pin 2 Seriell Jumper auf Software (Sw) Es braucht keine weiteren Librarys. Eventuell ist es möglich das dass Shield erst noch gestartet werden muss.Dies kann durch einen Power Taster oder einen Pin vom Nano her gesteuert werden. Setze mal alles zusammen,lade den sketch hoch und schaue mal was die Serielle Ausgabe dir für ein Feedback gibt.Mit einer gültigen Simkarte kann da gar nicht mehr viel schief gehen.

könntest du mir mal einen passenden sketch hier posten? irgendwie klappt hier gornix...

karte ist drin.. schick ne sms.. guck aufen monitor.. nix passiert...

du sagst.. keine libs sind erforderlich.. aber brauch ich nicht die für serial und gsm?

danke für deine mühe!!!

@Geissi Deine Idee mit den Beispielen im GSM-Ordner ist sehr gut, allerdings habe ich diesen in meinen Installationen nicht gefunden. Ich vermute fast, der wird nicht mehr mitgeliefert.

Allerdings soll das keine Entschuldigung für den TO sein, der ja auf deinen Post nicht reagiert und das ist sehr bedauerlich. Auch der Post von Wandall wird übergangen, denn da steht alles über eine super Dokumentation drin. Da ist wirklich alles nachzulesen.

Ich muss immer häufiger beobachten, wir reißen und hier den .... auf und das in unserer Freizeit aber jeder Post wird ignoriert. Ich versteh das nicht. Warum lest ihr die Antworten nicht, die man euch schreibt. Und der PC ist auch kaputt oder geht Google bei euch auch nicht.

Wenn wir euch schon helfen sollen, dann macht doch bitte das was wir vorschlagen und ignoriert es nicht einfach.

Nochmal zum GSM-Beispiel, ich habe selbst gegoogelt und nicht gefunden, wer hat den Link zu den Beispielen, interessiert mich jetzt auch, obwohl ich das Modul nicht habe, aber man wird nicht dümmer.

Edit: Ok, das mit den Beispielen hat sich erledigt. In der aktuellen Version R5 ist es wieder dabei.

@hoer173 Also downloaden und einspielen. Da ist alles dabei. Und mach es bitte.....

mein nano lässt sich nicht beschreiben.. kompiliert... und der upload hängt nach 20 sekunden kommt der fehler das er die platine nicht bespielen kann an 3 pcs probiert :(