본문 바로가기
모두의 아두이노 센서/아두이노 센서 (흙)

SHT10 아두이노 토양 온습도 센서

by 로니킴 2021. 5. 21.


본 절은 [SHT10] 아두이노 센서를 사용하기 위해 알아야 할 내용과 실습 방법에 대해 설명한다. 아두이노 센서의 특징, 동작원리, 사양, 연결 핀 배열, 출력 값, 주의사항을 알아본다. 아두이노와 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다. 

 

목차

     

     

     


    SHT10 아두이노 토양 온습도 센서


    SHT10 센서란? 

    SHT10 센서는 토양 온도와 습도를 측정한다. SHT1x (SHT10, SHT11 및 SHT15 포함)는 Sensirion의 표면 실장 형 상대 습도 및 온도 센서 제품군이다.

     

    Sensirion_Humidity_SHT1x_Datasheet_V5.pdf
    0.34MB
    SLHT5.pdf
    0.16MB
    317085.pdf
    0.79MB

     

     

     

    토양 수분의 정의는 1kg의 토양 샘플을 채취하여 철저한 건조, 감소 된 중량 (물 무게) 및 비율 1kg이 토양 수분이다. 
    상대 습도는 포화 습도 절대 습도 및 현재 온도 현재 온도의 백분율로 정의된다. 

     

     

     

     


     

    SHT10 아두이노 센서 특징

    SHT10 센서의 특징은 다음과 같다. 

     

    • 프로브 총 길이 77mm
    • 10k 풀업 저항 및 필터 커패시터 0.1uf 포함
    • 이중 수처리를 수행
    • 케이블 : 50cm
    • 4.5 % 정확도의 습도 값
    • 0.5 ° C 정확도의 온도 판독
    • 작동 온도 / 습도 범위 : -40 ° C ~ 120 ° C, 0 ~ 100 % RH

      

     

    값 0000’0100“0011’0001”= 1073 = 35.50 % RH (온도 보상 없음)에 대한 RH 측정 시퀀스 동작을 보여준다.  DATA 유효 시간은 DATA 라인의 상자에 제공되고 참조된다. 굵은 데이터 라인은 센서에 의해 제어되고 일반 라인은 아두이노에에 의해 제어된다.

     

     


     

    SHT10 센서 하드웨어 연결

    다음과 같이 SHT10 아두이노 센서를 연결할 수 있다.  센서는  Sensiron SHT-10이며 4 개의 데이터/전원 선을 사용하며 아두이노에 연결되며, SHT-1X 코드에 작동된다. 

     

     


    검정색 또는 녹색 = 접지, 노란색 = 시계, 파란색 = 데이터의 4 개의 와이어가 있다.
    파란색 데이터 라인에서 VCC로 10K 레지스터를 반드시 연결해야 한다. 

     

    센서는 Sensiron SHT-10 이며 4 개의 데이터/전원 선을 사용한다. 

    센서는 3 또는 5V 로직으로 작동한다.  빨간색  케이블에는 VCC (3-5VDC)를 입력한다. 

     

    핀 연결 : 

    브라운: VCC 
    검정: GND 
    황색: DATA
    파랑: CLK


    습도 판독 값은 4.5 %이며 온도는 0.5 %이다. 

     

     

     

     


     

    SHT10 센서 아두이노 라이브러리

    아두이노 코딩에 사용되는 Sensiron 라이브러리가 있다.  라이브러리를 설치 하여 사용한다.  

     

    SHT1x-master.zip
    0.01MB

     

     

    "SHT1x"디렉토리를 다운로드하여 스케치북 디렉토리 내의 "libraries"디렉토리로 이동 한 다음 Arduino IDE를 다시 시작

    한다. 그러면 File-> Examples-> SHT1x 아래에 나열된다.

     

    라이브러리는 상대 습도 및 온도를 읽기 위해 제공된 메서드를 사용하여 개체로 인스턴스화된다. 스케치에 포함시킨 다음 센서와 통신하는 데 사용할 핀을 지정하여 객체를 만든다.

    #include <SHT1x.h>
    #define dataPin 10
    #define clockPin 11
    SHT1x sht1x(dataPin, clockPin);


    그런 다음 프로그램 내에서 해당 개체에 대한 메서드를 호출 할 수 있습니다. 이 예에서는 "sht1x"라는 개체를 만들었지 만 원하는대로 호출 할 수 있다. 전체 예제 프로그램은 라이브러리에 포함되어 있으며 파일-> 예제-> SHT1x 메뉴에서 액세스 할 수 있다.

     

     

    readTemperatureC ()
    -40 ~ + 123.8C의 유효한 센서 범위 내에서 부동 소수점을 반환한다.. 센서와의 통신 오류가 발생하면 -40 값이 반환된다.
    예:  float tempC = sht1x.readTemperatureC();

     

     

    readTemperatureF ()
    -40 ~ + 254.9F의 유효한 센서 범위 내에서 부동 소수점을 반환한다. 센서와의 통신 오류가 발생하면 -40 값이 반환된다.
    예:  float tempF = sht1x.readTemperatureF();

     

    readHumidity ()
    센서의 유효 범위 0 ~ 100 % 내에서 부동 소수점을 반환한다. 센서와의 통신 오류가 발생하면 음수 값이 반환된다.
    예: float humidity = sht1x.readHumidity();


     

    SHT10 센서 소프트웨어 코딩

    하드웨어 연결이 완료되면, 아두이노 IDE를 이용해 아두이노 센서 소스코드를 코딩할 수 있다.

     

     

    센서 코드는 다음과 같다. 

    /**
     * ReadSHT1xValues
     *
     * Read temperature and humidity values from an SHT1x-series (SHT10,
     * SHT11, SHT15) sensor.
     *
     * Copyright 2009 Jonathan Oxer <jon@oxer.com.au>
     * www.practicalarduino.com
     */
    
    #include <SHT1x.h>
    
    // Specify data and clock connections and instantiate SHT1x object
    #define dataPin  10
    #define clockPin 11
    SHT1x sht1x(dataPin, clockPin);
    
    void setup()
    {
       Serial.begin(38400); // Open serial connection to report values to host
       Serial.println("Starting up");
    }
    
    void loop()
    {
      float temp_c;
      float temp_f;
      float humidity;
    
      // Read values from the sensor
      temp_c = sht1x.readTemperatureC();
      temp_f = sht1x.readTemperatureF();
      humidity = sht1x.readHumidity();
    
      // Print the values to the serial port
      Serial.print("Temperature: ");
      Serial.print(temp_c, DEC);
      Serial.print("C / ");
      Serial.print(temp_f, DEC);
      Serial.print("F. Humidity: ");
      Serial.print(humidity);
      Serial.println("%");
    
      delay(2000);
    }

     

     

     


     

    SHT10 센서 동작확인

    하드웨어 연결, 소프트웨어 코딩이 완료되면 다음과 같이 동작 화면을 확인할 수 있다. 

     

    ------------------------------------------------------ 
    개발환경 : WINDOWS 10 
    아두이노 IDE : 1.8.13 
    ------------------------------------------------------ 
    01 연결
     - 아두이노와 PC 연결 
     - 아두이노 IDE 실행 
     - 메뉴 → 툴 → 보드:아두이노 UNO 확인 
      - 메뉴 → 스케치 → 확인/컴파일 

    02 컴파일 확인 

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

     


    03 아두이노 우노 업로드 

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


    04 동작 확인

     

     

     

     


     

    마무리

    아두이노와 SHT10 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다. 

     

     

     

     

     

     


     

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

    [모두의 아두이노 환경 센서] 책은 예스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

     

     

     

     



    댓글