페이지

2025년 12월 25일 목요일

3.2.1. 빛 센서 알아보기

안녕하세요! 여러분의 AI-IT 멘토, '파이컴'입니다. 😊

밤이 되면 저절로 켜지는 가로등, 스마트폰을 귀에 대면 스르륵 꺼지는 화면. 이런 똑똑한 기능들은 어떻게 가능한 걸까요? 바로 우리 주변의 '빛'을 읽어내는 작은 영웅, 빛 센서 덕분이랍니다.

오늘은 아두이노의 눈이 되어주는 '빛 센서'에 대해 속속들이 파헤쳐 보는 시간을 가질 거예요. 이 작은 부품 하나로 아두이노가 세상을 어떻게 느끼는지, 그 비밀을 함께 알아보러 가시죠!

Slide 1: 3장 센서로 세상 느끼기 - 빛 센서 알아보기

이번 시간에는 아두이노가 주변 환경을 인식하게 해주는 '센서' 시리즈의 첫 주자, 빛 센서에 대해 배워볼 거예요. 빛의 많고 적음을 감지해서 아두이노에게 알려주는 아주 중요한 부품이죠. 준비되셨나요?

Slide 2: 빛 센서의 개념

"빛 센서가 도대체 뭔가요?"

아두이노의 '눈'이라고 생각하면 쉬워요. 주변의 빛을 감지해서 그걸 전기 신호로 바꿔주는 역할을 하거든요.

  • 정식 명칭: 광(光) 센서라고 불러요. 만드는 재료인 '황화카드뮴(CdS)'의 이름을 따서 CDS 센서라는 이름으로 더 자주 불린답니다.
  • 역할: 빛의 세기를 감지해서 전기 신호로 변환해요.
  • 실생활 예시:
    • 어두워지면 자동으로 켜지는 가로등
    • 통화 시 귀에 대면 화면이 꺼지는 스마트폰 근접 센서

이 작은 친구 하나만 있으면, 우리 아두이노도 "아, 눈부셔!" 혹은 "어휴, 캄캄하네!" 하고 느낄 수 있게 되는 거죠!

Slide 3: 빛 센서의 동작 원리 (1) - 빛에 따라 변신하는 저항

빛 센서는 겉보기에 주황색 꼬불꼬불한 선이 그려진 사탕처럼 생겼어요. 하지만 이 친구의 진짜 정체는 바로 '저항'이랍니다. 그냥 저항이 아니라, 빛의 양에 따라 성격이 확확 바뀌는 아주 특별한 저항이죠. 마치 마법의 도로 같아요!

  • 🌑 어두울 때 (밤): "꼼짝 마! 못 지나간다!"
    • 빛이 없으면 이 친구는 아주 고집 센 저항으로 변해요. 전기가 흐르는 길을 꽉 막아서 저항값이 엄청나게 커져요. (전기가 거의 흐르지 못해요.)
  • ☀️ 밝을 때 (낮): "어서 오세요~ 활짝 열려있어요!"
    • 빛을 받으면 갑자기 친절한 저항으로 변신해요. 막고 있던 길을 활짝 열어줘서 저항값이 아주 작아진답니다. (전기가 콸콸 잘 흘러요.)

아두이노는 바로 이 저항값의 변화를 읽어서 "아, 지금 저항이 작은 걸 보니 밖이 환하구나!" 하고 빛의 세기를 알아차리는 거예요.

Slide 4: 빛 센서의 동작 원리 (2) - 혼자는 안돼요! 10kΩ 저항과의 협업

"선생님, 그럼 빛 센서만 아두이노에 꽂으면 되나요?"

땡! 아쉽지만 그건 아니에요. 빛 센서는 혼자서는 아무것도 할 수 없어요. 반드시 짝꿍인 '일반 저항(보통 10kΩ 저항을 사용해요)'과 함께 연결해야만 전압(V)의 변화를 만들어낼 수 있답니다.

이 원리를 전문 용어로 '전압 분배(Voltage Divider)'라고 하는데, 쉽게 말해 '줄다리기 시합'과 같아요.

  • 한쪽 팀: 빛의 세기에 따라 힘(저항)이 바뀌는 빛 센서 팀
  • 반대쪽 팀: 항상 일정한 힘을 가진 고정 저항(10kΩ) 팀

빛이 밝아져서 빛 센서 팀의 힘이 약해지면, 줄(전압)이 고정 저항 쪽으로 끌려가겠죠? 반대로 어두워져서 빛 센서 팀의 힘이 세지면 줄을 자기 쪽으로 당겨올 거고요. 아두이노는 이 줄다리기에서 줄이 어디쯤 위치하는지를 보고 빛의 세기를 판단하는 거랍니다. 정말 재밌는 원리죠?

Slide 5: 풀다운(Pull-down) 저항 연결 방식

자, 그럼 짝꿍 저항과 어떻게 연결해야 할까요? 가장 많이 쓰는 '풀다운' 방식부터 알아볼게요. 2장에서 버튼의 '유령 신호'를 잡을 때 썼던 개념인데, 기억나시나요?

  • 연결 방법: 짝꿍 저항(10kΩ)을 바닥(GND)에 연결하는 방식이에요. 이름처럼 아래(down)로 끌어내려 기준을 잡아주는 거죠.
  • 동작 결과: "밝을수록 숫자가 커져요!" (직관적이라 이해하기 쉬워요)
    • 🌑 어두울 때: 빛 센서의 저항이 커져서 5V 전기를 막아요. 그럼 아두이노 핀은 바닥(GND)에 연결된 10kΩ 저항의 영향을 받아 전압이 0V에 가까워져요. (읽히는 값: 0에 가까움)
    • ☀️ 밝을 때: 빛 센서의 저항이 작아져서 5V 전기가 콸콸 흘러요. 바닥으로 빠지는 것보다 들어오는 힘이 세져서 전압이 5V에 가까워져요. (읽히는 값: 1023에 가까움)

책이나 대부분의 키트에서 이 방식을 사용하니 꼭 기억해두세요!

Slide 6: 풀업(Pull-up) 저항 연결 방식

이번엔 반대 방식인 '풀업'을 알아볼까요?

  • 연결 방법: 짝꿍 저항(10kΩ)을 천장(5V)에 연결하는 방식이에요. 위(up)로 끌어올려 기준을 잡아주는 거죠.
  • 동작 결과: "밝을수록 숫자가 작아져요!" (마치 청개구리 같아요!)
    • ☀️ 밝을 때: 빛 센서 저항이 작아져서 전기가 바닥(GND)으로 쉽게 빠져나가는 길이 열려요. 그래서 전압이 0V에 가까워져요. (읽히는 값: 0에 가까움)
    • 🌑 어두울 때: 빛 센서 저항이 커져서 바닥(GND)으로 가는 길을 막아버려요. 전기가 빠져나가지 못하고 고여서, 천장(5V)에 연결된 저항의 영향을 받아 전압이 5V에 가까워져요. (읽히는 값: 1023에 가까움)

풀다운과 결과가 정반대로 나오니, 코드를 짤 때 헷갈리지 않도록 주의해야 해요!

Slide 7: 저항이 꼭 필요한 이유

"귀찮은데 그냥 저항 빼고 센서만 연결하면 안 되나요?"

정말 좋은 호기심이에요! 하지만 결론부터 말하면 절대 안 돼요.

앞서 말했듯, 아두이노가 읽는 전압 값은 '줄다리기 시합'의 결과예요. 그런데 상대팀인 고정 저항 팀이 없으면 시합 자체가 성립되지 않겠죠?

  • 저항 없이 연결하면 생기는 문제
    1. 변화 감지 불가: 줄(전압)이 그냥 5V 쪽에 묶여있는 것과 같아서, 밝든 어둡든 항상 똑같은 값(1023)만 나와요.
    2. 쇼트(합선) 위험: 경우에 따라 회로에 무리를 주어 아두이노가 망가질 수도 있어요.

따라서 빛의 변화를 감지하려면, 반드시 비교 대상이 되어주는 고정 저항이 필수라는 사실, 꼭 기억해주세요!

Slide 8: 빛 센서 모듈 (귀차니즘 해결사!)

매번 저항을 찾아서 빵판에 꽂는 게 조금 번거롭게 느껴질 수 있어요. 그런 분들을 위해 나온 해결사가 바로 '빛 센서 모듈'입니다.

  • 모듈의 장점:
    • 귀찮았던 10kΩ 저항이 이미 기판 위에 작은 칩 형태로 내장되어 있어요.
    • VCC(5V), GND, SIG(신호) 선 3개만 아두이노에 꽂으면 되니 회로 구성이 아주 간단해져요.
  • 연결 방법:
    • VCC 또는 + → 아두이노 5V
    • GND 또는 - → 아두이노 GND
    • SIG 또는 S → 아두이노 아날로그 핀 (A0)
  • 🚨 주의사항:
    • 이 편한 친구에게도 함정은 있어요. 모듈 제조사 마음대로 회로를 만들기 때문에, 어떤 건 풀다운(밝으면 커짐) 방식이고 어떤 건 풀업(밝으면 작아짐) 방식이에요. '뽑기 운'이 좀 필요하죠.
    • 일단 연결해보고, 센서를 손으로 가렸을 때 숫자가 0으로 가는지 1023으로 가는지를 보고 어떤 방식인지 확인한 후에 코딩을 해야 한답니다!

Slide 9: 빛의 밝기, 숫자로 바꿔보기

아두이노는 빛의 밝기를 0부터 1023까지의 숫자로 표현해요. (10kΩ 저항을 GND에 연결한 풀다운 방식 기준)

  • 밝기별 대표적인 숫자 범위
    • ☀️ 아주 밝은 대낮 (or 손전등): 저항이 매우 작아져서 800 ~ 1000 사이의 높은 값이 나와요.
    • 🌑 칠흑 같은 어둠 (or 손으로 가렸을 때): 저항이 매우 커져서 0 ~ 100 사이의 낮은 값이 나와요.
    • 💡 평범한 실내 형광등: 환경에 따라 다르지만 보통 300 ~ 600 사이의 값이 나와요.

이 숫자를 이용하면 간단한 '스마트 가로등' 로직을 만들 수 있겠죠?
"만약(if) 빛 센서 값이 300보다 작으면(어두우면), LED를 켜라!"

[잠깐!] 왜 센서 값이 계속 미세하게 떨리면서 춤을 추죠? 고장인가요?

아니요, 아주 정상이에요! 우리 눈에는 보이지 않지만, 형광등은 1초에 60번씩 깜빡이고 있답니다. 아두이노는 우리 눈보다 훨씬 눈치가 빨라서 그 미세한 빛의 떨림까지 전부 읽어내기 때문에 숫자가 계속 바뀌는 것처럼 보이는 거예요. 신기하죠?

오늘은 아두이노의 눈, 빛 센서(CDS 센서)에 대해 알아봤어요. 빛의 양에 따라 저항값이 변하는 원리부터, 혼자서는 안되고 꼭 짝꿍 저항과 '줄다리기'를 해야 한다는 사실까지! 이제 여러분은 빛의 세기를 숫자로 읽어 다양한 프로젝트에 활용할 수 있게 되었습니다.

오늘 배운 내용을 바탕으로 '어두워지면 자동으로 켜지는 무드등' 같은 나만의 프로젝트에 도전해보는 건 어떨까요? 다음 시간에도 더 재미있는 센서 이야기로 돌아오겠습니다! 궁금한 점은 언제든 댓글로 남겨주세요. 😊

이 포스팅의 내용은 교재 [주니어 공학교실 아두이노의 기초] **-** 페이지에 수록된 내용입니다.

댓글 없음:

댓글 쓰기