Project ng Alerto sa SMS ng GSM Fire

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa artikulong ito ay magtatayo kami ng isang sistema ng circuit ng alerto sa sunog ng GSM gamit ang Arduino at DHT11 sensor, na aalerto sa gumagamit sa pamamagitan ng text message (SMS), tungkol sa isang panganib sa sunog sa loob ng nasasakupang lugar kung saan ito naka-install.

Paggamit ng DHT11 Sensor

Ginagamit namin Sensor ng DHT11 para sa pakiramdam ng hindi pangkaraniwang pagtaas ng temperatura sa paligid ng lokal na lugar. Tiyak naming maitatakda ang temperatura ng threshold sa programa, kung ang temperatura ay tumataas sa itaas ng paunang preset na threshold, ang modem ng GSM nagsimulang magpadala ng alerto na SMS sa tatanggap.



Paano ito gumagana

Ang setup ng circuit ng alerto sa sunog ng GSM ay binubuo ng 3 bahagi, ang sensor, Arduino na utak ng proyekto at GSM modem na nagpapadala ng alerto sa SMS.

Ang mga kable ng pag-setup ay pareho sa iba pa Mga proyekto na nakabatay sa GSM na tinalakay sa website na ito. Ang pagkakaiba lamang ay ang pagdaragdag ng sensor ng DHT11 sa Arduino.



Ang TX ng GSM ay konektado sa pin # 9 ng Arduino at ang RX ng GSM ay konektado sa pin # 8 ng Arduino at koneksyon sa ground to ground ay konektado din. Ang koneksyon ng lakas at data ng sensor ay na-optimize para sa pinababang pagkasikip ng mga kable habang nagprotipo.

Mangyaring tandaan nang maingat ang mga koneksyon at ipasok ang sensor mula sa A0 hanggang A2 sa tamang oryentasyon tulad ng nakalarawan sa ibaba.

Ang pagbaliktad sa oryentasyon ng sensor ay magbibigay ng 'WALANG DATA' sa serial monitor. Kung ang reverse orientation ay itinatago para sa matagal na panahon maaari itong makapinsala sa sensor. Kaya, maging maingat tungkol sa koneksyon ng sensor.

Narito ang isang kumpletong prototype ng may-akda:

Palaging i-power ang modem ng GSM na may panlabas na power supply. A 9V 500mA power adapter ay magiging sapat para sa GSM modem. Ang serial monitor ay hindi sapilitan para sa proyektong ito dahil ito ay magiging isang standalone na proyekto. Kailangan lang namin ng serial monitor habang sinusubukan ang prototype.

Gumawa ng DC UPS system , ang mga eskematiko ay magagamit sa website na ito at subukang gawing madaling ma-access ang pindutan ng kuryente sa labas ng tsasis ng iyong proyekto, upang ang GSM modem ay maaaring mapagana ON matapos ang isang maikling kabiguan sa kuryente.

Ang panlabas na pindutan ng kuryente ay maaaring gawin sa pamamagitan ng mga paghihinang na mga wire mula sa mga pin ng pindutan ng kuryente sa modem ng GSM. Bawasan ng DC UPS ang pangangailangan sa kapangyarihan SA modem ng GSM pagkatapos ng bawat pagkabigo sa kuryente. Nagbibigay ito ng plug at kalimutan ang uri ng tampok. Tingnan natin ngayon kung paano gumagana ang buong pag-setup.

Sa kaso ng sunog ang temperatura ng kuwarto ay mabilis na tumataas sa maikling panahon, ang sensor ay may kakayahang sukatin ang form 0 hanggang 50 degree Celsius.

Kapag ang temperatura ay tumaas sa itaas ng preset na halaga ng threshold sa programa (sa loob ng 0 hanggang 50) nagpapadala ito ng alerto sa SMS na nagsasabing 'Alerto sa sunog: 45.00 degree Celsius'. Ang 45 degree Celsius ay ang temperatura ng silid habang nagpapadala ng SMS ang temperatura ay aabot sa lampas sa 100 degree Celsius sa loob ng ilang minuto pagkatapos ng aksidente sa sunog. Dalawang alerto sa SMS ang ipinapadala para sa kalabisan, kung sakaling mabigo ang isa sa naipadala na mensahe.

Kung ang sensor ay nabigo o ang sensor ay naka-disconnect mula sa Arduino, ang impormasyon ay ipinapadala sa gumagamit sa pamamagitan ng SMS nang dalawang beses na nagsasabing 'Walang data mula sa sensor / sensor na naka-link'

Ang programa ay titigil sa loob ng 30 minuto pagkatapos magpadala ng alerto sa SMS para sa pagkalas ng apoy o sensor. Sinusuri muli nito ang abnormalidad sa temperatura ng kuwarto at koneksyon ng wire wire pagkatapos ng 30 minuto, kung mayroon man, nagpapadala muli ito ng alerto sa SMS at naghihintay ng isa pang 30 minuto.

Kapag nakumpleto at na-ON ang buong pag-set up, ang modem ng GSM ay nagpapadala ng pansubok na SMS na sinasabing 'Ito ay isang pagsubok na SMS mula sa GSM modem' kung natanggap mo ang mensaheng ito sa numero ng tatanggap, nangangahulugan ito na gumagana nang maayos ang iyong proyekto.

Programa:

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

Tandaan: Kailangan mong ilagay ang tatanggap na numero sa 3 mga lugar sa programa na inilalarawan sa programa bilang

('AT + CMGS = ' + 91xxxxxxxxx ' r') // Palitan x ng numero ng mobile

• Itakda ang temperatura ng threshold

int th = 45 // itakda ang temperatura ng threshold

Ang temperatura ng threshold ay dapat na itakda mataas, mas malaki kaysa sa dati pagbabagu-bago ng temperatura ng silid .Mga halimbawa: Ang DHT11 ay may maximum na kapasidad sa pagsukat na 50 degree Celsius, kaya ang temperatura ng threshold ay maaaring itakda mula 45 hanggang 47. Nakatakda ang mataas na halaga ng threshold upang hindi ito magpadala ng maling naka-trigger na alerto sa SMS para sa maliliit na pagbabago sa temperatura ng kuwarto.

Kung mayroon kang karagdagang mga pag-aalinlangan o pagtatanong tungkol sa tinalakay na GSM fire circuit alert system ng SMS, mangyaring huwag mag-atubiling ilabas ang mga ito sa pamamagitan ng iyong mahalagang mga komento.




Nakaraan: Paano Magdisenyo ng isang Induction Heater Circuit Susunod: 6 Pinakamahusay na IC 555 Inverter Circuits ang ginalugad