Raspberry Pi Pico W から携帯電話またはタブレットにアラートを送信する方法
ホームページホームページ > ブログ > Raspberry Pi Pico W から携帯電話またはタブレットにアラートを送信する方法

Raspberry Pi Pico W から携帯電話またはタブレットにアラートを送信する方法

Dec 08, 2023

カスタム アラート、Pico W からモバイル デバイスへのメッセージ。

8 ドルの Raspberry Pi Pico W は、素晴らしい小さなボードです。 世界的なチップ供給不足の間、Raspberry Pi の在庫にあったかなり大きな Raspberry Pi の形をした穴を埋め、メーカーに低コストで使いやすい IoT (モノのインターネット) プラットフォームを提供しました。 確かに、これはインターネットに接続された最初のマイクロコントローラーではありません (その栄誉についてはコメントで議論できます) が、多くの Raspberry Pi ファンにとって、これはマイクロコントローラーの素晴らしい世界への第一歩でした。

Raspberry Pi は完全な Linux OS を実行しますが、Raspberry Pi Pico W はファームウェアに依存して、コードを記述するためのレイヤーを提供します。 MicroPython は公式にサポートされている言語の 1 つであり、Raspberry Pi Pico に対応するために多くの改良が加えられています。 改善の 1 つは、Pico W が HTTP リクエストを送受信できるようにする urequests (マイクロ リクエスト) を組み込んだことです。

このハウツーでは、urequests と ntfy.sh を使用します。ntfy.sh は、IoT デバイスからのメッセージをインターセプトしてデバイスに表示できる、Android および Apple デバイス用の無料サービスおよびアプリです。 これを使用して、室内の動きを検出する PIR (受動赤外線) センサーによってトリガーされるアラートを Android 携帯電話に送信します。

Ntfy.sh は非常に効果的でシンプルなサービスです。 特定の Python / MicroPython モジュールをインストールする代わりに、特定のトピックを使用して Raspberry Pi Pico W からメッセージを送信するリクエストを処理します (MQTT の仕組みとよく似ています)。 私たちの Android / iOS デバイスはこのトピックに登録されており、Pico W からの通知を受け取ります。

Raspberry Pi Pico W でのテキストの送信に限定されていますが、このプロジェクトを Raspberry Pi SBC や公式 Raspberry Pi カメラと併用して、イベント発生時に画像 (またはその他の形式の添付ファイル) を送信することもできます。 鳥が鳥の餌箱から餌を与えている場合、または誰かが裏庭にいる場合を言います。 ntfy.sh で画像を使用する方法の例については、辞書の使用方法のチュートリアルをご覧ください。

このプロジェクトの回路は、意図的に信じられないほどシンプルになっています。 PIR センサーと Raspberry Pi Pico の間には 3 つの接続しかありません。

次に進む前に、Pico と PIR センサーの間のワイヤを接続します。

1.ntfy.shをインストールするAndroid / iOS デバイス用。

2. アプリを開き、[+] をクリックして新しいサブスクリプションを作成します。

3.新しいトピックを作成し、「購読」をクリックします。 th-test を使用することにしました。 あなたにとって個人的なトピックを作成してください。 また、トピックはパスワードで保護されていない可能性があるため、機密データを送信しないでください。

4.アプリを開いたままにしておきますあなたのデバイス上で。

次に、Raspberry Pi Pico W のコーディングに移ります。

5.次の手順を実行しますRaspberry Pi Pico W 用の MicroPython の最新バージョンをダウンロードします。最も重要な手順は、UF2 ファームウェア イメージをダウンロードしてインストールし、Thonny をセットアップすることです。 残りはオプションです。

6.オープントニーそして「停止」ボタンをクリックします接続を更新します。 これにより、Python シェルが開いて正しく動作することが保証されます。

7。新しい空のファイルを作成します。

8.ネットワーク モジュールをインポートしてから urequests をインポートし、名前を request に変更します。ネットワーク モジュールを使用すると、Pico W をインターネットに接続できるようになります。 Urequests は、Pico W からメッセージを送信するために使用する Python のリクエスト モジュールの MicroPython バージョンです。Urequests は、最新の UF2 ファームウェア リリースにプレインストールされています。

9.時間からスリープ関数をインポートし、マシンからピンをインポートします。スリープ関数は、プロジェクト コードに一時停止を追加するために使用されます。 マシン モジュールには、コードで GPIO ピンの制御と読み取りを可能にする関数とクラスが含まれています。

10.オブジェクト pir を作成し、それを使用して GPIO 16 の PIR 出力ピンへの接続を作成します。ピンを入力として設定する必要があり、PIR がトリガーされたときに信号によってピンが Low になるように、GPIO ピンを High (3V) にプルする必要があります。