Quy đổi độ ẩm đất thành phần trăm (%) với Arduino

Bài viết về cảm biến độ ẩm đất của bạn Đỗ Hữu Toàn rất hay. Tuy nhiên, bạn ý không nhắc đến phương pháp quy đổi độ ẩm từ analog sang tỉ lệ phần trăm. Qua bài viết này, mình sẽ hướng dẫn các bạn làm được điều đó.

I. Nối dây

Cảm biến độ ẩm đất Arduino UNO          
Vcc 5V
GND GND
A0 A0

II. Lập trình

Tín hiệu analog có độ phân giải mặc định là từ 0-1023. Để quy đổi nó sang %, chúng ta sẽ chuyển nó bằng hàm map về 0 => 100%. Các bạn xem phần lập trình của mình nhé.

void setup() 
{
  Serial.begin(9600);//Mở cổng Serial ở mức 9600
}
 
void loop() 
{
  int value = analogRead(A0);     // Ta sẽ đọc giá trị hiệu điện thế của cảm biến
  int percent = map(value, 0, 1023, 0, 100);
  Serial.print(percent);
  Serial.println('%');
}
  

III. Lời kết

Chúc các bạn thành công.

Những hình ảnh về dự án: 
Bài viết truyền cảm hứng: 
lên
17 thành viên đã đánh giá bài viết này hữu ích.
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ả

Lập trình ATtiny45 hoăc ATtiny85 với Codebender

Hôm nay có vấn đề đụng đến attiny45 mà mình lại lười tải Arduino IDE 1.0.6 để lập trình cho dễ, thành ra quyết định dùng codebender để lập trình. Mình tìm trên cộng đồng mà không có bài nào nói về vấn đề này, nhưng lại có bài của ksp khá liên quan, chỉ cần chỉnh file boards.txt rồi up lên một tí là được. Nên mình quyết định viết bài cho anh em sau này gặp thì giải quyết cho dễ

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

Hướng dẫn sử dụng cảm biến nhiệt độ DS18B20 (-55°C đến +125°C) sai số ±0.5°C

Lại quay về vấn đề đo nhiệt độ, như ở bài trước, mình đã dùng cả LM35, cả TMP36. Nhưng rốt cuộc vẫn không hiệu quả, lần này mình đang sử dụng con DS18B20 này và cảm thấy khá ổn hơn so với lần trước. Nhiệt độ ít bị chênh lệch hơn và như quảng cáo là chỉ có sai số ±0.5°C thôi (nếu nhiệt độ trong phạm vi -10°C to +85°C, đáng để thử phải không nào?

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