int RobGetDiPositionCapturePulsePos ( short idx, short SlotNumber, long PulsePos[MaxRobAxes] );
0が返却されます。
idx:ロボットを指定するインデックス。
SlotNumber:設定番号(スロット)を指定します。値の有効範囲は1~16です。
PulsePos:ロボット各軸のキャプチャ位置を、パルス単位で格納するための配列を指定します。配列要素数はMaxRobAxesにしてください。
ポート連動位置キャプチャ機能にてキャプチャした、指定ロボット、指定スロットの位置をパルス単位で取得します。
キャプチャ値を格納する配列は配列要素[0]から順番に使用されます。例えば2軸ロボットであれば1軸目のキャプチャ値は配列要素[0]に、2軸目のキャプチャ値は配列要素[1]に格納されます。詳細はロボットと軸(モータ軸)リソースを参照してください。
〇PCベースコントローラ
〇InterMotion
void main() {
double pos[MaxRobAxes];
long PulsePos[MaxRobAxes];
・・・・
RobSetDiPositionCapture(1, 1, 2049, 0);
・・・・
pos[0] = 50;
RobPtpMove(1, pos, 1/*絶対同期*/);
if(RobGetDiPositionCaptureStatus(1, 1) == 1) { // Slot1キャプチャ終了?
RobResetDiPositionCaptureStatus(1, 1); // キャプチャ終了フラグをリセット
RobGetDiPositionCapturePulsePos(1, 1, PulsePos); // キャプチャ値をリード
・・・・
}
・・・・
}