ユニバーサルロボット

ユニバーサルロボット(UR)は、2つの異なる方法を使用してRoboDKでプログラムできます:URPファイルまたはスクリプトファイル。

1.グラフィカルユーザーインターフェイス(URPファイル):URPプログラムは、ロボットのティーチペンダントのタッチスクリーンを使用して作成されます。URPプログラムには、1つ以上のスクリプトファイルをサブプログラムとして含めることがあります。URPプログラムは、実行前にロボットコントローラによってスクリプトプログラムに変換されます。

2.スクリプトファイル:スクリプトプログラムは、URのスクリプトプログラミング言語を使用します。他のプログラミング言語と同様に、URスクリプトには変数、タイプ、制御構造ステートメント、関数などがあります。さらに、URスクリプトには、ロボットのI/Oと動きを制御するいくつか組み込まれた変数と関数があります。

RoboDKを使用すると、URロボットが実行できるスクリプトファイルとURPファイルが生成できます。さらに、ロボットがコンピュータに接続されている場合、RoboDKからプログラムをロボットで実行する事ができます。

スクリプトファイルをRoboDKのシミュレーターにインポートすることもできます。これにより、スクリプトプログラムをシミュレートと変更して、再エクスポートできます。

URロボットのグラフィカルユーザーインターフェイスは、PolyScopeと呼ばれます(次の画像を参照に)。

Robots Universal Robots - 画像 1

URロボットIPの取​​UR-IP

ロボットのIPは、RoboDKシミュレーターから直接プログラムを実行する必要があります。FTPを通してでプログラムファイルを転送することもできます。

ロボットのIPは、URのティーチペンダントのメイン画面の[About]メニューから取得できます。

Robots Universal Robots - 画像 2

ロボットは、イーサネット接続(直接接続またはネットワーク)を介してコンピューターに接続する必要があります。Pingテストは、ネットワークリンクが適切に安定しているかどうかをテストします。

RoboDKからプログラムの実行

ロボットドライバーによって、オフラインプログラミング(プログラムを生成して、ロボットに転送してからて実行する事)の代わりを提供します。RoboDKのシミュレーションを直接ロボットで実行する事ができます(オンラインプログラミング)。詳細については、ロボットドライバー項目へ。

次の手順を辿って、RoboDKからロボットに接続します:

1.RoboDKでロボットを右クリックしてください

2.Robots Universal Robots - 画像 3ロボットに接続を選択

3.ロボットのIPを入力して

4.接続を選択します。

接続が成功した場合、準備完了と示す緑色のメッセージが表示されます。

接続メニューからポジションを取得関節を移動直線移動を選択して、ロボットが動かせます。

Robots Universal Robots - 画像 4

PCからロボットにプログラムを実行させるには、2つ方法があります:

1.RoboDKでフィードバックを得ながら、指示を一歩一歩行いながらロボットで実行(オンラインプログラミング):       
この方法は、ロボットをサーバーとして使用し、シミュレータで実行されると同時に各指示をロボットに送信します。この方法はデバッグをする際に役立ちます。

a.プログラムを右クリックします(この例ではPrint3D

b.ロボットで実行を選択

c.プログラムをダブルクリックして開始します(または右クリックして実行を選択)。

この設定をチェックすると、プログラムをダブルクリックするたびに実際のロボットに接続します(または右クリックして実行を選択すると)。

これらの操作は、RoboDK APIからも使用できます。これにより、他のアプリケーションとロボットプログラミングを統合できます。APIは、PythonC#、およびその他のプログラミング言語で使用できます。

Robots Universal Robots - 画像 5

2.プログラムをロボットに送信は、完全なプログラムを生成してからロボットに転送します。転送が終えたら、実際のロボットでプログラムを開始しさせます(ロボットオフラインプログラミング)。

a.プログラムを右クリックしてください(この例ではPrint3D)。

b.プログラムをロボットに送信(Ctrl+F6を選択します。

Robots Universal Robots - 画像 6

UReでリモートコントロールを有効にする方法#DriverURRemoteEnable

UReロボット(UR3eUR5e、またはUR10e)を使用している場合は、URのロボットコントローラーでリモートコントロール設定を有効にする事をお勧めします。

UReのリモートコントロールを有効にするには、次の手順を辿ってください:

1.右上のボタンから設定メニューを選択してください

2.システム - リモートコントロール(System-Remote Control)を選択

3.有効を選択します

4.操作モードをリモートコントロールに変更します

Robots Universal Robots - 画像 7Robots Universal Robots - 画像 8

Robots Universal Robots - 画像 9

URモニタリング#UR-Monitor

ライブラリには、URロボットの状態をモニターとRoboDKにある実際のロボットの位置を更新するマクロがあります。

1.ファイル開くを選択してください

2.C/RoboDK/Library/Macros/からUR_ActivateMonitoring.pyのマクロを読み込み、新しいPythonオブジェクトがプロジェクトに追加されます

3.接続パラメーターでしっかりとロボットIPが提供されていることを確認してください。

4.マクロをダブルクリックしてモニタリングを開始します。

シミュレーターはロボットの位置を更新し、実際のロボットが動くと同時にターゲットを作成します。特に、ロボットの速度、加速度、モーター電流をモニターすることが可能です。

URコントローラーでプログラムの実行#UR-StartProg

RoboDKシミュレーションの準備が出来たら、スクリプトおよび/またはURPプログラムが生成できます。この2つのファイルは、ロボットコントローラで実行できます。次の手順を辿って、ロボットシミュレーションからスクリプトおよびURPプログラムを生成します:

1.プログラムを右クリックします(この例ではPrint3D)。

2.ロボットプログラムを生成 F6を選択します

プログラムはテキストエディタに表示されます(この動作はメニューで変更できます:ツール設定プログラム)。

Robots Universal Robots - 画像 10

スクリプトおよびURPファイルの転送は、SFTP転送またはUSBドライブを介してできます。

URPプログラムを読み込む方法#UR-URP

次の手順は、ユニバーサルロボットのロボットにURPファイルを読み込む方法をまとめたものです。

1.プログラムを右クリックし、ポストプロセッサーを選択を選択します

2.Universal Robots URPを選択     
デフォルトのポストプロセッサーもURPファイルを生成するため、最初の2つのステップは任意です。しかし、スクリプトファイルとして実行するURPプログラムではなく、ユーザーが読み込めるURPプログラムを生成します。

3.プログラムを右クリックし、ロボットプログラムを生成F6)を選択して

4.生成されたURPファイルをUSBメモリディスクに保存します。

5.USBメモリディスクをロボットのティーチペンダント(URのポリスコープ)に接続

6.ロボットティーチペンダントで:実行タブを選択します

7.Load Programを選択し、RoboDKから生成されたプログラムを読み込みます

8.プログラムタブを選択し、再生ボタンで開始します

9.再生ボタンを選択してプログラムを開始します。

Robots Universal Robots - 画像 11 Robots Universal Robots - 画像 12

 Robots Universal Robots - 画像 13 Robots Universal Robots - 画像 14

スクリプトファイルを読み込む方法#UR-Script

次の手順と画像は、ロボットでスクリプトプログラムを実行する手順をまとめたものです。これらの手順は、URPプログラムファイルを実行するために必要ではありません:

1.ティーチペンダントのメイン画面でProgram Robotを選択します

2.Empty Programを選択

3.Structureタブを選択し

4.Advancedタブを選択してください

5.Script codeを選択

6.Fileを選択します(画像で示すように)

7.RoboDKによって生成されたスクリプトファイルを選択します

8.再生アイコンを選択してプログラムを実行させます

9.File Saveを選択して変更を保存します

10.最後に、プログラムが実行できます

Robots Universal Robots - 画像 15 Robots Universal Robots - 画像 16

Robots Universal Robots - 画像 17 Robots Universal Robots - 画像 18

プログラムの転送(FTP)#UR-FTP

RoboDKから生成されたスクリプトプログラム(F6キーを押した時など)は、USBディスクを使用してロボットに転送できますがロボットとコンピュータが接続されている場合は、FTP転送も使用できます。

FileZillaクライアントをデフォルトパスまたはRoboDKインストールフォルダー内にインストールして、RoboDKによって自動的に検出されるようにすることをお勧めします。

C\RoboDK\FileZilla FTPClient\

FTPでファイルを転送するには:

1.ロボットを右クリックして

2.ロボットに接続...を選択し

3.検索を選択します。FileZillaクライアントが開きます(FTP転送用のソフトウェア)。

4.ファイルサイト管理...Site Manager…)を選択

5.定義済みサイト(Predefined Sites)でユニバーサルロボットサンプル(Universal Robot Sample)を選択。

6.複製(Duplicate)を選択。Universal Robot設定のコピーが作成されます。

7.ロボットのIPを入力します(この例では192.168.1.66)。

8.接続を選択してください。

9.以前に生成されたスクリプトファイルをロボットに転送します。

スクリプトプログラムは通常、ロボットコントローラの/Programs/フォルダに保存されます。

Robots Universal Robots - 画像 19

ロボット運動学の更新#UR-Kinematics

この項目の手順は任意であり、オフラインプログラミングで正確さが要求される特定の状況でのみ必要になります。この項目は、ロボットを正確にシミュレーションする為に、RoboDKURロボットの固有の運動学的値を入力する方法について説明します。

URコントローラーの運動学は、ロボットごとに異なります。運動学は、DHテーブル(Denavit Hartenberg)の形式でロボットを定義する寸法です。RoboDKシミュレーターはデフォルトで公称UR運動学を使用するため、シミュレーターの運動学とコントローラーの運動学の間で2 mmから10 mmの不一致が発生する場合があります。

シミュレーションを実際のロボットと一致させるには、次の手順を辿って、URロボット固有の運動学がインポートできます。

1.実際のロボットを使用して生成されたURPファイルを取得してください(RoboDKまたはURシミュレーターを使用していないファイル)

2.RoboDKでロボットを開きます。URロボットはRoboDKライブラリで見つかります。既存のRoboDKプロジェクトで利用可能なURロボットを使用することもできます。

3.[ツール]-[スクリプトを実行] を選択します

4.UR_LoadControllerKinematicsを選択します

5.ロボットコントローラから抽出したURPファイルを選択してください。

次の画像に示すようなメッセージが表示されます。利用可能なURPファイルを読み込まなかった場合、または適切なURロボットを選択しなかった場合は、警告メッセージが表示される場合があります。

Robots Universal Robots - 画像 20

この手順が完了すると、ロボットを右クリックして[.robotとして保存] が選択できます。これらのパラメータはロボットファイルとともに保存され、新しいプロジェクトごとにこの手順を繰り返す代わりにロボットファイルが使用できます。

RoboDKは、URPファイルからロボットに固有の情報を抽出し、ロボットファイルでのシミュレーションとオフラインプログラミングに考慮します。次の画像で示すように、この設定を変更して、ロボットパラメータメニューでデフォルトの運動学に戻すことができます。

Robots Universal Robots - 画像 21

ティーチペンダントに表示されるポーズ情報が、RoboDKで表示する運動学と一致していることがわかります(RoboDKURロボットのツールフレームと参照系を削除して比較してください)。

各ロボットは工場でURによって調整されているため、URの運動学はロボットによって異なります。KUKAABB、安川電機(Motoman)、ファナックなどの他のロボット販売者は、絶対精度の設定を購入しない限り、ロボットを調整しません。絶対精度の設定では、最大40以上の調整パラメータを考慮することができます。

この手順はRoboDKのロボット調整とは同じではありません。ロボットの調整は、実際のロボットの精度を向上させるのに役立ちます。