"Wiper"  -  居福君によるレポート

採用した戦略

 この課題についての戦略は大きく分けて3つあると考えた。一つは、ロボットが障害物の脇を通って運ぶという方法。この方法では、ロボットの移動経路が少々複雑になるが、ドミノ運搬という点では最も単純な課題となる。二つ目は、ロボットがドミノと共に障害物を乗り越えて運ぶという方法。この方法では、ロボットは直進だけをすればよいが、障害物を越えるためには運搬の方法に多少の工夫が必要になる。最後に、ロボットは移動せずに、ドミノだけを何らかの手段で指定の場所まで移動させるという方法である。ロボットの移動の不確かさによる作業への影響を除去できるものの、非常に複雑な課題となり、機構も大規模なものとなりそうである。
今回私は、より早く、より精確にドミノを指定の場所まで運ぶという課題をできるだけ簡単にクリアするために取るべき選択肢は一つ目の方法であると考えた。残り二つの方法は課題を複雑なものにしてしまうとして棄却した。
次に考えるのは、3つのモータの割り振りである。この戦略ではロボットは移動の際にコーナリングをする必要があるので、左右のタイヤに2つのモータを使う。よって、残り1つのモータでそれ以外の作業を行う。一自由度で何ができるかを考えたときに、最初に浮かんだのがワイパーのようなものでドミノを掃いて集めるイメージである。
そして、これが最もシンプルな解であると考えて、最後までこの戦略を進めることとした。
ロボットの移動には当初ライントレースを用いる予定であったが、スピードの面で問題があるので、最終的には初期位置を固定し、決まった移動量をロボットにプログラムすることにした。

製作したロボットの概要

ワイパー開

Fig.1

ワイパー閉

Fig.2

 ロボット正面左に取り付けられたワイパーを開閉させながら進むことで、20個のドミノをかき集めることが可能である。全体の幅も、障害物の脇を通ることができるコンパクトな大きさである。

機構における工夫点


Fig.3
 最低限の要求項目だけを備えた非常にシンプルな機構である。特徴として挙げられるのはワイパー先端にある突出部である。(Fig.3)
ロボットは障害物の左を通るような経路を設定したため、ロボットが作業台から最もはみ出し得る部分はその左前部になる。この突出部には、そうやってはみ出してしまう部分にドミノが無いようにする役割がある。小さな工夫だが、20個のドミノを漏れなく運搬するために大きな効果をもたらす。

製作結果とその分析

 結果として、数回に一回の割合で20個全てのドミノの運搬に成功するロボットに仕上がった。失敗のパターンとしては、ロボットが障害物にぶつかって止まってしまう場合、障害物の横を通る時に数個のドミノを作業台から落としてしまう場合、最初の段階で全てのドミノをかき集められない場合などが挙げられる。特に最初の2パターンの失敗が頻繁に起こる。障害物に近すぎるコースを通るとぶつかってしまい、遠すぎるコースを通るとドミノを落としてしまうわけである。
成功のためには、ロボットは丁度良いコースを通らなければならないが、MindStormのモータの移動量は運搬しているドミノの重さや位置に影響を受けてしまうので、その面で不確かさが生じてしまう。
もし移動にライントレースを用いた場合、光センサは一つしかないので、ライン上を動くにはロボットはどうしても左右に振れるような動きになってしまう。そうすれば、結局、障害物に当たったり、作業台からドミノを落としたりする可能性が高くなってしまうため、この手法でも問題を解決することはできない。
タッチセンサやガイドを駆使して、何とか重要な地点での作業台に対する自己位置を同定させることは可能であるかもしれないが、それでも高精度・高再現性を持たせ、確実に全てのドミノを運搬するのは難しいと感じた。

感想

 与えられた課題は難しすぎず、簡単すぎず、色々な戦略が考えられるものだった。それゆえ、作業を進めていくにつれて課題の本質が見えてきて、また、マニピュレーションの奥深さを感じることができた。
他のゼミ参加生がとる、私とは全く別の戦略を観察することも非常に勉強になり、今回のゼミの理解の手助けとなった。また、今回のレポートで色々な考察をまとめて整理することができ、総じて実り多いゼミとなった。