에듀이노-코딩교육 전문 쇼핑몰 에듀이노-코딩교육 전문 쇼핑몰

학교, 공공기관이라면 후불결제하세요!

 
현재 위치
  1. 게시판
  2. 묻고답하기

묻고답하기

기술문의 게시판입니다.

게시판 상세
제목 워터펌프의 출력이 너무 약해요
작성자 호롤로로롤 (ip:)
  • 작성일 2020-06-18
  • 추천 추천하기
  • 조회수 167

워터펌프를 아두이노랑 연결했는데 워터펌프의 출력이 너무 약합니다.


현재 빗물수위센서와 토양수분센서(두개 다 에듀이노 제품이에요) 같이 연결되어 있고 건전지 AA 1.5V 병렬로 4개도 연결되어있는데도

워터펌프의 힘이 너무 약해서 물이 호스를 타고 올라오지를 못하네요ㅠㅠ


혹시 워터펌프에 문제가 있는 건지, 모터를 달면 조금 나아질 지

무엇이 문제인지 알려주실 수 있으실까요?ㅠㅠ



아래는 해당 코딩입니다.


#include <LiquidCrystal_I2C.h>

#include <Wire.h>


LiquidCrystal_I2C lcd(0x27, 20, 4);


int Sensor_pin = A0;  // 토양수분센서 핀을 A0으로 설정

int Water_Pump = 7;  // 워터펌프 핀을 7으로 설정

int buzzerPin = 4;   //수동부저 핀4설정

int water_pin = A3; //수위센서 A3에 연결

int soil_result;

int water_result;



void setup()

{

  // set up the LCD's number of columns and rows:

  lcd.init(); // Print a message to the LCD.

   

 // lcd.backlight();

  lcd.clear();

  Serial.begin(9600);

 

   

  pinMode(Water_Pump, OUTPUT);

  pinMode(buzzerPin, OUTPUT);

  pinMode(Sensor_pin, INPUT);

  pinMode(water_pin, INPUT);

}


void loop()

{

 

  Serial.println(analogRead(water_pin));  // Serial monitor로 A1값을 보여줌

  delay(1000); // 입력값을 보여주는데 0.1초 설정



  soil_result = analogRead(Sensor_pin);

  water_result = analogRead(water_pin);

 

  Serial.println(soil_result);// 센서값을 시리얼모니터로 전송

  delay(1000);


  if ( soil_result > 450 && water_result > 400)

  { 

   

    digitalWrite(Water_Pump, HIGH);

    lcd.backlight();

    lcd.setCursor(1, 0);

    lcd.print("Water, please"); // 'Water,please' 문구 출력

   

    //analogWrite(buzzerPin, 5);

    tone(buzzerPin,440);//라

    delay(220);

    tone(buzzerPin,293);//레

    delay(220);

    tone(buzzerPin,349);//파

    delay(150);

    tone(buzzerPin,391);//솔

    delay(220);

    tone(buzzerPin,440);//라

    delay(400);


    noTone(buzzerPin);

    delay(350);


    tone(buzzerPin,293);//레

    delay(220);

    tone(buzzerPin,349);//파

    delay(150);

    tone(buzzerPin,523);//도

    delay(220);

    tone(buzzerPin,440);//라

    delay(400);

 

    noTone(buzzerPin);

    delay(300);

  }

 

  else if( soil_result > 440 && water_result  < 390) //화분, 물통 물 없으면

  { 

    tone(buzzerPin,293);//레

    delay(300);

    digitalWrite(Water_Pump, LOW);

    lcd.backlight();

    lcd.setCursor(3,0);

    lcd.print("PLEASE POUR");

    lcd.setCursor(5,1);

    lcd.print("WATER !!");

  }

 

  else if( soil_result < 440) // 화분에 물충분

  {

    // 토양에 수분이 충분하면

    lcd.clear();

    digitalWrite(Water_Pump, LOW);

    noTone(buzzerPin);

    lcd.noBacklight();

    lcd.noDisplay();

   

  } 

}


게시글 신고하기

신고사유

신고해주신 내용은 쇼핑몰 운영자의 검토 후 내부 운영 정책에 의해 처리가 진행됩니다.

평점 0점
첨부파일
비밀번호 수정 및 삭제하려면 비밀번호를 입력하세요.
댓글 수정

비밀번호 :

수정 취소

/ byte

비밀번호 : 확인 취소

댓글 입력

댓글달기이름 :비밀번호 : 관리자답변보기

확인

/ byte

왼쪽의 문자를 공백없이 입력하세요.(대소문자구분)

에게만 댓글 작성 권한이 있습니다.

댓글 입력

댓글달기이름 :비밀번호 :

확인

/ byte

왼쪽의 문자를 공백없이 입력하세요.(대소문자구분)

에게만 댓글 작성 권한이 있습니다.

«
»