Sense HAT で Hello World!(LED でメッセージを表示する)

メモ:  Category:raspberry_pi

ノリと勢いで Raspberry Pi を購入して数年、いろいろできそうですが「これ」といった活用方法が見いだせないまま・・・そうは言っても、ということでせっかくなので作業記録をつけていきたいと思います。

まずは、 Sense HAT というアクセサリーがいろいろなセンサー込みで販売されているので、雰囲気をつかむため1つ1つ試していきたいと思います。

Sense HAT とは

Sense HAT は Raspberry Pi 用のアドオンボードで、 Astro Pi のミッションのために作られたそうです。(Astro Pi:2015年12月に2つのRaspberry Piボードが国際宇宙ステーションに届けられた。)

Sense HAT には8×8 RGB LED マトリックス、4方向+1方向ジョイスティックがあり、次のセンサーが含まれています。

  • ジャイロスコープ
  • 加速度
  • 磁力
  • 温度
  • 気圧
  • 湿度

Sense HAT 用 Pythonライブラリのインストール

Sense HAT には、 Python 用のライブラリが用意されています。次のコマンドを実行してライブラリーをインストールします・

※使用している Raspbian のバージョンによってはインストール済みの場合もあります。

$ sudo apt-get update
$ sudo apt-get install sense-hat

Raspberry Pi には、Python がインストールされているため準備は以上で完了です。

Hello World!

Sense HAT のドキュメントに登場する Hello world を実行してみたいと思います。

右上のラズベリーアイコンのメニューから[プログラミング] - [Python 3(IDLE)] をクリックし作業ウィンドウを起動します。IDLE とは、 Python の統合開発環境になります。

Python 3(IDLE)の起動

起動したウィンドウの 「>>>」に続けて、次のプログラムを1行ずつ入力していきます。

Python 3(IDLE)
from sense_hat import SenseHat
sense = SenseHat()
sense.show_message("Hello World!")

3行目のコードを入力し、[Enter]キーを押すと LED が光だし「Hello World!」の文字が流れます。

プログラムの実行

このプログラムでは、1行目で sense_hat ライブラリの SenseHat クラスをインポートし2行目でインスタンス化しています。3行目の show_message メソッドを実行することで Sense HAT 上の LED に文字を表示しています。

API Reference を確認すると、 show_message メソッドには次の4つの引数を渡すことができます。

引数 Type 説明
text_string String 表示する文字列
scroll_speed Float 文字の流れるスピード
text_colour List 文字色(RBGでそれぞれ指定)
back_colour List 背景色(RBGでそれぞれ指定)

例えば、文字色を指定して実行したい場合は次のプログラムを実行します。

from sense_hat import SenseHat

sense = SenseHat()
sense.show_message("Hello World!", text_colour=[255, 0, 0])

背景色を指定した場合、文字列の表示が終わっても LED が光ったままになります。 LED を消すには、次のメソッドを実行します。

sense.clear()

とりあえず、始めの一歩ということで「Hello World!」を流すことができました。何かしらの条件で LED を光らせお知らせするなど使い道はありそうです。

bluenote by BBB