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

OKY3443 (CYT1033)아두이노 토양 수분 센서 (LCD16X2 키패드실드)

by 로니킴 2021. 5. 20.


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

 

목차

     

     

     


    OKY3443 (CYT1033)  아두이노 토양 수분 센서 (LCD16X2 키패드실드)

     

     

     

     

     

     

     


    OKY3443 센서란?

    OKY3433 센서는 토양의 수분을 측정하는 센서이다. 

     

     

     


     

    OKY3443 아두이노 센서 특징

    OKY3443 센서의 특징은 다음과 같다.  센서 표면은 금박 처리되어 전도성과 내식성이 향상되었다. 

     

    • 공급 전압 : 3.3V 또는 5V
    • 작동 전류 : 20mA 미만
    • 출력 전압 : 0-2.3V [2.3V는 완전히 물에 잠긴 상태] 전압, 5V 전원 공급 장치, 습도, 출력 전압이 커질수록 증가.
    • 센서 유형 : 아날로그 출력
    • 인터페이스 정의 : DATA GND VCC

     

    다음은 센서 비교를 보여 준다.

     

     


    OKY3443 센서 동작 원리

    OKY3443 센서는 간단한 수분 센서로 토양 수분을 감지하는 데 사용할 수 있다.  토양 수분이 있으면 아날로그 값의 센서 출력이 감소하고 그 반대의 경우도 증가한다.

     

    두 개의 프로브는 가변 저항기 역할을 한다. 토양에 물이 많을수록 전도성이 향상되고 저항이 낮아지고 SIG 출력이 높아진다. 아날로그 판독 값은 Vcc에 사용하는 전압과 ADC 핀의 분해능에 따라 달라진다.

     

    센서 표면은 금속 화되어 사용 시간을 연장한다. 토양에 센서를 삽입 한 다음 AD 변환기를 사용하여 읽을 수 있다. 센서측정값에 따라 식물의 토양 상태를 표시할 수 있다. 예를 들어,  나는 물을 마시고 싶다. 마실 물을 조금주세요. 라고 표할 할 수 있다. 

     

     

    [센서 교정]

    센서에서 유용한 데이터를 얻으려면 모니터링하려는 토양으로 보정하는 것이 좋다. 서로 다른 유형의 토양이 센서에 영향을 미칠 수 있으며 한 구성에서 다음 구성까지 다른 판독 값을 얻을 수 있다. 수분 데이터 저장을 시작하거나 해당 값을 기반으로 이벤트를 트리거하기 전에 센서에서 실제로 어떤 값을 얻고 있는지 확인 해야 한다.

     

    센서가 완전히 건조되었을 때와 센서가 얕은 물에 완전히 잠겼을 때 센서가 출력하는 값을 확인한다. 아두이노의 작동 전압 및 아날로그-디지털 변환기의 해상도에 따라 결과가 달라질 수 있다.

     

     

     


    OKY3443 센서 구입하기

    [OKY3443 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존 등에서 센서를 구입할 수 있다

     

     

     

     

     


     

    OKY3443 센서 하드웨어 연결

    다음과 같이 OKY3443 아두이노 센서를 연결할 수 있다.  이 센서를 사용하여 자동 급수 장치를 만들 수 있다.  집에 없거나 오랜 시간이 지나면 식물의 토양 상태를 감지 할 수 있다. 식물이 시들어지는 것을 막기 위해 물을 주는 시스템에 활용할 수 있다.

     

     

     

     

     


     

    OKY3443 센서 소프트웨어 코딩

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

     

    센서 코드는 다음과 같다. 

    /**
       OKY3443 Soil Hygrometer Detection Module
    
       @ 모두의 아두이노 환경 센서 (Arduino Sensors for Everyone)
          https://book.naver.com/bookdb/book_detail.nhn?bid=18030644
       @ author STEAMEDU123 <steamedu123@gmail.com>
    */
    
    
    #include <LiquidCrystal.h>
    
    LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
    
    int inputPin = A1;
    int soilMoisture;
    
    void setup() {
      pinMode(inputPin, INPUT);
      initSensor();
    }
    
    void loop() {
      onSensor();
      displayLCD();
    }
    
    void initSensor() {
      lcd.begin(16, 2);
      lcd.setCursor(0, 0);
      lcd.print("OKY3433 SOIL");
      lcd.setCursor(0, 1);
      lcd.print("Ready...........");
      delay(1000);
      lcd.clear();
    }
    
    void onSensor() {
      soilMoisture = averageAnalogRead(inputPin);
    }
    
    int averageAnalogRead(int pinToRead)
    {
      byte count = 10;
      float value = 0;
      for (int x = 0 ; x < count ; x++) {
        value += analogRead(pinToRead);
        delay(20);
      }
    
      value = value / count;
      return (value);
    }
    
    void displayLCD() {
      lcd.clear();
    
      lcd.setCursor(0, 0);
      lcd.print("OKY3443:");
      lcd.print(soilMoisture);
    
      if (soilMoisture > 950) {
        return;
      }
    
      lcd.setCursor(0, 1);
      if (soilMoisture > 700) {
        lcd.print("IN WATER");
      } else if (soilMoisture > 300) {
        lcd.print("HUMID SOIL");
      }  else {
        lcd.print("DRY SOIL");
      }
    }
    
    

     

     

     


     

    OKY3443 센서 동작확인

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

     

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

    02 컴파일 확인 

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

     


    03 아두이노 우노 업로드 

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


    04 동작 확인

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

     

     

     

     

     


     

    마무리

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

     

    참고로 센서의 수명을 연장하는 또 다른 방법은 판독시에만 전원을 공급하는 것이다. 예를 들어 Arduino에서 HIGH로 설정된 디지털 핀을 사용하면 이를 쉽게 수행 할 수 있다. 아두이노에서 제공 할 수있는 하나 이상의 디지털 핀으로 센서에 전원을 공급하려면 항상 트랜지스터를 사용할 수 있다 .

    또한 이 센서를 실외에서 사용하려는 경우 PCB에 약간의 보호 기능을 추가하여 수명을 연장하는 것이 좋다. 

     

     

     

     

     


     

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

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

     

     

     

     



    댓글