진동을 감지하면 on 디지털 신호를 보내주는 기본 센서입니다.(KY-031) 직접 누르는게 아니라 주변을 두드린다는 점을 빼면 그냥 스위치로 보셔도 될 것 같습니다. 특정한 노크 패턴으로 도어락 해제하는 장치를 만드는데 사용할 수 있겠네요.

피에조 센서도 이와 비슷한 역할을 하는데 피에조 센서는 출력을 아날로그 신호로 보내줍니다.

 

센서는 3개의 핀을 가지고 있습니다. VCC, GND, Signal(digital) 입니다. 아래와 같이 연결하면 됩니다.

아두이노-센서 : 3.3V – VCC, GND – GND, D4 – Signal

 

사용방법은 간단해서 D4 디지털 핀으로 들어오는 입력이 HIGH(knocking 감지) 인지 LOW 인지 확인하면 됩니다.

 

int Led = 13;// define LED Interface
int Shock = 3;// define the percussion Sensor Interface
int val;// define numeric variables val

void setup ()
{
   pinMode (Led, OUTPUT) ;// define LED as output interface
   pinMode (Shock, INPUT) ;// define knock sensor output interface
}

void loop ()
{
   val = digitalRead (Shock) ;// read digital interface is assigned a value of 3 val
   if (val == HIGH) // When the percussion when the sensor detects a signal, LED flashes
   {
      digitalWrite(Led, LOW);
   }
   else
   {
      digitalWrite(Led, HIGH);
   }
}