ものづくりブログ

ゼロからスタートして何かを作って世に出すまでのことを書くブログです.

Raspberry PiでLチカしてみる 実践編

f:id:daisukekmr:20150122223755j:plain

 

こんにちは.

 

前回の記事でGPIOの設定を行いましたので,LEDを光らせたりセンサの信号を受け取ることができるようになりました.

 

まずはLEDを光らせてみようと思います.通称Lチカです.

 

前回の記事の最後にも書きましたが,今回は以下の物が必要です[1].

※以下,前回の記事からまるごと引用

 

LED

高輝度5mm赤色LED 7cd60度 (10個入): LED(発光ダイオード) 秋月電子通商 電子部品 ネット通販

※リンク先がエラーで表示されない場合は、ページを更新すると表示されることがあります

 

電流を流すと光る素子です.素子とは電子回路用語で1個のパーツを表す言葉で,よく出てくるので覚えておきましょう.

 

抵抗

カーボン抵抗(炭素皮膜抵抗) 1/4W 1kΩ (100本入): パーツ一般 秋月電子通商 電子部品 ネット通販

※リンク先がエラーで表示されない場合は、ページを更新すると表示されることがあります

 

回路のある区間に電圧をかける(印可するという)と電流が流れますが,その力を弱めるのが抵抗です.ここで用意する抵抗はそれ単体では何も役立たないのですが,例えばモータや豆電球などは動いたり光ったりすると同時に抵抗としての働きもします.

今回はLEDを使用して光らせるのですが,LEDは抵抗としてほとんど働かないので,とても大きな電流が流れてしまい,回路の中にある素子を破壊してしまいます.

このため,LEDを使用する場合はほとんどの場合抵抗が使用されます.

 

このあたりの電気理論の話はいずれどこかで軽く触れようと思います.

 

ブレッドボード

ブレッドボード BB−801: パーツ一般 秋月電子通商 電子部品 ネット通販

 

回路を作るときは基板にはんだ付けをして作成することが多いのですが,いろんな素子を組み替えたりするのにいちいちはんだ付けをするのは大変です.

そこで,ケーブルや素子のピンを差し込むだけで回路を作ることができるブレッドボードを使うのが便利です.

 

ジャンパケーブル(オス-オスおよびオス-メス) 

ブレッドボード・ジャンパーワイヤ EIC−J−L: パーツ一般 秋月電子通商 電子部品 ネット通販

ブレッドボード・ジャンパーワイヤ(オス−メス) 15cm(赤): パーツ一般 秋月電子通商 電子部品 ネット通販

 

ブレッドボードとラズパイや,接続穴同士を接続するために使用するケーブルです.これを1セット買っておくとちょっとした試作の時に便利です.

 

------------------引用ここまで---------------------

 

 

それでは早速接続していきましょう.実際に接続する前に,下記のコマンドを実行してラズパイをシャットダウンし,電源を抜きましょう.

 

sudo shutdown -h now

または,

sudo halt

 

基本的に通電している(電気が流れている)状態で端子の抜き差しは感電や素子を壊す危険があるので避けたほうが良いです.

まずは下記の図と写真を参考に接続してみましょう.

 

f:id:daisukekmr:20150123004810p:plain

 

f:id:daisukekmr:20150123005318j:plain

 

ラズパイのUSB端子を下に見て,右上にあるGPIOのピン郡があると思うのですが,その左の列の上から1番目と左の列の上から5番目をブレッドボードに接続します.

また,LEDには+側と-側があるので注意が必要です.素子に足が付いていますが,その長いほうが+で,短いほうが-です.図では足の付根が曲がっている方が+です.つまり,ラズパイのGPIOピンの左の列の1番目を+抵抗につなぎ,抵抗のもう1端をLEDの+側につなぎ,LEDの-側をラズパイのGPIOの左の列の5番目につなぎます.

これでラズパイの電源ケーブルをつなぐと,LEDが光ります.

 

 

 

でもこれだと単にラズパイが電池の代わりをしているだけであまりコンピュータをいじっている感じがしません.

 

そこで次はコマンドラインを使用して命令を出して,LEDを点灯させたり消灯させたりしようと思います.

再度ラズパイをシャットダウンし,電源を抜き,下記の図と写真を参考に接続してみましょう.

 

f:id:daisukekmr:20150123004638p:plain

 

f:id:daisukekmr:20150123183006j:plain

 

さきほどラズパイの左の列の1番目に接続していたケーブルを左の列の4番目に差し替えただけですね.

正しく接続できているか確認して,再度電源ケーブルを刺します.今度はこれだけではLEDは点灯しません.

 

SSHでラズパイにアクセスし,下記のコマンドを実行しましょう[2].

 

echo 4 > /sys/class/gpio/export

echo out > /sys/class/gpio/gpio4/direction

echo 1 > /sys/class/gpio/gpio4/value

 

LEDが点灯すれば成功です.

 

f:id:daisukekmr:20150123183117j:plain

 

このコマンドでラズパイにどのような動作をさせているかは次回の記事で解説します.

 

次に,下記のコマンドを実行してみましょう.

 

echo 0 > /sys/class/gpio/gpio4/value

 

LEDが消灯したら成功です.

 

f:id:daisukekmr:20150123183006j:plain

 

これでGPIOを使用して外部の素子を制御することに成功しました.

何度か遊んでみて満足したら,下記のコマンドを実行して終了です.

 

echo 4 > /sys/class/gpio/unexport

 

 

いかがでしたか?少しやった感が出てきました.もう少しするとセンサなどを使ってこちらで命令を出さずに制御ができるようになります.そうすると徐々に実用的な装置の作製が見えてきます.

 

 

参考文献

[1]ものづくりブログ「Raspberry PiでGPIOを使う(C言語)」(http://daisukekmr.hatenablog.com/entry/2015/01/23/210000)

[2]Raspberry Piで遊ぼう! 改訂第3版 〜 モデルB+完全対応