아두이노 우노로 만드는 저비용 번개 감지기
부품 및 소모품
| 브레드보드 (일반) | 1개 |
| 저항 10kΩ | 2개 |
| 저항 3.3MΩ | 1개 |
| 점퍼 와이어 (일반) | 1세트 |
| 아두이노 UNO | 1개 |
프로젝트 소개
이 튜토리얼에서는 아두이노 우노, 몇 개의 저항, 점퍼 와이어를 사용하여 번개 감지기를 만듭니다. 대부분의 번개 감지기는 일반 취미 생활자에게 너무 비싸지만, 그렇다고 번개 감지와 그 물리학적 원리를 즐길 수 없는 것은 아닙니다. 이 튜토리얼에서는 놀랍도록 간단한 회로를 사용하여 약 10~20km 떨어진 번개를 감지할 수 있습니다. 목표는 아두이노로 번개를 감지하고 의미 있는 결과를 얻는 간단한 회로를 구성하는 것입니다.
배경 지식
번개가 치면 엄청난 양의 에너지가 다양한 형태로 방출됩니다. 가장 눈에 띄는 것은 빛과 소리입니다. 소리는 번개 볼트 주변 입자의 급격한 온도 상승으로 인한 부산물입니다. 하지만 그게 전부가 아닙니다. 번개는 VLF(초저주파, 3kHz~30kHz)와 LF(저주파, 30kHz~300kHz) 범위에서 대량의 전자기파를 방출합니다. VLF와 LF는 빛, 와이파이, 전자레인지 파동과 유사하지만 더 낮은 주파수에서 작동합니다. 예를 들어 와이파이는 보통 2.4GHz(초당 24억 진동)에서 작동하지만, VLF와 LF는 더 낮은 주파수에서 작동하며 아두이노로는 약 7kHz 주파수를 포착할 수 있습니다. 번개 감지에 이 파동을 사용하는 장점은 번개만큼 이 주파수 대역에서 큰 버스트를 방출하는 것이 거의 없으며, 전자기파이므로 빛의 속도로 이동하여 센서가 번개 발생 시점(수 마이크로초 후)에 감지할 수 있다는 점입니다.
아두이노에는 안테나 역할을 하는 와이어(약 6~8인치)가 있어 전자기 스펙트럼의 7~9kHz 대역 변동을 포착합니다. 이 변동은 와이어에 미세한 + 또는 - 전압을 유도합니다. 아두이노의 아날로그 핀으로 이 변동을 읽을 수 있습니다.
사전 준비
- 10kΩ 저항 2개
- 3.3MΩ 저항 1개
- 점퍼 와이어 4개
- 아두이노 (우노 사용, 16MHz로 동작하는 모든 보드 가능)
- 브레드보드 (편의용)
아두이노 핀은 0V~5V 사이의 전압만 읽을 수 있으며, 0V 미만이나 5V 초과는 읽히지 않아 데이터 손실이 발생합니다. 더 중요하게는 0V 미만 전압은 핀을 손상시킬 수 있습니다. 번개로 유도된 전압은 0V 위아래로 변동하므로 문제가 됩니다. 이를 해결하기 위해 전압 분배기를 사용해 핀 전압을 5V 범위의 중간인 2.5V로 설정합니다. 이렇게 하면 전압 변동의 기준이 2.5V가 되어 핀 손상이나 데이터 손실이 없습니다.
회로는 간단합니다. 5V(빨간 선)에서 GND(검은 선)로 10kΩ 저항 2개를 직렬 연결하여 전압 분배기를 만듭니다. 여기에 3.3MΩ 저항을 두 10kΩ 저항 사이에 연결합니다. 3.3MΩ 저항과 직렬로 A4 핀(파란 선)에 와이어를 연결하면 정확히 2.5V가 A4 핀에 걸립니다. 그런 다음 약 6~8인치 길이의 안테나 역할을 할 와이어(초록 선)를 한쪽만 연결합니다.
스케치
가장 설명하기 어려운 부분입니다. 앞서 언급했듯 번개에서 포착해야 할 주파수는 약 7kHz이며, 제대로 된 파형을 읽으려면 샘플링 레이트가 4배인 28,000 samples/sec가 필요합니다.
아두이노 아날로그 핀은 초당 9,600 샘플만 제공합니다. 이 샘플링 레이트로는 2kHz 정도의 파형만 포착 가능해 턱없이 부족합니다. 다행히 ATMEGA 칩은 ADC 프로세스를 특정 배수로 가속하는 프리스케일러(prescaler) 설정이 가능하며, 해상도도 잘 유지됩니다. 프리스케일러 분주 비율을 16으로 설정하면 이론상 77kHz 샘플링 레이트를 얻을 수 있습니다. 실제로는 계산 오버헤드로 약 46kHz까지 나옵니다만, 이 프로젝트에는 충분합니다.
스케치는 512바이트 배열을 사용하여 A4 핀의 전압 값을 저장합니다. 지속적으로 핀 값을 읽어 배열의 다음 위치에 기록합니다. 번개가 감지되면 배열 전체를 시리얼 포트로 전송합니다. 아두이노 IDE의 시리얼 플로터로 그래프를 그리거나, 다른 아두이노나 ESP8266으로 데이터를 보내 온라인에 게시할 수 있습니다. 처음에는 아두이노 IDE로 모니터링하여 문제점을 파악하는 것이 좋습니다.
결과
다음은 몇 가지 결과 예시입니다.


소스 코드는 GitHub에서 다운로드하세요: https://github.com/klauscam/Arduino-Lightning-Detector
추가 설명이 필요하면 댓글로 남겨주세요.
태그: 아두이노, 전자기, EMF, 번개, 센서, UNO, VLF, 날씨
코드
GitHub
https://github.com/klauscam/Arduino-Lightning-Detector