入出力信号の機能

初期設定において、入力番号0~7、出力番号0~8のI/Oには、リモート機能が割りあてられています。
初期設定から機能の割りあてを変更する場合は、Epson RC+ を使用しての設定が必要となります。
すべての機能を出力するためには拡張I/O基板、またはフィールドバスI/O基板が必要です。

入力

リモート入力は、機能ごとに定められた有効条件を満たすときに、信号を入力することによって、マニピュレーターやコントローラーに対して外部から操作を可能にするものです。
外部からのリモート入力を受付可能にするためには、リモート機能を割りあてる他に、コントロールデバイスをリモートに設定する必要があります。外部からのリモート入力を受付可能な場合、“AutoMode出力”がオンになります。
“SelProg”以外の信号は、信号の立ち上がりで入力受付条件が成立している場合に、各機能を実行します。機能は自動的に実行されるため、特別なプログラムを作成する必要はありません。

キーポイント


  • エラーが発生したら、リモート入力コマンドを実行する前に、“Reset”を実行してエラー状態をクリアしてください。リモート装置がエラー状態をモニターしてクリアするためには、 “Error出力”と“Reset入力”を使用してください。
  • リモート入力コマンドが入力受付条件を満たしていない場合、CmdError信号が出力されます。CmdError信号は、リモートI/O出力信号のデフォルトに設定されていません。リモート機能を使用する場合は、リモートI/O出力信号にCmdError信号を設定してください。
機能名称 初期設定 内容 入力受付条件 (*1)
Start 0 SelProgで選択しているファンクションを実行 (*2) (*3)

Ready出力 オン

Error出力 オフ

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

Pause入力 オフ

Stop入力 オフ

SelProg1 1 実行するMainファンクション番号指定 (*2) -
SelProg2 2
SelProg4 3
SelProg8 未設定
SelProg16 未設定
SelProg32 未設定
Stop 4 すべてのタスクと命令を中断 -
Pause 5 全タスクを一時停止 (*4) Running出力 オン
Continue 6 一時停止中のタスクを継続実行(*5)

Paused出力 オン

Pause入力 オフ

Stop入力 オフ

ContinueManualRecover 未設定 一時停止中のタスクを継続実行 (手動復帰)(*6) -
Reset 7 非常停止解除とエラー解除 (*7) Ready出力 オン
ForcePowerLow 未設定

強制ローパワー機能として動作

ロボットは、ローパワーで動作

コマンドなどでのPower High制御を受けつけない

コントローラーの環境設定の設定により、以下の動作を実行

すべてのタスクと命令の停止、または一時停止 (*8)

常時

AutoMode出力がオフでも本入力は受けつけられます。

SelRobot 未設定 MotorsOn, AtHome, PowerHigh, MCalReqd の出力条件を変更 (*9) -

SelRobot1

SelRobot2

SelRobot4

SelRobot8

SelRobot16

未設定 コマンド実行するロボット番号指定 (*10) -
SetMotorOn 未設定 ロボットのモーターをオン (*10) (*11)

Ready出力 オン

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

SetMotorOff入力 オフ

SetMotorOff 未設定 ロボットのモーターをオフ (*10) Ready出力 オン
SetPowerHigh 未設定 ロボットのパワーモードをHighに設定 (*10)

Ready出力 オン

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

SetPowerLow入力 オフ

SetPowerLow 未設定 ロボットのパワーモードをLowに設定 (*10) Ready出力 オン
Home 未設定 ロボットアームをユーザー定義のホーム位置まで移動

Ready出力 オン

Error出力 オフ

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

MotorsOn 出力 オン

Pause入力 オフ

Stop入力 オフ

MCal 未設定 MCalを実行 (*10) (*12)

Ready出力 オン

Error出力 オフ

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

MotorsOn 出力 オン

Pause入力 オフ

Stop入力 オフ

Recover 未設定 安全扉が閉められた後、安全扉が開いたときの位置への復帰動作を実行 (*13) (*14)

Paused出力 オン

Error出力 オフ

EStopOn出力 オフ

SafeguardOn出力 オフ

EStopOff出力 オン

RecoverReqd出力 オン

Pause入力 オフ

Stop入力 オフ

ExtCmdSet 未設定

拡張リモートIOコマンドです。

詳細は、以下のマニュアルを参照してください。

"リモートコントロールリファレンス - 使用するリモートI/O"

-
ExtRespGet 未設定 -
ExtCmdReset 未設定 -
ALIVE 未設定

コントローラーの死活監視を行うための入力信号入力

入力と同じ信号が出力側ALIVEに出力されます。マスター機器は周期的に入力を切り替え、出力される信号をチェックすることで、コントローラーの死活監視を行うことができます。

-
ExtCmd_0-15 未設定

拡張リモートIOコマンドです。

詳細は、以下のマニュアルを参照してください。

"リモートコントロールリファレンス - 使用するリモートI/O"

-
ExtCmd_16-31 未設定
ExtCmd_32-47 未設定
ExtCmd_48-63 未設定
ExtCmd_64-79 未設定
ExtCmd_80-95 未設定
ExtCmd_96-111 未設定
ExtCmd_112-127 未設定
SelAxis 未設定 対象ロボットの指定 -
SelAxis1-4 未設定 対象軸の指定 (*15) -
ResetCtrlParts 未設定 部品消耗品情報のクリア (コントローラー用) (*16) -
SelCtrlParts1-8 未設定 部品消耗品情報の選択 (コントローラー用) (*16) -
ResetRbParts 未設定 部品消耗品情報のクリア (ロボット用) (*17) -
SelRbParts1-8 未設定 部品消耗品情報の選択 (ロボット用) (*17) -

(*1) “AutoMode出力”オンは、全てに共通な入力受付条件のため、記載を省略しています。
(*2) “Start入力”は、“SelProg1, 2, 4, 8, 16, 32”の6ビットで指定されたファンクションが実行されます。

ファンクション名 SelProg1 SelProg2 SelProg4 SelProg8 SelProg16 SelProg32
Main 0 0 0 0 0 0
Main1 1 0 0 0 0 0
Main2 0 1 0 0 0 0
Main3 1 1 0 0 0 0
:
Main60 0 0 1 1 1 1
Main61 1 0 1 1 1 1
Main62 0 1 1 1 1 1
Main63 1 1 1 1 1 1

0=OFF, 1=ON

(*3) SPEL+プログラムのRestart命令とリモート入力のStart信号を同じタイミングで実行しないでください。プログラムを2重で実行すると、2503エラーが発生する可能性があります。

(*4) “NoPauseタスク”, “NoEmgAbortタスク”は一時停止しません。
詳細は、以下のマニュアル、またはオンラインヘルプを参照してください。
"Epson RC+ ランゲージリファレンス - Pause"

(*5) 一時停止中のタスクの実行を再開します。
コントローラー環境設定にある、“安全扉開放時の位置へ自動復帰”の設定は、Epson RC+8.0から制御するための設定です。本コマンドの復帰動作の有効/無効の設定ではありません。
リモートコマンドにて、自動復帰の有効無効の制御を行いたい場合は、ContinueコマンドとContinueManualRecoverコマンドを使い分けて実現させてくだい。

(*6) 一時停止中のタスクの実行を再開します。 Continueコマンドでは、Recoverコマンド相当の処理が併せて行われます。本コマンドでは、Recoverコマンド相当の処理が行われないため、安全扉解放時の位置への復帰動作は行われません。
本コマンド実行前に、Recoverコマンドを実行する必要があります。

[ユースケース]
復帰動作時に、衝突しないことを確認しながら、Recoverコマンドで元の位置 (安全扉を開いた位置) に戻し、プログラムを再開する場合に、本コマンドを使用します。

[復帰方法]

  • 安全扉閉 → Recover → ContinueManualRecover
  • 安全扉閉 → Continue
  • 安全扉閉 → ContinueManualRecover → Continue

[補足説明]
本コマンドを実行する前に、Recoverコマンドで復帰動作を必ず行ってください。リカバー動作とタスクの実行の再開を一度に行う場合は、Continueコマンドを使用してください。Recoverコマンドを実施せずにContinueManualRecoverコマンドを実施した場合は、エラーになります。

(*7) I/O出力のオフやロボットパラメーターの初期化も行われます。
詳細は、ヘルプ、または以下のマニュアルを参照してください。
"SPEL+ ランゲージリファレンス - Reset"

(*8) コントローラー環境設定の設定値により、すべてのタスクと命令、ロボットのパワーモード、PowerHighコマンドの動作を実行します。
環境設定(1): “ForcePowerLow信号OFFでLowパワー”
環境設定(2): “ForcePowerLow信号変化時、タスクを一時停止する”
コントローラーの環境設定については、以下のマニュアルを参照してください。
"Epson RC+ ユーザーズガイド - [セットアップ]-[システム設定]-[コントローラー]-[環境設定]"

環境設定 (1) 環境設定 (2) ForcePowerLow信号変化 すべてのタスクと命令 ロボットのパワーモード PowerHighコマンド
0 0 1→0 停止 Lowのみ 受けつける
0 0 0→1 停止 Lowのみ 受けつけない
0 1 1→0 動作継続 High/Low 受けつける
0 1 0→1 一時停止 Lowのみ 受けつけない
1 0 1→0 停止 Lowのみ 受けつけない
1 0 0→1 停止 Lowのみ 受けつける
1 1 1→0 一時停止 Lowのみ 受けつけない
1 1 0→1 動作継続 High/Low 受けつける

(*9) MotorsOn, AtHome, PowerHigh, MCalReqdの出力条件の切り替えを行います。
SelRobot-SelRobot16で条件の選択を行い、この信号をセットすることにより、出力条件を切り替えます。
1度選択を行うと、再度切り替えを行うか、コントローラーの電源がオフされるか、再起動されるまで、条件は保持されます。デフォルトは全ロボット選択です。

(*10) コントローラーに複数台のロボットが接続されている場合は、“SelRobot1, 2, 4, 8, 16”の5ビットで指定された値が、ロボット番号に該当します。

ロボット番号 SelRobot1 SelRobot2 SelRobot4 SelRobot8 SelRobot16
0(All) 0 0 0 0 0
1 1 0 0 0 0
2 0 1 0 0 0
3 1 1 0 0 0
4 0 0 1 0 0

0=OFF, 1=ON
RC800シリーズでは0~4までが指定可能です。5以降を指定する場合、ロボット登録ができないためエラーになります。

(*11) ロボットパラメーターの初期化も行われます。
詳細は、以下のマニュアル、またはオンラインヘルプを参照してください。
"Epson RC+ ランゲージリファレンス - Motor"

(*12) 詳細は、以下のマニュアル、またはオンラインヘルプを参照してください。
"Epson RC+ ランゲージリファレンス - MCal"

(*13) 上級者向けの入力です。入力の仕様を十分理解した上で使用してください。
本入力に対しては、CmdRunning出力、およびCmdError出力は変化しません。
“NoEmgAbortタスク”は中断しません。入力がオンからオフに変化した場合も、すべてのタスクと命令を中断します。

(*14) 安全扉が閉められた後、安全扉開放時の位置への復帰動作を行います。
コントローラー環境設定にある、“安全扉開放時の位置へ自動復帰”の設定は、Epson RC+8.0から制御するための設定です。本コマンドの復帰動作の有効/無効の設定ではありません。
リモートコマンドにて、自動復帰の有効無効の制御を行いたい場合は、ContinueコマンドとContinueManualRecoverコマンドを使い分けて実現させてくだい。

(*15) SelAxis1-SelAxis4で条件の選択を行い、SelAxisで軸の切り替えを実行します。

機能名称 初期値 内容 入力受付条件
SelAxis 未設定 部品消耗品管理コマンドの反映条件を変更 (*a) AutoMode出力オン

SelAxis1

SelAxis2

SelAxis4

未設定 コマンド実行する軸番号を指定 (*b) AutoMode出力オン

(*a) 部品消耗品管理の反映条件を切り替えます。
SelAxis1-SelAxis4で条件の選択を行い、この信号をセットすることにより、反映対象の条件を切り替えます。
1度選択すると、再度切り替えを行うか、コントローラーの電源がオフされるか、再起動されるまで、条件は保持されます。デフォルトは全軸非選択です。
SelAxisにより、選択できる軸番号は異なります。
対象外の軸が選択された場合は、コマンド実行は無視されます。

(*b) “SelAxis1, 2, 4”の3ビットで指定された値が、ロボットの軸番号に該当します。
1から6軸までの指定が可能です。

軸番号 SelAxis1 SelAxis2 SelAxis4
0 (予約) 0 0 0
1 1 0 0
2 0 1 0
:
6 0 1 1
7 (予約) 1 1 1

0=OFF, 1=ON

(*16) SelCtrlParts1-SelCtrlParts8で条件の選択を行い、ResetCtrlPartsでコントローラーの部品消耗品情報をクリアします。

機能名称 初期値 内容 入力受付条件
ResetCtrlParts 未設定 コントローラーの部品消耗品情報をクリア (*a) AutoMode出力オン

SelCtrlParts1

SelCtrlParts2

SelCtrlParts4

SelCtrlParts8

未設定 クリアする部品消耗品番号の指定 (*b) AutoMode出力オン

(*a) SelCtrlParts1-SelCtrlParts8で条件の選択を行い、指定した消耗品情報をクリアします。エラーおよびワーニング発生の有無に関わらず、情報がクリアされます。

(*b) 情報のクリア対象は、SelCtrlParts1-8で指定しResetCtrlPartsによって実行されます。
“SelCtrlParts1, 2, 4, 8”の4ビットで指定された値が、情報のリセットを行う部品指定番号となります。

SelCtrlParts

1

SelCtrlParts

2

SelCtrlParts

4

SelCtrlParts

8

部品 (コントローラー)
0 0 0 0 (予約)
1 0 0 0 バッテリー
0 1 0 0 (予約)
:
0 1 1 1 (予約)
1 1 1 1 (予約)

0=OFF, 1=ON

(*17) SelRbParts1 ~ SelRbParts8で条件の選択を行い、ResetRbPartsでロボットの部品消耗品情報をクリアします。

機能名称 初期値 内容 入力受付条件
ResetRbParts 未設定 コントローラーの部品消耗品情報をクリア (*a) AutoMode出力オン

SelRbParts1

SelRbParts2

SelRbParts4

SelRbParts8

未設定 クリアする部品消耗品番号の指定 (*b) AutoMode出力オン

(*a) SelRbParts1-SelRbParts8で条件を選択し、指定した消耗品情報をクリアします。エラーおよびワーニング発生の有無に関わらず、情報がクリアされます。

(*b) 情報のクリアを行う対象は、SelRbParts1-8で指定しResetRbPartsによって実行されます。“SelRbParts1, 2, 4, 8”の4ビットで指定された値が、情報のリセットを行う部品指定番号となります。

SelRbParts

1

SelRbParts

2

SelRbParts

4

SelRbParts

8

部品 (ロボット)
0 0 0 0 (予約)
1 0 0 0 バッテリー
0 1 0 0 タイミングベルト
1 1 0 0 グリス
0 0 1 0 モーター
1 0 1 0 減速機
0 1 1 0 ボールねじスプライン
1 1 1 0 (予約)
:
0 1 1 1 予約
1 1 1 1 予約

0=OFF, 1=ON

出力

リモート出力は、現在のマニピュレーターの状態、コントローラーの状態や操作モードなどをコントローラー外部に出力する機能です。
リモート出力は、コントロールデバイスの設定に関わらず、割りあてられた機能の状態を常に外部へ出力します。出力は自動的に行われるので、特別なプログラムを作成する必要はありません。

機能名称 初期設定 内容
Ready 0 コントローラーの起動が完了し、タスクが何も実行されていない状態でオン
Running 1

タスクが実行されている状態でオン

ただし、“Paused出力”がオンの状態ではオフ

Paused 2 一時停止状態のタスクが存在する状態でオン
Error 3

エラーが発生している状態でオン

エラー状態から復帰するには、“Reset入力”が必要です。(*1)

EStopOn 未設定

非常停止状態以外でオフ

非常停止状態でオン

コントローラー電源オフ状態でオフ (*2)(*3)

SafeguardOn 5 安全扉が開いた状態でオン
SError 6

重大エラーが発生している状態でオン

重大エラーが発生した場合、“Reset入力”では復帰できません。コントローラーの再起動が必要です。(*1)

Warning 7

ワーニングが発生している状態でオン

ワーニングが発生してもタスクの実行は通常と同じように行えます。ただし、できるだけ早急にワーニング原因の対策を行ってください。(*1)

EStopOff 8

非常停止状態以外でオン

非常停止状態でオフ

コントローラー電源オフ状態でオフ (*3)

MotorsOn 未設定 ロボットのモーターがオンの状態でオン (*4)
AtHome 未設定 ロボットがホーム位置にいる状態でオン (*4)
PowerHigh 未設定 ロボットのパワーモードがHigh状態でオン (*4)
MCalReqd 未設定 ロボットがMCal未実施状態でオン (*4)
RecoverReqd 未設定 安全扉を閉じた後、1台でもロボットが復帰動作の実行を待っている状態でオン
RecoverInCycle 未設定 1台でもロボットの復帰動作が実行されている状態でオン
WaitingRC 未設定 コントローラーがRC+との接続を待っている状態でオン
CmdRunning 未設定 入力コマンド実行中にオン
CmdError 未設定 入力コマンドが受けつけられなかった状態でオン

CurrProg1

CurrProg2

CurrProg4

CurrProg8

CurrProg16

CurrProg32

未設定 実行中または最後に実行されたmainファンクション番号を出力 (*5)
AutoMode 未設定 リモート入力を受付可能な状態でオン (*6)
TeachMode 未設定 TEACHモード状態でオン (*3)
TestMode 未設定 TESTモード状態でオン
EnableOn 未設定 イネーブルスイッチがオンの状態でオン (*3)
ErrorCode1~ErrorCode8192 未設定 エラー番号を出力
InsideBox1~InsideBox15 未設定 進入検出エリア内にロボットがいる状態でオン (*7)
InsidePlane1~InsidePlane15 未設定 進入検出平面上にロボットがいる状態でオン (*8)
PositionX 未設定 現在のX座標をワールド座標系で出力します。 (*9) (*10)
PositionY 未設定 現在のY座標をワールド座標系で出力します。 (*9) (*10)
PositionZ 未設定 現在のZ座標をワールド座標系で出力します。 (*9) (*10)
PositionU 未設定 現在のU座標をワールド座標系で出力します。 (*9) (*10)
PositionV 未設定 現在のV座標をワールド座標系で出力します。 (*9) (*10)
PositionW 未設定 現在のW座標をワールド座標系で出力します。 (*9) (*10)
Torque1 未設定 現在の第1関節のトルク値を出力します。(*9) (*10)
Torque2 未設定 現在の第2関節のトルク値を出力します。 (*9) (*10)
Torque3 未設定 現在の第3関節のトルク値を出力します。(*9) (*10)
Torque4 未設定 現在の第4関節のトルク値を出力します。(*9) (*10)
Torque5 未設定 現在の第5関節のトルク値を出力します。(*9) (*10)
Torque6 未設定 現在の第6関節のトルク値を出力します。(*9) (*10)
CPU 未設定 ユーザープログラムのCPU負荷率が出力されます。(*11)
ESTOP 未設定 非常停止を実施した回数が出力されます。
ALIVE 未設定

コントローラーの死活監視を行うための出力信号

入力側ALIVEで入力された信号が出力されます。マスター機器は周期的に入力を切り替え、出力される信号をチェックすることで、コントローラーの死活監視を行うことができます。

ForceControlOn 未設定 ロボットが力制御機能実行中の状態でオン (*4)
ExtCmdGet 未設定

拡張リモートIOコマンドです。

以下のマニュアルを参照してください。

"リモートコントロールリファレンス - 使用するリモートI/O"

ExtRespSet 未設定
ExtCmdResult 未設定
ExtError 未設定
ExtResp_0-15 未設定
ExtResp_16-31 未設定
ExtResp_32-47 未設定
ExtResp_48-63 未設定
ExtResp_64-79 未設定
ExtResp_80-95 未設定
ExtResp_96-111 未設定
ExtResp_112-127 未設定
GetPartsStsCtrl0-15 未設定 部品消耗品状態 (コントローラー) (*12)
GetPartsStsRb0-15 未設定 部品消耗品状態 (ロボット) (*13)

(*1) Error, SError, Warningの各出力と、対応するステータス番号/エラー番号の対応は、以下の通りです。

出力機能名称 エラー番号
Error 1000~8999
SError 9000~9999
Warning 410~999

ステータス番号/エラー番号の詳細は、以下のマニュアルを参照してください。
"ステータスコード / エラーコード 一覧"

(*2) EStopOnは、非常停止状態とコントローラー電源オフ状態の出力が一致しないため、非推奨です。非常停止状態を出力するためには、EStopOffを割りあててください。
デフォルト設定もEStopOffが割り当てられる仕様に変更されています。

(*3) 以下の信号は、安全関連機能には使用しないでください。Cat 3&PLdを満たしていません。
EStopOn, EStopOff, TeachMode, EnableOn

(*4) SelRobotにより選択された条件で、以下のように出力されます。SelRobotによる条件の切り替え後、40ms経過してから、入力を行ってください。

機能名称 SelRobot入力時の (SelRobot1- SelRobot16)の状態
0: 全ロボット選択 1~16: ロボット番号選択
MotorsOn 1台でも、ロボットのモーターがオンの状態でオン 選択されているロボットのモーターがオンの状態でオン
AtHome 全てのロボットがホーム位置にいる状態でオン 選択されているロボットがホーム位置にいる状態でオン
PowerHigh 1台でも、ロボットのパワーモードがHigh状態でオン 選択されているロボットのパワーモードがHigh状態でオン
MCalReqd 1台でも、ロボットがMCal未実施状態でオン 選択されているロボットがMCal未実施状態でオン
ForceControlOn 1台でも、ロボットが力制御機能実行中の状態でオン 選択されているロボットが、力制御機能実行中の状態でオン

(*5) “CurrProg1, 2, 4, 8, 16, 32”の6ビットで実行中または最後に実行されたファンクション番号を出力します。

ファンクション名 CurrProg1 CurrProg2 CurrProg4 CurrProg8 CurrProg16 CurrProg32
Main 0 0 0 0 0 0
Main1 1 0 0 0 0 0
Main2 0 1 0 0 0 0
Main3 1 1 0 0 0 0
:
Main60 0 0 1 1 1 1
Main61 1 0 1 1 1 1
Main62 0 1 1 1 1 1
Main63 1 1 1 1 1 1

0=OFF, 1=ON

(*6) リモート入力は、以下の2つの場合で、受付可能です。

  • 自動運転モードで、かつ、コントロールデバイスがリモートのとき
  • プログラムモードで、かつ、リモートI/Oが有効のとき

(*7) 詳細は、以下のマニュアル、またはオンラインヘルプを参照してください。
"Epson RC+ ランゲージリファレンス - Box"

(*8) 詳細は、以下のマニュアル、またはオンラインヘルプを参照してください。
"Epson RC+ ランゲージリファレンス - Plane"

(*9) SelRobot1, SelRobot2, SelRobot4, SelRobot8, SelRobot16が設定されている場合、選択されたロボットの情報を出力します。設定されていない場合はロボット1の情報を出力します。

(*10) Real形式で出力します。

(*11) ユーザー作成タスク負荷率の合計が出力されます。CPU負荷率については、タスクマネージャーを参照してください。

(*12) 各パーツのワーニング状態をビットで示します。

Bit 部品(コントローラ)
0 (予約)
1 バッテリー
2 (予約)
:
14 (予約)
15 (予約)

(*13) 各パーツのワーニング状態をビットで示します。

Bit 部品(ロボット)
0 (予約)
1 バッテリー
2 タイミングベルト
3 グリス
4 モーター
5 減速機
6 ボールねじスプライン
7 (予約)
:
14 (予約)
15 (予約)