LANGUAGE
日本語 English

関数名

RobResetAbsTurnsData

定 義

int RobResetAbsTurnsData ( int idx, long Mask[MaxRobAxes], long ResultCode[MaxRobAxes] );

戻り値

0:正常
1301:ドライバコマンドの実行不可
1302:ドライバコマンドの実行タイムアウト
1303:ResultCode配列に0以外が格納されている

引 数

idx:ロボットを指定するインデックス。
Mask:アブソリュートエンコーダ多回転データクリア対象軸を軸ごとに指定します。配列に1を設定するとデータクリアが有効になり、0に設定するとデータクリアが無効になります。配列要素数はMaxRobAxesにしてください。
ResultCode:ロボットの各軸の実行結果を格納するための配列を指定します。配列要素数はMaxRobAxesにしてください。

概 要

指定したロボットのサーボドライバに対して、アブソリュートエンコーダ多回転データクリアを行います。

詳 細

対象となるサーボドライバは現状RTEX機器のA6NとA7Nのみです。RTEX機器以外のパルス列機器に割り当てた軸に対して本関数を実行した場合、本関数は無視されて正常終了となります。
インクリメントモードに設定されているRTEX機器に対して本関数を実行した場合はロボットエラーとなります。(Robot errorのSts2のbit31が立ちます。詳細はRobGetErrorStatus関数を参照してください。)
Maskによってデータクリア対象軸を指定できます。(データクリアしたくない軸にはMask配列で0を指定してください。)
ResultCodeには、各軸の結果コードが返却されます。
本関数は、原点復帰動作中は実行できません。また、本関数を実行するとロボットの0位置が変更されますので、使用に際しては、安全に十分な注意をしてください。

備考

本関数は、RTEX機器をサポートするInterMotionとJOY-RT40PRでのみ実行が可能です。
データクリア対象軸を指定する配列、および実行結果を格納する配列は、ロボットを構成する軸数に従って配列要素[0]から順番に使用されます。例えば2軸ロボットであれば、論理1軸目のパラメータ値と実行結果は配列要素[0]に、論理2軸目のパラメータ値と実行結果は配列要素[1]に格納されます。
実行結果は各機器のコマンドエラーコードがそのまま返却されます。詳細は各機器の取扱説明書を参照してください。

前処理の候補

後処理の候補

他処理の候補

対応HW

〇PCベースコントローラ
〇InterMotion

使用例


long ResultCode[MaxRobAxes];
void main() {
	long Mask[MaxRobAxes];
	int	 rc1, i;
	・・・・
	for(i = 0; i < 8; i = i + 1) {
		Mask[i] = 0;
	}
	Mask[0] = 1;
	rc1 = RobResetAbsTurnsData(1, Mask, ResultCode);
	・・・・
}