int RobWriteDriverParamEEPROM ( int idx, long Mask[MaxRobAxes], long ResultCode[MaxRobAxes] );
0:正常
1301:ドライバコマンドの実行不可
1302:ドライバコマンドの実行タイムアウト
1303:ResultCode配列に0以外が格納されている
idx:ロボットを指定するインデックス。
Mask:書込み対象軸を軸ごとに指定します。配列に1を設定するとEEPROMへの書込みが有効になり、0に設定すると書込みが無効になります。配列要素数はMaxRobAxesにしてください。
ResultCode:ロボットの各軸の実行結果を格納するための配列を指定します。配列要素数はMaxRobAxesにしてください。
指定ロボットのサーボドライバに対して、揮発領域のパラメータをEEPROMに書き込みます。
対象となるサーボドライバは現状RTEX機器のA6NとA7Nのみです。RTEX機器以外のパルス列機器に割り当てた軸に対して本関数を実行した場合、本関数は無視されて正常終了となります。
EEPROMの内容を更新したくない場合は、Mask配列でその軸に0を指定してください。
ResultCodeには、各軸の結果コードが返却されます。
本関数は、原点復帰動作中、移動中などは実行できません。
本関数では、RTEXサーボドライバ上のEEPROMを更新するのみです。本関数を実行する前に、RobWriteDriverParam関数でパラメータの書込みを行ってください。
本関数は、RTEX機器をサポートするInterMotionとJOY-RT40PRでのみ実行が可能です。
書込み対象軸を指定する配列、および実行結果を格納する配列は、ロボットを構成する軸数に従って配列要素[0]から順番に使用されます。例えば2軸ロボットであれば、論理1軸目のパラメータ値と実行結果は配列要素[0]に、論理2軸目のパラメータ値と実行結果は配列要素[1]に格納されます。
実行結果は各機器のコマンドエラーコードがそのまま返却されます。詳細は各機器の取扱説明書を参照してください。
〇PCベースコントローラ
〇InterMotion
long ResultCode[MaxRobAxes];
void main() {
int rc1, i;
long Mask[MaxRobAxes];
・・・・
for(i = 0; i < 8; i = i + 1) {
Mask[i] = 0;
}
Mask[0] = 1;
rc1 = RobWriteDriverParamEEPROM(1, Mask, ResultCode); // Robot1の1軸目のRTEX機器のEEPROMに書込み
・・・・
}