라즈베리 파이 기상 관측소 만들기: 매일 이메일로 날씨 데이터 전송
라즈베리 파이를 믿을 수 있는 개인 기상 관측소로 바꿔 실시간 온도, 습도, 강우량 업데이트를 이메일로 받아보세요. 이 가이드는 필요한 하드웨어, 배선, 하우징, 코딩 단계를 안내해 몇 시간 만에 관측소를 가동할 수 있게 해줍니다.
1. 준비물
- 전원 공급기 포함 라즈베리 파이 B (또는 최신 모델)
- 이더넷 케이블 (무선 설정용 Wi-Fi 어댑터)
- 프로토타이핑 브레드보드와 점퍼 와이어
- 습도 및 온도 센서 – DHT11 (더 정확한 DHT22 권장)
- 아날로그 강우계 (예: 간단한 팁핑 버킷)
- 방수 인클로저 (폴리카보네이트 또는 아크릴)
- 핫 글루 건 및 글루 스틱
- 드릴 및 비트 세트 (게이지 마운트 및 배선용)
- 선택 사항: BME280 또는 BMP280 기압 센서 (향후 강우 확률 계산용)
2. 회로 조립
다음과 같이 구성품을 연결하세요:
- 전원: 센서의 VCC 핀과 강우계 전원 입력을 파이의 3.3V 핀에 연결.
- 그라운드: 센서의 GND를 파이 그라운드 핀에 연결.
- 데이터 라인: DHT11 데이터 핀을 GPIO 16(또는 여유 GPIO)에 연결. 강우계 데이터 출력을 추가 GPIO 핀(예: GPIO 7, 13, 15, 18)에 연결.
3. 하우징 제작
1. 강우계에 1", 1.5", 2", 2.5" 및 배수용 바닥 구멍을 뚫으세요. 2. 인클로저에 이더넷/전원 케이블과 센서 리드용 슬롯을 만드세요. 3. 핫 글루로 게이지를 하우징 후면에 고정하고 배수 구멍이 막히지 않게 하세요. 4. 센서와 게이지 와이어를 하우징으로 통과시키고 모든 관통부를 핫 글루로 밀봉해 습기 유입을 차단하세요. 5. 라즈베리 파이와 브레드보드를 인클로저 안에 넣고 이더넷/전원 케이블을 연결한 뒤 전원을 켜세요.
4. 습도 센서 프로그래밍
Adafruit DHT 라이브러리 설치:
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
cd Adafruit_Python_DHT
sudo apt-get install build-essential python-dev
sudo python setup.py install
간단한 스크립트로 센서 테스트:
import Adafruit_DHT as dht
sensor = dht.DHT11
pin = 16
humidity, temperature = dht.read_retry(sensor, pin)
print(f"Humidity={humidity:.1f}% Temp={temperature:.1f}°C")
유효한 값이 출력되면 배선이 올바른 것입니다.
5. 이메일 리포트 자동화
mailx (또는 msmtp)를 설치해 파이에서 이메일을 보내세요. 30분마다 센서 스크립트를 실행하고 출력을 이메일로 파이프하는 크론 잡을 만드세요:
*/30 * * * * /usr/bin/python /home/pi/weather.py | mailx -s "Pi Weather Update" you@example.com
보고 빈도에 맞춰 크론 일정을 조정하세요.
6. 향후 개선 사항
준비가 되면 BME280 또는 BMP280 센서를 추가해 기압을 측정하세요. 기압 추세로 강우 확률을 계산해 이메일 알림에 포함할 수 있습니다.
즐거운 제작 되시고 매일 이메일로 받아보는 날씨 데이터를 만끽하세요!