ラズパイではじめてのLチカしてみた記録
はじめに
RaspberryPiではじめてのLチカ(LEDをチカチカ点滅させるだけ)してみたので手順をメモしておきます。筆者はマイコン初心者で電子工作も門外漢なため、至らぬ点はご容赦ください(予防線)
「RaspberryPiって何?」という方は、僕が完全に理解した際に作成した資料をご覧ください。
ラズパイにLEDをつなぐ
ラズパイは「Raspberry Pi 3B+」を使用。金属ケースと冷却ファンを装着済み。格好良いので。
Lチカ以外にもラズパイで色々遊びたかったので、様々なパーツの入ったスターターキット的なやつをAmazonで適当にポチりました。
マジでなにひとつわからない。
軽くググって情報見た感じ「たぶんこの辺のやつ使えばできるっしょ!」というものたちを取り出して、いっちょやってみました。
- ブレッドボード
- ジャンパーワイヤー
- LED
- 抵抗器
ブレッドボードには配線の役割がある模様。僕はGPIOピンで一度失敗したので、こういうのあるだろうってのは学習しました(キリッ
LEDは足の長い方がプラス(+)、短いほうがマイナス(-)。初耳。
ブレッドボードのF6に+、F7に-を接続。
どこまで突っ込んだら良いのかわからない。はじめてなので優しく。
抵抗器をH3,H6に差す。
ブレッドボードの印字がずれててそもそも位置が怪しい。こちとら初心者やぞ(逆ギレ
J3,J7にジャンパーワイヤーを差す。
もはやいま差してる線がジャンパーワイヤーかすら分かっていない。マジで何もわからない。
差そうとしてるところに冷却ファンのピンが被ってたので、一旦抜きました。
1ピン, 6ピンにそれぞれ差して、無事にLEDが点灯しました。
とりあえず爆発しなくてよかったです。
PythonでLチカプログラムを書く
このままだとだた配線して通電しただけなので、LEDが点灯しっぱなし。こいつをチカチカ点滅させるプログラムをPythonで書きます。
PythonはHello worldくらいしかやったことない僕でも、ザッと眺めたら何となくわかる10行ほどのコード量です。コピペでいけます。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import time
COUNT = 3
PIN = 11
SLEEP = 1
GPIO.setmode(GPIO.BOARD)
GPIO.setup(PIN,GPIO.OUT)
for _ in range(COUNT):
GPIO.output(PIN,True)
time.sleep(SLEEP)
GPIO.output(PIN,False)
time.sleep(SLEEP)
GPIO.cleanup()
変数PIN
にチカチカするための出力を切り替えるため、ピン番号を指定しています。たぶんここだけ変えれば動きます。
先ほど外した冷却ファンを使いたかったので片方のジャンプワイヤーのピンの位置は変えました。
(6)
-> (11) GPIO17
ピン番号まわりの確認
GPIO.setmode(GPIO.BOARD)
で物理ピン番号を指定するモードにしています。サンプルコードによってはGPIO.BCM
で指定されている場合もありますが、それぞれ以下のような番号となっています。
-
GPIO.BOARD
: 物理ピン番号(左上からの連番) -
GPIO.BCM
: 役割ピン番号
ピン番号はラズパイのターミナル上でもpinout
コマンドで確認できます。
$ pinout
Lチカさせる
これでプログラムを実行するとLチカするはず。
$ python lchika.py
実 績 解 除
Lチカさえしてしまえば、ラズパイは完全に理解したと言えるでしょう。
皆さんも気軽にラズパイを完全に理解しちゃいましょう😉
現場からは以上です。
Discussion