Professional Documents
Culture Documents
October 2008
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
GME CCRW:
- GME CCRW
- GME CCRW
GMNA:
Approval(s):
Sponsoring groups:
Any printed copy of this document is considered “uncontrolled” according to ISO9001 standards.
Access to a controlled version can be made through the GMNA Socrates website by selecting the
following links in the order in which they are listed.
1. A-Z Site
2. Controls, Conveyors, Robotics & Welding
3. Quality System Management
4. Standards & Specifications
5. Robotics
6. GRS-4V- Robot Vision Guidance Specification.
This document will expire December, 2011. It may be revised, reaffirmed or withdrawn prior to
this date. Contact the organization listed above for the latest revision.
ii
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Document revisions:
iii
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
TABLE OF CONTENTS
Table of Contents
1. General .................................................................................................................................... 1
1.1 Scope .....................................................................................................................................1
1.2 Purpose..................................................................................................................................1
1.3 Intended Audience .................................................................................................................1
1.4 Robot Guidance Description ..................................................................................................1
1.5 Integrated Vision System and Non-integrated Vision System ...............................................1
1.5.1 Integrated Vision System ............................................................................................. 1
1.5.2 Non-integrated Vision System ..................................................................................... 2
2. Communication Interface ...................................................................................................... 3
2.1 Network Architecture .............................................................................................................3
2.2 Communication Overview ......................................................................................................4
2.3 Vision System to PLC Communication ..................................................................................4
2.4 Vision System to Robot Communication ...............................................................................4
2.4.1 EtherNet/ IP Bitmap ..................................................................................................... 5
2.4.2 PCDK (or equivalent) Developed Ethernet Interface................................................... 5
2.5 PLC to Robot Communication ...............................................................................................5
2.6 User Frames and User Tools.................................................................................................6
2.7 Vision I/O for Lighting ............................................................................................................7
2.8 Vision Flags ...........................................................................................................................7
2.9 Vision Register and Position Registers .................................................................................8
2.10 Vision System User Alarms ..............................................................................................9
3. EtherNet/IP General Requirements .................................................................................... 10
4. Interface Signals ................................................................................................................... 11
4.1 Integrated Vision Interface Signals ......................................................................................11
4.2 Non-Integrated Vision Interface Signals ..............................................................................11
4.2.1 Signal Definitions ....................................................................................................... 11
4.2.2 Vision Controller Outputs ........................................................................................... 11
4.2.3 Vision Controller Inputs.............................................................................................. 11
4.3 Additional Robot to PLC Signals .........................................................................................12
4.3.1 Robot Inputs / PLC Outputs ....................................................................................... 12
4.3.2 Robot Outputs / PLC Inputs ....................................................................................... 12
5. Fault Handling and Recovery .............................................................................................. 13
5.1 Integrated Vision Error Recovery ........................................................................................13
5.2 Non-Integrated Vision Error Recovery.................................................................................13
5.2.1 Communication Error ................................................................................................. 13
5.2.2 Vision Measurement Alarms ...................................................................................... 13
5.2.3 Vision System Fault ................................................................................................... 13
5.2.4 PLC Fault Recovery - Vision HMI Screen Buttons .................................................... 14
6. Vision System Selection ...................................................................................................... 15
6.1 Vision Selection Guide Flowchart ........................................................................................15
6.2 Installed Vision Base ...........................................................................................................17
7. Appendix A: Perceptron Guidance ..................................................................................... 19
7.1 General ................................................................................................................................19
7.1.1 Scope ......................................................................................................................... 19
7.1.2 Purpose ..................................................................................................................... 19
7.1.3 Intended Audience ..................................................................................................... 19
7.1.4 Robot Guidance Description ...................................................................................... 19
iv
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
vi
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
1. General
1.1 Scope
This specification contains I/O and software requirements associated with General
Motors’ standard robot, PLC, and vision controller interface for robot guidance
applications.
1.2 Purpose
This specification documents the interface requirements between robots, PLC’s, and
other purchased equipment used by General Motors. It is intended to complement the
technical specifications that are maintained separately for the robots and peripheral
equipment in General Motors processes.
Application specific interface detail shall be added to this document in the appendices.
Process information and setup material can be found in the application specific user
guides.
In addition this document serves to provide awareness of the General Motors installed
vision base and aid in decision making regarding selecting appropriate vision guidance
systems.
This document is intended for robot suppliers, vision suppliers, General Motors’ Common
Controls Software developers, and General Motors’ robot application software developers.
Robot Guidance is consists of a vision system with one or more cameras providing an
offset to the robot path. The cameras take a picture of a feature(s) and subsequently
offset the robot path based on a known relationship between the feature and the camera.
Offsets can be 2D, 2 1/2D (2D plus Z), or 3D and up to 6 degrees of freedom.
An integrated vision system shall refer to a robot controller with an (optional) built-in
vision capability to perform robot guidance applications. The vision capability shall be
provided through the robot main processor module or with a separate module that plugs
into the same controller chassis. Capability of 2D and 3D offset calculation must be
available.
In an integrated vision system, the robot teach pendant shall be capable of displaying
vision application runtime images and for troubleshooting and recovery from errors.
1
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The integrated vision system shall require no special communication interface and shall
provide offsets to the robot in seamless fashion directly to robot position registers.
The non-integrated vision system shall refer to systems that require a separate vision
controller. The non-integrated vision systems typically use a PC computer with a frame
grabber board, I/O board, and have a graphical user interface to assist the user in setting
up the system.
2
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
2. Communication Interface
The non-integrated robot vision guidance system when used shall adhere to the GM
CCRW network architecture. EtherNet/IP shall be utilized as the primary network
protocol connection and interface. Integrated vision requires no connection since it is by
definition integral to the robot.
3
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Communication is defined between three devices: the vision controller, robot, and PLC. Not each
communication path is mandatory and this will vary by application. For example, integrated vision
systems have no communication from the vision system to the PLC (vision is integral to the robot).
Nonintegrated systems may have a PLC interface. The following diagram illustrates the
communication between the devices. Note that the diagram is logical in nature and does not
show network topology, i.e. the network switch is not shown.
When a vision system to PLC interface is required this interface shall be through an Ethernet/IP
bitmap. The size of the map (in bytes) and the specific signal requirements will vary by
application, and specific interfaces are documented by application in the Appendices. Minimum
signal requirements as well as general EtherNet/IP adapter requirements are detailed in section
3.
Other interface methods such as DeviceNet, serial RS232, and explicit messaging shall require
CCRW approval.
4
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Two methods are allowed for communication between the vision controller and the robot: an
Ethernet IP bitmap or a PCDK (or equivalent) developed Ethernet interface.
Other interface methods such as DeviceNet, serial RS232, and explicit messaging shall require
CCRW approval.
An EtherNet/IP bitmap may be used to send offset data to the robot. When implementing this
interface the offset data must be converted from floating point representation to digital
representation. This shall be done with either two’s complement format or using the IEEE 754
format for representation of floating point numbers.
Robot code must be written to receive the offset data and convert it back into floating point
values.
A PCDK (or equivalent) developed Ethernet interface is also allowed for sending offset data to the
robot. This method allows read/write access directly to robot position registers.
Communication from PLC to robot is via an EtherNet/IP bitmap and is defined in GRS4 Section A.
No special changes to this interface are needed to facilitate the Vision system, although inputs
DI[61] – DI[64] and outputs DO [61] – DO [64] are spare if needed.
Some robot configurations, such as the press robot interface and the Global 2 robot have an
expanded I/O map with more available spare I/O for this use.
5
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
User frames and user tools needed for vision applications shall be selected from available frame
and tool numbers as listed below.
User Frames
Frame Number Name Descriptions
1 Null Frame Default base of robot
2 Rack #1 Rack docking station #1
3 Rack #2 Rack docking station #2
4 Rack #3 Rack docking station #3
5 Rack #4 Rack docking station #4
6 Rack #5 Rack docking station #5
7 Rack #6 Rack docking station #6
8 Cal Plate 3DL calibration plate
9 Spare Spare
User Tools
Tool Number Name Descriptions
1 Null Tool Default faceplate of robot
2 EOAT #1 Standard GM tool #1
3 EOAT #2 Standard GM tool #2
4 EOAT #3 Standard GM tool #3
5 EOAT #4 Standard GM tool #4
6 Spare Spare
7 3DL #1 3DL Sensor #1
8 3DL #2 3DL Sensor #2
9 Spare Spare
10 Pointer EOAT pointer
6
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
If lighting is needed the following robot I/O is reserved for this function in the Global robot map.
Flags
Flag # Name Description
5 Spare
6 Vision Complete Indicates Vision process is complete with good offset.
7 Racking Complete Indicated the racking process is complete and time for new rack.
8 Background Execution Indicates that there is a program running in the background.
9 Spare Reserved for Vision
10 Spare Reserved for Vision
7
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Position registers 10-19 have been reserved for vision applications. The following map is a vision
guided racking example of the use of PR[10] – [19].
Registers 29-49 have been reserved for vision applications. The following is a racking example
utilizing this range.
Position Registers
PR[Number] Name Description
10 3DL Offset Offset provided by 3D vision process.
11 2D Offset Offset provided by 2D vision process.
12 Null Offset Used to set offset to zero.
13 3DL-1 Fix Pos 3DL Sensor #1 Fixture Position
14 3DL-2 Fix Pos 3DL Sensor #2 Fixture Position
15 Spare Reserved for IR Vision
16 Spare Reserved for IR Vision
17 Spare Reserved for IR Vision
18 Spare Reserved for IR Vision
19 Spare Reserved for IR Vision
Registers
Register # Name Description
29 Abort Background Aborts Part Find program if rerun is required
30 CHK Status This indicates to the program to check the rack status
31 Part Count 1 The part count in rack #1
32 Part Count 2 The part count in rack #2
33 Part Count 3 The part count in rack #3
34 Part Count 4 The part count in rack #4
35 Part Count 5 The part count in rack #5
36 Part Count 6 The part count in rack #6
37 Retry CNT This is a counter to indicate how many time the process was retried
38 X Limit Sets the limit for the X value of the offset.
39 Y Limit Sets the limit for the Y value of the offset.
40 Z Limit Sets the limit for the Z value of the offset
41 WPR Limit Sets the limit for the W,P and R values of the offset.
42 Test Value The value of the offset currently being tested.
43 Offset Pass Indicates if the offset is within limits.
44 Element Out Indicates witch of the six elements of the offset is out of the limits.
45 OP Menu Used for operator inputs for corrective action.
46 Bad Offset Indicates witch element of the offset is bad.
47 3DL Process Indicates witch 3D process is running
48 Bad Offset Limit Indicates the value of the out of spec. offset
49 Tier Count Indicates witch ties is being active
8
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following user alarms (51-69) have been reserved for vision if needed.
User Alarms
User Alarms Name Description Remedy
If the part count doesn't fall within the range of the part
51 Part Count Fault total of the rack.
If the Vision system is unable to determine the correct
52 Find Count Fault part count in the rack.
If the Vision system cannot successfully obtain a offset
53 2D Fault within three attempts of the process.
If the Vision system cannot successfully obtain a offset
54 3D Fault within three attempts of the process.
The part present swithes are not being made at the
Part Present pickup position. Either the offset is not correct or one of
55 Fault the part present switches has malfunctioned.
56 X Out Fault X value of offset out of talerance.
57 Y Out Fault Y value of offset out of talerance.
58 Z Out Fault Zvalue of offset out of talerance.
59 W Out Fault W value of offset out of talerance.
60 P Out Fault P value of offset out of talerance.
61 R Out Fault R value of offset out of talerance.
62 Spare Reserved for Vision
63 Spare Reserved for Vision
64 Spare Reserved for Vision
65 Spare Reserved for Vision
66 Spare Reserved for Vision
67 Spare Reserved for Vision
68 Spare Reserved for Vision
69 Spare Reserved for Vision
9
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The robot, PLC, and vision controller shall adhere to the following general EtherNet/IP I/O
requirements. All interface signals shall be produced and consumed via EtherNet/IP implicit
message (I/O).
1. The controller shall pass the EtherNet/IP Conformance Test and an EtherNet/IP
“Statement of Compliance” shall be made available upon request.
2. The device shall follow the recommendations put forth in the ODVA document
Recommended IP Addressing Methods for EtherNet/IP Devices.
4. The vision controller shall be able to maintain at least 8 bi-directional real time
connections with both produce and consume capability.
5. The real time connections shall receive priority over the non real time traffic sent such
that performance degradation due to congestion, if any, will occur on the non-real
time connections before the real time connections are effected.
6. Data integrity shall be maintained for up to 508-byte frame size message (Maximum
allowed in by the ODVA EtherNet/IP definition).
7. The RPI (requested packet interval) shall be configurable at the scanner. The
minimum RPI shall be 20ms and it shall be adjustable in 5ms increments or less.
The default setting shall be 60ms. All adapter devices shall be able to support RPI
set by the scanner.
8. Supplier shall provide documentation such as EDS file that describe the I/O
connection capacity and format to allow easy configuration of connections at the
scanner.
9. The device shall confirm to the ODVA recommended I/O performance degradation
measures under various background traffic loads.
10. Diagnostics screen(s) shall be provided on the vision controller to display connection
information such as name, IP address, and communication status for each real time
connection.
11. Controllers shall support address conflict detection standard and provide sufficient
diagnostic when condition occurs.
12. Controllers shall be capable of supporting the CCRW Ethernet device naming
standard.
13. The offset and user frame data shall be in IEEE-754 floating point format or two’s
complement format. Other format used to present these data shall require GM
approval.
10
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
4. Interface Signals
Integrated vision systems communicate internally directly to robot position registers and as such
do not require additional discrete interface signals to the PLC or robot.
Non-integrated vision systems must have an interface from the vision controller to the PLC or
robot. The bitmap required will vary by application and if documented can be found in the
Appendices or in the user manual for the application.
This section states minimum requirements for signals to and from the vision controller and gives
some typical application examples.
The type and number of signals will vary considerably by application. This section describes the
minimum signal definitions and typical usage. More detailed information on specific applications
will be available in the user manual for that application and in the Appendices if available (i.e.
vision guided racking user manual, and Appendix A Perceptron guidance interface).
Vision controller outputs shall be able to be monitored by either the robot, PLC, or both.
The vision controller shall provide positive acknowledgement for all interface signals through
traditional handshaking techniques.
These are typical signals output from the Vision Controller, monitored by either the robot or the
PLC depending on which is the master in the control scheme.
1. NoFaults: When low, this bit indicates a system fault in the vision system.
These are typical input signals to the Vision Controller, from either the robot or the PLC
depending on which is the master in the control scheme.
11
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Inputs DI[61] – DI[64] are available for application specific additional signals from the PLC to the
robot. Some configurations such as the Global 2 robot have additional inputs available.
Specific application definitions for these signals can be found in either the user manual for the
application or in the Appendices.
Examples of the use of these additional signals are the Perceptron systems Cancel Cycle
command sent from the robot and the racking application’s Reject Rack signal.
Outputs DO[61] – DO[64] are available for application specific additional signals from the robot to
the PLC. Some configurations such as the Global 2 robot have additional outputs available.
Specific application definitions for these signals can be found in either the user manual for the
application or in the Appendices.
Examples of the use of these additional signals are the Perceptron applications Communication
Ok signal, which notifies the PLC if the robot loses communication with the Perceptron controller.
12
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Fault handling and error recovery methods are required for both integrated and non-integrated
vision systems.
Failure modes that must be handled include a failed vision process, loss of communication, and
offset out of tolerance.
Robot code must be written to provide error recovery options upon application failure modes.
KAREL macros (IR_OPTN1, IR_OPTN2, IR_OPTN3) have been created for Fanuc iRVision to
provide menu choice options and split the teach pendant screen to display the runtime image.
These macros can be used for most applications and can be customized accordingly.
Failures include offset out of tolerance and vision process failed. Recovery choices include Retry
and Abort and Move Home.
Other choices may be used on an application specific basis. For more application recovery
information such as TP logic see the process user manual.
Non-integrated vision systems shall have error recovery options and fault reporting through the
PLC and HMI.
Specific error handling by application can be found in the Appendices or user manual for the
application, i.e. see Appendix A for Perceptron Guidance error handling operation. Some general
non-integrated vision faults are that must be provided in this section.
The vision system shall allow monitoring of its communication status such that in the event of a
loss of communication the PLC or robot can report the alarm.
In the case of a non-integrated vision system the vision controller shall provide signals for the
PLC to monitor for the purpose of annunciating faults for all known modes of failure. Some
examples of these signals follow:
1. Offsets OK – Indicates a data error in the calculation of the user frame or offset.
2. Out of Spec OK – Indicates that a measurement is out of specifications.
3. Reject OK – Indicates that a measurement is outside of the reject limits.
The vision system shall set a NoFaults bit to low if it has a system fault that would prevent a
vision cycle from completing properly. If the controller is not in cycle, the PLC shall set the
FaultReset bit to high and the vision controller shall reset the sensors and get ready for a new
13
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
cycle. If the controller is in cycle, the vision controller maintains the error state until the user goes
to the vision screen on the HMI and makes a selection to recover.
Stand alone non-integrated vision systems shall have an HMI interface screen. Functionality
available on this screen shall include recovery options and any application specific features.
Examples include:
1. Accept Part: Used when there is a vision measurement error during a quality check to
release the vehicle and continue.
2. Recheck Part: User presses this button to rerun the existing measurement.
3. Auto Recheck Enable: The PLC forces the vision controller to recheck the current
measurement a configurable amount of times before a fault is generated.
4. Bypass Nominal: Tells the robot to bypass the vision controller and run with nominal
offsets.
5. Bypass Average: Tells the robot to bypass the vision controller and run with average
offsets.
6. Enable Reject Bypass: User must press this button to enable the system to ignore reject
errors.
14
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following decision guide and reference matrix can be used when selecting a vision
system for a particular vision guidance application. This guide and reference information
is provided to support commonality of vision systems and reduce cost and application
development time and resources.
The following guide is intended to assist in selecting a vision system for a particular
application. The guide allows for legacy applications where it may be effective to
continue with a given solution as well as applications requiring Statistical Process Control
and/or the Body Coordinate System. If neither apply, an integrated solution is preferred
over a custom or stand alone system, although if integrated vision does not meet the
process requirements then a custom solution is permitted.
15
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
16
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following matrix may be used as a reference of the installed base of vision applications in
order to determine where legacy situations may exist. This list is not all-inclusive but represents
a known set of applications where successful implementations may fall into the legacy
classification for selecting the guidance system.
Body
Process/Application Vision System Type Interface
Racking Fanuc iRVision 2D Fixed overhead cameras Integrated
Unracking Fanuc iRVision 2D/3D fixed overhead & EE 3DL Integrated
Flexible Measurement Fixed and robot mounted PCDK / EIP to
System Perceptron cameras PLC
Fixed and robot mounted PCDK / EIP to
Roof Load Perceptron cameras PLC
PCDK / EIP to
Motor Rail Load Perceptron Fixed Cameras PLC
Roof Ditch Laser Weld Fanuc iRVision Robot EE mounted 3DL sensor Integrated
PCDK / EIP to
Form and Pierce Perceptron PLC
Laser Braze
Plasma Braze Fanuc iRVision
Header Bender Fanuc V500 3DL on cFlex Fanuc proprietary
GA
Process/Application Vision System Type Interface
2D Robot Mounted and Fixed
and 3D fixed. (3 Camera sets
Hybrid 2mode Battery Load ISRA total)
Roof Ditch Molding Roll Fanuc iRVision
VIN Etch Fanuc iRVision Robot EE mounted 3DL sensor
INOS, ISRA, 3D Robot Mounted (INOS) 3D
Glass Load Perceptron Fixed (ISRA and Perceptron)
Body/Chassis Marriage ISRA 3D Fixed DeviceNet
Emblem Error Proofing Cognex 2D Fixed DeviceNet
Robotic Stemmer Cognex Fixed and Robot Mounted DeviceNet
Balancer Cognex Fixed DeviceNet
Press
Process/Application Vision System Type
Press 1 Blank Load Fanuc iRVision Fixed 2D overhead cameras Integrated
Racking - Pick offset Fanuc V500 Fixed 2D overhead cameras Fanuc proprietary
Racking - Rack inspection Fanuc V500 Fixed 2D overhead cameras Fanuc proprietary
Racking - Tool identification Fanuc V500 Fixed 2D overhead cameras Fanuc proprietary
17
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Paint
Process/Application Vision System Type
Seal Seam ISRA DeviceNet
18
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
7.1 General
7.1.1 Scope
This appendix contains all I/O and software requirements associated with General
Motors’ standard robot, plc, and vision controller interface for robot guidance applications.
7.1.2 Purpose
This specification documents the standard interface between robots, PLC’s, and other
purchased equipment used by General Motors. It is intended to complement the
technical specifications that are maintained separately for the robots and peripheral
equipment in General Motors processes.
This document is intended for robot suppliers, vision suppliers, General Motors’ Common
Controls Software developers, and General Motors’ robot application software
developers.
Robot Guidance is typically a vision system with one or more cameras providing an offset
path to the robot. The cameras take a picture of a feature(s) and subsequently offset the
robot path based on a known relationship between the feature and the camera. The
vision systems usually have a PC computer with a frame grabber board and have a
graphical user interface to assist the user.
19
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
1. AutoMode: Vision system echoes this bit back to the PLC indicating that it is in
automatic mode.
2. TryoutMode: Vision system echoes this bit back to the PLC indicating that it is in
tryout mode.
3. ManualMode: Vision system echoes this bit back to the PLC indication that it is in
manual mode.
4. NoFaults: When low, this bit indicates a system fault in the vision system.
5. SysReady: When high, this signal indicates that the vision controller is ready and
does not have any faults that would prevent a normal cycle.
10. TrendOK: When this signal is low there is a trend limit exceeded.
11. OutSpecOK: When this signal is low there is a out of spec limit exceeded.
12. RejectOK: When this signal is low there is a reject limit exceeded.
13. FrameOK: When these signals are low there is a problem with the calculated frame
values.
14. CmpndCycle: When high the vision controller knows that multiple cycles will be run
before the robot asks for an offset. Used in applications such as roof load where
there is two or more vision cycles before the robot asks for the offset.
15. Style: Vision system echoes the style number back to the PLC.
16. Color: Vision system echoes the color bits back to the PLC.
17. Frame: Vision system echoes the frame number back to the PLC.
18. ProcID(1-20): Vision system echoes the ProcessID numbers back to the PLC.
19. PartID1&2: Vision system echoes the PartID numbers back to the PLC.
20
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
1. AutoMode: A bit that tells the vision system that the system is in automatic mode.
2. TryoutMode: Tells the vision system that the system is in "Simulate Mode" (No
Part).
3. ManualMode: A signal that puts the vision system into manual mode.
5. FaultReset: A signal telling the vision controller to reset all faults. If the vision
controller is in cycle, setting the FaultReset signal shall cause the cycle to cancel in
the same manner as the CnclCycle signal. If the vision controller is not in cycle,
setting the FaultReset signal shall cause the vision controller to reset the sensor and
get ready for a new cycle.
6. CnclCycle: A signal telling the vision controller to cancel the cycle and reset all I/O
to be ready to run a new cycle.
7. CmpndCycle: A signal that tells the vision controller that multiple cycles will be run
before the robot asks for an offset. Used in applications such as roof load where
there is two or more vision cycles before the robot asks for the offset.
8. EndCycle: A signal telling the vision controller that the current cycle is over. This is
only used in an application such as roof load, which runs a compound cycle or two or
more programs before the offset is given. Vision controller shall use this signal to
clear any compound transform information when it receives the next start cycle from
the PLC.
9. LightsOn: A bit telling the vision controller to turn on the lights. This is used in the
case of incandescent lighting that needs to warm up prior to starting a vision cycle.
11. Color: A group of signals that tell the vision system the vehicle color. Note: This is
not used in all systems.
12. ProcID(1-20): Process identifiers - Used to send a process identifier such as carrier
number, lane number, or parallel process number.
13. PartID1&2: Part identifiers - Used to send the JSN # or equivalent to the vision
controller.
21
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
1. CnclCycle: A signal that tells the robot that the vision cycle has been cancelled.
1. PCRbtComOK: When low, this signal indicates that there was a loss of
communication between the vision controller and the robot.
2. CnclCycle: When high, this signal indicates to the PLC that the robot is requesting
to cancel the current vision cycle.
22
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
23
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
24
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Figure 3: Normal Robot Guidance Cycle Faulted (Before In Cycle) - Expected Fault and Fault Reset Behavior
Note: This functionality shall work similarly for both normal and compound cycles. The vision
controller shall drop the “No Faults” bit to the PLC. The user will then make a recovery selection
from the vision HMI screen.
25
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Figure 4: Normal Robot Guidance Cycle – Expected Behavior for a Cancel Cycle
Note: This functionality shall work similarly for both normal and compound cycles. Upon
receiving a cancel cycle, the vision control resets all signals and gets ready to run a new cycle.
26
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following sections detail the mapping assignments for the robot, PLC, and vision
controller. The signals shall be produced and consumed via Ethernet/IP.
2. The vision controller shall be able to maintain at least 8 bi-directional real time
connections with both produce and consume capability.
3. The real time producer connections shall receive priority over the non real time traffic
sent such that performance degradation due to congestion, if any, will occur on the
non-real time connections before the real time connections are effected.
4. Data integrity shall be maintained for up to 508-byte frame size message (Maximum
allowed in by the ODVA Ethernet/IP definition).
5. The RPI (requested packet interval) shall be configurable at the scanner. The
minimum RPI shall be 20ms and it shall be adjustable in 5ms increments or less.
The default setting shall be 60ms.
27
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
240-255 INT ProcID12 Vision system echo. Should mirror PLC process ID 12
256-271 INT ProcID13 Vision system echo. Should mirror PLC process ID 13
272-287 INT ProcID14 Vision system echo. Should mirror PLC process ID 14
288-303 INT ProcID15 Vision system echo. Should mirror PLC process ID 15
304-319 INT ProcID16 Vision system echo. Should mirror PLC process ID 16
320-335 INT ProcID17 Vision system echo. Should mirror PLC process ID 17
336-351 INT ProcID18 Vision system echo. Should mirror PLC process ID 18
352-367 INT ProcID19 Vision system echo. Should mirror PLC process ID 19
368-383 INT ProcID20 Vision system echo. Should mirror PLC process ID 20
384-415 DINT PartID1 Vision system echo. Should mirror PLC part ID 1
416-447 DINT PartID2 Vision system echo. Should mirror PLC part ID 2
448 BOOL UserBit User Definable
449 BOOL UserBit User Definable
450 BOOL UserBit User Definable
451 BOOL UserBit User Definable
452 BOOL UserBit User Definable
453 BOOL UserBit User Definable
454 BOOL UserBit User Definable
455 BOOL UserBit User Definable
456-463 SINT UserSINT User Definable
464-479 INT UserINT User Definable
480-511 DINT UserDINT User Definable
Note: Shaded fields indicate signals not used for this application
29
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: Shaded fields indicate signals not used for this application
31
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
32
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: It is common to have a hybrid system that also measures the part after it is loaded
in order to check quality. This is the case with our roof load systems. In this case there
would additional steps. Please see compound cycle in section 4.2 below.
that the PLC can initiate the robot to pickup parts independent of the vision process. The
robot is assumed to be waiting with a part in the end effector prior to a vehicle enters the
station. The following list shows the steps required for a compound robot guidance cycle:
34
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
31. PLC examines the status of SysReady, SysBusy, and NoFaults bits from the vision
controller
32. PLC sets Style, all PartID(s), all ProcessID(s), color, and CmpndCycle (should be
low).
33. Vision controller echoes back Style, all PartID(s), all ProcessID(s), color, and
CmpndCycle
34. PLC turns on the LightsOn bit if needed.
35. PLC sets the StartCycle bit
36. PLC examines SysInCycle bit to make sure the vision controller is in cycle.
37. Vision controller sets any of the following alarm bits low if there is a problem:
TrendOK, OutSpecOK, RejectOK, OffsetsOK.
38. The vision controller sets CycleComp to high when the cycle is complete and all
alarms have been set.
39. PLC checks for alarm bits to be OK.
40. PLC turns off the StartCycle bit to the vision controller
41. Vision controller responds by dropping the SysInCycle and CycleComp bits.
42. If all alarms are OK the vehicle unclamps and leaves the station.
7.5.1.1 PC Interface
The robot and vision data communication shall be accomplished using the robot’s PC
interface via ethernet. Most robot manufacturers have a PC interface that allows reading
and writing of variables, data registers, position registers, user frames, etc…..
1. Request Code Used by system): This item determines which event is triggered on
the PC. It can be a value between 0 and 255.
2. Wait Switch (Used by system): This item is a wait switch. Valid values are either 0
or 1. If 0, don’t wait for an answer form the PC. If 1, wait for an answer from the PC.
The default shall be 0.
3. Status Register (Used by system): This specifies which data register to put any error
codes. If this value is 0, no register is used.
4. Communication Timeout: The time that the vision controller will wait for a reply from
the robot in milliseconds.
5. Offset Type: There shall be two different options for sending offsets to the vision
controller. If a 1 is entered in this field, the PC shall send an offset as a position
register (PR) to the PR number entered in field 8. If a 2 is entered in this field, the
35
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
vision PC shall calculate an updated user frame and send it to the user frame number
in the robot that is specified in field 8.
6. Offset Program Number: This number tells the vision controller which offset or frame
to send to the robot.
7. Reference Frame: This number tells the vision controller which frame is the
reference or “golden” frame. Note: The PC would ignore this number if the offset
type (field 5) was set to 1 (Position Register Output).
8. Vision Output: This number tells the vision controller which position register or frame
number to update. For example, if field 5 was a 1 and field 8 was a 5, the vision
system would send the offset to position register 5.
9. Vision Reply Register: This is the register that the vision controller will put the reply
number. The robot program will loop while waiting for a reply while the number is
equal to 9999. When it is anything other than 9999 it means the PC has replied and
the program can continue.
The PC interface command that sends data to the PC will vary by robot manufacturer;
therefore, the order of the above parameters shall remain fixed. The above Send Data
example shows the first three fields used by the system; therefore, the six vision
parameters listed above would start at field four.
Disaster recovery is very important to General Motors. In the event that the PC crashes
or stops communicating with the robot and PLC there needs to be a method to continue
running production. One method to accomplish this is to maintain an average offset.
Therefore, the PC shall calculate the average offset for a user-configurable number of
vehicles. Every cycle, the PC shall send the average offset values to the robot. The
vision controller shall have a user-configurable number of cycles for the average offset.
See appendix 1 for robot model specific mapping of registers, user frames, position
registers, etc…..
The GetOffst macro shall be called from a teach pendant program at the point where the
robot position or user frame update is needed from the vision controller. The GetOffst
command should look like the following: GetOffst(1, 2, 3), where 1, 2, and three are
parameters entered by the user when setting up the robot program. The following is a
description of each parameter:
1. Vision Program Number: This field is an integer, which tells the vision controller
which offset the robot is asking for.
36
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
2. Reference Frame: This number tells the vision controller which frame is the
reference or “golden” frame. This will be ignored by the vision controller if the user
has configured the system to use offsets and not an updated user frame.
3. Vision Output: This number tells the vision controller which position register or frame
number to update.
The GetOffst command uses the parameters above and sends all the fields listed in 5.1.1
to the PC.
The following items at minimum shall be user configurable in the robot software:
2. Request Code: PC interface command number for the GetOffst macro. This
number indicates which event is triggered at the vision controller. The vision
controller will require a specific command number to get an offset.
4. Offset Type: A value of one tells the vision system to send the result to a
position register and a value of two specifies a user frame. Item 8 (Vision
Output) in section 5.1.1 specifies the storage location.
5. Vision Reply: This is the register that the vision controller will put the reply
number. The robot program will loop while waiting for a reply from the pc while
the number is equal to 9999. When it is anything other than 9999 it means the
PC has replied and the program can continue.
Every cycle, the vision system shall send the running average offset to the robot. When
the PLC sets the BypasAvg signal to high, the robot shall ignore communication with the
vision controller and use the last running average offset. The storage location of the
average offset values is user-configurable and is specified in section 5.2.3. Note: this
can only be used if the process is stable enough when using average offset values. For
example, if the process trends and does not have large variation in offset values then an
average would be a good option.
When the PLC sets the BypasNom signal to high, the robot shall ignore communication
with the vision controller and use nominal offset values. The robot shall either apply a
zero offset if the application is using position register offsets or use the reference frame if
using a frame offset. Note: This can only be used if the process is stable enough to run
with nominal values.
37
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
7.5.3.1 Modes
1. Automatic Mode: The normal mode for production is automatic mode. The PLC shall
set the automatic mode bit to the vision controller to high for a normal cycle.
2. Simulate (No Part Mode): The vision controller shall run with no part when the PLC
has set the SimMode bit to high. The SimMode bit shall be set to high when the user
selects Simulate Mode from the vision screen on the HMI. All I/O handshaking shall
take place as normal, the sensors shall not fire, and the system shall not fault out
with any measurement alarms. If the PLC senses a part in the station, a fault shall
be generated and a cycle shall not be started.
3. Bypass Vision Nominal: The HMI vision screen shall have a button to allow the
vision system to be bypassed. Pressing this selection will force the robot to run with
nominal offsets.
4. Bypass Vision Average: The HMI vision screen shall have a button to allow the
vision system to be bypassed. Pressing this button will force the robot to run with
average offsets. The running average is sent to the robot from the vision system
during every cycle.
The following section describes robot fault recovery when asking for offsets and when
communication problems occur with the vision controller.
When there is an error while the robot is asking for an offset, the following fault recovery
options shall be supported at the robot teach pendant:
2. Abort – This selection shall turn on ‘Cancel Cycle’ to PLC and cancel any user
program execution, robot motion, or process execution. ‘Cancel Cycle’ to the
PLC shall turn off when the robot is brought back to the home position.
The robot shall be capable of detecting a loss of communication with the vision controller.
In the event of a loss of communication with the vision controller, the robot shall set the
‘PCRbtComOK’ signal to the PLC to low and shall automatically retry communications.
The robot shall reset ‘PCRbtComOK’ back to high upon the restoration of
communications with the vision controller. The user can select recovery options on the
HMI vision screen. See section 6.2.3.
38
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The PLC will consider the following signals as alarms when set to low from the vision
controller:
6. FrameOK – Indicates a data error in the calculation of the user frame or offset.
Recovery options outlined in 6.2.3 will be available on the HMI vision screen.
The vision system shall set the NoFaults bit to low if it has a system fault that would
prevent a vision cycle from completing properly. If the controller is not in cycle, the PLC
shall set the FaultReset bit to high and the vision controller shall reset the sensors and
get ready for a new cycle. If the controller is in cycle, the vision controller maintains the
error state until the user goes to the vision screen on the HMI and makes a selection to
recover. See section 6.2.3 below.
The PLC HMI screen will provide the following recovery buttons:
1. Accept Part: Used when there is a vision measurement error during a quality check
to release the vehicle and continue.
2. Recheck Part: User presses this button to rerun the existing measurement.
3. Auto Recheck Enable: The PLC forces the vision controller to recheck the current
measurement a configurable amount of times before a fault is generated.
4. Cancel Cycle: Cancel the current cycle and get ready to run a new one.
5. Bypass Nominal: Tells the robot to bypass the vision controller and run with nominal
offsets.
6. Bypass Average: Tells the robot to bypass the vision controller and run with average
offsets.
7. Enable Reject Bypass: User must press this button to enable the system to ignore
reject errors.
39
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Drop Reject: This selection functionality will depend on the cell configuration. Some cells have a
reject fixture to drop the part off. If the cell has a reject fixture, this selection will force the robot to
drop to the reject fixture. If no reject is present then this button will be grayed out.
40
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
8.1 General
8.1.1 Scope
This specification contains all I/O and software requirements associated with General
Motors’ standard robot, plc, and Flexible Measurement System vision controller interface.
8.1.2 Purpose
This specification documents the standard interface between robots, PLCs, and other
purchased equipment used by General Motors. It is intended to complement the
technical specifications that are maintained separately for the robots and peripheral
equipment in General Motors processes.
This document is intended for robot suppliers, vision suppliers, General Motors’ Common
Controls Software developers, and General Motors’ robot application software
developers.
Flexible Measurement Systems (FMS) is a robotically carried in-line gauging system for
dimensional measurement of the vehicle body. Typically this had been accomplished
using fixed mounted vision cameras to take measurements. There was one camera per
measurement in the fixed systems. The FMS system is designed to save money and
gain flexibility by mounting the camera on the robot arm. The robot can move the camera
to almost any point on the vehicle. The robots in the FMS systems are temperature
compensated to provide the most accurate measurements possible.
41
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
20. AutoMode: Vision system echoes this bit back to the PLC indicating that it is in
automatic mode.
21. TryoutMode: Vision system echoes this bit back to the PLC indicating that it is in
tryout mode.
22. TchCalMode: When high, this signal indicates that the vision system is in
teach/calibrate mode.
23. StatTest: Vision system echoes this bit back to the PLC indicating that it is
performing a static test.
24. DynaTest: Vision system echoes this bit back to the PLC indicating that it is
performing a dynamic test.
25. ManualMode: Vision system echoes this bit back to the PLC indication that it is in
manual mode.
26. NoFaults: When low, this bit indicates a system fault in the vision system.
27. SysReady: When high, this signal indicates that the vision controller is ready and
does not have any faults that would prevent a normal cycle.
28. SysBusy: Vision system is occupied and is not ready to accept commands.
29. SysInCycle: When this signal is high the vision controller is in cycle.
30. CycleComp: When this signal is high the vision cycle is complete.
32. TrendOK: When this signal is low there is a trend limit exceeded.
33. OutSpecOK: When this signal is low there is a out of spec limit exceeded.
34. RejectOK: When this signal is low there is a reject limit exceeded.
35. TempCompOK: When this signal is low there is a problem with the temperature
compensation calculation and the compensation is not applied. This alarm is only
valid during style 28 measurement cycle.
36. TempInCycle: A signal from the vision controller telling the PLC that a temperature
compensation program is in cycle.
37. TempCycleComp: A signal from the vision controller telling the PLC that a
temperature compensation cycle has been completed successfully.
42
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
38. TchCalPgm: A signal from the vision controller telling the PLC what robot program
to run. Used only when in teach or calibrate modes.
39. Style: Vision system echoes the style number back to the PLC.
40. ProcID(1-20): Vision system echoes the ProcessID numbers back to the PLC.
41. PartID1&2: Vision system echoes the PartID numbers back to the PLC.
14. AutoMode: A bit that tells the vision system that the system is in automatic mode.
15. TryoutMode: Tells the vision system that the system is in "Tryout Mode" (No Part).
16. TchCalMode: The PLC echoes this bit back to the vision controller as a handshake.
It should mirror the vision input.
17. StatTest: Tells the vision system that the system is performing a static test. The
vision system shall tag the report data to reflect that it is running a static test.
18. DynaTest: Tells the vision system that the system is performing a dynamic test.
The vision system shall tag the report data to reflect that it is running a dynamic test.
19. ManualMode: A signal that puts the vision system into manual mode.
21. FaultReset: A signal telling the vision controller to reset all faults. If the vision
controller is in cycle, setting the FaultReset signal shall cause the cycle to cancel in
the same manner as the CnclCycle signal. If the vision controller is not in cycle,
setting the FaultReset signal shall cause the vision controller to reset the sensor and
get ready for a new cycle.
22. CnclCycle: A signal telling the vision controller to cancel the cycle and reset all I/O
to be ready to run a new cycle.
23. EndCycle: A signal telling the vision controller that the robots have finished
measuring and the cycle is over.
25. TchCalPgm: The PLC echoes the Teach/Cal Program number back to the vision
controller as a handshake. It should mirror the vision input.
26. ProcID(1-20): Process identifiers - Used to send a process identifier such as carrier
number, lane number, or parallel process number.
27. PartID1&2: Part identifiers - Used to send the JSN # or equivalent to the vision
controller.
43
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
2. TchCalMode: A bit that tells the robot that the vision controller is in Teach/Calibrate
mode.
3. CnclCycle: A signal that tells the robot that the vision cycle has been cancelled.
3. PCRbtComOK: When low, this signal indicates that there was a loss of
communication between the vision controller and the robot.
4. CnclCycle: When high, this signal indicates to the PLC that the robot is requesting
to cancel the current vision cycle.
44
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
45
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
46
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
47
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
48
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: Normal and Teach/Calibrate error recovery shall perform similarly. The vision controller
shall drop the “No Faults” bit to the PLC when there is a fault. If the vision system is not in cycle
and the PLC sends the “FaultReset” signal, the vision controller resets all signals and gets ready
to run a new cycle. When the system is already in cycle, the vision controller shall hold the fault
state until the user makes a recovery selection from the HMI screen. See error recovery options
in section 6.2.4.
49
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
50
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following sections detail the mapping assignments for the robot, PLC, and vision
controller. The signals shall be produced and consumed via Ethernet/IP.
8. The vision controller shall be able to maintain at least 8 bi-directional real time
connections with both produce and consume capability.
9. The real time producer connections shall receive priority over the non real time traffic
sent such that performance degradation due to congestion, if any, will occur on the
non-real time connections before the real time connections are effected.
10. Data integrity shall be maintained for up to 508-byte frame size message (Maximum
allowed in by the ODVA EtherNet/IP definition).
11. The RPI (requested packet interval) shall be configurable at the scanner. The
minimum RPI shall be 20ms and it shall be adjustable in 5ms increments or less.
The default setting shall be 60ms.
12. Diagnostics screen(s) shall be provided on the vision controller to display connection
information such as name, IP address, and communication status for each real time
connection.
51
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
52
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
240-255 INT ProcID12 Vision system echo. Should mirror PLC process ID 12
256-271 INT ProcID13 Vision system echo. Should mirror PLC process ID 13
272-287 INT ProcID14 Vision system echo. Should mirror PLC process ID 14
288-303 INT ProcID15 Vision system echo. Should mirror PLC process ID 15
304-319 INT ProcID16 Vision system echo. Should mirror PLC process ID 16
320-335 INT ProcID17 Vision system echo. Should mirror PLC process ID 17
336-351 INT ProcID18 Vision system echo. Should mirror PLC process ID 18
352-367 INT ProcID19 Vision system echo. Should mirror PLC process ID 19
368-383 INT ProcID20 Vision system echo. Should mirror PLC process ID 20
384-415 DINT PartID1 Vision system echo. Should mirror PLC part ID 1
416-447 DINT PartID2 Vision system echo. Should mirror PLC part ID 2
448 BOOL UserBit User Definable
449 BOOL UserBit User Definable
450 BOOL UserBit User Definable
451 BOOL UserBit User Definable
452 BOOL UserBit User Definable
453 BOOL UserBit User Definable
454 BOOL UserBit User Definable
455 BOOL UserBit User Definable
456-463 SINT UserSINT User Definable
464-479 INT UserINT User Definable
480-511 DINT UserDINT User Definable
Note: Shaded fields indicate signals not used for this application
53
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: Shaded fields indicate signals not used for this application
55
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
56
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The FMS system runs two different parts of a cycle. The first part of a cycle is the part
path and the second part of the cycle is for the artifact measurement, which is part of the
temperature compensation functionality.
The part path is considered to be the part measurement portion of the cycle. There can
be three different forms of part paths: master programs, short programs, or split
programs. A master program will contain all checkpoints for a particular body type. A
short program will contain all the checkpoints that the plant wishes to run during a single
cycle. Part splitting allows the robot to run different subsets of measure points. See
robot software section for more details.
57
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
8.5.1.1 PC Interface
The robot and vision data communication shall be accomplished using the robot’s PC
interface via ethernet. Most robot manufacturers have a PC interface that allows reading
and writing of variables, data registers, position registers, and user frames.
10. Request Code Used by system): This item determines which event is triggered on
the PC. It can be a value between 0 and 255.
11. Wait Switch (Used by system): This item is a wait switch. Valid values are either 0
or 1. If 0, don’t wait for an answer form the PC. If 1, wait for an answer from the PC.
The default shall be 0.
12. Status Register (Used by system): This specifies which data register to put any error
codes. If this value is 0, no register is used.
13. Checkpoint Number: The checkpoint number that is entered by the user in the
Measure command shall be passed to the vision controller.
14. Communication Timeout: The time that the robot controller will wait for a reply from
the vision controller.
15. Vision Reply Register: This is the register that the vision controller will put the reply
number. The robot program will loop while waiting for a reply while the number is
equal to 9999. When it is anything other than 9999 it means the PC has replied and
the program can continue.
The PC interface command that sends data to the PC will vary by robot manufacturer;
therefore, the order of the above parameters shall remain fixed. The above Send Data
example shows the first three fields used by the system; therefore, the three vision
parameters listed above would start at field four.
When part or temperature compensation splitting is enabled in the PLC, the robot shall
be initiated into a style program with option bit A, B, or C. The following table explains
the functionality for each option bit.
58
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The robot shall move to a position and then call a Measure macro that looks like the
following: CALL MEASURE (1), where the number 1 is a user-entered integer that
represents a checkpoint number. The Measure macro uses the checkpoint parameter
above and sends all the fields listed in 5.1.1 to the PC.
When there are more points than you have cycle time for in a single cycle, you can split
the measurements into two different programs and measure half during one cycle and
half on the next cycle. This would allow the plant to measure more points than they
would otherwise.
A full temperature compensation program will most likely exceed the normal cycle time of
the station. In order to compensate and remain within cycle time, it may be necessary to
only perform two or three measurements while the vehicle is transferring, which is called
splitting. For example, if 30 artifact measurements are needed and there is cycle time to
do two measurements between jobs, the robot would become compensated after 15 jobs.
1. Settle time: The robot tends to shake slightly when it moves from checkpoint to
checkpoint. In order to eliminate the shaking and prevent any error in
measurements, it is necessary to have the robot wait a small amount of time before
59
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
3. Vision Reply: This is the register that the vision controller will put the reply number.
The robot program will loop while waiting for a reply from the pc while the number is
equal to 9999. When it is anything other than 9999 it means the PC has replied and
the program can continue.
4. Part Splits: The robot shall have a user configurable number of checkpoint splits (10
maximum). If option C is turned on from the PLC the robot shall run this number of
part splits. Default value shall be two.
5. Artifact Splits: This number defines the number of artifact measurements per split.
This is only used if style 28, option c is being sent from the PLC. The default shall be
two.
6. Artifact Points: This number is the total number of artifact measurements. This is
only used if style 28, option c is being sent from the PLC. The default shall be 30.
7. Auto Retry: The robot shall have the capability to automatically retry a faulted
measurement a configurable number of times before issuing a fault. The default
shall be 0; the maximum configurable number of retries shall be 3.
The PLC shall initiate the robot into style program 1-25 for a part path and 28 for a
temperature compensation path. The PLC shall also provide option bit A, B, or C
depending on the required functionality. See table 5.
The PLC software shall provide the following user configurable options for temperature
compensation:
1. Temp Comp Enable/Disable: Ability for the user to enable and disable temperature
compensation. If temperature compensation is disabled, items 2-5 below are not
used.
2. Splitting Enable/Disable: Provide the ability for the user to enable or disable
temperature compensation splitting. If this option is enabled, the robot is forced to
run style 28 and option C during job transfer as shown in table 5.
3. Temp Comp Timer: Provide the ability for the user to input the amount of time
between temperature compensations. If the splitting is enabled, this timer can be
used to force the splits to happen based on time and not continuous. Conversely, if
splitting is disabled the system could be configured to perform a full temperature
compensation every hour during production.
4. Idle Comp Enable/Disable: Provide the ability for the user to enable and disable
compensation based on the system being idle. For example, if the system sits idle
60
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
for 30 minutes, the system would run full temperature compensation when the line
started back up.
5. Idle Timer: Provide the ability for the user to input a desired amount of time for the
system to be idle before performing full temperature compensation (see table 5).
This is not used unless Idle Comp is enabled (item 4).
6. Part Splitting Enable/Disable: Ability for the user to enable and disable part splitting.
7. Master/Short Program Toggle: Ability for the user to select between master and
short part path programs (see option A & B in table 5).
8.5.3.1 Modes
The following are all valid modes for the FMS system:
1. Automatic Mode: The normal mode for production is automatic mode. The PLC shall
set the automatic mode bit to the vision controller to high for a normal cycle. In
automatic mode, the PLC shall set the “Process On Request” to the robot(s) to high.
The robot(s) shall then set the “Process Enabled” signal to the PLC to high.
2. Teach / Calibrate Mode: The vision controller can be put into Teach/Calibrate mode
at the vision controller by the user. When in Teach / Calibrate mode, the vision
controller shall send a program number to the PLC. This number represents a
program that the user wishes to run. The PLC shall examine this number and initiate
the robot(s) into the appropriate style program. When the vision controller is in Teach
/ Calibrate mode, the PLC shall set the TchCalMode bit to the robot to high. When
the robot sees the TchCalMode bit high, it shall change the wait switch for the PC
interface to 1 as described in section 5.1.1 item 2.
3. Tryout Mode: The vision controller shall run with no part when the PLC has set the
TryoutMode bit to high. The TryoutMode bit shall be set to high when the user
selects Tryout Mode in the PLC. When Tryout Mode is selected, the “Process On
Request” from PLC to the robot(s) shall be set to low and the robot “Process
Enabled” signal to the PLC shall be set to low. All I/O handshaking shall take place
as normal and the system shall not fault out with any measurement alarms. If the
PLC senses a part in the station, a fault shall be generated and a cycle shall not be
started.
The following two items describe both static and dynamic repeatability test functionality:
1. Static Test: A static test is performed to test the static repeatability of the
measurement system. During a static test, the body remains in the same position for
30 or more cycles, but the robot moves through the measure path normally. The
PLC shall set the StatTest bit to high when a static test is selected. The vision
controller shall run the cycle normally except the data from each cycle shall be
tagged as a static test per the CDIS interface requirements. The PLC software shall
provide the user with a method to select or deselect static test mode. The PLC
software shall also provide the user with a method to set the number of cycles for a
static test.
61
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
2. Dynamic Test: A dynamic test is performed to test the dynamic repeatability of the
measurement system. During a dynamic test, the body is lowered into station,
clamped up, measured, unclamped, and raised for 10 or more cycles. The PLC shall
set the DynaTest bit to high when a dynamic test is selected. The vision controller
shall run the cycle normally except the data from each cycle shall be tagged as a
dynamic test per the CDIS interface requirements. The PLC software shall provide
the user with a method to select or deselect dynamic test mode. The PLC software
shall also provide the user with a method to set the number of cycles for a dynamic
test.
The following sections describe the required robot fault handling capability.
The robot shall have the capability to automatically retry a faulted measurement a
configurable number of times before issuing a fault. The default shall be 0; the maximum
configurable number of retries shall be 3.
On any measurement error during the cycle, the following fault recovery options shall be
supported at the robot teach pendant:
4. Skip All: – This selection shall set ‘Task OK’ to low and continue through the rest
of the path without firing the sensor and without waiting for a vision controller
reply.
5. Abort – This selection shall turn on ‘Cancel Cycle’ to PLC, set ‘Task OK’ to low,
and cancel any user program execution, robot motion, or process execution.
‘Cancel Cycle’ to the PLC shall turn off at the robot home position.
The robot shall be capable of detecting a loss of communication with the vision controller.
In the event of a loss of communication with the vision controller, the robot shall set the
‘PCRbtComOK’ signal to the PLC to low and shall provide the option to retry
communications to the vision controller from the teach pendant. The robot shall also
provide the options in section 6.1.2 if it has a communication error while in the measure
path. The robot shall reset ‘PCRbtComOK’ back to high upon the restoration of
communications with the vision controller.
62
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The PLC will consider the following signals as alarms when set to low from the vision
controller:
Recovery options outlined in xxx will be available on the HMI vision screen.
The vision system shall set the NoFaults bit to low if it has a system fault that would
prevent a vision cycle from completing properly. If the controller is not in cycle, the PLC
shall set the FaultReset bit to high and the vision controller shall reset the sensors and
get ready for a new cycle. If the controller is in cycle, the vision controller maintains the
error state until the user goes to the vision screen on the HMI and makes a selection to
recover. See section 6.2.4 below.
In the event of a ‘Cancel Cycle’ signal from the PLC or a Fault Reset when in cycle; the
robot shall set ‘TaskOK’ to low and continue through the rest of the path without firing the
sensor and without waiting for a vision controller reply.
The PLC HMI screen will provide the following recovery buttons:
8. Accept Part: Used when there is a vision measurement error and release the vehicle
and continue.
9. Recheck Part: User presses this button to rerun the measurement cycle.
10. Auto Recheck Enable: The PLC forces the vision controller to recheck the current
measurement a configurable amount of times before a fault is generated. Default
shall be set to 1.
11. Cancel Cycle: Cancel the current cycle and get ready to run a new one.
12. Enable Reject Bypass: User must press this button to enable the system to ignore
alarms. This functionality should only work for 10 - 20 jobs and then return to
disabled. This is to prevent a permanent bypass of the alarms.
63
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
9.1 General
9.1.1 Scope
This specification contains all I/O and software requirements associated with General
Motors’ standard PLC and measurement vision controller interface.
9.1.2 Purpose
This specification documents the standard interface between PLCs, and other purchased
equipment used by General Motors. It is intended to complement the technical
specifications that are maintained separately for the robots and peripheral equipment in
General Motors processes.
This document is intended for vision suppliers and General Motors’ Common Controls
Software developers.
64
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
This section is intended to define the usage of each of the input and output signals.
42. AutoMode: Vision system echoes this bit back to the PLC indicating that it is in
automatic mode.
43. TryoutMode: Vision system echoes this bit back to the PLC indicating that it is in
Tryout mode.
44. StatTest: Vision system echoes this bit back to the PLC indicating that it is
performing a static test.
45. DynaTest: Vision system echoes this bit back to the PLC indicating that it is
performing a dynamic test.
46. ManualMode: Vision system echoes this bit back to the PLC indication that it is in
manual mode.
47. NoFaults: When low, this bit indicates a system fault in the vision system.
48. SysReady: When high, this signal indicates that the vision controller is ready and
does not have any faults that would prevent a normal cycle.
49. SysBusy: Vision system is occupied and is not ready to accept commands.
50. SysInCycle: When this signal is high the vision controller is in cycle.
51. PhaseInCycle: When this signal is high the vision controller is in a phase cycle.
52. CycleComp: When this signal is high the vision cycle is complete.
53. PhaseComp: When this signal is high the current phase is complete.
55. TrendOK: When this signal is low there is a trend limit exceeded.
56. OutSpecOK: When this signal is low there is a out of spec limit exceeded.
57. RejectOK: When this signal is low there is a reject limit exceeded.
58. Style: Vision system echoes the style number back to the PLC.
59. PartID1&2: Vision system echoes the PartID numbers back to the PLC.
60. ProcID(1-5): Vision system echoes the ProcessID numbers back to the PLC.
65
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
28. AutoMode: A bit that tells the vision system that the system is in automatic mode.
29. TryoutMode: Tells the vision system that the system is in "Tryout Mode" (No Part).
30. StatTest: Tells the vision system that the system is performing a static test. The
vision system shall tag the report data to reflect that it is running a static test.
31. DynaTest: Tells the vision system that the system is performing a dynamic test.
The vision system shall tag the report data to reflect that it is running a dynamic test.
32. ManualMode: A signal to put the vision system into manual mode.
34. FaultReset: A signal telling the vision controller to reset all faults. If the vision
controller is in cycle, setting the FaultReset signal shall cause the cycle to cancel in
the same manner as the CnclCycle signal. If the vision controller is not in cycle,
setting the FaultReset signal shall cause the vision controller to reset the sensors and
get ready for a new cycle.
35. CnclCycle: A signal telling the vision controller to cancel the cycle and reset all I/O
to be ready to run a new cycle.
36. EndCycle: A signal telling the vision controller that the cycle is complete. This
signal is only used on a phased system since the vision controller does not know
when all phases are complete.
39. PartID1&2: Part identifiers - Used to send the JSN # or equivalent to the vision
controller.
40. ProcID(1-5): Process identifiers - Used to send a process identifier such as carrier
number, lane number, or parallel process number.
66
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
NA PLC FaultReset
NA PLC CnclCycle
1 Vision SysReady
1 Vision NoFaults
1 PLC AutoMode
1 Vision AutoMode
1 PLC TryoutMode
1 Vision TryoutMode
1 PLC StatTest
1 Vision StatTest
1 PLC DynaTest
1 Vision DynaTest
2 PLC Style
2 PLC PartID1&2
2 PLC ProcID1-5
3 Vision Style
3 Vision PartID1&2
3 Vision ProcID1-5
4 PLC StartCycle
5 Vision SysInCycle
8 Vision CycleComp
9 Vision SensorsOK
9 Vision TrendOK
9 Vision OutSpecOK
9 Vision RejectOK
67
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
NA PLC FaultReset
NA PLC CnclCycle
1 Vision SysReady
1 Vision NoFaults
1 PLC AutoMode
1 Vision AutoMode
1 PLC TryoutMode
1 Vision TryoutMode
1 PLC StatTest
1 Vision StatTest
1 PLC DynaTest
1 Vision DynaTest
2 PLC Style
2 PLC Phase
2 PLC PartID1&2
2 PLC ProcID1-5
3 Vision Style
3 Vision PartID1&2
3 Vision ProcID1-5
4 PLC StartCycle
5 Vision SysInCycle
7 Vision PhaseInCycle
8 Vision PhaseComp
9 PLC EndCycle
8 Vision CycleComp
9 Vision SensorsOK
9 Vision TrendOK
9 Vision OutSpecOK
9 Vision RejectOK
68
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
NA PLC FaultReset
NA PLC CnclCycle
1 Vision SysReady
1 Vision NoFaults
1 PLC AutoMode
1 Vision AutoMode
1 PLC TryoutMode
1 Vision TryoutMode
1 PLC StatTest
1 Vision StatTest
1 PLC DynaTest
1 Vision DynaTest
2 PLC Style
2 PLC PartID1&2
2 PLC ProcID1-5
3 Vision Style
3 Vision PartID1&2
3 Vision ProcID1-5
4 PLC StartCycle
5 Vision SysInCycle
8 Vision CycleComp
9 Vision SensorsOK
9 Vision TrendOK
9 Vision OutSpecOK
9 Vision RejectOK
Note: The vision controller shall drop the “No Faults” bit to the PLC during a fault condition. The
user will then make a recovery selection from the vision HMI screen.
69
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
NA PLC FaultReset
NA PLC CnclCycle
1 Vision SysReady
1 Vision NoFaults
1 PLC AutoMode
1 Vision AutoMode
1 PLC TryoutMode
1 Vision TryoutMode
1 PLC StatTest
1 Vision StatTest
1 PLC DynaTest
1 Vision DynaTest
2 PLC Style
2 PLC PartID1&2
2 PLC ProcID1-5
3 Vision Style
3 Vision PartID1&2
3 Vision ProcID1-5
4 PLC StartCycle
5 Vision SysInCycle
8 Vision CycleComp
9 Vision SensorsOK
9 Vision TrendOK
9 Vision OutSpecOK
9 Vision RejectOK
70
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The following sections detail the mapping assignments for the PLC and vision controller.
The signals shall be produced and consumed via Ethernet/IP.
13. The digital inputs and outputs shall be allocatable byte-wise to a connection.
14. The vision controller shall be able to maintain at least 8 bi-directional real time
connections with both produce and consume capability.
15. The real time producer connections shall receive priority over the non real time traffic
sent such that performance degradation due to congestion, if any, will occur on the
non-real time connections before the real time connections are effected.
16. Data integrity shall be maintained for up to 508-byte frame size message (Maximum
allowed in by the ODVA EtherNet/IP definition).
17. The RPI (requested packet interval) shall be configurable at the scanner. The
minimum RPI shall be 20ms and it shall be adjustable in 5ms increments or less.
The default setting shall be 60ms.
18. Diagnostics screen(s) shall be provided on the vision controller to display connection
information such as name, IP address, and communication status for each real time
connection.
71
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: Shaded fields indicate signals not used for this application
72
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
Note: Shaded fields indicate signals not used for this application
9.4.1 Modes
The following sections describe valid modes for the FMS system.
73
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
The normal mode for production is automatic mode. The PLC shall set the automatic
mode bit to the vision controller to high for a normal cycle.
The vision controller shall run with no part when the PLC has set the TryoutMode bit to
high. The TryoutMode bit shall be set to high when the user selects Tryout Mode in the
PLC.
All I/O handshaking shall take place as normal, the sensors shall not fire the laser, and
the system shall not fault out with any measurement alarms. If the PLC senses a part in
the station, a fault shall be generated and a cycle shall not be started.
The following sections describe both static and dynamic repeatability test functionality.
A static test is performed to test the static repeatability of the measurement system.
During a static test, the body remains in the same position for 30 or more cycles, but the
vision system measures normally. The PLC shall set the StatTest bit to high when a
static test is selected. The vision controller shall run the cycle normally except the data
from each cycle shall be tagged as a static test per the CDIS interface requirements. The
PLC software shall provide the user with a method to select or deselect static test mode.
The PLC software shall also provide the user with a method to set the number of cycles
for a static test.
9.4.3 Phasing
Phasing is used to break the measuring cycle into smaller parts. For example, Phasing
could be used if a cycle required a set of measurements to be taken and then a clamp
needs to open in order to get another set of measurements. Phase 1 would be the first
set of measurements and phase 2 would be the second set of measurements. If a cycle
does not need to be broken into smaller parts then you do not need to use phasing. See
figure 5 for exact functionality.
74
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
9. Number of phases – Provide a configuration for how many phases to run if phasing is
enabled.
The PLC shall have the capability to automatically retry a faulted measurement a
configurable number of times before issuing a fault. The default shall be 0; the maximum
configurable number of retries shall be 3.
The PLC will consider the following signals as alarms when set to low from the vision
controller:
The vision system shall set the NoFaults bit to low if it has a measurement or system fault
that would prevent a normal cycle. If the controller is not in cycle, the PLC shall set the
FaultReset bit to high and the vision controller shall reset the sensors and get ready for a
new cycle. If the controller is in cycle, the PLC shall set the FaultReset bit and the vision
controller will cancel the cycle in the same manner as if the CnclCycle bit was set. See
Figure 3.
The PLC HMI screen will provide the following recovery buttons:
13. Accept Part: Used when there is a vision measurement error and release the vehicle
and continue.
14. Recheck Part: User presses this button to rerun the measurement cycle.
15. Auto Recheck Enable: The PLC forces the vision controller to recheck the current
measurement a configurable amount of times before a fault is generated. Default
shall be set to 1.
75
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--
Standard Robot Interface (GRS-4)
Section V: Robot Guidance With Vision
General Motors Corporation GM Controls, Conveyors, Robotics & Welding
16. Cancel Cycle: Cancel the current cycle and get ready to run a new one.
17. Enable Reject Bypass: User must press this button to enable the system to ignore
alarms.
76
October 2008
Copyright 2008. General Motors Corporation. All rights reserved.
--Uncontrolled When Printed--