Raspberry Piで土壌水分センサーを使用します

Using a Soil Moisture Sensor with the Raspberry Pi

土壌水分センサー ラズベリーPIが土壌湿度を監視できるようにし、それを理想的にします スマートガーデニング、灌漑システム、および環境監視。このガイドでは、ラズベリーPIを備えた土壌水分センサーのセットアップと使用を紹介します。


あなたが必要とするもの

  1. Raspberry Pi (GPIOサポートを備えたモデル、例えばPI 3、PI 4)
  2. 土壌水分センサー (アナログまたはデジタル出力)
  3. アナログセンサー用のADCモジュール(ADS1115など) (必要に応じて)
  4. ブレッドボードとジャンパーワイヤ
  5. Pythonインストール Raspberry Piで

ステップ1:土壌水分センサーの理解

土壌水分センサーには2つのタイプがあります。

  • デジタル出力センサー (例えば、容量性の土壌水分センサー) - a 高/低い 湿気がしきい値を超えるときの信号。
  • アナログ出力センサー - 土壌の水分に基づいて可変電圧を提供し、 ADC(アナログからデジタルへのコンバーター) ADS1115のように。

ステップ2:ラズベリーPIにセンサーを配線します

デジタル出力土壌水分センサー用

センサーピン ラズベリーPIピン
VCC 3.3Vまたは5V(ピン1または2)
GND グラウンド(ピン6)
D0(デジタル) 任意のGPIO(例:GPIO17、ピン11)

アナログ出力センサーの場合(ADS1115を使用)

センサーピン ADS1115ピン ラズベリーPIピン
VCC VCC 3.3Vまたは5V(ピン1または2)
GND GND グラウンド(ピン6)
A0(アナログ) A0 I2C(ADS1115経由)

ステップ3:Raspberry PiでI2Cを有効にします

一部のセンサーは使用しているためです I2C(ADS1115モジュール)、有効にしてください:

  1. Raspberry Pi構成ツールを開きます。
    sudo raspi-config
    
  2. に移動します インターフェイスオプション> i2c そしてそれを有効にします。
  3. RaspberryPiを再起動します:
    sudo reboot
    

ステップ4:必要なライブラリをインストールします

  1. RaspberryPiを更新します:
    sudo apt update && sudo apt upgrade -y
    
  2. GPIOおよびI2Cライブラリをインストールします。
    sudo apt install -y python3-rpi.gpio python3-smbus python3-pip
    pip3 install adafruit-circuitpython-ads1x15
    

ステップ5:水分レベルを読むためのPythonコード

デジタルセンサー用

import RPi.GPIO as GPIO
import time

SENSOR_PIN = 17  # GPIO Pin connected to D0
GPIO.setmode(GPIO.BCM)
GPIO.setup(SENSOR_PIN, GPIO.IN)

try:
    while True:
        if GPIO.input(SENSOR_PIN):
            print("Soil is Dry!")
        else:
            print("Soil is Moist!")
        time.sleep(2)
except KeyboardInterrupt:
    print("Exiting...")
finally:
    GPIO.cleanup()

アナログセンサーの場合(ADS1115を使用)

import time
import board
import busio
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn

# Initialize I2C and ADS1115 ADC
i2c = busio.I2C(board.SCL, board.SDA)
ads = ADS.ADS1115(i2c)
moisture_sensor = AnalogIn(ads, ADS.P0)  # A0 on ADS1115

try:
    while True:
        moisture_level = moisture_sensor.value
        print(f"Soil Moisture Level: {moisture_level}")
        time.sleep(2)
except KeyboardInterrupt:
    print("Exiting...")

ステップ6:土壌水分センサーの用途

  1. スマート灌漑 - 土壌が乾燥しているときに植物を自動的に給水します。
  2. 気象観測所 - 土壌条件をリモートで監視します。
  3. 温室自動化 - 水分レベルに基づいて植物の成長を最適化します。
  4. IoTプロジェクト - リモート監視のためにクラウドプラットフォームにデータを送信します。

トラブルシューティング

  1. センサーは水分を検出しません

    • 配線を確認し、正しい電圧を確認してください。
    • アナログセンサーの場合、 ADS1115モジュールが適切に検出されます 使用:
      sudo i2cdetect -y 1
      
  2. 不安定な測定値

    • センサーを過度に配置しないでください 濡れた環境 腐食を防ぐため。
    • 容量性センサーの場合、確実に クリーンプローブ表面 正確な測定値。

結論

土壌水分センサーにより、Raspberry PIプロジェクトが可能になります 植物の散水を監視および自動化します、それらを理想的にします スマートガーデニングとIoTアプリケーション。このガイドに従うことで、できます 土壌湿度レベルを読み、自動化されたアクションを引き起こします リアルタイムデータに基づいて! 🌱🚀

コメントを残す

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.