【IoT】簡単!Raspberry piでLEDを点滅(Lチカ)

IoT

愛知県稲沢市在住の【中小企業診断士✖️IoTプロフェッショナルコーディネーター】が、ものづくりの楽しさをお伝えする《がちゃラボ》です。

以前こちらの記事で、Raspberry piを使いLEDを点灯させるという事に挑戦しました。スマート製品、IoT製品の基礎の基礎ですね。

今回はただ光らせるだけでなく、チカチカと点滅させたいと思います。このLEDをチカチカ制御する事を、電子工作業界では『Lチカ』と言ったりして、最初の課題とされるくらいの基本の技術だったりします。

あと、チカチカさせるためにはプログラムを組む必要があって、今回は『Python』というプログラミング言語を使います。Pythonの入門と呼べるくらいの簡単なプログラムですので、ご安心ください。

スポンサーリンク

Raspberry pi でLチカするために準備するもの

  • Raspberry pi一式
  • LED
  • 抵抗
  • ブレッドボード
  • ジャンプワイヤ

下記記事で準備したものを、そのまま使います。また、Raspberry pi やLEDなどを繋げた回路もこの記事で作ったものを変更していきます。

Lチカのための回路変更

Raspberry pi とブレッドボードをジャンプワイヤで繋いでいますが、Raspberry pi の繋いでいる場所、GPIOの接続箇所を変更します。

現在、『3V3』という端子に繋がっているジャンプワイヤを、その隣のGPIO02という端子に繋ぎ変えてください。図で説明すると、下記の赤い矢印のような感じです。

写真だとこんな感じ。

GPIOは、簡単に言うとプログラムでONやOFFを制御できる端子です。今回は点滅させたいので、ON・OFFを繰り返すプログラムを作ります。

PythonでLチカのプログラミング

それでは、Pythonというプログラミング言語を使って、LEDを点滅させるプログラムをつくりましょう。Pythonはできることがたくさんあって、”ライブラリ”というものがそれを支えています。が、今回はそこまで複雑なライブラリは使いません。

Pythonを使うためのツール立ち上げ

今回は『Thonny Python IDE』というエディタを使って、Pythonのプログラムを作ります。Raspbianのインストールの際に、フルサイズ版をインストールしていれば、この『Thonny Python IDE』も一緒にインストールされると思います。

スタートメニューのプログラミングメニューにある『Thonny Python IDE』を起動します。

立ち上げた画面がこちら。

上記のようにテキストエリアにプログラムを書いていきます。

プログラムを書く

では、以下のプログラムをエディタで書いてください。下記からコピペで問題ありません。プログラムの詳細は後述します。

import RPi.GPIO as GPIO             *1)
import time                         *2)

GPIO.setmode(GPIO.BCM)              *3)
GPIO.setup(2, GPIO.OUT)             *4)

while True:                         *5)
    GPIO.output(2, GPIO.HIGH)       *6)
    time.sleep(0.5)                 *7)
    GPIO.output(2, GPIO.LOW)        *6)
    time.sleep(0.5)                 *7)

Pythonで書いたプログラムを実行

では、Pythonで作ったプログラムを実行しましょう。実行方法は、エディタに再生ボタンがあり、これをクリックするとプログラムが実行されます。

どうでしょうか。LEDがチカチカと点滅したでしょうか?もし点滅しないよ、という人がいたら、プログラムを間違えていないか、回路の繋ぎ方が間違っていないか、確認してください。

スポンサーリンク

Pythonプログラムの説明

それでは、プログラムの説明です。*1)から*7)に分けて説明します。

*1) GPIOを制御するためのライブラリをインポート
*2) 待ち時間を設定するためのライブラリとインポート

*3) モードを指定。GPIO02などの役割で制御したい場合には BCM というモードを指定。
*4) GPIO02が、出力(OUT)ですよ、と指定。

*5) ずっと繰り返すために、while True: を記述。

*6) GPIO02 に HIGH,LOW の信号を送る(HIGH:点灯、LOW:消灯という信号をOUTする)

*7) 0.5秒間隔毎に点灯⇔消灯を繰り返すように待ち時間を設定

さいごに

今回はRaspberry piとPythonというプログラミング言語を使って、LEDを点滅させるLチカを試しました。

これを応用すると、ある温度になったらLEDを光らせる、ある時間になったらLEDを消すなどのシステムを作ることができるようになりますので、色々と試してみましょう。

コメント

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