본문 바로가기

Embedded System/Arduino Board

[Arduino] 아두이노 슬라이드 스위치로 LED제어 (10)

반응형

 


 

안녕하세요.

저번시간에 택트스위치에 대해서 다룬것에 이어서 슬라이드 스위치를 소개하겠습니다.


슬라이드 스위치(Slide Switch)는 물리적으로 슬라이드 메커니즘을 통해 전기 회로를 연결하거나 차단하는 스위치입니다. 주로 다양한 전자기기에서 모드 전환, 전원 제어 등의 용도로 사용됩니다. 슬라이드 스위치는 조작이 간편하고 직관적이어서 사용자가 쉽게 상태를 확인하고 제어할 수 있습니다.

※1. 슬라이드 스위치의 구조 및 작동 원리

슬라이드 스위치의 구조 및 작동 원리

구조

  1. 슬라이더(Slider): 손가락으로 밀거나 당기는 부분으로, 슬라이더를 이동시켜 전기적 연결을 변경합니다.
  2. 터미널(Terminal): 슬라이드 스위치의 핀으로, 주로 3개의 핀이 있습니다.
    • 공통 핀(Common Pin): 보통 가운데 위치한 핀으로, 슬라이더가 이 핀과 연결됩니다.
    • NO(Normally Open) 핀: 슬라이더가 한쪽으로 이동했을 때 연결되는 핀입니다.
    • NC(Normally Closed) 핀: 슬라이더가 반대쪽으로 이동했을 때 연결되는 핀입니다.
  3. 하우징(Housing): 스위치의 외부 구조물로, 내부 메커니즘을 보호하고 슬라이더의 움직임을 안내합니다.

작동 원리

슬라이더를 이동시키면 공통 핀이 NO 핀 또는 NC 핀과 전기적으로 연결됩니다. 슬라이드 스위치는 주로 두 가지 상태를 가질 수 있습니다:

  • ON 상태: 슬라이더가 NO 핀과 연결된 상태로, 회로가 닫히고 전기가 흐릅니다.
  • OFF 상태: 슬라이더가 NC 핀과 연결된 상태로, 회로가 열리고 전기가 흐르지 않습니다.

 

슬라이드 스위치를 아두이노에서 사용하기

회로 구성

  1. 슬라이드 스위치 연결: 슬라이드 스위치에는 세 개의 핀이 있습니다.
    • 가운데 핀을 아두이노의 디지털 핀 (예: D2)과 연결.
    • 한쪽 핀을 GND에 연결.
    • 다른 쪽 핀을 VCC (5V)에 연결. 

 

※2. Wiring (배선 연결)

저항은 330ohm(200~1000ohm 추천) 하였습니다. 참고로 스위치에 풀업/풀다운 저항을 더해주면 더 좋습니다.

 

 

 

※3. 소스코드 및 동작

스위치를 슬라이딩 하여 LED를 껏다 켰다하는 코드를 실행해 보겠습니다.

1. 소스코드

스위치를 슬라이딩 하여 LED를 껏다 켰다하는 코드를 실행해 보겠습니다.  (소스코드는 첨부파일 제공해 드리겠습니다.)

8_Slide_SPDT_SW_PullUp.ino
0.00MB

// 스위치 출력이 연결된 디지털 핀 번호
const int switchPin = 3;

// LED가 연결된 디지털 핀 번호
const int ledPin = 2;

// 스위치 상태를 저장하는 변수
int switchState = 0;

void setup() {
  //스위치 핀을 입력으로 설정
  pinMode(switchPin, INPUT);
  
  // 스위치의 기본 상태 설정
  digitalWrite(switchPin, LOW);

  // LED 핀을 출력으로 설정
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // 스위치의 상태를 읽어옴
  switchState = 0;
  digitalWrite(ledPin, LOW);
  switchState = digitalRead(switchPin);

  // 만약 스위치가 눌리면
  if (switchState == LOW) {
    // LED를 켬
    digitalWrite(ledPin, HIGH);
  }
}

 

2. 하드웨어 연결 및 동작 확인

슬라이드 토글의 위치에 따라 LED가 On/Off 됨을 확인할 수 있습니다.

 

 

 

 

이상으로 아두이노에서 슬라이드 스위치를 통해 LED를 다루는 방법에 대한 설명을 마치겠습니다.

다름 포스트에서 여러개의 LED를 다루는 방법에 대해 다루겠습니다.

감사합니다.

 

반응형