未分類

KUKA iiwaのFRI導入について

この度 KUKA iiwa をリアルタイムにFB制御するための機構であるFRIを導入した。

導入にあたって得た知見を記録する。

FRIとは

Fast Robot Interfaceの略称。読んで字の如くRobotをFastに制御するためのInterfaceのこと。

内部ではUDP通信を行なっている。

クライアントサーバシステム

システムはクライアントとサーバから構成される。

ローカルPCがクライアント、ロボット内で動かすものがサーバにあたる。

プログラム

サンプルプログラムは、Subrise Workbench上の StationSetup.cat で、

  • Fast Robot Interface Extension Example Applications
  • Fast Robot Interface Extension

を選択し、インストールする。すると、Subrise Projectの中に FastRobotInterface_Client_Source が生成される。その中にクライアントサイドのサンプルコードが入っている。

自分の環境では、 FRI_Client_SDK_Cpp.zip を解凍し使用した。

プログラムの実行

FRI_Client_SDK_Cpp.zip を解凍後、 build/GNUMake 直下で make コマンドを叩くことでbuildされる。

環境によっては、GNUMakeではなくMSVisualStudioを使う必要がある。GNUMakeは対応OSがMac, Linuxである。Windowsでも頑張ればいけるかもしれない

buildが完了すれば、bin というディレクトリが生成されその中に実行ファイルが配置される。適宜実行すれば良い。

ハマりポイント

IP指定でややハマった。SunriseProjectのStationSetupを開くと、KUKA Option Network Interface の下にIPが記載してある。これがサーバとなるロボットのIPアドレスを指す。例えば、192.170.10.2 とする。

ローカルPCをコントローラのKONIポートに接続するのだが、このIPとして192.170.10.15 など同一ネットワーク内のIPを設定する必要がある。

ここで設定した 192.170.10.15 のローカルPCのIPアドレスを example にあるロボット内で実行するプログラムの _clientName に記載する。保存後、SubriseProjectを同期する。

同期後、下記手順を踏んで実行する。

  1. ローカルPCの bin ディレクトリ内の実行ファイルを実行する。
  2. その後、SmartPADからアプリケーションを実行する。

まとめ

よく考えたら当たり前であるが、ローカルPCとロボットは同一ネットワークに設定することが重要である。

コメント

タイトルとURLをコピーしました