演習: IoT ハードウェアを作成する

完了

このユニットでは、このモジュールで使用されているハードウェアについて学習します。 その後、カーヴの条件を監視してファンを制御するために使用するデバイスを作成します。

GPIO ヘッダー

Raspberry Pi 上のこのピン配列は、General Purpose I/O (GPIO) ヘッダーと呼ばれます。

Photo of a Raspberry Pi 3 with the GPIO header highlighted.

多用途のこのピン ヘッダーは、さまざまなプロトコルを使用した通信をサポートします。 サポートされているプロトコルの詳細については、次のユニットで学習します。

ブレッドボード

ブレッドボードは、回路のプロトタイプを迅速に作成するためのツールです。

A half-sized breadboard with the bus strips (red) and socket strips (cyan) highlighted.

ブレッドボードは、"ストリップ" と呼ばれる行と列で構成されています。 端のバス ストリップ (上の図の赤い箇所) は、ブレッドボードの長さにわたってつながった連結を提供します。 これらは、回路に電力を供給するために使用されます。 ブレッドボードの中央に向かうソケット ストリップ (シアン) を使用すると、回線をはんだ付けしなくてもコンポーネントどうしを接続できます。

Photo of a breadboard illustrating how connections work in socket strips.

たとえば、上の画像の 1 行の a 列にプラグインされたピンは、1 行の b-e 列にプラグインされたピンにも接続されます。 分割線の反対側の 1 行の f-j 列も同様に接続されます。

ブレッドボードと GPIO ブレークアウト ボードを組み合わせることで、GPIO ピンでのプロトタイプ作成を簡略化できます。

環境条件を測定する

温度と湿度を測定するため、一般的に入手可能な低コストの環境センサー BME280 を使用します。

Photo of two examples of available BME280 breakouts.

BME280 センサー チップは、ブレークアウト ボードに既にインストールされています。 ブレークアウト ボードを Raspberry Pi 上の Inter-Integrated Circuit (I2C) バスに接続するだけで済みます。 この I2C バスは GPIO ヘッダーでアクセスできます。

Note

BME280 ブレークアウトの製造元は多数あります。 ほとんどの設計は類似しており、製造元が異なる機能を用意することはないはずです。 このモジュールは、前提条件の Adafruit の例を使用して構築されています。 お使いの BME280 ブレークアウトに、Inter-Integrated Circuit (I2C) インターフェイスが含まれていることを確実にします。

ヒント

ほとんどの BME280 ブレークアウトは、ピン ヘッダーが未接続の状態で販売されます。 そのため、ほとんどの場合、アセンブルにははんだ付けが必要になります。 はんだ付けの仕方がわからなくても心配は無用です。 はんだ付けは、考えているほど難しくありません。 作業を開始するためのチュートリアルやビデオがたくさんあります。

ファンを制御する

ここで構築しようとしているデバイスは、実際のデバイス用に構築するデバイスとは若干異なります。 実際のシナリオでは、次のようなリレー モジュールを使ってファンへの電源供給を制御するでしょう。

Photo of an example of a generic 5V relay module.

リレーは、小さな電流を使用して大きな電流を制御できる電磁スイッチです。 リレーの低電圧入力から小さな電流が流れ込むと、スイッチがアクティブになります。 スイッチをアクティブにすると、別の回路が完結します。

実際のデバイスでは、このようなリレーを使用してファンへの電源供給を制御することがあります。 一般に、カーヴの湿度を維持できるほど大きなファンには、大きな AC 電流が必要になります。 安全上の理由と、コードに集中する目的から、ここでは LED をリレーの代わりとしてデバイスに使用します。 LED の点灯は、リレーが "オン" であることを意味します。

LED をアクティブにするため、コードでは出力の GPIO ピンをアクティブにします。 GPIO ピンは、LED に電流を送り、LED が点灯します。 これは、リレーに電流を送ってスイッチをアクティブにするために使用するのと同じプロセスです。

演習: IoT デバイスを作成する

デバイスを構築するためにブレッドボードを使用します。 完成したブレッドボードは、次の図のようになります。

Fritzing diagram illustrating the breadboard solution.

デバイスを構築するときは、上の図を参照してください。

  1. GPIO ブレークアウトと BME280 ブレークアウトを、図に従ってブレッドボードに配置します。

  2. ブレッドボードにジャンパー ワイヤを配置して、BME280 を GPIO ブレークアウトに接続します。

    GPIO ピン BME280 ブレークアウト ピン 図の色
    3.3V VIN (ラベルが 3V3 の場合あり) [赤]
    接地 GND Black
    SDA SDI (ラベルが SDA の場合あり)
    SCL SCK (ラベルが SCL の場合あり) オレンジ
  3. ブレッドボードにジャンパー ワイヤを配置して、LED を GPIO ブレークアウトに接続します。

    接続元 接続先 図の色
    GPIO ピン 21 LED アノード
    (長い、正のリード)
    [緑]
    LED カソード
    (短い、負のリード)
    1.0 キロオーム抵抗
    (どちらかの端)
    N/A
    1.0 キロオーム抵抗
    (もう一方の端)
    接地 該当なし

    Note

    過電流が原因で LED が焼き切れないようにするために、抵抗が必要になります。 実際のリレー シナリオでは抵抗は必要ありません。

Photo of a completed breadboard prototype.

Raspberry Pi を接続する

Raspberry Pi の電源がオフになっている間は、リボン ケーブルを使用して GPIO ブレークアウトを Raspberry Pi の GPIO ヘッダーに接続します。 Raspberry Pi の電源をオンにします。

次のユニットでは、.NET IoT ライブラリについて学習します。