インターンシップ4日目(沖野)


沖野です。今日はもう少し面白いデモが作れないかなぁと思い、少し遊んでみました。

 

最初に浮かんだアイデアは力制御でした。ロボットアームを小突いたらその力を逃がすような向きにアームが少し動き、また元の姿勢に戻るというデモをしてみたいと思いました。

結論から言うと、これは出来ませんでした。以下その結論に至った経緯を書いておきます。

 

まず最初に関節トルク(の推定値)の計測を行いました。CRANE-X7 実機を PC に接続して、関節情報の取得に必要な ROS ノードを立ち上げます。すると各関節に搭載されたサーボモータの発生トルクを Rviz 上で確認できました。

下の画像で円状にグニャっと曲がった矢印がトルクの推定値を表しており、トルクが大きくなるほど半径も大きくなります。画像1枚目は外力を加えていない状態です。画像2枚目は根本のヨー軸関節にトルクをかけた様子です。外力を加えていない状態と比較すると、トルクをかけた部分だけ矢印の半径が大きくなっているのが分かります。

後は各関節に対してトルクの指令値を送ることができればどうにか出来そう…と思ったのですが、そこで詰まってしまいました。

CRANE-X7 にトルク指令値を与えて制御を行うには、下層の API を叩く必要があります。しかし、インターンシップ初日に頂いた CRANE-X7 のコントローラを出来る限り利用しようと思うと、これは難しそうでした。まとまった時間があればコントローラ自体を作るのも手ですが、それもなかなか難しそうでした。結局、現状の位置制御を利用したデモを考えることに。

 

何か他に面白いデモが思いつくといいのですが…。