기능 요건
자동으로 화분에 물을 주기 위한 기기로서 다음과 같은 기능을 가진 자동급수 시스템 개발한다.
1) 사용자는 다음 사항을 키패드와 화면을 통해 직접 지정할 수 있어야 한다.
- 물주는 간격(시간단위,최대 10일간격)
- 물주는 수량( 펌프를 가동시키는 시간, 초단위, 최대 999초 )
- 물을 주기 위한 최대 습도 ( 비오는 날은 물주기 생략하기 )
- 물을 주기 위한 최소 온도 ( 추운날에는 물주기 생략하기 )
2)사용자가 지정한 바에 의해 조건이 만족되면 펌프를 가동시켜 화분에 물주기
3) 급수 진행중일 때에는 파란색LED를 켜고, 급수 타임인데 수조에 물이 부족한 경우에는 붉은색LED와 부저음으로 사용자가 물을 보충할 수 있도록 알려주어야 한다.
4) 지정된 예약시간 이외에도 사용자가 원할 때에는 강제로 물주기 펌프를 가동시켜 물주기를 실행할 수 있어야 한다.
5) 펌프 가동중, 또는 지정시각 대기 중일 때 사용자는 강제로 이를 중지시키키고 이전 화면으로 되돌아 가는 기능이 있어야 한다.
6) 지정된 간격동안 대기중에 정전이나 조작 실수에 의해 일시적으로 POWER OFF되어 버렸을 경우에도 정상 작동할 수 있어야 한다. ( 10 분 정도의 오차 허용 )
-예를 들어 24시간으로 지정된 시간간격중 20시간째 대기중에 정전이나 잠깐 파워 스위치를 껏다가 켜서 시스템이 재가동 되었을 경우 재가동 시점부터 다시 24시간을 대기하면 급수간격이 44시간이 되어 버림.
기능 구현방법
구현대상 기능 |
참조 |
사용 핀 |
키패드입력
|
7.키패드 |
D5~D12 |
화면출력 |
8 .LCD화면 |
A4,A5
( I2C 통신핀) |
부저음 출력 |
6_부저 |
D2 |
현재 온도 습도 Check |
10.온습도센서 |
D3 |
워터펌프ON/OFF제어 |
12.릴레이 |
D4 |
물없음 LED 표시 |
5.LED 전구 |
D13 |
급수중 LED 표시 |
5.LED 전구 |
A2
( 참조 1) |
물통 물부족여부 Check |
11.수위센서 |
A1, A0
(참조 2) |
참조1)
LED전구 점등에는 디지털 출력을 사용해야 하지만 위에서 D2 ~ D13까지 다른 용도로 사용하고 있어 디지털 출력핀이 부족하다. 이럴 경우 아날로그 입력용 핀을 디지털용으로 용도를 바꿔 사용해도 동작되므로 A2를 디지털 출력용으로 선언해서 사용한다.
참조2)
물통에 물이 있는지 여부를 check하기 위해 센서전극에 전류를 공급하고 저항값을 측정하는 방식을 사용한다. 그런데 물통안에서는 전기가 잘 통하기 때문에 시스템이 대기하는 시간내내 전류가 흘러 전력낭비 및 구리선 부식 현상이 발생할 수 있다. 따라서 물부족 Check가 필요한 시점( 대기하다가 물주기 타임이 되었을 때)에만 A0를 통해 센서전원에 전류를 잠깐 공급하고 센서Check하는 방식으로 개발.
워터맨 시스템 종합배선도
워터맨 배선연결
종합배선도에 따라 각종 센서와 부품들을 배선연결한다. 단, 조립의 편의를 위해
1) 키패드 연결선은 암-수 점퍼선 8가닥을 이용하여 키패드 꽂을수 있는 상태로만 연결한다
2) 워터펌프 전원선을 아직 연결하지 않는다.
3) LCD Back Light 스위치는 아직 연결하지 않는다.
4) 수위센서의 물통 측 전극 단자는 아직 연결하지 않는다.