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) |