Soil moisture sensor(YL-69) JP: 두 판 사이의 차이
잔글편집 요약 없음 |
|||
| 87번째 줄: | 87번째 줄: | ||
この例では、土壌水分センサーのアナログ出力値をLCDに表示し、その値に基づいて給水が必要かどうかもLCDに表示します。 | この例では、土壌水分センサーのアナログ出力値をLCDに表示し、その値に基づいて給水が必要かどうかもLCDに表示します。 | ||
LCDについての詳細は、[[LCD(Liquid Crystal Display)]]ドキュメントを参照してください。 | LCDについての詳細は、[[LCD(Liquid Crystal Display) JP|LCD(Liquid Crystal Display)]]ドキュメントを参照してください。 | ||
2025년 3월 26일 (수) 22:15 기준 최신판

概要
土壌水分センサー(YL-69)は、土壌の水分含有量を測定するために使用されるセンサーです。農業、園芸、環境モニタリングなど様々な分野で活用され、作物の健康と生産性を維持するために重要な役割を果たします。アルドゥイーノなどのマイクロコントローラーと共に使用することで、リアルタイムで水分値をモニタリングすることができます。
動作原理
YL-69センサーは、2つの電極を使用して土壌の電気伝導度を測定します。土壌の水分含有量が高くなるほど抵抗値が低くなり、それに伴って電気伝導度が増加します。この値はアナログ信号に変換されてマイクロコントローラーに送信されます。
仕様
| List | 説明 |
|---|---|
| 感度調整 | PCBに取り付けられた可変抵抗器を回して感度調整が可能 |
| Voltage | 3.3V - 5V |
| Output Mode | デジタル出力とアナログ出力の両方をサポート
デジタル出力: しきい値を超えるとLOW、それ以外はHIGHを出力 アナログ出力: 0 〜 1023の間の値を出力 |
| 設置の容易さ | 固定ボルト穴があり、設置が容易 |
| Size | PCB: 3cm x 1.6cm
プローブ部:約2cm x 6cm |
| 電源および出力表示 | 電源表示灯(赤)およびデジタルスイッチ出力表示灯(緑) |
| Chip | LM393 |
利用例
1. 土壌水分センサーの出力をシリアルモニタで確認する
この例では、シリアルモニタを通じてセンサーのアナログ出力値を確認します。
1-1. 回路構成
YL-69土壌水分センサーはデジタル出力とアナログ出力を両方サポートしており、VCC、GND、DO、AOの4つのピンで構成されています。アナログ出力が必要な場合は、AOピンをアドゥイーノのA0ピンに接続します。
| YL-69 Pin | Arduino |
|---|---|
| VCC | 5V |
| GND | GND |
| AO | A0 |

1-2. Arduino Code
const int sensorPin = A0;
void setup() {
Serial.begin(9600); // Start serial communication
}
void loop() {
int sensorValue = analogRead(sensorPin); // Read sensor value
Serial.print("Soil moisture level : ");
Serial.println(sensorValue); // Print sensor value
delay(1000); // Wait a second
}
1-3. 実行結果

2. 土壌水分センサーの値と給水必要性をLCDに表示する
この例では、土壌水分センサーのアナログ出力値をLCDに表示し、その値に基づいて給水が必要かどうかもLCDに表示します。
LCDについての詳細は、LCD(Liquid Crystal Display)ドキュメントを参照してください。
2-1. 回路構成
| YL-69 Pin | Arduino | LCD Pin | Arduino | |
|---|---|---|---|---|
| VCC | 5V | VCC | 5V | |
| GND | GND | GND | GND | |
| AO | A0 | SCA | A4(Uno) / 20(Mega) | |
| SCL | A5(Uno) / 21(Mega) |

2-2. アルドゥイーノコード
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// I2C LCD initialization: address 0x27, columns 16, rows 2
LiquidCrystal_I2C lcd(0x27, 16, 2);
// YL-69 sensor pin definition
const int sensorPin = A0;
void setup() {
lcd.init();
lcd.clear();
lcd.backlight(); // Turn on backlight
Serial.begin(9600); // Start serial communication
}
void loop() {
int sensorValue = analogRead(sensorPin); // Read sensor value
Serial.print("Soil moisture level: ");
Serial.println(sensorValue); // Output to serial monitor
// Display value on LCD
lcd.clear(); // Clear LCD screen
lcd.setCursor(0, 0); // Move cursor to the first column of the first row
lcd.print("water : ");
lcd.print(sensorValue); // Output sensor value
lcd.setCursor(0, 1); // Move cursor to the first column of the second row
if (sensorValue > 500)
lcd.print("Please Water");
else
lcd.print("Enough Water");
delay(1000); // Wait for 1 second
}
2-3. 実行結果
水がない場合、LCDに「Please Water」が表示されます。

水がある場合、「Enough Water」が表示されます。

3. 土壌水分センサーとLCD、LEDを使用する
この例では、前の例にLEDを追加します。土壌が乾燥しているときはLEDが消え、十分な水があるときはLEDが点灯します。
3-1. 回路構成

3-2. Arduino Code
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// I2C LCD initialization: address 0x27, columns 16, rows 2
LiquidCrystal_I2C lcd(0x27, 16, 2);
// YL-69 sensor pin definition
const int sensorPin = A0;
const int ledPin = 3;
void setup() {
lcd.init();
lcd.clear();
lcd.backlight(); // Turn on backlight
Serial.begin(9600); // Start serial communication
pinMode(ledPin, OUTPUT);
}
void loop() {
int sensorValue = analogRead(sensorPin); // Read sensor value
Serial.print("Soil moisture level: ");
Serial.println(sensorValue); // Output to serial monitor
// Display value on LCD
lcd.clear(); // Clear LCD screen
lcd.setCursor(0, 0); // Move cursor to the first column of the first row
lcd.print("water : ");
lcd.print(sensorValue); // Output sensor value
lcd.setCursor(0, 1); // Move cursor to the first column of the second row
if (sensorValue > 500) {
lcd.print("Please Water");
digitalWrtie(ledPin, LOW); // Turn off the LED
}
else {
lcd.print("Enough Water");
digitalWrtie(ledPin, HIGH); // Turn on the LED
}
delay(1000); // Wait a second
}
3-3. 実行結果
水がない場合、LCDに「Please Water」が表示され、LEDが消えます。

水がある場合、「Enough Water」が表示され、LEDが点灯します。

このセットアップは、ポンプなどの他のコンポーネントを組み込むことで自動給水システムなどに応用できます。