容量性土壌湿度モジュール¶
概要¶
この土壌湿度モジュールは、土壌の水分含有率を測定するセンサーです。主に農業で使用され、土壌の湿度を監視し、農家が作物に水をやるタイミングを判断するのに役立ちます。
原理¶
この容量性土壌湿度センサーは、市場の多くの抵抗性センサーとは異なり、容量性誘導の原理を使用して土壌の湿度を検出します。これにより、抵抗性センサーが高度に腐食に対して敏感であるという問題を回避し、その耐用年数を大幅に延ばします。
耐腐食性の素材で作られており、優れた耐久性があります。植物の周りの土壌に挿入し、リアルタイムで土壌の湿度データを監視します。このモジュールには、オンボードの電圧レギュレータがあり、3.3〜5.5Vの電圧範囲で動作します。3.3Vおよび5Vの電源を持つ低電圧マイクロコントローラに最適です。
以下に、容量性土壌湿度センサーのハードウェア回路図を示します。
固定周波数のオシレーターがあり、これは555タイマーICで構築されています。生成された矩形波は、センサーにキャパシターのように供給されます。しかし、この矩形波信号に対して、キャパシターはある程度のリアクタンス、または議論のために、純粋なオーム抵抗(ピン3の10k抵抗)と電圧分配器を形成します。
土壌の湿度が高いほど、センサーの容量が高くなります。その結果、矩形波はリアクタンスが少なく、信号線上の電圧が減少し、マイクロコントローラーを介したアナログ入力の値が小さくなります。
使い方¶
使用する電子部品
Arduino Uno R4またはR3ボード * 1
土壌湿度モジュール * 1
ジャンパーワイヤー
回路の組み立て
コード¶
コードの説明¶
1. センサーピンの定義
このコードの部分では、定数整数として sensorPin
が定義され、値A0が割り当てられます。A0は、土壌湿度センサーが接続されているArduinoボードのアナログ入力ピンです。
const int sensorPin = A0;
2. シリアル通信の設定
setup()
関数は、Arduinoが電源投入またはリセットされたときに一度呼び出されます。ここで9600ボーレートでシリアルライブラリを初期化します。ボーレートは情報が転送される速度です。この場合、それは9600ビット/秒(bps)です。
void setup() {
Serial.begin(9600);
}
3. データの読み取りとシリアルモニタへの出力
loop関数はプログラムの主要なロジックが存在する場所です。この関数はプログラムが開始されると無限にループします。ループの中で、 analogRead()
関数を使用して湿度センサーからのデータを読み取り、それをシリアルモニタに出力します。次の読み取りを行う前に、delay関数を使用してプログラムを500ミリ秒一時停止します。
void loop() {
Serial.println(analogRead(sensorPin));
delay(500);
}
注釈
値が小さいほど、土壌の湿度レベルが高いです。
追加のアイデア¶
土壌の湿度レベルが一定の閾値を下回った場合に作動するブザーまたはLEDを統合できます。これにより、植物に水をやる物理的なアラートが得られます。
水ポンプを接続し、水やりプロセスを自動化することも可能です。湿度レベルが閾値を下回った場合、Arduinoがポンプを作動させて植物に水を供給できます。
他のプロジェクト¶
iot_Plant_monitor