블로그 이미지
조이키트 블로그
아두이노, 라즈베리파이, 반도체 센서/모듈 활용

calendar

1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Notice

250x250
728x90
반응형

MQ-135 가스 감지 센서는 다양한 가스를 감지할 수 있는 다목적 가스 센서이다.

이 센서는 공기 중의 다양한 가스를 감지하여 아날로그 신호로 출력하는 기능을 수행한다.

 

MQ-135 가스센서 속성 :

작동 전압 DC 5V
작동 전류 150mA
감지 범위 10 - 1000 ppm (Part per million)
출력 방식 아날로그 및 디지털 신호 출력
작동 온도  -10 ~ 50 도
예열 시간 20초

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

https://link.coupang.com/a/b2TkB7

 

아두이노 가스 측정 감지센서 [모델명 : MQ-135] - 기타측정도구 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2vSOT

 

ATmega328P 마이크로 컨트롤러가 있는 아두이노 우노 R3 개발 보드 - 액세서리 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2vTO0

 

아두이노 LCD1602 16x2 4핀 디스플레이 모듈/ Arduino LCD1602 Module - 액세서리 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2E5Xq

 

액티브/패시브 버저 모듈 - 기타전기설비부자재 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

 

사용 범위 : 

공기 질을 실시간으로 모니터링하여 가정이나 사무실의 공기를 측정할 수 있다.

공기 중의 유해 가스 농도를 측정하여 자동 환기 시스템을 제어할 수 있다.

 

MQ-135 가스 센서를 사용하기 위해서는 센서의 출력을 읽고 해석할 수 있는 마이크로 컨드롤러가 있어야 한다. 

예를 들면 Arduino, Raspberry Pi가 일반적으로 사용된다.

이를 통해 실시간으로 가스 농도를 모니터링하고 필요시 경보를 발생시키는 등 다양한 응용 시스템을 만들 수 있다.

실습 예제

MQ-135 가스감지 센서를 아두이노에 연결하여 "가스감지 측정기"를 만들어 보겠다.

작동 방식은 가스감지 센서가 가스를 감지하면 경고음이 울리면서 LCD 디스플레이에 가스 농도를 현시하여 준다.

 

회로 구성품 : 

MQ135 가스감지센서 아두이노 우노  R3 LCD 1602 디스플레이 모듈
부저 모듈 LED 다이오드 300옴 저항

 

구성품이 모두 준비되면 다음과 같이 회로를 연결한다.

 

회로 연결 : 

MQ135 가스측정 회로

 

아두이노 우노 R3 MQ-135 가스감지센서 LCD1602디스플레이 부저모듈 LED 다이오드
+5V VCC VCC    
GND GND GND (-) (-)
A0 AO      
D11 DO      
A4   SDA    
A5   SCL    
D9     (+)  
D13       (+)

 

 

회로 연결이 끝나면 아두이노 IDE에 다음과 같이 코드를 작성한다.

 

코드 : 

#include <LiquidCrystal_I2C.h> 

const int analogPin = A0; // 아날로그 핀 연결
const int digitalPin = 11; // 디지털 핀 연결
int gasLevel = 0;         // 가스 농도 변수
int gasDetected = 0;      // 가스 감지 변수

const int ledPin = 13;      // LED가 연결된 디지털 핀
const int buzzerPin = 9;    // 부저 모듈이 연결된 디지털 핀

LiquidCrystal_I2C lcd (0x27,16,2);   // LCD1602 hexa값, 2행 16열 설정

void setup() {
  lcd.init();    // LCD 초기화 
  lcd.backlight();  // LCD 백라이트 켬

  Serial.begin(9600);        // 시리얼 통신 시작
  pinMode(digitalPin, INPUT); // 디지털 핀을 입력 모드로 설정
}

void loop() {
  // 아날로그 값 읽기
  gasLevel = analogRead(analogPin);
  Serial.print("Gas Level: ");
  Serial.println(gasLevel);
  
  lcd.setCursor(0,0);            // LCD 1행 1열에 출력
  lcd.print("Level : ");
  lcd.print(gasLevel);      // LCD에 센서값 출력

  // 디지털 값 읽기
  gasDetected = digitalRead(digitalPin);
  if (gasDetected == LOW) {
    Serial.println("Gas Detected!");
    digitalWrite(ledPin, HIGH);
    tone(buzzerPin, 1000);    // 부저를 1kHz로 설정하여 소리 출력
    lcd.setCursor(0,1);            // LCD 1행 2열에 출력
    lcd.print("Gas : detection");  

  } else {
    digitalWrite(ledPin, LOW);
    noTone(buzzerPin);        // 부저 소리를 끔
    Serial.println("No Gas Detected.");
    lcd.setCursor(0,1);            // LCD 1행 2열에 출력
    lcd.print("Gas : nodetection");
  }

  delay(1000); // 0.5초 대기

  lcd.clear();  // LCD 클리어
}

 

코드 작성이 전부 끝나면 파일을 컴파일 하고 아두이노 우노 R3에 USB 케이블을 연결하고 업로드 한다.

다음 MQ-135 센서에 가스를 주입하면 경고음이 울리면서, 가스 감지량과 감지확인 메시지가 LCD 디스플레이에 출력된다.

 

출력 결과 : 

https://www.youtube.com/watch?v=-rm6w0_ptRU

 

 

728x90
반응형
posted by 조이키트 블로그