2017年10月11日水曜日

オリジナルロボットでrviz、gazebo1-1: 概要

概要


rvizとgazeboはロボット開発においては大変便利なROSに付属しているツールです。rvizは可視化ツールと呼ばれていてロボットの状態をGUIで表示するツールです。gazeboは物理シミュレーターでして、実機が無くてもロボットの動作をシミュレーションすることが出来ます。
これらはROSのツールに組み込まれていてROSとの親和性が高いのですが、やはり使い方が難しく、設定項目が多いために使うのは困難です。メモもかねてここに設定の仕方を残しておきます。

Rvizは下の図の様にロボットの状態を表示するツールです。このツール自体はシミュレーターではなく、ロボット実機やシミュレーションから出力されるタイヤの回転やロボットアームの関節角をデータをGUIに表示するツールです。また3次元空間上での表示に特化したシステムになります。
ロボット実機が動いている場合このツールの存在意義はあるのかと思ってしまうのですが、実機のロボットの状態を確認するもなかなか面倒なものです。またコンピューターからのコマンド通りにロボットが動いているのかといったことも確認できます。
またプラグインを使うことで電流値やエラー情報等も下の図のようにすっきりと表示することが出来ます。


gazeboは物理シミュレーターです。rosと連携していてROSのロボットモデルにいくらかの(という名の大量の)データを付加するだけでロボットモデルの物理シミュレーションができます。物理シミュレーションのカーネルはODEを使っています(ほかのシミュレーションカーネルと入れ替えできるらしいが不明)。ODEによる動力学、接触のシミュレーションができるだけでなく、カメラ画像を取得したり、LIDER(レーザーを使ったレーダー)のシミュレーションもできます。
ロボットの動力学シミュレーション(制御器など)よりもセンサーのシミュレーションに使われているという印象がある。
以下では2軸のロボットアームのシミュレーション画面で各関節には力駆動のモーターが入っていてそれをPID制御器でコントロールして関節を曲げることが出来ます。


構成

  1. ROSの準備
  2. URDFを学ぶ
    urdfはrosでロボットの形状や機能を定義するためのファイル形式で実態はxmlです。このファイルで形状を表すlinkに形や重さの属性を付与して、linkとlinkの接続点をjointで定義してロボットを製作します。
  3. Rvizで表示する
    rvizで上記のurdfを読み込んで表示します。
  4. gazeboで動かす
の順に説明していきます。

0 件のコメント:

コメントを投稿