奮闘記【29】距離センサを利用したオブジェの自動取得

2019年01月11日 9:03:06 by fdkltd

どうもhataです

 前回書いた距離センサを利用したオブジェの自動取得を行うために、距離の測定と測定値の距離までアームを伸ばしてオブジェを取得する処理の実装を行いました。

 センサでオブジェを取得できる距離を調べることから始めました。センサを起動した状態でアームをオブジェを抜き取る直前の姿勢にしてグリッパをオブジェに近づけ、そのままアームをホームポジションに戻して距離を測定してその距離を閾値に決めました。

 まず最初は、ゲームパッドのボタンを押すと処理が開始され、自動で前進して指定したアームの距離センサの値が閾値を下回ると停止するようにしました。しかし、ロボットが前進しか行えず、その間ゲームパッドでの移動が出来ない上に、場所によってはオブジェとロボットの距離が近すぎてアームでオブジェが取れないという問題があることが分かりました。そこで、距離を測定しながらゲームパッドで全方位に自由に移動できるようにし、測定した距離がオブジェを取得可能な範囲内に入ったら駆動輪を停止するように変更しました。

 これで、オブジェを取れる位置で停止することができるようになったので、そこから測定した距離までアームを伸ばしてそのままオブジェを自動的に抜きとる処理を実装しました。これをテストしたところ、センサの誤差などの影響でオブジェを抜き取れる手前でグリッパが止まってしまい、抜き取れない問題が起きていることまで確認できました。この問題を解決するために、センサがどのような変化をしているかをグラフに表し、センサの誤差の関係も調べ、一番距離が短くなっているところを目標に取得動作を出来る処理を来週は実装していきます。

Twitterでテスト時の動画をご覧いただけます。