Skip to content
조회 수 11935 추천 수 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
번호 분류 제목 날짜 조회 수
34 [Docs]스프레드시트 음력변환 2014.11.11 17854
33 [Docs]스프레드시트 스프레드시트의 내용이 수정될 경우 즉시 메일발송하는 스크립트 테스트 중 file 2018.01.19 7642
32 [Docs]스프레드시트 스프레드시트의 값의 변화에 따라 지메일로 메일을 보내는 스크립트 2023.03.10 1661
31 [Docs]스프레드시트 스프레드시트에서 수정, 삭제 버튼 만들기 2023.03.09 1821
30 [Docs]스프레드시트 스프레드시트에서 삽입 버튼 만들기(chatGPT 에게 물어봄) 2023.03.09 1438
29 [Docs]스프레드시트 스프레드시트에서 검색 버튼 만들기 2023.03.09 2139
28 [Docs]스프레드시트 스프레드시트 함수 2020.12.27 4825
27 [Docs]스프레드시트 스프레드시트 스크립트 소스 2020.12.26 4892
26 [Docs]스프레드시트 스프레드시트 autohotkey html gmail 스마트폰 이용하여 핑로스 즉시 알림받기 file 2018.01.25 10578
25 [Docs]스프레드시트 스프레드시트 api append & update php 셀 내용 수정 4 2016.08.08 5314
24 [Docs]스프레드시트 스프레드 웹게시로 불러오기 1 2016.06.24 4725
23 [Docs]스프레드시트 쇼킹한 웹 긁어오기 2014.11.11 3903
22 [Docs]스프레드시트 구글캘린더 CSV 파일로 일괄 기록하기 file 2018.08.31 12295
21 [Docs]스프레드시트 구글드라이브 API file 2015.07.09 4545
20 [Docs]스프레드시트 구글 앱스 스크립트(Google Apps Script) 외부에서 실행하기 2019.01.09 6807
19 [Docs]스프레드시트 구글 앱스 스크립트(Google Apps Script) 외부에서 실행하기 2 2019.01.09 7050
18 [Docs]스프레드시트 구글 스프레드시트에서 셀값이 특정일에서 현재일과 3일 이내의 범위에 들어오면 이메일을 발송하는 방법 2023.03.26 40464
17 [Docs]스프레드시트 구글 스프레드시트에서 O열=입금완료 가 있는 행은 행 전체가 노란색으로 변하게 하기 2023.03.24 10050
16 [Docs]스프레드시트 구글 스프레드시트를 이용한 지메일 예약발송 방법 file 2017.04.30 10790
15 [Docs]스프레드시트 구글 스프레드시트(Google Spreadsheet)를 데이터베이스로 활용하기 file 2015.07.20 5099
Board Pagination Prev 1 2 Next
/ 2

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소