- Cảm biến cảm ứng điện dung là gì?
- Vật liệu thiết yếu
- Sơ đồ mạch
- Lập trình vi điều khiển Atmega AT89S52
Trong thế giới điện tử hiện đại, đầu vào cảm ứng được sử dụng hầu hết ở mọi nơi, cho dù đó có thể là điện thoại di động hay công tắc màn hình LCD. Cảm ứng điện dung được sử dụng rộng rãi trong phân khúc cảm biến cảm ứng và trước đây chúng tôi đã sử dụng cảm ứng điện dung với Raspberry Pi. Ở đây trong đồ án này, chúng ta sẽ giao tiếp cảm ứng với vi điều khiển 8051 AT89S52. Nếu bạn chưa quen với vi xử lý 8051 thì bạn có thể bắt đầu với đèn LED nhấp nháy với 8051.
Cảm biến cảm ứng điện dung là gì?
Cảm ứng điện dung hoạt động dựa trên điện tích có sẵn trên cơ thể chúng ta. Màn hình đã được sạc bằng điện trường. Khi chúng ta chạm vào màn hình, một mạch đóng hình thành do điện tích truyền qua cơ thể chúng ta. Hơn nữa, phần mềm quyết định vị trí và hành động được thực hiện. Màn hình cảm ứng điện dung sẽ không hoạt động với găng tay vì sẽ không có bất kỳ sự dẫn truyền nào giữa (các) ngón tay và màn hình.
Cảm biến cảm ứng được sử dụng trong dự án này
Cảm biến cảm ứng được sử dụng trong dự án này là mô-đun cảm biến điện dung và trình điều khiển cảm biến dựa trên IC trình điều khiển TTP223. Điện áp hoạt động của IC TTP23 là 2.0V đến 5.5V và mức tiêu thụ hiện tại của cảm biến cảm ứng là rất thấp. Do giá thành rẻ, mức tiêu thụ hiện tại thấp và dễ dàng tích hợp hỗ trợ, cảm biến cảm ứng với TTP223 được ưa chuộng rộng rãi trong phân khúc của nó.
Trong hình ảnh trên, cả hai mặt của cảm biến được hiển thị ở nơi có thể nhìn thấy rõ sơ đồ sơ đồ chân. Nó cũng có một jumper hàn có thể được sử dụng để cấu hình lại cảm biến liên quan đến đầu ra. Jumper là A và B. Cấu hình mặc định hoặc ở trạng thái mặc định của jumper hàn, đầu ra thay đổi từ thấp đến cao khi cảm biến được chạm vào. Tuy nhiên, khi jumper được thiết lập và cảm biến được cấu hình lại, đầu ra sẽ thay đổi trạng thái khi cảm biến phát hiện chạm. Độ nhạy của cảm biến cảm ứng cũng có thể được cấu hình bằng cách thay đổi tụ điện. Để biết thông tin chi tiết, bảng dữ liệu của TTP 223 rất hữu ích.
Biểu đồ bên dưới hiển thị các đầu ra khác nhau ở các cài đặt jumper khác nhau-
Nhảy A | Nhảy B |
Trạng thái khóa đầu ra |
Đầu ra mức TTL |
Mở | Mở |
Không khóa |
Cao |
Mở | Đóng |
Tự khóa |
Cao |
Đóng | Mở |
Không khóa |
Thấp |
Đóng | Đóng |
Tự khóa |
Thấp |
Đối với dự án này, cảm biến sẽ được sử dụng ở cấu hình mặc định có sẵn trong điều kiện xuất xưởng. Trong dự án này, cảm biến cảm ứng sẽ được sử dụng để điều khiển một bóng đèn AC sử dụng vi điều khiển AT89S52.
Một rơle được giao tiếp với vi điều khiển 8051. Sơ đồ chân của rơ le có thể được nhìn thấy trong hình ảnh dưới đây-
NO thường mở và NC thường được kết nối. L1 và L2 là hai cực của cuộn dây Rơle. Khi không áp dụng Điện áp, rơle sẽ tắt và POLE được kết nối với chân NC. Khi điện áp được đặt trên các cực cuộn dây, L1 và L2 của rơle được BẬT và POLE được kết nối với KHÔNG. Do đó, kết nối giữa POLE và NO có thể được BẬT hoặc TẮT bằng cách thay đổi trạng thái hoạt động của Rơle.
Vật liệu thiết yếu
- Vi điều khiển AT89S52 8051
- Rơ le khối tiêu chuẩn - 5V
- Tinh thể 11,592 MHz
- Tụ 33pF - 2 cái
- Điện trở 2k -1 cái
- Điện trở 4,7k - 1 cái
- Tụ điện 10uF
- Bóng bán dẫn BC549B
- Cảm biến TTP223
- 1N4007 Diode
- Bóng đèn với giá đỡ bóng đèn
- Một breadboard
- Nguồn điện 5V, Sạc điện thoại có thể hoạt động.
- Rất nhiều dây jumper hoặc dây berg.
- Môi trường lập trình AT89S52 với Bộ lập trình và IDE với trình biên dịch
Sơ đồ mạch
Sơ đồ điều khiển ánh sáng bằng cảm biến cảm ứng và 8051 được đưa ra hình ảnh bên dưới,
Transistor được sử dụng để bật hoặc tắt Rơle. Cảm biến cảm ứng được kết nối với bộ vi điều khiển AT89S52. Mạch được xây dựng bằng breadboard.
Lập trình vi điều khiển Atmega AT89S52
Mã 8051 hoàn chỉnh được đưa ra ở cuối. Ở đây chúng tôi đang giải thích một số phần của mã. Nếu bạn chưa quen với vi điều khiển 8051 thì trước tiên hãy học cách lập trình vi điều khiển 8051.Các dòng mã dưới đây được sử dụng để tích hợp Relay và Touch Sensor với Vi điều khiển 8051. REGX52 là tệp tiêu đề cho bộ vi điều khiển AT89S52. Một hàm trì hoãn cũng được khai báo.
#include
Cảm ứng và rơ le được khởi tạo bằng 0. Cảm biến cảm ứng thay đổi logic 0 thành 1. Nếu tuyên bố là đúng khi cảm biến cảm ứng được kích hoạt và do đó, trạng thái của Rơle sẽ thay đổi. Tuy nhiên, để phát hiện cảm ứng một cách chính xác, một độ trễ gỡ lỗi được sử dụng.
// Hàm chính void main (void) { RELAY = 0; Chạm vào = 0; while (1) { if (Touch == 1) { delay (15); // độ trễ gỡ lỗi if (Touch == 1) { RELAY =! RELAY; // Chuyển đổi độ trễ chân RELAY (30); } } } }
Dưới đây, hàm trì hoãn được viết. Hàm nhận đầu vào ở định dạng mili giây và tạo ra độ trễ bằng cách sử dụng hai vòng lặp for . Độ trễ này không chính xác nhiều nhưng có thể chấp nhận được và nó chủ yếu phụ thuộc vào thời gian của chu kỳ đồng hồ.
/ * Hàm liên quan đến độ trễ * / void delay (char ms) {int a, b; for (a = 0; a <1295; a ++) {for (b = 0; b
Đây cảm ứng điều khiển mạch ánh sáng được thử nghiệm trên breadboard với một bóng đèn công suất thấp kết nối với nó. Bản phác thảo hoàn chỉnh với video trình diễn được đính kèm bên dưới. Bạn có thể kiểm tra thêm các dự án tự động hóa gia đình tại đây.