본문 바로가기
아두이노 센서

[센서/터치] 정전식 터치 센서를 통해 손가락 터치를 감지한다

by 작동미학 2015. 6. 22.
반응형

살짝 터치하는 것만으로 아두이노를 제어해보면 어떨까?

 

▶ 이 가이드를 따라하면

- Digital pin으로 터치시마다 신호를 주는 센서를 활용한다.

 

▶ 먼저 읽으면 좋은 글

- Arduino 일반 : http://bbangpan.tistory.com/1

 

▶ 부품 설명 및 회로 구성

터치 센서는 감압식(내리 누르는 힘으로 인지)과 정전식이 있는데, Arduino에서도 간단한 정전식 터치 센서를 판매한다. 작동 방식은 단순해서, 터치하고 있으면 digital output으로 1을 출력해주는 방식이다. 터치를 떼면, 곧바로 0으로 돌아간다.

<Touch sensor/전원이 연결되면 불이 들어온다>

상단 동그라미 영역에 손가락을 가져다 대면 센서의 SIG pin에 전압이 인가된다(1이 된다). 배선도 간단하여 SIG->D11, GND->GND, VCC->5V로 연결한다.

SIG는 Arduino의 digital input기능을 통해 신호를 읽어내게 된다.

<Piezo disk vibration sensor와 Arduino 연결>

터치는 스위치보다 힘이 덜 들고 자연스러우므로, 각종 손쉬운 제어에 활용할 수 있다. 화면 전환, 기능 변경 등 다양하게 활용해보자.


▶ 소스 코드 입력 및 구동

매우 간단한 소스를 구동하면 된다. 인터넷상의 소스를 참조하였다. 참조로 터치를 인식하면 13번 ledPin에 1을 걸어주어, Arduino 보드에 불이 들어오도록 하였다.

 

http://www.bbangpan.com  -------------------------------------------------------------------------------------------------------------

const int TouchPin=11;

const int ledPin=13;

int status = 0;

 

void setup() {

pinMode(TouchPin, INPUT);

pinMode(ledPin,OUTPUT);

digitalWrite(ledPin,LOW);

Serial.begin(9600);

}

 

void loop() {

int sensorValue = digitalRead(TouchPin);

if(sensorValue==1)

{

digitalWrite(ledPin,HIGH);

} else {

digitalWrite(ledPin,LOW);

}

Serial.println(sensorValue);

delay(10);

}

 

소스를 컴파일 및 구동한 후, 10ms마다 검사하므로 빠르게 스크롤되는데, 터치하는 동안 신호가 1로 바뀌고, LED에 불이 들어오는 것도 확인할 수 있다. 스마트폰처럼 아주 작은 터치에도 반응한다.

<Serial Monitor 터치 측정 화면>

<터치시 LED(빨간색 박스)에 불이 들어오는 것을 알 수 있다>

 

▶ 구매 가이드

터치 센서 : http://www.aliexpress.com/premium/touch-sensor-arduino.html?ltype=wholesale&SearchText=touch+sensor+arduino&d=y&origin=y&initiative_id=SB_20150622040059&isViewCP=y&catId=0 ($1~$2)

 

강의 키워드

Arduino UNO, 아두이노, capacitive touch sensor, 정전식 터치 센서

 

 

반응형