Cảm biến mưa với Arduino

Giới thiệu, nội dung chính cần nắm

Chúng ta có thể dễ dàng nhận biết mưa bằng mắt thường hoặc cảm nhận ở da. Với tư tưởng ấy, các hệ thống điện tử phát hiện mưa cũng chia ra làm hai loại: thứ nhất là dùng camera để nhận biết và loại thứ hai là dùng cảm biến (tương tự da của con người). Trong môi trường Arduino, bạn có thể dùng cả 2 cách trên để phát hiện mưa. Tuy nhiên, để tiết kiệm chi phí và dễ dàng trong việc lập trình, cài đặt, người ta thường chọn phương pháp thứ hai.

Vấn đề về phát hiện mưa thì cực kì đơn giản, nhưng để truyền dữ liệu cảm biến mưa về trung tâm thì khó hơn đôi chút. Trong phạm vi bài viết này, mình chỉ đề cập đến phần làm thế nào để đọc cảm biến mưa thôi, phần truyền tin mình sẽ giới thiệu và hương dẫn ở một bài viết khác trong chuyên mục "Chương trình mẫu > Level: Intermediate - Có kiến thức cơ bản".

Phần cứng

Lắp mạch

Sơ đồ chân nối

Cảm biến mưa Arduino Uno
GND GND
VCC 5V
D0 Digital 6

Lập trình và giải thích

int rainSensor = 6; // Chân tín hiệu cảm biến mưa ở chân digital 6 (arduino)
void setup() {
  pinMode(rainSensor,INPUT);// Đặt chân cảm biến mưa là INPUT, vì tín hiệu sẽ được truyền đến cho Arduino
  Serial.begin(9600);// Khởi động Serial ở baudrate 9600
  Serial.println("Da khoi dong xong");
}

void loop() {
  int value = digitalRead(rainSensor);//Đọc tín hiệu cảm biến mưa
  if (value == HIGH) { // Cảm biến đang không mưa
    Serial.println("Dang khong mua");
  } else {
    Serial.println("Dang mua");
  }
  delay(1000); // Đợi 1 tí cho lần kiểm tra tiếp theo. Bạn hãy tham khảo bài "Viết chương trình không dùng làm delay" trên Arduino.VN để kết hợp đoạn code này và cả chương trình của bạn
}

Mạch cảm biến mưa gồm 2 phần:

  • mạch cảm biến mưa được gắn ngoài trời
  • mạch điều chỉnh độ nhạy cần được che chắn

Mạch cảm biến mưa hoạt động bằng cách so sánh hiệu điện thế của mạch cảm biến nằm ngoài trời với giá trị định trước (giá trị này thay đổi được thông qua 1 biến trở màu xanh) từ đó phát ra tín hiệu đóng / ngắt rơ le qua chân D0. Vì vậy, chúng ta dùng một chân digital để đọc tín hiệu từ cảm biến mưa.

Khi cảm biến khô ráo (trời không mưa), chân D0 của module cảm biến sẽ được giữ ở mức cao (5V). Khi có nước trên bề mặt cảm biến (trời mưa), đèn LED màu đỏ sẽ sáng lên, chân D0 được kéo xuống thấp (0V).

Kết luận

Mạch cảm biến mưa có thể hoạt động không sử dụng Arduino mà có thể dùng relay (kích ở mức thấp) để điều khiển một số thiết bị điện (dòng ra ở chân D0 lên đến 100mA). Tuy nhiên, với cách tiếp cận bằng Arduino, bạn sẽ dễ dàng phát triển để truyền tín hiệu cảm biến mưa thông qua sóng vô tuyến sau này.

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Hướng dẫn sử dụng các loại module

Nếu bạn đang muốn thực hiện hóa ý tưởng của mình mà không biết dùng loại module nào? Hãy tham khảo các module trong danh sách sau

Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Cách dữ liệu được truyền đi trong sóng vô tuyến

Có 2 phương thức truyền dữ liệu bằng sóng vô tuyến, đó là AM và FM. Chắc hẳn, bạn đã từng nghe qua 2 khái niệm đó rồi phải không nào? Nếu không nhớ thì bạn hãy tìm ngay một chiếc radio và bật lên để cùng nghe những thông tin bổ ích từ các đài phát thanh qua sóng FM. Hôm nay, chúng ta sẽ cùng nhau tìm hiểu về 2 phương thức này, cái nào tốt hơn cái nào nhé.

lên
15 thành viên đã đánh giá bài viết này hữu ích.

Lập trình kéo thả cho các dự án IoT sử dụng Node-Red và iNut Platform

Người nông dân Việt Nam muốn làm ra những sản phẩm nông sản chất lượng tốt, nhưng ngặt nổi với việc sử dụng các giải pháp ở Việt Nam và thế giới vẫn còn quá đắt so với lợi nhuận ròng. Trong quá trình nghiên cứu để tìm ra con đường ứng dụng những thành quả của Cách mạng công nghiệp 4.0, tôi và đội ngũ iNut Platform đã tìm ra một giải pháp lập trình kéo thả với chi phí gần như bằng không để các đối tác nghiên cứu triển khai hệ thống IoT của riêng họ một cách nhanh chóng nhất và an toàn nhất. Thống nhất lại quy chuẩn phát triển IoT với khả năng cung cấp firmware số lượng lớn và không giới hạn cho mọi dự án ở mọi kích cỡ khác nhau, ứng dụng mọi lĩnh vực không chỉ trong lĩnh vực nông nghiệp.

lên
4 thành viên đã đánh giá bài viết này hữu ích.