2.6 スマートウォータータンク

このプロジェクトでは、水位センサーモジュールとサーボを使用してスマートウォータータンクをシミュレートします。水位センサーはタンク内に固定され、水位が閾値以下になった場合に、サーボによって制御されるバルブが開き、水が流れ込むようになります。

必要なコンポーネント

このプロジェクトには、以下のコンポーネントが必要です。

キット全体を購入すると便利です。リンクはこちら:

名前

キット内容

リンク

ケプラーキット

450+

Kepler Kit

以下のリンクから個別に購入することもできます。

番号

コンポーネント

個数

リンク

1

Raspberry Pi Pico W

1

BUY

2

マイクロUSBケーブル

1

3

ブレッドボード

1

BUY

4

ジャンパーワイヤー

数本

BUY

5

サーボ

1

BUY

6

水位センサーモジュール

1

配線

pin_adc

Pico Wには、アナログ入力を使用できるGPIOピンが3つあります。それは、アナログチャネル0、1、および2のGP26、GP27、GP28です。 また、内蔵温度センサーに接続されている第4のアナログチャネルもありますが、ここでは紹介しません。

water_tank0

  • 水位センサーのSはGP26(A0)に、+はVBUSに、-ピンはGNDに接続されています。

  • サーボのオレンジ色のワイヤー(信号)はGP15に、赤色のワイヤー(電源)はVBUSに、茶色のワイヤー(接地)はGNDに接続されています。

コード

注釈

  • 下の画像を参照して、ドラッグ&ドロップでコードを書くことができます。

  • kepler-kit-main\piper のパスから 2.6_water_tank.png をインポートしてください。詳細なチュートリアルについては、 コードをインポート を参照してください。

water_tank

Pico Wに接続した後、 スタート ボタンをクリックしてコードが実行されます。水位が水位センサーの1/3より低い場合、サーボは180度回転して入口が開くようにシミュレートされます。水位が水位センサーの1/3より高い場合、サーボは0度に回転して入口が閉じるように模倣されます。

動作原理

water_tank1

ピン15(サーボ)の回転速度を15%に設定します。

  • [servo pin() set speed to ()%]:サーボピンの回転速度を設定するために使用されます。範囲は0%〜100%です。

water_tank2

ピンA0の値を読み取り、変数[water_level]に格納します。

  • [set (water_level) to]:変数の値を設定するために使用されます。変数を Variables パレットから作成する必要があります。

  • [read voltage from pin ()]:アナログピン(A0〜A2)の電圧を読み取るために使用されます。範囲は0〜3.3Vです。

water_tank3

電圧の閾値を1に設定します。水位センサーの電圧が1より小さい場合、サーボを180°の位置に回転させます。それ以外の場合は、0°の位置に回転させます。

  • [servo pin () set angle to ()]:サーボピンの角度を設定します。範囲は0〜180°です。