본문 바로가기
아두이노/아두이노 IDE

08. 아두이노 IDE 릴레이제어 [베이직 트레이닝 보드]

by 땜블리 2023. 3. 6.
728x90
반응형
SMALL

안녕하세요 땜블리 입니다.

아두이노와 베이직 트레이닝 보드를 이용한 릴레이 제어 실습을 진행 하겠습니다.

베이직 트레이닝 보드는 아래에서 확인이 가능합니다.

https://ttcw.tistory.com/4

 

라즈베리파이 피코 베이직 트레이닝보드 구성

라즈베리파이 피코 보드의 펌웨어실습을 위한 베이직 트레이닝보드를 소개 합니다. 현재 네이버 스마트스토어에서 판매가 진행되고 있습니다. 라즈베리파이 피코 베이직 트레이닝 보드 라즈베

ttcw.tistory.com

 

1) 릴레이 제어 구동 원리

(1) 동작설명

릴레이는 우리말로 계전기(繼電器)”라고 합니다. 말뜻을 풀어보면 전기(전원)을 잇는 기기라는 뜻입니다

릴레이의 원리는 간단하게 말해서 전원 스위치라고 할 수 있습니다. 입력이 어떤 값에 도달하였을 때 작동하여 다른 회로를 열고 닫는 역할을 하기 때문입니다.

 

릴레이의 내부는 아래 그림과 같이 코일과 전기자, 그리고 코일핀과 NO, COM, NC 핀으로 구성되어 있습니다.

NONormal Open의 뜻으로 전류가 흐르지 않을 경우에는 스위치가 열려 있다고 보면 됩니다. COMCommon Terminal의 뜻으로 공통 단자입니다. 이것은 항상 연결되어야 하는 포트입니다. 마지막으로 NCNormal Close의 뜻으로 전류가 흐르지 않을 경우에 스위치가 닫혀 있다고 보면 됩니다.

(2) 연결방법

연결 표

(3) 코드작성

 

constint BUTTONPIN =2;
constint LEDPIN =13;
constint RELAYPIN =5;
int buttonState;     
int RelayState =HIGH;          
int ledState =HIGH;  
int lastButtonState =LOW;  
unsignedlong lastDebounceTime =0;  
unsignedlong debounceDelay =50;  
void setup() 
{
   Serial.begin(115200);
   pinMode(BUTTONPIN, INPUT);
   pinMode(LEDPIN, OUTPUT);
   pinMode(RELAYPIN, OUTPUT);
   
   digitalWrite(LEDPIN, ledState);
   digitalWrite(RELAYPIN, RelayState);
}
void loop() 
{
int reading =digitalRead(BUTTONPIN);
if (reading != lastButtonState) {
   lastDebounceTime =millis();
  }
if ((millis() - lastDebounceTime) > debounceDelay) {
   
    if (reading != buttonState) {
      buttonState = reading;
      
      if (buttonState ==HIGH) {
        ledState =!ledState;
      }
    }
  }
  
  digitalWrite(LEDPIN, ledState);
  RelayState = ledState;
  digitalWrite(RELAYPIN, RelayState);
  
  lastButtonState = reading;
}
반응형

(3) 동작결과

버튼을 누르때 마다 릴레이가 NC COM 이 연결됬다가 NO COM 연결되었다가 합니다.

 

728x90
반응형
LIST

댓글