Skip to content
조회 수 11937 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

Arduino 특정시간 제어와 릴레이 다루기

 

 

LED 기본예제 소스(1초 단위로 LED 깜박이기)

void setup() {
    pinMode(13, OUTPUT);
}

void loop() {
    digitalWrite(13, HIGH);
    delay(1000);
    digitalWrite(13, LOW);
    delay(1000); 
}
 
 

딜레이효과 소스

unsigned long previousMillis = 0; 
const long interval = 1000;

void loop() {
  unsigned long currentMillis = millis();
  
  if(currentMillis - previousMillis >= delayTime){
    previousMillis = currentMillis;
    원하는 동작;
  }  
}
 

두 코딩을 합치면

int led = 13; //Red LED 핀번호
unsigned long previousMillis = 0; //이전시간
const long delayTime = 1000; //1초(1000) 대기시간
boolean ledState = false; //LED 현재상태

void setup() {
  pinMode(led, OUTPUT); //13번 핀을 출력모드로 사용.
}

void loop() {
  unsigned long currentMillis = millis(); //현재시간값 가져옴
  
  if(currentMillis - previousMillis >= delayTime){ //1000초 시간이 흘렀는지 체크
    previousMillis = currentMillis; //1초가 지나 참임으로 1초 지난 현재시간을 이전시간에 저장
    ledState=!ledState;   //1초 if문이 참이니깐 1초 단위로 ledState 값을 반전시키면 1초 단위로 참/거짓됨.
    digitalWrite(led, ledState);   //참(5V) or 거짓(0V) 
  }  
}

코드 주석을 달아 놓았으니깐 따로 설명은 필요 없겠죠.

 

##소스##

10초간 릴레이가 ON 되고 5초간 OFF 되는 프로그램

사실 소스는 별거 없다. 어떤 센서를 이용하여 어떤 상황에서 전원을 ON/OFF를 할지가 가장 중요하다.

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
//KY019 5V 릴레이 모듈
 
int relay = 10//릴레이에 5V 신호를 보낼 핀설정
void setup ()
{
  pinMode (relay, OUTPUT); // relay를 output으로 설정한다.
}
void loop ()
{
  digitalWrite (relay, HIGH); // 릴레이 ON
  delay (10000);              //10초 delay
  digitalWrite (relay, LOW); // 릴레이 OFF
  delay (5000);               //5초 delay
}
 
 
cs

 

##결과##

나의 경우엔 헤어드라이어를 아두이노에서 ON/OFF 해 보았다. 

프로그램대로 10초간 전원이 연결되어 켜지고, 5초간 전원이 차단되어 꺼진다.



 

 

 

 

 

 

 

 

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
33 회로도전자부품 BUILD FM TRANSMITTER CIRCUIT (제작완료) file 2014.04.15 4238
32 회로도전자부품 BOOST LIST file 2013.10.12 16321
31 회로도전자부품 BN39-01154W 단자구성도 file 2013.12.31 12863
30 AVR AVR의 기초 3 2012.07.18 6502
29 AVR arduino에서 5V Relay Module 을 이용하여 220V 교류 제어 2 2012.08.03 6583
» AVR Arduino 특정시간 제어와 릴레이 다루기 2019.06.13 11937
27 AVR ARDUINO 명령어 모음 3 2012.07.24 22842
26 회로도전자부품 Arduino Frequency Counter Library file 2014.01.20 30800
25 회로도전자부품 AM/FM 라디오 구조(회로도 설명) 1 2014.04.02 25327
24 회로도전자부품 AM FM one transistor am transmitter & Reciver 1 2014.03.04 8962
23 회로도전자부품 AC 모터 정역회전 file 2018.11.06 12311
22 회로도전자부품 AC to DC Converter file 2013.09.09 18150
21 AVR 5V로 정전압 출력하기 2013.06.28 11837
20 회로도전자부품 555타이머의 Duty-Cycle을 55%이하로 사용시 회로도 file 2013.10.29 14582
19 회로도전자부품 555타이머(555 timer 60Hz clock circuit) file 2017.11.02 5513
18 AVR 555 타이머 회로 응용 1 2012.08.03 8109
17 회로도전자부품 555 Timer Led 교차하여 깜빡이기 2013.10.15 18153
16 회로도전자부품 555 timer Brigde control 2013.09.21 14462
15 회로도전자부품 555 TIMER AM TRANSMITTER CIRCUIT(AM 송신 회로) 2015.12.01 3691
14 AVR 555 TIMER AM TRANSMITTER CIRCUIT(AM 송신 회로) file 2014.09.20 23298
Board Pagination Prev 1 ... 9 10 11 12 13 Next
/ 13

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소