ポーズの登録とモーションの作成方法を覚えたら、いよいよVariBoを歩かせる。VariBoは足裏が大きいため、重心移動が容易で倒れにくくなっているのが特徴だ。
VariBoを歩行させるには、足首のロール軸を寝かして、重心をしっかりと片足に乗せるのがコツ。1)右足ロール軸を倒し、重心を移動してから左足を上げる。2)左足を前に出し、3)重心を中央に戻して、左足を着く。4)左足ロール軸を倒して重心を移動し、右足を上げる。5)右足を前に出し、6)重心を中央に戻して、右足を下ろす。
重心移動が確実にできていれば、遊脚を上げてもVariBoは姿勢を保持できる。足首ロール軸を傾けて、重心移動ができるようになると、子どもたちのVariBoが次々と歩き出した。
今回の最終課題は、自律で歩行するVariBoがスタート地点から50cm離れた壁まで歩き、旋回してスタート地点に戻るタイムを競うレースだ。
壁の間際で旋回するためには、目に搭載したセンサーで壁を発見しなくてはならない。使用しているのは、シャープ製の距離センサー「2Y0A21」だ。このセンサーは、目標物が遠いときにセンサー値が小さく、10cmくらいの距離で最大になる。なお、接近し過ぎてもまた値が小さくなるという特性がある。
今回は、壁の10cm手前でセンサーが反応するように閾値(しきいち)を決定した。
次は、旋回モーションの作成だ。VariBoには腰ロール軸がないため、床の摩擦を使った“すり足”旋回となる。足を前後に広げたポーズから、一気にホームポジションに戻すとロボットの方向が変わる。何度か繰り返して180度ターンさせれば、OKだ。
こうしてできた歩行、旋回モーションと壁発見を使って、タイムレース用プログラムを作成する。
VariBoには、高度な機能を実現するためのスクリプトプ言語も搭載してある。この言語はBASICライクな簡易言語で、サーボモータ操作やセンサー読み取りの専用命令があらかじめ用意されている。以下の画像は、タイムレーススクリプトの例だ。プログラムはラベル行とコマンド行によって構成され、基本的に上から下へ順番に実行される。今回は、プログラム内容までは踏み込まず、事前に用意されたプログラムを自分で入力し、自律モーションを作成した。
子どもたちは2日間、休憩も取らずにロボットのモーション作成とプログラミングに熱中していた。思い通りに真っすぐ歩かないロボットを調整するために、自分がロボットになったつもりで歩幅やスピードを検討している子もいた。
その結果、全員が2日目の午後には歩行モーションを作り終え、タイムレースに参加した。優勝したのは最年少の小学3年生だった。出走前には、ロボットのネジが緩んでいないか慎重に確認するなど、日ごろからモノづくりに親しんでいる様子がうかがえた。
体験教室ではプログラミングのみを扱ったが、今後行われるこどもロボット人材講座では、ロボットの組み立てから学習するそうだ。今回、ロボットのプログラミングまでを経験した子どもたちは、口々に「次はサッカーをさせたい!」「ダンスモーションを作りたい!!」と夢を膨らませていた。
Copyright © ITmedia, Inc. All Rights Reserved.