아두이노 우노 R4 - 터치 센서

터치 센서, 터치 버튼 또는 터치 스위치라고도 하는 것은 일반적으로 터치 램프와 같은 장치를 작동하는 데 사용됩니다. 이는 일반 버튼과 똑같이 작동합니다. 많은 새로운 장치들이 전통적인 버튼 대신 터치 센서를 사용하는데, 이는 제품을 더 매끈하게 보이도록 도와주기 때문입니다.

이 가이드에서는 터치 센서를 Arduino UNO R4와 함께 사용하는 방법을 배웁니다.

아두이노 UNO R4 터치 센서

Hardware Preparation

1×Arduino UNO R4 WiFi Amazon
1×Arduino UNO R4 Minima (Alternatively) Amazon
1×USB Cable Type-C 쿠팡 | Amazon
1×Touch Sensor 쿠팡 | Amazon
1×Jumper Wires Amazon
1×(Recommended) Screw Terminal Block Shield for Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Breadboard Shield For Arduino UNO R4 쿠팡 | Amazon
1×(Recommended) Enclosure For Arduino UNO R4 Amazon
1×(Recommended) Power Splitter For Arduino UNO R4 Amazon
공개: 이 섹션에서 제공된 링크 중 일부는 제휴 링크입니다. 이 링크를 통해 구매한 경우 추가 비용없이 수수료를 받을 수 있습니다. 지원해 주셔서 감사합니다.

터치 센서에 대해

핀 배치

터치 센서는 세 개의 핀이 있습니다:

  • GND 핀: GND (0V)에 연결
  • VCC 핀: VCC (5V 또는 3.3V)에 연결
  • SIGNAL 핀: 터치하지 않으면 LOW, 터치하면 HIGH 출력. 이 핀을 Arduino UNO R4의 입력 핀에 연결.
터치 센서 핀 배열

작동 방식

  • 센서가 터치되지 않으면 센서의 신호 핀은 LOW입니다.
  • 센서가 터치되면 센서의 신호 핀은 HIGH입니다.

아두이노 UNO R4 - 터치 센서

터치 센서의 SIGNAL 핀은 Arduino UNO R4의 입력 핀에 연결되어 있습니다.

터치 센서가 터치되었는지 여부는 입력 핀으로 설정된 Arduino UNO R4의 핀 상태를 확인하여 알 수 있습니다.

Wiring Diagram

아두이노 UNO R4 터치 센서 배선도

이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.

터치 센서를 위한 프로그래밍 방법

  • pinSerial() 함수로 아두이노 UNO R4 핀을 디지털 입력으로 설정합니다. 예를 들어, 핀 7의 경우.
pinMode(7, INPUT_PULLUP);
  • Arduino UNO R4 핀의 상태를 확인하기 위해 digitalRead() 함수를 사용합니다.
int inputState = digitalRead(7);

※ NOTE THAT:

두 가지 일반적인 시나리오가 있습니다:

  • 첫 번째 시나리오: 입력이 HIGH일 때 동작을 수행하고, 입력이 LOW일 때 반대 동작을 수행합니다.
  • 두 번째 시나리오: 입력이 LOW에서 HIGH로 (또는 HIGH에서 LOW로) 변경될 때 동작을 수행합니다.

우리는 필요에 따라 적절한 시나리오를 선택합니다. 예를 들어, 터치 센서를 사용하여 LED를 제어할 때:

  • 센서가 터치되었을 때 LED를 켜고 터치되지 않았을 때 LED를 끄려면 첫 번째 시나리오가 적합합니다.
  • 센서를 터치할 때마다 LED를 켜고 끄려면 두 번째 시나리오가 적합합니다.

터치 센서 - 아두이노 UNO R4 코드

터치 센서에서 값을 읽고 시리얼 모니터에 출력합니다.

/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-touch-sensor */ #define SENSOR_PIN 7 // The Arduino UNO R4 pin connected to the touch sensor's SIGNAL pin void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // initialize the Arduino's pin as aninput pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: int state = digitalRead(SENSOR_PIN); // print state to Serial Monitor Serial.println(state); }

Detailed Instructions

다음 지침을 단계별로 따르세요:

  • Arduino Uno R4 WiFi/Minima를 처음 사용하는 경우 Arduino IDE에서 Arduino Uno R4 WiFi/Minima 환경 설정에 대한 튜토리얼을 참조하세요.
  • 제공된 다이어그램에 따라 터치 센서를 Arduino Uno R4에 연결하세요.
  • USB 케이블을 사용하여 Arduino Uno R4 보드를 컴퓨터에 연결하세요.
  • 컴퓨터에서 Arduino IDE를 실행하세요.
  • 적절한 Arduino Uno R4 보드(예: Arduino Uno R4 WiFi) 및 COM 포트를 선택하세요.
  • 위의 코드를 복사하여 Arduino IDE로 열어보세요.
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 Arduino UNO R4로 전송하세요.
  • 센서에 손가락을 대었다가 떼세요.
  • 직렬 모니터에서 결과를 확인하세요.
COM6
Send
0 0 1 1 1 1 1 0 0 0 0
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

센서가 터치되거나 해제됨을 감지합니다.

/* * 이 Arduino UNO R4 코드는 newbiely.kr 에서 개발되었습니다 * 이 Arduino UNO R4 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다. * 상세한 지침 및 연결도에 대해서는 다음을 방문하세요: * https://newbiely.kr/tutorials/arduino-uno-r4/arduino-uno-r4-touch-sensor */ #define SENSOR_PIN 7 // The Arduino UNO R4 pin connected to the touch sensor's SIGNAL pin int touch_state; // the current reading from the input pin int prev_touch_state = LOW; // the previous state from the input pin void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); // initialize the Arduino's pin as aninput pinMode(SENSOR_PIN, INPUT); } void loop() { // read the state of the the input pin: touch_state = digitalRead(SENSOR_PIN); if(prev_touch_state == LOW && touch_state == HIGH) Serial.println("The sensor is touched"); else if(prev_touch_state == HIGH && touch_state == LOW) Serial.println("The sensor is is released"); // save the the last state prev_touch_state = touch_state; }

Detailed Instructions

  • 코드를 복사하여 Arduino IDE에서 엽니다.
  • Arduino IDE에서 Upload 버튼을 클릭하여 코드를 Arduino UNO R4에 업로드합니다.
  • 센서 위에 손가락을 대고 유지합니다.
  • 시리얼 모니터에서 결과를 확인합니다.
COM6
Send
The sensor is touched
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • 센서에서 손가락을 떼세요.
  • 직렬 모니터에서 결과를 확인하세요.
COM6
Send
The sensor is touched The sensor is is released
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.

관련 튜토리얼

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!