Tìm kiếm mã

Giới thiệu về Mô-đun cảm ứng điện dung TTP223 cho Arduino

Giới thiệu về Mô-đun cảm ứng điện dung TTP223 cho Arduino

Trong hướng dẫn này, chúng ta sẽ khám phá mô-đun cảm ứng điện dung TTP223 và cách tích hợp nó với Arduino để tạo ra một công tắc nhạy cảm ứng. TTP223 là một mô-đun đơn giản và hiệu quả cho phép bạn bật hoặc tắt các thiết bị như rơ-le hoặc đèn chỉ bằng một lần chạm. Dự án này sẽ trình bày cách kết nối mô-đun và viết một chương trình Arduino cơ bản để đọc tín hiệu cảm ứng và điều khiển thiết bị đầu ra. Mã và cách đi dây cho dự án này sẽ được giải thích chi tiết để bạn có thể dễ dàng tái tạo thiết lập. Đối với những người học trực quan, tôi khuyên bạn nên xem video hướng dẫn liên quan để làm rõ quá trình thiết lập và lập trình (trong video tại 03:15).

Giải thích về Phần cứng

Mô-đun cảm ứng điện dung TTP223 là một thiết bị nhỏ gọn và dễ sử dụng, phát hiện đầu vào cảm ứng thông qua cảm biến điện dung. Nó có một chân đầu ra duy nhất chuyển sang mức cao khi phát hiện cảm ứng, khiến nó trở nên lý tưởng cho các ứng dụng mà bạn muốn điều khiển thiết bị điện tử chỉ bằng một lần chạm đơn giản. Mô-đun hoạt động ở điện áp cung cấp từ 2,0 đến 5,5 volt, tương thích với hầu hết các bo mạch Arduino. Mô-đun thường có một vài chân: VCC để cấp nguồn, GND để nối đất và chân đầu ra gửi tín hiệu khi phát hiện cảm ứng. Chân đầu ra này có thể được kết nối với một chân đầu vào kỹ thuật số trên Arduino, cho phép bạn đọc trạng thái cảm ứng một cách dễ dàng. Mô-đun TTP223 đặc biệt hữu ích trong các dự án mà công tắc vật lý không được mong muốn.

Chi tiết từ Bảng dữ liệu

Nhà sản xuấtSeeed Studio
Số bộ phậnTTP223
Điện áp Logic/IO2,0 – 5,5 V
Điện áp cung cấp2,0 – 5,5 V
Dòng điện đầu ra20 mA tối đa
Dòng điện đỉnh30 mA
Nhiệt độ hoạt động-40 đến 85 °C
Kiểu đóng góiTO-220

  • Đảm bảo điện áp cung cấp phù hợp (2,0 – 5,5 V) để tránh làm hỏng mô-đun.
  • Chân đầu ra có thể được kết nối với bất kỳ chân kỹ thuật số nào trên Arduino.
  • Kết nối chân GND với chân nối đất của Arduino.
  • Giữ mô-đun tránh xa các nguồn nhiễu điện để tránh kích hoạt sai.
  • Sử dụng điện trở kéo lên nếu cần thiết để có kết quả đọc ổn định.

Hướng dẫn Đi dây

Để kết nối mô-đun cảm ứng điện dung TTP223 với Arduino của bạn, hãy bắt đầu bằng cách kết nối chân VCC trên mô-đun với chân 5V trên Arduino. Tiếp theo, kết nối chân GND trên mô-đun với một trong các chân GND trên Arduino. Chân đầu ra của TTP223, nơi gửi tín hiệu cảm ứng, nên được kết nối với một chân kỹ thuật số trên Arduino, ví dụ như chân 2. Nếu bạn đang sử dụng rơ-le với mô-đun cảm ứng, hãy kết nối chân điều khiển rơ-le với một chân kỹ thuật số khác, chẳng hạn như chân 8. Đảm bảo rằng nguồn điện của rơ-le được kết nối đúng cách theo thông số kỹ thuật của nó. Nếu bạn sử dụng nhiều mô-đun cảm ứng, bạn có thể kết nối các chân đầu ra bổ sung với các chân kỹ thuật số khác trên Arduino và lặp lại quy trình đi dây tương ứng.

Ví dụ Mã & Hướng dẫn Chi tiết

Đoạn mã sau khởi tạo các chân và thiết lập giao tiếp nối tiếp. Biến touchPin được kết nối với đầu ra của mô-đun TTP223, trong khi relayPin điều khiển rơ-le.

int touchPin = 2; // kết nối đầu ra từ TTP223 với chân này
int relayPin = 8; // Kết nối với rơ-le

void setup() {
  Serial.begin(9600);
  pinMode(touchPin, INPUT); 
  pinMode(relayPin, OUTPUT);
}
Mã này khởi tạo mô-đun cảm ứng và chân rơ-le, chuẩn bị chúng để sử dụng trong hàm loop. Lệnh Serial.begin(9600) đặt tốc độ truyền cho giao tiếp nối tiếp, cho phép bạn theo dõi trạng thái cảm ứng qua Serial Monitor. Trong vòng lặp, chương trình kiểm tra trạng thái của đầu vào cảm ứng và chuyển đổi rơ-le tương ứng. Nếu phát hiện cảm ứng, nó in "Touched" ra Serial Monitor và bật rơ-le.

void loop() {
  val = digitalRead(touchPin); 
  if(val == 1) {
    Serial.println("Touched");
    digitalWrite(relayPin, LOW); // bật rơ-le
  }
  delay(100);
}
Đoạn trích này minh họa cách đầu vào cảm ứng được đọc và xử lý. Hàm digitalRead(touchPin) kiểm tra xem cảm ứng đã được phát hiện hay chưa. Nếu có, rơ-le được kích hoạt bằng cách đặt relayPin ở mức LOW.

Trình diễn / Điều gì sẽ xảy ra

Khi bạn chạy mã và chạm vào mô-đun TTP223, bạn sẽ thấy "Touched" được in trong Serial Monitor, cho biết cảm ứng đã được phát hiện. Rơ-le kết nối với relayPin cũng sẽ được kích hoạt, cho phép bạn điều khiển bất kỳ thiết bị nào kết nối với nó. Hãy lưu ý đến hiệu ứng chống nhiễu; nếu bạn chạm vào cảm biến quá nhanh, nó có thể ghi nhận nhiều lần chạm. Đối với một thiết lập phức tạp hơn, bạn có thể thêm nhiều mô-đun TTP223 để điều khiển các thiết bị khác nhau. Mỗi mô-đun có thể được kết nối với một chân đầu vào riêng biệt và được quản lý trong cùng một hàm loop, cho phép điều khiển linh hoạt nhiều đầu ra (trong video tại 10:45).

Mốc thời gian Video

  • 00:00 - Giới thiệu về Mô-đun TTP223
  • 03:15 - Hướng dẫn Đi dây
  • 05:30 - Hướng dẫn Mã
  • 10:45 - Trình diễn Mô-đun Cảm ứng
8-The source code for the TTP223 touch module for Arduino
Ngôn ngữ: C++
/*
 * This is the Arduino code for a TTP223 Touch module switch.
 * By touching the module, the pin 8 sends a signal to turn the relay or switch ON.
 * 
 * Written by Ahmad S. for Robojax.com 
 * Date: April 1, 2017, in Ajax, Ontario, Canada
 * Permission granted to share this code, given that this
 * note is kept with the code.
 * Disclaimer: This code is "AS IS" and for educational purposes only.
 * 
 */

int touchPin = 2;// connect output from TTP223 to this
int val = 0; 
int relayPin = 8;// Connected to relay

void setup() {
 Serial.begin(9600);
 pinMode(touchPin, INPUT); 
  pinMode(relayPin, OUTPUT);

}

void loop() {
  digitalWrite(relayPin, HIGH);
  val = digitalRead(touchPin); 
  if(val ==1){
  Serial.println("Touched");
  digitalWrite(relayPin, LOW);
  }
  delay(100);
  Serial.println();
}
9-The source code for the TTP223 touch module for Arduino for a two-touch module
Ngôn ngữ: C++
/*
 * This is the Arduino code for a TTP223 touch module switch.
 * By touching the module, the pin 8 is sending a signal to turn the relay or switch ON.
 * 
 * Written by Ahmad S. for Robojax.com 
 * Date: April 1, 2017, in Ajax, Ontario, Canada
 * Permission granted to share this code, given that this
 * note is kept with the code.
 * Disclaimer: This code is "AS IS" and for educational purposes only.
 * 
 */

 // 1st channel
int touchPin1 = 2;// connect output from TTP223 to this
int val = 0; 
int relayPin = 8;// Connected to relay

 // 2nd channel
int touchPin2 = 3;// connect output from TTP223 to this
int val2 = 0; 
int relayPin2 = 9;// Connected to relay

void setup() {
 Serial.begin(9600);
 pinMode(touchPin, INPUT); // input from touch
 pinMode(relayPin, OUTPUT);// output to relay
 
  pinMode(touchPin2, INPUT); // input from touch (2)
 pinMode(relayPin2, OUTPUT);// output to relay (2)

}

void loop() {
 // start of channel 1 code 
  digitalWrite(relayPin, HIGH);// set the relay to HIGH (if your relay is low-trigger. If not, remove this line)
  val = digitalRead(touchPin); // read channel 1 touch module value
  if(val ==1){
  Serial.println("Channel 1 Touched");
  digitalWrite(relayPin, LOW);// turn relay (of switch) 1 ON
  }
  delay(100);
  Serial.println();
   // end of channel 1 code 
  
 // start of channel 2 code   
  digitalWrite(relayPin2, HIGH);// set the relay to HIGH (if your relay is low-trigger. If not, remove this line)
  val2 = digitalRead(touchPin2); // read channel 2 touch module value
  if(val2 ==1){
  Serial.println("Channel 2 Touched");
  digitalWrite(relayPin2, LOW);// turn relay (of switch) 2 ON
  }
  delay(100);
  Serial.println();
  // end of channel 2 code 
}

Tài nguyên & tài liệu tham khảo

Chưa có tài nguyên nào.

Tập tin📁

Các tập tin khác