ユニバーサルロボット(UR)は、2つの異なる方法を使用してRoboDKでプログラムできます:URPファイルまたはスクリプトファイル。
1.グラフィカルユーザーインターフェイス(URPファイル):URPプログラムは、ロボットのティーチペンダントのタッチスクリーンを使用して作成されます。URPプログラムには、1つ以上のスクリプトファイルをサブプログラムとして含めることがあります。URPプログラムは、実行前にロボットコントローラによってスクリプトプログラムに変換されます。
2.スクリプトファイル:スクリプトプログラムは、URのスクリプトプログラミング言語を使用します。他のプログラミング言語と同様に、URスクリプトには変数、タイプ、制御構造ステートメント、関数などがあります。さらに、URスクリプトには、ロボットのI/Oと動きを制御するいくつか組み込まれた変数と関数があります。
RoboDKを使用すると、URロボットが実行できるスクリプトファイルとURPファイルが生成できます。さらに、ロボットがコンピュータに接続されている場合、RoboDKからプログラムをロボットで実行する事ができます。
スクリプトファイルをRoboDKのシミュレーターにインポートすることもできます。これにより、スクリプトプログラムをシミュレートと変更して、再エクスポートできます。
URロボットのグラフィカルユーザーインターフェイスは、PolyScopeと呼ばれます(次の画像を参照に)。
ロボットのIPは、RoboDKシミュレーターから直接プログラムを実行する必要があります。FTPを通してでプログラムファイルを転送することもできます。
ロボットのIPは、URのティーチペンダントのメイン画面の[About]メニューから取得できます。
ロボットは、イーサネット接続(直接接続またはネットワーク)を介してコンピューターに接続する必要があります。Pingテストは、ネットワークリンクが適切に安定しているかどうかをテストします。
ロボットドライバーによって、オフラインプログラミング(プログラムを生成して、ロボットに転送してからて実行する事)の代わりを提供します。RoboDKのシミュレーションを直接ロボットで実行する事ができます(オンラインプログラミング)。詳細については、ロボットドライバー項目へ。
次の手順を辿って、RoboDKからロボットに接続します:
1.RoboDKでロボットを右クリックしてください
2.ロボットに接続… を選択
3.ロボットのIPを入力して
4.接続を選択します。
接続が成功した場合、準備完了と示す緑色のメッセージが表示されます。
接続メニューからポジションを取得、関節を移動、直線移動を選択して、ロボットが動かせます。
PCからロボットにプログラムを実行させるには、2つ方法があります:
1.RoboDKでフィードバックを得ながら、指示を一歩一歩行いながらロボットで実行(オンラインプログラミング):
この方法は、ロボットをサーバーとして使用し、シミュレータで実行されると同時に各指示をロボットに送信します。この方法はデバッグをする際に役立ちます。
a.プログラムを右クリックします(この例ではPrint3D)
b.ロボットで実行を選択
c.プログラムをダブルクリックして開始します(または右クリックして実行を選択)。
この設定をチェックすると、プログラムをダブルクリックするたびに実際のロボットに接続します(または右クリックして実行を選択すると)。
これらの操作は、RoboDK APIからも使用できます。これにより、他のアプリケーションとロボットプログラミングを統合できます。APIは、Python、C#、およびその他のプログラミング言語で使用できます。
2.プログラムをロボットに送信は、完全なプログラムを生成してからロボットに転送します。転送が終えたら、実際のロボットでプログラムを開始しさせます(ロボットオフラインプログラミング)。
a.プログラムを右クリックしてください(この例ではPrint3D)。
b.プログラムをロボットに送信(Ctrl+F6)を選択します。
UReロボット(UR3e、UR5e、またはUR10e)を使用している場合は、URのロボットコントローラーでリモートコントロール設定を有効にする事をお勧めします。
UReのリモートコントロールを有効にするには、次の手順を辿ってください:
1.右上のボタンから設定メニューを選択してください
2.システム - リモートコントロール(System-Remote Control)を選択
3.有効を選択します
4.操作モードをリモートコントロールに変更します
ライブラリには、URロボットの状態をモニターとRoboDKにある実際のロボットの位置を更新するマクロがあります。
1.ファイル➔開くを選択してください
2.C:/RoboDK/Library/Macros/からUR_ActivateMonitoring.pyのマクロを読み込み、新しいPythonオブジェクトがプロジェクトに追加されます。
3.接続パラメーターでしっかりとロボットIPが提供されていることを確認してください。
4.マクロをダブルクリックしてモニタリングを開始します。
シミュレーターはロボットの位置を更新し、実際のロボットが動くと同時にターゲットを作成します。特に、ロボットの速度、加速度、モーター電流をモニターすることが可能です。
RoboDKシミュレーションの準備が出来たら、スクリプトおよび/またはURPプログラムが生成できます。この2つのファイルは、ロボットコントローラで実行できます。次の手順を辿って、ロボットシミュレーションからスクリプトおよびURPプログラムを生成します:
1.プログラムを右クリックします(この例ではPrint3D)。
2.ロボットプログラムを生成 F6を選択します
プログラムはテキストエディタに表示されます(この動作はメニューで変更できます:ツール➔設定➔プログラム)。
スクリプトおよびURPファイルの転送は、SFTP転送またはUSBドライブを介してできます。
次の手順は、ユニバーサルロボットのロボットに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.再生ボタンを選択してプログラムを開始します。
次の手順と画像は、ロボットでスクリプトプログラムを実行する手順をまとめたものです。これらの手順は、URPプログラムファイルを実行するために必要ではありません:
1.ティーチペンダントのメイン画面でProgram Robotを選択します
2.Empty Programを選択
3.Structureタブを選択して
4.Advancedタブを選択してください
5.Script codeを選択
6.Fileを選択します(画像で示すように)
7.RoboDKによって生成されたスクリプトファイルを選択します
8.再生アイコンを選択してプログラムを実行させます
9.File ➔Saveを選択して変更を保存します
10.最後に、プログラムが実行できます
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/フォルダに保存されます。
この項目の手順は任意であり、オフラインプログラミングで正確さが要求される特定の状況でのみ必要になります。この項目は、ロボットを正確にシミュレーションする為に、RoboDKでURロボットの固有の運動学的値を入力する方法について説明します。
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ロボットを選択しなかった場合は、警告メッセージが表示される場合があります。
この手順が完了すると、ロボットを右クリックして[.robotとして保存] が選択できます。これらのパラメータはロボットファイルとともに保存され、新しいプロジェクトごとにこの手順を繰り返す代わりにロボットファイルが使用できます。
RoboDKは、URPファイルからロボットに固有の情報を抽出し、ロボットファイルでのシミュレーションとオフラインプログラミングに考慮します。次の画像で示すように、この設定を変更して、ロボットパラメータメニューでデフォルトの運動学に戻すことができます。
ティーチペンダントに表示されるポーズ情報が、RoboDKで表示する運動学と一致していることがわかります(RoboDKとURロボットのツールフレームと参照系を削除して比較してください)。
各ロボットは工場でURによって調整されているため、URの運動学はロボットによって異なります。KUKA、ABB、安川電機(Motoman)、ファナックなどの他のロボット販売者は、絶対精度の設定を購入しない限り、ロボットを調整しません。絶対精度の設定では、最大40以上の調整パラメータを考慮することができます。
この手順はRoboDKのロボット調整とは同じではありません。ロボットの調整は、実際のロボットの精度を向上させるのに役立ちます。