본문 바로가기

메이커 이야기/아두이노

[아두이노] 리미트 스위치(Limit Switch) 활용하기

반응형

○ 아두이노 리미트 스위치 활용

리미트 스위치(Limit Switch)??

  ■ 리미트 스위치의 활용 용도는 다양한 분야에서 사용되고 있습니다. 작은 기기부터 큰 플랜트 설비에서 까지 다양한 산업분야에서 활용      이 되어지고 있습니다.
  말 그대로 Limit Switch는 제한한 영역을 넘어가지 않도록 하기 위해 설치되는 스위치로 일반 사용되는 스위치와 그 원리가 똑같다고 보시면 될 것 같습니다.
  다만 활용되는 용도가 일정 범위를 벗어나지 않게 하기 위함이기 때문에 리미트 스위치라고 보시면됩니다.

  리미트 스위치는 작동되는 원리 또는 설치되는 위치에 따라 그 원리가 달라지게 되는데요. 크게, 기계식과 전자식 정도로 나눌 수 있을 것 같습니다. 기계식은 실제로 스위치를 누르는 현상이 발생하도록 설계하여 작동하는 스위치이며, 전자식은 레이저 등.. 여러가지 센서를 활용하여 거리를 측정 혹은 위치를 측정함으로써 그 역할을 한다고 보시면 됩니다. 전자식은 조금 더 최신식으로 보이나, 아직 까지 기계식만큼 안전한 스위치는 없는 것 같습니다.

오늘 제가 다뤄볼 스위치는 바로 기계식 스위치입니다.
마이크로 리미트 스위치인데요. 아주 값싼 가격에 구입이 가능하답니다!!

저는 Limit Switch 2개를 사용해서 양 측면에서 신호가 발생될 때 값을 받아오는 것을 해보았습니다.

회로도는 아래와 같습니다.


각 스위치를 누르면 3, 4번 핀에서 값을 읽도록 셋팅해 두었습니다.

적용코드는 아래와 같이 코딩해보았습니다.

#define SWITCH1 3
#define SWITCH2 4

void setup() {
  pinMode(SWITCH1, INPUT);
  pinMode(SWITCH2, INPUT);
  Serial.begin(9600);
}

void loop() {
  if(digitalRead(SWITCH1) == HIGH){
      Serial.println("SWITCH1");
  }
   if(digitalRead(SWITCH2) == HIGH){
      Serial.println("SWITCH2");
  }
}




반응형