最低限の知識でLチカする

RaspberryPi

raspberry-piで初期設定が終わったら、まずLチカがやりたいかと思います。

でもなんだかよくわかりませんよね。

とりあえず、何でもいいので光らせてみたいと思います。

Lチカとは?

人にはききにくいですよね。

なんということはありません。プログラム制御でLEDを光らせることです。

ラズパイの他に必要なものは?

まずはLEDと、抵抗と、ジャンパーピンです。

※ ジャンパーピンは要するに電気の線です。オスメスのものを用意します。

オスメスとは、片方は針金(表現がまずいか?)が出ていて、片方は差し込まれる形状のものということです。

※ 抵抗は100Ωだそうです。よくわからなくても100Ω以上なら大丈夫です。

LEDが暗く光るだけです(笑)

ちなみに抵抗をつけないと、LEDが爆発します!!危険です。

ただ、こういったものの入手も困難かもしれません。

Amazonなんかでも全部セットとかにして売っているので、それで購入してもいいと思います。

ブレッドボードもあるといいです

はんだ付けをする人なら、前述の部品でLチカできます。

でもそうゆうのは面倒な方はこれです。

穴の中に金属板が入っているので、配線をブスブスと穴に差し込めば、簡易的な実験ができます。

NOはんだです。

配線について

まずはLED

LEDは足の長いほうがプラスです。

抵抗はどちら向きでも大丈夫です。

配線イメージ

直接つなぐとこのような形になります。

GNDという言葉が出てきました。これはグラウンドのこと。

マイナス端子をつなぐ場所なんです。

ラズパイではどこにあるか説明しますね。

ラズパイのピン配置

図上がラズパイの外側です。

黒丸がGNDです。どれにつないでも同じです。

番号の書いてあるところにプラスをつなげて、プログラムで制御します。

後述しますが、この番号はプログラムでBCMというものになります。

※ 赤丸は5V、オレンジは3.3Vが直接取れます。制御しないもの。例えば、冷却ファンなどを取り付けるといいです。

つないでみます

今回はミニブレッドボードを使いました

普通のブレッドボードと、少し説明します。

ミニブレッドボードは、この通りプラスもマイナスも何も書いていません。

でもご心配なく。

中身は横に金属板が埋め込まれているだけです。

行ごとにプラスとマイナスを分けて指せばいいだけなんです。

今回はプラスを18番につなぎます

上の図で18番を見るとGNDの隣にあります。つないだ理由はそれだけです(笑)

ブレッドボードはこんな感じです。

次はラズパイでの作業になります。

プログラムしてみます

ラズパイでは、pythonというプログラム言語を使います。

何でプログラムを記述するのかといいますと、nanoというエディターを使って記述します。

nanoは、何というかメモ帳に近いものです。

とりあえず、nanoというものがあるよでいいです。

ラズパイでターミナルを開きます

画面左上の黒い四角をクリックです。

ターミナルの画面が出ます。

nanoと打ち込んで、エンターを押します。

ターミナルと同じような黒い画面なんですが、これがnano

写真はプログラムを書き込んだところです。

内容はこちら。

#!/usr/bin/python
import RPi.GPIO as GPIO
import time
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(18,GPIO.OUT)
while 1:
    GPIO.output(18,True)
    time.sleep(1.0)
    GPIO.output(18,False)
    time.sleep(1.0)

なんだかよくわからない。となれば、ラズパイのブラウザでこのブログをひらいて、コピペしてもいいです。

理屈は後(笑)光らなければ面白くない!

プログラムを保存します

nanoの画面の下に説明があるんです。

終了するにはXなんですね、操作方法は、キーボードのCtrlとXを押します。

保存の確認です。キーボードのYを押します。

書き込むファイルとは名前を付けるということです。

今回は、lthika.pyにしました。

名前は何でもいいのですが、pythonのプログラムの場合は、必ず最後を.pyにします。

なんで?

まぁいいじゃないですか、細かいこと(笑)

プログラムを実行します

ターミナルで、先ほど保存したファイル名を実行します。

python lthika.py

でエンターです。

これだけで光りました。

少しだけ解説

根がいい加減なので、変な解説ですいません!!

#!/usr/bin/python       #おまじないみたいなもの毎回書きます。
import RPi.GPIO as GPIO    #GPIOピン使いますよ宣言。
import time          #時間を制御します宣言。
GPIO.setwarnings(False)      #以前のGPIOの記憶は関係ないぜ宣言。
GPIO.setmode(GPIO.BCM)    #BCMの並びを使う宣言。
                #(上の図がBCMの並び。ピンの順番で制御するにはBOARDと書きます。)
GPIO.setup(18,GPIO.OUT)   #18番ピンからプラスの電流流すぜ宣言。
while 1:                     #無限ループします。
    GPIO.output(18,True)   
    time.sleep(1.0)      #1秒光ります。
    GPIO.output(18,False) 
    time.sleep(1.0)      #1秒休みます

ちなみに停止は、キーボードのCtrl+Cです。

試してみてください!

コメント

タイトルとURLをコピーしました