GSM ugunsgrēka SMS trauksmes projekts

Izmēģiniet Mūsu Instrumentu Problēmu Novēršanai





Šajā rakstā mēs izveidosim GSM ugunsgrēka trauksmes shēmas sistēmu, izmantojot Arduino un DHT11 sensoru, kas ar īsziņu (SMS) brīdinās lietotāju par ugunsbīstamību telpā, kurā tā ir uzstādīta.

DHT11 sensora izmantošana

Mēs izmantojam DHT11 sensors lai izjustu neparastu temperatūras paaugstināšanos vietējā apkārtnē. Mēs varam precīzi iestatīt sliekšņa temperatūru programmā, ja temperatūra paaugstinās virs iepriekš iestatītā sliekšņa, GSM modemu sāk sūtīt brīdinājuma īsziņu saņēmējam.



Kā tas strādā

GSM ugunsgrēka trauksmes shēmas iestatīšana sastāv no 3 daļām, sensora, Arduino, kas ir projekta smadzenes, un GSM modema, kas nosūta SMS trauksmi.

Iestatīšanas vadi ir tādi paši kā citi GSM balstīti projekti kas tika apspriests šajā vietnē. Vienīgā atšķirība ir DHT11 sensora pievienošana Arduino.



GSM TX ir savienots ar Arduino 9. kontaktu un GSM RX ir savienots ar Arduino 8. kontaktu, un ir savienots arī zemes un zemes savienojums. Sensora strāvas un datu savienojums ir optimizēts, lai samazinātu elektroinstalācijas sastrēgumus prototipēšanas laikā.

Lūdzu, uzmanīgi ievērojiet savienojumus un ievietojiet sensoru no A0 līdz A2 pareizā virzienā, kā parādīts zemāk.

Apgriežot sensora orientāciju, sērijveida monitorā tiks parādīts “NO DATA”. Ja atpakaļgaita tiek turēta ilgāku laiku, tas var pat sabojāt sensoru. Tāpēc esiet piesardzīgs attiecībā uz sensora savienojumu.

Šeit ir pabeigts autora prototips:

Vienmēr barojiet GSM modemu ar ārēju barošanas avotu. A 9V 500mA strāvas adapteris pietiks GSM modemam. Sērijveida monitors šim projektam nav obligāts, jo tas būs atsevišķs projekts. Seriālais monitors ir vajadzīgs tikai prototipa testēšanas laikā.

Izveidojiet a DC UPS sistēma , shēmas ir pieejamas šajā vietnē, un mēģiniet padarīt ieslēgšanas / izslēgšanas pogu viegli pieejamu ārpus jūsu projekta šasijas, lai GSM modemu varētu ieslēgt pēc īsa strāvas padeves pārtraukuma.

Ārējo barošanas pogu var izgatavot, lodējot vadus no strāvas pogas tapām uz GSM modema. DC UPS samazinās nepieciešamību ieslēgt GSM modemu pēc katras strāvas padeves pārtraukuma. Tas dod plug and aizmirst veida funkciju. Tagad redzēsim, kā darbojas visa iestatīšana.

Ugunsgrēka gadījumā istabas temperatūra īsā laikā strauji paaugstinās, sensors spēj izmērīt formu no 0 līdz 50 grādiem pēc Celsija.

Kad temperatūra paaugstinās virs iepriekš iestatītās sliekšņa vērtības programmā (no 0 līdz 50), tā nosūta īsziņu ar brīdinājumu “Ugunsgrēka trauksme: 45,00 grādi pēc Celsija”. 45 grādi pēc Celsija ir telpas temperatūra īsziņu sūtīšanas laikā, un temperatūra dažu minūšu laikā pēc ugunsnelaimes sasniegs 100 grādus pēc Celsija. Divi īsziņu brīdinājumi tiek nosūtīti uz atlaišanu, ja viena no nosūtītajām ziņām neizdodas.

Ja sensors neizdevās vai sensors tiek atvienots no Arduino, informācija divreiz tiek nosūtīta lietotājam ar īsziņu “Nav datu no sensora / sensora atvienots”

Pēc SMS brīdinājuma nosūtīšanas par ugunsgrēka vai sensora atvienošanu programma apstājas 30 minūtes. Pēc 30 minūtēm tas vēlreiz pārbauda, ​​vai nav novirzes istabas temperatūrā un sensora vadu savienojumos, ja tādi pastāv, tas atkal sūta SMS brīdinājumu un gaida vēl 30 minūtes.

Kad visa iestatīšana ir pabeigta un ieslēgta, GSM modems nosūta testa īsziņu ar tekstu “Šī ir testa īsziņa no GSM modema”, ja saņemat šo ziņojumu uz saņēmēja numuru, tas nozīmē, ka jūsu projekts darbojas labi.

Programma:

//--------------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---------------//

Piezīme: Jums jānovieto saņēmēja numurs 3 vietās programmā, kas programmā aprakstīta kā

('AT + CMGS = ' + 91xxxxxxxxx ' r') // Aizstāt x ar mobilā tālruņa numuru

• Iestatiet sliekšņa temperatūru

int th = 45 // iestatītā sliekšņa temperatūra

Sliekšņa temperatūrai jābūt iestatītai augstai, lielākai nekā parasti telpas temperatūras svārstības .Piemēram: DHT11 maksimālā mērīšanas jauda ir 50 grādi pēc Celsija, tāpēc sliekšņa temperatūru var iestatīt no 45 līdz 47. Augsta sliekšņa vērtība ir iestatīta tā, lai tā nesūtītu nepatiesu aktivizētu SMS brīdinājumu par nelielām istabas temperatūras izmaiņām.

Ja jums ir vēl šaubas vai jautājumi par apspriesto GSM ugunsgrēka SMS trauksmes ķēdes sistēmu, lūdzu, nevilcinieties tos izteikt, izmantojot vērtīgos komentārus.




Pāri: Kā izveidot indukcijas sildītāja shēmu Nākamais: 6 labākās izpētītās IC 555 invertoru shēmas