아두이노 레이저 트립와이어: 간단한 침입 감지기 만들기
프로젝트 개요
아두이노 우노(Arduino UNO)와 레이저 다이오드, 포토레지스터(조도 센서)를 이용해 보이지 않는 레이저 빔을 감시선으로 삼는 레이저 트립와이어(Laser Tripwire)를 제작합니다. 빔이 차단되면 부저가 울리고 시리얼 모니터에 알림이 뜨는 기본적인 침입 감지 시스템입니다. 설정 모드(빔 정렬)와 무장 모드(감시)를 버튼 하나로 전환하며, 주변 광량 변화를 보정하기 위해 두 개의 포토레지스터(레이저 수광용, 주변광 기준용)를 차동 구성으로 사용합니다.
필수 부품
| 부품 | 수량 | 비고 |
| Arduino UNO (또는 호환 보드) | 1 | 메인 컨트롤러 |
| 레이저 다이오드 모듈 (5V 구동) | 1 | 감시 빔 발사 |
| 포토레지스터 (LDR) | 2 | 하나는 레이저 수광, 하나는 주변광 보정용 |
| 저항 10kΩ | 3 | 포토레지스터 분배용 2개, 버튼 풀다운 1개 |
| 부저 (액티브 또는 패시브) | 1 | 침입 시 경보음 |
| 택트 스위치 (12mm) | 1 | 모드 전환 버튼 (설정↔무장) |
| 브레드보드 (하프 사이즈 2개 권장) | 1~2 | 레이저 수광부 별도 구성 시 편리 |
| 점퍼 와이어, 거울 (빔 반사용) | 필요량 | 배선 및 레이저 경로 연장 |
회로 구성 핵심
1. 레이저 수광부 (차동 증폭 구성)
- 포토레지스터 2개를 각각 10kΩ 저항과 직렬로 연결하여 전압 분배기 구성
- 두 분배기의 중간 지점(조도 변화에 따른 전압)을 아두이노 A0(레이저용), A1(주변광용)에 연결
- 레이저 빔이 포토레지스터에 닿으면 저항값 급감 → A0 전압 상승
- 주변광 변화는 A0, A1 공통으로 나타나므로 차이값(A0 - A1) 또는 평균 기준 임계값으로 순수 레이저 차단만 검출
2. 레이저 다이오드 구동
- 디지털 핀 2 → 레이저 VCC, GND → 레이저 GND (직결 가능, 전류 제한 저항 내장 모듈 권장)
3. 부저 및 버튼
- 부저: 디지털 핀 3 (PWM 가능 핀)
- 버튼: 디지털 핀 4, 10kΩ 풀다운 저항
소프트웨어 상태 머신
코드는 세 가지 모드로 동작합니다:
| 모드 | 설명 | 진입 조건 |
| 설정 모드 (SETTINGS) | 레이저 ON, 시리얼로 A0/A1 값 실시간 출력, 레이저 수광 시 핀 13 LED 점등으로 빔 정렬 보조 | 전원 투자 후 초기 상태, 또는 무장 모드에서 버튼 1회 누름 |
| 무장 모드 (ARMED) | 레이저 ON, 3초마다 시리얼 상태 출력, 임계값 이하로 떨어지면 트립 모드 진입 | 설정 모드에서 버튼 1회 누름 |
| 트립 모드 (TRIP) | 부저 3회 비프, 시리얼 알림 출력, 1초 후 자동으로 무장 모드 복귀 | 무장 모드 중 빔 차단 감지 시 |
임계값 계산 로직
ambient = analogRead(A1); // 주변광 기준값
trip = analogRead(A0); // 레이저 수광값 (설정 모드에서 캡처)
atAverage = ambient + (trip - ambient) / 2; // 중간값을 임계값으로 사용
// 무장 모드에서 analogRead(A0) < atAverage 이면 트립 판정
조립 및 테스트 순서
- 회로도(Schematics) 참조하여 브레드보드에 회로 구성. 레이저 수광부는 별도 소형 브레드보드에 만들어 정렬 용이하게 함.
- 제공된 코드(
Laser Tripwire)를 아두이노 IDE로 업로드.
- 시리얼 모니터(9600 bps) 열기.
- 설정 모드: 레이저와 포토레지스터(수광부)를 마주 보게 배치(거울 활용 가능). 핀 13 LED가 켜지면 빔 정렬 성공. 시리얼 값 확인하며 안정적인
trip 값 확보.
- 무장 모드: 버튼 눌러 전환. 시리얼에
MODE:ARMED 표시 확인.
- 손이나 물체로 빔 차단 → 부저 3회 울림, 시리얼
MODE:TRIP → 1초 후 MODE:ARMED 복귀.
개선 및 응용 아이디어
- 무선 알림: ESP8266/ESP32 추가로 스마트폰 푸시 알림(Blynk, Telegram 등) 전송
- 로깅: SD 카드 모듈로 침입 시각 기록
- 다중 존: 여러 레이저/수광기 쌍으로 구역별 감시
- 솔레노이드 잠금 연동: 문 열림 방지용 전자 잠금 장치 제어
- 배터리 구동: 저전력 모드(슬립)와 18650 리튬이온 배터리로 휴대용/무선화
주의사항
- 레이저 안전: 눈 직접 조사 금지. Class II 이하 저출력 모듈 사용, 빔 경로에 경고 스티커 부착.
- 주변광 변화가 심한 환경(창가, 조명 점멸)에서는 차동 구성이라도 오동작 가능. 차폐 케이스 또는 적외선 레이저+필터 고려.
- 부저가 패시브 타입이면
tone() 함수로 주파수 지정 필요 (제공 코드는 액티브 부저 가정).
- 버튼 디바운싱은
delay(300)로 단순 처리됨. 더 안정적인 라이브러리(Bounce2 등) 사용 권장.
저렴한 부품으로 침입 감지 시스템의 핵심 원리를 체험할 수 있는 훌륭한 메이커 프로젝트입니다. 전체 코드, 브레드보드/회로도 이미지는 프로젝트 페이지의 Code 및 Schematics 섹션에서 확인하세요.