前の記事で、仮想マシンにラズベリーパイデスクトップを導入して、スクラッチやpython(パイソン)プログラミング環境の紹介までしました。この記事では、Blocklyでプログラムした”数当てゲーム”を利用してpythonとSenseHAT(これも仮想)を使います。
まだ、『ラズベリーパイで学ぶ①』をご覧になっていない方は、そちらで仮想マシンへのラズベリーパイデスクトップの導入まで紹介していますので、先にご覧ください。また、”数当てゲーム”作成については、『Blockly ブロックリー ゲームズ の次はプログラムを作ってみよう①』から5回に渡り紹介していますので、ご覧ください。今回新しく紹介するハードはSenseHATです。ラズベリーパイに接続して使います。今回もハードを購入せずにエミュレーターを使用します。
SenseHATとは
1.Blocklyで作ったPythonプログラムをラズベリーパイデスクトップで動かす
1.前の記事でプログラムを保存されなかった方は、以下からダウンロードしてください。ダウンロードフォルダーに”kazuate.txt”というファイルがダウンロードされますので、名前の変更で”kazuate.py”としてください。
Pythonパイソン 数当てゲームサンプル
2.ブロックリーで作った数当てゲームプログラムを共有フォルダーにコピーします。『ラズベリーパイで学ぶ①』の例の通りに作られていれば、Raspberry_dataをドキュメントの下に作りましたので、ここにダウンロードフォルダーからコピーします。
3.仮想マシンマネージャーを立ち上げ、ラズベリーパイデスクトップを起動します。をクリックし開くプログラミングメニューから、Sense HATエミュレーターをクリックします。
4.Sense HATエミュレーターが立ち上がります。8x8のLEDと3Dジャイロ、加速度、磁力、温度、気圧、湿度センサーがついたハードウェアで、RaspberryPiのPythonから使うことができます。今回は本物のハードウェアではなく、ソフトウエアでシュミレーションしたものを使います。
5.をクリックし開くプログラミングメニューから、Python3(IDLE)をクリックします。
6.Pyhon3.4.2Shellが開きますので、FileメニューからOpenをクリックします。
7.Openメニューが開きますので、”/media/sf_Raspberry_data”から”kazuate.py”を選択しOpenをクリックします。
8.”kazuate.py”が開きますので、Runメニューから『Run Module』をクリックし、一度実行してみます。
9.Python Shellでプログラムが実行されます。
2.PythonプログラムをからSenseHATを動かす
1.これから、”kazuate.py”を修正してSense HAT のLEDを使ってみたいと思います。Pythonについては、別途詳しく別の記事で紹介させていただきますので、取り敢えずこんなことができるんだということで、手順通りにやってみてください。
2.以下がSenseHATのLEDを表示させる機能を追加した”kazuate.py”です。説明はコメントしてあります。#がコメントです。以下からコピーして下さい。
3.Python 3.4.2 Shell のFileメニューからNew Fileをクリックします。
4.新しくUntitledのウインドウが開きますので、右クリックメニューでPasteしてください。
5.プログラムがコピーされました。
6.RunメニューからRun Moduleで実行します。
16.保存するか?の確認メッセージがでますので、OKをクリックします。
7.ファイル名を入力して、Saveをクリックします。例では、kazuate1 としました。
8.保存されると、プログラムが実行されます。予想の数を入力するメッセージと一緒にSenseHATのLEDに?が表示されます。説明上、2つのウインドウを一緒に記録していますが、実際の手順では、SenseHATのウインドウとShellのウインドウは重ねないで、並べて実行してください。
9.700と入力すると、もっと小さいですのメッセージとSenseHATに↓が表示されます。
10.600と入力すると、もっと大きいですのメッセージとSenseHATに↑が表示されます。
11.625と正解を入力すると、正解ですのメッセージとSenseHATに〇と答えの625が表示されます。
Pythonから、SenseHATのLEDを使ってみました。説明無しで申し訳ありませんでしたが、先に実際に動かしてみたほうがお子様は興味を持たれるかなと、説明を後回しにしました。別記事で説明予定です。
コメントを書く