亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino 土壤湿度实时监测套件:LCD1602 显示版

项目简介

针对“总忘记给植物浇水”的痛点,本项目利用 SparkFun 土壤湿度传感器与 I2C LCD1602 打造一款即插即用的监测装置。通过 Circuito.io 自动生成原理图与接线指南,极大降低了初学者的硬件门槛。

核心组件

接线指南

土壤湿度传感器

GND  → GND
SIG  → A3
VCC  → 5V

I2C LCD1602

GND  → GND
SCL  → A5
SDA  → A4
VCC  → 5V

核心代码(已优化版)

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// I2C 地址通常为 0x27 或 0x3F,可用 I2C 扫描器确认
LiquidCrystal_I2C lcd(0x27, 16, 2);

const uint8_t MOISTURE_PIN = A3;
const uint16_t READ_INTERVAL = 300;  // ms

void setup() {
  Serial.begin(9600);
  lcd.init();
  lcd.backlight();
  lcd.print("Soil Moisture:");
  delay(100);
}

void loop() {
  int raw = analogRead(MOISTURE_PIN);  // 0~1023,值越大越干
  lcd.setCursor(0, 1);
  lcd.print("Value: ");
  lcd.print(raw);
  lcd.print("   ");  // 清除残留字符

  Serial.print("Moisture: ");
  Serial.println(raw);

  delay(READ_INTERVAL);
}

读数解读与校准

提示:不同土质、传感器插入深度会导致阈值偏移,建议首次使用时记录“刚浇透水”与“完全干透”两个基准值,线性映射为 0–100% 相对湿度。

进阶扩展方向

常见问题

LCD 显示乱码/无显示
运行 I2C 扫描器确认地址,调整 LiquidCrystal_I2C lcd(0x27, 16, 2); 中的地址参数。
读数不稳定、跳变大
加 0.1μF 陶瓷电容于 SIG-GND 间;供电改用 3.3V 基准并修改代码 analogReference(EXTERNAL);多次采样取中位数滤波。
传感器电极腐蚀快
避免长期通电,改为“供电→读取→断电”脉冲模式(需额外 MOSFET 控制 VCC)。

制造工艺

  1. 树莓派低成本土壤湿度传感器:智能灌溉 DIY 指南
  2. Arduino Nano 与 MPU-6050 构建实时陀螺仪游戏
  3. DHT11 温湿度传感器项目:LED 指示与压电蜂鸣器报警
  4. K30 CO₂ 传感器:室内空气质量实时监测
  5. Unopad:基于 Arduino 的无缝 Ableton Live MIDI 控制器
  6. 自制简易红外避障传感器:IR LED + 光电二极管 + Arduino
  7. DFRobot 电容指纹传感器 (ID809) 接入 Arduino/ESP8266 完整教程
  8. 基于 Arduino Mega 与 Nextion 显示屏的交互式气象站
  9. 互动 LED 矩阵门显:PIR 触发节日问候 + 待机特效
  10. DIY Arduino Nano 示波器:10 Hz–50 kHz / 128×64 LCD
  11. Arduino 高速转速计 - 单次检测算法实测 6.5MHz 级响应,红外 + 红激光方案
  12. 用 DS1302 RTC 和 Arduino UNO 制作可靠闹钟

ADC 原始值土壤状态建议动作
0 – 300过湿 / 浸水停止浇水,改善排水
300 – 600适宜维持现状
600 – 800偏干准备浇水
800 – 1023极干立即浇水