라즈베리 파이 빗물 센서
비 센서는 비/눈의 양을 감지하고 측정하여 디지털(LOW/HIGH) 및 아날로그 출력을 제공합니다. 이 튜토리얼은 Raspberry Pi와 비 센서를 사용하여 비를 감지하고 측정하는 방법을 안내하며 다음 내용을 다룹니다:
- 비 센서를 라즈베리 파이에 연결하기.
- 라즈베리 파이를 프로그래밍하여 센서의 디지털 신호를 읽어 비를 감지하기.
- 라즈베리 파이를 프로그래밍하여 센서의 아날로그 신호를 읽어 강우량을 측정하기.
비/눈이 감지되면 모터를 활성화하거나 경고를 주기 위해 코드를 사용자 지정할 수 있습니다.
Hardware Preparation
1 | × | Raspberry Pi 4 Model B | Amazon | |
1 | × | Rain Sensor | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (추천) Screw Terminal Block Shield for Raspberry Pi | 쿠팡 | Amazon | |
1 | × | (추천) USB-C Power Cable with On/Off Switch for Raspberry Pi 4B | Amazon | |
1 | × | (추천) Plastic Case and Cooling Fan for Raspberry Pi 4B | Amazon | |
1 | × | (추천) HDMI Touch Screen Monitor for Raspberry Pi | Amazon |
우적 센서 소개
빗물 센서는 비의 존재를 감지하거나 강수량으로부터 수위를 측정하는 데 사용됩니다. 디지털 출력 핀과 아날로그 출력 핀을 통해 옵션을 제공합니다.
빗물 센서의 구성 요소에는 감지 패드와 전자 모듈이 포함됩니다.
감지 패드
센싱 패드는 비/눈을 맞을 수 있도록 실외에 배치되며(예: 지붕에), 노출된 구리 트레이스가 전력 트레이스와 센스 트레이스로 나뉩니다. 이 트레이스들은 물이나 눈에 의해 연결되지 않는 한 서로 연결되지 않습니다. 전력 트레이스와 센스 트레이스는 교환이 가능하며, 그 중 하나를 전력 트레이스로, 다른 하나를 센스 트레이스로 지정할 수 있습니다.
전자 모듈
빗물 센서의 전자 모듈은 감지 패드로부터의 신호를 Raspberry Pi가 읽을 수 있는 아날로그 또는 디지털 값으로 변환합니다. 이 모듈은 네 개의 핀을 포함합니다:
- VCC 핀: VCC(3.3V~5V)에 연결합니다.
- GND 핀: GND(0V)에 연결합니다.
- DO 핀: 디지털 출력 핀; 비가 감지되지 않으면 HIGH이고, 감지되면 LOW입니다. 비 감지 임계값은 내장된 가변 저항기로 조절할 수 있습니다.
- AO 핀: 아날로그 출력 핀; 센싱 패드에 물이 많아질수록 값이 줄어들고, 물이 줄어들수록 값이 증가합니다.
게다가, 두 개의 LED 표시기를 특징으로 합니다:
- PWR-LED 표시등: 전원 상태를 나타냅니다.
- DO-LED 표시등: DO 핀의 비 상태를 나타내며, 비가 있을 때 점등됩니다.
작동 원리
DO 핀에 관하여:
- 모듈에는 감도 임계값을 설정하기 위한 내장된 가변 저항기가 장착되어 있습니다.
- 강도가 임계값을 초과하면 비가 감지되며, 센서의 출력 핀이 LOW로 표시되고 DO-LED가 켜집니다.
- 강도가 임계값 이하로 떨어지면 비가 감지되지 않으며, 센서의 출력 핀이 HIGH로 표시되고 DO-LED가 꺼집니다.
AO 핀에 관하여:
- AO 핀의 읽기 값은 센싱 패드의 수위와 반비례합니다.
- 물이 많을수록 AO 핀 값이 낮아지고, 물이 적을수록 AO 핀 값이 높아집니다.
참고: 가변 저항기는 AO 핀의 값에 영향을 미치지 않습니다.
Wiring Diagram
앞서 언급했듯이, 센서의 VCC 핀을 Raspberry Pi의 3.3V 또는 5V 핀에 직접 연결하면 전기화학적 부식으로 인해 센서의 수명이 줄어들 수 있습니다. 권장되는 대안은 비 센서의 VCC 핀을 Raspberry Pi의 출력 핀에 연결하는 것입니다. 해당 핀을 프로그래밍하여 비 센서를 측정 시에만 전원을 공급하도록 하면 전기화학적 부식의 영향을 효과적으로 최소화할 수 있습니다.
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
배선 구성을 간단하고 체계적으로 만들기 위해, Raspberry Pi용 스크루 터미널 블록 실드 사용을 권장합니다. 이 실드는 아래와 같이 더욱 안정적이고 관리하기 쉬운 연결을 제공합니다:
라즈베리 파이 코드
Detailed Instructions
- Raspberry Pi에 Raspbian 또는 다른 호환 운영 체제가 설치되어 있는지 확인하십시오.
- Raspberry Pi가 PC와 동일한 로컬 네트워크에 연결되어 있는지 확인하십시오.
- 라이브러리를 설치해야 하는 경우 Raspberry Pi가 인터넷에 연결되어 있는지 확인하십시오.
- Raspberry Pi를 처음 사용하는 경우, Raspberry Pi 설정 방법을 참조하십시오.
- Linux 및 macOS에서는 기본 SSH 클라이언트를, Windows에서는 PuTTY를 사용하여, PC를 SSH를 통해 Raspberry Pi에 연결하십시오. SSH를 통해 PC를 Raspberry Pi에 연결하는 방법을 참조하십시오.
- RPi.GPIO 라이브러리가 설치되어 있는지 확인하십시오. 설치되어 있지 않으면, 다음 명령어를 사용하여 설치하십시오.
- 파이썬 스크립트 파일 rain_sensor.py를 생성하고 다음 코드를 추가하세요.
- 파일을 저장하고 터미널에서 다음 명령어를 실행하여 파이썬 스크립트를 실행하세요.
- 비 센서에 물을 몇 방울 떨어뜨리세요.
- 직렬 모니터에서 결과를 확인하세요.
센서가 비를 마주했을 때에도 LED 상태가 계속 켜져 있거나 꺼져 있는 것을 발견하면, 포텐셔미터를 조정하여 센서의 민감도를 미세 조정할 수 있음을 명심하십시오.
Video Tutorial
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.