[아두이노야 놀자]<15>적외선 거리 센서

적외선 거리 센서.
<적외선 거리 센서.>

적외선은 온도 측정, 야간 투시, 속도 측정, 동작 감지, 통신 등 많은 용도로 쓰이는 전자기파입니다. 이번에는 적외선을 거리 측정 용도로 사용해 봅시다.

아두이노(UNO), USB 케이블, 브레드 보드 1개씩과 전선 8개 정도, 저항 220옴 4개, LED 4개, 적외선 거리 센서를 준비합니다. 적외선 거리 센서는 어떤 원리로 작동할까요.

적외선으로 거리를 측정하는 센서는 모두 방사체와 수신기를 가지고 있습니다. 방사체에서 적외선이 나와 물체에 반사돼 수신기로 들어옵니다. 이때 물체 거리에 따라 적외선이 반사되는 위치가 달라집니다. 수신기에 적외선이 도달하기 위해 방사체가 각도를 조절해야 합니다. 방사체 각도를 계산하면 물체거리를 알아낼 수 있습니다.

적외선 거리 센서는 자동차 주차 모드나 자동문 등에 사용됩니다.

[그림 1] 센서값 범위 조절.
<[그림 1] 센서값 범위 조절.>

적외선 거리 센서를 활용해 거리 측정을 해봅시다. 센서값과 LED를 다루기 위한 변수 순서와 거리 두 개를 추가합니다. [그림 1]과 같이 프로젝트를 시작하면 값을 직접 보기 위해 거리 센서값을 말하고, '거리' 변수엔 센서값을 0~4 사이로 바꾼 값으로 정해줍니다. 4개 LED를 다루기 위해서 입니다.

[그림 2] 순서 초기화.
<[그림 2] 순서 초기화.>

[그림 2]처럼 다시 시작하기 블록을 꺼내고, 계속해서 순서 블록을 0으로 초기화하며 다음 블록들을 실행합니다. LED를 켜볼까요. LED는 5번부터 2번 핀까지 연결돼 있고, 5번이 가장 왼쪽에 위치한 LED입니다. 그리고 거리 센서값은 0부터 4이고, 물체가 가장 가까이 위치한다면 센서값은 4가 됩니다.

[그림 3] LED 켜기.
<[그림 3] LED 켜기.>

[그림 3]과 같이 '순서'를 1씩 더하며 '거리'만큼 순서대로 LED를 켜주면 센서와 물체 사이 거리를 LED로 표현할 수 있을 것입니다. 만약 모든 LED를 끄고 다시 표시하는 방식으로 만든다면 LED가 깜빡거릴 것입니다. 그러므로 LED를 켜고 남은 LED를 이어서 끄는 방식으로 만들어야 합니다.

4번 코드에서 거리만큼 '순서'값도 올랐을 것입니다. 이어 '순서'가 4가 될 때까지(마지막 LED까지) 순서대로 꺼주면 완성입니다. LED를 더 추가해서 더욱 디테일하게 거리를 표시할 수도 있습니다. 피에조 부저를 연결해서 일정 거리 이상 가까워지면 소리를 울리게 해보는 건 어떨까요.

김지원 네이버커넥트재단 연구원

위방향 화살표