안녕하세요! 여러분의 AI-IT 멘토, '파이컴'입니다. 😊
지난 시간에는 토양 습도 센서가 흙 속의 물기를 '저항의 변화'로 감지한다는 똑똑한 원리에 대해 알아봤죠? 이론만 배우니 얼른 직접 만들어보고 싶지 않으셨나요?
오늘은 바로 그 시간입니다! 메마른 화분의 목소리를 아두이노가 알아들을 수 있는 '숫자'로 바꿔주는 마법, 지금부터 함께 시작해볼게요. 🌱
Slide 1: 3장 센서로 세상 느끼기 - 02. 토양 습도 센서 회로 구성하기
이번 시간에는 '토양 습도 센서'를 직접 아두이노에 연결하고, 코드를 작성해서 실제로 흙의 습도를 측정해보는 실습을 진행할 거예요. 이론으로만 배웠던 센서가 우리 손에서 어떻게 살아 움직이는지 직접 확인해봅시다!
Slide 2: 토양 습도 센서 회로 구성
자, 이제 본격적으로 회로를 구성해볼 시간이에요. 생각보다 정말 간단하답니다!
✅ 준비물
먼저 필요한 준비물부터 챙겨볼까요?
- 아두이노 UNO
- 토양 습도 센서
- 물이 담긴 컵 (테스트용)
단 세 가지만 있으면 오늘의 실습 준비는 끝이에요!
✅ 연결 방법
센서를 자세히 보면 VCC, GND, SIG(또는 A0)라고 적힌 핀 3개가 보일 거예요. 이 세 가닥의 선만 잘 연결해주면 된답니다.
- VCC 핀 → 아두이노 5V 핀
센서에 전원을 공급해주는 '밥줄'이에요. 아두이노의 5V에 연결해주세요.
- GND 핀 → 아두이노 GND 핀
회로의 기준이 되는 접지(Ground) 핀이에요. 아두이노의 GND에 연결합니다.
- 신호(SIG 또는 A0) 핀 → 아두이노 A0 핀
가장 중요한 신호선이에요! 센서가 측정한 습도 값을 아두이노에게 전달하는 통로 역할을 합니다. 아두이노의 아날로그(ANALOG IN) 핀 중 하나인 A0에 연결해주세요.
어때요, 정말 간단하죠?
⚠️ 주의사항
여기서 정말 중요한 점 하나! 꼭 기억해주세요. 센서의 포크처럼 생긴 금속 부분은 흙이나 물에 직접 닿아야 습도를 측정할 수 있어요. 하지만 전선이 연결된 위쪽의 초록색 회로 부분은 절대 물에 젖으면 안 된답니다! 이 부분이 물에 닿으면 쇼트가 일어나 고장 날 수 있으니 꼭 조심해주세요!
Slide 3: 토양 습도 측정 코드
회로 연결을 마쳤다면 이제 아두이노에 생명을 불어넣을 코드를 살펴볼 차례예요.
"어? 이 코드, 어디서 많이 본 것 같지 않나요?"
네, 맞아요! 이전에 우리가 다뤘던 가변 저항이나 빛 센서(조도 센서)에서 사용했던 코드와 100% 똑같아요! 정말 신기하죠?
✅ 코드의 범용성
우리 눈에는 모양도 다르고 역할도 다른 센서들이지만, 아두이노 입장에서는 모두 똑같은 '전압을 변화시키는 부품'일 뿐이에요. 아두이노는 그저 A0 핀으로 들어오는 전압 값이 변하는 것을 0부터 1023까지의 숫자로 읽어 들일 뿐이죠. 그래서 analogRead() 함수 하나면 충분하답니다!
✅ 코드 살펴보기
| 01 | |
| 02 | |
| 03 | void setup() { |
| 04 | |
| 05 | Serial.begin(9600); |
| 06 | } |
| 07 | |
| 08 | void loop() { |
| 09 | |
| 10 | int sensorValue = analogRead(A0); |
| 11 | |
| 12 | |
| 13 | Serial.println(sensorValue); |
| 14 | |
| 15 | |
| 16 | delay(1000); |
| 17 | } |
analogRead(A0): A0 핀에 연결된 토양 습도 센서의 아날로그 값(전압)을 0~1023 사이의 숫자로 읽어옵니다.
Serial.println(sensorValue): 읽어온 숫자 값을 컴퓨터의 시리얼 모니터에 출력해서 우리 눈으로 확인할 수 있게 해줘요.
코드를 업로드하고 아두이노 IDE의 오른쪽 위 돋보기 모양(🔍) 아이콘을 눌러 시리얼 모니터를 열어보세요. 1초마다 숫자가 쭉쭉 올라오는 게 보일 거예요.
이제 센서를 물이 담긴 컵에 살짝 담가보거나 젖은 휴지에 대보세요. 숫자가 확 바뀌는 게 보이시나요? 일반적으로 흙이 건조할수록 저항이 커져서 높은 숫자가 나오고, 습할수록 저항이 작아져서 낮은 숫자가 나온답니다.
어떠셨나요? 똑같은 코드에 센서만 바꿔 끼웠을 뿐인데, 순식간에 훌륭한 '디지털 수분 측정기'가 완성되었어요! 아두이노와 센서의 세계, 정말 매력적이지 않나요?
오늘 배운 원리를 잘 활용하면 '화분이 목마르면 자동으로 물을 주는 스마트 화분' 같은 멋진 프로젝트도 만들 수 있답니다. 다음 시간에는 더 재미있고 유익한 내용으로 돌아올게요!
오늘도 정말 수고 많으셨습니다! 👋
댓글 없음:
댓글 쓰기