Contrôler une LED avec la Raspberry Pi

Raspberry PiとPythonでLEDのオンとオフを切り替えます。

更新しました 5 6月 2019 - 0 コメント - , , ,

ⓘ Cet article peut avoir été partiellement ou totalement traduit à l'aide d'outils automatiques. Nous nous excusons des erreurs que cela pourrait engendrer.

このチュートリアルは、Raspberry PiのGPIOポートを使用して電子コンポーネントを制御することを目的としたシリーズの最初のチュートリアルです。

おそらくご存知のとおり、Raspberry PiにはGPIO(汎用入出力)と呼ばれるポートがあり、これを使用していくつかの電子コンポーネントを制御できます。

このチュートリアルでは、これらのGPIOポートを使用してRaspberry PiでLEDを制御する方法を説明します。

必要な装備

このチュートリアルを実行するには、次の資料が必要です。

このチュートリアルは、コンポーネントをはんだ付けする必要なく、完全に実行できます。

さらに、SDカードにRaspbianをインストールし、キーボード/マウス/画面から直接、またはSSH経由でRaspberry Piを制御する方法が必要です。

GPIOの基本

GPIOポートは、一般に電気信号の送信を可能にする正方形の金属ピンの形の物理ポートです。

gpiosピン
はんだ付けを目的としたGPIOコネクタ

GPIOポートは、比較的バイナリの信号(電流または電流なし)を送信します。Raspberry Piの場合、GPIOポートは3.3 Vおよび約20 mAで動作します。

したがって、GPIOポートは、物理要素を通信または制御する簡単な方法です。

Raspberry Piの最新モデルには40のGPIOコネクタがあり、特定の用途でさまざまなカテゴリに分類されています。

  • 源+:連続電源
  • GND:アース=アースに戻る
  • I2C:同期シリアルプロトコル
  • SPI:その他の同期シリアルプロトコル
  • UART:非同期プロトコル+シリアルからパラレルへの通信変換。
  • GPIO:オプションでI2CまたはSPIに変換できる汎用ポート。

GPIOポートには1から40までの番号が付けられ、Raspberry pi GPIOポートを右に持ったときに左上から始まります。これは、いわゆる「ボード」ナンバリングモードです。「BCM」モードと呼ばれる、プロセッサーのアドレス指定に基づく別の番号付けモードが存在します

このチュートリアルのコンテキストでは、GPIOおよびGNDタイプのポートと「ボド」番号のみを使用します

LEDをRaspberry Piに接続する

接続するには、LED、抵抗器、ブレッドボード、ラズベリーのコンポーネントを使用します。

チュートリアルの最初のステップは、LEDをRaspberry Piに接続する回路を設計することです。心配しないでください。非常にシンプルで、複雑な図を作成する必要はありません。

抵抗の選び方は?

最初に知っておくべきことは、LEDは常に抵抗を使用する必要があるということです。これは、LEDにいわゆる「しきい値電圧」があるためです。簡単に言えば、電流が少なすぎてLEDがすぐに切れてしまうため、抵抗は保護です。

したがって、使用する抵抗を選択する必要があります。これには、使用する抵抗のサイズを計算する数式があります。

Rmin = (Ualim - Uled) / Imax

あなたの物理学のクラスからの良い残り物がない限り、それはあなたを遠くに連れて行かないと私は推測しています。小さな説明:

  • Rmin:オーム(Ω)で表した、使用する最小抵抗
  • Ualim:ボルト(V)で表される電源電圧
  • Uled:ボルト(V)で表されるLEDしきい値電圧
  • Imax:アンペア(A)で表されるLEDの最大強度

前述のように、GPIOは3.3 Vおよび20 mAを提供します。LEDの最大輝度は20 mA(20 mA = 0.020 A)で、しきい値電圧は1.5 Vと1.9 Vです。

したがって、式は次のようになります。

Rmin = (3.3 - 1.5) / 0.020

したがって、90Ωの最小抵抗が得られます。これは100Ωに丸めます。代わりに270Ωの抵抗器(または330Ω、正規化された値)を選択することにより、ある程度の余裕をとり、GPIOで発生する可能性のある電流ピークから保護します。

抵抗の値を見つけるには、2つの可能性があります。

  • これは、LEDをまとめて保持する紙に記載されています。
  • 値を計算するには、抵抗器のカラーリングを読み取る必要があります。オンラインでチュートリアルとサイトが見つかります。(100Ω=ブラウンブラックブラウン、270Ω=レッドパープルブラウン、330Ω=オレンジオレンジブラウン)

Raspberry PiのGPIOにLEDを接続します

使用する抵抗がわかったので、すべてをRaspberry Piに接続する必要があります。

そのために、デュポンのオス/メスのケーブルを2本使用します。電源には赤いケーブルを、アースに戻るには黒いケーブルを選択します(これは慣例です)。

赤いケーブルをGPIOポート7に、黒いケーブルをGPIO 6に接続します。

2本のケーブルを数列離してブレッドボードに接続します。赤いケーブルをLEDの陽極(長い脚または長い脚)に接続し、抵抗の一方の脚を陰極(LEDのもう一方の脚、したがって短い脚)に接続し、抵抗のもう一方の脚を接続します。黒いケーブルに。

ヒント:どちらの脚が陽極で、どちらの脚が陰極であるかを思い出すのに問題がありますか?シンプルなニーモニック、延長されたアノードフィード!

よくわからない?パニックに陥らないでください、「少しのドローイングは長いスピーチよりも優れています!」

赤は陽極に、陰極は抵抗に、抵抗は黒に!

すべてが正常に機能していることを確認したい場合は、少し簡単なテストが可能です。GPIO#7から赤いケーブルを外し、それを#1に接続します。これは3.3 Vを永続的に提供します。配線が正しい場合、LEDはオンになります:)!

ラズベリーでLEDを制御するプログラムを作成する

これで回路が準備できたので、GPIOポートを制御してLEDをオン/オフするプログラムを作成するだけです。

このために、Pythonプログラミング言語を使用します。このチュートリアルでは、非常に基本的であり、その使用方法と機能を説明するプログラムの例を示します。

したがって、これはPythonコースではありません。ただし、最近、Pythonを使用してプロジェクト用の独自のプログラムを作成する方法を説明する入門Pythonコースを公開したい場合は、

フォルダを作成します /home/pi/electronic とファイル led.py そのフォルダに、次のコードを記述します。

後ろのテキストに注意してください # コードの機能を説明するために使用されるコメントですが、プログラムには影響しません。最初の2行を除いて、コピーする必要はありません。

#!/usr/bin/env python3
#-- coding: utf-8 --

import RPi.GPIO as GPIO #Importe la bibliothèque pour contrôler les GPIOs

GPIO.setmode(GPIO.BOARD) #Définit le mode de numérotation (Board)
GPIO.setwarnings(False) #On désactive les messages d'alerte

LED = 7 #Définit le numéro du port GPIO qui alimente la led

GPIO.setup(LED, GPIO.OUT) #Active le contrôle du GPIO

state = GPIO.input(LED) #Lit l'état actuel du GPIO, vrai si allumé, faux si éteint

if state : #Si GPIO allumé
    GPIO.output(LED, GPIO.LOW) #On l’éteint
else : #Sinon
    GPIO.output(LED, GPIO.HIGH) #On l'allume

これで、プログラムが実行可能になります。これを行うには、次のコマンドを実行します。

chmod +x /home/pi/electronic/led.py

次のように呼び出して、スクリプトを実行するだけです。

/home/pi/electronic/led.py

スクリプトを実行するたびに、LEDがオフの場合はオンになり、オンの場合はオフになります。

これで、Raspberry PiでLEDをオン/オフする基本がわかりました。あなたがしなければならないすべてはあなたのニーズに合うようにコードを適応させることです。そのために、Pythonに関するコースを遠慮なく相談してください!

このシリーズの次のチュートリアルに進み、Raspberry PiでRFIDカードを読み取ってください。

5/5 - (1 vote)
共有
ニュースレター
著者:
Raspberry Pi FR
Raspberry Piコミュニティに参加する
35ドルのコンピューターはすでに1000万部を売りました
新しいRASPBERRY PI 4を購入する
関連チュートリアル
WindowsとMacからRaspberry SDカードのLinuxパーティションを読み取ります。 Raspberry Pi、USBキーまたは外付けハードドライブから起動する方法。 Raspberry Pi Imagerを使用して、Windows、Mac、またはLinuxからSDカードを作成します。 あなたのラズベリーパイとサンバとSINを作成します。 Raspberry PiにeSpeakでテキストを読ませる方法。
コメントはまだありません

共有
ニュースレターのサインアップ
ニュースレターを購読します。
この記事は気に入りましたか?
購読して最新情報を入手してください!