ロボットポストプロセッサ選定の実践ガイド:5ステップで最適なものを選ぶ
どのポストプロセッサを選べばいいかわからない?最適なロボットポストプロセッサを選ぶ5ステップを紹介します。
ポストプロセッサは、オフラインプログラミングソフトウェアとロボットをつなぐ橋渡し役です。
適切なポストプロセッサを選べば、プログラムは即座に動作します——実機ロボットがシミュレーション通りに動きます。しかし間違ったものを選ぶと大変です——ロボットが不規則に動いたり、逆方向に動いたり、全く動かなかったりします。
RoboDKには多数のポストプロセッサが用意されています。ポストプロセッサの仕組み、選び方、提供されているもので不十分な場合のカスタマイズや自作方法を理解しておく価値があります。
本記事では、RoboDKにおけるロボットポストプロセッサについて知っておくべき全てを解説します。
ポストプロセッサとは
ほとんどのロボットプログラムは、同じ基本コマンドを繰り返し使用します。最も一般的な3コマンドは:
- Move Joint(ジョイント移動) — ロボットの各関節を目的位置へ最短経路で動かす。自由空間での移動に有用。
- Move Linear(直線移動) — 現在位置から目的位置まで、エンドエフェクタが精密な直線を描いて移動する。ワーク把持、塗装等に有用。
- Set Speed(速度設定) — ロボットエンドエフェクタおよび/または関節の速度を定義する。
オフラインプログラミングソフトは、これら(および他のコマンド)の汎用版を用いて、あらゆるロボットに適用可能なプログラムを生成します。
ロボットはそれぞれ異なる言語を話す
問題は、各メーカーがロボットへのコマンドプログラミングに独自の方式を持っていることです。多くのメーカーが独自プログラミング言語を持ち、コントローラバージョンによってコマンドが微妙に異なることさえあります。
上記3コマンドが各ロボットコントローラでどう表現されるか例示します。括弧内は6自由度ロボット制御に必要な最小パラメータ/値の数です:
| ロボット | ジョイント移動 | 直線移動 | 速度設定 | パス丸め |
| ABB IRC5 | MoveJ (4) | MoveL (4) | speeddata(4) | zonedata(4) |
| Fanuc RJ3 | J (2) | L (2) | speed (1) | CNT (1) |
| Kawasaki | JMOVE (1) | LMOVE (1) | SPEED (1) | ACCURACY (1) |
| KUKA KRC | PTP (1) | LIN/SPL (1) | $VEL.CP (1) | $APO.CDIS (1) |
| Motoman JBI | MOVJ (2) | MOVL (2) | VJ/V (1) | PL (1) |
| Universal Robots | movej (1) | movel/movep (1) | v(1) | r (1) |
ご覧の通り、各コマンドはロボットタイプ間で類似しています。しかし、表現や各命令を定義するために必要な情報量に違いがあります。
オフラインプログラミングとポストプロセッサがなければ、新しいタイプのロボットをプログラミングするたびに、全く新しいプログラミング言語を学ばなければなりません。これはロボットプログラミングを大幅に遅らせます。
ポストプロセッサが簡単にする
ポストプロセッサは、汎用コマンドをあなたのロボットモデル専用のプログラムに変換します。
RoboDKなら、ロボットを動かすためにプログラミング言語を学ぶ必要はありません。提供されるポストプロセッサで、30ブランド以上のロボットに対して、通常は使用可能でバグフリーなコードを生成できます。
ポストプロセッサは、通常のテキストベースプログラミングでは面倒な初期化コードや変数定義も自動生成します。
最適なポストプロセッサを選ぶ5ステップ
RoboDKには40以上のポストプロセッサが同梱されています。あなたのロボットコントローラに合ったものを選ぶ必要があります。
どう選びますか?
ロボットライブラリのロボットを使用していれば、デフォルトで1つのポストプロセッサが選択済みです。多くはそのロボットの最新(またはデフォルト)コントローラを想定しています。しかし、アプリケーションやセットアップのニーズに合わない場合、別のものを選択する必要があります。
1. ロボットブランドに合ったポストプロセッサを選ぶ
通常、デフォルトまたは最も基本的なポストプロセッサをまず試すのがベストです。
一部ブランド(Mecademic、Kawasaki、CLOOS等)はRoboDKデフォルトでオプションが1つのみの場合があります。この場合選択はシンプルです。
2. コントローラに合ったポストプロセッサを選ぶ
一部ブランドはコントローラやプログラミング言語バージョンごとに異なるポストプロセッサを用意しています。例:Densoは古いRC7コントローラ用と新しいRC8コントローラ用で別々です。これらの間でPAC言語からPacScriptへ移行したためです。
あなたのコントローラ専用のものがあればそれを使用。なければ、あなたのコントローラバージョンに最も近いものを試します。
3. アプリケーションに合ったポストプロセッサを選ぶ
一部ブランドは多数のポストプロセッサを持っています。KUKAは10種類!
追加のポストプロセッサには特定アプリケーション/セットアップ向けのものがあります。例:KUKA KRC2コントローラ用には5種類あります。うち2つはCamRobフライスアドオンやKUKA CNC制御用(1プログラムファイルに数千行のコードを格納可能、ロボット加工向け)。1つはアーク溶接専用。同様に、Robotiqグリッパー統合用のURポストプロセッサもあります。
あなたのコントローラ向けで、かつ特定アプリケーション/セットアップに適したものがあればそれを使用。なければ、あなたのブランド・コントローラ向けの基本ポストプロセッサを使用します。
4. 更新しやすいポストプロセッサを選ぶ
RoboDK生成プログラムがアプリケーションに完全に合わない場合があります。機能拡張のためにコード行を追加したい場合、あなたのロボットプログラミング言語に少し詳しければ容易です。
一部ポストプロセッサは、生成コードの変更・更新を容易にするよう提供されています。
例:KUKA KRC2にはDATファイル生成オプションがあります。これはKUKAコントローラの興味深い機能で、位置を変数として別DATファイルに格納します。位置変更時に変数だけ書き換えればよく、コード更新が容易になる場合があります。
同様に、Siemens Sinumerikポストプロセッサには、位置をミリメートルで出力するものとインチで出力するものの2種類があります。
ロボットコードの更新を可能な限り容易にするポストプロセッサを選びましょう。
5. ポストプロセッサを作成/カスタマイズする
状況によっては独自ポストプロセッサの作成が必要です。例えばロボットを独自構成で使用する場合等です。
既存ポストプロセッサを特定セットアップ/アプリケーション向けにカスタマイズしたい場合もあります。
RoboDKではカスタムポストプロセッサの作成が非常に容易です。全てPythonプログラムで、同様のフォーマットで記述されています。
ポストプロセッサの作成/更新方法を示したシンプルなチュートリアル動画はこちら。
詳細についてはドキュメントのポストプロセッサページを参照してください。
ポストプロセッサについて質問がありますか? コメント欄、またはLinkedIn、Twitter、Facebook、Instagramで議論に参加してください。
産業用ロボット
- アウトソーシングメンテナンスの全貌:信頼性向上、コスト削減、運営合理化
- ナイフ鍛造の極意:耐久性のある刃を作る9つのエキスパートステップ
- キャパシティプランニング戦略:製造リソース最適化の包括的ガイド
- 技術図面解説:エンジニアとメーカーのための重要知識
- 金属鋳造の包括的ガイド:技術・材料・用途
- 産業用クラッチ修理の完全ガイド:故障サインから修理手順まで
- クラウドコンピューティング入門:進化、サービスモデル、主要メリット
- コンテナ vs サーバーレス:モダン開発者のための実践ガイド
- コンテナ追跡システム:ROI、テクノロジー、導入の完全ガイド
- IoT対応保全のマスター:資産健全性監視のエキスパート戦略
- 顔料分散の総合ガイド:安全性・性能・インドメーカー選定のポイント