본문 바로가기
모두의 아두이노

[아두이노][센서] 빗물 감지 센서(MH-RD)로 강우량 측정 프로젝트 완성하기

by 로니킴 2024. 10. 30.


이번 프로젝트는 아두이노와 빗물 감지 센서(MH-RD)를 활용하여 초보자도 쉽게 따라 할 수 있도록 구성되었습니다. 단계별 설명을 통해 하드웨어 연결부터 소프트웨어 코딩, 동작 확인까지 모든 과정을 다루었습니다. 아두이노와 함께 실시간으로 비 감지 및 강우량을 모니터링하는 시스템을 만들어 보며, 환경 제어 시스템의 기초를 배울 수 있습니다. 이제 아두이노 세계로 한 걸음 나아가 보세요!

 

목차

     

     

     


    [아두이노][센서] 빗물 감지 센서(MH-RD)로 강우량 측정 프로젝트 완성하기

     

    이번 프로젝트에서는 빗물 감지 센서(MH-RD)를 사용해 아두이노로 비 감지와 강우량 측정을 구현하는 방법을 배웠습니다. 이 프로젝트를 통해 센서에서 수집한 데이터를 아두이노가 실시간으로 처리하고, LCD를 통해 비 감지 상태와 강우량 수준을 시각적으로 확인할 수 있습니다.

     

    핵심 요약:

    • 빗물 감지 센서(MH-RD)는 강우의 유무와 강도를 측정할 수 있으며, 아날로그 값으로 비의 양을, 디지털 값으로 비의 유무를 확인할 수 있습니다.
    • 아두이노와의 하드웨어 연결을 통해 간단한 전원 연결과 입력 핀 설정만으로 센서를 구동할 수 있으며, LCD 쉴드를 통해 실시간으로 데이터를 출력하여 직관적인 피드백을 제공합니다.
    • 응용 가능성: 이 프로젝트는 자동 창문 제어, 스마트 농업, 기상 관측 등 다양한 환경 감지 시스템으로 확장될 수 있습니다.

    이 프로젝트를 통해 빗물 감지 및 간단한 환경 모니터링 시스템 구축을 경험해 볼 수 있었습니다. 이 센서를 활용하여 더 복잡한 제어 시스템으로 발전시키는 것도 좋은 연습이 될 것입니다.


     

    1. 빗물 감지 센서(MH-RD) 란?

    MH-RD 빗물 감지 센서는 강우량을 측정하고, 비가 오는지 여부를 쉽게 감지할 수 있는 아두이노 호환 모듈입니다. 이 센서는 빗물을 감지하는 빗물 감지판과 아두이노와의 신호 처리 역할을 하는 제어 모듈로 나누어져 있습니다. 감지판에 빗방울이 떨어지면 저항이 변하면서 아날로그 신호를 생성하고, 이 신호는 아두이노의 아날로그 입력 핀으로 전송됩니다. 동시에 제어 모듈은 디지털 신호로 비가 오는지 여부를 빠르게 확인할 수 있습니다.

     

    MH-RD 모듈은 아날로그 및 디지털 출력 기능을 동시에 제공하여 다양한 용도로 활용할 수 있습니다. 아날로그 출력(A0)을 통해 빗물의 양을 측정하고, 디지털 출력(D0)을 통해 단순히 비가 오는지 여부를 감지할 수 있습니다. 내장된 LED는 디지털 출력 상태에 따라 불이 켜져 비 감지 여부를 직관적으로 확인할 수 있으며, 가변 저항(포텐셔미터)을 사용해 디지털 감도 수준을 조절할 수 있습니다.

     

    이 모듈의 주요 사양은 다음과 같습니다:

    • 작동 전압: 5V
    • 출력 형식: 아날로그 및 디지털 출력
    • 구성 요소: 빗물 감지판(55mm x 40mm, 7.2g)과 제어 모듈(14mm x 30mm, 2.2g)
    • 특징: 내구성 높은 방수 및 방청 처리된 RF-04 소재 사용, 15mA 이상의 강한 출력 신호

    이 모듈은 강우량 측정, 자동 창문 작동, 스마트 농업, 그리고 가정 자동화 시스템 등에 적용할 수 있어 다양한 프로젝트에서 유용하게 활용됩니다.


     

     

    2. 빗물 감지 센서(MH-RD)의 동작 원리

    MH-RD 빗물 감지 센서는 빗물 감지판과 제어 모듈로 구성되어 있으며, 비가 내리면 감지판에 떨어진 빗물에 의해 저항이 변화하게 됩니다. 이 저항 변화는 아날로그 출력(A0)으로 전달되며, 비가 많을수록 아날로그 신호의 값이 커지게 됩니다. 아두이노는 이 아날로그 신호를 통해 비의 강도를 측정할 수 있으며, 감지판에 남은 물의 양에 따라 출력 값이 달라집니다.

    또한 디지털 출력(D0)은 비의 유무를 단순히 확인할 수 있는 용도로 사용됩니다. 감지판에 빗물이 없을 때는 HIGH 상태로 유지되며, 비가 떨어져 저항이 변할 경우 LOW 상태로 전환됩니다. 이 디지털 신호는 빠르게 비의 유무를 감지할 수 있어 자동 창문 작동 시스템 등에서 활용하기 좋습니다.

     

     

    디지털 출력 상태는 모듈에 내장된 LED로 시각적으로도 확인할 수 있으며, LED는 비가 감지되면 켜지고, 비가 그치면 다시 꺼집니다. 포텐셔미터(가변 저항)를 사용해 감도 수준을 조절할 수 있어 원하는 강우 감지 수준에 맞추어 사용할 수 있습니다.

     

    LM393 비교기를 사용한 MH-RD 모듈은 깨끗한 출력 신호와 강한 전류 구동 능력을 가지고 있어 안정적으로 신호를 전달하며, 비에 반응하는 민감도를 조정할 수 있어 다양한 환경에 맞게 설정 가능합니다.

     

    1. LM393의 아날로그 신호 처리 방식

    빗물 감지판의 저항은 빗물이 떨어질 때마다 변화합니다. 이 저항 값은 아날로그 신호로 변환되어 A0 핀을 통해 아두이노로 전달됩니다. LM393은 감지판의 저항 변화를 감지하여 아날로그 신호의 크기를 결정하는데, 비가 많을수록 아날로그 출력 값은 증가합니다. 아두이노는 이 아날로그 값을 0에서 1023 사이의 값으로 읽어 들여, 비의 강도를 쉽게 파악할 수 있습니다.

     

    2. LM393의 디지털 신호 생성 원리

    LM393은 비교기 역할을 하여 디지털 출력(D0)으로도 신호를 전달합니다. 감지판의 저항 값이 특정 임계값 이상으로 떨어지면, LM393이 이 임계값을 기준으로 신호를 비교해 LOW 상태의 디지털 신호를 출력하게 됩니다. 이는 제어 모듈의 포텐셔미터를 통해 조절 가능한데, 이 임계값을 조정함으로써 사용자는 원하는 강우량에 맞추어 비 감지 민감도를 설정할 수 있습니다. 비가 그치거나 물방울이 감지판에서 증발하면 저항 값이 증가하여 디지털 출력은 다시 HIGH 상태로 전환됩니다.

     

    3. 아두이노와의 상호작용

    • 아날로그 출력(A0): 아두이노는 A0 핀으로 전달되는 아날로그 값의 크기를 통해 비가 많이 내리는지, 적게 내리는지를 판별할 수 있습니다. 이를 통해 강우량에 따라 아두이노가 각각 다른 행동을 수행하도록 프로그래밍할 수 있습니다.
    • 디지털 출력(D0): 단순히 비의 유무를 감지하고 싶다면 D0 핀을 통해 디지털 신호를 확인할 수 있습니다. 이 디지털 출력은 LM393 비교기를 통해 비가 감지되면 LOW, 비가 그치면 HIGH로 유지되며, 아두이노는 이 신호를 즉각적으로 확인해 빠른 응답을 할 수 있습니다.

    LM393을 활용하여 아날로그와 디지털 출력을 동시에 제공하는 MH-RD 모듈은 다양한 환경에서 강우 감지를 효과적으로 수행할 수 있으며, 비의 유무와 강우량에 따라 자동 시스템을 제어하는 데 유용하게 사용될 수 있습니다.

     

    rain_sensor_module.pdf
    0.41MB


     

     

    3. 빗물 감지 센서(MH-RD) 구입하기

    빗물 감지 센서(MH-RD)는 아두이노를 이용한 강우량 감지 및 비 감지 프로젝트에 적합한 모듈로, 초보자부터 전문가까지 다양한 사용자들이 쉽게 사용할 수 있습니다. 이 모듈은 인터넷 쇼핑몰에서 비교적 저렴하게 구입할 수 있어 가정용 및 교육용 프로젝트를 시작하기에 부담이 적습니다.

     

     

    가격 범위
    국내 주요 온라인 쇼핑몰인 네이버 쇼핑에서는 약 1,500원에서 3,000원 정도에 판매되며, 알리익스프레스에서는 배송료 포함 약 1,000원에서 2,000원 정도의 가격대입니다. 해외 직구를 이용하면 조금 더 저렴하게 구매할 수 있지만, 배송 기간이 다소 길어질 수 있습니다.

     

    구매 시 고려할 점
    구매할 때는 아래 사항을 염두에 두는 것이 좋습니다:

    1. 판매처의 신뢰도: 리뷰가 많은 신뢰할 수 있는 판매처를 선택하는 것이 좋습니다. 저렴한 가격에 혹해 불량 제품을 구입할 수 있으므로, 품질이 보장된 판매처에서 구입하는 것이 중요합니다.
    2. 배송 기간: 프로젝트 일정이 급한 경우 국내 쇼핑몰을 이용하면 빠른 배송이 가능합니다. 그러나 예산 절감을 위해 해외 쇼핑몰을 선택할 경우 충분한 배송 기간을 염두에 두어야 합니다.
    3. 제품 구성 확인: MH-RD 빗물 감지 센서는 20cm 길이의 점퍼 케이블 두 개가 함께 제공됩니다. 그러나, 프로젝트 특성에 따라 더 긴 케이블이나 추가적인 케이블이 필요할 수 있으므로 확인 후 추가 구매 여부를 판단하는 것이 좋습니다.
    4. 기타 조건: 빗물 감지 센서는 온습도나 조도와 같은 다른 센서들과 함께 활용할 때 더욱 다양한 기능을 구현할 수 있습니다. 향후 확장을 고려한다면 관련 센서 모듈들을 함께 구비하는 것도 좋은 선택입니다.

    결론
    빗물 감지 센서(MH-RD)는 가격대비 높은 활용도를 자랑하며, 초보자들이 쉽게 접근할 수 있는 강우량 감지 프로젝트를 위해 좋은 선택입니다. 여러 온라인 판매처에서 저렴하게 구매할 수 있으니 위의 사항을 고려해 최적의 판매처에서 구매하길 추천합니다.

     


     

     

    4. 하드웨어 연결하기

    아두이노와 빗물 감지 센서(MH-RD)를 사용해 비 감지 시스템을 구축하기 위해서는 LCD 쉴드(16x2)를 추가하여 비 감지 상태를 직관적으로 시각화할 수 있습니다. 이번 구성에서는 MH-RD 센서의 아날로그 출력(A0)과 아두이노의 A1 핀을 연결하여 비의 양을 측정하고, 디지털 출력(D0)은 아두이노 D3 핀에 연결하여 비 감지 여부를 빠르게 확인할 수 있도록 설계합니다. 이와 같은 구조는 비 감지 상태를 실시간으로 확인하고, 강우량에 따라 LCD에 상태를 표시하는 데 최적화된 방식입니다.

     

     

    하드웨어 연결 핀

    다음과 같이 연결을 진행합니다:

    • 아두이노 A1 핀빗물 감지 센서의 아날로그 출력(A0)
    • 아두이노 D3 핀빗물 감지 센서의 디지털 출력(D0)
    • 아두이노 5V 핀빗물 감지 센서의 VCC
    • 아두이노 GND 핀빗물 감지 센서의 GND

    LCD 쉴드를 사용하여 비 감지 결과를 직관적으로 표시하려면, LCD 쉴드는 아두이노 위에 장착하여 핀 연결을 단순화할 수 있습니다. LCD 쉴드에서 A1 핀은 아두이노의 A1 핀과 연결되어 있으므로, 이곳을 통해 **MH-RD의 아날로그 출력값(A0)**을 아두이노로 전달하게 됩니다.

    연결 이유

    1. 아날로그 출력(A0)과 아두이노 A1 연결
      빗물 감지 센서의 A0 핀에서 출력되는 아날로그 신호는 빗물의 양에 비례합니다. 이 신호를 아두이노의 A1 핀으로 전달하여 비의 강도를 측정하고, 그 값을 LCD에 표시할 수 있습니다. 아날로그 신호를 통해 비의 강도가 커질수록 더 큰 값이 전달되어 아두이노가 비의 강도를 세분화하여 표시할 수 있습니다.
    2. 디지털 출력(D0)과 아두이노 D3 연결
      MH-RD 센서의 D0 핀은 비가 감지될 때 LOW, 비가 감지되지 않으면 HIGH 상태를 출력합니다. 이를 아두이노의 D3 핀에 연결하여 단순히 비가 오는지 여부를 빠르게 판단할 수 있습니다. 이 디지털 신호를 통해 비 감지 여부를 LCD에 표시할 수 있으며, 원하는 경우 이 신호를 활용해 경고음을 추가하거나 다른 동작을 유발할 수도 있습니다.
    3. 전원 연결
      아두이노의 5V 핀과 GND 핀을 통해 빗물 감지 센서에 전원을 공급합니다. 5V 핀은 센서의 VCC에 연결하여 안정적인 전력을 제공하며, GND는 센서의 GND와 연결해 전기 회로의 기준을 맞추어 주어야 합니다. 이로 인해 아두이노와 센서가 동일한 전기적 기준을 공유하게 되어 정확한 데이터 전달이 가능합니다.

     

    최종 확인 및 유의 사항

    연결이 끝난 후, 아두이노의 전원을 연결하여 각 핀이 올바르게 작동하는지 확인합니다. 특히, LCD가 비의 상태를 제대로 출력하는지, MH-RD 센서의 감지 상태에 따라 디지털 신호가 변경되는지 확인합니다. 또한, LCD 쉴드가 올바르게 장착되어 있어야 A1 핀에서 센서 신호가 전달되므로, 연결 상태를 점검하고 핀이 어긋나지 않도록 주의하세요.

    이와 같은 구조를 통해 비 감지 및 강우량 측정이 가능하며, LCD를 통해 실시간으로 시각적 피드백을 제공함으로써 사용자는 비의 유무와 강도를 한눈에 파악할 수 있습니다.


     

     

    5. 소프트웨어 코딩하기

     

    빗물 감지 센서(MH-RD)를 제어하기 위한 소프트웨어 준비 과정은 다음과 같은 단계로 이루어집니다


    [순서]

    01 연결

    - 아두이노와 PC 연결

    - 아두이노 IDE 실행

    - 메뉴 → 툴 → 보드:아두이노 UNO 확인

    - 메뉴 → 스케치 → 확인/컴파일

     

    02 컴파일 확인

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

     

    03 아두이노 우노 업로드

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

     

    04 동작 확인

    센서의 동작을 확인할 수 있습니다.

     

     

    [소스코드]

    #include <LiquidCrystal.h>
    
    LiquidCrystal lcd(8, 9, 4, 5, 6, 7);  // LCD 핀 설정 (RS, EN, D4, D5, D6, D7)
    
    const int analogRainPin = A1;    // 아날로그 핀 (빗물 강도 측정)
    const int digitalRainPin = 3;    // 디지털 핀 (비 유무 확인)
    
    int rainValue;                   // 아날로그 센서 값
    bool isRaining = false;          // 비 감지 여부
    
    int rainLevel;                   // 비 강도 수준 (0: 강한 비, 1: 약한 비, 2: 비 없음)
    String rainStatus;               // 비 감지 상태 텍스트 ("YES" 또는 "NO")
    
    void setup() {
      lcd.begin(16, 2);              // 16x2 LCD 초기화
      lcd.print("MH-RD Raindrop");   // 초기 메시지 출력
      pinMode(digitalRainPin, INPUT); // 디지털 핀을 입력 모드로 설정
      delay(1000);
      lcd.clear();                   // 초기화 후 화면 지움
    }
    
    void loop() {
      readRainSensor();              // 센서 값을 읽어들임
      updateDisplay();               // LCD에 상태를 출력
      delay(500);                    // 0.5초 대기 후 반복
    }
    
    // 센서 값을 읽고 비 강도와 상태를 계산
    void readRainSensor() {
      rainValue = analogRead(analogRainPin);        // 빗물 강도(아날로그 값) 읽기
      isRaining = (digitalRead(digitalRainPin) == LOW); // 비 감지 여부(디지털 값) 확인
      
      rainStatus = isRaining ? "YES" : "NO";       // 비 감지 상태 텍스트 설정
      rainLevel = map(rainValue, 0, 1024, 0, 3);   // 강우량에 따른 비 강도 수준 설정
    }
    
    // LCD에 비 상태와 강도 수준을 출력
    void updateDisplay() {
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("Raining? " + rainStatus + " " + String(rainValue)); // 첫 줄에 비 상태와 강도 출력
    
      lcd.setCursor(0, 1);
      switch (rainLevel) {                   // 강도 수준에 따른 메시지 출력
        case 0:
          lcd.print("Heavy rain T.T");
          break;
        case 1:
          lcd.print("Rain Warning >_<");
          break;
        case 2:
          lcd.print("Not Raining ^0^/");
          break;
      }
    }

     


    이 코드는 아두이노와 빗물 감지 센서(MH-RD), 그리고 LCD 실드(16x2)를 통해 비 감지 및 강우량 상태를 실시간으로 확인하는 프로젝트입니다. 코드의 동작 순서는 초기화, 센서 데이터 수집, LCD 출력 단계로 나눌 수 있습니다. 각 단계의 동작 흐름에 맞춰 코드가 어떻게 구성되고 작동하는지 구체적으로 설명하겠습니다.

     

    1. 초기화 (Setup)

    초기화 단계에서는 아두이노가 처음 전원을 켜고 실행될 때 LCD 초기화 및 핀 설정을 수행하여 시스템을 준비합니다.

    • LCD 초기화 및 기본 메시지 출력:
      setup() 함수에서는 LCD를 초기화(lcd.begin(16, 2))하고 초기 메시지인 MH-RD Raindrop을 LCD에 표시하여 시스템이 정상적으로 작동하는지 확인합니다. 초기 메시지를 표시한 후에는 lcd.clear()를 호출하여 LCD 화면을 초기화하고, 다음 측정을 위한 준비를 완료합니다.
    • 핀 모드 설정:
      빗물 감지 센서의 디지털 출력 핀(D0)은 아두이노의 D3 핀과 연결되어 있으며, pinMode(digitalRainPin, INPUT)을 통해 D3 핀을 입력 모드로 설정합니다. 이를 통해 아두이노는 디지털 신호로 비 감지 여부를 빠르게 확인할 수 있습니다.

     

    2. 센서 데이터 수집 (readRainSensor 함수)

    이 단계에서는 빗물 감지 센서의 아날로그 및 디지털 데이터를 읽어 비 감지 여부와 강도를 판단합니다.

    • 아날로그 값 읽기:
      readRainSensor() 함수는 analogRead(analogRainPin)을 사용하여 아두이노의 A1 핀에서 비 강도에 따른 아날로그 값을 수집합니다. 이 값은 강우량에 따라 달라지며, 높은 값일수록 강우량이 많음을 의미합니다. 이 값은 이후 LCD에 표시할 비 강도 수준을 결정하는 데 사용됩니다.
    • 디지털 값 읽기:
      digitalRead(digitalRainPin)을 통해 D3 핀에서 비 감지 여부를 확인합니다. 디지털 값이 LOW이면 비가 감지된 것으로 해석되어 isRaining = true로 설정되며, 그렇지 않으면 isRaining = false로 설정됩니다.
    • 비 강도 수준 계산:
      아날로그 값 rainValue는 rainLevel = map(rainValue, 0, 1024, 0, 3);을 통해 0에서 3 사이의 값으로 매핑되어, 비의 강도를 3단계로 구분합니다. 이 값은 LCD에 표시할 메시지를 결정하는 기준이 됩니다.

     

    3. LCD 출력 (updateDisplay 함수)

    이 단계에서는 수집된 데이터를 LCD에 실시간으로 출력하여 비 감지 결과와 강우량 상태를 시각적으로 표시합니다.

    • 비 감지 상태 출력:
      lcd.setCursor(0, 0)을 통해 첫 번째 줄에 커서를 설정하고, lcd.print("Raining? " + rainStatus + " " + String(rainValue));을 사용해 비 감지 상태("YES" 또는 "NO")와 아날로그 값을 LCD 첫 번째 줄에 출력합니다. 이를 통해 사용자는 현재 비 감지 상태와 강우량을 한눈에 파악할 수 있습니다.
    • 비 강도 메시지 출력:
      두 번째 줄에서는 강우량 수준에 따라 다른 메시지를 출력합니다. switch 문을 사용해 rainLevel 값에 따라 출력 메시지를 선택하여 비의 강도를 명확히 전달합니다:
      • rainLevel = 0: "Heavy rain T.T" – 강한 비가 내리는 상황
      • rainLevel = 1: "Rain Warning >_<" – 약한 비 경고
      • rainLevel = 2: "Not Raining ^0^/" – 비가 오지 않는 상태

    이 메시지는 매 0.5초마다(500ms) delay(500)를 통해 갱신됩니다.

     

    LCD에 표시되는 예시는 다음과 같이 비 감지 상태와 강우량 수준에 따라 다르게 나타납니다.

    예시 1: 강한 비가 감지될 때

    Raining? YES 890 Heavy rain T.T

     

    예시 2: 약한 비가 감지될 때

    Raining? YES 550
    Rain Warning >_<
     

    예시 3: 비가 오지 않을 때

    Raining? NO 210
    Not Raining ^0^/
     

     

    이와 같이 LCD 화면에 비 감지 여부(YES/NO), 아날로그 값, 그리고 비 강도에 따른 메시지가 출력됩니다.

     


     

    6. 동작 확인

     

    아두이노와 LCD 쉴드, 그리고 빗물 감지 센서를 연결한 후, 코드가 정상적으로 작동하는지 확인하는 과정입니다. 이 확인 단계에서는 센서의 데이터 수집LCD 출력 결과를 중심으로 각 구성 요소가 제대로 동작하는지 테스트합니다.

     

     

     

    1. 하드웨어 연결 확인:
      아두이노, LCD 쉴드, 빗물 감지 센서(MH-RD) 사이의 연결 상태가 정확히 맞춰져 있는지 먼저 점검합니다. 각 핀이 올바르게 연결되었는지 확인하고, 아두이노 보드를 USB를 통해 컴퓨터에 연결하여 전원을 공급합니다.
    2. LCD 출력 확인:
      아두이노가 전원이 공급되면 LCD에 "MH-RD Raindrop"이라는 초기 메시지가 잠시 표시됩니다. 이후 LCD가 초기화되고, 비 감지 상태 및 강우량에 따라 아래와 같은 메시지가 LCD에 표시됩니다:
      • 비가 감지될 경우: LCD 첫 줄에 "Raining? YES" 메시지와 아날로그 값이 표시되며, 강우량에 따라 두 번째 줄에 "Heavy rain T.T" 또는 "Rain Warning >_<" 메시지가 출력됩니다.
      • 비가 감지되지 않을 경우: LCD 첫 줄에 "Raining? NO" 메시지와 아날로그 값이 표시되며, 두 번째 줄에는 "Not Raining ^0^/"라는 문구가 나타납니다.
    3. 시리얼 모니터 확인 (선택 사항):
      아두이노 IDE에서 시리얼 모니터를 열어 아날로그 값 및 디지털 값이 제대로 출력되는지 확인할 수 있습니다. 이 추가적인 시각적 검증을 통해 센서가 올바른 데이터를 전달하는지, 그리고 값이 비가 내리거나 그칠 때에 따라 변화하는지를 확인할 수 있습니다.
    4. 테스트 조건:
      물방울을 센서 위에 살짝 떨어뜨리거나, 종이타월 등으로 센서의 빗물을 제거하여 센서가 비 감지 여부에 맞게 출력을 변경하는지 확인합니다. 물의 양에 따라 아날로그 값이 높아지거나 낮아지며, 이에 따라 LCD 메시지가 실시간으로 업데이트되어 비 상태를 정확히 반영하는지 확인합니다.

    문제가 발생할 경우, 핀 연결과 코드 설정을 재검토하여 올바르게 설정되어 있는지 확인합니다. 이 과정을 통해 코드와 하드웨어가 모두 정상적으로 작동하는지 확인할 수 있습니다.


     

     

    7. 마무리

    이 프로젝트를 통해 아두이노와 빗물 감지 센서(MH-RD)를 활용하여 비 감지 및 강우량 측정 시스템을 완성하였습니다. 이 과정에서 얻을 수 있는 주요 경험과 배울 점은 다음과 같습니다:

    1. 센서의 아날로그 및 디지털 데이터 활용:
      빗물 감지 센서는 단순한 비 감지뿐만 아니라, 아날로그 값을 통해 비의 강도까지 측정할 수 있습니다. 이 기능을 통해 비의 유무를 감지하는 기본 기능 외에도 강우량에 따른 다양한 반응을 설정할 수 있습니다. 이를 기반으로 비 감지의 민감도 조정, 강우량에 따른 경고 메시지 출력 등 다양한 센서 응용 방법을 이해할 수 있습니다.
    2. LCD 출력으로 직관적 피드백 제공:
      LCD 쉴드를 통해 비 감지 결과와 강우량 수준을 사용자에게 시각적으로 보여줌으로써 실시간으로 환경 상태를 모니터링할 수 있습니다. 이러한 시각적 피드백은 날씨 및 환경 상태를 한눈에 파악할 수 있도록 돕고, 추가적인 설정 없이 상태를 쉽게 확인할 수 있습니다.
    3. 프로젝트 확장 가능성:
      빗물 감지 센서와 LCD를 기반으로 이 프로젝트를 확장할 수 있습니다. 예를 들어, 특정 강우량이 감지되면 자동으로 창문을 닫거나 비가 오지 않을 때는 특정 모터를 작동하게 하는 등의 기능을 추가할 수 있습니다. 또한, 다른 환경 센서(예: 온도, 습도 센서)와 결합하여 통합된 기상 관측 시스템을 구축할 수도 있습니다.

    이 프로젝트는 빗물 감지 센서를 통해 아두이노의 다양한 입출력 기능을 경험하고, 데이터를 실시간으로 모니터링하는 기초적인 환경 제어 시스템을 구축하는 방법을 배우는 좋은 기회가 됩니다. 이번 프로젝트를 기반으로 더 다양한 센서와 기능을 추가하여 개인화된 스마트 환경 감지 시스템을 만들어 볼 수 있을 것입니다.

    반응형


    댓글