Studuino ブロックプログラミング環境

Index > 趣味 > Computer > Studuino

はじめに

アーテック(Artec)社のロボット教材 Robotist のプログラミングには MIT の Scratch をベースにしたブロックプログラミング環境が使用できますが,公開さ れているバイナリーは Windows, Mac OSX, RaspberryPi 用の Debian (raspbian) に対するものに限定されています. その一方で,全てではないですがこのプログラミング環境のソースコードが 公開されているため,PC 版の Ubuntu 14.04LTS での実行にトライしてみまし た。

Studuino ブロックプログラミング環境のインストール

アーテック社の Studuino ダウンロードのページから,ブロックプログラミング 環境のソースコード BPESource1.0.zip をダウンロード し,適当なユーザー権限のディレクトリに保存・展開します.

展開したディレクトリ(BPESource1.0)には Windows, Mac OSX, raspbian 用の各バイナリのアーカイブファイルが保存されていますが, raspbian 用の bz2 ファイルを展開しておきます.

実行環境及び開発環境のインストール

ブロックプログラミング環境は Scratch をベースにしていますので,Ubuntu のパッケージで公開されいている Squeak の実行環境をインストールします. 今回は取り敢えず squeak-vmsqueak-plugins-scratch をインストールしました.

Studuino の本体と PC の通信用のソフトウェアが Java のソースコードとして 提供されて来ますが,修正して実行する必要がありますので,Java の開発環境 とant の ver 1.7 以上が必要になります.現在は Java 8 に開発が移りました ので、パッケージとしては oracle-java8-installerant をインストールしています。

Studuino の本体で実行するためのコードを生成するために avr 用のクロス開 発環境を用意する必要があります.バイナリーパッケージにはこれらが含まれ ているのですが,PC 上の Ubuntu では動作しないので,PC 用のバイナリをイ ンストールします.パッケージとしては gcc-avr, binutls-avr, avr-libc, avrdude をインストールしました.

BoardManager の修正

Studuino 本体と PC の通信はディレクトリ src 以下に 保存されている BoardManager によって実行されますが,このソースコードの Main.java を修正する必要があります.

ソースコード内で avrdude, g++-avr 等に相対パスをつけて呼び出している部分があるのですが,こ の部分を Ubuntu 上にインストールしたファイルを呼び出すように修正します. キレイな修正ではありませんが,こちらのパッチ を参考にしてください.

ソースコードを修正した後は, src/BoardManager/BMJavaの下で ant を実行し,そ の後 src/BoardManager の下で再度 ant を実行し ます.出来た src/BoardManager/BoardManager.jarRobotist/studuinoBPE/BoardManager.jar に コピーします.

bpe.sh の修正

Robotist/bpe.sh が起動用のスクリプトですが,この 中でも raspbian のバイナリで提供されている java を呼び出すような設定なって いますので,この部分をシステムにインストールした java を呼び出すように修正 する必要があります.

実行結果

Robotist/bpe.sh を実行すると,ブロックプログラ ミング環境と BoardManager が起動します.Studuino を USB ケーブルで接続して 試験しましたが,テストモード,作成したプログラムの転送・実行ともに問題なく 行えました.

同様の手順を Debian wheezy でも行ってみたのですが,こちらでは日本語がう まく表示されず,テストモードへの移行も成功しませんでした.しかしながら, 英語表示の状態で,プログラムの作成・転送・実行は可能でした.

Debian を wheezy から jessie にアップデートしたところ、Studuino 上での 日本語の表示も問題なく行えるようになりました。テストモードへの移行も問題 ありませんでした。