Skip to content
회로도전자부품
2020.06.13 14:22

아두이노NANO 스위치로 릴레이 제어하기

조회 수 7240 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

아두이노 스위치로 릴레이 제어하기

 

음,, LOW가 0이고 HIGH가 1이네?

스위치가 눌려진 상태가 0, 안누른 상태가 1

릴레이가 켜진상태가 0, 안켜진 상태가 1

LED가 켜진상태가 0, 안켜진 상태가 1

해본지가 오래되어서 기억이 잘 안나네... 

새롭다!

 

 

//KY019 5V 릴레이 모듈

int sw1 = 4;

int sw2 = 5;

int sw3 = 7;

int led1 = 11;

int led2 = 12;

int led3 = 13;

int relay = 10; //릴레이에 5V or 12V 신호를 보낼 핀설정

int sw_mode = 1;

 

void setup ()

{

  pinMode (sw1, INPUT_PULLUP);

  pinMode (sw2, INPUT_PULLUP);

  pinMode (sw3, INPUT_PULLUP);

  pinMode (led1, OUTPUT);

  pinMode (led2, OUTPUT);

  pinMode (led3, OUTPUT);

  pinMode (relay, OUTPUT); // relay를 output으로 설정한다.

  Serial.begin(9600);

}

 

 

void loop ()

{

 

  if (digitalRead(sw1) == LOW)

    sw_mode = 1;

 

  if (digitalRead(sw2) == LOW)

    sw_mode = 2;

 

  if (digitalRead(sw3) == LOW)

    sw_mode = 3;

 

Serial.print(digitalRead(sw1));

Serial.print(" / ");

Serial.print(digitalRead(sw2));

Serial.print(" / ");

Serial.println(digitalRead(sw3));

 

 Serial.print("스위치모드 : ");

 Serial.println(sw_mode);

 

  switch (sw_mode)

  {

    case 1 : digitalWrite(led1,  LOW);

      digitalWrite(led2, HIGH);

      digitalWrite(led3, HIGH);

      Serial.print(sw_mode);

      Serial.println("스위치모드 : 이 선택되어 10분간 ON 후 10분간 OFF 시작합니다.");      

      digitalWrite (relay, LOW); // 릴레이 ON

      delay (600000);              //10분 delay

      digitalWrite (relay, HIGH); // 릴레이 OFF

      delay (600000);              //10분 delay

      break;

 

    case 2 : digitalWrite(led1, HIGH);

      digitalWrite(led2, LOW);

      digitalWrite(led3, HIGH);

      Serial.print(sw_mode);

      Serial.println("스위치모드 : 이 선택되어 10분간 ON 후 30분간 OFF 시작합니다.");            

      digitalWrite (relay, LOW); // 릴레이 ON

 

      

      delay (600000);              //10분 delay

      digitalWrite (relay, HIGH); // 릴레이 OFF

      delay (1800000);              //30분 delay

      break;

 

    case 3 : digitalWrite(led1, HIGH);

      digitalWrite(led2, HIGH);

      digitalWrite(led3,  LOW);

      Serial.print(sw_mode);

      Serial.println("스위치모드가 선택되어 30분간 ON 후 1시간 OFF 시작합니다.");            

      digitalWrite(relay, LOW); // 릴레이 ON

      delay (1800000);              //30분 delay

      digitalWrite (relay, HIGH); // 릴레이 OFF

      delay (3600000);              //1시간 delay

      break;

  }

 

 

}

 

 

#아두이노 #스위치로 #릴레이 #제어하기 #ARDUINO #NANO #RELAY #CONTROL

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

?

List of Articles
번호 분류 제목 날짜 조회 수
253 회로도전자부품 1-200 transistor circuits(트랜지스터 회로 200가지) 2014.03.25 10376
252 회로도전자부품 1.5V to 5V/12V DC/DC Converter with LT1073 2013.10.12 24718
251 회로도전자부품 1.5V 단일 트랜지스터 FM 송신기 만들기 file 2014.01.09 9735
250 회로도전자부품 1석 오디오 회로도 file 2014.01.14 7287
249 AVR 2 TRANSISTOR CIRCUITS 2015.11.25 4529
248 AVR 2 트랜지스터 비안정 바이브레이터 회로(펄스) 1 2015.11.25 5117
247 회로도전자부품 2.4Ghz Bi-Quad Antenna 2015.07.07 1827
246 회로도전자부품 2.4Ghz 안테나 file 2015.07.02 1247
245 회로도전자부품 2.7V 500F 슈퍼캡 충전시키기 file 2016.02.16 1787
244 AVR 2k fm 2014.12.15 5195
243 회로도전자부품 2n2222 Esaki Effect 트랜지스터 주파수 발생기 2019.08.22 6826
242 회로도전자부품 2석 오디오(트랜지스터 오디오) file 2014.02.07 9837
241 회로도전자부품 555 PWM 회로 단계 동영상 2013.08.31 21473
240 회로도전자부품 555 TIMER AM TRANSMITTER CIRCUIT(AM 송신 회로) 2015.12.01 3700
239 AVR 555 TIMER AM TRANSMITTER CIRCUIT(AM 송신 회로) file 2014.09.20 23341
238 회로도전자부품 555 timer Brigde control 2013.09.21 14467
237 회로도전자부품 555 Timer Led 교차하여 깜빡이기 2013.10.15 18163
236 AVR 555 타이머 회로 응용 1 2012.08.03 8134
235 회로도전자부품 555타이머(555 timer 60Hz clock circuit) file 2017.11.02 5532
234 회로도전자부품 555타이머의 Duty-Cycle을 55%이하로 사용시 회로도 file 2013.10.29 14622
Board Pagination Prev 1 2 3 4 5 ... 13 Next
/ 13

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


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

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

설치 취소