ラズパイでLチカしてみた
TL; DR
- N番煎じですが、ラズパイでLチカしてみた
Lチカ
Lチカとは、LEDチカチカの略である。
https://dic.nicovideo.jp/a/lチカ
つまり、この記事はLEDをチカチカしてみたよ!というだけの記事です。
LEDをチカチカさせる、通称Lチカは電子工作の第一歩的なポジションです。
プログラミングでいうならば、Hello world ですね。
LED自体は電池につなげば光るので、あとは手動でつけたり消したりすればLチカの完成です。
ただ、エンジニアなので自動化させたい。
そこでラズパイを使ってLEDをチカチカしてみました。
使ったもの
使ったものは以下になります。
- LED
- 抵抗
- ブレッドボード
- ジャンパーワイヤー
- Raspberry Pi 3 Model B+
- ラズパイ用の電源ケーブル
これを買ったらラズパイと電源ケーブル以外は入ってました。
いろんな電子部品が入っていて、しかも安かったので買いました。
動かしてみる
こんな感じでつなぎました。
回路図も書いてみました。
(drawioで描いたのですが、もっと良いツール等あれば教えてください。)
プログラムを書きます。
import RPi.GPIO as GPIO
import time
GPIO_LED = 4
GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_LED, GPIO.OUT)
while True:
GPIO.output(GPIO_LED, GPIO.HIGH)
time.sleep(1)
GPIO.output(GPIO_LED, GPIO.LOW)
time.sleep(1)
GPIO.cleanup()
動かしてみると↓のとおり点滅しました!
簡単に解説
回路について
ラズパイではGPIOの出力を制御することができます。
(HIGHとLOWをプログラムで変更できる)
これを電源にすることで、HIGHのときはLEDが光り、LOWのときはLEDが消えます。
また、LEDに流れる電流を調整するために抵抗を挟んでいます。
プログラムについて
今回は、python を使いました。
ラズパイだとPythonプログラム中で RPi
が使えます。
これを使ってGPIOを制御しています。
GPIO番号の指定方法を決めます。
ピンの並びで端から順番に1,2,3,...という並び順で指定する方法と、各ピンごとの役割に応じて名前がついていてその名前で指定する方法があります。
今回は役割としてGPIO4となっているものを指定するので、GPIO.setmode(GPIO.BCM)
しています。
(並び順で指定する場合は GPIO.setmode(GPIO.BOARD)
)
GPIOの4番を出力用として設定しています。
GPIO.setup(GPIO_LED, GPIO.OUT)
あとは無限ループの中でオンとオフを切り替えているだけです。
ラズパイで出力を切り替えるのは GPIO.output(GPIO_LED, GPIO.HIGH)
のようにします。
まとめ
Lチカできました!
Discussion