MQ-135를 사용한 LPG 누출 SMS 경고 – 휴대폰에서 경고 메시지 받기

문제를 제거하기 위해 도구를 사용해보십시오





이 기사에서는 LPG 가스가 LPG 실린더에서 누출되거나 밸브가 잘못 닫혀 누출이있을 때 SMS를 통해 수신자와 주변 사람들에게 경고음을 통해 알리는 Arduino를 사용하여 GSM 기반 LPG 누출 SMS 경고 회로를 구성 할 것입니다.

MQ-135를 센서로 사용

우리는 대기 중 LPG 가스 상승을 감지하기 위해 MQ-135 대기 질 센서를 사용할 것입니다.
MQ-135 센서에 대해 잘 모르는 경우 센서 MQ-135에 대한 모든 기본 사항을 설명하는이 문서를 확인하십시오.



LPG 가스 실린더는 매일 수천 가구에 식품을 공급하며, 일부는 회사 또는 정부의 LPG 연결을 파이프로 연결했을 수 있습니다. 우리는 가스 누출 / 폭발로 인한 피해를 항상 과소 평가하고 있습니다. 그 이유는 신문에서 가끔 / 거의 읽지 않기 때문일 수 있습니다.

우리는 가득 찬 또는 거의 비어있는 LPG 가스 실린더가 다이너마이트에 불과하다는 것을 인정해야합니다. 우리가 의도적으로 또는 의도하지 않게 그들을 잘못 처리하면 결국 재앙이 될 것입니다.



대부분의 재앙은 LPG 가스 실린더 / 스토브의 밸브에서 누출로 인해 발생합니다. 요리하던 음식을 잊고 집안일이나 다른 집안일을 할 수 있기 때문입니다. 쿡탑 버너 주변에 액체가 둘러싸여있어 불꽃이 꺼집니다.

LPG 가스는 계속해서 빠져 나가고 마침내 방에 독성 가스가 떠오르는데, 이는 작은 충격, 심지어 정전기로 인해 폭발 할 수 있습니다.

가스 실린더와 쿡탑이 제대로 유지되지 않는 경우에도 유사한 시나리오를 시뮬레이션 할 수 있습니다. 고무 가스 튜브는 가장 취약한 부분으로 핀홀 틈이 실린더 밖으로 가스를 배출하기에 충분합니다.

LPG 가스 자체에는 희미한 냄새가 없으며 LPG 가스 제조업체는 냄새로 느낄 수있는 냄새 에이전트를 추가합니다. 하지만 모두가 바쁜 생활을하고 있으며 누출이 발생하는 동안에는 현장에있을 수 없습니다. 그래서 우리는 부엌 안에 인공 코 (MQ-135 센서)를 놓을 것입니다.

LPG 가스를 감지하고 사전 설정된 임계 수준을 초과하면 경고음이 울리고 SMS를 전송하여 사용자에게 경고합니다.

참고 : MQ-135는 공기 중의 연기 및 기타 화학 물질을 감지 할 수 있습니다. 센서는 둘을 구분할 수 없으므로 설정시 신호음이 울리고 SMS 알림이 전송되면 주방 / 방에 문제가 있다고 가정 할 수 있습니다.

타는 음식이나 LPG 가스 누출 또는 화재 일 수 있습니다. 단순히 이것이 다목적 경보 시스템이라고 말할 수 있습니다.

디자인 :

LPG 누출 SMS 경고 회로는 매우 간단하며 Arduino 초보자에게 친숙합니다. 뇌는 평소와 같이 arduino로 매초 센서 판독 값을 분석하고 결정을 내립니다. 수신자 전화 번호로 SMS 경고를 보내는 데 사용 된 GSM 모뎀입니다. 부저는 가스 누출 지역 주변의 사람들에게 경고하는 데 사용됩니다. 부저를 릴레이로 교체 할 수도 있습니다.

회로도

센서의 히터 코일에는 외부 전원이 사용됩니다. IC7805의 입력은 8 볼트 이상이어야합니다. GSM 모뎀은 DC 잭에서 전원을 공급 받아야하며 arduino 공급 장치에서 호스팅되지 않아야합니다.

접지 연결은 외부 전원, GSM 모뎀 및 arduino간에 설정됩니다. 유효한 SIM 카드를 사용하고 SIM에 SMS 요금제가 작동하는지 확인하십시오.

프로토 타입 이미지 :

사용 및 테스트 지침 :

테스트 목적으로 직렬 모니터가 필요합니다. 교정이 완료되면 외부 전원에서 arduino에 전원을 공급할 수 있습니다.

배터리를 주 전원으로 사용하지 마십시오. 전원에서 수백 mA를 끌어오고 센서가 최적 온도 아래로 내려 가면 잘못된 경고를 보냅니다. 그러나 급격한 차단 전압으로 백업 전원에 배터리를 사용할 수 있습니다.

사용자가 회로를 켜면 회로가 비활성화 될 때까지 센서의 최적 온도를 얻는 데 3 분이 걸립니다. 직렬 모니터에서 목격 할 수 있습니다. “최적 온도를 기다리는 센서”를 표시합니다.

센서가 최적의 온도 수준에 도달하면 설정에서 수신자 전화 번호로 테스트 메시지를 보냅니다. 일단 받으면 GSM 모뎀이 제대로 작동하고 있다고 가정 할 수 있습니다.

센서의 전압 레벨 인 직렬 모니터에 일부 숫자를 표시하기 시작합니다. 대기 오염이 높을수록 값이 인쇄됩니다.

임계 값을 설정하기 전에 이러한 값에 대해 연구해야합니다. 예를 들어, 300에서 350 사이의 판독 값을 얻는 경우 프로그램에서 임계 값을 설정해야합니다. 직렬 모니터의 판독 값 값의 두 배, 위의 경우 600 (0에서 1023까지 설정할 수 있음)이라고 말하면 거짓이 아니어야합니다. 방의 대기 오염 함량의 작은 변화로 인해 트리거되므로 두 배 이상의 값이 선호됩니다.

이제 가스 센서 근처에 시가 라이터를 가져와 불에 타지 않고 가스를 누출하십시오. 수치가 높아지고 SMS 알림이 전송되고 부저가 울리기 시작합니다.

센서는 부식에 취약하고 뜨거운 음식 입자의 방출로 인해 쓰레기 값을 읽고 잘못된 SMS 경고를 보내므로 센서를 조리 구역 바로 위에 두지 마십시오.

프로그램 코드 :

//--------------Program developed by R.Girish---------------//
#include
SoftwareSerial gsm(9,8)
int input=A0
int output=7
int th=600 //set threshold temperature
unsigned long A = 1000L
unsigned long B = A * 60
unsigned long C = B * 3
unsigned long D = B * 30
void setup()
{
Serial.begin(9600)
pinMode(output,OUTPUT)
digitalWrite(output,LOW)
Serial.println('Sensor waiting for optimum temperature')
delay(C)
Serial.println('Sending test SMS......')
gsm.begin(9600)
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxxx'r') // Replace x with mobile number
delay(1000)
gsm.println('LPG leak, test SMS')// The SMS text you want to send
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
Serial.println('Test SMS sent.')
}
void loop()
{
Serial.println(analogRead(input))
delay(1000)
if(analogRead(input)>th)
{
delay(5000)
if(analogRead(input)>th)
{
Serial.println('Sending SMS............')
Serial.println(analogRead(input))
gsm.println('AT+CMGF=1')
delay(1000)
gsm.println('AT+CMGS='+91xxxxxxxxxxx'r') // Replace x with mobile number
delay(1000)
gsm.println('Warning: LPG gas leak detected')// The SMS text you want to send
delay(100)
gsm.println((char)26) // ASCII code of CTRL+Z
delay(1000)
Serial.println('SMS sent.')
digitalWrite(output,HIGH)
delay(B)
delay(B)
digitalWrite(output,LOW)
delay(D)
}
}
}
//--------------Program developed by R.Girish---------------//

참고 : th = 600을 자신의 값으로 바꾸십시오.
int th = 600 // 임계 온도 설정

x를 수신자 전화 번호로 바꿉니다. 프로그램의 두 곳에 수신자 전화 번호를 입력해야합니다.
gsm.println ( 'AT + CMGS ='+ 91xxxxxxxxxx'r ') // x를 휴대폰 번호로 바꿉니다.




이전 :이 발 활성화 계단 조명 회로 만들기 다음 : Arduino로 LED 대기 오염 측정기 회로를 만드는 방법