以前にも書いたが,私とこうしろうはITネットワークアシストたかおか(略称NAT)という地域のIT化を推進するボランティア団体に所属している。私はNATの仲間とともにLEGO MINDSTORMSを使ったロボット教室を地域の児童文化センターと小学校で行っている。小学校の高学年を相手にプログラムという難しそうなものを,ロボットを通していかにわかりやすく教えることができるかに苦心している。

 MINDSTORMS RIS2.0に付属する開発環境よりも,子供たちが理解しやすいソフトウエアはないかと永和システムマネジメントが制作,販売しているREALシリーズROBOLAB を購入して教室で使ったことが縁で,NATでWROJapanの富山県予選を開催しないかというお誘いをもらった。

 まだまだ暑い8月28日,小学校のコンピュータ室に両教室から10名の参加者が集まり,WROJapan高岡予選が開催された。私は主に講師を務めた。こうしろうもサポータとして小学生のサポートにあたった。ROBOLABには触ったことのないこうしろうであるが,小学生の時からの経験と饒舌なへ理屈で子供たちに工夫をうながした。

 競技は楕円にへこみのあるコースのライントレースだ。光センサー1個でコースを外れずにいかに速く一周できるかを競う。

 へこみがあるので両側ライントレースができるようにプログラムを作成しなくてはならない。私はロボットをコースの上において,「こんな状態のときは,Aのモーターを止めて,Cのモーターを回さないといけない」とか「ロボットの一部がライン上にあればセーフだから,センサーが明るいと判断しても,しばらくまっすぐ進んだほうが速い」などとアドバイスする。子供たちは「今よりあかるくなった」とか「指定した数値より暗くなったら」というセンサーウォッチャーコマンドや,明るいときは○○をして,暗いときは□□をするセンサー分岐コマンドを使ってプログラムを組んでいく。

 ちなみに,このプログラムは私が試しに作ったものだ。教えるだけでなく,自分でも作ってみるとおもしろい。

 タイム計測が始まり,練習のときは高速でライントレースに成功していたロボットがトレースに失敗してリタイアする。再チャレンジは2回まで。悲しそうな顔を見ると何回でもやらせたくなるが,試走や工夫が足りなかったのだとあきらめざるを得ない。タイム順の1位から3位までが10秒台で,コンマ何秒の白熱した競技会になった。

 しばらく,この日記はMindStormsから遠ざかっているが,ロボット・プログラミングのおもしろさを再確認した夏休み最後の日曜日であった。

 どこがおもしろいかというと,最初は「センサーが明るいと判断したら,・・・」と論理的に考えてプログラムを作っていくのだが,実際に走らせてみるとロボットの状態,つまり少しだけ車体を斜めに向けてスタートさせたとか,左右のタイヤが完全に並行でないといった小さな理由で,予期せぬ事態が起こってくる。

 そこで対処療法的にプログラムをいじっていくことになる。あとで他人がそのプログラムを見たら,きっと「どうしてこんな無駄なステップが入っているのだろう?」と感じるはずだ。論理的な思考だけではうまくいかないところに,多分みんな,はまってしまうのだろう。