I/O Signal Functions

By default, remote functions are assigned to the I/O of input numbers 0 to 7 and output numbers 0 to 8.
To change the function assignments from the default settings, the settings must be made using Epson RC+.
An expansion I/O board or Fieldbus I/O board is required to output all functions.

Inputs

Remote input enables external operation of Manipulators and Controllers by inputting signals when valid conditions specified for each function are met.
To be able to accept remote input from an external source, the control device must be set to remote in addition to assigning the remote function. "AutoMode output" is turned on when the remote input can be accepted from an external source.
Signals other than "SelProg" execute their respective functions when the input acceptance condition is satisfied at the rising edge of the signal. Functions are performed automatically, and so there is no need to create special programs.

KEY POINTS


  • If an error occurs, execute "Reset" to clear the error state before executing a remote input command. Use "Error output" and "Reset input" to allow the remote device to monitor and clear error states.
  • When the remote input command does not meet the input acceptance conditions, the CmdError signal is output. The CmdError signal is not set to default for remote I/O output signals. When using the remote function, set the CmdError signal to the remote I/O output signal.
Function Name Default Description Input Acceptance Condition (*1)
Start 0 Execute the function selected in SelProg (*2) (*3)

Ready output ON

Error output OFF

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

Pause input OFF

Stop input OFF

SelProg1 1 Specify Main function number to be executed (*2) -
SelProg2 2
SelProg4 3
SelProg8 Not set
SelProg16 Not set
SelProg32 Not set
Stop 4 Abort all tasks and commands -
Pause 5 Pause all tasks (*4) Running output ON
Continue 6 Continue paused task (*5)

Paused output ON

Pause input OFF

Stop input OFF

ContinueManualRecover Not set Continue paused task (manual recovery) (*6) -
Reset 7 Emergency stop release and error release (*7) Ready output ON
ForcePowerLow Not set

Operate under a forced low power function

Robot operates at low power

Does not accept Power High control by commands, etc.

Performs the following operations depending on Controller environment settings

Stop or pause all tasks and commands (*8)

Always

This input is accepted even when AutoMode output is OFF.

SelRobot Not set Change output conditions for MotorsOn, AtHome, PowerHigh, and MCalReqd (*9) -

SelRobot1

SelRobot2

SelRobot4

SelRobot8

SelRobot16

Not set Specify robot number to execute command (*10) -
SetMotorOn Not set Turn on robot motors (*10) (*11)

Ready output ON

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

SetMotorOff input OFF

SetMotorOff Not set Turn off robot motors (*10) Ready output ON
SetPowerHigh Not set Set robot power mode to High (*10)

Ready output ON

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

SetPowerLow input OFF

SetPowerLow Not set Set robot power mode to Low (*10) Ready output ON
Home Not set Move robot arm to user-defined home position

Ready output ON

Error output OFF

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

MotorsOn output ON

Pause input OFF

Stop input OFF

MCal Not set Execute MCal (*10) (*12)

Ready output ON

Error output OFF

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

MotorsOn output ON

Pause input OFF

Stop input OFF

Recover Not set Execute a recovery operation to the position when the safeguard was open after the safeguard was closed (*13) (*14)

Paused output ON

Error output OFF

EStopOn output OFF

SafeguardOn output OFF

EStopOff output ON

RecoverReqd output ON

Pause input OFF

Stop input OFF

ExtCmdSet Not set

This is an expansion remote I/O command.

For details, refer to the following manual.

"Remote Control Reference - Remote I/O to Be Used"

-
ExtRespGet Not set -
ExtCmdReset Not set -
ALIVE Not set

Input the input signal for performing alive monitoring of the Controller

The same signal as the input is output to the output-side ALIVE. The master device can perform alive monitoring of the Controller by periodically switching inputs and checking output signals.

-
ExtCmd_0-15 Not set

This is an expansion remote I/O command.

For details, refer to the following manual.

"Remote Control Reference - Remote I/O to Be Used"

-
ExtCmd_16-31 Not set
ExtCmd_32-47 Not set
ExtCmd_48-63 Not set
ExtCmd_64-79 Not set
ExtCmd_80-95 Not set
ExtCmd_96-111 Not set
ExtCmd_112-127 Not set
SelAxis Not set Specify the applicable robot -
SelAxis1-4 Not set Specify the applicable axis (*15) -
ResetCtrlParts Not set Clear Maintenance information (for the Controller) (*16) -
SelCtrlParts1-8 Not set Select Maintenance information (for the Controller) (*16) -
ResetRbParts Not set Clear Maintenance information (for robots) (*17) -
SelRbParts1-8 Not set Select Maintenance information (for robots) (*17) -

(*1) "AutoMode output" ON is omitted because it is a common input acceptance condition for all.
(*2) "Start input" executes the function specified by the 6 bits "SelProg1, 2, 4, 8, 16, 32."

Function Name 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) Do not run the Restart command of the SPEL+ program and the remote input Start signal at the same time. Running programs in duplicate may cause a 2503 error to occur.

(*4) "NoPause task" and "NoEmgAbort task" do not pause.
For details, refer to the following manual or online help.
"Epson RC+ Language Reference - Pause"

(*5) This resumes the execution of a paused task.
The setting for "Auto safeguard position recovery" setting in the Controller preferences is for control from Epson RC+ 8.0. This is not a setting to enable or disable the recovery operation of this command.
If you want to control the enabled/disabled status of automatic recovery by remote command, execute the Continue command and ContinueManualRecover command separately as necessary.

(*6) This resumes the execution of a paused task. With the Continue command, processing equivalent to the Recover command is also performed. Since this command does not include processing equivalent to the Recover command, the operation to recover to the position when the safeguard is opened is not performed.
You must execute the Recover command before executing this command.

[Use case]
Use this command to return to the original position (position with the safeguard open) with the Recover command and resume the program while confirming that no collision will occur during the recovery operation.

[Recovery method]

  • Safeguard closed->Recover->ContinueManualRecover
  • Safeguard closed->Continue
  • Safeguard closed->ContinueManualRecover->Continue

[Supplemental explanation]
Before executing this command, be sure to perform a recovery operation with the Recover command. Use the Continue command to perform the recovery operation and resume execution of the task at once. An error occurs if you execute the ContinueManualRecover command without executing the Recover command.

(*7) This turns off I/O outputs and initializes robot parameters.
For details, refer to the online help or the following manual.
"SPEL+ Language Reference - Reset"

(*8) This performs all tasks and commands, robot power modes, and PowerHigh command operations according to the set values in the Controller preferences.
Environment settings (1): "Low power at ForcePowerLow signal OFF"
Environment settings (2): "Pause tasks at ForcePowerLow signal change"
For details on Controller environment settings, refer to the following manual.
"Epson RC+ User's Guide - [Setup] - [System Configuration] - [Controller] - [Preferences]"

Environment settings (1) Environment settings (2) ForcePowerLow Signal Change All tasks and commands Robot power mode PowerHigh command
0 0 1->0 Stop Low only Accept
0 0 0->1 Stop Low only Not accepted
0 1 1->0 Operation continues High/Low Accept
0 1 0->1 Pause Low only Not accepted
1 0 1->0 Stop Low only Not accepted
1 0 0->1 Stop Low only Accept
1 1 1->0 Pause Low only Not accepted
1 1 0->1 Operation continues High/Low Accept

(*9) This switches output conditions for MotorsOn, AtHome, PowerHigh, and MCalReqd.
The conditions are selected using SelRobot-SelRobot16, and this signal can be set to switch the output conditions.
Once a selection is made, the condition is retained until it is switched again or until the Controller is turned off and restarted. The default value is Selects All Robots.

(*10) If multiple robots are connected to the Controller, the value specified by the 5 bits of "SelRobot1, 2, 4, 8, 16" corresponds to the robot number.

Robot No. 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
In the RC800 series, 0 to 4 can be specified. If 5 or higher is specified, an error will occur because the robot cannot be registered.

(*11) This also initializes robot parameters.
For details, refer to the following manual or online help.
"Epson RC+ Language Reference - Motor"

(*12) For details, refer to the following manual or online help.
"Epson RC+ Language Reference - MCal"

(*13) This input is intended for advanced users. Ensure that you fully understand the input specifications before use.
The CmdRunning output and CmdError output do not change relative to this input.
The "NoEmgAbort task" is not aborted. All tasks and commands are also aborted when the input changes from ON to OFF.

(*14) After the safeguard is closed, perform the recovery operation to the position when the safeguard is open.
The setting for "Auto safeguard position recovery" setting in the Controller preferences is for control from Epson RC+ 8.0. This is not a setting to enable or disable the recovery operation of this command.
If you want to control the enabled/disabled status of automatic recovery by remote command, execute the Continue command and ContinueManualRecover command separately as necessary.

(*15) The conditions are selected using SelAxis1-SelAxis4 and the axis is switched using SelAxis.

Function Name Initial Value Description Input Acceptance Condition
SelAxis Not set Change the conditions for reflecting the Maintenance command (*a) AutoMode output ON

SelAxis1

SelAxis2

SelAxis4

Not set Specify axis number for executing command (*b) AutoMode output ON

(*a) This switches the conditions for reflecting Maintenance.
The conditions are selected using SelAxis1-SelAxis4, and this signal can be set to switch the reflection conditions.
Once selected, the conditions are retained until they are switched again or the Controller is turned off or restarted. All axes are unselected by default.
The selectable axis numbers vary depending on SelAxis.
If an axis that is not applicable is selected, the command execution is ignored.

(*b) The value specified by the 3 bits of "SelAxis1, 2, 4" corresponds to the axis number of the robot.
Axis 1 to Axis 6 can be specified.

Axis number SelAxis1 SelAxis2 SelAxis4
0 (Reserved) 0 0 0
1 1 0 0
2 0 1 0
:
6 0 1 1
7 (Reserved) 1 1 1

0=OFF, 1=ON

(*16) The conditions are selected using SelCtrlParts1-SelCtrlParts8 select conditions and ResetCtrlParts clears the Controller's Maintenance information.

Function Name Initial Value Description Input Acceptance Condition
ResetCtrlParts Not set Clear Controller Maintenance information (*a) AutoMode output ON

SelCtrlParts1

SelCtrlParts2

SelCtrlParts4

SelCtrlParts8

Not set Specify Maintenance data number to be cleared (*b) AutoMode output ON

(*a) The conditions are selected using SelCtrlParts1-SelCtrlParts8, and this clears the specified Maintenance information. Information is cleared regardless of whether errors and warnings have occurred.

(*b) The information to be cleared is specified by SelCtrlParts1-8 and executed by ResetCtrlParts.
The value specified by the 4 bits of "SelCtrlParts1, 2, 4, 8" is the part designation number for resetting information.

SelCtrlParts

1

SelCtrlParts

2

SelCtrlParts

4

SelCtrlParts

8

Parts (Controller)
0 0 0 0 (Reserved)
1 0 0 0 Battery
0 1 0 0 (Reserved)
:
0 1 1 1 (Reserved)
1 1 1 1 (Reserved)

0=OFF, 1=ON

(*17) The conditions are selected using SelRbParts1-SelRbParts8, and ResetRbParts clears the robot's Maintenance information.

Function Name Initial Value Description Input Acceptance Condition
ResetRbParts Not set Clear Controller Maintenance information (*a) AutoMode output ON

SelRbParts1

SelRbParts2

SelRbParts4

SelRbParts8

Not set Specify Maintenance data number to be cleared (*b) AutoMode output ON

(*a) This selects the conditions in SelRbParts1-SelRbParts8 to clear the specified Maintenance information. Information is cleared regardless of whether errors and warnings have occurred.

(*b) The information to be cleared is specified by SelRbParts1-8 and executed by ResetRbParts. The value specified by the 4 bits of "SelRbParts1, 2, 4, 8" is the part designation number for resetting information.

SelRbParts

1

SelRbParts

2

SelRbParts

4

SelRbParts

8

Parts (Robot)
0 0 0 0 (Reserved)
1 0 0 0 Battery
0 1 0 0 Timing belt
1 1 0 0 Grease
0 0 1 0 Motor
1 0 1 0 Reduction gear
0 1 1 0 Ball screw spline
1 1 1 0 (Reserved)
:
0 1 1 1 Reserved
1 1 1 1 Reserved

0=OFF, 1=ON

Outputs

Remote output is a function that outputs the current Manipulator status, Controller status, and operation mode to an external device from the Controller.
Remote output always outputs the status of the assigned function externally, regardless of the control device settings. Output is performed automatically, and so there is no need to create a special program.

Function Name Default Description
Ready 0 ON when Controller startup is complete and no tasks are running
Running 1

ON when task is running

However, OFF when "Paused output" is ON

Paused 2 ON when paused task is present
Error 3

ON when error has occurred

"Reset input" is required to recover from an error state. (*1)

EStopOn Not set

OFF except in emergency stop state

ON in emergency stop state

OFF in Controller power off state (*2)(*3)

SafeguardOn 5 ON when safeguard is open
SError 6

ON when a critical error has occurred

If a critical error has occurred, it cannot be recovered using "Reset input." The Controller must be restarted. (*1)

Warning 7

ON when warning has occurred

Even if a warning has occurred, the task can be executed as usual. However, take corrective action to address the cause of the warning as soon as possible. (*1)

EStopOff 8

ON except in an emergency stop state

OFF in emergency stop state

OFF in Controller power off state (*3)

MotorsOn Not set ON when robot motor is on (*4)
AtHome Not set ON when robot is in the home position (*4)
PowerHigh Not set ON when robot is in the High power mode (*4)
MCalReqd Not set ON when robot has not performed MCal (*4)
RecoverReqd Not set ON when even one robot is waiting for the execution of the recovery operation after the safeguard is closed
RecoverInCycle Not set ON when even one robot is executing the recovery operation
WaitingRC Not set ON when Controller is waiting for connection to RC+
CmdRunning Not set ON during input command execution
CmdError Not set ON when input command could not be accepted

CurrProg1

CurrProg2

CurrProg4

CurrProg8

CurrProg16

CurrProg32

Not set Outputs the main function number running or last executed (*5)
AutoMode Not set ON when remote input can be accepted (*6)
TeachMode Not set ON when in TEACH mode (*3)
TestMode Not set ON when in TEST mode
EnableOn Not set ON when enable switch is on (*3)
ErrorCode1 to ErrorCode8192 Not set Output the error number
InsideBox1 to InsideBox15 Not set ON when robot is inside the entry detection area (*7)
InsidePlane1 to InsidePlane15 Not set ON when robot is on the entry detection plane (*8)
PositionX Not set Outputs the current X coordinate in the world coordinate system. (*9) (*10)
PositionY Not set Outputs the current Y coordinate in the world coordinate system. (*9) (*10)
PositionZ Not set Outputs the current Z coordinate in the world coordinate system. (*9) (*10)
PositionU Not set Outputs the current U coordinate in the world coordinate system. (*9) (*10)
PositionV Not set Outputs the current V coordinate in the world coordinate system. (*9) (*10)
PositionW Not set Outputs the current W coordinate in the world coordinate system. (*9) (*10)
Torque1 Not set Outputs the current torque value of Joint #1. (*9) (*10)
Torque2 Not set Outputs the current torque value of Joint #2. (*9) (*10)
Torque3 Not set Outputs the current torque value of Joint #3. (*9) (*10)
Torque4 Not set Outputs the current torque value of Joint #4. (*9) (*10)
Torque5 Not set Outputs the current torque value of Joint #5. (*9) (*10)
Torque6 Not set Outputs the current torque value of Joint #6. (*9) (*10)
CPU Not set Outputs the CPU load ratio of the user program. (*11)
ESTOP Not set Outputs the number of times an emergency stop has been performed.
ALIVE Not set

Output signal for alive monitoring of the Controller

Outputs the signal that was input by the input-side ALIVE. The master device can perform alive monitoring of the Controller by periodically switching inputs and checking output signals.

ForceControlOn Not set ON when the robot is performing a force control function (*4)
ExtCmdGet Not set

This is an expansion remote I/O command.

For details, refer to the following manual.

"Remote Control Reference - Remote I/O to Be Used"

ExtRespSet Not set
ExtCmdResult Not set
ExtError Not set
ExtResp_0-15 Not set
ExtResp_16-31 Not set
ExtResp_32-47 Not set
ExtResp_48-63 Not set
ExtResp_64-79 Not set
ExtResp_80-95 Not set
ExtResp_96-111 Not set
ExtResp_112-127 Not set
GetPartsStsCtrl0-15 Not set Maintenance status (Controller) (*12)
GetPartsStsRb0-15 Not set Maintenance status (Robot) (*13)

(*1) The correspondence between Error, SError, and Warning outputs and the corresponding status/error numbers are shown below.

Output Function Name Error Numbers
Error 1000~8999
SError 9000~9999
Warning 410~999

For details on status numbers/error numbers, refer to the following manual.
"Status Code/Error Code List"

(*2) EStopOn is not recommended because the outputs for the emergency stop and Controller power off states do not match. To output the emergency stop state, assign EStopOff.
The default settings have also been changed to specifications in which EStopOff is assigned.

(*3) Do not the following signals for safety-related functions. The signals do not meet Cat 3&PLd.
EStopOn, EStopOff, TeachMode, EnableOn

(*4) The following output is produced under the conditions selected by SelRobot. After switching the conditions by SelRobot, wait 40 ms before inputting the data.

Function Name State of SelRobot1-SelRobot16 at SelRobot Input
0: Selects All Robots 1 to 16: Selects Robot Number
MotorsOn ON when even one robot motor is on ON when the selected robot motor is on
AtHome ON when all robots are in the home position ON when the selected robot is in the home position
PowerHigh ON when even one robot is in the High power mode ON when the selected robot is in the High power mode
MCalReqd ON when even one robot has not performed MCal ON when the selected robot has not performed MCal
ForceControlOn ON when even one robot is performing a force control function ON when the selected robot is performing a force control function

(*5) Outputs the function number that is being executed or was last executed using the 6 bits of "CurrProg1, 2, 4, 8, 16, 32."

Function Name 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) Remote input can be accepted in the following two cases:

  • When in automatic operation mode and the control device is remote
  • When in program mode and remote I/O is enabled

(*7) For details, refer to the following manual or online help.
"Epson RC+ Language Reference - Box"

(*8) For details, refer to the following manual or online help.
"Epson RC+ Language Reference - Plane"

(*9) If SelRobot1, SelRobot2, SelRobot4, SelRobot8, and SelRobot16 are set, information for the selected robot is output. If nothing is set, information on robot 1 is output.

(*10) This is output in the Real format.

(*11) The total load ratio of user-created tasks is output. For the CPU load ratio, see the Task Manager.

(*12) The warning status of each part is indicated by the bits.

Bit Parts (Controller)
0 (Reserved)
1 Battery
2 (Reserved)
:
14 (Reserved)
15 (Reserved)

(*13) The warning status of each part is indicated by the bits.

Bit Parts (Robot)
0 (Reserved)
1 Battery
2 Timing belt
3 Grease
4 Motor
5 Reduction gear
6 Ball screw spline
7 (Reserved)
:
14 (Reserved)
15 (Reserved)