niedziela, 29 marca 2020

Bardzo czuły czujnik gazu ziemnego z alarmem lub automatycznym wyłącznikiem urządzeń na 230 volt

No i kolejny projekt bardzo ale to bardzo przydatny w gospodarstwie domowym. Tym razem jest to bardzo czuły czujnik wraz alarmem wykrywający najmniejsze ilości gazu ziemnego lub LPG, ten czujnik jest tak czuły że wykryje nawet alkohol lub różnego rodzaju aerozole w pomieszczeniu. A najlepsze jest to że taki bardzo skuteczny system alarmowy lub zabezpieczenie możemy wykonać za kilka złotych a działać może naprawdę skutecznie, ponieważ czułość zadziałania czujnika możemy do woli konfigurować.







Co potrzebujemy?

Oczywiście to co w naszych pozostałych projektach czyli standardowo:

  • moduł ATMEGA 2560 (klon)
  • wyświetlacz LCD keypad SHIELD (nakładka)



A także:

  • dowolny buzzer (piezzo) 

  • moduł czujnika tlenku węgla MQ-5

https://kamami.pl/czujniki-gazow/211360-modmq-5-modul-z-czujnikiem-stezenia-gazow-ziemnych-i-lpg.html
(pamiętajcie: rozróżniamy samodzielny czujnik oraz moduł z czujnikiem, bierzemy ten z modułem czyli gotową płytką z wlutowanym już czujnikiem)



lub opcjonalnie jeśli chcemy zamiast alarmu (lub wraz alarmem) mieć automatyczny wyłącznik pieca 230 volt, wentylatora lub cokolwiek innego co chcemy uruchomić lub rozłączyć w przypadku podwyższonego stężenia czadu


  • 1 kanałowy przekaźnik 5V 10A AVR ARM ARDUINO 230 volt


https://nowyelektronik.pl/index.php?id_product=89205&controller=product




Schemat połączeń





Możemy oczywiście sterować czułością alarmu lub zadziałania przekaźnika, specjalnym potencjometrem wbudowanym w czujnik, np. możemy próbnie popuścić trochę gazu z kuchenki lub butli gazowej i zweryfikować odczyt, a potencjometrem ustalić górną granicę przy której zadziała alarm, zalecam ustawienie minimum 50 ppm 





Program do wgrania

const int DOUTpin=22;
const int ledPin=52;
int limit;
int value;
#include <LiquidCrystal.h>

int sensorout = A8;

LiquidCrystal lcd(8, 9, 4, 5, 6, 7);


void setup()
{

lcd.begin(16, 2);
pinMode(DOUTpin, INPUT);  //pin cyfrowy czujnika
pinMode(ledPin, OUTPUT);  //pin wyjściowy LED lub buzzera
}

long RL = 1000; // 1000 Ohm
long Ro = 830; // 830 ohm

void loop()
{

limit= digitalRead(DOUTpin);

 int sensorvalue = analogRead(sensorout);
 float VRL= sensorvalue*5.00/1024;
 float Rs = ( 5.00 * RL / VRL ) - RL;
 float ppm = 100 * pow(Rs / Ro,-1.53); // ppm = 100 * ((rs/ro)^-1.53);
 lcd.clear();
 lcd.setCursor(0, 0);
 lcd.print("Stezenie gazu: ");
 lcd.setCursor(0, 1);
 lcd.print(ppm);
 lcd.println(" ppm        ");
  delay(500);
 lcd.clear();
 delay(50);
 if (limit == HIGH){
digitalWrite(ledPin, LOW);
}
else{
digitalWrite(ledPin, HIGH);
}
    }





Sketch do pobrania


https://drive.google.com/open?id=11WU3tuA7MIOyr9j-xiiHVRG0wswwQPN0








Prześlij komentarz

Whatsapp Button works on Mobile Device only

Wpisz czego szukasz i kliknij w ikonkę lupy