raspberryPi2와 CO2 센서 (MH-Z19B)와 ambient를 사용하여 co2를 측정하고 그래프로 만듭니다.

8021 단어 RaspberryPiIoT

개요



다음을 사용하여 CO2 농도의 계측과 웹에서의 가시화를 해본다.
  • raspberriPi2 modelB v1.1

  • MH-Z19B
    CO2 센서. amazon으로 3500엔 정도.

  • Ambient
    무료로 사용할 수있는 센서 데이터를 시각화하는 서비스

  • 전제



    상기 이외의 이하의 것은 갖추어져 있는 것이 전제입니다.
  • RaspberryPi와 MH-Z19B를 연결하는 점퍼 와이어
  • RaspberryPi 설정
  • python3이 들어 있고 네트워크에 연결되어 있습니다
  • 시리얼 통신이 활성화되어 있습니다.
    raspi-config 명령으로 활성화하십시오.

  • MH-Z19 데이터시트는 공식 HP 제품 페이지

  • 계기



    음식점에 co2 센서가 도입되고 있는 것을 보고,
    재택 근무가 주류가 된 후 궁금했던 방의 CO2 농도
    알아보고 싶은 동기 부여가 재연했다.
    이전에는 센서가 고액으로 포기했지만 3500 엔 정도
    아마존에서 팔고 있는 것을 발견한 것도 크다.

    준비



    ambient 계정은 만들어 두자.

    raspberryPi와 센서를 연결



    데이터 시트의 "6. Pins"항목 (이미지)과 RaspberryPi2
    Pin 어사인(화상하)을 비교해 점퍼 와이어를 연결한다.



  • Rx와 Tx 연결
    이미지 아래에서 RaspberryPi2 측의 GPIO 핀의 8이 Tx로 10이 Rx인 것을 알 수 있으므로,
    MH-Z19B의 Rx를 RaspberryPi2의 Tx로,
    MH-Z19B의 Tx를 RaspberryPi2의 Rx에 연결한다.
  • GRAND 연결
    이미지 아래에서 RaspberryPi2 측의 GPIO 핀의 6,9,14,20,25,30,34,39
    0V에서 GRAND임을 알 수 있으므로,
    MH-Z19B의 GND와 RaspberryPi2 측 중 하나의 GRAND에 연결한다.
    (이번에는 6으로 설정)
  • Vin 연결
    Vin은 입력 전압의 일.
    이미지 아래에서 RaspberryPi2 측의 GPIO 핀의 2,4가 5V의 출력임을 알 수 있으므로,
    MH-Z19B의 Vin과 RaspberryPi2 측 중 하나의 5V 출력 pin에 연결합니다.
    (이번에는 4로 설정합니다.)

  • 연결된 이미지






    센서로 값 얻기



    파이썬 모듈 설치



    pypi mh-z19 페이지 을 보고 pip로 설치합니다.


    pip install mh-z19
    

    값 얻기



    이하의 느낌으로 실행해 본다.
    지금의 값이 1410ppm인 것을 알 수 있다.
    pi@raspberrypi:~/co2_check $ sudo python3 -m mh_z19
    {"co2": 1410}
    pi@raspberrypi:~/co2_check $ 
    

    사전 형식이므로 키를 지정하면 값을 얻을 수 있습니다.

    pi@raspberrypi:~/co2_check $ sudo python3
    Python 3.7.3 (default, Jul 25 2020, 13:03:44) 
    [GCC 8.3.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import mh_z19
    >>> mh_z19.read()
    {'co2': 1170}
    >>> type(mh_z19.read())
    <class 'dict'>
    >>> mh_z19.read()["co2"]
    1072
    >>> 
    

    ambient에 데이터를 보내서 그리게 한다.



    ambient 모듈 설치



    ambient 공식 문서 에 따라 설치하기

    pip install git+https://github.com/TakehikoShimojima/ambient-python-lib.git
    

    ambient 웹페이지에서 채널 만들기



    채널 목록 페이지에 다음과 같은 버튼이 있어야 합니다.


    만들면 다음 값을 확인한다.
    - 채널 ID
    - 라이트 키

    ambient로 값 보내기



    아래와 같은 코드를 작성해 본다.
    
    import ambient
    
    ambi = ambient.Ambient(チャンネルID, "ライトキー") 
    ambi.send({"d1": , "d2": })
    
    ---
    
    import mh_z19
    import ambient
    
    
    amb = ambient.Ambient(12345, "write000200key") 
    amb.send({"d1": mh_z19.read()["co2"]})
    

    이제 해당 채널에 그래프가 쓰여져 있을 것이다.



    이제 co2 센서를 사용하여 값을 취득하고, 취득한 값을 ambient에 보내서 그릴 수 있었다.
    이 후는 계속적으로 값을 취득해, ambient에 송신해 가면 이하와 같은 느낌으로 그래프가 그려집니다.


    5~6 다다미 정도의 마감한 방이라면 2시간 정도로 2500ppm을 넘는 것 같아서,
    옛날 학교에서 말해진 「1시간에 15min의 환기를 합시다」라고 하는 것은 자주 말한 것이구나라고 생각합니다.
    덧붙여서 외기가 400ppm 정도 같다.

    좋은 웹페이지 즐겨찾기