본문 바로가기
모두의 아두이노 환경 센서/3장 실대 대기 측정 센서

C302 MH-Z19B 이산화탄소(CO2) 아두이노 센서 [모두의 아두이노 환경 센서]

by 로니킴 2021. 3. 17.


본 절은 MH-Z19B 이산화탄소 아두이노 센서를 사용하기 위해 알아야 할 내용과 실습 방법에 대해 설명한다. 이산화탄소 센서의 특징, 동작원리, 사양, 연결 핀 배열, 출력 값, 주의사항을 알아본다. 아두이노와 미세먼지 센서를 연결하고, 라이브러리를 이용해 쉽게 실습한다.

 

목차

     

     


    MH-Z19B 아두이노 센서

     

    MH-Z19B-아두이노-센서
    MH-Z19B-아두이노-센서

     

     

     

    MH-Z19B-아두이노-센서-전체구성
    MH-Z19B-아두이노-센서-전체구성

     

     

     


     

     

     

     

     

    인체에 미치는 영향

    이산화탄소는 사람이 숨만 쉬어도 발생한다. 

     

    이산화탄소(CO2)는 실내공기질 또는 환기 상태의 척도로 사용되고 있다. 공기청정기를 틀고 창문을 꽉 닫으면, 이산화탄소에 숨 막히는 실내가 된다.  간이 측정기로 공기 질을 측정해보면 미세먼지는 줄지만 대신 이산화탄소 농도가 올라간다. 왜 그럴까?

     

    공기청정기는 공기 중에 있는 미세먼지와 초미세먼지를 H13 등급 이상의 헤파필터를 통해 깨끗하게 걸러주어 깨끗한 공기를 유지시켜 준다. 하지만 공기청정기는 실내에 매일같이 쌓이는 이산화탄소(CO2), 포름알데히드(HCHO), 라돈(Rn) 및 방사능, 실내 오염 물질 등과 같은 기체성 물질은 해결해 주지 못한다. 공기청정기는 미세먼지와 같은 고체 입자만을 제거할 수 있으며, 이산화탄소(CO2)와 같은  기체성 입자는 제거할 수 없다. 공기청정기는 필터를 이용해 여과, 흡착시켜 걸러내는 방식과 전기적으로 오염물질을 제거하는 방식이 있다.

     

    공기처정기-필터방식-전기적방식-비교-화면
    공기처정기-필터방식-전기적방식-비교-화면

     

    공기청정기 효과를 높이기 위해 문과 창문을 꽉 닫으면 환기가 되지 않아, 미세먼지 농도는 감소해도 이산화탄소 농도가 올라간다. 공기청정기만 믿고 환기를 안 시키면 오히려 이산화탄소가 인체에 나쁜 영향을 줄 수 있다.

     

    환기 시설이 열악하거나 밀집된 실내 공간(예: 교실, 사무실, 침실, 에어컨이 가동되는 기차나 비행기 실내 등)에서는 이산화탄소 농도가 1,000ppm을 초과한다(미국 위스콘신대 연구 결과). 

     

    1,000ppm 상태에서는 건강 피해는 없지만 민감한 사람은 불쾌감을 느끼게 되며, 장시간 노출되면 인간의 사고 능력이 저하될 수 있다. 1,000~2,000ppm 상태에서는 공기가 탁하게 느껴지고 잠이 많아진다. 집중력이 떨어지고, 가벼운 두통이 발생한다. 

     

    실내에서 발생하는 이산화탄소는 사람의 호흡이 주 발생원인이다. 밀폐된 실내에서는 이산화탄소의 농도가 증가해서 산소의 양이 부족하게 되므로, 이산화탄소를 실내 오염물질로 취급한다. 공기청정기를 작동해도 이산화탄소의 수치에는 영향이 없다. 실내의 이산화탄소 수치를 낮추려면 환기 밖에 방법이 없다. 

     

     

    이산화탄소-인체에-미치는-영향-화면
    이산화탄소-인체에-미치는-영향-화면


    실내 이산화탄소 수치가 2000ppm 이상이 되면 두통, 졸음, 집중력 저하, 주의력 상실, 심박수 증가, 메스꺼움 등이 발생할 수 있다. 

     

     

    이산화탄소-두통-졸음-화면
    이산화탄소-두통-졸음-화면

     


    연구 결과에 따르면, 이산화탄소가(CO2)가 사람의 움직임이 미세먼지에 영향을 주는 결과가 있다.    테스트는 (센서는 온도 보정 및 Sidepak PM 측정기와의 상관관계를 사용하여 보정) 동안 PACMAN 먼지 센서의 전체 시계열 은 최대 1 분 분해능으로 평균화되었다. 또한 회색으로 표시되어 움직임이 감지된 각 분의 비율을 나타난대. 사용자의 시간 활동 기록은 비교적 열악하고 불완전하지만 움직임 기록 및 CO2 데이터와 완전히 일치하는 결과를 나타낸다. 
    즉 사람의 움직임에 따라 이산화탄소가 실내에서 장소별 농도가 다른 것을 알 수 있다. 

     

    이산화탄소-실험화면
    이산화탄소-실험화면

    그림 출처 : Olivares, G., Longley, I., Coulson, G., 2012. Development of a low-cost device for observing indoor particle levels associated with source activities in the home. International Society of Exposure Science Conference, Seattle, October 2012.


     

     

    [이산화탄소 자동차 실내 영향 ]


    차량 내 이산화탄소 농도가 늘어날수록 운전자의 졸음운전 가능성도 높아지는 것으로 나타났다. 자동차 실내의 산소량이 적어져 운전 집중도가 낮아지고 눈을 깜빡거림으로써 주의 분산에 의한 사고 위험성이 높아진다. 
    교통안전공단 실험에 따르면, 미세 먼지 농도가 '나쁨' 수준인 날 창문을 모두 닫고 운전하면 차내 미세 먼지가 공기 1㎥당 35.6㎍ 수준이었지만 창문을 열면 약 7배 수준인 254.1㎍까지 치솟는 것으로 나타났다.

     

     

    자동차실내에서-이산화탄소-영향
    자동차실내에서-이산화탄소-영향

     

     

    “차량 내 대기 변화가 운전자 피로에 미치는 영향에 대한 연구”에 따르면, 고속버스를 대상으로 차량 내 이산화탄소의 농도 변화를 측정한 결과 승차정원의 70% 이상이 탑승한 상태에서 90분 이상 연속 주행할 경우 차량 내 이산화탄소 농도는 평균 3422ppm, 최대 6765ppm을 기록하는 것으로 나타났다.

    삼성교통문화안전연구소에 따르면, 4인 기준, 자동차에서 환기를 안 했을 경우, 차량 운전 1시간 30분 만에 실내 이산화탄소 농도가 3000ppm 으로 증가한다고 나타났다.. 

    미국산업위생협회는 2012년 밀폐 공간 내 이산화탄소 농도가 2000ppm을 초과하면 두통이나 졸음 등을 유발하며 5000ppm을 초과할 경우 산소부족으로 뇌손상에 이르게 될 수 있다는 내용의 졸음운전 연구결과를 발표한 바 있다.

     

     


    [이산화탄소(CO2) 기준 농도 ]

     

    이산화탄소 기준 농도는 다음과 같다. 

    이산화탄소-기준-농도-화면
    이산화탄소-기준-농도-화면

     

     

     


     

     

     

     

     

    MH-Z19B 아두이노 센서란?

    Winsen의 MH-Z19B는 비분산 적외선 방식(NDIR)의 이산화탄소 측정 센서다. MH-Z19B는 공기정화 계통(HAVC), 실내 공기질 모니터링, 스마트 가전, 학교, 에어 클리너 등에 사용할 수 있다.

     

    MH-Z19B-이산화탄소-센서-이미지
    MH-Z19B-이산화탄소-센서-이미지

     

    Winsen 제조사의 MH-Z19B 센서이다. WINSEN 의 다양한 종류의 가스 센서를 취급하고 있다. 다양한 종류의 이산화탄소 측정 센서를 제공하고 있다. 

    WINSEN-MH-Z19B-이산화탄소-센서-이미지
    WINSEN-MH-Z19B-이산화탄소-센서-이미지


    [MH-Z19B 센서사양]

     

    MH-Z19B-이산화탄소-센서-사양
    MH-Z19B-이산화탄소-센서-사양


    [MH-Z19B 출력]

     

    UART 출력은 다음과 같이 계산한다. 

    (1) 직렬 포트 전송 속도를 9600, 데이터 비트 8 바이트, 정지 비트 1 바이트, 패리티 비트 NULL로 설정한다. UART 이용해 명령어를 센서로 전송하면, 센서는 리턴 값을 보낸다. 
    (2) 농도 계산은 다음과 같다. 
    CO2 농도 = HIGH * 256 + LOW
    예를 들어,
    Send command FF 01 86 00 00 00 00 00 79, 
    Return value FF 86 02 20 00 00 00 00 58
    (3) 16진수 02와 20 를 10진수로 변환하면 2, 32가 된다. 따라서 공식에 대입하면 이산화탄소 농도는2 * 256 + 32 = 544ppm이다. 

     

     

     

    PWM 출력은 다음과 같이 계산한다. 

    MH-Z19B-이산화탄소-센서-PWM-OUTPUT-이미지
    MH-Z19B-이산화탄소-센서-PWM-OUTPUT-이미지


    (1) PWM CO2 농도의 측정 범위는 0~2000ppm이다. 
    (2) Cppm=2000×(TH-2ms)/(TH+TL-4ms)로 측정이 가능하다. 
    예를 들어, 1992ppm = (998-2)/(998+6-4) 이다.

    MH-Z19B-이산화탄소-센서-PWM-출력값
    MH-Z19B-이산화탄소-센서-PWM-출력값

     

     


    DAC 출력
    DAC는 0.4~2V 가 기본 설정이며, 0~3V로 변경할 수 있다. MH-Z19B 센서의 DAC 아날로그 출력을 이용하면, 아두이노 없이 볼트미터만으로 이산화탄소 농도를 간단히 표시할 수 있다.

     

     

     


     

     

     

     

    MH-Z19B 아두이노 센서 구입하기

    다음과 같이 [모두의 아두이노 환경 센서] 책에서 사용한 [MH-Z19B 아두이노 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존 등에서 센서를 구입할 수 있다

     

    [알리익스프레스]

    MH-Z19B-이산화탄소-센서-구입하기-알리익스프레스
    MH-Z19B-이산화탄소-센서-구입하기-알리익스프레스

     

    [네이버]

    MH-Z19B-이산화탄소-센서-구입하기-네이버
    MH-Z19B-이산화탄소-센서-구입하기-네이버

     

    [아마존]

     

    MH-Z19B-이산화탄소-센서-구입하기-아마존
    MH-Z19B-이산화탄소-센서-구입하기-아마존

     

     

     

     

     

    MH-Z19B 아두이노 센서 연결도(UART)

    [모두의 아두이노 환경 센서] 책에서 소개하는 [MH-Z19B 아두이노 센서]는 라이브러리를 사용하여 간편하게 동작 확인을 할 수 있다. 책에서는 PWM 방법을 설명하고 있다. 다음은 UART 방법에 대한 연결도이다 .

    MH-Z19B-아두이노-센서-uart-연결화면
    MH-Z19B-아두이노-센서-uart-연결화면

     

     


     

     

     

     

     

    MH-Z19B 아두이노 센서 동작 확인

     

    ------------------------------------------------------ 
    개발환경 : WINDOWS 10 
    아두이노 IDE : 1.8.13 
    ------------------------------------------------------ 
    01 라이브러리 복사 
     libraries\Steamedu123_Sensor-master 폴더는 아래 폴더에 복사 

     * 아두이노 설치 후 자동으로 생기는 폴더 
     C:\Users\s\Documents\Arduino\libraries 

    02 *. ino 파일 실행 

     - 아두이노와 PC 연결 
     - 아두이노 IDE 실행 
     - 메뉴 → 툴 → 보드:아두이노 UNO 확인 
      - 메뉴 → 스케치 → 확인/컴파일 

     

    /*
       @타이틀 : 이산화탄소 센서 
    */
    
    #include <C302_Steam_Air_MH-Z19B_CO2_UART.h> // 라이브러리 헤더
    #define rxPin 3
    #define txPin 2
    
    SteamMHZ19B mhz19b_uart(rxPin, txPin);  // 인스턴스, 핀 번호를 입력한다
    
    void setup() {
      Serial.begin(115200);     // 115200bps의 속도로 시리얼 통신을 시작한다.
      mhz19b_uart.begin();      // (1) 센서를 초기화 한다.
    }
    
    void loop() {
      mhz19b_uart.read();       // (2) 센서의 값을 측정한다.
      mhz19b_uart.display();    // (3) 센서의 값을 출력한다
    
      delay(5000);              // 5초 동안 대기한다.
    }



    03 컴파일 확인 

    스케치>확인/컴파일(CTRL+R) 를 선택해서 컴파일을 진행한다.

     

    MH-Z19B-이산화탄소-센서-동작화면
    MH-Z19B-이산화탄소-센서-동작화면


    04 아두이노 우노 업로드 

    컴파일이 이상없이 완료되면 스케치>업로드(CTRL+U) 를 선택해서 컴파일 파일을 업로드 한다. 


    05 동작 확인

    다음과 같이 동작을 확인할 수 있다. 

    MH-Z19B-이산화탄소-센서-컴파일화면
    MH-Z19B-이산화탄소-센서-컴파일화면

     

     


     

     

     

     

    마무리

    본 절에서는 이산화탄소가 인체에 미치는 영향과 기준 농도 및 간이측정기의 측정 범위와 측정기에 사용되는 센서들을 알아보고, 실제 이산화탄소를 측정할 수 있는 MH-Z19B 센서와 아두이노를 이용해 PWM 방식으로 센서를 직접 제어해보았다. 제공되는 예제에 UART 방식도 포함되며 진행하는 프로젝트의 인터페이스에 맞춰 센서를 연결하면 된다. 

     

    이 절에서 사용한 MH-Z19B센서의 출력 동작 4단계 기준은 국내법령, 미국 질병통제예방센터, 미국 노동부, , ASHRAE, 호주 SWA 등 측정기준을 결합하여 구분하였다. 국내 실내 공기질 관리법에 따라 실내 권고 기준은 1000ppm(8시간) 이하로 유지를 권하고 있다. 이는 ASHRAE(미국 냉동공조협회)에서 권고한 기준으로 세계 여러 나라에서 이 규정을 활용하고 있다. 보통 단계이면 양호한 것으로 판단하면 된다. 


    이산화탄소로 꽉 찬 실내공기는 두통, 졸음, 집중력 저하, 주의력 상실, 심박수 증가, 메스꺼움 눈, 신경계통, 폐, 뇌 등 인체에 나쁜 영향을 미친다. 공기청정기로는 이산화탄소를 제거할 수 없으므로, MH-Z19B 센서로 이산화탄소 4단계 상태를 확인하고, 나쁨, 매우 나쁨 상태라면 창문을 열고 실내 공기를 환기시켜야 한다.  


     

    참고문헌

    다음과 같이 [모두의 아두이노 환경 센서] 책에서 사용한 [MH-Z19B 아두이노 센서]의 참고 문헌은 다음과 같다. 


    [11] Jacobson, T. A. et al. Direct human health risks of increased atmospheric carbon dioxide. Nat. Sustain. 2, 691–701 (2019).
    [12] 한국 실내공기-산소 연구회, 실내공기와 건강, 신광 문화사, 2004 / 차동원, 집 안에서 만나는 환경 이야기, 지성사, 2007
    [13] 안순보, 대기 오염이 인체에 미치는 영향에 관한 연구, 국내석사학위논문 광운대학교, 2005
    [14] 실내공기질 관리법, [별표 2] 실내공기질 유지기준(제3조 관련) [시행 2020. 4. 3.] 
    [15] 이윤규, 실내공기 환경 관련 기준의 국제적 연구동향, 건설기술정보, 1996
    [16] ASHRAE Standard, Ventilation for Acceptable Indoor Air Quality, 2016
    [17] MH-Z19B-Datasheet, 
    [18] S8-0053-Datasheet,
    [19] CM1106-Datasheet,
    [20] T6703-Datasheet, 
    [21] 알리익스프레스, MH-Z19B CO2 Sensor,
    [22] 알리익스프레스, S8-0053 CO2 Sensor,
    [23] 알리익스프레스, CM1106  CO2  Sensor
    [24] 알리익스프레스, T6703 CO2 Sensor, 
    [25] MH-Z19B Datasheet, “Main Parameters”, p5
    [26] MH-Z19B Datasheet, “Terminal Connection type”, p4
    [27] 휴마아이(HI-150A) 
    [28] 코아미세 S4, 
    [29] 코아 미세 B36, 
    [30] Lisa Home IAQM3000, 
    [31] 썬 에어케어 SAC-02, 
    [32] 에어람(Airam) SAP-500H, 

     

     

     


    + 이 글도 읽어보세요. 

     


     

     

     

     


    모두의-아두이노-환경-센서-표지
    모두의-아두이노-환경-센서-표지

     

     

     


     

    모두의 아두이노 환경 센서 책

    [모두의 아두이노 환경 센서] 책은 예스24, 인터넷 교보문고, 알라딘, 인터파크도서, 영풍문고, 반디앤루니스 , 도서11번가 등에서 구입할 수 있다. 이 책에서는 PMS7003, GP2Y1010AU0F, PPD42NS, SDS011 미세먼지 센서, DHT22 온습도 센서, MH-Z19B 이산화탄소 센서, ZE08-CH2O 포름알데히드 센서, CCS811 총휘발성유기화합물 TVOC, GDK101 방사선(감마선) 센서, MQ-131 오존(O3) 센서, MQ-7 일산화탄소, MICS-4514 이산화질소 센서, MICS-6814 암모니아 센서, DGS-SO2 아황산가스(SO2) 센서, BME280 기압 센서, GUVA-S12SD 자외선(UV) 센서, MD0550 기류 센서, QS-FS01 풍속 센서(Wind speed) 를 사용한다.  

     

     

    모두의 아두이노 환경 센서

    아두이노와 센서로 내 건강을 지킬 수 있다!다양한 환경 센서를 실생활 프로젝트에 응용해보자!시중에 판매되고 있는 간이측정기도 센서로 값을 측정합니다. 똑같은 센서를 아두이노에 연결하

    book.naver.com

     



    댓글