LANGUAGE
日本語 English

関数名

RobGetAxesConfig

定 義

short RobGetAxesConfig ( int idx, long PyhsicalAxisNo[MaxRobAxes], long PyhsicalAxisType[MaxRobAxes] );

戻り値

正常終了では0が返却されます。指定ロボットが未設定の場合は1が返却されます。

引 数

idx:ロボットを指定するインデックス。
PyhsicalAxisNo:ロボットの各軸に割付けられている物理軸番号を格納するための配列を指定します。配列要素数はMaxRobAxesにしてください。
PyhsicalAxisType:ロボットの各軸に割付けられている物理軸タイプを格納するための配列を指定します。配列要素数はMaxRobAxesにしてください。

概 要

指定ロボットの各論理軸に割付けられている物理軸番号と物理軸タイプを取得します。

詳 細

PyhsicalAxisNoの各要素に得られた番号が0の場合、その論理軸には物理軸が割付けされていないことを示します。0以外の場合は、その論理軸に該当番号の物理軸が割付けられていることを示します。
PyhsicalAxisTypeの各要素に得られた番号が0の場合、その軸はRTEX軸であることを、1であればパルス列軸であることを示します。物理軸番号の割付けが0以外の場合に、物理軸タイプは有効な意味を持ちます。

備考

物理軸番号および物理軸タイプを格納する配列は、配列要素[0]から順番に使用されます。例えば、2軸ロボットであれば論理1軸目の物理軸番号および物理軸タイプは配列要素[0]に、論理2軸目の物理軸番号および物理軸タイプは配列要素[1]に格納されます。詳細はロボットと軸(モータ軸)リソースを参照してください。

前処理の候補

後処理の候補

他処理の候補

対応HW

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

使用例


void main() {
	long PhyAxNo[MaxRobAxes], PhyAxType[MaxRobAxes];
	int  RobotNum, i, RobRc;
	・・・・
	// ロボット数の調査
	RobotNum = 0;
	for(i = 1; i <= 16; i = i + 1) {
		RobRc = RobGetAxesConfig(i, PhyAxNo, PhyAxType);
		if(RobRc == 0/*ロボットが存在する*/) {
			RobotNum = RobotNum + 1;/*最大ロボット数を更新*/
		}
	}
	// 例えばRobot1が物理9軸と10軸で構成されたパルス列タイプのロボットであったとする
	RobGetAxesConfig(1, PhyAxNo, PhyAxType);	// ロボット1の情報取得
	Printf1("\n PhyAxNo= %d", PhyAxNo[0]);		// PhyAxNo[0]=9が得られる
	Printf1(", %d", PhyAxNo[1]);			// PhyAxNo[1]=10が得られる
	Printf1(", %d", PhyAxNo[2]);			// PhyAxNo[2]=0が得られる
	Printf1(", %d", PhyAxNo[3]);			// PhyAxNo[3]=0が得られる
	Printf1(", %d", PhyAxNo[4]);			// PhyAxNo[4]=0が得られる
	Printf1(", %d", PhyAxNo[5]);			// PhyAxNo[5]=0が得られる
	Printf1(", %d", PhyAxNo[6]);			// PhyAxNo[6]=0が得られる
	Printf1(", %d", PhyAxNo[7]);			// PhyAxNo[7]=0が得られる
	Printf1("\n PhyAxType= %d", PhyAxType[0]);	// PhyAxType[0]=1が得られる
	Printf1(", %d", PhyAxType[1]);			// PhyAxType[1]=1が得られる
	Printf1(", %d", PhyAxType[2]);			// PhyAxType[2]=0が得られる
	Printf1(", %d", PhyAxType[3]);			// PhyAxType[3]=0が得られる
	Printf1(", %d", PhyAxType[4]);			// PhyAxType[4]=0が得られる
	Printf1(", %d", PhyAxType[5]);			// PhyAxType[5]=0が得られる
	Printf1(", %d", PhyAxType[6]);			// PhyAxType[6]=0が得られる
	Printf1(", %d", PhyAxType[7]);			// PhyAxType[7]=0が得られる
	・・・・
}