Vì vậy, hãy bắt đầu. Đầu tiên bạn cần quyết định về các thành phần và mạch. Nguyên lý hoạt động của mạch rất đơn giản: tín hiệu yếu từ micro được khuếch đại và gửi đến chân analog Arduino. Là một bộ khuếch đại tôi sẽ sử dụng một bộ khuếch đại hoạt động (bộ so sánh). Nó cung cấp mức tăng cao hơn nhiều so với một bóng bán dẫn thông thường. Trong trường hợp của tôi, chip LM58 sẽ đóng vai trò là bộ so sánh này, nó có thể được tìm thấy ở bất cứ đâu theo nghĩa đen. Và nó có giá khá rẻ.
Nếu bạn không thể tìm thấy LM58, thì ở vị trí của nó, bạn có thể đặt bất kỳ bộ khuếch đại hoạt động phù hợp nào khác. Ví dụ, bộ so sánh hiển thị trong ảnh đứng trên bảng khuếch đại của tín hiệu thu hồng ngoại trong TV.
Bây giờ hãy nhìn vào mạch cảm biến.
Ngoài bộ khuếch đại hoạt động, chúng ta sẽ cần một vài thành phần dễ truy cập hơn.
Micro bình thường nhất. Nếu cực của micro không được chỉ định, thì chỉ cần nhìn vào các tiếp điểm của nó. Điểm trừ luôn luôn đi đến trường hợp, và trong mạch, theo đó, nó được kết nối với "mặt đất".
Tiếp theo, chúng ta cần một điện trở 1 kΩ.
Ba điện trở 10 kΩ.
Và một điện trở 100 kΩ khác là 1 MΩ.
Trong trường hợp của tôi, một điện trở 620 kOhm được sử dụng như là vàng có nghĩa là Vàng.
Nhưng lý tưởng nhất, bạn cần sử dụng một điện trở thay đổi của đánh giá thích hợp. Hơn nữa, như được thể hiện bằng các thử nghiệm, một đánh giá lớn hơn chỉ làm tăng độ nhạy của thiết bị, nhưng xuất hiện nhiều tiếng ồn hơn.
Thành phần tiếp theo là tụ điện 0,1 uF. Nó được dán nhãn "104".
Và một tụ điện khác, ở mức 4,7 uF.
Bây giờ chúng tôi chuyển qua lắp ráp. Tôi lắp ráp các mạch với một cài đặt gắn kết.
Hội hoàn thành.Tôi đã cài đặt mạch trong một trường hợp mà tôi đã làm từ một mảnh ống nhựa nhỏ.
Chúng tôi tiến hành thử nghiệm thiết bị. Tôi sẽ kết nối nó với bảng Arduino UNO. Chúng tôi chuyển sang môi trường phát triển Arduino và mở ví dụ AnalogReadSerial trong phần Cơ bản.
void setup () {
Serial.begin (9600); // kết nối kết nối Nối tiếp ở 9600 baud
}
void loop () {
int sensorValue = analogRead (A0); / * đọc giá trị từ chân tương tự bằng 0 và lưu nó vào biến cảm biếnValue * /
Serial.println (sensorValue); // xuất giá trị ra cổng
trì hoãn (1); // chờ một mili giây để ổn định
}
Trước khi tải vào bảng, chúng tôi thay đổi độ trễ 50 mili giây và tải nó. Sau đó, chúng tôi làm một bông thử nghiệm và làm theo chỉ dẫn. Tại thời điểm vỗ tay, họ nhảy, cố gắng ghi nhớ giá trị này xấp xỉ và trở về bản phác thảo.
Thêm một vài dòng vào bản phác thảo.
if (sensorValue> X) {
Số sê-ri ("CLAP");
độ trễ (1000);
}
Thay vì xóa X, hãy chèn cùng một giá trị, tải và vỗ lại. Vì vậy, tiếp tục cho đến khi bạn tìm thấy giá trị phản hồi tối ưu. Với giá trị được đánh giá quá cao, điều kiện sẽ chỉ được đáp ứng bằng bông ở khoảng cách rất gần. Với giá trị thấp hơn, điều kiện sẽ được thỏa mãn ở mức nhiễu nhỏ nhất hoặc âm thanh của các bước.
Ngoài ra, với lựa chọn chính xác của điện trở R5, cảm biến này có thể biến thành một kỹ thuật số và có thể được sử dụng trong các ngắt phần cứng. Tiềm năng của thiết kế này là rất lớn, trên cơ sở bạn có thể lắp ráp một loạt các dự án khác nhau, và sự đơn giản của nó làm cho thiết bị có thể truy cập được cho mọi người.
Để kết luận, tôi đề nghị xem một video trong đó mọi thứ được hiển thị rõ ràng. Quá trình hiệu chuẩn và lắp ráp công tắc bông đơn giản nhất cũng được giải thích chi tiết hơn nhiều.
Tôi hy vọng bạn thích nó. Chúc các bạn lắp ráp thành công!