Raspberry Pi Pico W で自動ガーデニング システムを構築する

Raspberry Pi Pico W で自動ガーデニング システムを構築する
あなたのような読者は、MUO のサポートを支援します。当サイトのリンクを使用して購入すると、アフィリエイト手数料が発生する場合があります。 続きを読む。

緑の親指とある程度の忍耐力があれば、屋内にエキゾチックな植物がいくつかある場合でも、ジャガイモや多年草のある本格的な屋外ガーデンがある場合でも、ガーデニングは素敵な趣味です。





そうは言っても、まったく正当な理由がないように思われる理由で植物が枯れ始めたときに、忍耐力が尽きる場合もあります。





Raspberry Pi Pico W は、植物が指一本動かさずに (ほぼ) 確実に繁栄するようにするためのソリューションを提供するのに役立ちます。





植物モニター、いくつかのコード、および小さなマイクロコントローラーを使用して、家のどこからでも植物の健康状態を追跡する方法を確認しましょう。

必要なハードウェア

驚くべきことに、必要なハードウェアはそれほど多くありません。 Plant Monitorには多くの魔法が含まれています。開始するには、いくつかのアイテムが必要です。



このプラント モニターはワニ口クリップの使用をサポートしていますが、このプロジェクトでは、プラント モニタリング デバイスの背面に取り付けられたピン コネクタを使用します。

Windowsは修正不可能なエラーでコードを停止します

ガーデニング アシスタントの設定

このプロジェクトでは、プラント モニターを Raspberry Pi Pico W に接続し、コードを作成して操作してすべてを機能させます。自宅のインターネット接続内でアクセスできる単純な Web ページを提供するには、Web サーバーが必要です。





Raspberry Pi Pico にはさまざまなモデル バージョンがあります。このプロジェクトでは、Raspberry Pi Pico W を使用する必要があります。Pico W の機能については、次のガイドをご覧ください。 ピコWとは何か、何ができるのか .

まず、プラント モニタが接続され、正常に動作していることを確認しましょう。この記事の後半では、ホーム ネットワークに接続された任意のブラウザ対応デバイスを使用して工場を監視するために使用する単純な Web サーバーのセットアップに取り組みます。





プラント モニターの準備

さまざまなインターネット サイトから多くのセンサーを購入できるため、土壌センサーの中には、土壌中で簡単に摩耗するものもあれば、風雨にかなり耐えるものもあることがわかります。 Monk Makes Plant Monitor は、土壌中で腐食しにくいため、優れたオプションです。このモニターは、土壌の水分を測定するだけでなく、湿度と温度も測定します。

  マイクロコントローラーに接続された土壌中の植物モニター

プラント モニターから Raspberry Pi Pico W に接続する必要があるのは、4 つのピンだけです。

  • GNDはGNDに行きます
  • 3V は 3V3 Out に接続します
  • RX_IN は GP0 への道を見つける
  • TX_OUT は GP1 と合流します

電源に接続すると、Raspberry Pi Pico W はそれ自体とプラント モニターに電力を供給できるようになります。デバイスが正常に動作していることを確認するハードウェアのライトがいくつかあることに気付くでしょう。また、緑色、黄色、または赤色に光る LED ライトもあります (土壌で検出された水分のレベルによって異なります)。

新しいPCで最初に行うこと

Monk Makes Plant Monitor にはいくつかの優れた Python モジュールが付属していますが、植物の土壌の状態を監視するには、簡単なコードを作成する必要があります。次の python ファイルは、 MUO GitHub リポジトリ .

あなたは必要になるでしょう pmon.py test.py 土壌センシング部分と python ファイル microdot.py mm_wlan.py 、 と pico_w_server.py 後で簡単な Web サーバーを完成させるために使用されます。

今こそ、立ち止まってリフレッシュするのに最適な時期です MicroPython と Python の微妙な違い まだ行っていない場合。

パイソンファイル、 pmon.py 、プラント モニター用の MicroPython クラスを作成します。 UART は二重データ転送を処理し、アナログからデジタルへの変換も必要です。また、 湿り気 温度 、 と 湿度 関数もこのファイルで定義されています。

    def get_wetness(self): 
        return int(self.request_property("w"))

    def get_temp(self):
        return float(self.request_property("t"))

    def get_humidity(self):
        return float(self.request_property("h"))

    def led_off(self):
        self.uart.write("l")

    def led_on(self):
        self.uart.write("L")

次に必要になるのは、 test.py 私たちから入手したファイル MUO GitHub リポジトリ .

モジュールが 時間、午後 (から プラントモニター )、 と 機械 植物の健康状態を適切に監視することが必要です。

として プラントモニター モジュールがインポートされ、土壌の状態を監視するために必要なのは単純な while ループだけです。また、 印刷する コマンドは、実行後に土壌の水分、温度、および湿度の読み取り値を出力します test.py トニーで。

 time.sleep(2) # PlantMonitor startup time 
pm = PlantMonitor()

while True:
    w = pm.get_wetness()
    t = pm.get_temp()
    h = pm.get_humidity()
    print("Wetness: {0} Temp: {1} Humidity: {2}".format(w, t, h))
    time.sleep(1)

土が乾きすぎていると、植物に水をやりたくないですか?ポンプ リレーを Raspberry Pi Pico のピンに割り当て、if ステートメントを使用して湿り値 (100 のうち) を監視し、リレーを介してウォーター ポンプをトリガーして、水を再びオンにして分配します。

 relay1 = Pin(15, Pin.OUT) #relay is wired up to GP15 and GND 

if w = 24 # watch for a wetness value of 24/100

relay1.value(1) # turn on the relay
    relay1(0) # turn off the relay

植物が受け取った水の量に満足していることを確認するための完璧なバランスを見つけるために、いくつかのテストを行う必要があります.プラントが寒すぎる場合は、別の if ステートメントを追加して、リレーを介して加熱ランプをオンにすることもできます。

このアクセサリがサポートされていない可能性があると電話が言い続けるのはなぜですか

単純な Web サーバー

3 つの python ファイルが必要です。 MUO GitHub リポジトリ Raspberry Pi Pico W が土壌統計を自宅のインターネット接続にブロードキャストするには、次のようにします。

  • microdot.py
  • mm_wlan.py
  • pico_w_server.py

マイクロドット ファイルはバックエンド関数を処理してこの単純な HTTP ベースの Web サーバーを作成し、Raspberry Pi Pico W の IP アドレスを使用して呼び出すことができる html ベースの Web ページとして Python コード出力を表示します。

mm_wlan.py ファイルは、ワイヤレス ネットワークに接続する簡単な方法を提供します。 Raspberry Pi Pico の IP アドレスと接続メッセージを受け取ります。接続に失敗した場合は、代わりに接続失敗メッセージが表示されます。

pico_w_server.py ファイルは、SSID (Raspberry Pi Pico W は 2.4GHz SSID にのみ接続することに注意してください) と Wi-Fi パスワードを入力する場所です。 HTML セクション内で、Web サーバーが Web ブラウザーに表示する内容をカスタマイズできます。 Web ページを 1 秒ごとに更新したくない場合は、更新セクションからコメントを削除し、間隔を微調整することもできます。

このファイルの一番下で、ポートをカスタマイズすることもできます。これは、この情報を自宅の外でインターネットに公開したい場合に便利です。

あなたが実行するとき test.py ファイル、必要なサーバー python ファイル ( mm_wlan pico_w_server ) がインポートされます。を実行した後、 test.py ファイルを開き、Pi の場合は IP アドレス (Thonny 出力にある) を取得し、自宅で同じ 2.4GHz SSID に接続されている Web ブラウザーから使用したポート (デフォルトは 80) を追加します。次のように表示されます。

  土壌統計を表示する単純な html ページ

接続された PC の依存を減らすために、 test.py へのファイル main.py Raspberry Pi Pico W に保存します。LCD を Pico に接続して、IP アドレスを出力するようにディスプレイをプログラムすることも検討してください (接続された PC の依存関係を削除する場合)。

緑の親指を取り戻せ

洗練された土壌センサーとシンプルな Web サーバーを使用して、家のどこにいても Web ブラウザーから植物の健康状態を監視できるようになりました。

必要に応じてコードを微調整してください。準備ができている場合は、セットアップした単純な Web サーバーに洗練を加える土壌センシング アプリの作成を検討してください。

このプロジェクトが完成したと感じさせるには、ポンプとリレーをヒート ランプと一緒に追加すると、完全に自動化された庭ができあがります。これで、「緑色の親指」ステータスを永久に維持できるようになります。