プログラミング入門

ScrathXで遊ぼう!-ScratchX解説編

プログラミング初心者の子供に何を教えたらいいの?とお悩みの保護者のためのScratch(スクラッチ)の入門講座。今回はScratchXの実験プロジェクトScratchXについてご紹介します。
ScratchXには通常のScratchにはない機能がたくさん。プログラミングの可能性が広がります。今回はScratchXの全体像をご紹介します。

1. ScratchXって?

1-1. ScratchXとは?

ScratchXは、以下のサイトで公開されているScratchの実験的な(Experimental)拡張機能(Extensions)のことです。
https://scratchx.org/

TOP画面の文章を翻訳すると、以下のような意味になります。

スクラッチへの実験的な拡張機能で遊ぼう!
実験的な拡張機能を使用すると、外部のハードウェア(電子デバイスやロボットなど)やオンラインリソース(WebデータやWebサービスなど)に接続するScratchプロジェクトを作成できます。

簡単にいうと、Scratchと他のサービスや製品を繋げて遊んでみました!という感じです。

1-2. ScratchXでどんなことができる?

ではScratchXではどんなことができるのでしょうか?それを確かめるためにScratchXのサイトのTOP画面の「See all Extensions(全ての拡張機能を見る)」リンクを押してみましょう。
すると、いろいろな拡張機能が表示されました。

拡張機能は大きく2種類あり、
 ・他の電子機器やロボットなどと接続する
 ・他のインターネットサービスと接続する
ものがあります。
各拡張機能の下に「Requires Hardware(ハードウェアが必要)」「Requires Internet Connection(インターネット接続が必要)」という説明書きがあります。

「Requires Hardware(ハードウェアが必要)」は他のハードウェアの機器がないと動きません。「Requires Internet Connection(インターネット接続が必要)」はインターネットに接続した状態のものが必要です。

2. ScratchXのプロジェクトで遊ぼう

ScratchXはあくまでも実験的なプロジェクトなので、動作しないものもあります。今回、可能な範囲で動作不可・動作可能なものを調べてみました。また、機器側バージョンアップなどで動作しなくなる可能性のものもあります。あくまで(2018年7月)の状況ということでご了承ください。
<調査したもの> ◯動作する ▲状況不明  ×動作しない
◯ISS tracker
◯Spotify Music
◯Text to Speech
◯Twitter
▲Scratch3D
▲micro:bit
× wether

では、ここから各項目について、どんなことができるのか解説していきます。
Spotify Musicについては、とても面白かったので別の記事でご紹介しています。こちらもご覧ください。
<ScrathXで遊ぼう-Spotify編>

2-1. ISS tracker-ScratchでISSを追跡しよう

国際宇宙ステーション(ISS)が、どこの上空にいるかがわかるブロックが使えます。以下のリンクからサンプルプロジェクトをみてみましょう。
http://scratchx.org/?url=http://khanning.github.io/scratch-isstracker-extension/examples/ISS%20Tracker.sbx#scratch
ISSの起動をプロットするプログラムです。さらにボストンからどれぐらい離れているかもわかります。

しばらく放置していると、ISSが動いた跡が線で表示されます。ISSってけっこうなスピードで動くんですね。
東京からの距離を知りたいときは、プログラムの最後の部分を次のように書き換えてみましょう。

2-2. Text to Speech-Scratchで文字を読み上げよう

Text to Speechは、入力した文字を読み上げてくれるブロックが使えます。
サンプルプログラムはこちら。
http://scratchx.org/?url=http://sayamindu.github.io/scratch-extensions/text-to-speech/TalkingGobo.sbx#scratch

Gobo(黄色いスプライト)をクリックすると、プログラムスタート。喋らせたい言葉を入れます。日本語もOKです。日本語の場合、声が女性になります。

試しに英語「Hello!」を入れるとネイティブの発音が聴けるのかしら?と思い試してみました。すると「ハロー。」と思いっきり日本語・・・。そこで、パソコンの言語設定を変えてみました。
Macなら[リンゴのマーク(画面左上)]>[言語と地域]で優先する言語のところを変更します。「English」を上にドラッグして、Englishが最優先になるようにします。設定変更には再起動が必要なので再起動しましょう。

再び、ScratchXのText to Speechで「Hello!」と入力すると、今度は男性のネイティブの声で「Hello!」とかっこよく読み上げてくれました。言語はパソコンの設定に依存するようです。
この設定を使えば、英語の発音の練習ができそうです。

2-3. Twitter-Scratchで文字を読み上げよう

Twitterの情報をScratchに取り込むことができるプロジェクトです。サンプルプロジェクトを見てみましょう。Twitterのアイコンが表示されています。この鳥をクリックすると、ダイアログが表示されました。
ここにはアカウントIDやハッシュタグを入れることができるそうです。「#W杯」を入れてみましょう。

少し時間がかかりましたが、このハッシュタグの最新のツイートの情報が取得できました。本田さんは日本代表を引退されるのですね。

またTwitterのアカウントID(@から始まるもの。下図参照)を入れると、そのアカウントの最新のツイートが表示されます。

2-4. Scratch3D-Scratchで3Dプログラミング

3Dでプログラミングができるの?と思ったのですが、このプロジェクトの資料(Document)はリンク切れで、どう使っていいかわかりませんでした。でもScratchX内のこのブロックは動作しているようです。
Unityっぽいプログラミングができるかと思ったのですが、使い方がよくわからりませんでした。残念!

2-5. micro:bit-Scratchでmicro:bitを動かせる?

昨年日本でも発売開始になった話題のmicro:bit。関連本もたくさん出版され、プログラミング教育の注目株です。そんなmicor:bitが、Scratchと連携できる?!なんて夢のよう。

私の手元にchibi:bit(micro:bitが日本で発売される前に販売されていたmicro:bitの互換機)があったので、ためしに連携のテストをしてみました・・・。が残念。動作せず。chibi:bitに連携用のhexファイルをコピーしてもうまく動きませんでした。
うまく動作している記事もネット上にあったので、たまたま私のchibi:bit固体に問題があったのかもしれません。うーん。残念。

3. まとめ

今回は、ScratchXについてご紹介しました。どのプロジェクトも面白そうで、手元に機械があれば絶対に試してみたくなるものばかり。日本でも市販されているlittleBitsのプロジェクトもありますし、中でもルンバをScratchでプログラミングするプロジェクトは本当に面白そうです。
ScratchXのプロジェクトを通して、子供達に伝えたいことは「面白そう!」というアイデアと技術があればできないことはない

・ScratchXは実験的な拡張機能のこと
・Spotifyは音楽の配信サービス
・ScratchX+Spotifyで面白い作品が作れる

ということを解説しました。
もしかしたら、未来のDJはプログラミングでリミックスをするのかもしれませんね。
ScratchXには他にも面白い組み合わせがあるので、またご紹介していきたいと思います。

伴野悠佳 / YUKA TOMONO
この記事の著者伴野悠佳 / YUKA TOMONO
教育ヲタクの1児の母。自称ニコニコキッズクリエーター。東京理科大学大学院卒。元SE。小学生の頃から教育書を読んでいた教育ヲタク。大学では、電池の素材の性質について実験とコンピューターシミュレーションを比較する研究を行っていたことがきっかけでSEになる。出産&育休後、子ども向けプログラミング教室講師、子どもたちの考える力を育てるオンライン塾の講師。