Powiadomienie SMS o wycieku LPG za pomocą MQ-135 - Otrzymaj wiadomość ostrzegawczą na swój telefon komórkowy

Wypróbuj Nasz Instrument Do Eliminowania Problemów





W tym artykule zamierzamy zbudować obwód alarmowy SMS o wycieku LPG na bazie GSM za pomocą Arduino, który ostrzega odbiorcę za pośrednictwem wiadomości SMS i otaczających ludzi za pomocą sygnału dźwiękowego, gdy gaz LPG wycieka z butli LPG lub jeśli występuje wyciek z powodu nieprawidłowo zamkniętego zaworu.

Używanie MQ-135 jako czujnika

Do detekcji wzrostu ilości gazu LPG w powietrzu wykorzystamy czujnik jakości powietrza MQ-135.
Jeśli nie jesteś zbyt zaznajomiony z czujnikiem MQ-135, przeczytaj ten artykuł, który wyjaśnia wszystkie podstawy dotyczące czujnika MQ-135:



Butle z gazem LPG obsługują codziennie tysiące gospodarstw domowych w celu uzyskania żywności, niektóre mogą mieć podłączenie LPG od firmy lub rządu. Zawsze nie doceniamy szkód spowodowanych wyciekiem / eksplozją gazu, może to być spowodowane tym, że czasami / rzadko czytamy je w gazetach.

Trzeba przyznać, że pełna lub prawie pusta butla z gazem LPG to nie mniej niż dynamit. Jeśli będziemy obchodzić się z nimi niewłaściwie, celowo lub nieumyślnie, skończy się to katastrofą.



Najwięcej katastrofy ma miejsce na skutek wycieku z zaworu butli / pieca gazowego LPG. Dzieje się tak, ponieważ użytkownicy mogą zapomnieć o gotowanym jedzeniu i dostać się do domu / innych prac domowych. Płomień gaśnie z powodu płynów otaczających palnik płyty.

Gaz LPG wydobywa się z niego ciągle, aż w końcu pomieszczenie zostaje zalane toksycznym gazem, który może eksplodować pod wpływem niewielkiego uderzenia, a nawet ładunku statycznego.

Podobny scenariusz można zasymulować, jeśli butle gazowe i płyty kuchenne są źle konserwowane. Gumowa rurka gazowa jest najbardziej wrażliwą częścią, w której wystarczy szczelina, aby gaz wydostał się z butli.

Sam gaz LPG nie ma żadnego / słabego zapachu, producent LPG dodaje środek zapachowy, który mogliśmy wyczuć po zapachu. Ale wszyscy są zajęci życiem, nie będziemy dostępni na miejscu, gdy nastąpi wyciek. Dlatego w kuchni umieścimy sztuczny nos (czujnik MQ-135).

Gdy wykryje gaz LPG i przekroczy ustalony poziom progowy, emituje sygnał dźwiękowy i wysyła SMS-a ostrzegający użytkownika.

UWAGA: MQ-135 może wykrywać dym i inne substancje chemiczne w powietrzu. Czujnik nie potrafi ich rozróżnić, więc jeśli konfiguracja wyda sygnał dźwiękowy i wyśle ​​alert SMS, możesz założyć, że coś jest nie tak w kuchni / pokoju.

Może to być spalona żywność lub wyciek gazu LPG, a nawet pożar. Po prostu możemy powiedzieć, że jest to uniwersalny system ostrzegania.

Projektowanie:

Obwód alarmowy SMS o wycieku LPG jest dość prosty i przyjazny dla początkujących Arduino. Mózg jest jak zwykle arduino, który analizuje odczyty czujników co sekundę i podejmuje decyzje. Modem GSM, który wysyłał powiadomienie SMS na numer telefonu odbiorcy. Brzęczyk służy do ostrzegania ludzi w okolicy wycieku gazu. Możesz nawet zastąpić brzęczyk przekaźnikiem.

Schemat obwodu

Do cewki grzejnej czujnika służy zewnętrzne źródło zasilania. Wejście dla IC7805 musi mieć powyżej 8 woltów. Modem GSM musi być zasilany z gniazda DC i nie może być zasilany z sieci arduino.

Połączenie uziemienia jest ustanawiane między zasilaniem zewnętrznym, modemem GSM i arduino. Użyj ważnej karty SIM i upewnij się, że Twoja karta SIM ma działający plan SMS.

Obraz prototypowy:

Wskazówki dotyczące użytkowania i testowania:

Do celów testowych potrzebujemy monitora szeregowego, po zakończeniu kalibracji można zasilać arduino z zewnętrznych źródeł zasilania.

Nie używaj baterii jako głównego źródła zasilania, pobiera kilkaset mA z zasilania, gdy temperatura czujnika spadnie poniżej optymalnej, daje fałszywy alarm. Można jednak używać baterii do zasilania awaryjnego z ostrym napięciem odcięcia.

Gdy użytkownik włączy obwód, uzyskanie optymalnej temperatury dla czujnika zajmuje 3 minuty, po czym obwód jest nieaktywny. Możemy obserwować z monitora szeregowego. Wyświetla „Czujnik czeka na optymalną temperaturę”.

Gdy czujnik osiągnie optymalny poziom temperatury, konfiguracja wysyła wiadomość testową na numer telefonu odbiorcy. Po otrzymaniu wiadomości możesz założyć, że modem GSM działa poprawnie.

Zaczyna wyświetlać pewne liczby na monitorze szeregowym, czyli poziom napięcia z czujnika. Im większe zanieczyszczenie powietrza, tym wyższa wartość drukowana.

Powinieneś przestudiować te wartości, zanim ustawisz wartość progową. Na przykład: jeśli otrzymujesz odczyty między 300 a 350, to powinieneś ustawić w programie próg, dwukrotność wartości odczytów na monitorze szeregowym, powiedzmy 600 dla powyższego przypadku (można ustawić od 0 do 1023), nie powinno być fałszem z powodu niewielkich zmian w zanieczyszczeniu powietrza w pomieszczeniu, dlatego preferowana jest podwójna lub wyższa wartość.

Teraz zbliż zapalniczkę do czujnika gazu i wypuść gaz bez podpalania. Odczyty powinny wzrosnąć, powinno zostać wysłane powiadomienie SMS i brzęczyk zacznie wydawać dźwięk.

Nie umieszczaj czujnika bezpośrednio nad strefą gotowania, ponieważ jest on podatny na korozję i odczytuje wartości śmieci z powodu emisji gorących cząstek jedzenia i wysyła fałszywe ostrzeżenia SMS.

Kod programu:

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

Uwaga: Zastąp th = 600 własną wartością.
int th = 600 // ustaw temperaturę progową

Zastąp x numerem telefonu odbiorcy. Musisz umieścić numer telefonu odbiorcy w dwóch miejscach w programie.
gsm.println ('AT + CMGS =' + 91xxxxxxxxxx'r ') // Zastąp x numerem telefonu komórkowego




Poprzedni: Wykonaj ten obwód oświetlenia klatki schodowej aktywowany stopą Dalej: Jak wykonać obwód miernika zanieczyszczenia powietrza LED za pomocą Arduino