[아두이노야 놀자]<6>빛 센서 가로등 만들기

늦은 밤, 깜깜해진 거리엔 가로등이 켜집니다. 덕분에 덜 무섭게 그 거리를 지날 수 있어요. 그런데 가로등은 어떻게 켜질까요? 가로등 조도 센서가 어둠을 감지해서 켜요.

조도 센서(Photoresister)는 빛이 들어오는 양을 감지하는 모듈입니다. 편하게 '빛 센서'라고 부르겠습니다. 이 빛 센서는 어떻게 작동할까요? 빛이 강할수록 저항이 약해져 전류가 많이 흐르고 빛이 약할수록 저항이 강해져 전류가 적게 흐르게 됩니다. 전류 양은 엔트리에서 수치화 해 사용할 수 있습니다.

준비물은 △아두이노(UNO), USB 케이블, 브레드 보드 각 1개씩 △전선 4∼6개 정도 △저항 220옴, 10k옴 각 1개씩 △LED 1개 △조도 센서 1개입니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

준비물은 조립해보겠습니다. 220옴 저항의 띠 색은 빨강-빨강-갈색 순입니다. 10k옴 저항의 띠 색은 갈색-검정-주황 순입니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

LED와 엔트리봇을 이용한 가로등을 만들어보겠습니다.

[그림1]처럼 빛 센서와 LED를 편리하게 제어하도록 '밝기' 변수를 추가합니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

[그림2]처럼 LED 밝기는 0∼255 사이 값으로 조절할 수 있습니다. 실시간으로 빛 센서에서 받은 값을 0∼255 사이 값으로 바꾸고, '밝기' 변수에 넣습니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

이제 LED와 엔트리봇 밝기를 조절하는 기능을 만들어 보겠습니다. 가로등은 항상 켜져 있지 않습니다. 밤이 돼 어느 정도 어두워졌을 때 처음부터 밝게 켜집니다. [그림3]처럼 주변이 충분히 어두워졌는지 아닌지에 따라 각 다른 코드를 실행하도록 합니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

만일 '밝기'가 100 이하라면, 주변이 어두워 졌으니 가로등을 켜야겠죠? [그림4]처럼 LED를 연결한 핀에 200-밝기만큼 전압을 줍니다. 원래 LED 최대값인 255에 '밝기'를 뺀 값을 사용해야 하지만 LED 빛이 너무 약해 값을 200으로 낮췄습니다. 엔트리봇에게도 마찬가지로 200-밝기만큼의 밝기 효과를 주겠습니다. 밝기가 100 이하일 때부터 작동하므로 LED와 엔트리봇은 최소 100 밝기로 밝아집니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

만일 '밝기'가 100 이상이면 충분히 밝아서 가로등을 켤 필요가 없으니 [그림5]처럼 모두 0의 값으로 정합니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

LED로 가로등을 만드는 것은 완성했습니다. 실행화면에 어두운 정도를 보여주는 효과도 만들어봅시다. 오브젝트 추가 창에서 [그림6]처럼 '투명배경'을 불러옵니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

'투명배경'은 투명도가 높을수록 밝아지고 낮을수록 어두워지는 것처럼 보입니다. 이 오브젝트는 [그림7]처럼 '밝기'에 50을 뺀 값만큼 투명도를 정합니다. 이제 밝기가 줄어들면 투명도도 줄어들어 주위가 어두워져 보입니다.

[아두이노야 놀자]&lt;6&gt;빛 센서 가로등 만들기

주변이 밝으면 가만히 있다가 어두워지면 LED가 깜빡거리게 만들 수도 있을 거예요. 실행 화면에서는 빛 센서값에 따라 해와 달이 떠오르는 것을 만들어보세요.

도움말=김지원 커넥트재단 연구원

위방향 화살표