질문게시판 > 아두이노 DHT11 온습도센서로 DC 팬모터 제어 회로구성 질문

TODAY1,046 TOTAL341,862
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 아두이노 DHT11 온습도센서로 DC 팬모터 제어 회로구성 질문

페이지 정보

작성자 KrazymastarGx 작성일2018-10-11 13:04 조회1,925회 댓글1건

본문

	
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define DHTPIN 8
#define DHTTYPE DHT11
DHT dht(DHTPIN,DHTTYPE);
LiquidCrystal_I2C lcd(0x27,16,2);
int trig=9,echo=10,fan=11;
//
void setup(){
  pinMode(fan,OUTPUT);
  pinMode(trig,OUTPUT); pinMode(echo,INPUT);
  dht.begin();
  lcd.init(); lcd.backlight();
  Serial.begin(9600);
}
//
void loop(){
  digitalWrite(trig,HIGH); delayMicroseconds(10); digitalWrite(trig,LOW);
  long distance=pulseIn(echo,HIGH)/58.8;
  Serial.print(distance); Serial.println("cm");
  //
  if(distance<30){
    float humidity=dht.readHumidity();
    float temperature=dht.readTemperature();
    if(isnan(humidity)||isnan(temperature)){ Serial.println("Faild to read from DHT sensor!"); return; }
    Serial.print((int)temperature); Serial.print("*C,");
    Serial.print((int)humidity);    Serial.print("%");
    String humi="Humi: "humi+=(String)humidity;    humi+="%";
    String temp="Temp: "temp+=(String)temperaturetemp+="C";
    lcd.setCursor(0,0); lcd.print(humi);
    lcd.setCursor(0,1); lcd.print(temp);
    if((temp>25)||(humi>50))digitalWrite(fan,HIGH); // 온도 25도 이상, 습도 50% 이상 팬 ON
    else                    digitalWrite(fan,LOW);  // 팬 OFF
    delay(1000);
  }
  //
  delay(500);
}

 

지식iN에다가 질문했는데 master님께서 답변을 해주셔서 알려주신 코드인데요.

이 코드에서 중요한건 제가 설정한 온,습도보다 높으면 팬모터가 작동을 시작하는 건데요.

우선 저는 DC 12V 팬모터(http://www.devicemart.co.kr/1324036?NaPm=ct%3Djn3813nc%7Cci%3Dcheckout%7Ctr%3Dppc%7Ctrx%3D%7Chk%3Ddfa39cc45509d4c14b12880737f4e66a22430201)를 사용하고, 2A L298 모터드라이버 모듈(http://www.devicemart.co.kr/1278835?NaPm=ct%3Djn4248l5%7Cci%3Dcheckout%7Ctr%3Dppc%7Ctrx%3D%7Chk%3D5b7105b842589c13dc681bdb759fa629f72f0bba)과 함께 사용할 예정입니다.

그런데, 제가 구글링을 해서 온습도센서에서 측정한 온습도에서 사용자가 설정한 온습도보다 높을 때에만 팬모터를 작동시키는 코드, 회로도를 보니 릴레이라는 것도 이용하던데요.

혹시 저 코드도 릴레이를 이용해야 원활하게 작동을 하는거지, 모터드라이버 모듈만 이용해도 상관이 없는지 알고 싶습니다.

 

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 1

조회수 1,925

master님의 댓글

master 작성일

L298N은 2A이하로 사용가능한데 팬은 0.5A 정도이므로 문제 없습니다.

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
게시물 검색

Privacy Policy
MCU BASIC ⓒ 2017
모바일버전으로보기