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.
- If remote input commands do not meet the input acceptance condition, a CmdError signal outputs. The CmdError signal is not set to remote I/O output signal by default. When you use 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 | Resume paused task | Paused output ON Pause input OFF Stop input OFF |
Reset | 7 | Emergency stop reset and error reset (*5) | Ready output ON |
Shutdown | Not set | Shut down system | - |
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 (*6) | Always This input is accepted even when AutoMode output is OFF. |
SelRobot | Not set | Change output conditions for MotorsOn, AtHome, PowerHigh, and MCalReqd (*7) | - |
SelRobot1 SelRobot2 SelRobot4 SelRobot8 SelRobot16 | Not set | Specify robot number to execute command (*8) | - |
SetMotorOn | Not set | Robot motor ON (*8) (*9) | Ready output ON EStopOn output OFF SafeguardOn output OFF EStopOff output ON SetMotorOff input OFF |
SetMotorOff | Not set | Robot motor OFF (*8) | Ready output ON |
SetPowerHigh | Not set | Set robot power mode to High (*8) | Ready output ON EStopOn output OFF SafeguardOn output OFF EStopOff output ON SetPowerLow input OFF |
SetPowerLow | Not set | Set robot power mode to Low (*8) | 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 | Run MCal (*8) (*10) | 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 | Perform a recovery operation to the position when the safeguard was opened after the safeguard was closed | Paused output ON Error output OFF EStopOn output OFF SafeguardOn output OFF EStopOff output ON RecoverReqd output ON Pause input OFF Stop input OFF |
ResetAlarm | Not set | Reset alarm (*11) | - |
SelAlarm1 SelAlarm4 SelAlarm8 | Not set | Specify alarm number to reset (*12) | - |
ALIVE | Not set | Input signal for 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. | - |
(*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) I/O outputs are also turned off and robot parameters are initialized.
(*6) This performs all tasks and commands, robot power modes, and PowerHigh command operations according to the setting values in the Controller environment settings.
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] under [System Configuration] Command (Setup Menu)."
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 |
(*7) This switches the 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 is all robots selected.
(*8) If multiple robots are connected to the Controller, the value specified by the 5 bits "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 |
: | |||||
13 | 1 | 0 | 1 | 1 | 0 |
14 | 0 | 1 | 1 | 1 | 0 |
15 | 1 | 1 | 1 | 1 | 0 |
16 | 0 | 0 | 0 | 0 | 1 |
0=OFF, 1=ON
(*9) Robot parameters are also initialized.
For details, refer to the following manual or online help.
"Epson RC+ Language Reference - Motor"
(*10) For details, refer to the following manual or online help.
"Epson RC+ Language Reference - MCal"
(*11) The conditions are selected using SelAlarm1-SelAlarm8, and this signal can be set to clear a specified alarm.
(*12) The value specified by the 4 bits of "SelAlarm1, 2, 4, 8" corresponds to the alarm number.
Alarm Number | Alarm Target | SelAlarm1 | SelAlarm2 | SelAlarm4 | SelAlarm8 |
---|---|---|---|---|---|
1 | Controller battery | 1 | 0 | 0 | 0 |
2 | - | 0 | 1 | 0 | 0 |
3 | Manipulator grease | 1 | 1 | 0 | 0 |
4 | - | 0 | 0 | 1 | 0 |
5 | - | 1 | 0 | 1 | 0 |
6 | - | 0 | 1 | 1 | 0 |
7 | - | 1 | 1 | 1 | 0 |
8 | - | 0 | 0 | 0 | 1 |
9 | - | 1 | 0 | 0 | 1 |
0=OFF, 1=ON
For the greasing locations, refer to the following manual.
"Manipulator Manual"
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 motors are turned on (*4) |
AtHome | Not set | ON when robot is in home position (*4) |
PowerHigh | Not set | ON when robot power mode is High (*4) |
MCalReqd | Not set | ON when robot has not performed MCal (*4) |
RecoverReqd | Not set | ON when even one robot is waiting to perform the recovery operation after the safeguard was closed |
RecoverInCycle | Not set | ON when the recovery operation is running for at least one robot |
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 was not 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) |
Alarm | Not set | ON when an alarm has occurred (*9) |
Alarm1 | Not set | ON when Controller battery alarm has occurred (*10) |
Alarm2 | Not set | ON when robot battery alarm has occurred (*10) |
Alarm3 | Not set | ON when robot grease alarm has occurred (*10) (*11) |
Alarm4 | Not set | Reserved |
Alarm5 | Not set | Reserved |
Alarm6 | Not set | Reserved |
Alarm7 | Not set | Reserved |
Alarm8 | Not set | Reserved |
Alarm9 | Not set | Reserved |
PositionX | Not set | Outputs the current X-coordinate in the world coordinate system. (*12) (*13) |
PositionY | Not set | Outputs the current Y-coordinate in the world coordinate system. (*12) (*13) |
PositionZ | Not set | Outputs the current Z-coordinate in the world coordinate system. (*12) (*13) |
PositionU | Not set | Outputs the current U-coordinate in the world coordinate system. (*12) (*13) |
PositionV | Not set | Outputs the current V-coordinate in the world coordinate system. (*12) (*13) |
PositionW | Not set | Outputs the current W-coordinate in the world coordinate system. (*12) (*13) |
Torque1 | Not set | Outputs the current torque value of Joint #1. (*12) (*13) |
Torque2 | Not set | Outputs the current torque value of Joint #2. (*12) (*13) |
Torque3 | Not set | Outputs the current torque value of Joint #3. (*12) (*13) |
Torque4 | Not set | Outputs the current torque value of Joint #4. (*12) (*13) |
Torque5 | Not set | Outputs the current torque value of Joint #5. (*12) (*13) |
Torque6 | Not set | Outputs the current torque value of Joint #6. (*12) (*13) |
CPU | Not set | Outputs the CPU load rate for the user program. (*14) |
ESTOP | Not set | Outputs the number of times that 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 robot is running the force control function (*4) |
ExtCmdGet | Not set | Extended remote IO 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 |
(*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.
(*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 any of the robot's motors is on | ON when the selected robot motor is on |
AtHome | ON when all robots are at the home position | ON when the selected robot is at the home position |
PowerHigh | ON when the power mode for any robot is High | ON when the power mode of the selected robot is High |
MCalReqd | ON when any robot has not performed MCal | ON when the selected robot has not performed MCal |
(*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) This is set to ON whenever Controller alarm information or robot alarm information is present.
(*10) The occurrence of the battery alarm and grease alarm is monitored in five-minute cycles, and so the output timing is different from the occurrence of Controller alarms.
The output may occur up to five minutes after the Controller alarm occurs.
Alarm is turned on when the Controller or Manipulator battery alarm or grease alarm occurs when "Maintenance" is enabled. For details on Maintenance, refer to the following section.
Alarm Function
(*11) For the greasing locations, refer to the following manual.
"Manipulator Manual"
(*12) If SelRobot1, SelRobot2, SelRobot4, SelRobot8, or SelRobot16 is set, information on the selected robot is output. If nothing is set, information on robot 1 is output.
(*13) This is output in Real format.
(*14) The total user-created task load ratio is output. For the CPU load ratio, see the Task Manager.