Amb l’inici de la temporada d’estiu, va haver de protegir la casa de camp. Volia fer una alarma antirroba senzilla però fiable amb un senyal transmès a un telèfon mòbil. Es va decidir muntar un dispositiu amb transmissió d’alarma a un telèfon mòbil basat en electrònica plaques de circuit comprades a Aliexpress. Com diuen barat però alegre. Els elements principals d’aquest disseny són el mòdul GSM SIM800L i la placa Arduino (podeu utilitzar qualsevol Nano, Uno, Pro Mini i similars).
El dispositiu disposa de cinc entrades d’alarma per als sensors de contacte. Es poden connectar un o diversos sensors connectats en sèries a cada entrada. En un croquis, assigneu un nom a cada bucle de seguretat (per exemple, una porta d’entrada, una finestra 1, una finestra 2, etc.). El dispositiu de seguretat funciona així: quan el circuit elèctric del primer bucle es trenca, la unitat fa una primera trucada al primer telèfon de l’abonat, després s’atura la trucada i també al número 2. El número 2 és necessari, ja que, de sobte, el primer subscriptor està fora de línia o la bateria i altres problemes estan enganxats). Si s'activa el bucle següent al primer, s'envia un missatge SMS amb el nom del bucle que funcionava, en el mateix cas, als dos números de subscriptors.
Enumeració d’eines i materials.
bateria d’ió de liti d’un vell telèfon 3.7V \ 1600mA-1pc
-Cables de connexió;
soldadura;
provador;
-cassa de plàstic transparent -1pcs;
pagament Arduino Nano -1 unitats;
-resistors 10kOhm-7pcs;
- tauler de textolita de paper;
- interruptor d’alimentació 1pcs;
- Mòdul SIM800L -1pcs;
- taula de baixada 1-2A -1pcs;
- connectors de terminal.
Primer pas. Muntatge d’un circuit d’un dispositiu de seguretat GSM.
Esquema fotogràfic.
Vam subministrar pastilles de plug-in per al mòdul GSM SIM800L i el mòdul Arduino al panell, això simplifica la instal·lació i facilita la substitució dels mòduls si cal. Resistències de soldadura i altres connexions. Les resistències del pin RX del mòdul SIM800L estan connectades a l’entrada digital Arduino D3 per adaptar-se a la tensió d’entrades d’ambdós mòduls. Les entrades Arduino D4-D8 es treuen a través de resistències. L’interruptor està muntat a l’interval d’alimentació del mòdul GSM SIM800 i a la placa Arduino per armar tot el sistema. L’ús d’una bateria, que permetrà que el dispositiu funcioni durant dos tres dies a falta d’una xarxa de 220 V. En el meu cas, el convertidor de tensió a partir de la tensió de 12 V produeix una tensió de 4,2 V i al mateix temps carrega la bateria (podeu utilitzar una altra placa, per exemple TP4056 amb protecció).
Segon pas. Programació del dispositiu.
A la targeta SIM, s’han de suprimir els codis PIN i totes les funcions innecessàries.Tot i així, primer heu de configurar el propi mòdul SIM800L. A la xarxa hi ha molts vídeos sobre aquest tema, no hi ha res complicat. Al croquis indicem els vostres números de telèfon, ajustem els noms de les zones de seguretat, podeu definir l'hora de control del sistema (si el dispositiu funciona correctament després d'un temps especificat, arribarà un SMS de control). Ompliu l'esbós a Arduino i comproveu el funcionament del dispositiu.
Esbós:
String numberCall_1 = "79123456789"; // Número de subscriptor №1 per a una trucada
Número de cadenaSMS_1 = "+79123456789"; // Número d'abonat núm. 1 per SMS (només difereix en el signe +)
Número de cadenaCall_2 = "79123456782"; // Abonat número 2 per a una trucada
Número de cadenaSMS_2 = "+79123456782"; // Número d'abonat núm. 2 per SMS (només difereix en el signe +)
String textZone_1 = "Alarma! Zona1"; // El seu nom està en llatí.
String textZone_2 = "Alarma! Zona2"; // El seu nom està en llatí.
String textZone_3 = "Alarma! Zona3"; // El seu nom està en llatí.
String textZone_4 = "Alarma! Zona4"; // El seu nom està en llatí.
#incloure
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) {
retard (2000);
mySerial.begin (9600); // Definiu la velocitat de comunicació amb el mòdul GSM 9600 Baud / seg.
mySerial.println ("AT + CLIP = 1");
retard (300);
mySerial.println ("AT + CMGF = 1");
retard (300);
mySerial.println ("AT + CSCS = \" GSM \ "");
retard (300);
mySerial.println ("AT + CNMI = 2,2,0,0,0");
retard (300);
}
/ * Enviament de SMS * /
void sendSMS (Text de cadena, telèfon de cadena) {
mySerial.println ("AT + CMGS = \" "+ telèfon +" \ "");
retard (500);
mySerial.print (text);
retard (500);
mySerial.print ((char) 26);
retard (2500);
}
unsigned long timerTemp = 0;
uint8_t hores = 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 (); hores ++;}
if (hours> = 144) {// Canvia el temps de control del sistema al nostre, 144 hores. nombre d’hores.
sendSMS (Cadena ("El sistema funciona normalment.OK"), númeroSMS_1);
retard (10000);
sendSMS (Cadena ("El sistema funciona normalment.OK"), númeroSMS_2);
retard (10000);
hores = 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) {
Comanda cadena;
command = "ATD +" + numberCall_1 + ";"
mySerial.println (comanda);
retard (20000);
mySerial.println ("ATH");
retard (1000);
command = "ATD +" + numberCall_2 + ";";
mySerial.println (comanda);
retard (20000);
mySerial.println ("ATH");
retard (1000);
flagSensor_0 = 2;
}
if (flagSensor_1 == 1) {
sendSMS (textZone_1, númeroSMS_1);
retard (10000);
sendSMS (textZone_1, númeroSMS_2);
retard (10000);
flagSensor_1 = 2;
}
if (flagSensor_2 == 1) {
sendSMS (textZone_2, númeroSMS_1);
retard (10000);
sendSMS (textZone_2, númeroSMS_2);
retard (10000);
flagSensor_2 = 2;
}
if (flagSensor_3 == 1) {
sendSMS (textZone_3, númeroSMS_1);
retard (10000);
sendSMS (textZone_3, númeroSMS_2);
retard (10000);
flagSensor_3 = 2;
}
if (flagSensor_4 == 1) {
sendSMS (textZone_4, númeroSMS_1);
retard (10000);
sendSMS (textZone_4, númeroSMS_2);
retard (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;
}
Tercer pas. Comprovació de la salut del dispositiu.
Quan s'aplica l'alimentació, mentre que el mòdul SIM800L i la placa Arduino es carreguen, teniu uns 20 segons per deixar la sala vigilada. Al mòdul SIM800L, el LED indica l’activitat de la xarxa; sovint busca una xarxa; cada cinc segons indica el funcionament de la xarxa. Quan el dispositiu trobe una xarxa, desconnecteu les entrades de seguretat corresponents, després hi haurà una connexió telefònica o un SMS. Així doncs, el dispositiu funciona bé.
Foto SMS. Serà possible incloure detector de seguretat amb sortides en forma de contactes, relés d’actuadors, només d’acord amb les vostres necessitats i imaginació. En general, fabriquem un dispositiu de seguretat senzill i senzill. Un vigilant casolà es pot fer per organitzar la protecció de qualsevol objecte. Per engegar el dispositiu d'alarma, heu de subministrar 4,2 volts mitjançant l'interruptor de la SIM800 i Arduino. A la primera entrada, una trucada passarà a l’abonat número 1, i després passarà al número 2. El número 2 addicional es proporciona per duplicar. El número 2,3,4,5 de llaç obert fa que l’emissió de SMS amb el nom específic del bucle trencat respectivament als dos telèfons. Col·locarem tots els taulers en qualsevol cas adequat. En general, crec que es tracta d’un bon dispositiu interessant que es pot desenvolupar encara més: afegir les funcions d’un socket GSM, control DMTF i molt més.
Podeu veure més detalls al vídeo
Us desitjo tota la salut i èxit a la vida i al treball!