RaspberryPiおよびGPIOピンを使用した外部LEDの制御

この投稿では、赤いLEDが点滅する「HelloWorld」GPIOプログラムを作成して、Raspberry PiGPIOピンについて説明します。Pythonプログラミング言語を使用します。Raspbian Stretch Lite(DebianStretchに基づく最小限のイメージを備えたRaspberryPiオペレーティングシステム)でヘッドレスRaspberry Pi Zero WH(はんだ付けされたヘッダーを備えたワイヤレス)を使用しています。

ヘッドレスPiと通信し、コマンドsshを使用してMacからPiに必要なファイルを転送しscpます。RaspbianOSがインストールされた状態でRaspberryPiが稼働していることを前提としています。そうでない場合は、Raspberry Piの公式ドキュメントなど、Piのセットアップ方法とRaspbianのインストール方法を説明する記事がインターネット上にたくさんあります。

必要なもの:

  • 1 x Raspberry Pi(私はPi Zero WHモデルを使用しています)
  • 1xブレッドボード
  • 1x赤色LEDライト
  • 1 x330オーム抵抗器
  • 2xメス-オスジャンパーケーブル

GPIOピン構成

GPIO汎用入出力の略です。GPIOピンの助けを借りて、RaspberryPiは外部の電子部品に接続して相互作用することができます。最近のRaspberryPiモデル(Pi 3、Pi Zero、Pi W、Pi WHモデルなど)には、40個のGPIOピンが含まれています。各ピンは、オンまたはオフにするか、行くことができるHIGHまたはLOW電子用語インチ ピンの場合はHIGH3.3ボルトを出力し、ピンのLOW場合はオフになります。

この例では、pin 6(ground)とを使用しますpin 25。Raspberry PiのGPIOピンの詳細については、pinout.xyzを確認してください。

回路のセットアップ

回路を構築している間は、Piをオフにする必要があります。次の図に示すように回路を作成します。

:画像の抵抗は220オームですが、回路では330オームを使用しています。

  1. メスからオスへのジャンパーケーブルを使用して、pin 6(アース)(上の画像の黒いケーブル)をブレッドボードのマイナス列に接続します。
  2. 別のメスからオスへのジャンパーを使用して接続し、上記のようにブレッドボードのpin 25Aと列12で表されるポイントにGPIOを接続します(上の画像の青いケーブル)。
  3. 330オームの抵抗の一方の端を負の行(上記の黒いケーブルが接続されている緑色で強調表示されている行)に接続し、もう一方の端を上記のようにブレッドボードの行のC11で表されるポイントに接続します。
  4. LEDの短い方の端が負の端で、長い方の端が正の端です。長い方の端は、常に回路内のより高い電圧(つまり、より高い電位)のポイントに接続する必要があります。LEDの短い方の端はpin 25青いケーブルを介してGPIO (3.3Vを出力できます)に接続され、長い方の端はpin 6黒いケーブルを介してアース(0Vでバッテリーのマイナス端子のように機能します)に接続されていますそれらの間の抵抗。

抵抗器

かなり前(約4〜5年)に電気電子工学の入門クラスを受講したことを念頭に置いて、2つの質問に答える必要がありました。この文脈で素朴であることを我慢してください。

  1. なぜ回路に抵抗が必要なのですか?
  2. 抵抗器のオーム数(電気抵抗の尺度)をどのように決定しますか?

Raspberry Piから余分な電気エネルギー(電圧)を放散するには、抵抗が必要です。Raspberry Piは、3.3Vで50mAを供給する定格です。赤いLEDの順方向電圧(順方向電圧はLEDがオンのときに使用される「負の電圧」)が約2Vで、4mAの電流を消費するとします。したがって、残りの1.3Vは抵抗によって消費されるはずです。

、オームの法則を使用してV = IRR=(3.3V - 2V) / (4/1000)の周りに来ている325 ohms-私は使用をお勧めしますので、330オームの抵抗を

これは、RaspberryPiフォーラムのディスカッションから発見しました。

Pythonを使用してLEDを点滅させる

完全な回路ができたので、次の部分は、魔法を起こさせるためにGPIOポートをプログラムすることです:LEDを点滅させることです。GPIOの出力を使用しpin 25てLEDを点滅させます。

Piを起動し、sshを使用して接続します。ターミナルで、次のコマンドを使用してPythonライブラリをインストールしますgpiozero。このgpiozeroライブラリにより、GPIOピンと接続された外部コンポーネントの操作が非常に簡単になります。

Pythonライブラリをインストールするには、と入力しsudo apt-get install python3-gpiozeroます。

次に、Pythonコードを実行します。以下のコードをPiファイルシステムのblink1.py。という名前のファイルに保存します。スクリプトは基本的に、に接続されているLEDをオンにし、pin 251秒間スリープしてから、LEDをオフにして、再び1秒間スリープします。そして、これはプログラムが終了するまで(ctrl+を押すc)ループで継続的に実行されます。

ターミナルから、スクリプトが保存されているディレクトリに移動し、次のコマンドを使用して実行しますpython3 blink1.py

次のように赤いLEDが点滅します。

gpiozero同様の設定を使用して、たくさんの楽しいものを作成できます。gpiozeroいくつかの興味深い例を示しているドキュメントを確認してください。信号機システムを構築してみてください。

2018年4月7日にshahbaz.coで最初に公開されました。