NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

Raspberry Pi 3 Model B(Lチカ!)

イメージ 1
Raspberry Pi 3 Model B」でLチカ!
 
 Raspberry Piオンボードコンピューターですが、マイコン並みの立派なGPIOインターフェースを持っています!
 と言う事で今回はRaspberryPiのGPIOピンを使ってLチカしてみました

1. ピンアウト図

 Raspberry Pi 3 Model B」にはGPIO2~27※1まで26本※2のGPIO※3ピンを図1の通り持っています。
 今回は図1の左上に有る「3V3、1ピンと書かれている3.3Vと、中段に有る「GPIO24、18ピン」と、その下に有る「GND、20ピン」を使います。

※1:GPIO2とGPIO3は内部で抵抗を通じて接続されている為注意が必要。
※2:その他に3.3Vピンが2本、5Vピンが2本、GNDピンが8本、また外部にEEPROMというデータを記憶するための部品を接続するID_SDピンとID_SCピン2本を含めた計40本。
※3:GPIO(英:General-purpose input/output)とは、「汎用入出力」の意味でマイコン等が外界と接続するためのインタフェースの事。GPIOピンにはあらかじめ定義された目的はなく、デフォルトでは使用されない。その動作はユーザによって自由に制御出来る。
 

PIGHIXXXさんのWEBサイトから引用させて頂きました。
イメージ 2
 図1:Raspberry Pi(2、3、A+、B+、Zero)Pinout

2. 手動接続でLチカ!

 RaspberryPiのGPIOインターフェースにジャンプワイヤー(オスメス)を使って手動でLEDに接続し点滅させます。
 
2.1 接続
 起動したRaspberryPiの「3V3、1ピン」→220Ω」→「LEDのアノードからカソード」→「GND、20ピン」の順に回路を接続する事でLEDが点灯します。
 
2.2 Lチカ!
 ジャンプワイヤー「3V3、1ピン」⇔「GPIO24、18ピン」(LOW状態)間で接続を手動で繰り返す事で図2ではLチカしました。
イメージ 3
図2:手動でLチカ!

3. 手動コマンド入力でLチカ!

 コマンドプロンプトに手動でGPIO24ピンをHigh(3.3V)⇔Low(0V)するコマンドを入力しLEDを点滅させます。
 
3.1 接続
 起動したRaspberryPiの「GPIO24、18ピン」220Ω」→「LEDのアノードからカソード」→「GND、20ピン」の順に回路を接続します。
 
3.2 Lチカ!
  図3の様にコマンドプロンプトを開きpi@raspberrypi:~ S 」の後に続けて「gpio -g mode 24 out」と入力しEnterを押しGPIO24ピンを出力に設定します。
 
 続けて「pi@raspberrypi:~ S 」の後に「gpio -g write 24 1」と入力しEnterを押せばLEDは点灯します。
 また、「pi@raspberrypi:~ S 」の後に「gpio -g write 24 0」と入力しEnterを押せばLEDは消灯します。
※20180807誤記訂正:writeの部分がmodeとなっていました失礼致しました。 
 
 点灯・消灯コマンド入力を繰り返す事で図4の様にLEDが点滅(Lチカ)します
イメージ 4
イメージ 5
図4:コマンドでLチカ!

4. 自動プログラムでLチカ!

 RaspberryPiのOS「Raspbian」に標準で備わっているプログラム言語「python※4」を使って自動でLEDを点滅させます。

※4:pythonとは、最近人気のオブジェクト指向スクリプト言語です。文法上の特徴から初心者にも扱い易く、またGoogle社・Yahoo社・Dropbox社等の大手企業でも使用されている言語です。特徴として、可読性に優れている・コンパイルを必要としない・対話型シェルにて動作確認が可能です。

 
4.1 接続
 起動したRaspberryPiの「GPIO24、18ピン」220Ω」→「LEDのアノードからカソード」→「GND、20ピン」の順に回路を接続します。
 
4.2 現在選択されているフォルダの確認
  図5の様にコマンドプロンプトを開きpi@raspberrypi:~ S 」の後に続けてpwdと入力しEnterを押すと現在選択されているフォルダ名「/home/pi」が表示されます。
イメージ 6
図5:現在選択されているフォルダの確認
 
4.3 pythonファイルの作成
 図5で確認したフォルダを開き、フォルダ内を右クリックして「led.py」と言う名のpythonファイルを図6の様に新規作成します。
 作成したファイルをWindowsで言うメモ帳の様な「leafpad」で開き、表1に書かれている内容をコピペして保存します。
イメージ 7
図6:home/piのフォルダにled.pyファイル作成
 
表1:pythonでLチカ!
# coding: utf-8
# pythonでLチカ!(NOBのArduino日記! 20171006)
import RPi.GPIO as GPIO
import time
LED = 24 # GPIO24ピンをLEDのアノード出力元に設定
 
# 初期化
GPIO.setmode(GPIO.BCM)
GPIO.setup(LED, GPIO.OUT, initial=GPIO.LOW)
 
# 100回繰り返す
for i in range(100):
    GPIO.output(LED, 1)   # LEDを点灯
    time.sleep(1)       # 1秒待つ
    GPIO.output(LED, 0)   # LEDを消灯
    time.sleep(1)       # 1秒待つ
 
# 終了
GPIO.cleanup()

 
4.4 Lチカ!
 4.3で作成したpythonのプログラムをコマンドプロンプトで実行し、LEDを点滅させます。
  方法は、図7の様にコマンドプロンプトを開きpi@raspberrypi:~ S 」の後に続けてpython led.py」と入力しEnterを押します。
 すると図8の様にLEDが1秒周期で点滅しました!
イメージ 8
図7:pythonのプログラムを実行
 
イメージ 9
図8:無事自動でLEDが点滅しました

5. まとめ

 RaspberryPiを使い初めてから一ヶ月位経ちましたが、やっとマイコンで言う「Hello World」のLチカが出来ました
 AIや画像認識が出来る様になる迄にどの位時間が掛かるのでしょうか
イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【Raspberry Pi 3 Model B!】目次に戻る