정전용량 터치 센서 (Capacitive Touch Sensor)이란?

정전용량(Capacitance)이란?


정전용량 터치 센서는 정전용량(Capacitance)의 변화를 통해 터치를 감지하게 됩니다. 

아래 그림에서 보내는 쪽 (아두이노의 5V)에서는 출력신호를 보내고, 받는 쪽 (아두이노의 digital 혹은 analog 입력)에서는 신호를 받으면서 전하량을 체크합니다.


e508b579018abad8627eb0001df14b70_1538901

 


이 때, 사람이 손을 가까이 가져가게 되면, 전하를 끌어당기게 되고, 사람이 소위 Csensed의 콘덴서/캐패시터와 같은 역할을 하게 됩니다. 


캐패시터의 원리는 다음의 링크를 참고해주세요.

콘덴서란? https://blog.naver.com/roboholic84/221142497794


이 때, 커패시터는 저항값을 가지게 되는데, 이를 임피던스라고 합니다. 저항, 코일, 캐패시터는 각각 임피던스라는 값을 가지며, 이에 대해서는 다음의 링크를 참고해주세요. 

임피던스란? https://blog.naver.com/roboholic84/221144559818


결국, 이렇게 임피던스라는 저항값이 증가하게 되어, Receive pin이 받게 되는 전압이 줄어들게 되는 것입니다. 

주파수가 있는 교류에서 저항을 설명할 때, 임피던스를 사용한다고 보면 됩니다. 


저항(resistor)와 임피던스(impedance)의 동사인 resist와 impeded를 영어사전에서 찾아보면 다음과 같음을 알 수 있습니다. 

e508b579018abad8627eb0001df14b70_1538901

e508b579018abad8627eb0001df14b70_1538901

정전용량(Capacitance) 터치센서의 구현


정전용량 터치센서를 구현하기 위해서는 정말 간단히 저항 하나만 있으면 됩니다. 

다음과 같이 아두이노에 저항 (1M 이상)의 저항을 연결하게 되면 어렵지 않게 센서로서의 사용이 가능합니다.

5.1M의 저항을 한 쪽은 아두이노의 5V에 저항의 다른 한 쪽은 아날로그 0번 핀에 연결합니다. 
그리고, 아날로그 0번 핀의 다리를 만지면, 내장된 LED가 켜졌다꺼졌다함을 확인할 수 있습니다. 

e508b579018abad8627eb0001df14b70_1538902



아두이노 소스코드

 void setup() {

  // put your setup code here, to run once:

  pinMode(13, OUTPUT);

  Serial.begin(9600);

  digitalWrite(13, LOW);

}

 

void loop() {

  int touch = analogRead(A0);

  if (touch < 500)

  {

    digitalWrite(13, HIGH);

  }

  else

  {

    digitalWrite(13, LOW);

  }

}

 


메이키메이키의 터치센서 원리도 위와 같습니다. 

더 많은 컨텐츠와 교육 정보는 메카솔루션 사이트를 방문해주세요.

 

- 메카솔루션 (www.mechasolution.com)



 

 


 


 

 


 

▶아래 플러스 친구 버튼을 통해 다양한 정보와 교제 자료 및 이벤트등의 소식을 받아보실 수 있습니다.




모바일 버전으로 보기