GSM Fire SMS Alert Project

Prøv Vores Instrument Til At Fjerne Problemer





I denne artikel skal vi konstruere et GSM-brandalarmkredsløbssystem ved hjælp af Arduino- og DHT11-sensoren, som advarer brugeren via SMS (SMS) om en brandfare inden for det område, hvor den er installeret.

Brug af DHT11-sensor

Vi bruger DHT11-sensor for at registrere usædvanlig temperaturstigning omkring lokalområdet. Vi kan præcist indstille tærskeltemperaturen i programmet, hvis temperaturen stiger over den forudindstillede tærskel, GSM-modemet begynder at sende alarm-SMS til modtageren.



Hvordan det virker

Opsætningen af ​​GSM-brandalarmkredsløb består af 3 dele, sensoren, Arduino, som er projektets hjerne, og GSM-modem, der sender SMS-alarm.

Ledningsføringen til opsætningen er den samme som andre GSM-baserede projekter som blev diskuteret på dette websted. Den eneste forskel er tilføjelsen af ​​DHT11-sensor til Arduino.



TX af GSM er forbundet til pin nr. 9 i Arduino, og RX på GSM er forbundet med pin nr. 8 i Arduino, og jord-til-jord-forbindelse er også forbundet. Sensorens strøm- og dataforbindelse er optimeret til reduceret ledningsbelastning under prototyping.

Vær opmærksom på tilslutningerne nøje, og sæt sensoren fra A0 til A2 i den rigtige retning som vist nedenfor.

Omvendt retning af sensoren giver “NO DATA” på den serielle skærm. Hvis omvendt retning holdes i længere tid, kan det endda skade sensoren. Så vær forsigtig med sensortilslutningen.

Her er en afsluttet forfatters prototype:

Tænd altid for GSM-modemet med ekstern strømforsyning. EN 9V 500mA strømadapter vil være nok til GSM-modem. Den serielle skærm er ikke obligatorisk for dette projekt, da det bliver et selvstændigt projekt. Vi har kun brug for seriel skærm, mens vi tester prototypen.

Lav en DC UPS-system , skemaer er tilgængelige på dette websted, og prøv at gøre tænd / sluk-knappen let tilgængelig uden for projektets chassis, så GSM-modem kan tændes efter et kort strømsvigt.

Den eksterne tænd / sluk-knap kan laves ved at lodde ledninger fra tænd / sluk-knappen på GSM-modemmet. DC UPS reducerer nødvendigheden af ​​at tænde GSM-modemet efter hvert strømsvigt. Det giver plug and glemt slags funktion. Lad os nu se, hvordan hele opsætningen fungerer.

I tilfælde af brand stiger stuetemperaturen hurtigt på kort tid, sensoren har mulighed for at måle form 0 til 50 grader Celsius.

Når temperaturen stiger over den forudindstillede tærskelværdi i programmet (inden for 0 til 50), sender den en SMS-alarm, der siger 'Brandalarm: 45,00 grader Celsius'. 45 grader Celsius er temperaturen i rummet under afsendelse af SMS, temperaturen vil nå ud over 100 grader Celsius inden for få minutter efter brandulykke. To SMS-alarmer sendes for redundans, i tilfælde af at den ene af den sendte besked mislykkes.

Hvis sensoren mislykkedes, eller sensoren kobles fra Arduino, sendes informationen til brugeren via SMS to gange, hvor der står 'Ingen data fra sensor / sensor afbrudt'

Programmet stopper i 30 minutter efter afsendelse af SMS-alarm for brand eller frakobling af sensoren. Den kontrollerer igen for abnormitet i stuetemperatur og sensortrådforbindelse efter 30 minutter, hvis der findes nogen, sender den SMS-alarm igen og venter i yderligere 30 minutter.

Når hele opsætningen er afsluttet og tændt, sender GSM-modemmet test-SMS, der siger 'Dette er en test-SMS fra GSM-modem', hvis du modtager denne besked til modtagernummeret, betyder det, at dit projekt fungerer fint.

Program:

//--------------Program developed by R.Girish---------------//
#include
#include
SoftwareSerial gsm(9,8)
#define DHTxxPIN A1
dht DHT
int p = A0
int n = A2
int ack
int msgsend=0
int th=45 //set threshold temperature
unsigned long A = 1000L
unsigned long B = A * 60
unsigned long C = B * 30
void setup()
{
Serial.begin(9600)
gsm.begin(9600)
pinMode(p,OUTPUT)
pinMode(n,OUTPUT)
digitalWrite(p,1)
digitalWrite(n,0)
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
gsm.println('This is a test SMS from GSM modem')// The SMS text you want to send
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
}
void loop()
{
top:
msgsend=0
ack=0
int chk = DHT.read11(DHTxxPIN)
switch (chk)
{
case DHTLIB_ERROR_CONNECT:
ack=1
break
}
if(ack==0)
{
Serial.print('Temperature(°C) = ')
Serial.println(DHT.temperature)
Serial.print('Humidity(%) = ')
Serial.println(DHT.humidity)
Serial.println(' ')
delay(2000)
}
if(ack==1)
{
goagain:
msgsend=msgsend+1
Serial.print('NO DATA')
Serial.print(' ')
Serial.println('Sending SMS...... ')
delay(500)
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxxx' ') // Replace x with mobile number
delay(1000)
gsm.println('No data from sensor/Sensor disconnected')// The SMS text you want to send
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
Serial.println('Message is sent ')
if(msgsend==2)
{
delay(C)
goto top
}
else
{
delay(10000)
goto goagain
}
}
if(DHT.temperature>=th)
{
doagain:
msgsend=msgsend+1
Serial.println('Sending SMS...... ')
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxx' ') // Replace x with mobile number
delay(1000)
gsm.println('Fire Alert:')// The SMS text you want to send
gsm.print(DHT.temperature)
gsm.print(' degree celsius')
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
Serial.println('Message is sent ')
if(msgsend==2)
{
delay(C)
goto top
}
else
{
delay(10000)
goto doagain
}
}
}
//--------------Program developed by R.Girish---------------//

Bemærk: Du skal placere modtagernummeret 3 steder i programmet, som i programmet beskrives som

('AT + CMGS = ' + 91xxxxxxxxx ' r') // Erstat x med mobilnummer

• Indstil tærskeltemperaturen

int th = 45 // indstillet tærskeltemperatur

Tærskeltemperaturen skal være høj, større end normalt temperaturudsving i rummet F.eks .: DHT11 har en maksimal målekapacitet på 50 grader Celsius, så tærskeltemperaturen kan indstilles fra 45 til 47. Høj tærskelværdi er indstillet, så den ikke sender falsk udløst SMS-alarm for små ændringer i stuetemperatur.

Hvis du er i tvivl eller spørgsmål vedrørende det diskuterede GSM brand SMS alarm kredsløbssystem, så tøv ikke med at fremsætte dem gennem dine værdifulde kommentarer.




Tidligere: Sådan designes et kredsløb til en induktionsvarmer Næste: 6 bedste IC 555 inverter kredsløb udforsket