라즈베리 파이 2와 ADS-WS1로 야외 기상 관측소 구축하기
Bloominglabs에서 최근 ADS-WS1 기상 관측소를 확보했습니다. 이는 시리얼 출력이 가능한 장치로, 라즈베리 파이 2를 사용해 데이터를 온라인으로 가져오는 프로젝트를 시작하게 했습니다. 이 관측소는 풍향, 풍속, 강우량, 온도, 습도를 측정합니다. PoE로 전원 공급되며 마스트에 설치된 방수 인클로저 안의 파이가 시리얼 스트림을 읽어 네트워크로 데이터를 발행합니다.
1단계: 부품 목록
- 1) ADS-WS1 기상 관측소 (시리얼 출력 가능한 모든 관측소 가능)
- 2) 라즈베리 파이 (모든 모델; Pi 2 사용)
- 3) 시리얼-USB 어댑터 (예: FTDI)
- 4) 최소 하나 이상의 암 DB9 커넥터가 있는 시리얼 케이블
- 5) 관측소까지 닿을 만큼 긴 이더넷 케이블
- 6) 5V 전원 공급기, 1~2A
- 7) 방수 인클로저
- 8) (선택 사항) 이더넷 서지 억제기
- 9) (선택 사항) PoE(Power-Over-Ethernet) 인젝터/어댑터
ADS-WS1은 50mA만 소비하므로 파이에서 직접 전원 공급하거나 같은 전원을 공유할 수 있습니다. 추가 문서는 Argent Data 위키를 참조하세요.
2단계: 라즈베리 파이 2에 OS 설치
라즈베리 파이 호환 OS면 무엇이든 작동합니다. 8GB SD 카드에 라즈비안 7.1을 사용했습니다. 공식 설치 가이드를 따라 이미지를 플래싱하고 카드를 삽입한 뒤 전원을 켜세요. 초기 설정을 위해 로컬 HDMI 디스플레이와 USB 키보드가 편리합니다. 라즈비안은 일반적으로 DHCP로 IP를 얻지만, 폴 마운트 장치에는 고정 주소를 권장합니다.
부팅 후 USB-시리얼 어댑터를 연결하세요. 라즈비안이 자동으로 /dev/ttyUSB0로 감지합니다. ls /dev/ttyUSB* 또는 lsusb로 확인하세요.
[email protected] ~ $ ls /dev/ttyUSB*
/dev/ttyUSB0
[email protected] ~ $ lsusb
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 005: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
/etc/network/interfaces를 편집해 고정 IP를 설정하세요:
iface eth0 inet static
address 192.168.x.x
netmask 255.255.255.0
gateway 192.168.x.x
필수 패키지 설치:
sudo apt-get install apache2 wget minicom weewx
테스트용 헬퍼 스크립트
weather.sh 다운로드:
wget -O weather.sh "https://server1.nuge.com/~weather/software/weather-…"
URL이 실패하면
여기에서 최신 버전을 받으세요. 파이 사용자를
dialout 그룹에 추가해 시리얼 포트 접근 권한을 주세요:
sudo usermod -a -G dialout pi.
3단계: weewx 설치 및 구성
Weewx는 시리얼 포트를 폴링해 다양한 기상 관측소의 데이터를 파싱하고 그래프용 웹 인터페이스를 제공합니다. /etc/weewx/weewx.conf를 편집해 관측소 세부 사항을 반영하세요. 파일은 자체 문서화되어 있으며 location, WEEWX_ROOT 등 필요한 설정을 수정하면 됩니다.
부팅 시 자동 시작 활성화:
sudo update-rc.d apache2 defaults 99 2
sudo update-rc.d weewx defaults 99 2
이제 파이가 전원 켜질 때마다 Apache와 weewx가 실행됩니다.
4단계: 시리얼 케이블 및 전원 배선
데이터선 3개와 전원선 2개만 필요합니다. DB9 핀 2(TX), 3(RX), 5(GND)를 관측소의 시리얼 헤더에 연결하세요. 외피와 내부 와이어를 ¼″ 벗겨내고 멀티미터로 핀아웃을 확인하세요.
관측소에 5V 전원 공급 – 파이의 5V 출력이나 별도 5V/12V 공급기 사용. 양극을 'DC in' 단자에, 그라운드를 하단 GND 입력에 연결하세요.
야외 배치를 위해 PoE 어댑터를 사용했습니다: 파이와 기상 관측소가 단일 5V 라인을 공유합니다. 연결부를 수축 튜브로 보호하고 방수 NEMA 4 인클로저 안에 넣으세요. 파이가 5V를 공급한다면 마이크로 USB 커넥터를 제거하고 PoE 스플리터를 통해 전원을 라우팅할 수 있습니다.
5단계: 시리얼 데이터 수신 확인
파이와 관측소에 전원을 켜세요. minicom을 실행해 시리얼 통신을 확인하세요. ADS-WS1 펌웨어 플래싱이 필요하면 공식 명령 가이드를 참조하세요. 관측소가 정기적으로 데이터를 내보내면 ./weather.sh를 실행해 올바른 파싱을 확인하세요.
6단계: 야외 사용 준비
전자 장치를 방수 인클로저에 넣으세요. 정확한 온도와 습도 측정을 위해 스티븐슨 스크린(통풍이 되고 그늘진 상자)을 설치해 센서를 직사광선으로부터 보호하는 것을 고려하세요. 지금은 간단한 PVC NEMA 4 인클로저로 작동하지만 10~15°F 편향이 생기고 습도 측정이 불가능할 수 있습니다. 향후 업그레이드에 제대로 된 스티븐슨 스크린을 적용할 예정입니다.
더 자세한 가이드는 라즈베리 파이 2 기상 관측소 참고 자료를 보세요.