블로그 이미지
조이키트 블로그
아두이노, 라즈베리파이, 반도체 센서/모듈 활용

calendar

1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Notice

250x250
728x90
반응형

 

Rain Sensor는 비나 눈이 내리면 감지하여 장치를 제어하는데 사용된다.

 

활용성 : 

1. 자동차의 와이퍼 시스템에 연결되어 비가 감지되면 와이퍼를 자동으로 작동시킬 수 있다.

2. 스마트 하우스 시스템에서 비가 감지되면 창문을 자동으로 닫는 기능을 수행할 수 있다.

3. 자동관개 시스템에서 비가 감지되면 농작물의 물 공급을 중단하여 에너지를 절양하는 기능을 수행할 수 있다.

 

구조 원리 : 

이 센서의 구조는 두개의 금속 트랙이 기판에 격자모양과, 골뱅이 모양으로 배열되어 있다.

원리는 빗방울이 금속 트랙에 닿으면 전기 저항값이 변하여 이를 감지하여 장치를 제어할 수 있다.

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

https://link.coupang.com/a/b2E4y0

 

비 눈 습도 환경감지 센서 모듈 - 기타측정도구 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2vTO0

 

아두이노 LCD1602 16x2 4핀 디스플레이 모듈/ Arduino LCD1602 Module - 액세서리 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2vSOT

 

ATmega328P 마이크로 컨트롤러가 있는 아두이노 우노 R3 개발 보드 - 액세서리 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

https://link.coupang.com/a/b2E5Xq

 

액티브/패시브 버저 모듈 - 기타전기설비부자재 | 쿠팡

쿠팡에서 0.0 구매하고 더 많은 혜택을 받으세요! 지금 할인중인 다른 0 제품도 바로 쿠팡에서 확인할 수 있습니다.

www.coupang.com

 

 

실습 예제 : 

비 감지 센서를 아두이노에 사용하여 자동 와이퍼  시스템을 만들어 보겠다.

작동 방식은 비 감지 센서에 물이 감지되면 서보모터가 90도 회전하면서 와이퍼 작동이 된다. 동시에 LED다이오드가 켜지면서 부저모듈에서 경고음이 울리도록 한다. 또한 LCD 디스플레이에 센서감지 수치와, 와이퍼 작동(OPEN)할 때와 작동하지 않을(CLOSE) 때를 현시하여 준다. 

 

준비물 :

아두이노 우노 R3, Rain 센서 모듈, LCD1602 디스플레이 모듈, 부저모듈, LED다이오드, 서보모터 등이 사용된다.

Rain 센서 모듈 아두이노 우노 R3 LCD1602 디스플레이 모듈
서보 모터 부저 모듈 LED 다이오드

 

 

회로 연결 : 

비눈감지 측정기 회로도

 

아두이노 우노 R3 Rain 센서 LCD1602 부저모듈 서보모터 LED 다이오드
+5V VCC VCC   VCC  
GND GND GND GND GND GND
A0 AO        
A4   SDA      
A5   SCL      
D7 DO        
D8       S  
D9     +핀    
D13         +핀

 

 

서보모터:

  1.  VCC (Red wire): 아두이노의 5V 핀에 연결
  2.  GND (Brown wire): 아두이노의 GND 핀에 연결
  3.  Signal (Orange wire): 아두이노의 디지털 핀 (예: D8)에 연결

위와 같이 회로연결이 되면 다음과 같이 코딩을 작성한다.

 

코드 :

#include <LiquidCrystal_I2C.h> // LCD1602 함수 선
#include <Servo.h> 

// 레인 센서가 연결된 아날로그 핀
const int rainSensorPin = A0;

const int ledPin = 13;      // LED가 연결된 디지털 핀
const int buzzerPin = 9;    // 부저 모듈이 연결된 디지털 핀
const int servoPin = 8;     // 서보모터가 연결된 디지털 핀
const int threshold = 300;  // 비 감지 임계값

LiquidCrystal_I2C lcd (0x27,16,2);   // LCD1602 hexa값, 2행 16열 설정

Servo myServo;       // 서보모터 객체 생성

void setup() {
  lcd.init();    // LCD 초기화 
  lcd.backlight();  // LCD 백라이트 켬
  
  Serial.begin(9600);  // 시리얼 모니터 시작
  
  pinMode(ledPin, OUTPUT);  // LED 핀을 출력 모드로 설정
  
  myServo.attach(servoPin);  // 서보모터 핀 설정
  
  myServo.write(0);   // 초기 위치 설정 (창문 열림 상태)
}

void loop() {
  // 레인 센서의 아날로그 값을 읽음
  int sensorValue = analogRead(rainSensorPin);

  // 시리얼 모니터에 값 출력
  Serial.print("Rain Sensor Value: ");
  Serial.println(sensorValue);

  // 센서 값이 임계값보다 작으면 (비가 내리면) LED 켜기
  if (sensorValue < threshold) {
    digitalWrite(ledPin, HIGH);
    tone(buzzerPin, 1000);    // 부저를 1kHz로 설정하여 소리 출력
    myServo.write(90); // 서보모터를 90도로 회전 (창문 닫기)
    lcd.setCursor(0,1);            // LCD 1행 2열에 출력
    lcd.print("WIPER : CLOSE");
    
  } else {
    digitalWrite(ledPin, LOW);
    noTone(buzzerPin);        // 부저 소리를 끔
    myServo.write(0); // 서보모터를 0도로 회전 (창문 열기)
    lcd.setCursor(0,1);            // LCD 1행 2열에 출력
    lcd.print("WIPER : OPEN");
  }

  lcd.setCursor(0,0);            // LCD 1행 1열에 출력
  lcd.print("Value : ");
  lcd.print(sensorValue);      // LCD에 센서값 출력

  delay(1000);   // 1초 대기

  lcd.clear();  // LCD 클리어
}

 

코딩 설명 :

Rain 센서는 아날로그 핀(AO)은 아두이노 A0로 설정하였고, 서보모터는 D8, 부저모듈은 D9, LED다이오드는 D13핀으로 설정하였다.

비 감지센서 임계 값은 300으로 설정하였고, 임계 값이 300이하로 떨어지면 아두이노에 연결된 장치들이 작동 되게 하였다. (서보모터 : 90도 회전, 부저모듈 : 경고음 울림, LED다이오드 : ON, LCD1602 : WIPER "OPEN, CLOSE" 출력)

임계 값이 300이상인 경우에는 아두이노에 연결된 모든 장치들은 작동되지 않게 하였다. 

 

코딩을 전부 작성하고 파일을 아두이노에 업로드 하면 다음과 같은 출력 결과를 볼 수 있다.

 

출력 결과 :

https://www.youtube.com/watch?v=lHVTQ1rqRyc

 

결과는 빗물이 감지되었을 때 와이퍼 작동 모터가 움직이고 빗물이 없으면 와이퍼도 멈추게 된다. 

이 빗물감지 센서를 이용하여 강수감지, 자동차 응용, 관개 시스템, 가정 자동화, 산업 및 환경 모니터링 등 다양한 시스템을 개발할 수 있다. 

728x90
반응형
posted by 조이키트 블로그