반응형
아두이노 나노와 수분센서와 워터펌프를 이용해 스마트화분을 만들어보았습니다. 사무실에 스타벅스컵과 트레이가 차곡차곡 모아져 있어서 재활용으로 버리려다가 아두이노 만들 때 아주 요긴하게 쓰고 있습니다. 토마토와 바질 등 컵화분을 이용해 스마트화분을 만들어 보면 스마트팜의 원리도 이해하는 좋은 수업자료가 될거라 생각합니다. 수분센서가 감지하는 수분의 양에 따라 물이 자동으로 급수되도록 하는 것이 원리인데 수분센서를 꽂는 위치에 따라 값이 달라져서 여러번 테스트를 해야 값을 제대로 설정할 수 있습니다.
[준비물]
아두이노 나노보드, 미니브레드보드, 펌프모터, 모터 드라이버, LCD, 수분센서, 점퍼선,투명컵, 종이 캐리어, 컵화분
[아두이노 회로]
[아두이노 코딩]
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,20,4);
int count=0;
int IN1=2; //IN1을 2번핀으로
int IN2=3; //IN2를 3번 핀으로
void setup(){
lcd.backlight(); //LCD백라이트 켜기
pinMode(IN1,OUTPUT); //IN1을 출력으로
pinMode(IN2,OUTPUT); //IN2를 출력으로
pinMode(A0,INPUT); //A0핀을 입력으로
Serial.begin(9600);
}
void loop(){
int ground = analogRead(A0); //int형으로 ground = A0핀을 아날로그값으로 읽기
// Serial.println(ground);
lcd.init();//LCD 초기화
lcd.clear();
digitalWrite(IN1,LOW); //멈춤
digitalWrite(IN2,LOW);
lcd.setCursor(1,0);//LCD커서 1,0좌표에 위치
lcd.print("Moisture:"); //Moisture라고 출력
lcd.print(ground); //ground값 출력
lcd.setCursor(2,1); //LCD커서 2,1좌표에 위치
lcd.print("to be OK!"); //LCD에 to be OK!라고 출력
if(ground<300 && count==0){ //만약 ground가 200도 보다 작으면
lcd.clear();
digitalWrite(IN1,HIGH); //정방향
digitalWrite(IN2,LOW);
count=1;
}
else{
count=0;
delay(8000);
}
lcd.setCursor(1,0);//LCD커서 1,0좌표에 위치
lcd.print("Moisture:"); //Moisture라고 출력
lcd.print(ground); //ground값 출력
lcd.setCursor(2,1); //LCD커서 2,1좌표에 위치
lcd.print("Supply water!"); //LCD에 Supply water라고 출력
}
[외형제작 & 조립]
외형제작시 주의할 점은 캐리어 바닥이 깊어 컵을 올려두기 좋도록 받침을 깔아주어야 한다는 것입니다. 두꺼운 종이나 컵이 있다면 캐리어 바닥에 깔아 컵을 올려둘 수 있도록 지지대를 만들어 주시면 좋습니다.
건전지 연결선은 캐리어 바닥에서 안쪽으로 넣어 스위치선과 연결하고 워터펌프 연결선은 미리 연결하지 말고 컵안에서 뚜껑 밖으로 선을 뺀 후 모터드라이버에 연결해줍니다. 회로를 모두 연결하여 받침대 안쪽으로 안보이게 넣어줍니다.되도록 점퍼선이 안보이게 만들면 깔끔하게 만들 수 있습니다.
[프로젝트 완성]
반응형
'피지컬컴퓨팅 > 아두이노' 카테고리의 다른 글
아두이노 우노와 브레드 보드 연결하기 (0) | 2023.04.02 |
---|---|
아두이노 실습에 필요한 준비물을 알아보자 (0) | 2023.03.26 |
아두이노 프로젝트_03. 책상용 스타벅스 가습기 (0) | 2022.08.10 |
아두이노 프로젝트_02. 소리감지 음악램프 (0) | 2022.08.10 |
아두이노 프로젝트_01. 터치 뮤직플레이어 (0) | 2022.08.10 |