Topic IO Signals
Topic IO Signals
3 Topic: IO Signals
The following parameters are found under the topic IO Signals:
• Select the appropriate I/O unit to be changed and press Enter , or add a new one
by pressing Add.
• Select the desired parameter and change its value.
• Press OK to confirm.
To delete a unit
All the signals on this unit will remain defined. These must be deleted separately.
Parameter Description
Unit Name The name of the unit (max. 16 characters).
Unit Type Unit type (see also 3.2 below).
Compare with the designation on the cover of the unit.
Unit type eip000 is used for simulated digital and analog
signals. This simulated unit can handle up to 100 digital inputs,
100 digital outputs, 30 analog inputs and 30 analog outputs.
For more information about the selected unit type press the
function key Info.
Unit Bus The bus on which the unit is located, normally BASE, except
for simulated units which are located on the SIM bus.
Address The address of the BASE unit on the bus according to the
physical keying, see Product Manual - Installation and
Commissioning.
Digital Outputs The number of digital output signals to be used.
Digital Inputs The number of digital input signals to be used.
Analog Inputs The number of analog input signals to be used.
Analog Outputs The number of analog output signals to be used.
PollRate Some units needs to be polled to update input and output
signals. The parameter specifies the time between two
consecutive polls.
NOTE. All units produced by ABB Robotics Products, except
the Allen-Bradley Remote I/O adapter, are event driven. With
these units the polling mechanism is used as heart-beat only. It
is recommended to use the default poll rate, 1 second, with
these units (10 ms to10 s, resolution 10 ms).
Disabled Specifies that the I/O unit will not be present on the bus at start
up.
Parameter Description
Rack Address The rack address is entered in decimal form while Allen-
Bradley use octal (0-7). Valid values are from 0 to 63 (Allen-
Bradley 0-77). Note that the Allen-Bradley PLC series 2/30
starts from octal address 1.
Data Rate The data rate on the RIO Bus.
Valid values are: 57.6 KBaud.
115.2 KBaud.
230.4 KBaud.
Starting Quarter The DSQC 350 starting quarter.
Valid values are:First PLC value 0
Second 2
Third 4
Fourth 6
Rack Size The DSQC 350 rack size.
Valid values are:1/4 rack32 out, 32+2 in1
1/2 rack 64 out, 64+2 in1
3/4 rack 96 out, 96+2 in1
full rack 128 out, 128+2 in1
Last Rack Determines whether the DSQC 350 is the last rack on the RIO
Bus.
Valid values are: No
Yes
Parameter Description
Data Width The data width determines the number of I/O signals. The valid
values are:
1 word = 16 out, 16+1 in2
2 words = 32 out, 32+1 in2
3 words = 48 out, 48+1 in2
4 words = 64 out, 64+1 in2
Parameter Description
Master Input Size The master input size determines the number of digital
output signals. The valid values are:
0 word = 0 out 0 bytes output, no consistency
1 word = 16 out 2 bytes output, no consistency
2 words = 32 out 4 bytes output, no consistency
3 words = 48 out 6 bytes output, no consistency
4 words = 64 out 8 bytes output, no consistency
5 words = 80 out 10 bytes output, no consistency
6 words = 96 out 12 bytes output, no consistency
7 words = 112 out 14 bytes output, no consistency
8 words = 128 out 16 bytes output, no consistency
Master Output Size The master output size determines the number of digital
input signals. The valid values are:
0 word = 0+1 in 0 bytes input, no consistency
1 word = 16+1 in 2 bytes input, no consistency
2 words = 32+1 in 4 bytes input, no consistency
3 words = 48+1 in 6 bytes input, no consistency
4 words = 64+1 in 8 bytes input, no consistency
5 words = 80+1 in 10 bytes input, no consistency
1. Input numbers 33, 65, 97 or 129 respectively, correspond to NAC status LED flashing (high at RIO link
particularly up, i.e. PLC in programming mode)
Input numbers 34, 66, 98 or 130 respectively, correspond to NAC status LED steadily lit (high at RIO link up)
2. Input numbers 17, 33, 49 or 65 respectively, correspond to Interbus-S status LED BA steadily lit (Bus
Active)
User’s Guide 12-11
System Parameters
To configure the Profibus master use the GSD-file supplied on the diskette Controller
Parameters, file SERVICE\GSD\ABB_0600.GSD. The modules to be chosen depends
on the I/O definition.
Note When working with Profibus master configuration tools, i.e. COM PROFI-
BUS, which calculates the configuration bytes for the modules itself, it is important to
be aware that the input and output modules for the DSQC352 are byte oriented instead
of word oriented.
Note that several signals can be connected to the same physical channel. The same sig-
nals cannot, however, be connected to different physical channels.
• Select the signal to be changed and press Enter , or add a new one by pressing
Add.
• Select the desired parameter and change its value.
• Press OK to confirm.
To delete a signal
Parameter Description
Signal Name The name of the signal (max. 16 characters).
Unit Name The unit to which the signal is connected.
For more information about the selected unit press the function
key Info.
Signal Type The type of signal: DI= Digital Input, DO= Digital Output,
AI= Analog Input, AO= Analog Output.
Signal Number The physical channel to which the signal is connected.
The numbering restarts from 1 for each unit and “signal type”.
Logical Max The scaling between the programmed and physical value of
Physical Max an analog signal (see Figure 7). Must be set to 0 for digital
Logical Min signals.
Physical Min
Physical Max
Logical Max
Logical value in the
Logical Min program
Physical Min
Filter Passive The time (in millisecs) that a digital input signal must be zero,
before the robot acts on the signal change (10 ms to 32 s).
Filter Active The time (in millisecs) that a digital input signal must be 1,
before the robot acts on the signal change (10 ms to 32 s).
Digital signals can be grouped together and handled as if they were one signal. The
value of such a signal will thus be a positive integer that is binary coded using the indi-
vidual digital signals as a basis.
• Select the signal group to be changed, and press Enter , or add a new one by
pressing Add.
• Select the desired parameter and change its value.
• Press OK to confirm.
Parameter Description
Signal Name The name of the signal (max. 16 characters).
Unit Name The unit to which the signal is connected.
For more information about the unit type press the function
key Info.
Signal Type The type of signal: GI= Group of input signals, GO= Group of
output signals.
Group length The number of digital signals in the group. The length must be
set so that the group is within one unit. The maximum value for
length is 16.
Start signal The physical channel of the unit to which the first signal (the
least significant) is connected. The remaining signals are
automatically connected to the next channels on the same
unit.
Inverted Set to Yes if all signals in the group shall be inverted.
Store If set to YES, the digital outputs will be stored at a power
failure, and restored when the system is powered up again.
It should be noted that the value is connected to a logical
signal. If more than one logical signal is connected to the same
physical signal, an unexpected value may be obtained. In such
cases this parameter should be set to NO.
A digital input or output signal can be logically connected to one or several digital input
or output signals. This means that a cross-connected signal will automatically be
changed when the “activation” signal is changed. For more information, see RAPID
Reference Manual - Motion and I/O Principles.
• If the signal has not already been defined, then define its name in the normal way. See
Defining input and output signals on page 12.
• Choose Topics: IO Signals
• Choose Types: Cross Connections.
All the defined cross connections will be displayed (see Figure 9).
• Select the cross connection to be changed and press Enter , or add a new one by
pressing Add.
• Define the ”activation (From)” signal and the corresponding ”cross connected (To)”
signal.
• Press OK to confirm.
A maximum of 60 signals can be cross connected. Make sure that the same signal is not
connected on both the ”From” and ”To” sides, in the same chain.
The digital I/O signals can have the logical conditions AND or OR, to set up a condition
for a cross connection. These conditions cannot be entered from the teach pendant.
They are instead set up in the configuration file EIO.CFG in the cross-connection sec-
tion (starting with the line “EIO_CROSS:”) using a standard PC. The same rules apply
12-16 User’s Guide
System Parameters
to the logical condition connections for the result signals as for the normal cross-con-
nected result signals. The actors in the cross-connection section have the logical con-
dition operators.
For each logical condition connection there can only be one kind of logical operator.
Each logical condition connection can be seen as a logical operator box.
The INV help operator can be connected before an in signal (actor signal) to an AND
or OR box which means that the signal is inverted before being checked in the operator
box.
Examples
Logical
di1
do2
do10
& do26
In Configuration file:
EIO_CROSS:
-Lres do26 -Lact “di1 & do2 & do10”
Logical
di1
do2
do10
! do26
In Configuration file:
EIO_CROSS:
-Lres do26 -Lact “di1 ! do2 ! do10”
di1
= INV = Invert
do2
do10
! do26
In Configuration file:
EIO_CROSS:
-Lres do26 -Lact “*di1 ! do2 ! *do10”
The actor signals can be both digital In and Out signals. There can be 5 actor signals in
each condition but there can be several conditions. The cross-connected signals cannot
use Delay or Pulse or any parameters, only “clean” set and reset of digital in and out
signals. The example below describes a configuration file that has several logical con-
dition connections.
di2
do3
& do11
do15
!
di12
do3
& do14
do54
!
di13
di11
do33
do3
& do23
&
do17
In Configuration file:
EIO_CROSS:
-Lres do11 -Lact “di2 & do3”
-Lres do14 -Lact “di12 & *do3”
-Lres “di11 + do23 + do17” -Lact “di13 & do3”
-Lres do15 -Lact “do11 ! do14 ! *di11”
-Lres do33 -Lact “di11 & do23”
-Lres do61 -Lact “do17 & do3”
-Lres do54 -Lact “do15 ! *do33”
If you use a simple cross connection, without any logical gates involved, the number
of cross connection objects used is the sum of all signals on both the Lact and Lres side.
If you use the same signal more than once, then you must count it as a new object each
time.
Ex 1:
-Lact di1 -Lres do2 result in 2 cross objects
Ex 2:
-Lact di1 -Lres “do2+do3” result in 3 cross objects.
Ex 3:
-Lact di1 -Lres do2
-Lact di1 -Lres do3 result in 4 cross objects.
If logical cross connections are used, the number of objects for each gate is calculated
as:
Ex 4:
-Lres do26 -Lact “*di1!do2!*do10”
3 inputs and 1 output which gives 3*(1+1) = 6 cross connection objects.
Ex 5:
You have 5 gates with 2 inputs and 1 output
1 gate with 3 inputs and 1 output
1 gate with 2 inputs and 3 outputs
this will give 5*(2)*(1+1) + (3)*(1+1) + (2)*(3+1) = 34 cross connection objects,
although you have only used 13 signals.
Parameter Description
Unit Type Name of the unit type
Vendor Name of the vendor that manufactures this unit type
Product Description of this unit type
Vendor ID Vendor’s identification code
Product ID Unit’s product identification
Device Type ID Unit type identification code
Major Revision Major revision for the software resident in the unit
Minor Revision Minor revision for the software resident in the unit
Digital Inputs Maximum number of digital input signals available on
this unit type
Digital Outputs Maximum number of digital output signals available on
this unit type
Analog Inputs Maximum number of analog input signals available on
this unit type
Analog Outputs Maximum number of analog output signals available on
this unit type
I/O devices that does not have a unit type equivalent listed on the teach pendent, needs
to be defined in the EIO.CFG configuration file. This cannot be done from the teach
pendant. It has to be done using a standard PC.
User defined unit types are defined in the unit type section of the configuration file.
Create this section by writing “EIO_UNIT_TYPE:” at the end of the file.
The unit types are defined in the configuration file, using the syntax below filling in
the appropriate italic- value:
EIO_UNIT_TYPE:
-Name typename \
-VendorId 75 \
-VendorName "Vendor Name" \
-DeviceType 7 \
-ProductId 334 \
-ProductName "Product Name" \
-MajorRev 2 \
-MaxDigin 16 \
-MaxDigout 16 \
-MaxAnin 0 \
-MaxAnout 0
Some devices may respond incorrectly to commands sent from the robot controller
during connection establishment. The robot controller will then generate the error
message: 71102 “DeviceNet incompatible”.
This can be avoided by explicitly specifying that the controller should use a more
trivial method for connection establishment. This is done by adding the line; ‘-Device-
Driver DNGeneric’ to the configuration file:
EIO_UNIT_TYPE:
-Name typename \
-VendorId 75 \
-VendorName "Vendor Name" \
-DeviceType 7 \
-DeviceDriver DNGeneric\
-ProductId 335 \
-ProductName "Product Name" \
-MajorRev 2 \
-MaxDigin 16 \
-MaxDigout 16 \
-MaxAnin 0 \
-MaxAnout 0
With “Mapped I/O” is it possible to inform the S4C controller about how the data
fields to/from an I/O unit are represented in terms of digital and analog signals. With
the “Mapped I/O” configuration is it also possible to describe the data type
(UNSIGNED/TWO_COMPL/FLOAT), the digital representation (i.e. 10 V = 32767;
0 V = 0) of the analog signals in the data fields.
Mapped I/O should be used to configure analog signals on I/O units, which the S4C
controller is not able to automatically configure i.e.:
If no physical signals are specified in the configuration for a unit, the S4C system
assumes that all signals to and from that unit are digital signals. To tell the S4C system
that there is a different meaning of the input and/or output signals, a definition of the
physical signals has to be provided in a configuration file. This file can be created
offline on a PC.
For a definition of the data representation to and from the unit, please refer to the
vendor’s documentation for the specific unit type.
EIO_UNIT_MAP = EIO_PHS_MAP:
-PhSig 1 \
-Type “AI” \
-Unit “Board1” \
-Startbit 1 \
-NoOfBits 16 \
-EncType “TWO_COMPL” \
-HighAnalog 10,0 \
-HighDigital 32767 \
-LowAnalog -10,0 \
-LowDigital -32768
StartBit Specifies the bit in the data area, where the 0 .. max bits on unit
signal starts.
NoOfBits Defines how long the signal is in the data 0 .. max no of bits on Yes
area unit
HighAnalog see Figure 12 (analog value for p2) depends on signal Yes
HighDigital see Figure 12 (digital value for p2) depends on signal Yes
LowAnalog see Figure 12 (analog value for p1) depends on signal Yes
LowDigital see Figure 12 (digital value for p1) depends on signal Yes
p2
p1 Value representation
Example:
Data given in vendor’s documentation (SIEMENS ET200M):
The signal is represented as two’s complement.
The signal is represented by 16 bits.
The value 5 V is represented as 27648.
The value 1 V is represented as 0.
=>
EIO_UNIT_MAP = EIO_PHS_MAP:
-PhSig 1 \
-Type “AI” \
-Unit “Board1” \
-Startbit 1 \
-NoOfBits 16 \
-EncType “TWO_COMPL” \
-HighAnalog 5,0 \
-HighDigital 27648\
-LowAnalog 1,0 \
-LowDigital 0
The input signals can be assigned specific system actions. In this case, they will
automatically be handled by the robot. See also PLC Communication on page 30.
System inputs with actions including a MOTORS ON order or Start of any robot
movement are allowed in automatic mode only. When a system input order is rejected
because the system is in manual mode or due to any other unfulfilled requirement, no
error messages will be displayed on the teach pendant.
The reason for this is that the teach pendant is normally not being used by the operator
in these situations and there is therefore no sense in displaying the messages on the
teach pendant. However, the messages will still be stored in the error log, so you may
check for an answer there as to why a system input gives no action.
• If the signal has not already been defined, define its name in the normal way. See Defining
input and output signals on page 12.
• Choose Types: System Inputs.
• Select the system input to be changed and press Enter , or add a new one by
pressing Add.
• Define the name of the signal and the system action that is assigned to it. To add the system
actions MotOnStart, Start, StartMain, Interrupt, LoadStart and Sync ExtAx, define their
arguments as well.
• Press OK to confirm.
MotOnStart Sets the robot to the MOTORS ON state and starts the program
(continuous or cycle execution) from the current instruction,
i.e. from the program pointer.
MotorOff1 Sets the robot to the MOTORS OFF state.
If a program is executing, it will be stopped before changing
state. The robot cannot be set to the MOTORS ON state when
this signal is high.
Start Starts the program (continuous or cycle execution) from the
current instruction, i.e. from the program pointer.
StartMain Starts the program (continuous or cycle execution) from the
beginning.
Not valid during program execution.
Stop1 Stops program execution. A program cannot be started when
this signal is high.
QuickStop1 Stops program execution. Gives a quicker stop and some devi-
ation from the programmed path. A program cannot be started
when this signal is high.
StiffStop1 Stops program execution. Gives an even quicker stop and
some more deviation from the programmed path than Quick-
Stop.
A program cannot be started when this signal is high.
StopInstr1 Stops program execution after the current instruction has been
finished. A program cannot be started when this signal is high.
StopCycle1 Stops program execution when the complete program has been
executed, i.e. when the last instruction in the main routine has
been executed. A program cannot be started when this signal is
high.
SysReset Performs a system reset (restart), i.e. similar to power off/on.
Interrupt Executes a routine (procedure) without changing the start
pointer.
Not valid during program execution. When the routine has
been executed, the normal program can be restarted.
The name of the routine to be executed is also defined in this
dialog, e.g. routine1.
Several input signals can be assigned the same system actions, but several system
actions may not be assigned to the same signal.
1. Allowed in both manual and automatic mode.
The system action assigned to this signal is then deleted, but the signal itself remains
defined.
The output signals can be assigned a specific system status. In this case, they will auto-
matically be handled by the robot.
• If the signal has not already been defined, define its name in the normal way. See Defining
input and output signals on page 12.
• Choose Types: System Outputs.
Name Status
• Select the system output to be changed and press Enter , or add a new one by press-
ing Add.
• Define the name of the signal and the system action assigned to it.
• Press OK to confirm.
Several output signals can be assigned the same system status, but several system sta-
tus may not be assigned to the same signal.
2. Also active for Event Routine execution.
The system status assigned to this signal is then deleted but the signal itself remains
defined.
This chapter describes how to control the robot using, for example, digital signals from
a PLC.
For a definition of the signals see chapter Defining system inputs on page 26 and Defin-
ing system outputs on page 28.
All system inputs are 0 to 1 level sensitive and the pulse length must exceed 50 ms.
Most system inputs are only permitted in the automatic mode. If any interactive unit,
such as the teach pendant, a computer link, etc., has reserved exclusive rights to one or
more functions in the system, the system input request will be denied. The signals
MotorOff and Program stop signals from the system Input are active in Manual mode
also.
Signal sequence:
1
AutoOn (Out)
0
Signal sequence:
1
MotorOn (IN)
Order 0
1
MotorOn (OUT)
Response 0
Signal sequence:
1
MotorOff (IN)
Order 0
1
MotorOff (OUT)
Response 0
If the program is running (CycleOn), the MotorOff action will stop execution of the
program.
Requirement: Robot in MOTORS ON state and program control not occupied by any
other resource (e.g. external computers).
Signal sequence:
1
StartMain (IN)
Order 0
1
CycleOn (OUT)
Response 0
To start or restart program execution from the current instruction or after a power
failure
Requirement: Robot in MOTORS ON state and program control not occupied by any
other resource (e.g. external computers). A PFError indicates that a
power failure error has occurred
Signal sequence:
1
Start (IN)
Order 0
1
CycleOn (OUT)
Response 0
Load a program from diskette or another mass storage device. The program will then
start from the beginning. If a program is running, execution will stop first.
Requirement: Robot in MOTORS ON state and program control not occupied by any
other resource (e.g., external computers).
Signal sequence:
1
Load (IN)
Order 0
1
CycleOn (OUT)
Response 0
Signal sequence:
1
Stop (IN)
Order 0
1
CycleOn (OUT)
Response 0
Stops program execution when the complete program cycle has been executed.
Signal sequence:
1
StopCycle (IN)
Order 0
1
CycleOn (OUT)
Response 0
Signal sequence:
1
CycleOn (OUT)
Response 0
2. Emergency stop.
Switches the robot back to MOTORS OFF state after a spontaneous emergency stop.
Requirement: Robot in automatic mode after an emergency stop. The safety chain must
be closed, by resetting the emergency stop.
Signal sequence:
1
ResetEstop (IN)
Order 0
EmStop (OUT) 1
Response
0
1
RunchOK (OUT)
Response 0
RunchOK
Indicates that the robot is back to MOTOR OFF state after a spontaneous safety chain
stop.
Requirement: Robot in automatic mode and spontaneous stop case 3 (see above).
Signal sequence:
1
RunchOK (OUT)
Response 0