» Điện tử » Arduino »Phần mềm thực hiện rơle điện dung trên Arduino

Thực hiện phần mềm chuyển tiếp điện dung trên Arduino





Tác giả của Instructables dưới biệt danh ShaneCickyham đề xuất thực hiện một rơle điện dung trên Arduino lập trình. Trong số các bộ phận bổ sung, chỉ yêu cầu cảm biến điện dung và điện trở. Không có máy phát điện phần cứng bên ngoài. Trong phần mềm tự làm tham gia cái nàycái này sự phát triển của bên thứ ba.

Cảm biến điện dung - hai lớp, ba pin. Bậc thầy làm cho họ tự làm. Một hình vuông các tông có cạnh 300 mm được dán bằng giấy bạc - đây sẽ là đầu ra được kết nối với dây chung. Trên đầu nó đặt một hình vuông bằng bìa cứng với một cạnh 100 mm, cũng được dán bằng giấy bạc. Trên đó, lớp giấy bạc được chia thành hai phần dọc theo một đường viền tương tự như một dao động của các xung hình chữ nhật. Đây sẽ là hai kết luận nữa.





Mỗi cảm biến được sản xuất được trang bị điện trở 1 MΩ. Nếu chỉ có một cảm biến, hãy kết nối nó như hình bên dưới. Nếu có một vài trong số chúng, bạn sẽ phải sử dụng kết luận Arduino - hai cho mỗi cảm biến - và tính đến điều này trong bản phác thảo.



Đây là những gì trình hướng dẫn làm:






Soạn thảo một bản phác thảo gửi dữ liệu lấy từ cảm biến thông qua giao diện nối tiếp:

///////////////////////////////////////////

void loop () {
tổng dài1 = cs_4_2.capacitiveSensor (30);

Nối tiếp.println (tổng1);

/////////////////////////////////////////////

Mã để giao tiếp với xử lý qua nối tiếp

* /

int val1 = 0;

int val2 = 0;

int val3 = 0;

int inByte = 0;

Bộ cảm ứng điện dung cs_4_2 = Bộ cảm ứng điện dung (4.2); // Điện trở 1M giữa các chân 4 & 2, chân 2 là chân cảm biến, thêm dây và hoặc lá nếu muốn

Bộ cảm ứng điện dung cs_4_6 = Bộ cảm ứng điện dung (4.6); // Điện trở 1M giữa các chân 4 & 6, chân 6 là chân cảm biến, thêm dây và hoặc lá

void setup () {

cs_4_2.set_CS_AutocaL_Millis (0xFFFFFFFF); // tắt autocalibrate trên kênh 1 - chỉ là một ví dụ

cs_4_6.set_CS_AutocaL_Millis (0xFFFFFFFF);

Nối tiếp.begin (9600);

pinMode (2, INPUT);

pinMode (6, INPUT);

// pinMode (8, INPUT);

setupContact (); // gửi một byte để thiết lập liên hệ cho đến khi người nhận phản hồi

void loop () {

// nếu chúng ta nhận được một byte hợp lệ, hãy đọc các đầu vào:

if (serial.av Available ()> 0) {

// lấy byte đến:

inByte = serial.read ();

// bắt đầu dài = millis ();

tổng dài1 = cs_4_2.capacitiveSensor (30);

tổng dài2 = cs_4_6.capacitiveSensor (30);

// dài Total3 = cs_4_8.capacitiveSensor (30);

// độ trễ (10);

val1 = bản đồ (tổng1, 700, 2300, 0, 255); // giá trị cảm biến từ hiệu chuẩn được ánh xạ tới đây - bắt đầu phát hiện khoảng cách của con người ở khoảng cách 700 (4 "), tay gần chạm vào cảm biến ở 2300

val2 = bản đồ (tổng 2, 30, 175, 0, 255);

// val3 = map (tổng 3, 0, 13000, 0, 255);

Nối tiếp.write (val1);

Nối tiếp.write (val2);

//Serial.write (val3);

//Serial.print(val1);

// độ trễ (50);

}

void setupContact () {

while (serial.av Available () <= 0) {

Số sê-ri ('A');

độ trễ (300); }


Trình hướng dẫn tổ chức phân tích thêm về thông tin đến trên PC trong môi trường Xử lý.












Nhưng đây mới chỉ là khởi đầu của thí nghiệm. Trong tương lai, bạn có thể sử dụng nó để xử lý tín hiệu từ các cảm biến Arduino - điều tương tự, hoặc, nếu tài nguyên của nó không đủ, thêm một lần nữa.
0
0
0

Thêm một bình luận

    • cườinhững nụ cườixaxađược rồikhông biếtyahookhông
      ông chủvết xướcđồ ngốcvângvâng-vânghung hăngbí mật
      xin lỗinhảynhảy2nhảy3ân xágiúp đỡđồ uống
      dừng lạibạn bètốttốt lànhcòingấtlưỡi
      hút thuốcvỗ taycraytuyên bốgiễu cợtdon-t_mentiontải về
      nhiệttôi rấtcười1mdacuộc họpmoskingtiêu cực
      không phảibỏng ngôtrừng phạtđọcsợsợ hãitìm kiếm
      chế nhạocảm ơncái nàyto_cluecựu sinh viêncấp tínhđồng ý
      xấubeeeđen_eyeblum3đỏ mặttự hàobuồn chán
      bị kiểm duyệtdễ chịubí mật2đe dọachiến thắngyusun_bespectacled
      shokrespekthahacó trướcchào mừngkrutoyya_za
      ya_dobryingười trợ giúpne_huliganne_othodifludcấmđóng

Chúng tôi khuyên bạn nên đọc:

Đưa nó cho điện thoại thông minh ...