スフィロミニをスクラッチでうごかす Manipulate Sphero mini on Scratch
2018年11月20日に「Scratch Helper Apps」のバージョン0.8.6が公開されました。
PICAXE has released "Scratch Helper Apps" Version 0.8.6 on November 20, 2018.
これを使うとScratch(スクラッチ)からSphero mini(スフィロミニ)を遠隔操作することができます。早速やってみましょう。
This application will assist communication between Scratch and Sphero mini. And you can remotely control Sphero mini. Let's do it.
スフィロミニはBluetooth(ブルートゥース) Low Enegy(ローエナジー)という規格の無線で通信します。通常のブルートゥースとちがって、省電力用に設計された規格です。パソコンからブルートゥース・ローエナジーに対応したアダプターを使用して通信する必要があります。また、これから使用するS2Bot App for Windowsは、Silicon Labs(シリコンラボ)社のBLED112-V1というアダプタが必要です。
スフィロミニも開封してUSBケーブルを挿して充電しておきます。スフィロミニは1時間充電すると、操作方法にもよりますが約1時間操作することができます。
ダウンロードしたドライバーをWindows10パソコンにインストールします。インストール完了後、またはインストール途中でアダプターを挿すように指示されたらUSBポートに挿します。認識されるにはしばらく時間がかかります。このアダプターは普段から挿したままで大丈夫ですが、ブルートゥース機能を最初から持っている一部のパソコンでは、アダプターが複数あると動作が不安定になるものがあります。このときは、本体に元々あるアダプターを無効化すると良いですが、他のブルートゥース機器と通信できなくなるため、スクラッチで遊ばないときはアダプターを抜いて元に戻さないと後で怒られるので気をつけましょう。
Sphero mini…スフィロ(Sphero)はスフィロ社(旧オーボティクス社)が開発し販売している教育用球状ロボットです。Spherical robot—球状(スフェリカル)ロボットを縮めてスフィロと名付けたそうです。スフィロミニは、いくつかあるロボットのラインナップのうち、スフィロが持つ機能をほぼそのまま(加速度計、姿勢制御用ジャイロスコープ、LEDライト)にして、サイズをより小さくした、直径約4cm、重さが約113gのロボットです。
Scratch…スクラッチはマサチューセッツ工科大学メディアラボ(所長は伊藤穰一教授)のミッチェル・レズニック氏が設計したプログラム言語。
Scratch Helper Apps… Revolution Education 社が開発及び公開しているブルートゥース・ローエナジーアダプターとScratchをつなぐためのPICAXE®ブランドのアプリケーション。S2Bot App for Windowsバージョン0.8.6でSphero miniに対応しました。
PICAXE has released "Scratch Helper Apps" Version 0.8.6 on November 20, 2018.
これを使うとScratch(スクラッチ)からSphero mini(スフィロミニ)を遠隔操作することができます。早速やってみましょう。
This application will assist communication between Scratch and Sphero mini. And you can remotely control Sphero mini. Let's do it.
準備する物 (Preparation)
- Windows10のパソコン (Windows 10 PC)
- Sphero mini(スフィロミニ)★ヨドバシカメラなどで購入できます。七千円弱?
- BLED112-V(Silicon Labs / Bluegiga)★マルツなどで購入できます。二千円弱?
- Scratch(スクラッチ)
- Scratch Helper Apps
スフィロミニはBluetooth(ブルートゥース) Low Enegy(ローエナジー)という規格の無線で通信します。通常のブルートゥースとちがって、省電力用に設計された規格です。パソコンからブルートゥース・ローエナジーに対応したアダプターを使用して通信する必要があります。また、これから使用するS2Bot App for Windowsは、Silicon Labs(シリコンラボ)社のBLED112-V1というアダプタが必要です。
遠隔操作する環境を準備する
Windows10パソコン
Windows10パソコンを起動します。管理者権限を持つユーザーとしてログインできるとことまでは頑張って準備してください。スフィロミニも開封してUSBケーブルを挿して充電しておきます。スフィロミニは1時間充電すると、操作方法にもよりますが約1時間操作することができます。
ブルートゥース・ローエナジーアダプター
シリコンラボ社製BLED112-V1というブルートゥース・ローエナジー通信用アダプターを挿す前に、シリコンラボ社のウェブサイトからドライバーをダウンロードします。ダウンロードするにはユーザー登録が必要です。ユーザー登録にはメールアドレスが必要です。ダウンロードしたドライバーをWindows10パソコンにインストールします。インストール完了後、またはインストール途中でアダプターを挿すように指示されたらUSBポートに挿します。認識されるにはしばらく時間がかかります。このアダプターは普段から挿したままで大丈夫ですが、ブルートゥース機能を最初から持っている一部のパソコンでは、アダプターが複数あると動作が不安定になるものがあります。このときは、本体に元々あるアダプターを無効化すると良いですが、他のブルートゥース機器と通信できなくなるため、スクラッチで遊ばないときはアダプターを抜いて元に戻さないと後で怒られるので気をつけましょう。
スクラッチとAdobe AIR
スクラッチをスクラッチのウェブサイトからダウンロードします。ウェブサイトの注意書きにあるとおり、先にAdobe AIRが必要ですので、これをダウンロードしてインストールします。次にスクラッチオフラインエディターをダウンロードしてインストールします。Scratch Helper Apps
Scratch Helper Appsは、イギリスのレボリューション・エデュケーション社が奉仕活動の一環で開発して、無償公開しているヘルパーアプリケーションです。教育目的または個人使用においては無償で利用できるとの記載があります。このヘルパーアプリケーションは、さまざまなロボットとスクラッチ(バージョン2のオフラインまたはオンライン版)やSnap!(スナップ)などのプログラム言語を、遠隔制御装置というカタチでつないでくれます。レボリューション・エデュケーション社のヘルパーアプリケーションダウンロードページからダウンロードしてインストールします。スクラッチとスフィロミニをつなぐ
スクラッチとスフィロミニをつなぐには、以下の手順が必要です。- スフィロミニとヘルパーアプリケーションをつなぐ
- ヘルパーアプリケーションから専用のテンプレートを書き出す
- 専用のテンプレートを使ってスクラッチを起動する
スフィロミニとヘルパーアプリケーションをつなぐ
スフィロミニとヘルパーアプリケーションは、ブルートゥース・ローエナジーアダプターを使って通信します。スフィロミニの電源を入れる
電源の入れ方は説明書にもありますが、充電ケーブルを抜くと電源が入ったままの状態になります。上達するとスフィロミニを揺り動かす方法で電源の入り切りができるようになります。専用のカバーをかぶせてスタンバイします。パソコンでヘルパーアプリケーションを起動する
Windows10パソコンのスタートボタンを押して表示されるアプリケーションのリストから、S2Bot Helper Appを探してそのアイコンをクリックして起動します。ヘルパーアプリケーションで 「Sphero mini」をえらぶ
メニューリストにデバイス名がいくつかあります。最初はひとつだけ表示されています。リストの▽を押して表示されるものから「Sphero mini」をえらびます。ヘルパーアプリケーションでスフィロミニをさがす
ヘルパーアプリケーションの「Scan for devices」ボタンを押して、スフィロミニをさがします。通信に応じた機器がリストに表示されます。スフィロミニをあらわす「SM-」とそれにつづけて機器固有の識別番号下四桁の英数字(0123456789ABCDEFのいずれかで、たとえばSM-1D9A)が表示されます。たくさんのスフィロミニや仲間たちがいるところではいくつも表示されるので、離れたところでひとつだけ表示される状況で確認してください。また、次回からすぐわかるようにどこかに書いておくと良いです。ヘルパーアプリケーションと スフィロミニをつなぐ
「Scan for devices」ボタンを押して表示される画面にあるスフィロミニの名前の場所をクリックすると色が付きます。このとき、スフィロミニのLEDも点灯します。このとき、もう一度スフィロミニの名前の場所をクリックすると、色が消えてスフィロミニとの通信が切れます。もし、スクラッチを作っているときにスフィロミニが動かなくなったら、この場所をクリックして一度通信を切った後、しばらくしてからもう一度クリックして通信を再開することで通信が元通りになります。「close」ボタンを押してヘルパーアプリケーションのメイン画面に戻ると、「Sphero mini is connected」の横にあるランプが赤から緑になります。赤はつながっていない、緑はつながっている状態を表しています。ヘルパーアプリケーションから専用のテンプレートを書き出す
ヘルパーアプリケーションのメイン画面のみぎ上にある三本線のアイコンをクリックすると、ヘルプメニューがでてきます。この中から「New Scratch template」をクリックします。テンプレートの保存先を指定して、名前を付けて保存します。ここでは仮に保存先を「デスクトップ」、テンプレートの名前を「Sphero mini template」としておきますが、Windows10パソコンがイヤと言わない保存先と名前であればなんでも大丈夫です。専用のテンプレートを使ってスクラッチを起動する
ここまでくれば環境の準備は終わったも同然です。ひとつ前の「ヘルパーアプリケーションから専用のテンプレートを書き出す」で保存したテンプレートをダブルクリックしてスクラッチを起動します。標準のスクラッチの画面に加えて、「スクリプト」メニューの欄にある「その他」の項目に、スフィロミニを遠隔操作するコマンドがあります。スフィロミニをスクラッチでうごかす
次回からは、テンプレートをダブルクリックするだけで、この環境のスクラッチを呼び出すことができます。もし別のプロジェクトをつくりたいときは、このテンプレートをコピーして複製するか、「ヘルパーアプリケーションから専用のテンプレートを書き出す」の方法で新しいテンプレートを保存して新しいプロジェクトとしてください。スフィロミニと通信できるスクラッチを再開する
一度終了してから改めて起動するときは、- スフィロミニの電源を入れる
- ヘルパーアプリケーションを起動する
- ヘルパーアプリケーションのリストから「Sphero mini」をえらぶ
- ヘルパーアプリケーションの「Scan for devices」ボタンを押す
- スフィロミニの名前をクリックしてえらぶ
- 「Sphero mini is connected」の横にあるランプが緑であることを確認する
- テンプレートをダブルクリックしてスクラッチを起動する
スフィロミニのスクラッチ用コマンド
スクラッチからスフィロミニに指示できるコマンドには次のものがあります。「set heading 【数字】」
向き(ヘディング)を角度【数字】で指示します。一周は360°なので、0から359の範囲の数字を1°のきざみ(小数点以下は使えません)で指定します。 マイナスの数字や360よりも大きい数字でも動くと思いますが、せっかくプログラミングするなら、是非とも計算して0から359の範囲の数字になるようにしてください。角度の詳細については英語ですが、Heading and Aiming | SPHERO ROBOT BASICS(Sphero Docs)のページを参考にしてください。「move direction 【数字】 with speed 【数字】 for 【数字】 secs」
方向 (ダイレクション)の角度【数字】と速さ【数字】、継続時間(秒数)を指示します。これを指示すると、移動が終わるまでの間に指定した角度の向きになるように弧を描くように移動します。「move direction 【数字】 with speed 【数字】」
方向 (ダイレクション)の角度【数字】と速さ【数字】で移動するよう指示します。止めるには「stop moving」を指示します。月夜に提灯ですが、ダイレクションはイギリス英語の発音で、アメリカ英語の場合はディレクションと読みます。「stop moving」
スフィロミニの動きを止めます。「set tail light 【点灯/消灯】」
スフィロミニのLEDテールライトの点灯(on)または消灯(off)を指示します。テール、つまり点灯しているところが“うしろ”です。「set color 【色名】」
スフィロミニのLEDテールライトの色を指示します。実行すると指定した色のLEDテールライトが点灯します。原理を少し説明すると、赤緑青の三色のLEDテールライトをある割合で点灯させます。詳しくは「三原色」というキーワードで検索してみてください。次の色が指定できます。- red…赤
- green…緑
- blue…青
- white…白
- orange…橙
- yellow…黄
- purple…紫
- brown…茶
コメント
コメントを投稿