» Elektronik » Arduino »Wir machen die einfachste Signalisierung auf GSM SIM800L und Arduino für Hütten, Garagen

Wir machen die einfachste Signalisierung auf GSM SIM800L und Arduino für Sommerhaus, Garage


Mit Beginn der Sommersaison bestand die Notwendigkeit, das Landhaus zu schützen. Ich wollte einen einfachen, aber zuverlässigen Einbruchalarm mit Signalübertragung auf ein Handy machen. Es wurde beschlossen, ein Gerät mit Alarmübertragung auf ein Mobiltelefon zu montieren elektronisch auf Aliexpress gekaufte Leiterplatten. Wie sie sagen, billig aber fröhlich. Die Hauptelemente dieses Designs sind das GSM SIM800L-Modul und die Arduino-Karte (Sie können jeden Nano, Uno, Pro Mini und dergleichen verwenden).

Das Gerät verfügt über fünf Alarmeingänge für Kontaktsensoren. Ein oder mehrere in Reihe geschaltete Sensoren können an jeden Eingang angeschlossen werden. Weisen Sie in einer Skizze jeder Sicherheitsschleife einen Namen zu (z. B. eine Eingangstür, Fenster 1, Fenster 2 usw.). Das Sicherheitsgerät funktioniert folgendermaßen: Wenn der Stromkreis der ersten Schleife unterbrochen ist, ruft das Gerät zuerst das erste Telefon des Teilnehmers an, stoppt dann den Anruf und auch Nr. 2. Nr. 2 ist notwendig angesichts der Tatsache, dass, wenn plötzlich der erste Teilnehmer offline ist oder die Batterie und andere Probleme hängen bleiben). Wenn die Schleife nach der ersten ausgelöst wird, wird eine SMS-Nachricht mit dem Namen der Schleife gesendet, die im selben Fall an beide Teilnehmernummern funktioniert hat.

Aufzählung von Werkzeugen und Materialien.
Lithium-Ionen-Akku von einem alten Telefon 3.7V \ 1600mA-1pc
-Verbindungsdrähte;
Lötkolben;
Tester;
-transparente Plastikbox -1St.;
Zahlung Arduino Nano -1 Stk;
-Widerstände 10kOhm-7pcs;
- Steckbrett aus Folientextolit;
- 1 Stück Netzschalter;
- SIM800L-Modul -1 Stück;
- Absenkplatte 1-2A -1St.;
- Anschlussstecker.

Erster Schritt. Zusammenbau einer Sicherheits-GSM-Geräteschaltung.
Foto-Schema.


Wir löten Plug-In-Pads für das GSM SIM800L-Modul und das Arduino-Modul auf das Steckbrett. Dies vereinfacht die Installation und erleichtert den Austausch von Modulen bei Bedarf. Lötwiderstände und andere Anschlüsse. Die Widerstände vom RX-Pin des SIM800L-Moduls werden an den digitalen Eingang Arduino D3 angeschlossen, um der Spannung der Eingänge beider Module zu entsprechen. Arduino D4-D8-Eingänge werden durch Widerstände gezogen. Der Switch ist in der Stromversorgungslücke des SIM800 GSM-Moduls und der Arduino-Platine montiert, um das gesamte System zu aktivieren. Die Verwendung einer Batterie, die es dem Gerät ermöglicht, zwei bis drei Tage ohne 220-V-Netzwerk zu arbeiten. In meinem Fall erzeugt der Spannungswandler aus einer Spannung von 12 V eine Spannung von 4,2 V und lädt gleichzeitig die Batterie auf (Sie können eine andere Karte verwenden, z. B. TP4056 mit Schutz).

Zweiter Schritt. Geräteprogrammierung.
Auf der SIM-Karte sollten PIN-Codes und alle unnötigen Funktionen gelöscht werden.Sie müssen jedoch zuerst das SIM800L-Modul selbst konfigurieren. Es gibt viele Videos zu diesem Thema im Netzwerk, es ist nichts Kompliziertes daran. In der Skizze geben wir Ihre Telefonnummern an, passen die Namen der Sicherheitszonen an und können die Zeit für die Überwachung des Systems einstellen (wenn das Gerät nach einer bestimmten Zeit ordnungsgemäß funktioniert, wird eine Kontroll-SMS gesendet). Füllen Sie die Skizze in Arduino aus und überprüfen Sie die Funktion des Geräts.

Skizze:


String numberCall_1 = "79123456789"; // Teilnehmernummer №1 für einen Anruf
String numberSMS_1 = "+79123456789"; // Abonnentennummer Nr. 1 für SMS (unterscheidet sich nur im + Zeichen)

String numberCall_2 = "79123456782"; // Teilnehmer Nummer 2 für einen Anruf
String numberSMS_2 = "+79123456782"; // Abonnentennummer Nr. 2 für SMS (unterscheidet sich nur im + Zeichen)

String textZone_1 = "Alarm! Zone1"; // Sein Name ist in Latein.
String textZone_2 = "Alarm! Zone2"; // Sein Name ist in Latein.
String textZone_3 = "Alarm! Zone3"; // Sein Name ist in Latein.
String textZone_4 = "Alarm! Zone4"; // Sein Name ist in Latein.

#include 
SoftwareSerial mySerial (2, 3);

#define pinSensor_0 4
#define pinSensor_1 5
#define pinSensor_2 6
#define pinSensor_3 7
#define pinSensor_4 8

void initGSM (void) {
  Verzögerung (2000);
  mySerial.begin (9600); // Kommunikationsgeschwindigkeit mit dem GSM-Modul 9600 Baud / Sek. Einstellen.
  mySerial.println ("AT + CLIP = 1");
  Verzögerung (300);
  mySerial.println ("AT + CMGF = 1");
  Verzögerung (300);
  mySerial.println ("AT + CSCS =" GSM ");
  Verzögerung (300);
  mySerial.println ("AT + CNMI = 2,2,0,0,0");
  Verzögerung (300);
}}

/ * SMS senden * /
void sendSMS (String text, String phone) {
  mySerial.println ("AT + CMGS =" + phone + "");
  Verzögerung (500);
  mySerial.print (Text);
  Verzögerung (500);
  mySerial.print ((char) 26);
  Verzögerung (2500);
}}


unsigned long timerTemp = 0;
uint8_t Stunden = 0;

uint8_t flagSensor_0 = 0;
uint8_t flagSensor_1 = 0;
uint8_t flagSensor_2 = 0;
uint8_t flagSensor_3 = 0;
uint8_t flagSensor_4 = 0;

void setup () {
  mySerial.begin (9600);
  initGSM ();
  
  pinMode (pinSensor_0, INPUT);
  pinMode (pinSensor_1, INPUT);
  pinMode (pinSensor_2, INPUT);
  pinMode (pinSensor_3, INPUT);
  pinMode (pinSensor_4, INPUT);

  timerTemp = millis ();
}}

void loop () {
    if (millis () - timerTemp> = 3600000) {timerTemp = millis (); Stunden ++;}

  if (Stunden> = 144) {// Ändern Sie die Systemsteuerungszeit auf unsere eigene, 144 Stunden. Anzahl der Stunden.
    sendSMS (String ("Das System funktioniert normal.OK"), numberSMS_1);
    Verzögerung (10000);
    sendSMS (String ("Das System funktioniert normal.OK"), numberSMS_2);
    Verzögerung (10000);
    Stunden = 0;
    timerTemp = millis ();
  }}
 
  if (flagSensor_0 == 0 && digitalRead (pinSensor_0) == 0) flagSensor_0 = 1;
  if (flagSensor_1 == 0 && digitalRead (pinSensor_1) == 0) flagSensor_1 = 1;
  if (flagSensor_2 == 0 && digitalRead (pinSensor_2) == 0) flagSensor_2 = 1;
  if (flagSensor_3 == 0 && digitalRead (pinSensor_3) == 0) flagSensor_3 = 1;
  if (flagSensor_4 == 0 && digitalRead (pinSensor_4) == 0) flagSensor_4 = 1;

  if (flagSensor_0 == 1) {
    String Befehl;

    Befehl = "ATD +" + numberCall_1 + ";"
    mySerial.println (Befehl);
    Verzögerung (20000);
    mySerial.println ("ATH");
    Verzögerung (1000);

   
    command = "ATD +" + numberCall_2 + ";";
    mySerial.println (Befehl);
    Verzögerung (20000);
    mySerial.println ("ATH");
    Verzögerung (1000);

    flagSensor_0 = 2;
  }}


  if (flagSensor_1 == 1) {
    sendSMS (textZone_1, numberSMS_1);
    Verzögerung (10000);
    sendSMS (textZone_1, numberSMS_2);
    Verzögerung (10000);
    flagSensor_1 = 2;
  }}


  if (flagSensor_2 == 1) {
    sendSMS (textZone_2, numberSMS_1);
    Verzögerung (10000);
    sendSMS (textZone_2, numberSMS_2);
    Verzögerung (10000);
    flagSensor_2 = 2;
  }}


  if (flagSensor_3 == 1) {
    sendSMS (textZone_3, numberSMS_1);
    Verzögerung (10000);
    sendSMS (textZone_3, numberSMS_2);
    Verzögerung (10000);
    flagSensor_3 = 2;
  }}


  if (flagSensor_4 == 1) {
    sendSMS (textZone_4, numberSMS_1);
    Verzögerung (10000);
    sendSMS (textZone_4, numberSMS_2);
    Verzögerung (10000);
    flagSensor_4 = 2;
  }}

  if (flagSensor_0 == 2 && digitalRead (pinSensor_0)! = 0) flagSensor_0 = 0;
  if (flagSensor_1 == 2 && digitalRead (pinSensor_1)! = 0) flagSensor_1 = 0;
  if (flagSensor_2 == 2 && digitalRead (pinSensor_2)! = 0) flagSensor_2 = 0;
  if (flagSensor_3 == 2 && digitalRead (pinSensor_3)! = 0) flagSensor_3 = 0;
  if (flagSensor_4 == 2 && digitalRead (pinSensor_4)! = 0) flagSensor_4 = 0;
}}


Schritt drei. Überprüfen des Zustands des Geräts.
Wir machen die einfachste Signalisierung auf GSM SIM800L und Arduino für Sommerhaus, Garage

Wenn das SIM800L-Modul und das Arduino-Board mit Strom versorgt werden, haben Sie ca. 20 Sekunden Zeit, um den bewachten Raum zu verlassen. Auf dem SIM800L-Modul zeigt die LED die Netzwerkaktivität an, sucht häufig nach einem Netzwerk und zeigt alle fünf Sekunden den Netzwerkbetrieb an. Wenn das Gerät ein Netzwerk findet, trennen Sie die entsprechenden Sicherheitseingaben. Danach erfolgt eine Einwahl oder ein SMS-Versand. Das Gerät funktioniert also einwandfrei.

Foto SMS. Es ist möglich, Sicherheitsdetektoren mit Ausgängen in Form von Kontakten und Relais von Aktuatoren nur in Übereinstimmung mit Ihren Anforderungen und Ihrer Vorstellungskraft einzuschließen. Im Allgemeinen haben wir ein einfaches Sicherheitsgerät hergestellt. Solch ein hausgemachter Wächter kann dazu gebracht werden, den Schutz von Gegenständen zu organisieren. Um das Alarmgerät einzuschalten, müssen Sie 4,2 Volt über den Schalter an SIM800 und Arduino liefern. Am ersten Eingang wird ein Anruf an Teilnehmer Nr. 1 weitergeleitet, wonach auf Nr. 2 umgeschaltet wird. Zusätzliche Nr. 2 wird zur Vervielfältigung bereitgestellt. Die offene Schleifennummer 2,3,4,5 ermöglicht die Ausgabe von SMS mit dem spezifischen Namen der unterbrochenen Schleife auf beiden Telefonen. Wir werden alle Bretter in einem geeigneten Fall platzieren. Im Allgemeinen denke ich, dass dies ein gutes interessantes Gerät ist, das weiterentwickelt werden kann - fügen Sie die Funktionen einer GSM-Buchse, DMTF-Steuerung und vieles mehr hinzu.

Weitere Details finden Sie im Video

Ich wünsche Ihnen allen Gesundheit und Erfolg in Leben und Arbeit!
8.8
8.4
8.4

Kommentar hinzufügen

    • lächelnlächeltxaxaokweiß nichtYahoonea
      ChefKratzerDummkopfjaja-jaaggressivGeheimnis
      Entschuldigungtanzendance2Tanz3VerzeihungHilfeGetränke
      hör aufFreundegutgut gutpfeifenOhnmachtZunge
      RauchklatschenCrayerklärenspöttischdon-t_mentionherunterladen
      Hitzeärgerlichlach1mdaTreffenMoskingnegativ
      not_iPopcornbestrafenlesenerschreckenAngstSuche
      verspottendankedasto_clueumnikakutstimme zu
      schlechtbeeeblack_eyeblum3errötenprahlenLangeweile
      zensiertAngenehmheitsecret2drohenSiegyusun_bespectacled
      shokrespektlolvorgezogenWillkommenKrutoyya_za
      ya_dobryiHelferne_huliganne_othodiFludVerbotschließen
3 Kommentar
Gast Alexander
Es ist eine Frage, 10kΩ 10W Widerstände werden benötigt oder 0,25W oder was?
Guten Tag. Aber kann ich etwas hinzufügen, damit bei einer erfolgreichen Einwahl die Eingänge blockiert werden? um zyklisches Wählen bei niedrigem Pegel an einem der Eingänge zu vermeiden!
Sie können eine andere Karte verwenden, z. B. TP4056 mit Schutz
Nicht möglich, aber müssen. Und nicht irgendein, sondern, wie zu Recht gesagt, mit Schutz, das heißt, neben TP4056 sollten zwei weitere kleine ICs vorhanden sein, einschließlich DW01 oder dessen Analog.
Zusätzlich zu Sicherheitsschleifen ist es sehr wünschenswert, die Spannung am Eingang des TP4056 zu steuern.

Wir empfehlen Ihnen zu lesen:

Gib es für das Smartphone ...