Projekt výstrahy GSM Fire SMS

Vyskúšajte Náš Nástroj Na Odstránenie Problémov





V tomto článku sa chystáme skonštruovať systém požiarneho poplachu GSM využívajúci snímače Arduino a DHT11, ktorý bude používateľa upozorňovať prostredníctvom textovej správy (SMS) na nebezpečenstvo požiaru v rámci miesta, kde je nainštalovaný.

Používanie snímača DHT11

Používame Senzor DHT11 na snímanie neobvyklého nárastu teploty v okolí miestnej oblasti. Prahovú teplotu môžeme v programe presne nastaviť, ak teplota stúpne nad nastavenú prahovú hodnotu, GSM modem začne posielať výstražné SMS príjemcovi.



Ako to funguje

Nastavenie obvodu požiarnej výstrahy GSM sa skladá z 3 častí, snímača, Arduina, ktoré je mozgom projektu, a GSM modemu, ktorý odosiela výstrahu SMS.

Zapojenie je rovnaké ako ostatné Projekty založené na GSM o ktorých sa diskutovalo na tejto webovej stránke. Jediným rozdielom je pridanie snímača DHT11 k Arduinu.



TX GSM je pripojený na pin # 9 Arduina a RX GSM je pripojený na pin # 8 Arduina a je tiež pripojené zem-zem pripojenie. Napájacie a dátové pripojenie snímača je optimalizované na zníženie preťaženia vodičov pri prototypovaní.

Zapamätajte si pozorne zapojenie a vložte snímač z A0 do A2 v správnej orientácii, ako je to znázornené nižšie.

Opačná orientácia senzora spôsobí na sériovom monitore „ŽIADNE ÚDAJE“. Ak budete dlhšiu dobu udržiavať opačnú orientáciu, môže to dokonca poškodiť snímač. Pri pripájaní snímača teda buďte opatrní.

Tu je dokončený autorský prototyp:

Modem GSM vždy napájajte z externého zdroja napájania. A 9V 500mA napájací adaptér bude stačiť pre GSM modem. Sériový monitor nie je pre tento projekt povinný, pretože sa bude jednať o samostatný projekt. Sériový monitor potrebujeme iba počas testovania prototypu.

Urob Systém jednosmerného napájania , schémy sú k dispozícii na tomto webe a snažia sa o ľahké sprístupnenie vypínača mimo šasi vášho projektu, aby bolo možné po krátkom výpadku napájania zapnúť GSM modem.

Externé tlačidlo napájania je možné vyrobiť spájkovaním vodičov z kolíkov tlačidla napájania na modeme GSM. DC UPS zníži potrebu zapínania GSM modemu po každom výpadku napájania. Poskytuje funkcie typu plug and forget. Teraz sa pozrime, ako funguje celé nastavenie.

V prípade požiaru teplota v miestnosti krátkodobo rýchlo stúpa, snímač má schopnosť merať od 0 do 50 stupňov Celzia.

Keď teplota stúpne nad prednastavenú prahovú hodnotu v programe (v rozmedzí 0 až 50), odošle upozornenie SMS s hlásením „Požiarna výstraha: 45,00 stupňov Celzia“. 45 stupňov Celzia je teplota miestnosti počas odosielania SMS, teplota by dosiahla nad 100 stupňov Celzia v priebehu niekoľkých minút po požiari. Pre nadbytočnosť sa odošlú dve SMS upozornenia pre prípad, že by niektorá z odoslaných správ zlyhala.

Ak senzor zlyhal alebo sa senzor odpojil od Arduina, informácia sa používateľovi pošle dvakrát SMS správou „Žiadne údaje zo senzora / senzor odpojený“

Program sa zastaví na 30 minút po odoslaní upozornenia SMS na požiar alebo odpojenie snímača. Po 30 minútach znova skontroluje abnormality teploty v miestnosti a pripojení kábla snímača, ak nejaké existujú, znova pošle výstrahu SMS a počká ďalších 30 minút.

Keď je celé nastavenie dokončené a zapnuté, GSM modem pošle testovacie SMS s oznámením „Toto je testovacia SMS z GSM modemu“, ak dostanete túto správu na číslo príjemcu, znamená to, že váš projekt funguje dobre.

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

Poznámka: Číslo príjemcu musíte umiestniť na 3 miesta v programe, ktorý je v programe označený ako

('AT + CMGS = ' + 91xxxxxxxxx ' r') // Nahraďte x číslom mobilného telefónu

• Nastavte prahovú teplotu

int th = 45 // nastavená prahová teplota

Prahová teplota musí byť nastavená na vyššiu hodnotu, vyššiu ako je obvyklé kolísanie teploty miestnosti Napríklad: DHT11 má maximálnu meraciu kapacitu 50 stupňov Celzia, takže prahovú teplotu je možné nastaviť od 45 do 47. Vysoká prahová hodnota je nastavená tak, že nebude posielať falošné spustené upozornenia SMS na malé zmeny teploty v miestnosti.

Ak máte ďalšie pochybnosti alebo otázky týkajúce sa diskutovaného výstražného obvodu požiarneho SMS systému GSM, neváhajte ich uviesť prostredníctvom svojich cenných komentárov.




Dvojica: Ako navrhnúť obvod indukčného ohrievača Ďalej: 6 najlepších preskúmaných obvodov invertora IC 555