- Vật liệu thiết yếu
- Cảm biến mưa
- Hoạt động của cảm biến mưa
- Sơ đồ mạch
- Giải thích mã
- Hoạt động của hệ thống phát hiện mưa dựa trên Arduino
Có thể dễ dàng xây dựng Hệ thống phát hiện mưa đơn giản bằng cách kết nối Arduino với Cảm biến mưa. Cảm biến sẽ phát hiện bất kỳ lượng mưa nào rơi vào nó và bảng Arduino sẽ cảm nhận được nó và có thể thực hiện các hành động cần thiết. Một hệ thống như thế này có thể được sử dụng trong nhiều lĩnh vực khác nhau, chẳng hạn như nông nghiệp và lĩnh vực ô tô. Phát hiện lượng mưa có thể được sử dụng để tự động điều chỉnh quá trình Tưới. Ngoài ra, dữ liệu lượng mưa liên tụccó thể giúp người nông dân sử dụng hệ thống thông minh này để tự động tưới nước cho cây trồng khi thực sự cần thiết. Tương tự, trong lĩnh vực ô tô, cần gạt nước kính chắn gió có thể được thực hiện hoàn toàn tự động bằng cách sử dụng hệ thống phát hiện mưa. Và Hệ thống tự động hóa gia đình cũng có thể sử dụng tính năng phát hiện mưa để tự động đóng cửa sổ và điều chỉnh nhiệt độ phòng. Trong hướng dẫn này, chúng tôi sẽ xây dựng một cảm biến mưa cơ bản bằng Arduino với một bộ rung. Sau đó, bạn có thể sử dụng thiết lập này để xây dựng bất kỳ thứ gì bạn muốn trên đó. Ngoài ra, lưu ý rằng các mô-đun cảm biến mưa cũng được gọi là một cảm biến hạt mưa hoặc cảm biến đo mưa hoặc cảm biến nước mưa dựa vào cách sử dụng, nhưng tất cả họ đều tham khảo các cảm biến tương tự được sử dụng trong dự án này và chúng đều hoạt động trên nguyên tắc tương tự.
Chúng tôi cũng đã xây dựng một Cảnh báo mưa đơn giản và gạt mưa ô tô tự động chỉ bằng cách sử dụng Bộ hẹn giờ 555, bạn cũng có thể muốn kiểm tra điều đó nếu không muốn sử dụng Arduino. Điều đó đang được nói, hãy quay lại dự án này và bắt đầu xây dựng Máy đo mưa Arduino của chúng tôi.
Vật liệu thiết yếu
- Arduino UNO
- Cảm biến mưa
- Buzzer
- Breadboard
- Kết nối dây
Cảm biến mưa
Các mô-đun hạt mưa bao gồm hai bảng, cụ thể là Ban Rain và Ban kiểm soát.
Các bảng Mưa mô-đun bao gồm hai ca khúc đồng, được thiết kế theo cách như vậy mà theo các điều kiện khô mà họ cung cấp sức đề kháng cao với việc cung cấp điện áp và điện áp đầu ra của module này sẽ là 5V. Điện trở của mô-đun này giảm dần theo sự gia tăng độ ẩm trên bảng. Khi điện trở giảm, điện áp đầu ra của nó cũng giảm theo độ ẩm trên mô-đun. Các mô-đun ban Mưa bao gồm hai chân sử dụng để kết nối với bảng điều khiển như hình dưới đây.
Mô-đun Bảng điều khiển kiểm soát độ nhạy và chuyển đổi đầu ra tương tự sang đầu ra kỹ thuật số. Nếu giá trị tương tự thấp hơn giá trị ngưỡng của bảng điều khiển, đầu ra là kỹ thuật số thấp và Nếu giá trị tương tự cao hơn giá trị ngưỡng, đầu ra là kỹ thuật số cao. Để so sánh và chuyển đổi này, bộ so sánh OP-Amp LM393 được sử dụng. Bộ so sánh Op-Amp là một mạch thú vị có thể được sử dụng để so sánh hai giá trị điện áp khác nhau, chúng tôi đã sử dụng mạch này trong nhiều dự án như Nến điện tử thông minh, Báo động an ninh bằng laser, Robot theo dõi đường dây và nhiều hơn nữa.
Các mô-đun kiểm soát Mưa được trình bày dưới đây bao gồm 4 chân để kết nối các Arduino cụ thể là VCC, GND, D0, A0 và hai chân hơn để kết nối các module ban mưa. Tóm lại, mô-đun bảng mưa phát hiện nước mưa và mô-đun bảng điều khiển được sử dụng để kiểm soát độ nhạy và so sánh và chuyển đổi các giá trị tương tự sang giá trị kỹ thuật số.
Hoạt động của cảm biến mưa
Hoạt động của mô-đun cảm biến mưa rất đơn giản để hiểu. Trong một ngày nắng, do sự khô ráo trên mô-đun bảng mưa, nó mang lại khả năng chống lại điện áp cung cấp cao. Điện áp này xuất hiện trên chân đầu ra của mô-đun bảng mưa là 5V. 5V này được đọc là 1023 nếu được đọc bằng chân analog của Arduino. Trong khi mưa, nước mưa làm tăng độ ẩm trên ván mưa, do đó làm giảm sức cản của nguồn cung cấp. Khi điện trở giảm dần, điện áp đầu ra bắt đầu giảm.
Khi tấm che mưa bị ướt hoàn toàn và điện trở do nó cung cấp là tối thiểu, điện áp đầu ra sẽ càng thấp càng tốt (khoảng 0). 0V này được đọc là giá trị 0 nếu được đọc bởi một chân analog của Arduino. Nếu mô-đun ván mưa bị ướt một phần, đầu ra của mô-đun ván mưa này sẽ tương ứng với khả năng chống chịu mà nó cung cấp. Nếu điện trở được cung cấp bởi mô-đun bảng mưa sao cho đầu ra là 3V thì giá trị tương tự đọc được sẽ là 613. Công thức để tìm ADC có thể được cho bởi, ADC = (giá trị điện áp tương tự X 1023) / 5. Bằng cách sử dụng công thức này, bạn có thể chuyển đổi bất kỳ điện áp tương tự nào sang giá trị đọc tương tự của Arduino.
Sơ đồ mạch
Sơ đồ mạch bên dưới cho bạn thấy các kết nối mạch cho Cảm biến Giọt mưa với Arduino. Thiết kế được thực hiện bằng cách sử dụng proteus, các mô-đun vật lý tương tự như các mô-đun được thể hiện trong sơ đồ mạch.
Mô-đun đo mưa, được hiển thị trong sơ đồ mạch được kết nối với bảng điều khiển. Chân VCC của bảng điều khiển được kết nối với nguồn 5V. Chân nối đất được nối với đất. Nếu cần, chân D0 được kết nối với bất kỳ chân kỹ thuật số nào của Arduino và chân đó phải được khai báo là chân đầu ra trong chương trình. Vấn đề chúng ta gặp phải với chân D0 là chúng ta không thể nhận được giá trị chính xác của điện áp đầu ra. Nếu đầu ra vượt qua ngưỡng điện áp, thì mô-đun điều khiển có thể cảm nhận được sự thay đổi trong đầu ra. Chúng ta cần vận hành bộ rung, ngay cả khi có sự thay đổi đáng kể về điện áp đầu ra trong mô-đun bảng mưa. Do những lý do này, chân A0 được kết nối với chân analog của Arduino, giúp theo dõi sự thay đổi đầu ra dễ dàng. Bộ rung, được sử dụng như một tín hiệu cho người dùng,có thể được kết nối với bất kỳ chân kỹ thuật số nào của Arduino. Nếu bộ rung cần nhiều hơn 5V, sau đó cố gắng kết nối một mạch rơle hoặc một bóng bán dẫn và sau đó kết nối tải với nó.
Giải thích mã
Các đang Arduino cho cảm biến mưa được viết bằng cách sử dụng Arduino IDE. Mã hoàn chỉnh cho dự án này được đưa ra ở cuối trang.
#define lượng mưa A0 #define buzzer 5 int value; int set = 10;
Xác định chân A0 là lượng mưa và chân 5 làm bộ rung và khai báo biến “giá trị” và “đặt” dưới dạng số nguyên và đặt giá trị đặt biến của nó thành 10. Giá trị này có thể được thay đổi tùy theo mức hoạt động yêu cầu. Nếu bạn muốn bộ rung kích hoạt, ngay cả khi trời mưa nhỏ, hãy đặt nó ở giá trị nhỏ nhất
void setup () {Serial.begin (9600); pinMode (buzzer, OUTPUT); pinMode (lượng mưa, INPUT); }
Khởi tạo giao tiếp nối tiếp và cài đặt bộ rung. Đặt chân lượng mưa làm chân đầu ra và chân đầu vào.
void loop () {value = analogRead (lượng mưa); Serial.println (giá trị); value = map (value, 0,1023,225,0);
chức năng analogRead đọc giá trị của cảm biến mưa. Bản đồ chức năng ánh xạ giá trị của cảm biến mưa từ chốt đầu ra và gán giá trị cho biến, trong khoảng từ 0 đến 225.
if (value> = set) {Serial.println ("phát hiện mưa"); digitalWrite (buzzer, HIGH);
Nếu giá trị cảm biến đọc lớn hơn giá trị đặt, thì chương trình sẽ đi vào vòng lặp, in thông báo trên màn hình nối tiếp và bật bộ rung
else {digitalWrite (buzzer, LOW);
Chương trình chỉ nhập hàm else khi giá trị nhỏ hơn giá trị đã đặt. Chức năng này sẽ tắt còi khi giá trị cài đặt cao hơn giá trị của cảm biến, báo rằng không có mưa.
Hoạt động của hệ thống phát hiện mưa dựa trên Arduino
Hệ thống này hoạt động theo cách mà khi có mưa, nước mưa sẽ hoạt động như một chất kích hoạt, làm bật còi. Trong Mã Arduino của cảm biến giọt mưa, chúng tôi đã xác định rằng các chân 5 và A0 là còi và lượng mưa. Bằng cách làm này, chúng ta có thể thay đổi các chân trong phần được xác định của hàm và phần còn lại của mã sẽ không bị ảnh hưởng. Điều này sẽ làm cho các lập trình viên trong việc chỉnh sửa các chân một cách dễ dàng.
Trong vòng lặp void, lệnh analogRead đọc giá trị từ cảm biến. Trong dòng tiếp theo, lệnh Serial.println (value), in giá trị trên màn hình nối tiếp. Điều này sẽ hữu ích trong khi gỡ lỗi. Chức năng bản đồ ánh xạ giá trị đến trong khoảng 0 -225. Định dạng hàm cho bản đồ là một bản đồ (giá trị, giá trị nhỏ nhất, giá trị lớn nhất, giá trị được ánh xạ cho giá trị nhỏ nhất, giá trị được ánh xạ cho giá trị lớn nhất). Bộ rung sẽ được BẬT hoặc TẮT, tùy thuộc vào giá trị cài đặt và đầu ra của cảm biến. Giá trị này được so sánh trong hàm if, với giá trị đã đặt. Nếu giá trị lớn hơn giá trị đã đặt, nó sẽ bật còi. Nếu giá trị nhỏ hơn giá trị đã đặt, bộ rung sẽ bị tắt.
Hoạt động hoàn chỉnh có thể được tìm thấy trong video được liên kết bên dưới. Đây là một trong số rất nhiều ứng dụng, nguyên tắc tương tự sẽ được thấy trong cần gạt nước kính chắn gió, các lĩnh vực tự động hóa gia đình, nông nghiệp, v.v. Hy vọng bạn đã hiểu dự án và thích xây dựng một cái gì đó hữu ích. Nếu bạn có bất kỳ câu hỏi nào, hãy sử dụng phần bình luận bên dưới hoặc sử dụng diễn đàn của chúng tôi cho các câu hỏi kỹ thuật khác.