ロボット玩具といってもいろいろありますが、IT系の週刊アスキーということで“プログラミング”と縁のある玩具をご紹介しましょう。少し気が早いですが、夏休みにはプログラミングを体験できるワークショップも多数開かれます。興味をおもちの親御さまもきっと多いはず。
最近のプログラミング教育ではこうしたロボット玩具を使って、『フィジカルコンピューティング』を学ぶ機会も珍しくありません。30年ほど前の我々の子ども時代とは隔世の感がありますね。
iPhoneやiPod touchと合体して表情豊かに部屋を動き回るロボット玩具『Romo(ロモ)』。『Ozobot(オゾボット)』や『Artec Robotist(アーテック ロボティスト)』とともに、先日子どもたちといっしょに遊び倒してみました。
↑2014年7月発売の『Romo』(米Romotive社)。日本ではロボット掃除機『ルンバ』の総代理店としても知られる、セールス・オンデマンドが販売。価格は税抜き1万4500円。30ピン用とLightning用の2種類がある。
娘(7歳、小学2年生)の幼稚園時代のお友だちやそのお父さん、お母さん方が子ども向けプログラミング環境・ロボット玩具に興味をもってくださり、いっしょにアクティビティをやってみることになりました。娘といっしょに参加してくれるお友だちは2人、年少のときからの仲良し女の子です。
まずはみんなでわいわい遊びながらコンピュータの動作原理に親しみ、パパ友、ママ友さんにも入口の雰囲気だけでも紹介できれば、と考えました。娘以外の2人はプログラミング的なものは未経験です。今回は、コンピュータ画面上でブロックプログラミングを体験したり、『Arduino』や『Raspberry Pi』を使って電子工作を楽しんだりするアイデアは見送りました。
筆者の手元には『Ozobot』2体と『Artec Robotist』がありますが、Robotistで遊ぶには、やはりブロックプログラミングが欠かせませんし、PCもひとり1台用意してあげたいところ。そこで、以前から気になっていた『Romo』が俎上に。知人の協力も得てRomoを入手し、Ozobot、Romo、Robotistの3種類を使ったアクティビティを開催することになりました。
開催前にまずは準備ということで、自宅にて開封の儀。4月に“Scratch Day 2015 in Tokyo”に参加して、すでにRomoを体験している娘は早く遊びたくて仕方がない様子です。しかし「Romo が届いたら、まず付属の充電ケーブルを使って最低6時間充電してください」と書かれているので、付属するケーブルを本体裏にあるミニUSBポートに接続して充電です。
↑Romoの箱を開けたところ。Romo本体に乗った丸い物体は、サイズ比較のために置いた『Ozobot』2体。Romoには付いてきません(笑)。 |
↑本体裏にUSBミニBコネクターがあり、ここから充電します。フル充電の目安は6時間で、これで2時間は遊べるとのこと。 |
充電中にRomoアプリをダウンロードしておいたので、Romoの充電が終わったら、娘がさっそく両者をつないでみます。
↑Romoアプリをインストールしたら、iPhoneもしくはiPod touchを接続します。 |
イントロのムービーが画面に流れ、ロボットレースをするために宇宙からやってきたRomoに命が吹き込まれる、といった演出がおもしろく、子どもを一気にRomoの世界観にひきこみます。「やった~、地球に到着したんだ~!」と、さっそくRomoは走ったり回転したりします。ところが娘はというと、気が付いたら布団の中に潜り込んで遠巻きにこわごわRomoを眺めています。
「どうしたの?」と尋ねると、Romoの動きが激しすぎると感じたのか、またキャタピラの動作音がラジコンカー的に大きいせいもあってか、「ちょっと、こわいの……」、「パパ手伝って……」と言ってきました。自分で命令を並べてその通りに動かせることには興味深々なのに、自分の意図にかかわらず自律的に動くロボットには恐怖心を抱く、ということなのかもしれません。単なる根性なしという気もしますが(笑)。
あと、アメリカ西海岸生まれのRomoですから、広々としたリビングで遊ぶ前提なのかもしれません。日本のように比較的狭い部屋で構成された家屋では、家具やおもちゃにぶつかるケースも多いでしょうから、この激しい動きを多少小さめにするなどのローカライズが必要かもしれませんね。
さて最初に、名前をつけてと促されるのですが、娘は「Romotti」と入力していました。ともあれこれでミッションスタートです。
日本語環境では、ひらがなが多めの文章が表示されますが、使われている漢字をざっと見たところ、小学3年生以降に習う漢字が含まれているようで、一部「読みかたがわからない」と言われました。確かにRomoの対象年齢は、公式には“8~12歳”。ここはオトナが読んであげるなどサポートしてあげるといいでしょうね。
まずはゲーム感覚で出題される課題を解きながらRomoの動かし方を少しずつマスターしていく“ミッション”モードが基本です。さすがはタブレットやスマホの操作も当たり前にこなす21世紀の子ども。操作方法について何の説明もしていないのに、勝手に遊びはじめます。課題をクリアしたら大喜びです。
“ミッション”で覚えた動かし方を組み合わせ、自由にあやつる“じっけん室”モードが、いわゆる“ビジュアルプログラミング”に相当します。「大きな音がしたら」、「顔が見えたら」、「動けなくなったら」、「持ち上げられたら」などの“イベント”をトリガーにして、Romoの動きを順次並べていきます。なお、一応“くりかえし”もありますが、繰り返しのオン・オフのみという限定的なものでした。
↑“じっけんしつ”で使えるイベントの例。このイベントが発生した際にどのような動きをさせるか、命令を追加します。 |
↑イベントが発生した際にRomoをどう動作させたいか、追加可能な命令です。これらを順番に並べることで動作をプログラムします。“くりかえし”をオンにすると、並べた命令を何度も繰り返します。 |
放っておくと、2時間でも3時間でもRomoで遊びそうな勢いの娘。ただし、当たり前ですがひとりで遊ぶのはつまらないもの。うまく動かせたときには誰かに教えたくなりますし、うまく動かせずに困ったときは相談相手も欲しいものです。兄弟姉妹や友だちどうし、そして親子でわいわいと楽しむのがいちばんでしょう。
ちなみに少し脱線しますが、Romoが利用可能なのはiPhone 5および5c、5sといった旧世代のiPhoneです。iPhone 6と6 Plusが使えないのは、ひとえにRomoにiPhoneを固定するパーツの“物理的なサイズ”の違いによります。試しにLightning延長ケーブルを使って手元のiPhone 6 Plusを接続してみたところ、Romoに固定できないものの、問題なく動作しました。
そこで一計を案じ、互い違いに重ね貼りした段ボールをiPhone 5サイズに切り抜いてRomoに装着、髪ゴムでiPhone 6 Plusを固定することで、なんちゃってではありますがRomo+6 Plusが実現しました。段ボールでは強度に難があるので、例えばバルサ材をiPhone 5サイズに加工し、あとは固定方法を考えれば問題なさそうです。
↑iPhone 6 PlusをRomoに固定するために利用した、段ボールによる土台。娘の髪ゴムで暫定的に固定すれば、それなりに遊べました! |
国内でRomoを取り扱うセールス・オンデマンドに聞いたところ、「以前から開発元のRomotive社に希望は伝えてはいるので、将来的な需要が見込めれば、iPhone 6、iPhone 6 Plus版のRomoも考えてくれるかもしれない」とのことでした。
さて、前置きが長くなりましたが、ようやくアクティビティ当日の話です。近所のフローリングの集会場を借り、Romoが縦横無尽に走りまわっても問題ない環境を整えました。筆者が先生役をつとめ、ママ友、パパ友のみなさんは見学です。
まずはOzobotから。オゾちゃんとボットちゃん(娘が命名した名前)の動く仕組みを簡単に説明したら、子どもたちはあっという間に理解したようで、持ってきたスケッチブックに思い思いで迷路や命令を書き込んでいき、Ozobotの動きに一喜一憂しています。うまくいかないときは、パパやママの助けを借りながら命令を描き直し、思ったとおりに動いたらハイタッチです(笑)。オトナも興味津々で、夏休みの自由研究用に買いたい、という方もいました。
↑Ozobotに夢中になる子どもたち。そしてパパさんと協力していっしょに描いた迷路。 |
続いて、Arduino互換基板とアーテックブロックが融合したRobotistを子どもたちに披露。PCの画面でScratchのコードを見せつつ、みんなにはまだ難しいかもだけど、こんなふうに動かせるんだよ、と教えてあげると、子どもたちの目がキラキラと輝いていました。次の機会にはぜひ、ScratchとRasPiやArduinoを使ったフィジカルコンピューティング入門もやってみたいですね。
↑Robotistにうっとりの子どもたち。眠いわけではありません(笑)。 |
そして最後はお待ちかね、Romoの登場です。Ozobotのときもそうでしたが、すでに経験のある娘が、お友だちに率先して説明をしてくれています。こうやって教えあったりすることで、やる気や興味も強まり、自分の言葉で説明しあうことで、理解をさらに深めているようでした。
↑子どもどうしで教えあってRomoをプログラミングする様子。 |
そしてみんなで協力しながらあっという間に“じっけんしつ”で命令を組み立て、予想どおり「キャアキャア」言いながら、集会場内を縦横無尽に走り回り遊びだしました。3人とも、自分たちで組み立てた命令どおりに反応してくれることへの満足感でいっぱい、という表情で、「コンピュータってこうやって動かすんだ!」という“入口”を見つけてくれたように感じました。
最後は“おいかける”で遊びました。あらかじめ認識させておいた色を追いかけてRomoは走り回ります。子どもたちとRomoは、集会場のスミからスミまで「キャアキャア」大騒ぎしながら、楽しい時間を過ごしました。最後はお友だちの妹(1歳)も参戦。たいへん盛り上がりました。
↑Romoのメイン画面。“ミッション”“じっけん室”“追いかける”“線をたどる”がメインコンテンツ。“ロモコントロール”は、他端末からRomoを制御する際の設定画面。 |
漢字が読めるかどうか、あるいは“角度”“半径”“長さの単位”などが理解できるかどうか。小学校低学年の子どもたちがRomoで遊び尽くすうえで障壁となりそうなのはそのあたりでしょう。しかし、子どもどうし、あるいは親子で助け合って命令を組み立てていけば、まったく問題ないと感じました。実際、参加した3人は誰ひとりとして「わからない」、「つまらない」という言葉を発していませんでした。楽しければ、自分からどんどんチャレンジしていくんですね。
親子で遊ぶときは、大人が子どもをさしおいて遊ぶのに夢中になり、「なんでこんなこともわかんないの?」などと、キツいことは決して言わないように(笑)。童心に返って子どもといっしょに楽しみましょう。
↑集会場のホワイトボードに残された、子どもたち3人によって書かれた謎のメッセージ。 |
腕に覚えのある方は、公開されているRomo SDKを使って、Romoの動きや表情を自在に操れます。参考になるサンプルコードも用意されており、それをベースにObjective-CやSwiftでコーディングすれば、より緻密な制御が可能になります。
子どもを簡単に喜ばせられる“顔認識”は、OpenCVでもiOSのCIDetectorでも可能です。iOS開発の経験があるユーザーなら、Romo SDKと組み合わせておもしろいアプリを作れるでしょう。昨夏にはRomoを使ったおもしろ開発のハッカソンも開催されたそうです。
筆者も実際に試してみました。ウェブ上にあるさまざまなサンプルコードを土台にして、リモート端末からRomoの表情をあれこれいじるアプリまでは開発できたのですが、そこで時間切れ(笑)。残念ながら本記事の締め切りになってしまいました。
しかし、これは子どもにとっても大人にとっても本当に“楽しい!”オモチャです。なんといっても、アプリ開発などでなじみあるiPhoneやiPod touchを“頭脳”にして、部屋中を走り回るロボットをプログラミングで容易に制御できるのですから。
今回参加してくれたお友だち、そしてそのパパさん、ママさんたちも、予想以上にフィジカルコンピューティングやロボット自体に親近感をもってくれたようです。お友だちのひとりはさっそく、パパとママに「Romoを買って!」とおねだりしていました(笑)。
こうやって、コンピュータやプログラムに親しみを覚えてもらい、身の回りを取り巻くさまざまなものの仕組みについて、子どもたちが積極的に考える機会が増えると本当にうれしいですね。
週刊アスキーの最新情報を購読しよう
本記事はアフィリエイトプログラムによる収益を得ている場合があります