Menu
CoddyTech

Thiết bị theo dõi cây: Độ ẩm

Thuộc phần Dự án trong hành trình Arduino của Coddy. Bài học 17 trên 24.

Dự án này theo dõi cây trồng trong nhà: độ ẩm của đất, đèn màu báo đất khô, vừa đủ ẩm hay ướt, chuông báo khi đất vẫn khô và báo cáo trên màn hình.

Trong mô hình thực tế, bạn cắm cảm biến độ ẩm đất vào chậu. Cảm biến tạo ra điện áp thay đổi theo độ ẩm của đất, được đọc bằng analogRead(). Trình mô phỏng không có đất, nên một chiết áp (núm vặn) nối với A0 sẽ thay thế cảm biến: vặn xuống để mô phỏng đất khô và vặn lên để mô phỏng đất ướt. Đoạn code vẫn giống nhau trong cả hai trường hợp.

Phần trăm dễ đọc hơn giá trị từ 0 đến 1023: 0% là khô cong, 100% là sũng nước. map() chuyển đổi phạm vi này sang phạm vi kia:

int reading = analogRead(A0);
int moisture = map(reading, 0, 1023, 0, 100);

Đất khô dần trong nhiều giờ, nên đọc một lần mỗi giây là đủ.

challenge icon

Thử thách

Dễ

Đo độ ẩm của đất:

  • viết readMoisture(): đọc A0 và trả về độ ẩm theo phần trăm bằng map()
  • trong loop(), in ra theo dạng Moisture: 42%, sau đó chờ 1000 ms

Nhấn Chạy, xoay núm, rồi nhấn Kiểm tra.

Tự làm thử

// Núm xoay thay cho cảm biến độ ẩm đất
const int sensorPin = A0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  // Đọc giá trị cảm biến, chuyển thành phần trăm, in ra rồi đợi một giây

}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Dự án

Tự luyện tập: Playground Arduino