0% found this document useful (0 votes)
143 views778 pages

GCCS2 Master Rev7.0 1

Uploaded by

Erick Garcia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
143 views778 pages

GCCS2 Master Rev7.0 1

Uploaded by

Erick Garcia
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 778

GCCS-2

Global Common Control Software Design


LMS # 33544
Document Version 7.0

Module 1: Overview
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:

Date Revision By Revision History


8-26-13 5.0 J. Hocking Updated graphics.
Synchronized to G16 with Powertrain and
6-8-15 6.0 J. Hocking
EtherNet I/O
8-27-19 7.0 J. Hocking Updated to standard, removed DeviceNet

This training is based on the Course Title. Please refer to the Standard manual found
on the “GM intranet” or www.gmsupplypower.com. The Standard manual is
comprehensive and will have the latest information. This training manual is used as an
instructional guide
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
1. Overview .............................................................................................. 1-1
1.1. Course Objective ................................................................................................. 1-1
1.2. Course Scope ...................................................................................................... 1-1
1.3. Course Overview ................................................................................................. 1-1
1.4. Course Audience ................................................................................................. 1-1
1.5. Purpose ................................................................................................................ 1-1
1.6. Module 1: Objectives .......................................................................................... 1-3
1.7. Deviations ............................................................................................................ 1-4
1.8. Definitions ............................................................................................................ 1-5
1.9. Normative References ........................................................................................ 1-7
1.10. Locate the Global Ethernet e-Tools. ................................................................ 1-8
1.11. ControlLogix Environment ............................................................................. 1-17
1.11.1. Definitions ............................................................................................... 1-17
1.12. Plant Floor Systems (PFS) ............................................................................. 1-18
1.13. Plant Floor Event (PFE) .................................................................................. 1-18
1.14. Project Structure ............................................................................................. 1-18
1.14.1. Controls Design Environment, CDE Software Tool ................................. 1-20
1.14.2. Program Description ............................................................................... 1-20
1.14.3. Main Routine ........................................................................................... 1-21
1.14.4. Routine Names ....................................................................................... 1-21
1.15. Ladder Logic Contents ................................................................................... 1-21
1.15.1. Rung Comments ..................................................................................... 1-21
1.15.2. Operand Description ............................................................................... 1-22
1.15.3. Pass-Thru................................................................................................ 1-22
1.16. Review .............................................................................................................. 1-24

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Add-On Instruction Example ........................................................................ 1-7
Figure 2: Covisint (GM Supply Power host) Home Screen.......................................... 1-8
Figure 3: Covisint Login Screen ................................................................................. 1-10
Figure 4: Covisint Directed Communications Page ................................................... 1-11
Figure 5: GM Supply Power Home Page .................................................................. 1-11
Figure 6: GM Supply Power Home Page – Application .............................................. 1-12
Figure 7: Acknowledge the 2-Step Verification .......................................................... 1-13
Figure 8: Choose a 2-Step verification method ......................................................... 1-13
Figure 9: Submit the Verification ............................................................................... 1-14
Figure 10: Select Global Standards .......................................................................... 1-14
Figure 11: Select eTols and Checklists ...................................................................... 1-15
Figure 12: Global Ethernet e-Tools ............................................................................ 1-16
Figure 13: Safety Task .............................................................................................. 1-19
Figure 14: Program and Routine Description ............................................................ 1-20
Figure 15: The TBD Tag Blocking Logic.................................................................... 1-21
Figure 16: Rung Comments ...................................................................................... 1-22
Figure 17: Pass-Thru Description .............................................................................. 1-23

© 2019 General Motors Company. All Rights Reserved


iii
1. Overview
1.1. Course Objective
The overall course objective is to be able to use the GCCS-2 standard to improve
accuracy, speed, and commonality in RS Logix 5000 programming. Engineers
who integrate, start-up, maintain, and/or design automation cells will benefit from
this course.
1.2. Course Scope
The provisions of the GCCS-1a Integration Document apply to the control system
software designs for all GM facilities. Only national or local codes and regulations
(legal requirements) shall supersede this document for any GM project. Any and
all conflicts must be documented and presented to the GM personnel responsible
for resolution, prior to implementation of non GM specifications.
1.3. Course Overview
GCCS-1 (Global Common Controls Standard - 1) is the standard for General
Motors logic software programming. GCCS-2 is the standard software template
that provide solutions for most automation controls situations in meeting the
requirements in GCCS-1. This training program will focus on the body shop area
while also providing examples from conveyance, stamping, paint, Global
Propulsion Systems, and general assembly.
1.4. Course Audience
This standard is primarily for use by design, startup, and maintenance personnel.
It shall be used by all personnel (e.g., control engineers, body shop equipment
suppliers, installation personnel, and in-plant resources involved in the operation
of GM controls systems. This standard shall be used in all phases of the
equipment’s life, including:
1. Design.
1. Installation.
2. Commissioning.
3. Acceptance.
4. Production.
1.5. Purpose
The purpose of this course is to provide the foundation for designing ladder logic
programs for Rockwell Automation/Allen-Bradley ControlLogix, GuardLogix, and
CompactLogix Series controllers and Siemens HMIs. The objective of standard
GCCS-1 is to provide common, lean, flexible, and cost effective control systems.
In turn, this enhances both the productivity and maintainability of the systems, as

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-1
well as the quality of the products produced. The application of this standard shall
result in common systems software that:
1. Assures the safe operation and maintainability of the manufacturing
equipment.
2. Introduces common systems to all areas of the facility.
3. Reduces development costs.
4. Leverages global engineering resources.
5. Provides flexible designs to accommodate changes to the product and/or
process.

1-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1.6. Module 1: Objectives
1. The student will be able to describe the purpose of GCCS-1 and GCCS-2
standards.
2. The student will be able to describe how ladder logic is generated for various
manufacturing applications.
3. The student will be able to demonstrate how to document program
descriptions.
4. The student will be able to demonstrate how to document rung comments.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-3
1.7. Deviations
Any deviation from GCCS-1 standard requires the advance, written approval of
the controls engineer responsible for the project. Any approved deviation(s) shall
only apply to that specific instance; it shall not be considered a change to this
standard. Past approved deviations from this standard shall not be construed as
setting any approved precedent alternative to the provisions of this specification.

1-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1.8. Definitions
ControlLogix, These terms all refer to the Programmable Logic
GuardLogix, Controller (PLC) that is used on all GM projects.
Logix5000
Processor,
Controller
RSLogix5000 Windows-Based programming software used to
develop, upload/download, and maintain the PLC
software.
Firmware Computer code running at a hardware level in the
PLC and other smart cards in this architecture.
Specific bugs can be fixed by using the correct
firmware identified on the Blockpoint.
Blockpoint A GM specific document that defines, by project,
what the proper software and firmware versions
are. Projects should not move ahead or lag behind
the versions listed for the specific project on the
Blockpoint.
Data Types Defines the size and memory layout that will be
allocated when a tag of a particular data type is
created. All tags have a data type.
Predefined Basic data types that are pre-defined by the
Data Type controller.
Module Are pre-defined and are used in the tags that are
Defined Data automatically created when I/O modules are added
Type to the I/O Configuration.
UDTs UDTs are made from pre-defined, module-defined,
or other user-defined data types. UDTs are visible
throughout the controller. User-Defined Data Types
are created by either the -Automation Standards
group or the actual user.
Tags A Tag is a named memory area that holds data of a
defined data type. Tags are defined by their data
type, either pre-defined or user-defined. Data in a
Logix processor is contained in tags.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-5
Tag Scope Defines how visible the tag is and which routines
can access the tag’s data. Tags have scope of
either program or controller. All programs can see
Controller Tags. Conversely, Program Tags are
only visible within the program in which they are
contained.
Tag Aliasing Points a tag to another tag so that the two tags
have the same meaning and share the same data.
The data resides in the base tag. GCCS-1 base
tags are always controller tags. When alias tags
are used, the base tag is a controller tag and the
alias tag is a program scope tag. All non alias tags
are base tags, not all base tags have alias tags.
Tag Class Either Standard or Safety. All tags within the safety
task have to be of the class “Safety”, as well as any
controller tags accessed by the safety task.
Tasks Tasks used in GCCS-1 are continuous or periodic.
The Main Task is continuous, executes all
programs, then starts over, and calls all programs
except those in the Safety Task. The Safety Task
is periodic, interrupts the Main Task, and calls all
safety programs.
Normative References which contain hardware, software, and
References operating standards.
Ladder Logic A program written in a format resembling a ladder-
like diagram. The program is used by a
programmable controller to control equipment
motion or process.
The ladder is broken down into smaller steps called
rungs to simplify the identification and modification
of operations.
Rung Rung comments describe logic function or how to
Comments configure a rung based on a specific situation.
Operand Describes the address of computer instruction
Description data to be operated on.

1-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Add-On User defined instruction sets that behave like a
Instruction Logix predefined instruction. Add-On Instructions
(AOI) are a collection of Logix instructions constructed
with ladder logic or other programming languages.
They reside in the Add-On Instruction folder in the
Controller Organizer and resemble an RSLogix
program. AOIs can be copied and
exported/imported to other projects.

Figure 1: Add-On Instruction Example

Item Description
1 AOI name, also used in project routines where AOI functionality is used
2 Parameters and tags used by the AOI
3 AOI Logic routine, one or more may be used

1.9. Normative References


The following normative references contain the provisions of the GCCS-1 standard.
The editions indicated were valid at the time of publication. All normative references
are subject to revision and the most recent editions of the normative standards
indicated below shall apply.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-7
GM GCCS-1 Common Controls Software
GM xx Blockpoint Release Schedule
Xx = GM region where project exists
GM Engineering Process Standards GEP-1

1.10. Locate the Global Ethernet e-Tools.


The Global e-Tools and reference information are located on GM SupplyPower or
Socrates. GM SupplyPower is hosted on Covisint.com.
Users must be registered. Contact your company’s Administrator or GM for registration.

1. Both covisint.com and gmsupplypower.com will update the format on their


sites occasionally Navigation may vary.From your internet browser type
covisint.com
2. Select Automotive from Login menu.

Figure 2: Covisint (GM Supply Power host) Home Screen

3. Click Automotive

1-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4. Enter your User ID and Password.
5. Click “Login”

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-9
Figure 3: Covisint Login Screen

6. Click GM SupplyPower under Covisint Applications > Automotive Portals…

1-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 4: Covisint Directed Communications Page

7. Click Applications under the Collaborate menu.

Figure 5: GM Supply Power Home Page

8. Scroll to Manufacturing Engineering Vehicle Systems and click the link.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-11
Figure 6: GM Supply Power Home Page – Application

9. Click Continue to acknowledge 2-Step Verification notice.

1-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 7: Acknowledge the 2-Step Verification

10. Choose a method to proceed with 2-SteVerification. (You will be reminded


about charges from your carrier.

Figure 8: Choose a 2-Step verification method

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-13
11. Once you receive the 2-Step Verification code, type it in the Enter Code item
and click Submit.

Figure 9: Submit the Verification

12. Click “Global Standards, Specifications, and Procedures

Figure 10: Select Global Standards

1-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13. Click eTools & Checklists

Figure 11: Select eTols and Checklists

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-15
14. Scroll down to view the Global EtherNet eTools
15. Click the name of any desired eTOOL to begin its download.

Figure 12: Global Ethernet e-Tools

1-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1.11. ControlLogix Environment
Logix 5000 PLC programs are created with the following software or templates. Their
use is dependent upon where the program is used in the plant:
o Controls Design environment, CDE Software
o eConveyor Software
o GCCS-2 reference software and templates for the specific equipment
The development conventions are as follows:
 Bodyshop - Logix 5000 PLC programs shall be developed with the CDE software
generation tool.
 Conveyance outside of tooling – Logix 5000 PLC programs shall be developed
with the eConveyor software generation tool.
 Powertrain - Logix 5000 PLC programs shall be developed with GCCS-2
reference software and templates provided for the specific equipment.
 General Assembly – Logix 5000 PLC programs shall be developed with GCCS-2
reference software and templates provided for the specific equipment.
 Paint – Logix 5000 PLC programs shall be developed with GCCS-2 reference
software and templates provided for the specific equipment.
 Metal Stamping - Logix 5000 PLC programs shall be developed with GCCS-2
reference software and templates provided for the specific equipment.
All work must be performed using the versions of RSLogix and ControlLogix firmware
specified in the latest GM Blockpoint Release Schedule. An applicable version of
this document shall be made available on request by the GM Automation Standards
Controls Project Engineer or designated representative. Powertrain projects must
use RSLogix and ControlLogix firmware as specified in the latest GMNAPT
Blockpoint Release Schedule.

1.11.1. Definitions
GCCS-1 uses numerous terms to describe system components and functions. A
discussion of the more commonly used items follows here:
ControlLogix, GuardLogix, CompactLogix, Logix 5000, Processor, Controller -
all refer to the Programmable Logic Controller (PLC) that is used on all GM projects.
RSLogix 5000 & Studio 5000- is the Windows-Based programming software used
to develop, upload/download, and maintain the PLC software.
Firmware – is the code running at a hardware level in the PLC and other smart cards
in the architecture. Specific bugs can be fixed by using the correct firmware
identified on the Blockpoint.
Blockpoint – Is a GM specific document that defines, by project, what the proper
software and firmware versions are. Projects should not move ahead or lag behind
the versions listed for the specific project on the Blockpoint.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-17
Data types – define the size and memory layout that will be allocated when a tag of
a particular data type is created. All tags have a data type.
• Three categories of data types are used:
– Pre-Defined
– Module-Defined
– User-Defined
Pre-Defined Data Types - Basic data types that are pre-defined by the controller.
Module-Defined Data Types - Are pre-defined and are used in the tags that are
automatically created when I/O modules are added to the I/O Configuration.
User-Defined Data Types (UDTs) - UDTs are made from Pre-Defined, Module-
Defined, or other User-Defined Data Types. UDTs are visible throughout the
controller. User-Defined Data Types are created by either or the actual user.

1.12. Plant Floor Systems (PFS)


Plant Floor Systems are designed to accommodate sharing of maintenance, production
and other related data with the information systems of the plant. Automation and plant
level systems send data between the PLC controllers and plant level systems such as
Cimplicity and marquees.
Three types of events are utilized:
1. Digital faults, warnings, statuses
2. Value counts, timers, temps
3. Record a user defined structure of digital and value events (ODD, CView,
RPM)
1.13. Plant Floor Event (PFE)
Plant Floor Event software (Labeled PFE in the controller) is the communication bridge
to the Plant Floor Systems.
In PFE based logic, events are opened, maintained and closed in the PLC.
A PFE Logic User Guide is available from GM, for additional information contact:
Aaron Dunlap, GM 810.602.9888
1.14. Project Structure
RSLogix 5000 & Studio 5000 permit multiple programs within a single RSLogix
project. Each program is similar to a stand-alone PLC. They have their own

1-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
program tags and also have access to global controller tags. Programs have their
own routines.
Each controller program structure is based on cell component data configured
during the software generation process. The GCCS-1 standard mandates that
the logic structure consist of at least one task, the Main Task.
The Main Task is a continuous task containing control programs for cell(s),
stations and related automation components. The Main Task executes all
programs, then starts over, and calls all programs except those in the Safety
Task.
Projects using GuardLogix also require a “Safety Task.” The Safety Task
monitors all of the cell safety I/O systems.

Figure 13: Safety Task

The Safety Task is periodic, interrupts the Main Task, and calls all safety
programs.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-19
1.14.1. Controls Design Environment, CDE Software Tool
The CDE software tool generation process creates the entire controller logic
program structure. This ensures common logic structures from controller to
controller. Note that the output from the CDE software will require modification by
the start-up engineer to complete and start up the equipment.
1.14.2. Program Description
Each program and routine in the Main Task and Safety Task shall include
descriptions of their function in their properties’ description box. See Figure 14.

Figure 14: Program and Routine Description

1-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1.14.3. Main Routine
Every program will have a main routine (A000_Main) that will call most of the
remaining routines of the program. Routines not called by A000_Main must be
called by other routines in the program. Uncalled routines cannot reside in a
program’s logic structure.

1.14.4. Routine Names


Routine names shall adhere to the GCCS-1 naming standard.

1.15. Ladder Logic Contents


The following objects must be documented in the ladder logic:
• Programs
• Routines
• Rung comments

The software generation process as well as template logic may contain ladder
logic rungs that have place-holder bits. These bits are identified by the TBD tag.
All TBD bits must be removed or replaced with the appropriate logic. Finished
logic that is ready for buy-off must not contain TBD, Temp Bits, or Jumpers of any
kind unless hardware devices are not present at the time of buy-off. Rung
comments often explain what is required to replace the TBD appropriately in the
logic.

Figure 15: The TBD Tag Blocking Logic

1.15.1. Rung Comments


Rung comments are used to describe logic function or how to configure a rung
based on a specific situation. Rung comments are required as shown in the
GCCS-2 reference. Alarm and prompt text resides in specially formatted rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-21
comments. A macro program is used to extract alarms and prompts from an L5K
text file of the controller logic for importation into the HMI.

Figure 16: Rung Comments

1.15.2. Operand Description


GCCS-1 standards dictate that every controller scope and program scope tag
have an operand description that briefly describes its function, without exception.
The GCCS-2 reference contains examples of the descriptions for each type of
tag. Most tags have pass-thru descriptions from the data-types.

1.15.3. Pass-Thru
In Figure 17, the top or Main Description can be edited to indicate the appropriate
cylinder number. The UDT will “pass-thru” main description text to all members of
the UDT, indicating that each member is part of the tag as shown in Figure 17.
“Pass-thru” descriptions have a grayed-out appearance. UDT member comments
will be added to the main tag comment to create the individual tag comment.

1-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 17: Pass-Thru Description

Note: Only the Main Description can be editable in the tad editor.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 1-23
1.16. Review
1. What is the purpose of the GCCS-1 standard?
2. What is the purpose of GCCS-2 standard?
3. How is ladder logic generated for the various GM groups?
4. What types of objects must be documented in the ladder logic?

1-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 2: RSLogix Overview


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:

Date Revision By Revision History


Synchronized to G16 with Powertrain and
6-8-15 6.0 J. Hocking
EtherNet I/O
8-28-19 7.0 J. Hocking Updated to standard, removed DeviceNet

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
2. RSLogix 5000 Overview...................................................................... 2-1
2.1. Objectives ............................................................................................................ 2-1
2.2. GCCS-1 Systems ................................................................................................. 2-2
2.3. Controller Organization ...................................................................................... 2-2
2.4. Processor and Logix File Naming...................................................................... 2-4
2.5. I/O Module Configuration ................................................................................... 2-5
2.5.1. Adding New Modules .................................................................................. 2-8
2.5.2. Configuration Review Utility ...................................................................... 2-12
2.5.3. Controller Properties General Tab – Processor ........................................ 2-13
2.5.4. Controller Properties Advanced Tab – Processor ..................................... 2-14
2.5.5. Controller Properties Safety Tab – Processor ........................................... 2-15
2.5.6. Input and Output Card ............................................................................... 2-16
2.5.7. Ethernet Bridge Properties ........................................................................ 2-16
2.5.8. Configuring Remote Devices..................................................................... 2-18
2.5.9. Configuring a Remote Processor for Producer/Consumer ........................ 2-19
2.5.10. Remote Processor Configuration ............................................................ 2-21
2.5.11. Configuring Devices for Ethernet IP Communication .............................. 2-23
2.5.12. Requested Packet Interval (RPI) Settings ............................................... 2-23
2.5.13. Configuring a Robot for Ethernet IP Communication .............................. 2-24
2.5.14. Configuring a 1734-AENTR Module ........................................................ 2-26
2.5.15. Generic Ethernet Module ........................................................................ 2-29
2.6. Data Types – Pre-Defined, Module-Defined, and User-Defined ..................... 2-31
2.6.1. Pre-Defined Data Types (Basic)................................................................ 2-31
2.6.2. Pre-Defined Data Types (Advanced) ........................................................ 2-32
2.6.3. Module – Defined Data Types ................................................................... 2-32
2.6.4. User-Defined Data Types .......................................................................... 2-33
2.7. Tags .................................................................................................................... 2-35
2.7.1. Tag Scope ................................................................................................. 2-35
2.7.2. Tag Classes .............................................................................................. 2-37
2.7.3. Tag Aliasing .............................................................................................. 2-38
2.7.4. Setting up an Alias .................................................................................... 2-38
2.7.5. Modifying Tags and User-Defined Data Types (UDTs) ............................. 2-42
2.8. Tasks – Main and Safety ................................................................................... 2-43
2.8.1. Main (Continuous) Task ............................................................................ 2-43
2.8.2. Safety Task ............................................................................................... 2-47
2.8.3. Safety Task Organization .......................................................................... 2-48
2.9. Programs and Routines .................................................................................... 2-48
2.10. Studio 5000 Navigation ................................................................................... 2-50

© 2019 General Motors Company. All Rights Reserved


ii
2.11. Exercises ......................................................................................................... 2-52
2.11.1. Exercise 1 Creating UDTs and Tags. ...................................................... 2-52
2.11.2. Exercise 2 Creating a Tag Alias. ............................................................. 2-57
2.12. Searching the Logic ........................................................................................ 2-59
2.13. Logic Cross Referencing ................................................................................ 2-63
2.14. Producer/Consumer Communications .......................................................... 2-65
2.14.1. Setting up the Producer........................................................................... 2-66
2.14.2. Setting up the Consumer(s) .................................................................... 2-68
2.14.3. Downloading Producer/Consumer Programs .......................................... 2-69
2.15. Review .............................................................................................................. 2-70

© 2019 General Motors Company. All Rights Reserved


iii
Table of Figures
Figure 1: GCCS-1 Systems ......................................................................................... 2-2
Figure 2: Controller Organization for Standard Controller ........................................... 2-3
Figure 3: Controller Organization for Guard Logix Controller ...................................... 2-4
Figure 4: Setting the Controller Naming ...................................................................... 2-5
Figure 5: Adding I/O Modules to the Local Chassis .................................................... 2-6
Figure 6: Selection of the Correct Controller Module to be Added .............................. 2-7
Figure 7: Download Add On Profile zips...................................................................... 2-8
Figure 8: Starting the Setup Wizard ............................................................................ 2-9
Figure 9: Accept the EULA .......................................................................................... 2-9
Figure 10: Choose Install .......................................................................................... 2-10
Figure 11: Install Status Window ............................................................................... 2-10
Figure 12: Click Finish, Install is Complete................................................................ 2-11
Figure 13: Configuration Review Utility ..................................................................... 2-12
Figure 14: Controller Properties General Tab – Slot #, Chassis Size, Name ............ 2-13
Figure 15: Controller Properties General Tab – Definitions & Settings...................... 2-13
Figure 16: Controller Properties Advanced Tab – Fault Handler, Overhead Time Slice 2-
14
Figure 17: Controller Advanced Tab – Definitions & Settings.................................... 2-14
Figure 18: Controller Properties Safety Tab – Select Configure Always Setting ....... 2-15
Figure 19: Input Card – Output Card is Similar ......................................................... 2-16
Figure 20: ENxT Properties – Name, Slot #, IP Address, Keying .............................. 2-16
Figure 21: ENxT Properties – Definitions & Settings ................................................. 2-17
Figure 22: Tree View of Scheduled Ethernet Connections ........................................ 2-18
Figure 23: Adding a Remote ENxT ........................................................................... 2-19
Figure 24: Configuring a Remote ENxT – Name, Slot, Chassis, Keying, and IP ....... 2-20
Figure 25: Remote ENxT Properties – Definitions & Settings ................................... 2-21
Figure 26: Adding a Remote Processor .................................................................... 2-22
Figure 27: Adding a Remote Processor – Definitions & Settings .............................. 2-22
Figure 28: Requested Packet Interval (RPI) Settings ................................................. 2-23
Figure 29: Adding a Local Fanuc Ethernet Robot – Name, IP, and Parameters ....... 2-24
Figure 30: Add a Local Fanuc Ethernet Robot – Name, IP and Parameters - Definitions
& Settings ................................................................................................................... 2-24
Figure 31: Select Unicast for all Connections. Set RPI as listed in Figure 25 ........... 2-25
Figure 32: I/O Configuration View of a 1734-AENTR ................................................ 2-26
Figure 33: Configuring a 1734-AENTR...................................................................... 2-26
Figure 34: Generate the Safety Network Number and Select Unicast ...................... 2-27
Figure 35: Setting the Safety tab ................................................................................ 2-28
Figure 36: Setting the Input Configuration tab ........................................................... 2-28
Figure 37: Setting the Test Output tab ...................................................................... 2-29
Figure 38: Generic Ethernet Module-Global 3 Robot ................................................ 2-30
Figure 39: Generic Ethernet Module ......................................................................... 2-30

© 2019 General Motors Company. All Rights Reserved


iv
Figure 40: Advance Pre-Defined Data Type.............................................................. 2-32
Figure 41: Module Pre-Defined Data Type ................................................................ 2-32
Figure 42: Typical User-Defined Data Type .............................................................. 2-33
Figure 43: UDT Example with Proper Grouping of Member UDTs ............................ 2-34
Figure 44: Tag Example ............................................................................................ 2-35
Figure 45: Tag Scope Overview in the Controller ...................................................... 2-36
Figure 46: Standard Class Tags ................................................................................ 2-37
Figure 47: Safety Class Tags .................................................................................... 2-37
Figure 48: Adding a Controller Tag ........................................................................... 2-38
Figure 49: Adding a Controller Tag – Definition Description...................................... 2-39
Figure 50: Program Scope ‘Generic Tag’ .................................................................. 2-40
Figure 51: Cell Tag with Alias Makes the Tag Unique and Controller Scope ............ 2-41
Figure 52: Logic Using an Alias ................................................................................. 2-41
Figure 53: Do Not Modify Data Types or System Routines with a "Z" Prefix .............. 2-42
Figure 54 Task Organization – GCCS-2 template ...................................................... 2-44
Figure 55: Main Task Properties ............................................................................... 2-44
Figure 56: Scheduled Order of the Programs to be Executed ................................... 2-45
Figure 57: Scheduled Order of the Programs to be Executed - Definitions & Settings .. 2-
45
Figure 58: Unscheduled Programs ............................................................................ 2-46
Figure 59: Safety Task Periodic Settings .................................................................. 2-47
Figure 60: Setting the Period for the Safety Task ...................................................... 2-47
Figure 61: Setting the Main Routine for a Program ................................................... 2-49
Figure 62: Setting the Main Routine for a Program - Definitions & Settings .............. 2-49
Figure 63: RSLogix 5000 User Interface ................................................................... 2-50
Figure 64: RSLogix 5000 User Interface - Definitions & Settings .............................. 2-51
Figure 65: Create an UDT ......................................................................................... 2-52
Figure 66: New UDT with Members Added ................................................................ 2-53
Figure 67: Selecting a Data Type ............................................................................... 2-54
Figure 68: Expanded View of KA070Style Tag .......................................................... 2-55
Figure 69: KA070Tag with DINT used for the Data Type ........................................... 2-56
Figure 70: Choosing the Alias for KA070Tag(C) ........................................................ 2-57
Figure 71: Changing Data Type on the Base Tag ...................................................... 2-58
Figure 72: Effects of Changing the Data Type of the Base Tag on the Alias’ Data Type 2-
58
Figure 73: Searching for an Item ............................................................................... 2-59
Figure 74: Search Function - Definitions & Settings .................................................. 2-60
Figure 75: Find Next Instance of a Tag ..................................................................... 2-61
Figure 76: Search and Replace .................................................................................. 2-62
Figure 77: Cross Reference of a Tag ........................................................................ 2-63
Figure 78: Cross Reference Results ......................................................................... 2-64
Figure 79: Cross Reference Results - Definitions & Settings .................................... 2-64
Figure 80: Cross Reference Results ......................................................................... 2-64

© 2019 General Motors Company. All Rights Reserved


v
Figure 81: Tag Properties – Setting to Produced ...................................................... 2-66
Figure 82: The Connection Button ............................................................................ 2-67
Figure 83: Produced Tag – Setting Max # of Consumers.......................................... 2-67
Figure 84: Tag Properties – Setting to Consumed .................................................... 2-68
Figure 85: Consumed Tag – Setting Connections ..................................................... 2-69
Figure 86: Consumer Tag Connection – Definitions & Settings ................................ 2-69

© 2019 General Motors Company. All Rights Reserved


vi
2. RSLogix 5000 Overview
2.1. Objectives
1. The student will be able to define the organization of Standard and Guard
Logix controllers.
2. The student will be able to define tag scope.
3. The student will be able to define how routines are organized and called.
4. The student will be able to configure Ethernet devices.
5. The student will be able to configure DeviceNet safety modules.
6. The student will be able to configure a safety task period.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-1
2.2. GCCS-1 Systems
The following is an overview of the systems used in the GCCS-1 standard to control
machines and processes as well as provide a way interface with users. We will explore
more detail on specific systems as we go along.

Figure 1: GCCS-1 Systems

2.3. Controller Organization


The family of Rockwell Automation Logix controllers is organized as follows:

 The processor is also referred to as the controller.


 Modules that reside in the PLC (Logix) rack are often referred to as cards.
Examples include: Input card, DeviceNet card, Ethernet card.
 Data in a Logix processor is contained in tags.
 Tags have scope of either program or controller. See Module 2.7 for more details.
 Tags are defined by their data type, either Pre-Defined or User-Defined. See
Module 2.6 for more details.
 Programs are contained in tasks.
 There is always a continuous task. See Figure 2.
 There may also be a safety task if the application is using a GuardLogix
processor. See Figure 3. The safety task is periodic in nature and interrupts the
continuous task. Tasks are discussed further in Module 2.8.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-2
 Routines are contained in programs. A program can have an unlimited number of
routines, limited only by the memory of the processor.
 Ladder logic is contained in routines.
 Programs are limited to 100.

Standard Processor

Controller Scope Tags

Continuous Task

Program 1
Program Scope Tags

Routine 1

Routine 2

Routine 3

Routine 4

Figure 2: Controller Organization for Standard Controller

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-3
Guard Logix Processor

Controller Scope Tags

Continuous Task Periodic Safety Task

Program 1 Program 1
Program Scope Tags Program Scope Tags

Routine 1 Routine 1

Routine 2 Routine 2

Routine 3 Routine 3

Routine 4 Routine 4

Figure 3: Controller Organization for Guard Logix Controller

2.4. Processor and Logix File Naming


The controller and .ACD logix file are named according to the conventions outlined in
GCCS-1 Appendix 1 Naming. The processor name can be renamed by:
1. Right-clicking on the controller. See Figure 4.
2. Selecting Properties.
3. Selecting the General tab in the Controller Properties window.
4. Rename the processor.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-4
Figure 4: Setting the Controller Naming

2.5. I/O Module Configuration


Each I/O module that communicates with the controller must be defined. This includes
local modules, as well as remote modules. The hierarchy in the module configuration
process (from highest to lowest) is:
1. Local ENxT The x is typically a 2 (ENxT)
A. Ethernet
1. Remote ENxT
a. Remote Processor
The first modules to be defined are the cards that are in the local chassis. Note that
the processor and safety partner located in slots 0 and 1 will be configured
automatically by RSLogix when choosing your processor. The chassis type and size
is set up under controller properties on the same page as the processor naming
shown in section 2.4 above.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-5
Modules are added by right-clicking on the chassis under I/O Configuration. Then select
New Module.

Figure 5: Adding I/O Modules to the Local Chassis

To narrow the scope of your search, select the module type and type
vendor.
Then select the correct controller module (Figure 6).

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-6
Figure 6: Selection of the Correct Controller Module to be Added

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-7
Once the correct controller module is selected, there are multiple items that must
be filled in that are specific to the selected module. Some typical examples,
including the processor, Ethernet, I/O cards, and DeviceNet begins in section
2.5.2.
In some cases, it will be necessary to add new modules to your RS Logix
installation, the procedure follows in section 2.5.1.

2.5.1. Adding New Modules


Newly released I/O modules may not be included in your RSLogix installation.
The following is a list of preferred means to obtain a suitable module:
1. Copy an older version of the module from the GCCS-2 template, if it is
available.
2. Use a generic profile if the module cannot be copied from GCCS-2.
3. Install an AOP, if items 1 and 2 cannot be done.
Do NOT install an AOP for any of these modules:
 Network Cards (ENxT, DNB, SDN)
 PLCs
To add new modules to RSLogix will require registering an EDS file , installing an
Add On Profile (AOP), or both.
Installing an AOP is shown in the following steps, for help with registering EDS
files can be accomplished using RSLogix/Studio 5000.
1. Locate and download the desired AOP. You can use Rockwell’s website to
obtain the AOP; however, use Supply Power if possible, it is more straight
forward.

Figure 7: Download Add On Profile zips


2. Extract the entire zip before attempting to install.
3. Double click the setup icon within the extracted folder.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-8
4. The Setup Wizard will open, Click Next.

Figure 8: Starting the Setup Wizard


5. Accept the End User License Agreement.

Figure 9: Accept the EULA

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-9
6. Select Install and click next.

Figure 10: Choose Install


7. Once the Install is complete, a status window will be displayed, click next to
continue.

Figure 11: Install Status Window

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-10
8. The Finish window will open. Click Finish.
Note: You can deselect the “Display RSLogix 5000 Module Profiles Release
Notes” if you want to skip them.
9. Repeat procedure for any other new modules.

Figure 12: Click Finish, Install is Complete

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-11
2.5.2. Configuration Review Utility
Use the GM Configuration Review Utility to verify your configuration or locate
configuration errors present in your project. The utility is Excel-based. The
"Configuration Review Utility" scans an .L5K file, RSLogix 5000 text import/export
file, and outputs the current configuration of the PLC project. Any configuration
issues that are found are highlighted in yellow along with a description of the
problem. An .L5K file is necessary to use the utility.

Figure 13: Configuration Review Utility

Item Description Definition


1 Application Select tooling or conveyors
Type
2 Select Program Choose the *.L5K file to check
3 Check Program Start checking the program
The configuration Review Utility is available on Manufacturing Engineering on
Supply Power and is included on your student disk. GM highly recommends using
this utility.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-12
2.5.3. Controller Properties General Tab – Processor
When possible, copy needed modules from the GCCS-2 template and paste them
into your project. This is faster and easier than using the module dialogs. The
following sections provide examples of configuring Modules in RSLogix I/O
configuration.

Figure 14: Controller Properties General Tab – Slot #, Chassis Size, Name

When configuring the processor, provide the following information on the General tab:
Item Description Definition
1 General Tab General controller properties
2 Name Name of the controller
3 Chassis Type Quantity of slots for ControlLogix Chassis
4 Slot Slot that the processor resides in. Default is 0.
The Safety Partner is defaulted to slot 1.
Figure 15: Controller Properties General Tab – Definitions & Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-13
2.5.4. Controller Properties Advanced Tab – Processor
(1756-L6x, 1756-L6xS, 1756-L7x, 1756-L7xS)

Figure 16: Controller Properties Advanced Tab – Fault Handler, Overhead Time Slice

To configure advanced settings for the processor:


Item Description Definition
1 Advanced Tab Advanced controller properties
2 Fault Handler Program executed when processor faults. Select
program from pull-down menu.
3 System Overhead IMPORTANT: Set to 20 + 5x (# of HMIs) in %. This is
Time Slice the amount of time that the processor spends servicing
internal functions.
Note: L8 Controllers do not have a System Overhead
Time Slice setting.
Figure 17: Controller Advanced Tab – Definitions & Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-14
2.5.5. Controller Properties Safety Tab – Processor

Figure 18: Controller Properties Safety Tab – Select Configure Always Setting

Select Configure Always.


Item Description Definition
1 Safety Tab Safety settings and status.
2 Configure Always IMPORTANT: Always select Configure Always for
GCCS-2 projects. This setting allows replacement of
safe I/O modules while a Safety Signature exists.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-15
2.5.6. Input and Output Card
These are legacy items and are not readily encountered since the PLC in a box was
introduced.

Figure 19: Input Card – Output Card is Similar

2.5.7. Ethernet Bridge Properties


(1756-ENxT)
Note: Copy and paste ENxT modules from GCCS-2 when the module exists.

Figure 20: ENxT Properties – Name, Slot #, IP Address, Keying

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-16
To configure ENXT (Ethernet Bridge Module) properties:
Item Description Definition
1 Name The Ethernet card name is ENet## where ## is
replaced by the two-digit PLC slot number.
2 Slot The slot where the ENxT module is to reside.
The GCCH-1 standard is slot 2.
3 IP Address The IP address for the ENxT. Obtain from PFS
or GMIT.
4 Electronic Electronic keying should be set at Disable
Keying Keying. Use the Change button to access
keying.
Figure 21: ENxT Properties – Definitions & Settings

Important: Set “Rack Connection” or “Comm Format” to None. The “Rack Connection”
setting replaces “Comm Format” in certain modules.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-17
2.5.8. Configuring Remote Devices
After properly configuring the cards that are located in the local chassis, the user
must configure certain remote devices in the I/O Configuration.
On the Ethernet network, the user must configure any scheduled connection such
as Remote Processors, Hard Auto Weld Controllers, Inspection Cameras, and
Robot Controllers. HMIs are not currently scheduled traffic; therefore they are not
configured at this time.
Expand the Local Ethernet ENxT card by left-clicking on the + sign to the left of
the ENxT card. Next, expand the configured connections by left-clicking on the +
to the left of Ethernet. Now a tree view of all the scheduled Ethernet connections
for this ENxT card will be visible (Figure 22).

Figure 22: Tree View of Scheduled Ethernet Connections

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-18
2.5.9. Configuring a Remote Processor for Producer/Consumer
To configure a remote processor for producer/consumer communication, first
create the remote Ethernet card. Right-click on the Ethernet Network, then
select New Module (Figure 23).

Figure 23: Adding a Remote ENxT

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-19
Open the communications item and select the 1756-ENxT, specified for your
project hardware design or the facility’s Blockpoint. After selection, pick a
Revision, then fill in the data as shown in Figure 24 and Figure 25.

Figure 24: Configuring a Remote ENxT – Name, Slot, Chassis, Keying, and IP

IMPORTANT: Communication Format (Comm Format) or Rack Connection


defines how an I/O module communicates with the controller. Choosing a
communication format defines:
 Which configuration tabs will be available, and
 The tag structure and configuration method
Note: Once you create a module, you cannot change the communication format.
To change the communication format, you must delete the module configuration
and recreate it.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-20
To configure a remote EnxT module:
Item Description Definition
1 Name The name for the remote ENxT is
XXXXX_Enet## where XXXXX is the
Remote Cell ID, and ## is the slot number
of the ENXT in the remote chassis.
2 Chassis Size The IP address for the ENxT. Obtain from
PFS or GMIT.
3 Slot The slot where the ENxT module is to
reside in the remote chassis. The GCCH-1
standard is slot 2.
4 Change Access Module Definition options. Use to
access items 5-7.
5 Electronic Electronic keying should be set to Disable
Keying Keying.
6 Rack IMPORTANT: Select None for Rack
Connection Connection.
7 Chassis Size The number of slots in the chassis that the
remote ENxT resides in.
8 OK Accept the Module Definition Options
9 OK Accept all changes.
Figure 25: Remote ENxT Properties – Definitions & Settings

2.5.10. Remote Processor Configuration


With the ENxT communications defined, add the proper processor in the remote
rack so that Producer/Consumer communications can be established. See Figure
26 and Figure 27. The safety partner should be provided automatically as you
select a Guard Logix controller.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-21
Figure 26: Adding a Remote Processor

To establish a remote processor configuration:


Item Description Procedure
1 Remote Click the plus sign (+) to view the remote rack
ExBT configuration
2 Backplane Right click and select New Module to add
processor and partner modules
3 Processors Add the processor be sure to assign the proper
slot..
Figure 27: Adding a Remote Processor – Definitions & Settings

IMPORTANT: Use the processor that is the closest match to the physical remote
processor. The selected processor does not need to be an exact match. For
example a L62S can be used in place of a L72S.
Now the remote processor is available for Producer/Consumer communications.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-22
2.5.11. Configuring Devices for Ethernet IP Communication
Modules should always be copied and pasted from GCCS-2 if available. Consult the
GCCS2 standard template logic to obtain parameters specific for the desired type of
device. The following parameters should be obtained from the template logic specific to
the destination area:
 Input Assembly Instance and Size
 Output Assembly Instance and Size
 Configuration Assembly Instance and Size
Note: Always select Unicast when it is available.
2.5.12. Requested Packet Interval (RPI) Settings
Current RPI settings:
 20ms Standard Input / Output
 20ms Safety Input
 20ms Safety Task / Safety Output
Legacy Tooling:
 60ms Standard Input / Output
 15ms Safety Input
 30ms Safety Task / Safety Output
Legacy Conveyors
 60ms Standard Input / Output
 30ms Safety Input
 60ms Safety Task / Safety Output
Figure 28: Requested Packet Interval (RPI) Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-23
2.5.13. Configuring a Robot for Ethernet IP Communication

Figure 29: Adding a Local Fanuc Ethernet Robot – Name, IP, and Parameters

Note: Use GCCS-2 I/O configuration to determine the module to use based on which
Global robot is installed.

Item Description Definition


1 Name Enter the robot name.
(Format = AAxx1Rxx)
2 Description Open properties for reference Ethernet
module in the I/O Configuration of the
GCCS2 template. The description will
indicate Global and above robot
configurations. Global 1 description is
simply robot. Adjust the Size column to
coincide with actual robot used.
3 IP Address Enter the IP address for the module.
Figure 30: Add a Local Fanuc Ethernet Robot – Name, IP and Parameters - Definitions & Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-24
Figure 31: Select Unicast for all Connections. Set RPI as listed in Figure 25

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-25
2.5.14. Configuring a 1734-AENTR Module
A 1734-AENTR 3 slot chassis is shown as it appears in the I/O Configuration of Studio
5000.

Figure 32: I/O Configuration View of a 1734-AENTR

Open the Properties for the selected 1734-AENTR module. Begin the configuration as
follows:
1. Set the Name
2. Under IP Address, if device is on the Private network, select the Private
Network radio button.
Note: The address should be set on the physical device (rotary switches,
thumbwheels, dip switches etc.)
3. Click the Change button to set:
Electronic Keying to Disable Keying
Connection to None
The Chassis Size (# of I/O modules +1)

Figure 33: Configuring a 1734-AENTR

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-26
4. Set the Safety Network Number
5. On the Connection tab, select Use Unicast Connection over EtherNet/IP.

Figure 34: Generate the Safety Network Number and Select Unicast

6. From the Safety tab set the Safety Input RPI.


7. Click the Reset Ownership button when ownership error is indicated.
Note: Make sure that the gateway in the programming computer is set the same as the
IP address of the Controller (Cell) switch.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-27
Figure 35: Setting the Safety tab

8. Input Configuration tab use GCCS2 settings for any GCCS2 ECS or ECT
panel. Follow prints if ECS or ECT is not used.
All inputs shown on the print connected to a pulse test should be
configured as a Safety Pulse Test and use the test source from the
prints.
All inputs not using Safety Pulse Test should be set to Safety.
Unused inputs should be set to Unused.

Figure 36: Setting the Input Configuration tab

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-28
9. Test Output tab should be set to match the prints.
All Test Outputs used should be set to Pulse Test.
In this example, points 2 and 3 are set as Standard outputs.

Figure 37: Setting the Test Output tab

2.5.15. Generic Ethernet Module


A generic Ethernet module is featured in this section, it is used for Global 1 to Global 3
robots as well as other devices such as I/O blocks and valve manifolds.
1. Set the Name
2. Set the IP Address
3. Set the Connection

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-29
Figure 38: Generic Ethernet Module-Global 3 Robot

4. Set the RPI, refer to GCCS-2 template


5. Always select Unicast

Figure 39: Generic Ethernet Module

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-30
2.6. Data Types – Pre-Defined, Module-Defined, and User-
Defined
 Data types define the organization of data within a tag
 Data types are globally accessible within the controller
 Data types are not limited in number, only by the memory capacity of the
controller
 Data types are categorized as Pre-Defined, Module-Defined, or User-Defined
2.6.1. Pre-Defined Data Types (Basic)
The following is a list of Pre-Defined Data Types and their characteristics. Note
that Pre-Defined Data Types are defined in the controller and are not editable.
 BOOL - Boolean. A single bit which is either on (1) or off (0).
 SINT - Short integer. An eight bit signed number with values of -128 to +127.
Also used to represent an ASCII character
 INT - Integer. A sixteen bit signed number with values of -32,768 to +32,767.
 DINT - Double integer. A thirty-two bit signed number with values of –
2,147,483,648 to +2,147,483,647.
 REAL - A floating point number with values -3.40E38 to 3.40E38.
All other Data Types are comprised of the basic Pre-Defined data types
listed above.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-31
2.6.2. Pre-Defined Data Types (Advanced)

Figure 40: Advance Pre-Defined Data Type

In
Figure 40 above, the Timer data type is an Advanced Pre-Defined data type and
contains multiple basic data types including BOOL’s and DINT’s

2.6.3. Module – Defined Data Types


Module-defined data types are pre-defined and are used in the tags that are
automatically created when I/O modules are added to the I/O Configuration.

Figure 41: Module Pre-Defined Data Type

In Figure 41 above, a 1756-DNB was added to the I/O Configuration. Automatically,


corresponding controller-scoped tags have been created in the controller with the

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-32
Module Data Type for the DNB. At the same time, an array of DINT’s has been created
that will contain data for the module.

2.6.4. User-Defined Data Types


 Comprised of Pre-Defined (1), or other User-Defined data types(2)
 Module-Defined are technically possible but are not currently used in GCCS-2
UDTs.
 Collects User Data into a single organized tag
 Reduces the number of tags in the controller
 Ensures that logic is standard and consistent

Figure 42: Typical User-Defined Data Type

User-defined data types are created by the end user to compress multiple pieces
of data into a single tag. Each piece of data can be a pre-defined data type, a
module-defined data type, or other user-defined data types.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-33
In Figure 42 above, the first two Data Type entries are DINT’s and the rest are all
other user-defined data-types. If there are any errors in the user-defined data
types, there will be question marks (????) shown for the Data Type Size (1). This
could be due to a single item not completely filled out, or possibly an error in
another data type being used in this data type.
UDTs should always be built by grouping like datatypes together. Begin with
BOOLs, then SINTs, then INTs, then DINTs then sub UDTs. UDT memory is
grouped in 4 Byte increments. A Bool followed by a DINT will allocate 4 bytes for
the BOOL and 4 Bytes for the DINT. 32 BOOLs grouped together followed by a
DINT will allocate 4 bytes for the BOOLs and 4 bytes for the DINT. The following
is an example of a UDT created by GM Vehicle Systems, note the order of its
member datatypes.

Figure 43: UDT Example with Proper Grouping of Member UDTs

User Defined Tags in GCCS-1 always contain a revision level in the Description
Box so that future users will know when the data type is at the proper revision
level for updates.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-34
Many User-Defined Data Types are created by GM for use in logic projects.
Do NOT modify system data types or system routines. Both are identified
by the z designation in the prefix.
(Examples: zZ999_Diagnostics, za_Action)
2.7. Tags
A tag is a named memory area that holds data of a defined data type. Tags
have both scope and class.

Program Tag Alias for Base Tag Data Type

Figure 44: Tag Example


In the tag example shown above, the Program Tag “Cell” is an Alias for
“AA065B1Cell(C)” controller tag. The controller tag is indicated by the (C) suffix.
The Base Tag “AA065B1Cell(C)” is the tag that contains the actual data, often the
same as the Alias for. Finally, the data type “zc_BodySafetyCell” determines the
structure of the tags data. When a tag is aliased, the Data Type used will always
come from the base tag.

2.7.1. Tag Scope


Tags have “scope” which defines how visible the tag is and defines which
routines can access the tag’s data. There are two types of scope tags;
controller scope and program scope.
 Controller scope tags can be accessed from anywhere inside the controller
and can be accessed by other controllers via producer-consumer
communication. All programs can see Controller Tags.
 Program scope tags are only visible within the program in which they are
contained.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-35
In Figure 45 below, the controller scope tags are visible to the routines in both
Program 1 and Program 2. Program scope tags are different. The program
scope tags in Program 1 are visible only to Program 1. The program scope
tags in Program 2 are visible only to Program 2. Note that there may be tags
with the same exact name and data type in Programs 1 & 2 because these
are visible only to the program in which they reside. Consequently, there are
no duplicate tags within a program. There are no limits to the number of tags
that can be created; the size of the controller memory is the limiting factor.

Figure 45: Tag Scope Overview in the Controller

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-36
2.7.2. Tag Classes
Tags are one of two classes; Standard or Safety. Only Safety class tags can be used by
programs which reside in the safety task. Standard class tags are used anywhere within
the main task programs. See Figure 46.

Figure 46: Standard Class Tags

All tags within the safety task have to be of the class “Safety”, as well as any controller
tags accessed by the safety task. See Figure 47.

Figure 47: Safety Class Tags

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-37
2.7.3. Tag Aliasing
Tag aliasing points a tag to another tag so that the two tags have the same
meaning and share the same data. The data resides in the base tag. GCCS-1
base tags are always controller tags.
Tag aliasing is used extensively in GCCS-2 in the following areas:
 Bodyshop
 Conveyance outside of tooling
 General Assembly
 Metal Stamping
Paint has minimal use of alias tags; primarily for HMI configuration GCCS-2.
2.7.3.1. Benefits
o Logic can be written with generic tags such as ‘cell’ or ‘robot’ then aliased
to the specific cell or robot. This is faster and easier than searching and
replacing each instance.
o The same logic can be used over and over in driver files. Tags are then
only aliased to the specific piece of hardware which makes it unique.
o The alias of a tag is not dynamic; it can only be modified offline.
2.7.4. Setting up an Alias
Create the correct base tag if it does not exist in the controller tags. The base tag
must be created before the “Alias For” can be pointed. See Figure 48.

Figure 48: Adding a Controller Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-38
Item Description Procedure
1 Scope Select Controller Scope, displayed with controller icon as
shown.
2 Edit Tags Tab Before editing Tags, be sure this tab is selected.
3 Enter Tags Row Type in the Name Field the tag to be added.
4 Select Row When copying tags form another program, select the box in
Button – Enter front of the enter tags row then paste. This will bring in all
Tags Row information with the tag including the datatype.
5 Controller Base Enter the tag name and datatype from the pull-down menu.
Tag The Program tag will point to this base tag.
Figure 49: Adding a Controller Tag – Definition Description

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-39
In Figure 50 below, the Program Scope tag ‘Cell’ does not refer to any particular
cell since it is a program scope tag that can only be viewed inside the current
program. In this example, AAxx1 is shown in the Scope selection box in the
upper left corner. When creating an alias for a new tag, it is not important to
select the proper data type. After an alias is set, the tag will automatically take on
the same data type as the Base Tag.

Figure 50: Program Scope ‘Generic Tag’

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-40
In Figure 51 below, the alias has been added to the tag ‘cell’ which now makes
any instructions using the bits inside Cell the same as if they were using
AAcc1Cell. The (C) after the tag indicates that this tag is a controller-scoped tag.

Figure 51: Cell Tag with Alias Makes the Tag Unique and Controller Scope

In Figure 52 below, the logic was written to be generic by using the tag “Cell.”
After the Cell tag has been aliased, the logic is now specific to AAcc1Cell, as
shown above. The alias’ base tag shows up below the program scoped tag with
<> around it.

Figure 52: Logic Using an Alias

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-41
2.7.5. Modifying Tags and User-Defined Data Types (UDTs)
Do not modify system data types or system routines. Both are identified by the z
designation in the prefix. (Examples: zZ999_Diagnostics, za_Action) See Figure
53.

Figure 53: Do Not Modify Data Types or System Routines with a "Z" Prefix

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-42
2.8. Tasks – Main and Safety
Each controller program structure is based on cell component data configured
during the software generation process. The GCCS-1 standard mandates that the
logic structure consist of at least one task, this is the Main Task. The Main Task
is a continuous task containing control programs for cell(s), stations and related
automation components.
The Main Task executes all programs, then starts over, and calls all programs
except those in the Safety Task. Projects using GuardLogix also require a “Safety
Task.” The Safety Task monitors all of the cell safety I/O systems. The Safety
Task is periodic, interrupts the Main Task, and calls all safety programs.

2.8.1. Main (Continuous) Task


The first program of Main Task is the MCP (Main Controller Program). The MCP
Program covers MCP Status, Device Net status, Controller Local Status and
Controller Safety Status, Constants. It is followed by programs for cells, stations,
robots, weld controllers, HMIs, etc.
The Cell Program deals with the cell-level aspects of the logic structure. These
include mapping I/O, mapping HMI, interlock statuses, modes, Gate Boxes,
Perimeter Guards, HMI configuration, and Remote Controller Status.
Each of the remaining programs of the task will handle station or component
specific aspects of the logic structure.
The programs of the Main Task, Figure 54, are organized as follows:
1. Main Task
 MCP Program
 Cell 1 Program
 Cell 1 Station Programs
 Cell 1 Robots
 Cell 1 Other Programs
 Cell 2 Program
 Cell 2 Station Programs
 Cell 2 Robots
 Cell 2 Other Programs
 Cell 1 HMIs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-43
 Cell 2 HMIs
 PFE (When Equipped)

Figure 54 Task Organization – GCCS-2 template

 All GCCS-1 programs have a continuous task named Main Task.


 The Main Task schedules the order in which the contained programs execute.
 Programs in a task execute sequentially, one at a time.
The end user selects this order from the task properties window as shown below by
right-clicking on Main Task and selecting Properties (Figure 55).

Figure 55: Main Task Properties

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-44
Figure 56: Scheduled Order of the Programs to be Executed

The Program Schedule (Figure 56) can be adjusted from the Main Task
Properties Program Schedule screen as follows:

Item Description Definition


1 Program Select to adjust or view program
Schedule schedule
2 Add Adds unscheduled programs to the
scheduled programs list
3 Remove Sends scheduled programs to
unscheduled list
4 Scheduled Programs that will execute in the order
of the list
5 Move Moves the selected program Up/Down
(Up/Down) in the list selected
Figure 57: Scheduled Order of the Programs to be Executed - Definitions & Settings

 Unscheduled programs will not be executed.


 Cross reference will list instances that occur in unscheduled programs.
 Any errors present in unscheduled programs will be included when verifying the
controller.
 GCCS reference routines are found in the Unscheduled Programs area of the
application.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-45
Figure 58: Unscheduled Programs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-46
2.8.2. Safety Task
Guard Logix projects also have a second task that is periodic in nature and will
interrupt the Main Task at a timed interval. The rate of the periodic safety task is
calculated by the requirements to stop the tooling in a pre-established maximum
amount of time. Refer to Figure 59.

The following are GCCS-1 rules for the Safety Task:


Area Input RPI Periodic Rate Priority Watchdog
Bodyshop
Conveyors
Paint
20ms 20ms 1 18ms
General
Press
Global
Figure 59: Safety Task Periodic Settings

Figure 60: Setting the Period for the Safety Task

Figure 60 shows the proper Periodic Rate setting for a Body shop Guard Logix
safety task. Use the settings in Figure 59 for your specific application.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-47
2.8.3. Safety Task Organization
The Safety Task consists of Cell Safety Programs. These programs handle all of
the safety-related I/O aspects of the logic structure. A safety program will exist
for each cell in the Main Task.
The programs of the Safety Task, (Figure 54), are organized as follows:
1. Safety Task
a. Cell 1 Safety Program
b. Cell 2 Safety Program

2.9. Programs and Routines


 Each program automatically executes a single routine which is assigned as the
Main routine.
 In GCCS-1, the routine is always named A000_Main
 The order of the routines displayed in the controller organizer is alphabetical and
is not necessarily the order in which the routines will execute. See Figure 61.
GCCS-1 utilizes prefixes to obtain the organizer order desired. (Examples:
B001_, F010_, S010_)
 Jump Sub Routine (JSR) instructions in the A000_Main routine set the execution
order of the logic
 The A000_Main in station programs will call the S000_Sequence routine. This
routine will call all station action routines, as well as build the scroll list for HMI
manual operations.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-48
Figure 61: Setting the Main Routine for a Program

To set the Main routine for a program, proceed as follows:


Item Description Definition
1 Program Right click program and select Properties.
2 Main Routine The small #1 on the ladder icon indicates that
the routine is assigned as a main routine.

3 Main Select the routine desired to be the main routine.


For GCCS-1, this is A000_Main.
Figure 62: Setting the Main Routine for a Program - Definitions & Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-49
2.10. Studio 5000 Navigation
RSLogix 5000 is the primary software used to develop, download, and monitor
the logic used in Control Logix controllers. After launching RSLogix 5000, the
user will be presented with a screen as shown below in Figure 63.

Figure 63: RSLogix 5000 User Interface

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-50
Item Description Definition
1 Cut, Copy, and Paste Use on Rungs, Programs,
Routines, and Data Types.
2 Processor Status Run, Program, Online, Forces,
Edits, and Safety Task Status
3 Processor Indicator Lights Duplicates the front of the
processor
4 Controller Organizer List of Tasks, Programs,
Routines, Tags, Data Types, and
I/O Configuration
5 Ladder Caret Indicates with a colored square
the rung that is selected.
6 Editing Window Edit Tags, Logic, UDTs. Displays
Cross Reference Results
7 Ladder Element Toolbar All of the instructions available
for the current processor.
Includes branch and new
rung tools.
8 Controller Organizer Toggles display of Controller
Display Button Organizer. Especially handy
when looking at lengthy ladder
rungs.
9 Verify Routine, The tool on the left verifies the
Verify Controller current routine. The tool on the
right verifies the entire controller.
10 RSLogix Status Bar Indicates controller name. The
active program and routine are
displayed next.
Note: If the file name is not the
same as the controller, the
controller name will be followed
by ‘in’ and then the file name.
Figure 64: RSLogix 5000 User Interface - Definitions & Settings

In addition to the processes listed in Figure 64, another method of inserting rungs,
branches, and instructions is available. Right click on a rung, then select Add Ladder
Element and a list of available instructions will display. Select the desired instruction
and click OK. You can also access the ladder element list by typing Alt+Insert, selecting
the desired item, and clicking OK.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-51
2.11. Exercises
2.11.1. Exercise 1 Creating UDTs and Tags.
The following exercise demonstrates the basics of creating UDTs and Tags.
1. Open the exercise project Core02Exercises in RSLogix5000
2. Create a new datatype named up_Style with the members WriteRequest,
WriteSetup, and WriteComplete all members are of type DINT.
a) In the controller organizer, click on Datatypes and select User-
Defined
b) Right click and select New Data Type… Refer to Figure 65.
c) Set the UDT Name to up_Style

Figure 65: Create an UDT


d) Click in the Name column of the first row and set the first member to
WriteRequest. Refer to Figure 66.
e) Click on the Data Type column of the first row, click […] and select
DINT from the data type dialog box
f) Repeat steps d-e for member names WriteSetup and
WriteComplete.
g) Click OK.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-52
Figure 66: New UDT with Members Added

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-53
3. Create a controller tag named KA070Style of the type “up_Style.”
a) Open the controller tag database and select the Edit Tags tab
b) Move the cursor to the bottom of the tag list to the row with the tag
icon in the left margin
c) Click in the Name column on that row and set the name to
KA070Style
4. Click in the Data Type column, click […] and select up_Style from the data
type dialog box (when making a tag edit, you must move off the current
row to accept the edit). Refer to Figure 67.

Figure 67: Selecting a Data Type

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-54
a) Expand the new KA070Style tag by clicking on the “+” sign to its left.

b) Notice that KA070Style contains three members, WriteRequest,


WriteSetup, and WriteComplete.

Figure 68: Expanded View of KA070Style Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-55
5. Create controller tag name KA070Tag of type DINT
a) Open the controller tag database and select the Edit tab.
b) Move the cursor to the bottom of the tag list to the row with tag icon
in the left margin.
c) Click in the Name column on that row and set the name to
KA070Tag.
d) Click in the Type column, click […] and select DINT from the data
type dialog box. (Default datatype may already be DINT)
e) Expand the new KA070Tag by clicking on “+”.
Notice that KA070Tag is a DINT and contains 32 bits (BOOLS). See Figure 69.

Figure 69: KA070Tag with DINT used for the Data Type

6. Save the project.


End of Exercise 1

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-56
2.11.2. Exercise 2 Creating a Tag Alias.
This exercise demonstrates how to create a tag alias.

1. Continue in the exercise project Core02Exercises in RSLogix5000


2. Create a tag named FriendlyAlias in the KA070 program tags. Point the
Alias For to the controller tag KA070Tag.
a) Open the KA070 program tag database and select the Edit Tags
tab. See Figure 70.
1. Move the cursor to the bottom of the tag list to the row with
tag icon in the left margin.
2. Click in the Name column on that row and set the name to
FriendlyAlias.
3. Click in the Alias For column, click [], locate the Controller
Scoped Tag KA070Tag and double-click on it.
4. Click on the next row in the program tag database (when
making a tag edit, you must move off the current row to
accept the edit).
3. Notice the following about the new tag FriendlyAlias:
a) The Alias For column shows KA070Tag(C). KA070Tag is the name
of the tag the alias is pointing to.
b) The Base Tag column shows KA070Tag(C). This shows the base
tag if the tag alias points to another tag alias.
c) The (C) shows that the tag KA070Tag is a controller tag.
d) You cannot change the datatype in the Type column because the
tag alias inherits the datatype of the base tag.

Figure 70: Choosing the Alias for KA070Tag(C)

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-57
4. Change the controller tag KA070Tag datatype to INT.
5. Open the controller tag database and select the Edit Tags tab. See
6. Figure 71.
a) Click in the Type column of the KA070Tag row.
b) Click […] and select INT from the data type dialog box.
c) Accept the tag edit by moving off the row.

Figure 71: Changing Data Type on the Base Tag


7. Verify the datatype of the KA070 tag FriendlyAlias
a) Open the KA070 program tag database.
Notice that the datatype of FriendlyAlias has changed to INT. This is because the tag
alias inherits the datatype of the base tag. Refer to Figure 72.

Figure 72: Effects of Changing the Data Type of the Base Tag on the Alias’ Data Type
8. Save the project.
End of Exercise 2

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-58
2.12. Searching the Logic
Searching is the most common method of finding the location of logic
instructions being referenced from a specific tag. The search function is located
at the top of the menu bar, or by pressing CTRL+F. The Search screen will
appear as shown in Figure 73.

Figure 73: Searching for an Item

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-59
Item Description Definition
1 Find What Enter in the address of the
tag or text that you are
searching for, such as
Cell.Mode.AnyStaAuto or
Cell.Safety.NoEStops.
2 Find Where Select from the following
options:
 This routine only
 All routines in the
current program
 All routines in the
current task
 All routines in the
project
3 Wrap, Direction, Configures direction and if
Match Whole Word Only search will wrap. Allows
search for exact phrases
only.
4 Components and Options Provides choices to define
the search.
5 Find Within Toggles view of
components and options so
that search options can
be set.
Figure 74: Search Function - Definitions & Settings

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-60
To search for a tag, type in the tag you wish to find and select Find Next. The
next occurrence in the logic will be displayed as shown in Figure 75.

Figure 75: Find Next Instance of a Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-61
Search and Replace (Figure 76) is available only in offline editing. It is
recommended that a backup file be created before Search and Replace is
utilized. Caution should be exercised when using Search and Replace as
unexpected results may occur. So, ensure the search settings are correct for the
intended outcome.

Figure 76: Search and Replace

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-62
2.13. Logic Cross Referencing
 Logic cross referencing is a way of locating programs or tags within a logic
project.
 Cross referencing is the method most commonly used for finding specific
information about routines and tags in the RS Logix controller.
 Cross referencing a specific routine, usually from the controller organizer, will
show where the routine is used in the controller. This is useful when locating
embedded subroutines (JSR’s).
 Cross referencing can also be used on Tags both at the controller and program
scope levels. When a Tag is cross referenced, all the data within the associated
tag is also cross referenced and the location of the data within the tag is
displayed at the Program/Routine/Rung levels.
To cross reference a tag, right-click on the tag and select ‘Go To Cross
Reference . . .’ (Figure 77).

Figure 77: Cross Reference of a Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-63
Figure 78: Cross Reference Results

Item Description Definition


1 Element The type of instruction using the tag.
2 Container Program that the instruction is used in.
3 Routine Routine that the instruction is used in.
4 Location Actual rung that the instruction is used in.
5 Reference Actual tag name used for each use.
6 Destructive Displays “Y” for destructive, “N” for non-
destructive. The reference is destructive if
data value of the tag can be changed by the
execution of instruction. The reference is
non-destructive if the instruction only uses
or reads the value and cannot modify it.
Figure 79: Cross Reference Results - Definitions & Settings

Double-clicking a row in the Cross Reference result window will navigate the view
to that use in the logic. Remember when searching for duplicate alarm, prompt,
or scroll list trigger numbers that duplication occurs only when more than one use
of alarm, prompt, or scroll list number occurs in the same program.
Figure 80 is the result of cross referencing kalarm[501]. Notice that only the last
thee lines have their Reference column equal to kalarm[501]. The Container
column shows that they are all in different programs. In this case, there is no
duplicate use of kalarm[501].

Figure 80: Cross Reference Results

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-64
2.14. Producer/Consumer Communications
 Allows sharing of controller tags between controllers.
 Identifies tags to be produced; no destination is required.
 Creates consumed tags, points to produced tags.
 A produced tag can be consumed by multiple consumers (This is not preferred).
 No logic is required for basic Producer/Consumer operation.
 When Producer/Consumer is used across Ethernet/IP, it is produced at the
Request for Packet Interval (RPI) setting.
 May be across the backplane when controllers are in the same chassis.
 Producer/Consumer traffic occurs independently of the controller mode.
Producer/Consumer operates when either controller is in Run, Program, or
Faulted modes. When the producing controller is in Program or Faulted mode,
produced data will remain in the last state when the Producer/Consumer
connection was lost.
 Producer/Consumer communication occurs asynchronous to program scan.

The process begins with setting up the producer, then the consumer. It
concludes with downloading both programs to the controllers.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-65
2.14.1. Setting up the Producer
To set up a Producer/Consumer connection, right-click on the controller scope tag
and select Edit Properties. The window that comes up will look similar to the one
shown in Figure 81. Under Type:, select Produced instead of Base.

Figure 81: Tag Properties – Setting to Produced

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-66
After selecting Produced, click the Connection button (Figure 82).

Figure 82: The Connection Button

When the Connection tab appears, select the number of consumers of this tag
(Figure 83). The default is always one consumer for each producer. It is not
necessary to define the consumer at this point.
Note: Always set Max Consumers to the number of consumers plus 1. Use 2 for one
consumer.

Figure 83: Produced Tag – Setting Max # of Consumers

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-67
2.14.2. Setting up the Consumer(s)
To set up a consumed tag, right-click on the controller scope tag and select Edit
Tag Properties. The window that comes up will look similar to the one shown in
Figure 84. Under the selection of Type:, select Consumed instead of Base.
The data type must match between the producing controller and the consuming
controller.

Figure 84: Tag Properties – Setting to Consumed

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-68
Figure 85: Consumed Tag – Setting Connections

Item Description Definition


1 Producer Select correct producer from predefined list
established by the I/O connection in Module 2.3.
2 Remote This is the name of the tag in the remote controller.
Data
3 RPI Requested Packet Interval – the speed at which the
consumed tag must be updated at a minimum. In
GCCS-1, the consumed tag RPI is always 60ms.
Figure 86: Consumer Tag Connection – Definitions & Settings

2.14.3. Downloading Producer/Consumer Programs


After the producer and consumer tags are set up properly, both programs must
be downloaded to the controllers. If the connections are set up properly in the I/O
configuration and the data types are matched in both controllers, the controllers
will automatically establish the Producer/Consumer connection and begin to
transfer data.
If a problem occurs with the connection, a yellow triangle with an exclamation
point inside of it will appear next to the remote ENXT in the I/O configuration.
Clicking on the ENXT will give the user enhanced data on what is causing the
problem, aiding in trouble diagnosis.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-69
2.15. Review

1. Define the organization of Guard Logix controllers.


2. How are Ethernet devices configured?
3. Define Tag Scope.
4. Define how routines are organized.
5. What routine calls many of the routines in the program?
6. What routine calls action routines and builds the scroll list for manual
motions?
7. How is the Safety Task Period set?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 2-70
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 3: Naming
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Revised graphics and exercise directions.
Synchronized to G16 with Powertrain and
6-18-15 6.0 J. Hocking
EtherNet I/O.
8-29-19 7.0 J. Hocking Minor routine and Data Type updates

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application
of the materials in this manual.
The examples, diagrams, and charts in this manual are included solely for
illustrative purposes. Because of the many variables and requirements
associated with any particular safety situation, the General Motors Company
expressly disclaims all express and implied warranties relating to the
materials in this manual, including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
3. Naming ................................................................................................ 3-1
3.1. Objectives ............................................................................................................ 3-1
3.2. Software Naming Convention ............................................................................ 3-2
3.3. Action / Result Naming Conventions ................................................................ 3-2
3.4. Device Naming .................................................................................................... 3-4
3.4.1. Panel Devices ............................................................................................. 3-4
3.4.2. Field Devices .............................................................................................. 3-4
3.4.3. Switches and Cylinders............................................................................... 3-4
3.5. IEC Naming Standard and Logix Naming ......................................................... 3-6
3.5.1. ControlLogix Program and PLC Processor Naming .................................... 3-7
3.5.2. HMI ............................................................................................................. 3-8
3.5.3. Task ............................................................................................................ 3-8
3.5.4. Program ...................................................................................................... 3-9
3.5.5. Robot ........................................................................................................ 3-10
3.5.6. Routine ..................................................................................................... 3-10
3.5.7. Module ...................................................................................................... 3-12
3.5.8. User Defined Datatype (UDT) ................................................................... 3-13
3.5.9. Safety User-Defined Data Type (UDT) ..................................................... 3-14
3.5.10. Add On Instruction .................................................................................. 3-14
3.5.11. Tags ........................................................................................................ 3-14
3.5.12. Exercise 1: Changing Routine and Tag Names and the Effects on
the Logic ............................................................................................................. 3-16
3.6. Review ............................................................................................................... 3-17

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Action/Result Naming Conventions ...................................................3-3
Figure 2: Panel Devices ....................................................................................3-4
Figure 3: Field Devices .....................................................................................3-4
Figure 4: Switch and Cylinder Naming ..............................................................3-5
Figure 5: Part Present Naming Guide ...............................................................3-5
Figure 6: Controller Naming ..............................................................................3-7
Figure 7: Department IDs ..................................................................................3-7
Figure 8: File Naming........................................................................................3-8
Figure 9: Program Naming ................................................................................3-9
Figure 10: Routine Naming .............................................................................3-11
Figure 11: Module Naming ...............................................................................3-12
Figure 12: UDT Naming ...................................................................................3-13
Figure 13: Safety UDT Naming ........................................................................3-14
Figure 14: Tag Name Prefixes .........................................................................3-15

© 2019 General Motors Company. All Rights Reserved


iii
3. Naming
3.1. Objectives
1. The student will be able to describe the Action/Result naming convention.
2. The student will be able to list the effects of changing a tag name or routine
name in RSLogix.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-1
3.2. Software Naming Convention
All software names used should match the hardware names used. This applies to all
names provided even if they are not consistent with the standard naming rules.
3.3. Action / Result Naming Conventions
The GCCH-1 standard provides a list of action results for various devices as shown
below. These names are printed on the component labels, found in the Logix
program, and are displayed on the HMI screens.
Pushbutton / Actuator Switch / Indicator
Mech. Function
Work Load/Unload Work Load/Unload
Clamp
Contactor
Gate
Pierce CLOSE OPEN CLOSED OPENED
Weld Gun
Weld Gun Backup

Weld Gun Retract

Dump
Ejector
Index
Locator
Pivot
ADVANCE RETURN ADVANCED RETURNED
Pre-Loader
Slide
Transfer
Trunnion
Turnover

Shot Pin
Locating Pin ENGAGE DISENGAGE ENGAGED DISENGAGED
Latch

Stops
Transfer Press
RAISE LOWER RAISED LOWERED
Vertical Slide
Lifter

Lifter LOWER RAISE LOWERED RAISED

3-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Pushbutton / Actuator Switch / Indicator
Mech. Function
Work Load/Unload Work Load/Unload

Turntable FORWARD REVERSE IN POSITION IN POSITION


Figure 1: Action/Result Naming Conventions

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-3
3.4. Device Naming
Devices (other than pushbuttons, actuators, detectors, and indicators) are also
named.
3.4.1. Panel Devices
Inside panels and cabinets, devices are named so as to be easily found on the
matching wiring diagram, as shown in Figure 2.
Device Type Device ID
Safety Relay ExxxSR
Control Relay ExxxCR or FxxxCR
Ethernet Switch ENSx
Circuit Breaker ExxxCB
Fuses ExxxFU
Motor Starter ExxxMx
Motor Starter Overload ExxxMOL, FxxxMOL
Figure 2: Panel Devices

Where:
xxx = Sheet number and line number
x = Number from 1 - 9
3.4.2. Field Devices
Devices outside of the cabinets, such as valve manifolds, input / output blocks, etc.,
are also named so as to be readily identifiable. See Figure 3.
Device Type Device ID
Pneumatic Valve Manifold PMx
Hydraulic Valve Manifold HMx
IP67 Input/Output Block BKxx
Motor Mx
Figure 3: Field Devices

Where:
xx = Two digit number from 01 - 99
x = Number from 1 - 9
3.4.3. Switches and Cylinders

3-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The MD-1, Module 2 also specifies names for switches and cylinders as shown in
Figure 4.
Device Type Device ID
Cylinder Cxx
Proximity Switch PXx
Limit Switch LSx
Photo-electric Switch PEx
Part Present Pyyx
Figure 4: Switch and Cylinder Naming

Where:
x = digit number from 1 to 9
xx = digit number from 01 to 99
yy = switch type from this table

Figure 5: Part Present Naming Guide

For example:
C02PX1 Cylinder #02, Home Position Switch
C02PX2 Cylinder #02, Work Position Switch
PPX1 Part Present Proximity Switch #1
PLS2 Part Present Limit Switch #2

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-5
3.5. IEC Naming Standard and Logix Naming
The IEC-61131.3 standard specifies that components with names (like PLC programs or
HMIs), are permitted to use upper- or lower-case characters, numbers, and the
underscore ( _ ) mark in the name itself. They also have the following requirements:
 Names must start with an alphabetic character or underscore
 Maximum length of 40 characters — nested UDTs have a maximum length of 40
characters per nest level
 Cannot have consecutive or trailing underscores, or spaces
 Are case insensitive — ABCDE is identical to AbCdE

The following items have names:


 Controllers
 HMIs
 Tasks
 Programs
 Routines
 Modules — some I/O modules (discrete I/O) do not require names
 User-Defined Data Types (UDTs)
 Tags

3-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3.5.1. ControlLogix Program and PLC Processor Naming
The programmable logic controller and program file naming shall use the following
format:

Figure 6: Controller Naming

Note: All controller naming must be in upper case letters.

Department ID (XX in Figure 5 above) is selected from the following identifiers:


Identifier Definition
GA General Assembly
CG Conveyor Group
BA Body Assembly
PD Paint Department
MF Metal Forming
MA Metal Assembly
PT Global Propulsion
Systems
WF Worldwide Facilities
Figure 7: Department IDs

Example: The project file name for BA_AB030B01 will be BA_AB030B01.ACD.


Note: The ACD file extension indicates a non-user readable format that can only
be viewed inside the RSLogix 5000 software.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-7
3.5.2. HMI
HMI application files shall be named as follows:

Field Name ‘Controller’ ‘HMI#’


Description Logix controller HMI Program File name (defined later)
name as defined
previously
Sample BA_AB030B01 HMI1
Figure 8: File Naming

For example, the configuration file of the first HMI attached to the previous PLC
(BA_AB030B01) would be BA_AB030B01HMI1
Note: The ACD file extension indicates a non-user readable format that can only be
viewed inside the RSLogix 5000 software.

3.5.3. Task
Since we are using only one continuous task, we use the default name: “MainTask”.
In Guard Logix applications, a periodic task, the SafetyTask, exists for safety.

3-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3.5.4. Program
Each type of controller program has its own name as shown in Figure 9.

Main Task

MCP

1st Cell

Station-1st cell

Robot 1st Cell

2nd Cell
Weld Controller

Station-2nd Cell

Robot-2nd Cell
1st HMI

Safety Task

1st Cell Safety


Program

2nd Cell Safety


Program

Figure 9: Program Naming

Remember to correct the ASCII name for programs that you rename. The ASCII
name is configured in the Parameters routine of each program.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-9
3.5.5. Robot
Robot naming is similar to controller naming. Typically, the robot is named with the
station # with the addition of Rxx. This also depends on how the robot(s) is (are)
labeled at the time of build. Also, there may be more than one R01 in the cell based
on different stations. In the HMI program, the Robots are numbered sequentially
from R01 to R24.

3.5.6. Routine
Routines in the RSLogix5000 controller organizer are currently sorted alphabetically.
Routine names consist of a prefix and a short descriptive name of what the routine
does. This allows proper ordering of routines. See Figure 10.

3-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Format * (Prefix ID) ###_ “Description”

Letter Description
A Main
B Mapping/Config
Controller/Module
C
Diagnostics
F Magnetics Diagnostics Three digits
G Gatebox/Guards followed by
an
J Job Data / Shift Register underscore.
Short name for what
M Modes
the routine does.
P HMI Screen Support For ‘S’
Description
prefixes,
S Sequence (Action)
skip by 5’s Multiple words are
Turntable Common to allow titlecase.
T
Routines easy
reordering
Robot & Other Device (005, 010,
V
Common Routines 015, …)

W Weld Common

X Standards routines

Standard system
Z
routines
B 001_ MapInputs
Example
S 010_ CloseClamp
Figure 10: Routine Naming

Where:
 Prefix “X” and “z” are controlled by Standards
For example:
 B001_MapInputs
 S010_CloseClamp

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-11
3.5.7. Module
Modules listed in the Logix I/O Configuration area of the controller should be named.
This includes modules that are accessed across Ethernet in remote chassis.
Modules shall be named as shown in Figure 11.

Field Name ‘RemoteControl’_ ‘Type’ ‘Slot#’


Optional? Yes No No
Module Abbreviation
1756-DHRIO DHRio
1756-DNB DNet 2 digit
If module is in a
zero
remote rack, this 1756-
ENet padded
is the 1st Logix ENET/ENxT
Description slot
controller name in
1756- number
the remote Mot
chassis. MO2AE/MO8SE
1756-L1/L55 See
Controller
1794-L3X naming
DNet 09
Sample
SQ060_ ENet 02
Figure 11: Module Naming

For example:
 DNet09
 SQ060_ENet02

3-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3.5.8. User Defined Datatype (UDT)
UDTs will have a short descriptive name of what the UDT represents. A prefix will
be added to allow organizing their usage as shown in Figure 12.
*
Format ‘Description’
(Prefix)
Prefix Used to create…

zc Controller scoped tags

HMI tags obtained by the Global


zh
Message Extractor Short name for
zp Program scoped tags what the UDT
does. Multiple
Device tags (see lesson on words are
zd
Devices) titlecase. (Title
Description
uc Controller scoped tags (User UDT) case is when
each major
ud Device tags (User UDT) word in the
uh User-Defined for HMI Screen text starts with
a capital letter)
up Program scoped tags (User UDT)
u Either scope (User UDT)
Module I/O and other (Submember
zz
UDTs used by Standard UDTs)
Figure 12: UDT Naming

UDT examples:
 zc_Station
 zz_StaMode
Notes: Any prefix that begins with a letter ‘z’ is not to be modified. Do not create
UDTs using any prefix that begins with the letter ‘z’.
For custom UDTs, use the prefixes “uc”, “ud”, “up”, or “u”. The prefix “s_uc” is
the only currently available custom safety UDT.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-13
3.5.9. Safety User-Defined Data Type (UDT)
The UDTs in Figure 12 are specific for naming Safety UDTs.
Format * (Prefix) ‘Description’
Description Prefix Used to create … Short name for what the
UDT does. Multiple words
s_zc Safety, controller scoped tags
are title case.
s_zd Safety, device tags
s_uc Safety, controller-scoped tags (User
UDT)
s_zz Safety, other UDTs.
s_zc_ For examples, see below. Body safety cell
Sample
s_zd_ MCP W/O HMI
Figure 13: Safety UDT Naming

For Example:
 s_zc_BodySafetyCell
 s_zd_ECS421xMCP

3.5.10. Add On Instruction


For Add On Instruction (AOI) use the following naming prefixes:
Format * (Prefix) ‘Description’
Description Prefix Used to create … Short name for what the
AOI does. Multiple words
za AOI controlled by GM (no user edits)
are title case.
ua User definable AOI. (user edits
allowed)
za Za_InsertMessageTrigger Body safety cell
Sample
ua Ua_StyleOverviewIndicator MCP W/O HMI

3.5.11. Tags
Tag names representing devices shall use the device name as documented in the
drawings and as defined in GCCH-1. All other tags shall be named in a way to
describe the data.
Tag naming rules:
 All general GCCS-2 naming rules apply

3-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
 Program tags must not be created with the same name as a controller tag
 Begin with a capital letter, unless otherwise shown in Figure 14
Some tags in the controller have prefixes added to the tag name to help
identify the use of the tag (Figure 13).
Prefix Description
k (lowercase) Tag that contains constants — kDiag
z (lowercase Tag used internally by system routines — zDNet
s_ (lowercase) Safety Tag
Figure 14: Tag Name Prefixes

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-15
3.5.12. Exercise 1: Changing Routine and Tag Names and the Effects
on the Logic
This exercise demonstrates the results of renaming routines and tags in logic.
1. Open Core03Exercise.
2. In the KA030 rename the S040_CloseClamp to S040_CloseClampTest1
and observe the effects.
A. Expand the KA030 program.
B. Right-click the S040_CloseClamp routine.
C. Select Cross Reference.
D. Observe that a single use is referenced
E. Double-click the use to navigate to it.
F. Observe a JSR (Jump to Subroutine) that calls S040_CloseClamp.
G. Right-click on S040_CloseClamp in the controller organizer.
H. Select Properties.
I. Add text “Test1” to the end of the Name box.
J. Click OK on the Properties window.
K. Observe that the JSR and the controller organizer have changed.
3. Rename the Jobdata to JobdataTest1 and observe the effects.
A. Open the Program tags in the KA030 program, select the Edit tab.
B. Locate and expand a tag named Jobdata.
C. Click in the Name cell for the Jobdata.
D. Rename the tag Jobdata to JobdataTest1.
E. Click another tag row to accept your edits.
F. Observe what happens to all members of the tag.
G. Select the JobdataTest1.NoOperation member of the tag.
H. Right-click and select Cross Reference.
I. Double-click the row with the reference of JobdataTest1.NoOperation.
J. Observe the tag use and its name.
The JobdataTest1 tag is an alias for KA030JobData(C).
4. Rename the KA030JobData to KA030JobDataTest1 and observe the
effects.
A. Open the controller tags, select the Edit tab.
B. Locate and expand the KA030JobData controller tag.
C. Rename KA030JobData to KA030JobDataTest1.
D. Observe what happens to all members of the controller tag.
E. Return to the KA030 program tags and observe JobdataTest1 tag and its
Alias For and Base Tag columns.
5. Verify and save the project.

END OF EXERCISE 1

3-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3.6. Review

1. State the Action/Result naming convention for a locating pin.


2. What is the effect in logic when a tag is renamed?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 3-17
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 4: Programs and Interlocks


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:

Date Revision By Revision History


8-26-13 5.0 J. Hocking Updated graphics.
Synchronized to G16 with Powertrain and
6-18-15 6.0 J. Hocking
EtherNet I/O.
8-29-19 7.0 J. Hocking Added interlock exercise

This training is based on the Course Title. Please refer to the Standard manual found
on the “GM intranet” or www.gmsupplypower.com. The Standard manual is
comprehensive and will have the latest information. This training manual is used as an
instructional guide
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
4. Module 4 – Programs and Interlocks ................................................ 4-1
4.1. Objectives ............................................................................................................ 4-1
4.2. Programs ............................................................................................................. 4-2
4.2.1. Program Tags ............................................................................................. 4-4
4.2.2. Controller Tags for Program Examples ....................................................... 4-4
4.2.2.1. Creating a Station ............................................................................. 4-5
4.2.3. Use of Tag Aliases ...................................................................................... 4-6
4.2.3.1. The Mode Alias ................................................................................. 4-6
4.2.3.2. The Status Alias (Sts) ....................................................................... 4-7
4.3. Interlocks ............................................................................................................. 4-8
4.3.1. Interlocks between Processors ................................................................. 4-10
4.3.1.1. Creating interlocks between processors ......................................... 4-10
4.3.1.2. Producer Consumer ........................................................................ 4-14
4.3.2. Interlock Notes .......................................................................................... 4-14
4.3.3. Exercise 1: Creating Program Interlocks .................................................. 4-14
4.4. Review ................................................................................................................ 4-20

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1 Programs........................................................................................................ 4-2
Figure 2 Program Tags with Alias for Controller Tags .................................................. 4-3
Figure 3 Adding a Station ............................................................................................. 4-5
Figure 4: The Status Alias (Sts) ................................................................................... 4-6
Figure 5 The Status Alias ............................................................................................. 4-7
Figure 6 Interlock Tags................................................................................................. 4-8
Figure 7 Creating Interlocks ToPrev / ToNext Aliases .................................................. 4-8
Figure 8 Creating Interlocks FromPrev / FromNext Aliases ......................................... 4-9
Figure 9 Creating Interlocks third piece of equipment .................................................. 4-9
Figure 10 Custom Interlock UDT RSLogix v19 and above ......................................... 4-10
Figure 11 CPS Buffered Copy for Interlocks .............................................................. 4-11
Figure 12 Custom Interlock UDT RSLogix v19 and above ......................................... 4-12
Figure 13 CPS Buffered Copy Consumed Tags ......................................................... 4-13
Figure 14 Producer Consumer ................................................................................... 4-14
Figure 15: Interlock Tags............................................................................................ 4-15
Figure 16: Adding a New Datatype ............................................................................ 4-15
Figure 17: Entering the Datatype ............................................................................... 4-16
Figure 18: Datatype with Members added.................................................................. 4-17
Figure 19: Add the Controller Tag .............................................................................. 4-18
Figure 14: Interlock Datatype .................................................................................... 4-19

© 2019 General Motors Company. All Rights Reserved


iii
4. Module 4 – Programs and Interlocks
4.1. Objectives
After successfully completing this module, the learner will be able to:
1. Describe how programs interact in the GCCS-2 standard.
2. Describe how data types are related to program interaction.
3. Describe multiple program interaction.
4. Explain how programs are independent of controller boundaries.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-1
4.2. Programs
A program represents a major piece of equipment that is to be controlled by the Logix
5000 / Studio 5000 or a Guard Logix processor. It is given a short name to describe
what the program is.
 Each program has a corresponding controller tag with the same name as the
program. This tag contains the equipment’s information that needs to be available
to other programs.
 Each major piece of equipment has a user defined datatype (UDT) that defines
this information.
 All other information that is not required by other programs is contained in
program tags.

Controller Tag
Controller Tag UDT used
Name
exists w ith matches
EquipmentUDT
same name as type of
program. program.
Program
Station,
Name Robot, Cell,
Tags etc.

Program Tags are


used w hen data is
not required by
other programs.

Figure 1 Programs

4-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Controller Tags

Program Tags

Figure 2 Program Tags with Alias for Controller Tags

In station type programs, the Mode and Sts are Aliases for the Controller Tags
AAxx1.Mode and AAxx1.Sts. In this case the program tags point to different members
of the same tag AAxx1.
1. Program Tag Mode is aliased to Controller Tag AAxx1.Mode
2. Program Tag Sts is aliased to Controller Tag AAxx1.Sts

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-3
4.2.1. Program Tags
 Tag names match physical device names. A clamp cylinder C08 mounted on a
station has a corresponding tag with same name in the station program.
 Datatypes describe physical devices. Datatype zp_Cylinder contains members
PX1 and PX2 to represent switches on the cylinder. Tag C08 is of type
zp_Cylinder the home switch is addressed as C08.PX1
 Using program tags will allow reuse of programs
o Prevents naming conflicts
o Tag C08 can exist in multiple programs.
o Also shows direct physical relationships
o The cylinder is “contained” within the station and is contained in the station
program.
 Program tags are used unless data needs to be shared between programs
o Sharing requires the use of controller tags
o Program alias tags are used to access controller tags
4.2.2. Controller Tags for Program Examples
Program types and their corresponding datatypes are shown below.

Program Type Datatype Sample Name


Cell zc_BodySafetyCell AA010Cell
Station zc_Station AA010
Robot zc_Robot AA010R01
Weld Controller zc_WS2WC6SCR AA010WC01
HMI zc_HMI HMI1

4-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4.2.2.1. Creating a Station
The following is an example of creating station 20.
 Create a program to control station 20, name it AA020.
 Create a controller tag with the same name and give it the appropriate datatype.
 Add logic to set data in the controller tag AA020.

Controller Tag
AA020
Program Type Datatype zc_Station

Cell zc_BodySafetyCell
AA020
Station zc_Station
Robot zc_Robot
Weld Controller zc_WS2WC6SCR
PanelView zc_HMI

Program

Figure 3 Adding a Station

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-5
4.2.3. Use of Tag Aliases
Tag aliases are used to promote easy copying of programs.
4.2.3.1. The Mode Alias
 zc_Station contains 2 pieces of data: Mode and Sts (Status)
 Create a program tag alias called Mode and point it to controller tag AA020.Mode
 Write all logic in program AA020 using the alias tag Mode.
 This output energize, (OTE) instruction, is entered using the Mode.Auto tag. The
text in brackets <> shows that the Mode.Auto tag is an alias and that the real tag
being accessed is AA020.Mode.Auto

AA020
Mode
Sts
zc_Station

AA020
Mode
Mode.Auto
<AA020.Mode.Auto>
-------( )-------

Figure 4: The Status Alias (Sts)

4-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4.2.3.2. The Status Alias (Sts)
 Status data is handled in the same manner as the Mode data
 Create a program tag alias called Sts and point it to controller tag AA020.Sts
 Write all logic in program AA020 using the alias tag Sts
 This output energize, (OTE) instruction, is entered using the Sts.Faulted tag. The
text in brackets <> shows that the Mode.Auto tag is an alias and that the real tag
being accessed is AA020.Sts.Faulted.

AA020
Mode
Sts
zc_Station

AA020
Mode

Sts
Sts.Faulted
<AA020.Sts.Faulted>
-------( )-------

Figure 5 The Status Alias

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-7
4.3. Interlocks
Interlocks are necessary between 2 stations. Interlock data is separate from the
status data. This eliminates confusion and permits the creation of as many tags as
required for interlocking purposes. A separate tag is created for each item that a
program needs to talk to. The names show the flow of the data: Interlocks from
Station 20 to Station 30 are named AA020toAA030. The datatype used depends on
the two programs being interlocked.

Figure 6 Interlock Tags

Create program aliases ToPrev and ToNext for these interlock tags. Write logic
using the alias tags, as shown in Figure 7.

AA010 AA020 AA030

AA010toAA020 AA020toAA030
FromPrev “Interlock UDT” FromPrev “Interlock UDT” FromPrev

ToPrev ToPrev ToPrev

ToNext ToNext ToNext


AA020toAA010 AA030toAA020
FromNext “Interlock UDT” FromNext “Interlock UDT” FromNext

Figure 7 Creating Interlocks ToPrev / ToNext Aliases

Create an alias named FromPrev in AA020 to access the interlocks from AA010
(controller tag AA010toAA020). Create an alias named FromNext in AA010 program
tags to access the interlocks from AA020 (tag AA020toAA010), see Figure 8.

4-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
AA010 AA020 AA030

AA010toAA020 AA020toAA030
FromPrev “Interlock UDT” FromPrev “Interlock UDT” FromPrev

ToPrev ToPrev ToPrev

ToNext ToNext ToNext


AA020toAA010 AA030toAA020
FromNext “Interlock UDT” FromNext “Interlock UDT” FromNext

Figure 8 Creating Interlocks FromPrev / FromNext Aliases

Finally, if Station 30 is required to talk to a third piece of equipment, simply create


another interlock tag.

AA010 AA020 AA030

AA010toAA020 AA020toAA030
FromPrev “Interlock UDT” FromPrev “Interlock UDT” FromPrev

ToPrev ToPrev ToPrev

ToNext ToNext ToNext


AA020toAA010 AA030toAA020
FromNext “Interlock UDT” FromNext “Interlock UDT” FromNext

AA030toAA050
“Interlock UDT”

Figure 9 Creating Interlocks third piece of equipment

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-9
4.3.1. Interlocks between Processors
When stations, such as skids, must interlock with stations that are in separate
processors it is necessary to ensure that communications are not lost. A Custom
UDT is used to accommodate interlocks between processors. An interlock UDT and
other device interlock UDTs may also be included such as remote actions and
robots. A connection status member will be included to ensure that the connection is
functioning.
4.3.1.1. Creating interlocks between processors
1. Create a custom UDT uc_AA010ToAA050Interlocks in MCP AA010.
A. Right click User Defined under Data Types in the Controller Organizer
B. Select New Data Type
2. Include members:
A. Comm Datatype = CONNECTION_STATUS
B. AA030ToNext Datatype = zc_SKInterlockToNext
The UDT should look like
Figure 10. Note that the Data Type Size will update after an Apply or OK button is
selected.

Figure 10 Custom Interlock UDT RSLogix v19 and above


3. Create a Controller Tag named AA010ToAA050Interlocks use the UDT
uc_AA010ToAA050Interlocks.
4. Create a Controller Tag named AA030ToNext use the UDT
zc_SKinterlockToNext.

4-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5. Point the ToNext alias in station 30 Program Tags to the AA030ToNext
Controller Tag.
6. Use the CPS, Synchronous Copy command, to copy the data in the ToNext
tag to the AA010ToAA050Interlocks.AA030ToNext tag in the AA030
B002_MapOutputs routine. See Figure 11.

Figure 11 CPS Buffered Copy for Interlocks

A similar process is used for the FromNext alias.


7. Create a custom UDT uc_AA050ToAA010Interlocks in MCP AA010.
8. Include members:
A. Comm Datatype = CONNECTION_STATUS
B. AA050ToPrev Datatype = zc_SKInterlockToPrev
The UDT should look like
Figure 12.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-11
Figure 12 Custom Interlock UDT RSLogix v19 and above

9. Create a Controller Tag named AA050ToAA010Interlocks use the UDT


uc_AA050ToAA010Interlocks.
10. Create a Controller Tag named AA050ToPrev use the UDT
zc_SKinterlockToPrev.
11. Point the FromNext alias in station 30 Program Tags to the AA050ToPrev
Controller Tag.
12. Use the CPS, Synchronous Copy command, to copy the data in the
AA050ToAA010Interlocks.AA050ToPrev tag to the FromNext tag in the
AA030 B001_MapInputs routine. See Figure 13.
A. Include an XIC of the AA050Controller.RunOK to stop the copy if the
remote controller is not in run and OK.
B. Include an XIO of the AA050Controller.RunOK to fill the FromNext tag
using the FLL command when the remote controller is not OK.

4-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 13 CPS Buffered Copy Consumed Tags

It will be necessary to construct two interlocks in the next processor, AA050 in this
example.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-13
4.3.1.2. Producer Consumer
The separation of the interlock tags supports producing and consuming of the tags
across Ethernet, allowing a software design that is independent of the actual
controller boundaries.

Logix Controller 1 Logix Controller 2


AA020 AA030

AA030toAA020 AA020toAA030
“Interlock UDT” “Interlock UDT”

Figure 14 Producer Consumer

4.3.2. Interlock Notes


Other program to program interlocks exist, for example, Station to Robot, Station to
HMI, Station to SCR. The methods and UDTs used will vary depending on type of
devices that are interlocked.
4.3.3. Exercise 1: Creating Program Interlocks
Interlocks are required to send data between 2 programs that transfer parts from one
station to the other. Two interlock tags are shown below. We will construct these
interlocks. Bear in mind that the interlocks would also need to appear in the other file
that is to be interlocked.

4-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 15: Interlock Tags

1. Open Core04Exercise
2. Create a UDT named uc_KA010B9ToKA030B9Interlocks

Figure 16: Adding a New Datatype

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-15
Figure 17: Entering the Datatype

3. Add the following members to the new Datatype


a. Comm CONNECTION_STATUS
b. KA030StopModes zc_StationHold
c. KA030JobData zc_JobData
d. KA030ToKA030R01 zc_StaToRbt
e. KA020R04 zc_Robot
f. KA020R04JobData zc_JobData
g. KA020R04StopModes zc_StationHold

4-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 18: Datatype with Members added

4. Create a controller tag named KA010B9toKA030B9Interlocks use the


uc_KA010B9ToKA030B9Interlocks that was just created.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-17
Figure 19: Add the Controller Tag

5. Repeat the process to complete the interlock uc_KA030B9ToKA010B9Interlocks.


6. Begin with the Datatype shown next:

4-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 20: Interlock Datatype

7. Create the controller tag


End of Exercise 1

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 4-19
4.4. Review
1. Describe how programs interact in the GCCS-2 standard?

2. How are data types related to program interaction?

3. How can multiple programs interact?

4. What makes programs are independent of controller boundaries?

4-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software
Design
LMS # 33544
Document Version 7.0

Module 5: HMI Screen


Functions
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation
Standards
Manufacturing Engineer 810-602-9768
Phone:

Template Version 1.0

Document Revisions:
Date Revision By Revision History
Replaced graphics and content for TIA
8-26-13 5.0 J. Hocking
portal HMI differences.
Synchronized to G16 with Powertrain and
6-18-15 6.0 J. Hocking
EtherNet I/O.
Updated Exercise descriptions. Matched
8-28-19 7.0 J. Hocking
Action routine numbers to logic file.

This training is based on the Global Common Software Design Standards,


GCCS-1. Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have
the latest information. This training manual is used as an instructional guide.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved ii


Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved ii


Table of Contents
5. HMI Screen Functions ........................................................................ 5-1
5.1. Objectives ............................................................................................................ 5-1
5.2. Human Machine Interface (HMI)......................................................................... 5-2
5.2.1. Hard-Wired Interface................................................................................... 5-3
5.2.2. HMI Organizer (Siemens Specific) .............................................................. 5-4
5.2.3. Communication ........................................................................................... 5-6
5.2.4. Screen Navigation ...................................................................................... 5-7
5.2.5. Screen Color Schemes ............................................................................... 5-7
5.2.6. Button Color Schemes ................................................................................ 5-7
5.2.7. Common Screen Banner ............................................................................ 5-9
5.2.8. Individual Screens .................................................................................... 5-11
5.2.8.1. Configuration Screen ...................................................................... 5-11
5.2.8.2. Help Screen .................................................................................... 5-12
5.2.8.3. Select Screen ................................................................................. 5-13
5.2.8.4. Mode Screen .................................................................................. 5-16
5.2.8.5. Cell Maintenance Screen ................................................................ 5-17
5.2.8.6. Ethernet Screens ............................................................................ 5-18
5.2.8.7. Scroll List Screen ............................................................................ 5-20
5.2.8.8. Tool / Station Overview Screen ...................................................... 5-21
5.2.8.9. Cell Overview Screen ..................................................................... 5-22
5.2.8.10. Cell Overview Pushbutton Configuration ...................................... 5-25
5.2.8.11. Robot Screen ................................................................................ 5-29
5.2.8.12. Alarm Screen Status View ............................................................ 5-31
5.2.8.13. Alarm Screen History View ........................................................... 5-33
5.2.9. Exercise 1: Cell Overview Screen ............................................................. 5-34
5.2.10. Exercise 2: Station Overview .................................................................. 5-39
5.2.10.1. Configure Network Fault Indicators............................................... 5-42
5.3. Review ............................................................................................................... 5-45

© 2019 General Motors Company. All Rights Reserved


iii
Table of Figures
Figure 1: Remote Human Machine Interface .............................................................. 5-2
Figure 2: Lower Hardwired Buttons............................................................................. 5-3
Figure 3: Example Application Screens List ................................................................ 5-4
Figure 4: Input Communications Example .................................................................. 5-6
Figure 5: Output Communications Example ............................................................... 5-6
Figure 6: Button Color Scheme ................................................................................... 5-8
Figure 7: Common Banner Area ................................................................................. 5-9
Figure 8: Common Banner Area Descriptions ............................................................ 5-9
Figure 9: Common Banner Area – Definitions .......................................................... 5-10
Figure 10: Configuration Screen ............................................................................... 5-11
Figure 11: Help Screen ............................................................................................. 5-12
Figure 12: Help Screen - Definitions ......................................................................... 5-12
Figure 13: Select Screen .......................................................................................... 5-13
Figure 14: Select Screen – Definitions ...................................................................... 5-13
Figure 15: Select Screen Detail ................................................................................ 5-14
Figure 16: Selecting a Different Station .................................................................... 5-14
Figure 17: Selecting Another Station ........................................................................ 5-15
Figure 18: Mode Screen ........................................................................................... 5-16
Figure 19: Select Mode Screen Button - Definitions ................................................. 5-17
Figure 20: Cell Maintenance Screen ......................................................................... 5-17
Figure 21: Ethernet Network Screen ......................................................................... 5-18
Figure 22: Ethernet Screen – Device Details EN2T .................................................. 5-18
Figure 23: Ethernet Screen – Device Details Robot FA010R03 ............................... 5-19
Figure 24: Scroll List ................................................................................................. 5-20
Figure 25: Tool Overview Screen.............................................................................. 5-21
Figure 26: GoTo Displayed Fault Example ............................................................... 5-22
Figure 27: Cell Overview Screen .............................................................................. 5-23
Figure 28: Cell Overview Screen Detail .................................................................... 5-24
Figure 29 Robot01_pb and its program name ........................................................... 5-25
Figure 30 Robot01_txt displays Robot’s Name .......................................................... 5-26
Figure 31 Robot02_pb Configuration ......................................................................... 5-26
Figure 32 Sta1_pb enter the station name station name ........................................... 5-27
Figure 33 Sta2_pb example ....................................................................................... 5-28
Figure 34: Robot Screen ........................................................................................... 5-29
Figure 35: Robot Screen - Definitions ....................................................................... 5-29
Figure 36: Robot Selected ........................................................................................ 5-30
Figure 37: Robot Function List .................................................................................. 5-30
Figure 38: Alarm Screen Status View ....................................................................... 5-32
Figure 39: Alarm Screen History View ...................................................................... 5-33
Figure 40: Cell Overview Screen – Exercise 1 Configuration ................................... 5-34
Figure 41: Display the Toolbox Menu ....................................................................... 5-35
Figure 42: Select Graphics View ............................................................................... 5-35

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved iv


Figure 43: Graphics View Window Inserted .............................................................. 5-36
Figure 44: Access the Browse Window to Select Graphic ........................................ 5-36
Figure 45: Select Graphic File from Computer .......................................................... 5-37
Figure 46: Graphic Inserted ...................................................................................... 5-37
Figure 47: Exercise 1 ................................................................................................ 5-38
Figure 48: Enter Indicator States – Exercise 2 Configuration ................................... 5-39
Figure 49: Enter Indicator States .............................................................................. 5-40
Figure 50: Indicator States Completed for Cylinder C001 ......................................... 5-40
Figure 51: Alarm Values ........................................................................................... 5-41
Figure 52: Edit the General Text Field ...................................................................... 5-41
Figure 53: Edit the Miscellaneous Name .................................................................. 5-41
Figure 54: Enter Alarm Values. ................................................................................. 5-42
Figure 55: Black Background Color DeviceNet Fault Indicator Configuration ........... 5-43
Figure 56: Indicator with Configured alarm range ...................................................... 5-43
Figure 57: Exercise 2 ................................................................................................ 5-44

© 2019 General Motors Company. All Rights Reserved


v
5. HMI Screen Functions
5.1. Objectives
1. The student will be able to explain the function of each standard Human–
Machine Interface (HMI) screen.
2. The student will be able to state the purposes of the front panel controls on
the HMI.
3. The student will be able to navigate to each screen on the HMI.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-1
5.2. Human Machine Interface (HMI)
The Human-Machine Interface (HMI) controls are hard-wired pushbuttons and switches
that are used in conjunction with HMI operations but are not part of the HMI itself.
These devices are mounted directly beneath the HMI in the HMI enclosure. Figure 1
illustrates the HMI and its associated hardware.

Figure 1: Remote Human Machine Interface

5-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.1. Hard-Wired Interface
Figure 2 below identifies the hard-wired buttons and lights that are mounted below
the HMI.

Figure 2: Lower Hardwired Buttons

Item Name Device State Description


1 Auto Initiate PBLT Pressed Initiates Auto for all stations in cell with Auto
(Green) (Push Button) selected
PBLT On All stations Auto
(Light)
Flash All stations ready for Auto
Fast Flash At least one station lost Auto
Off No stations Auto
2 Do PB Pressed Cause Motion or confirm critical motions
3 Undo PB Pressed Cause motion that is opposite of selected
motion
4 Reset PBLT Pressed Enables current cell’s power reset
(Blue) (Pushbutton)
PBLT ON Power is reset
(Light)
Flash Ready for reset
Off Not ready for reset
5 Auto Manual Key switch/ Manual All stations in manual
Selector switch
Auto All stations auto selected
6 Enable PB Pressed Enables motion while gate is open. Typically
used in tooling cells only.
7 E Stop PB (maintained) Pressed Stop current, upstream, and downstream cell

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-3
5.2.2. HMI Organizer (Siemens Specific)
Each production cell is unique in some way, and it is impractical to cover all the
variations and functionality that you might find in the entire plant. Therefore, for the
purposes of instruction, we will illustrate only the basic HMI screens.

Figure 3: Example Application Screens List

5-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Each screen contains multiple objects such as:
 Push buttons
 Indicators
 Message display
 Lists
 Global alarm banner

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-5
5.2.3. Communication
The HMI initiates all of the communication with the ControlLogix processor. HMI
communications use Ethernet I/P.
An example is shown in Figure 4 and Figure 5.

Figure 4: Input Communications Example

Figure 5: Output Communications Example

5-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.4. Screen Navigation
Typical screens are:
o Select
o Help
o Mode
o Alarm
o Scroll List
o Ethernet
o Robot
o Single Robot
o Cell overview
o Station overview
o Maintenance
Screen navigation occurs on the Select screen. The ControlLogix processor
controls all screen changes; there are no GOTO screen buttons. However,
shortcuts exist between screens when appropriate (e.g. cell overview, screen
overview).

5.2.5. Screen Color Schemes


The screen color schemes are:
Green Represents production state

Yellow Represents non-typical/Warning state –


equipment can run for 5 minutes or more,
not forever.

Red Represents faulted state - equipment is


stopped or is stopping.

5.2.6. Button Color Schemes


The button color schemes are:

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-7
Figure 6: Button Color Scheme

5-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.7. Common Screen Banner
There is a common banner area on all screens. The boxed area at the top of Figure
7 highlights the common banner area.

Figure 7: Common Banner Area

Figure 8 shows the various items located in the banner area. Figure 10 defines the
various items.

Figure 8: Common Banner Area Descriptions

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-9
Item Indication/Explanation
Fault Reset “ON” when an alarm exists. Flashes when an alarm exists in
“Auto.”
Highest Priority Usually sent to upper level systems, logged to downtime
Alarm reports, and put on marquees in order to call people over.
(broadcast)
Highest Priority Only visible on the HMI. Is a means to help the HMI user.
Prompt (local)
Diagnostic Indicates the program is producing an alarm / prompt.
Locator
More Help When the alarm is present and more help is available, the
button is highlighted. When no help is available, it shows the
time and date.
Safety Cell safety status.
Production Has a GREEN background when normal and YELLOW when
Status any of the run / tryout modes are active.
Bypass Status Indicates the status of bypasses in the cell. Has a GREEN
background when no bypasses are active and BLUE if
functions are actively bypassed.
Login Status Indicates the status of the login.
Back Allows return to the previous screen.
(navigation)
Flag Selects the Language for the HMI Display.
Q&A Allows navigation to the Q & A screen. User selects from
available choices a possible solution to a machine interruption.
Figure 9: Common Banner Area – Definitions

5-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8. Individual Screens
5.2.8.1. Configuration Screen
The Configuration Screen gives the user the choice of closing or returning to the
application. Password Management can be accessed form the screen. Project
status info is available.

Figure 10: Configuration Screen

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-11
5.2.8.2. Help Screen
The help screen layout is shown in Figure 12. It shows any additional text that may
be stored in the HMI to assist in correcting the current alarm. Figure 13 explains the
different items on the help screen.

Figure 11: Help Screen

Item Indication/Explanation
Help Category Allows the user to associate specific text with the given
message number.
Alarm-Specific When a problem occurs with DeviceNet, Safety Relay,
Help Text etc., the help category provides advice for the user (help
message that applies to multiple alarms). This is already
programmed for standard help categories.
Back Returns the user to the previous screen.
Figure 12: Help Screen - Definitions

5-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8.3. Select Screen
The select screen is the main navigation screen. Figure 14 shows the physical
arrangement of these items on the screen. Figure 15 explains the different items.

Figure 13: Select Screen

Item Description/Explanation
Station Select Highlights the user selected station and shows all other
stations “grayed out”.
Screen All blue buttons are valid per the station that is selected in
Navigation the station select area.
Figure 14: Select Screen – Definitions

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-13
Figures 16 thru 18 illustrate what occurs when different stations are selected.

Figure 15: Select Screen Detail

Figure 16: Selecting a Different Station

5-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 17: Selecting Another Station

The select screen has multi-station capabilities, supporting up to 30 stations, with 10


stations per screen. Notice that the station select buttons black out when not
programmed in the controller. When more than 10 stations exist, the “Next Station
Page ()” button is used to display additional stations.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-15
5.2.8.4. Mode Screen
The Mode Screen has Modes, Holds, and requests. The screen provides tryout
mode functions, enabling and disabling all process equipment, lamp test, etc. This
screen is shown in Figure 18.

Figure 18: Mode Screen

Item Description
Tryout Mode Toggles tryout mode on / off.
Runout Mode Toggles runout mode on / off.
End of Cycle Toggles End of Cycle Hold (EOCH). Equivalent to
EOCH button on gate box.
Fast Stop Allows actions in process finish, prohibits the start of
any new actions
Energy Stop Stops in the best position to turn off air and electricity.
Can be with parts, may be without parts, etc.

5-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Item Description
Prepare To Stop Limits the robot(s) to only pick up parts if the dropoff
location is available. The mode should prevent a
situation where a robot is holding a part that it can’t
drop. Allows all robots to get home if a different stop
mode is selected.
Lamp Test Press to test pilot lamps and horns
Remove Bypasses Removes non-robotic bypasses (scroll list, switch
bypasses
All Processes On Turns on all non-robotic process equipment.
All Processes Off Turns off all non-robotic process equipment.
Figure 19: Select Mode Screen Button - Definitions

5.2.8.5. Cell Maintenance Screen


The cell maintenance screen is the gathering point for cell specific maintenance
functions (e.g. reset steppers, cap change, etc.). The cell screen is shown in
Figure 20.

Figure 20: Cell Maintenance Screen

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-17
5.2.8.6. Ethernet Screens
There are two levels of Ethernet screens. There is a network overview screen with
indicators for devices on the network. The indicators are pressed to view detailed
information about the device selected.

Figure 21: Ethernet Network Screen

The next screen is the Detail Screen for the Cell EN2T.

Figure 22: Ethernet Screen – Device Details EN2T

The next screen is the Detail Screen for the Robot FA010R03.

5-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 23: Ethernet Screen – Device Details Robot FA010R03

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-19
5.2.8.7. Scroll List Screen
The scroll list screen (Figure 26) represents the available manual control. This
screen’s features are built by the program logic.

Figure 24: Scroll List

5-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8.8. Tool / Station Overview Screen
The tool overview screen assists in locating the device that is in the alarm banner. A
flashing red light indicates the alarm location.

Figure 25: Tool Overview Screen

Fault indicators are designed to flash Red when the alarm shown in the top
banner is for that device. All alarm triggers (alarm number + message offset)
must be entered into each of the indicators. Each switch will usually have 2
faults Not on and Not off. Most cylinders will have 4 faults, 2 for each switch
(extended and retracted).
Indicators on the Tool Overview screen may be copied to create additional
indicators since the indicators are driven by unique alarm trigger values.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-21
The GOTO DISPLAYED FAULT pushbutton (

Figure 26) navigates to the station with the active fault.

Figure 26: GoTo Displayed Fault Example

5.2.8.9. Cell Overview Screen


The cell overview screen (

5-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 27) shows the cell / equipment status. It also allows the screen operator to
navigate to the tool overview and robot screens.

Figure 27: Cell Overview Screen

If a fault is located within the station, the buttons will turn red. The station with
the highest priority blinks red. Buttons update to indicate the alarm status. This
is illustrated in Figure 28.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-23
Figure 28: Cell Overview Screen Detail

5-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8.10. Cell Overview Pushbutton Configuration
The robot and station pushbuttons have been setup to simplify their configuration.
Robot Pushbutton Configuration
Robot pushbuttons have tags assigned that will coincide with HMI program tag
aliasing see Figure 29.

Figure 29 Robot01_pb and its program name

The robot’s name will come from the logic program and is displayed in the yellow
text near the robot pushbutton, currently showing all zeros in Figure 30.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-25
Figure 30 Robot01_txt displays Robot’s Name

In similar fashion, Robot02 gets its name form the logic program. Note that each robot
has 2 images on the reference screen rot45 is used when the robot’s image is desired
to be on an angle. The _pb robot is used for robots requiring square rotation, see
Figure 31.

Figure 31 Robot02_pb Configuration

5-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Copy any remaining robot pushbuttons from the reference screen. Match the
program tag in the HMI logic program.

Station Pushbutton Configuration


Station pushbuttons have tags assigned that will coincide with HMI program tag
aliasing.
Figure 32 shows the Sta1_pb prior to adding the station name.

Figure 32 Sta1_pb enter the station name station name

The HMI Program tag Sta01 is an Alias For TP005. Enter TP005in Text Off field
for the Sta1_pb, see Figure 32.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-27
The following Figure 33 is the Sta2_pb example.

Figure 33 Sta2_pb example

To configure station push buttons:


1. For Sta2_pb in the HMI, refer to the HMI program tags in the logic. Look
for, in this case Sta02; the program tag corresponds to the HMI
pushbutton.
2. In the logic, locate the Alias For that is indicated for the program tag found
in step 1, in this case TP010. Type this station name into the Text Off
field in the HMI.
3. Click anywhere in the screen window to accept the station name just
entered. The station button is now configured.
4. Complete configuration of any remaining station PBs.

5-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8.11. Robot Screen
The robot screen indicates the status of all robots in the cell. It also provides
maintenance functions. The robot screen is shown in Figure 34.

Figure 34: Robot Screen

Robot maintenance functions are updated based on the selected robots. This is
described in Figure 35.
Item Description/Explanation
Cursor Up Moves the cursor Up within the robot list.
Cursor Down Moves the cursor Down within the robot list.
Select/Unselect Selects or Unselects the robot that the cursor points to.
Robot
Select/Unselect All Selects or Unselects all robots in the display.
Rbts
Robot Function List Displays the Robot Function window enabling function
selection for selected robots. See Figure 36.
Robot Status List Gray boxed area displays robot names and status
information.
Figure 35: Robot Screen - Definitions

The next view of the robot screen depicts a selected Robot, shown in reverse video.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-29
Figure 36: Robot Selected

Next the robot function list can be opened using the Robot Func. bottom left of the
Robot Screen.

Figure 37: Robot Function List

The Function list provides additional functions based on user-selected robots.


 Send Robot(s) To Repair
 Return Robot(s) From Repair

5-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
 Tip Dress Robot(s) Process 1/Process 2
 Startup/Purge Process 1/Process 2 (Short)
 Statup/Purge Process 1/Process 2 (Long)
 Reset Steppers After Cap Change
 Turn Process 1/Process 2 On or Off
 Bypass/Remove Robot Bypass
 Bypass/Remove Process 1/Process 2 Bypass
 Spare Robot Functions 20-31

5.2.8.12. Alarm Screen Status View


The alarm screen status view (

Figure 38) displays the top nine active alarms ordered by priority. The highest
priority alarms are located at the top of the screen.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-31
Figure 38: Alarm Screen Status View

Note: if an alarm on a yellow background is seen with the following text: ALARM
#/*HMI\ScnCom\O\Alarm*/ NOT PROGRAMMED IN HMI
SEARCH FOR KALARM[/*HMI\ScnCom\O\AlarmSearchNum*/] IN PROGRAM
"/*HMI\ScnCom\O\AlarmPgmName*/" this message means that an alarm
message is active in the PLC that does not have text in the HMI. Run the
message extractor see Module 14.

5-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.8.13. Alarm Screen History View
The alarm maintenance history screen view (Figure 39) displays the past 100 highest
priority alarms. Alarms can be filtered by program.

Figure 39: Alarm Screen History View

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-33
5.2.9. Exercise 1: Cell Overview Screen
The Cell overview is used to see all stations or robots that have alarms at a glance.
The screen includes ability to navigate to any station or the robot screen to view
specific details about alarms. In this exercise, you will configure the cell screen as
shown in Figure 40.

Figure 40: Cell Overview Screen – Exercise 1 Configuration

1. Use Extract all to open the Core05Exercises.zip


2. Open Core05Exercises using TIA Portal.
3. Open the screen 200 – Cell Overview.
4. Select the View menu.
5. Select Task card to enable the toolbox menu display. Note: Task card is
usually selected by default.

5-34 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 41: Display the Toolbox Menu

5. Select Graphics View.

Figure 42: Select Graphics View

6. Click and drag a window to receive the graphic.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-35
Figure 43: Graphics View Window Inserted

7. Right click on the new window.


8. Select Add graphic from pop-up menu.

Figure 44: Access the Browse Window to Select Graphic

5-36 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
9. Select the graphic from browse window, Core05Exercise1.
10. Click Open.

Figure 45: Select Graphic File from Computer

11. Verify the graphic desired is displayed; see Figure 46. Note: you can
resize the graphic anytime, just click and drag a grip to resize. Resize the
image to approximately the same size as shown in Figure 47.

Figure 46: Graphic Inserted

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-37
12. Copy the following graphics and indicators from the Cell Overview
Graphics screens:
 9999 – Cell Overview Graphics – Gate, Guards
 9999 – Cell Overview Graphics – Panels
 9999 – Cell Overview Graphics – Robots
Follow the directions given on the Cell Overview Graphics screens, to add indicator
pushbuttons and graphics to build the Cell Overview. Note: Indicators/pushbuttons
are designed to coincide with station and robot numbers in the HMI logic, for
example:
 R01 = Robot1 in Cell Overview Graphics
 Sta01 = STA1 in Cell Overview Graphics
Always copy the correct numbered pushbutton/indicators for the stations and
robots into your project. Do not copy STA1 for all your stations etc.
13. Use the RSLogix project Core05Exercise1.ACD to determine the order of
the robot and station buttons in the project.
14. Verify your project looks like the Cell Overview shown in Figure 47.

Figure 47: Exercise 1

Note: See Figure 40 for robot names.


END OF EXERCISE 1

5-38 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.2.10. Exercise 2: Station Overview
The Station Overview screen displays the location of the highest priority fault. The
screen also aids in bypassing faulted switches. In this exercise, you will configure the
tool screen as shown in
Figure 48.

Figure 48: Enter Indicator States – Exercise 2 Configuration

1. Continue working in Core05Exercises.HMI for this exercise.


2. Open the screen 201 – Tool Overview Station 1.
3. Insert the bitmap Core05Exercise2 from your exercise folder. Resize the
image to approximately the same size as shown in
4. Figure 48.
5. Copy the graphics and indicators from screen 9999 Station Overview
Graphics.
6. Rotate the cylinders as needed.
7. Enter alarm trigger numbers for cylinder C01: 1500, 1510, 1501, & 1511.
A. Click the cylinder graphic.
B. Select the Animations tab.
C. Expand the faultInd_msi#mig1 in the tree.
D. Click on Appearance
E. Enter the range (alarm state plus offset) for the desired unit.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-39
Figure 49: Enter Indicator States

F. Complete the remaining ranges. When finished, your screen should look
like Figure 50.

Figure 50: Indicator States Completed for Cylinder C001

Item Indication/Explanation
C01 1500, 1510, 1501, 1511
*C02 1502, 1503, 1512, 1513.
WG200 1560, 1570.
PPX1 1101, 1111.
BK01 1010, 1011.
BK02 1012, 1013.
PM1 1014, 1015, 1016.
PM2 1024, 1025, 1026.

5-40 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 51: Alarm Values

*C02 was completed in step 7.


8. Copy the PM1 indicator to create a BK01 indicator.
A. Click the new indicator then select the Properties tab.
B. Expand General and edit the text in the Text field as shown in
C. Figure 52.

Figure 52: Edit the General Text Field

D. Rename the Miscellaneous to BK01_msi; located under the Properties


tab/ Miscellaneous Name field as shown in
E. Figure 53.

Figure 53: Edit the Miscellaneous Name

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-41
F. Select the Animations tab, and then select Appearance under Display.
Right click in front of any unwanted states to select then choose delete.
See Figure 54.
G. Enter the range 1010-1011, see Figure 54.

Figure 54: Enter Alarm Values.

Note: For W/G open switches, part present switches, and any other 2-state switches,
delete the first 2 ranges. Right click at the beginning of the row to be deleted; then
select Delete.

5.2.10.1. Configure Network Fault Indicators


The new HMI template application uses Network fault multi-state indicators with a
default background color black. Red background color fault indicators will require that
all states from 0-999,999 be defined (black for off and red for on). The default
background color could be changed to black to simplify state setup.
Network fault indicators for black default Background color do not need to show value
ranges for when the alarms are off. Only alarms that are on, red background color need
to be included.

5-42 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 55: Black Background Color DeviceNet Fault Indicator Configuration

Figure 56: Indicator with Configured alarm range

Multiple rows can be selected to delete simply hold the Ctrl key on the keyboard and left
click the selection button in front of the Value column to select then right click delete or
use the keyboard delete.

9. Add the remaining graphics/indicators to complete the exercise shown in


Figure 57. Use the table in Figure 51Error! Reference source not found.
to enter the trigger values.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-43
Figure 57: Exercise 2

END OF EXERCISE 2

5-44 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5.3. Review
1. What is the function of the Scroll List screen?
2. What is the function of the Tool/Station Overview screen?
3. What is the function of the Cell Overview screen?
4. What is the function of the Robot screen?
5. What is the function of the Alarm Screen Status view?
6. What is the function of the Alarm Screen History view?
7. How do you navigate between screens in the HMI?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 5-45
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 6: Actions
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Updated graphics
Synchronized to G16 with Powertrain and
7-21-15 6.0 J. Hocking
EtherNet I/O.
8-29-19 7.0 J. Hocking Added part Present Logic.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application
of the materials in this manual.
The examples, diagrams, and charts in this manual are included solely for
illustrative purposes. Because of the many variables and requirements
associated with any particular safety situation, the General Motors Company
expressly disclaims all express and implied warranties relating to the
materials in this manual, including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
6. Actions ....................................................................................... 6-1
6.1. Objectives .................................................................................................. 6-1
6.2. Actions ....................................................................................................... 6-2
6.2.1. Action ................................................................................................ 6-2
6.2.2. Action Datatype ................................................................................ 6-3
6.3. Action Routines ........................................................................................ 6-5
6.3.1. Logic Structure................................................................................ 6-11
6.3.2. Switch Internal Rung ....................................................................... 6-13
6.3.3. Action Complete Rung .................................................................... 6-14
6.3.4. Action Auto Rung ............................................................................ 6-15
6.3.5. Action Clear Rung ........................................................................... 6-16
6.3.6. Action Output Power Rung ............................................................. 6-17
6.3.7. Action Command Rung ................................................................... 6-18
6.3.8. Action Output Internal Rung............................................................ 6-19
6.3.9. Action Valve Output Rung............................................................... 6-20
6.3.10. Action Memory Rung .................................................................... 6-21
6.3.11. Action Fault Timer Rung ............................................................... 6-22
6.3.12. Action Enable Bypass Rung ......................................................... 6-23
6.3.13. Diagnostic Alarm Rung ................................................................. 6-23
6.3.14. Switch Bypass Bit Rung ................................................................ 6-24
6.3.15. Scroll List Configuration Rung ...................................................... 6-25
6.3.16. Action Prompt Rung ...................................................................... 6-27
6.3.17. Motion Prompts Rung ................................................................... 6-28
6.3.18. Action Output Power Prompt Rung ............................................... 6-29
6.3.19. Action Do/Undo PB Unlatch Rung ................................................ 6-30
6.3.20. Action Found Rung ....................................................................... 6-31
6.3.21. Switch Logic .................................................................................. 6-32
6.3.22. Switch Diagnostics Rung .............................................................. 6-34
6.4. Prompting ................................................................................................ 6-37
6.5. Part Present in Actions .......................................................................... 6-40
6.5.1. Part Load Status Memory ............................................................... 6-41
6.5.2. Load/Unload actions check actual Switch Status ............................ 6-41
6.5.3. MainCycle Logic Checks that all Parts are Present ........................ 6-42
6.6. Error Proofing ......................................................................................... 6-42
6.6.1. Process Actions Completes ............................................................ 6-42
6.6.2. Error Proofing in Actions ................................................................. 6-43
6.6.3. Error Proofing in Part Load Actions ................................................ 6-44
6.6.4. Error Proofing in Part Load Actions ................................................ 6-45
6.6.5. Error Proofing in Part Unload Actions ............................................. 6-46
6.6.6. The MainCycle Routine................................................................... 6-47

Copyright 2019 General Motors Company


ii
6.6.7. Setting / Resetting Work an Part Memories (MainCycle) ................ 6-48
6.7. Review ..................................................................................................... 6-50

Table of Figures
Figure 1: za_Action Datatype Status Data ........................................................6-3
Figure 2 Action Tag with the za_Action Data Type ............................................6-4
Figure 3: Unscheduled Programs – Action Routines ........................................6-5
Figure 4: Copy the Template Routines .............................................................6-6
Figure 5: Copy and Paste Template Routines ..................................................6-7
Figure 6: Renaming a Routine ..........................................................................6-7
Figure 7: Action Routine Organization ..............................................................6-8
Figure 8: Selecting za_Action Datatype ............................................................6-9
Figure 9: Sequentially Naming Routines .........................................................6-10
Figure 10: TBD Example ..................................................................................6-11
Figure 11: Auto & Clear Rungs Do Not Copy Conditions ................................6-12
Figure 12: @eLogic Flags ...............................................................................6-12
Figure 13: Switch Internal Rung ......................................................................6-13
Figure 14: Action Complete Rung ...................................................................6-14
Figure 15: Action Auto Rung ...........................................................................6-15
Figure 16: Action Clear Rung ..........................................................................6-16
Figure 17: Action Output Power Rung ............................................................6-17
Figure 18: Action Command Rung ..................................................................6-18
Figure 19: Action Output Internal Rung – “Real” Output Link ..........................6-19
Figure 20: Action Valve Output Rung..............................................................6-20
Figure 21: Action Memory Rung .....................................................................6-21
Figure 22: Action Fault Timer Rung ................................................................6-22
Figure 23: Action Enable Bypass Rung ..........................................................6-23
Figure 24: Diagnostic Alarm Rung ..................................................................6-23
Figure 25: Switch Bypass Bit Rung .................................................................6-24
Figure 26: Setting HMI Action Text and Action StatusType Triggers ..............6-25
Figure 27: Action Diagnostic Prompt...............................................................6-27
Figure 28: Motion Prompts Rung ....................................................................6-28
Figure 29: Action Output Power Prompt Rung ................................................6-29
Figure 30: Action Do/Undo Unlatch Rung .......................................................6-30

© 2019 General Motors Company. All Rights Reserved


iii
Figure 31: Action Found Rung ........................................................................6-31
Figure 32: Cylinder U201 PX2 Switch in Action Complete Rung ....................6-32
Figure 33: Switch Diagnostics .........................................................................6-34
Figure 34: Bypassing Bits Used in Switch Rungs ...........................................6-35
Figure 35: “Switch Not Off” Switch Rungs .......................................................6-36
Figure 36: Prompting ......................................................................................6-37
Figure 37: Robot Not Clear Prompt.................................................................6-38
Figure 38: Close Clamp2 Action Clear Rung ..................................................6-39
Figure 39: Close Clamp2 Prompt ....................................................................6-39
Figure 40: Summation of PPX Switch Internals ..............................................6-40
Figure 41: Part Load Status Memory ..............................................................6-41
Figure 42: Load/Unload Actions Should Check Actual Switch Status ..............6-41
Figure 43: MainCycle Parts Loaded/No Parts Loaded .....................................6-42
Figure 44: Process Actions Completes Rung .................................................6-42
Figure 45: MainCycle Process Complete and Steps Complete ......................6-43
Figure 46: Error Proofing in Part Load Actions ...............................................6-44
Figure 47: Part Load Actions ...........................................................................6-45
Figure 48: Part Unload Actions ........................................................................6-46
Figure 49: Work Complete Status ....................................................................6-47
Figure 50: Part Loaded Memories...................................................................6-47
Figure 51: Reset Process Complete Rung Comment (MainCycle) ..................6-48
Figure 52: Reset Process Complete Rung (MainCycle)..................................6-48
Figure 53: Setting the Work Memories............................................................6-49

Copyright 2019 General Motors Company


iv
6. Actions
6.1. Objectives
1. The student will be able to name the rung that shows clamp status.
2. The student will be able to describe “Switch bypassing” logic.
3. The student will be able to describe “Prompting” logic.
4. The student will be able to define the purpose of the action clear rung.
5. The student will understand error proofing elements

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-1
6.2. Actions
A “sequence action” or simply “action” refers to a single sequence step of a
machine, such as closing a clamp. For the remainder of this module, sequence
actions will simply be called actions. Actions have their own datatypes defined for
use.

6.2.1. Action
An action consists of a basic unit of data and the logic associated with that
machine sequence step. The data is represented by the action datatype
“za_Action”. The control logic and diagnostics for an action are located in the
action routine. Some examples of data and logic for an action include:
 Switch internal
 Complete conditions
 Process Complete (when required)
 Automatic mode conditions
 Clear conditions
 Output power
 Command
 Motion timer
 Scrollist text and status ID
 All control logic and diagnostics for a motion is in one routine
o ClampClose would be in one routine
o ClampOpen would be in a different routine

6-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.2.2. Action Datatype
As shown in Figure 1, all the status data are Boolean except the timer, text, and
status ID.

Figure 1: za_Action Datatype Status Data

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-3
Figure 2 Action Tag with the za_Action Data Type

6-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3. Action Routines
The GCCS-2 template has many examples of action routines that can be used to
quickly meet the needs of most actions. Proceed to the unscheduled programs for
routine examples.

Figure 3: Unscheduled Programs – Action Routines

Routines can be copied into programs as needed. Some edits will be needed to match
the details of the destination project’s program. Typical unscheduled programs are
shown expanded in the next figure.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-5
Figure 4: Copy the Template Routines

Most likely you will not require all routines in the Template unscheduled program,
depending on what routines already exists in your destination project. Right click each
routine individually, choose copy, then locate the destination program and choose paste
on the program name.

6-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 5: Copy and Paste Template Routines

After pasting the routine rename it to the appropriate name, update the S prefix number
to position the new routine in desired order.

Figure 6: Renaming a Routine

Program tags can be copied to the destination program. The examples are arranged in
small programs that contain tags and routines that can be copied to a project. Each

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-7
action has its own routine that contains all the control logic and diagnostics for that
action. The routine S000_Sequence builds the scroll list. It calls all Action routines. A
sample organization of these routines is shown in Error! Reference source not f
ound..
Each action has its own routine that contains all the control logic and diagnostics for that
action. The routine S000_Sequence builds the Scroll List. It calls all Action routines.

Figure 7: Action Routine Organization

To build an action, the programmer creates a program-scoped tag of the “za_Action”


data type. The data types have pass-through descriptions which allow the user to edit
the main description of a tag and the appropriate descriptions are “passed thru” to the
remaining members of the tag. If they fail to display properly, check for an inadvertent
entry with the description text editor. An example of data type selection is shown in
Figure 8.

6-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 8: Selecting za_Action Datatype

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-9
Routines must be created for each required action. Name them so they appear in the
desired sequence order relative to each other as shown in Figure 9.
Note: The routine names should initially skip numbers by 5’s. This will make re-
sequencing actions easier because fewer routines will need to be renamed. This is
strictly a visible ordering of the routines. The action logic contained in the routine will
dictate the equipment sequence.

Figure 9: Sequentially Naming Routines

Add calls to these routines in the S000_Sequence. The order of the calls is the order
of display for the scroll list. Once the routines are created, the jumps (JSR – jump
subroutine) to these routines are added in the S000_Sequence routine. The order of
the jumps is the order of the scroll list display on the HMI.

6-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.1. Logic Structure
The logic structure is set up so that the first rung(s) is (are) the Switch Internal
rung(s) followed by the Action Complete rung. As logic rungs are conditioned,
instructions added or removed to achieve the desired rung output for the application,
it will be necessary to delete TBD bits which are part of the GCCS-2 standard. TBD
bits are designed to bring the user’s attention to areas where user input is required.
Rung comments will give info on what is to replace TBD bits, see Figure 10.

Figure 10: TBD Example

It is important that the Action Auto and the Action Clear rungs do NOT have their
conditions duplicated. Remove any duplicate contacts from the Auto rung.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-11
Figure 11: Auto & Clear Rungs Do Not Copy Conditions

Note: many rung comments will contain flags that are used by the logic generator
software, they begin with @eLogic and are eliminated later in the process. See Figure
12.

Figure 12: @eLogic Flags

6-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.2. Switch Internal Rung
Internal switch logic is used to enable switch bypassing. Further explanation is given in
Module 6.3.21 Switch Logic. The Switch Internal rung is introduced in
Figure 13. For switches that do not allow bypassing, the input point will directly drive
the switch internal.

Figure 13: Switch Internal Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-13
6.3.3. Action Complete Rung
The Action Complete Rung is located near the top of the routine to allow you to
quickly determine the complete state of the action. The reverse action’s “.Out” bit
is included on this Action Complete rung because a time delay occurs before the
sensor inputs change state. Including the reverse action’s “.Out” bit helps
prevent equipment collisions by immediately turning off the action’s “.Comp” bit
when the opposite action is initiated. An example of an Action Complete rung is
shown in Figure 14.

Figure 14: Action Complete Rung

6-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.4. Action Auto Rung
The Action Auto Rung follows the Action Complete Rung. This rung includes all
conditions required for an action to run in Auto Mode. An example is shown in
Figure 15.

Figure 15: Action Auto Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-15
6.3.5. Action Clear Rung
The Action Clear Rung contains all conditions for the action to move in either
auto or manual mode. It must also contain all conditions needed to prevent
equipment damage. Action Clear Conditions follow the Auto Mode conditions and
are shown in Figure 16.
Do not duplicate conditions in both the Action Auto and Action Clear rungs.
Remove any duplicate conditions from the Auto rung

Figure 16: Action Clear Rung

6-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.6. Action Output Power Rung
The Action Output Power Rung conditions for the action. Configure with all
power conditions necessary for motion of the device.

Figure 17: Action Output Power Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-17
6.3.7. Action Command Rung
The Action Command Rung sums both the Auto and Clear conditions and is
shown in Figure 18. When the action operates before / after the main cycle,
“Maincycle.InCycle” will need to be replaced by “Mode.Auto” (typically transfer
actions, robot pick/drop, transfer part in etc.).

Figure 18: Action Command Rung

6-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.8. Action Output Internal Rung
The Action Output Internal Rung is turned on by the Action Command. This
requires fewer logic changes and minimizes the use of the “Real” Output. The
“Real” Output is, in turn, turned on by the Action Output Internal Rung as shown
in Figure 19.

Figure 19: Action Output Internal Rung – “Real” Output Link

The “Real” Output occurs only on this rung. This allows most of the logic to be
written without knowing the real output address.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-19
6.3.9. Action Valve Output Rung

Figure 20: Action Valve Output Rung

6-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.10. Action Memory Rung
The Action Memory Rung remembers the last commanded direction. It is set and
reset by the Action Internal Output rung as shown in Figure 21.

Correctly sets
Memory bits
when manually
valving a tool.

Figure 21: Action Memory Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-21
6.3.11. Action Fault Timer Rung
The Action Fault Timer Rung is used to determine when the action is faulted and
allows time for the action to complete as shown in Figure 22. The fault timer
preset value must be set to allow enough time for the action to complete without
triggering a motion fault.

Figure 22: Action Fault Timer Rung

6-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.12. Action Enable Bypass Rung
The Action Enable Bypass Rung (Error! Reference source not found.) allows b
ypassing the diagnostic switches for the action. No more than one cylinder per
action is allowed to be bypassed at any given time. Switch bypassing is not
available in motions that have only one cylinder.

Figure 23: Action Enable Bypass Rung

6.3.13. Diagnostic Alarm Rung


Action routines will contain diagnostic messages for two switch faults that are
possible when the routine commands the valve. The home position switch can
become stuck on or the work position switch might not turn on. Each cylinder in
the action routine will have its own diagnostic alarm rung as well as the Switch
Bypass bit rung. Diagnostics will be further examined in Module 7.

Figure 24: Diagnostic Alarm Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-23
6.3.14. Switch Bypass Bit Rung
The bits in the Switch Bypass Bit Rung are set based on currently active alarm
triggers. These active alarm triggers are displayed in the top banner on the HMI
and are maintained in the BypSw[ ] BOOL array.

Figure 25: Switch Bypass Bit Rung

6-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.15. Scroll List Configuration Rung
The last rung of the Action routine starts with setting the HMI scroll list Action Text
trigger and Action Status Type trigger as shown in
Figure 26.

Figure 26: Setting HMI Action Text and Action StatusType Triggers

The scroll list logic adds the program message offset to the Action Text value
before it is sent to the HMI. For example, if the message offset for this program
is 1000, the value sent to the HMI is 1002. A corresponding HMI scroll list
message with a trigger value of 1002 must be programmed in the HMI.

The “kSL” constants are used to select the appropriate text and color to describe
the action. In the example in Figure 16, the Clamp1Close.StatusType value
displays “Closed”, “Closing”, or “Closed Fault”. The text color is then used to
further identify the action.
 Yellow = work position
 Green = home position
 Red = faulted
 White is everything else (e.g., complete, present, etc.)

The scroll list logic also adds an offset value to the “Action.StatusType” to display
the action status on the HMI as follows:
 Add 1 when the action is complete
 Add 2 when the action is in motion

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-25
 Add 3 when the action is faulted

For example, if the kSL.Yellow.Close has a value of 10, the following values and
text are generated:
 11: “Closed” in Yellow text
 12: “Closing” in Yellow text
 13: “Close Flt” in Red text

6-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.16. Action Prompt Rung
The Action Prompt Rung is the diagnostic prompt for that action. This rung
displays the prompt for this action when the “Action.Prompt” bit is set by another
action. This is illustrated in Figure 27.

Set by Prompt
other only when
action’s action is
prompting clear Diagnostic Prompt
logic programmed one time

Figure 27: Action Diagnostic Prompt

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-27
6.3.17. Motion Prompts Rung
The Motion Prompts Rung latches prompts for all motion conditions found in the Action
Clear rung. You must add branches for all items in the Clear Rung, as shown in
Figure 28.

Figure 28: Motion Prompts Rung

6-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.18. Action Output Power Prompt Rung
The Action Output Power Prompt sets latches for output power devices that are in the
Output Power rung. Ensure a latch branch is added for all components in the Output
Power Rung as shown in
Figure 29.

Figure 29: Action Output Power Prompt Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-29
6.3.19. Action Do/Undo PB Unlatch Rung
The Action Do/Undo PB Unlatch Rung, as shown in Figure 30, clears the Action
Internal Push Button bit. This ensures the internal Action Push Button bit is
turned off. This rung also unlatches the OutPwrPrompt and the current motion
prompt.

Figure 30: Action Do/Undo Unlatch Rung

6-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.3.20. Action Found Rung
The Action Found Rung controls the cursor when Auto Cursor mode is enabled.
The conditions shown in Figure 31 will work in most cases. However, in some
instances, they may need to be modified for the Auto Cursor to work properly.

On in auto Above conditions work in most cases.


cursor May be modified for unusual cases to
mode control auto cursor.

Figure 31: Action Found Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-31
6.3.21. Switch Logic
Switch logic is used for three primary functions:
 To determine when an action is complete.
 To determine if a fault has occurred for the switch (failed on/failed off).
 To allow bypassing of certain switch faults. This allows production to
continue until the problem can be fixed.
Figure 32 shows a proximity switch providing an input to the Action Complete
rung.

When Switch is NOT


Here is the “switch”
“Real” input
Bypassed Cylinder C01 PX2
Switch

Action
Motion Timer
Done

When Switch is
bypassed

Figure 32: Cylinder U201 PX2 Switch in Action Complete Rung

6-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
A switch internal is driven by the actual switch input or by a timer in the event of a
fault that is bypassed.
When the switch is not bypassed, the “Real” input is used. When the switch is
bypassed, the logic waits for the Action Motion Timer to finish to satisfy input to
the Action Complete rung. This is because:
 Waiting for the Motion Timer allows time for the action to complete and
helps prevent equipment crashes
 Using the Motion Timer also works for switches that have failed in the
“ON” position.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-33
6.3.22. Switch Diagnostics Rung
The Switch Diagnostics Rung is shown in
Figure 33. When diagnosing switches, both the “on” and the “off” states must be
diagnosed.

Figure 33: Switch Diagnostics

Diagnostic priority determines if switches can be bypassed. However, the


programmer must determine whether bypassing a switch is allowed. Bypassing is
not allowed when no motion is detected.
The switch bypass bits are set based on currently active alarm triggers displayed
in the top banner and are maintained in the BypSw[ ] BOOL array.

6-34 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 34: Bypassing Bits Used in Switch Rungs

As shown in
Figure 34, to bypass the “switch not on”, the switch rung is located in the same
routine.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-35
Bypass bits for the “Open” Switch PX1 Not Off are also set based on alarm triggers as
shown in Figure 35.

Figure 35: “Switch Not Off” Switch Rungs

6-36 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.4. Prompting
Prompting starts by looking at the Clear conditions for the action. The prompting rung
triggers prompts when the user cannot perform the action. An example is shown in
Figure 36.

Figure 36: Prompting

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-37
As shown in Figure 37, the Clamp1 prompting logic triggers the Robot Not Clear
prompt.

This rung is located in


B010_Map1Station; no
edits to be made.

Figure 37: Robot Not Clear Prompt

6-38 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The following example illustrates how another action would trigger the Clamp1 prompt.
In this example,
Figure 38, the Close Clamp2 action requires Clamp1 to be closed.

Figure 38: Close Clamp2 Action Clear Rung

The Close Clamp2 prompting is shown in Figure 39.

Figure 39: Close Clamp2 Prompt

If the user is attempting to close Clamp 2 while Clamp 1 is not closed and not clear,
the prompt displayed on the HMI will indicate that Clamp1 is not closed. If Clamp1
is not clear, then prompting will indicate why. The prompting will eventually direct
the user to something that is clear and can be moved.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-39
6.5. Part Present in Actions
The part present actions / logic has bits that represent the part switches:
PartName.PresSwitches
PartName.NotPresSwitches
The PartName is replaced with the actual name of the part.
Note: Sample Part Action logic routines are located in StationPartActions in the
Unscheduled Programs of GCCS-2.

Figure 40: Summation of PPX Switch Internals

All part present switch internals are summed in the rung shown above. The rung
provides all part present switches or no part present switches on.

6-40 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.5.1. Part Load Status Memory
The bit PartName.Load.Comp is memory of the part load status.

Figure 41: Part Load Status Memory

In general, most actions should use the PartName.Load.Comp memory, if part status is
needed at all. Only part load / unload actions should use part switch status.
6.5.2. Load/Unload actions check actual Switch Status
Part load / unload actions should check actual switch status to ensure the part is
properly loaded.

Figure 42: Load/Unload Actions Should Check Actual Switch Status

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-41
6.5.3. MainCycle Logic Checks that all Parts are Present
The MainCycle logic checks that all parts are present before starting the cycle.
Actions using MainCycle.InCycle on the Command rung do not need part present status
programmed in the Action’s Auto rung.

Figure 43: MainCycle Parts Loaded/No Parts Loaded

6.6. Error Proofing


Error Proofing is designed to ensure that all product is completed successfully as
designed. All parts must be present prior to shipping the product to the next station. All
processes must be complete prior to shipping a product to the next station.
6.6.1. Process Actions Completes
Process actions do work to (change) the part. Welding, sealing, machining, piercing,
etc... The .Comp bit is used for these actions to indicate that the step has been
attempted. The .ProcComp bit is used to determine that the work was completed.

Figure 44: Process Actions Completes Rung

6-42 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.6.2. Error Proofing in Actions
Error Proofing in Actions is intended to insure that all parts needed are present in the
machine/station AND that all work has been completed on those parts.
A MainCycle routine and tag is usually present to sum that status.

Figure 45: MainCycle Process Complete and Steps Complete

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-43
6.6.3. Error Proofing in Part Load Actions
Actions controlling steps where parts are loaded to the machine must check the status
of the Work.ProcComp (work has been done) and Part.PresMemory (part loaded
memory) bits. Typically, all ProcComp bits must be in the OFF state prior to loading
parts. All part load memory bits must be in the OFF state prior to loading the first part.
This provides anti-repeat / error proofing the actions to prevent a machine cycle where
parts that may not be loaded or work that may not be done.

Figure 46: Error Proofing in Part Load Actions

6-44 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.6.4. Error Proofing in Part Load Actions
In the Part check and Clear actions, the tooling part present switches are checked to
ensure that the robot has properly loaded in the tool.

Figure 47: Part Load Actions

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-45
6.6.5. Error Proofing in Part Unload Actions
Action controlling steps where parts are unloaded from the machine/station must check
the status of the ProcComp (work has been done) and .PresMemory (part loaded
memory) bits. All .ProcComp bits must be in the ON state before unloading parts. All
part load memory bits must be in the ON state before unloading parts. This provides
anti-repeat / error proofing of the actions to prevent a machine cycle where parts may
not be loaded or work may not be done.

Figure 48: Part Unload Actions

6-46 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.6.6. The MainCycle Routine
The MainCycle tag and routine are used to track the status of the machine’s cycle
including work complete and part load memories. Work complete status is shown next.

Figure 49: Work Complete Status

Next is the part loaded memories.

Figure 50: Part Loaded Memories

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-47
6.6.7. Setting / Resetting Work an Part Memories (MainCycle)
The MainCycle routine controls the resetting of the part and work memories for each
machine/station cycle. The part and work memories should be reset by the MainCycle
routine once the unload action is complete. Rungs for the reset process complete and
set process complete follow.
6.6.7.1. Resetting Work Memories (Main Cycle)
The Reset Process Complete rung comment contains information to assist the user in
setting up the rung appropriately. Configuration information is after the @TODO flag.

Figure 51: Reset Process Complete Rung Comment (MainCycle)

The reset process complete rung is next.

Figure 52: Reset Process Complete Rung (MainCycle)

6-48 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6.6.7.2. Setting Work Memories (Main Cycle)
The set process complete rung is next. Do not edit this rung.

Figure 53: Setting the Work Memories

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 6-49
6.7. Review
1. What rung shows the status of the clamp in the routine?
2. The Action Clear rung does what job?
3. Describe switch bypassing logic?
4. Describe prompting logic?
5. What is the main purpose of error proofing?

6-50 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software
Design
LMS # 33544
Document Version 7.0

Module 7: Diagnostics
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation
Standards
Manufacturing Engineer 810-602-9768
Phone:

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking
Synchronized to G16 with Powertrain and
7-1-15 6.0 J. Hocking
EtherNet I/O
Adjusted message offset range for
8-29-19 7.0 J. Hocking Conveyors, removed CFlex and kDiag.Value
priorities.

This training is based on the Global Common Software Design Standards,


GCCS-1. Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have
the latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of
the materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual,
including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
7. Diagnostics ................................................................................ 7-1
7.1. Objectives .................................................................................................. 7-1
7.2. Diagnostics Categories ............................................................................ 7-2
7.3. Diagnostic Numbers ................................................................................. 7-2
7.3.1. Message Offset and Message Ranges ............................................. 7-3
7.3.2. Program Diagnostic Numbers ........................................................... 7-4
7.3.3. HMI Message Numbers .................................................................... 7-5
7.3.4. Program Message Offsets ................................................................ 7-6
7.4. HMI Diagnostic Display .......................................................................... 7-11
7.4.1. First Input Parameter: Priority ........................................................ 7-13
7.4.2. Second Input Parameter: Message Number .................................. 7-17
7.4.3. Third Input Parameter: More Help ................................................. 7-18
7.5. Diagnostic Examples .............................................................................. 7-21
7.5.1. Typical Work Action Diagnostic ...................................................... 7-21
7.5.2. Typical Home Action Diagnostic ..................................................... 7-22
7.6. Variable Messages .................................................................................. 7-24
7.7. Exercise 1: Programming Alarms.......................................................... 7-28
7.8. Review ..................................................................................................... 7-33

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Alarms and Prompts ............................................................................... 7-2
Figure 2: Program Alarm and Prompt Numbers ..................................................... 7-4
Figure 3: HMI Message Numbers .......................................................................... 7-5
Figure 4: Program Message Offsets ...................................................................... 7-6
Figure 5: New Message Offset............................................................................... 7-7
Figure 6: Program Message Offsets ...................................................................... 7-7
Figure 7: HMI Program .......................................................................................... 7-8
Figure 8: Selection Example #1 ............................................................................. 7-9
Figure 9: Selection Example #2 ........................................................................... 7-10
Figure 10: Diagnostic Display Components ......................................................... 7-11
Figure 11: Diagnostic Display Sample Message .................................................. 7-12
Figure 12: First Input Parameter .......................................................................... 7-13
Figure 13: Typical Priorities for Alarm .................................................................. 7-15
Figure 14: Typical Priorities for Prompt ................................................................ 7-16
Figure 16: Second Input Parameter ..................................................................... 7-17
Figure 17: Third Input Parameter ......................................................................... 7-18
Figure 18: Categories of kHelp ............................................................................ 7-19
Figure 19: User Help ............................................................................................ 7-20
Figure 20: Alarm Specific Help ............................................................................ 7-20
Figure 21: Typical Work Action Diagnostic .......................................................... 7-21
Figure 22: Typical Work Action Switch Bypass Bit Rung ..................................... 7-22
Figure 23: Typical Home Action Diagnostic ......................................................... 7-22
Figure 24: Typical Home Action Switch Bypass Bit Rung .................................... 7-23
Figure 25: Embedded Variable Requirements ..................................................... 7-24
Figure 26: Embedded Variable Sample ............................................................... 7-25
Figure 27: Text List for EVs .................................................................................. 7-26
Figure 28: EV Example ........................................................................................ 7-27
Figure 29: Resulting Alarm ................................................................................... 7-27
Figure 30: Editing a Diagnostic Alarm .................................................................. 7-28
Figure 31: Editing the Switch Bypass Bit Rung .................................................... 7-29
Figure 32: Show Specific Tags in Cross Reference ............................................. 7-30
Figure 33: Sorting by Column in Cross Reference Display ................................... 7-31
Figure 34: Cross Reference after Sorting ............................................................ 7-31

© 2019 General Motors Company. All Rights Reserved


iii
7. Diagnostics
7.1. Objectives
1. The student will be able to identify the two categories of diagnostic
messages.
2. The student will be able to list the number of prompt and alarm
messages possible.
3. The student will be able to identify the three values present in a
diagnostic message.
4. The student will be able to describe how messages are prioritized for the
HMI display.
5. The student will be able to use the HMI Help screen to understand fault
information.
6. The student will be able to use the HMI message to find the rung of PLC
logic that is generating a HMI alarm message.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-1
7.2. Diagnostics Categories
The two basic categories of diagnostics messages are:
 Alarms/Warnings/Status
o Call for maintenance.
o Appear in the Alarm Banner on the HMI.
o Are sent to CIMplicity, Marquees.
o Are managed by the Plant Floor Event (PFE) program.
 PromptsAssist in operating the HMI.
 Tell why an operation is not allowed (“Can’t Do”) messages.
 Display instructions for confirm/cancel of certain actions.
o Appear in the Local Message Display on the HMI.
o Are local to the HMI.Are managed by the HMI program.
7.3. Diagnostic Numbers
Each program (station, robot, cell, etc…) generates its own Alarms and Prompts
as shown in Figure 1.

Figure 1: Alarms and Prompts

7-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.3.1. Message Offset and Message Ranges
The Message Offset dictates the available Message Range. The offset is
adjusted based on area and individual program need.
Examples:
Body shop, Press, GA, = 1000 – allows 999 prompts/alarms
Conveyors = 2000 to 3000
Paint = 3000 – allows 2999 prompts/alarms
Message Offsets may be adjusted as needed by individual programs within a
project.
This table is an example only and is not typical.

Program Message Offset Message Range


MCP 0 1-999
Cell 1 1000 1001-1999
AA010 2000 2001-4999
AA020 5000 5001-5999
Note: Message number 0 is not valid.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-3
7.3.2. Program Diagnostic Numbers
The 999 Alarm numbers and 999 Prompt numbers are used as shown in Figure
2.

Figure 2: Program Alarm and Prompt Numbers

7-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.3.3. HMI Message Numbers
The HMI requires unique numbers (values).

Figure 3: HMI Message Numbers

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-5
7.3.4. Program Message Offsets
Message offsets allow programs to be easily duplicated. Each program is
assigned a message offset value in the 1000’s range. This offset is added to
each diagnostic in the program.

Figure 4: Program Message Offsets

7-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 5: New Message Offset

Program Message Offsets


Program Offset Range
MCP Program 0
Cell Program 1,000 – 19,000*
Station Program 1,000 – 19,000*
Robot Program 50,000 – 73,000
Weld Controller Program 20,000 – 31,000
HMIs 90,000 – 92,000
Figure 6: Program Message Offsets

*Note: All projects will have an MCP program which uses 0 for its offset. All
cell programs will require an offset to be assigned.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-7
It is possible for several programs to send messages to the HMI program at the
same time. For example, a robot may “crash” on an auto station welder’s clamp.
Two faults would be generated; one from the robot (cannot move due to following
error) and one from the welding station routine (cannot open or close the clamp).
However, the HMI can display only one alarm and one prompt at a time in the
banner at the top of the screen. See
Figure 7.

Figure 7: HMI Program

So, one alarm and one prompt must be chosen. This is done based on
priority and selected station, as shown in Figure 8 and Figure 9.

7-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
If station AA030 is selected on the HMI and AA020 has the highest priority
diagnostic:

Figure 8: Selection Example #1

Then AA020 diagnostic are sent to the HMI.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-9
If station AA030 is selected on the HMI and all programs have equal priority.

Figure 9: Selection Example #2

Then AA030 diagnostics are sent to the HMI.

7-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.4. HMI Diagnostic Display
The message offset and the program name is stored inside the “HMI” tag for each
program. This information is displayed along with the diagnostic, including: the HMI
message number (message number + message offset), the program message
number, and the program name.

Actual
Actual HMI Message
Program
PV Message
Message Number
Message Program Name
Number 1-999 ASCII String
number Number

Figure 10: Diagnostic Display Components

A diagnostic consists of:


 A priority value to determine which diagnostic to display.
 A message value for the HMI.
 A more help value used by the Help screen.
A diagnostic is initiated by a JSR call to routine “zZ999_Diagnostics”. The
“zZ999_Diagnostics” routine is the system diagnostic handler. Three values are
passed to the routine:
The priority of the message as identified by certain parameters.
The text of the message.
Which Help Screen to display.
It is extremely important that the proper number of parameters on a JSR are
programmed (parameter count varies depending on the subroutine). Having an
incorrect number of parameters will cause the subroutines to operate improperly, or,
in some cases, fault the controller.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-11
Common Program
Diagnostics Routine
JSR
Jump To Subroutine
Routine Name zZ999_Diagnostics
Input Par kDiag.Alarm.Comm
Input Par kAlarm[301]
Input Par kHelp.DNFlt

Figure 11: Diagnostic Display Sample Message

7-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.4.1. First Input Parameter: Priority
The priority comes from the controller tag, kDiag, which provides named
“constant” values for priority and is used to distinguish alarms from prompts. The
names (for example, “kDiag.Alarm.Comm”) represent numbers that are sent to
the diagnostics routine for evaluation. The routine has to choose which alarm
has highest priority; this is how it makes the choice.

Figure 12: First Input Parameter

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-13
The following table shows typical Alarm priorities:
kDiag.Alarm.xxxx Purpose
AirAndHyd Air Pressure and Hydraulic Faults
AppFault Logix Programming Faults
Comm Communication Faults
SafetyComm Safety Communication Faults
Cycle Automatic Cycle Faults
EStops Emergency Stop PB and Power Faults
Gates Perimeter Gate Faults
LocalIO Local Chassis Input and Output Card Faults
MagnFaults Relay Faults (abnormal operation)
MagnSts Relay Status
Master Master On Faults
Mode Automatic Mode Faults
PartPres Part Present Faults
Power Power Supply and Circuit Breaker Faults
ProcessEquip Misc. Process Equipment Faults
Robots Robot Faults
Status Lowest Level Faults
SwitchFlts Switch Faults Not Bypassable
SwitchFltsBypassable Switch Faults Bypassable
SwitchFltsNoMotion Switch Fault No Motion-Not Bypassable
SwitchFltsMotionGrpLimit Switch Fault Motion Group Limit reached
VFD Variable Frequency Drive Faults
Welding Welding Faults
ProdFltAndonStop Production Fault Andon Line Stop
ProdFltOperLoad Production Fault Operator Load Device
ProdFltGeneral Production Fault General
ToolFltDimExceeded Tooling Fault Dimension Exceeded
ToolFltGeneral Tooling Fault General
QualFltGeneral Quality Fault General
TputFltBlocked Thruput Fault Blocked
TputFltStarved Thruput Fault Starved
TputFltGeneral Thruput Fault General
SysFltGeneral System Fault General
MatlFltOutOfParts Material Fault Out of Parts
MatlFltGeneral Material Fault General
MaintWarnPLCSW PLC Software Maintenance Warning (Minor Fault ...)
MaintWarnPLCHW PLC Hardware Maintenance Warning (Battery Low ...)
MaintWarnGeneral Maintenance Warning General
ProdWarn Production Warning

7-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
kDiag.Alarm.xxxx Purpose
ToolWarn Tooling Warning
QualWarn Quality Warning
TputWarn Thruput Warning
SysWarn System Warning
MatlWarn Material Warning
MaintStatusPLCForceEdit PLC Forces and/or Edits Present and/or Active
MaintStatusGeneral Maintenance Status General
ProdStatus Production Status
ToolStatus Tooling Status
QualStatus Quality Status
TputStatus Thruput Status
SysStatus System Status
MatlStatus Material Status
Figure 13: Typical Priorities for Alarm

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-15
kDiag.Prompt.xxxx Purpose
Confirm Press DO to Confirm Prompt (yellow)
PBFeedback Pushbutton Feedback (Can’t Do)
Prompt
General General Prompt
Alert Alert / Warning (Process, Battery,
etc.)
Status1 Status Level 1
Status2 Status Level 2
Status3 Status Level 3
Bypass Device / Item Bypassed Prompt
Figure 14: Typical Priorities for Prompt

7-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.4.2. Second Input Parameter: Message Number
The message number is the second parameter sent to the diagnostics routine. It
is a “value” that will tell the HMI which message to display.
o Diagnostics are initiated by value
 Alarm message numbers come from the controller tag kAlarm[ ]
 Prompt message numbers come from the controller tag
kPrompt[ ]
o They provide named “constant” values for Alarms and Prompts.
o The array position contains a matching constant number.
 kAlarm[301] contains the “constant” value 301 (shown in Figure
15).
 kPrompt[34] contains the “constant” value 34
This enables searching and the cross-reference feature to show the use of all
diagnostics, and to quickly find used and unused diagnostics.

Figure 15: Second Input Parameter

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-17
7.4.3. Third Input Parameter: More Help
The More Help value comes from the controller tag, kHelp. It provides named
“constant” values for help categories. The example shown in Figure 16 would
show the “DNet Node Not Active” help message.
If no help screen or message is provided, the number zero (“0”) is passed to the
diagnostics routine. This is accomplished by using the parameter “kHelp.None”.

Figure 16: Third Input Parameter

7-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
kHelp.xxxx Purpose
None No Help Available
SpecificExists Specific Help Exists
AppFault Application (z_ Routine) Fault Help
CircuitBreaker Circuit Breaker Help
ProdConsume Producer/Consumer Help
RemProc Remote Controller not in Run Help
DNFlt DeviceNet Node Fault Help
SafetyDNFlt Safety Assembly DeviceNet Node Fault Help
ComboDNFlt Safety and Standard Devicenet Fault Help
EStop E-Stop Help
Module Logix Chassis Module Fault Help
NotOn Switch Not On (Not Made) Help
NotOnNoMotion Switch Not On (Not Made) - No Motion Detected
Help
NotOff Switch Not Off (Not Released/Stuck On) Help
Relay Control Relay Help
SRFuseOk Safety Relay Fuse Ok Help
SRNotOn Safety Relay Not On Help
SRNotOff Safety Relay Not Off (Failed/Stuck On) Help
ChOffFault Safety Channel Off Fault Help
IOPulseFault Safety I/O Pulse Test Or Input Fault
IOInputFault Safety I/O Input Fault
IOOutputFault Safety I/O Output Fault
Robot Robot Help Array
WeldController Weld Controller Help Array
User User Help Array
Figure 17: Categories of kHelp

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-19
7.4.3.1. User Help
The “User” General Help value comes from the controller tag, kHelp.User[x].
Nineteen predefined values are pre-programmed.
o User must enter the help message text in the HMI.
o Use these when multiple instances of the same help is required
 Example Siemens ET200S Module Fault

Figure 18: User Help

7.4.3.2. Alarm Specific Help


Alarm specific help can be used for any alarm:
o Works with or without existing category help
o Uses the alarm value to add an additional 255 characters to an alarm
message
o When no category help is used, kHelp.SpecificExists is used to enable
the “More Help” pushbutton

Figure 19: Alarm Specific Help

7-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.5. Diagnostic Examples
This section shows diagnostics for a work action and home action cylinder.
7.5.1. Typical Work Action Diagnostic
In the work action routine the home switch not off and the work switch not on are
diagnosed. The Alarm numbers in the rung comment and the kalarm numbers in the
JSRs must match in order from top to bottom.

Figure 20: Typical Work Action Diagnostic

The BypSw bool array bit must match the alarm numbers from the diagnostic rung
just above this rung. The bit turns on when a switch bypass is selected from the HMI
Tool Overview Screen.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-21
Figure 21: Typical Work Action Switch Bypass Bit Rung

7.5.2. Typical Home Action Diagnostic


In the home action routine the work switch not off and the home switch not on are
diagnosed. The Alarm numbers in the rung comment and the kalarm numbers in the
JSRs must match in order from top to bottom.

Figure 22: Typical Home Action Diagnostic

7-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The BypSw bool array bit must match the alarm numbers from the diagnostic rung
just above this rung. The bit turns on when a switch bypass is selected from the
HMI.

Figure 23: Typical Home Action Switch Bypass Bit Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-23
7.6. Variable Messages
The PFE Alarm protocol includes Embedded Variable (EV) Alarm feature on both
HMIs and GPM&C screens. Alarm messages with EV can be substituted with
numeric and/or ASCII texts. The PLC and HMI EV Alarms code uses 3 variables
(PFEControl.VAR1, VAR2, and Var3) and the HMI’s VariableTexts_TL[] text list
array to function. The following is the AlarmEmbeddedVariableExample from the
unscheduled programs in the GCCS2 template logic, consult GCCS2 for more
information.
Rung 0 is a rung comment that states the minimum revision levels required for
UDTs, Routines and Programs to permit Embedded Variables to function properly.

Figure 24: Embedded Variable Requirements

Rung 1 this is the Sample Embedded Variable Alarm Rung. Your rung will vary. Up
to 3 different embedded variables can be used and they can be used more than
once each. Do not include any MOV that is not used in your EV alarm.
1. Replace the TBD with logic conditions that will enable the alarm.
2. Replace the PFEPointer1 tag with the tag that will provide number that
populates PFEControl.Var1 (variable 1) Remove if the variable is not used.
3. Replace the PFEPointer1 tag with the tag that will provide number that
populates PFEControl.Var2 (variable 2) Remove if the variable is not used.
4. Replace the PFEPointer1 tag with the tag that will provide number that
populates PFEControl.Var3 (variable 3) Remove if the variable is not used.
5. Insert the OTL (latch) of PFEControl.IsEmbeddedVariable before the JSR
zZ999_Diagnostics.

7-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6. JSR call to the zZ_Diagnostics routine. KAlarm number must be unique
within program.

Figure 25: Embedded Variable Sample

Rung 2 is an example of the text list used to populate the EVs.


1. TL58 is the maximum length of the text list entry in number of characters.
2. VariableTexts_TL[#]: is the name of the text list and the number of the text list
entry.
3. After the VariableTexts_TL[#]: is the actual text.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-25
Figure 26: Text List for EVs

The following rungs will result in the alarm message shown after the example.

7-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 27: EV Example

Figure 28: Resulting Alarm

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-27
7.7. Exercise 1: Programming Alarms
Alarms help maintenance and others determine what is not functioning properly in
an automation cell or station. GM places alarms in the routine that controls the
movement or process. This exercise will demonstrate the steps to enter an alarm
and make sure that the alarm numbers are unique within the program. In this
exercise, you will:
 Enter an alarm.
 Use Cross Reference to find available alarm numbers.
 Change the alarm numbers.
 Change the alarm rung comments.
 Change the Switch Bypass Bit rung.

Figure 29: Editing a Diagnostic Alarm

1. Open the exercise project “Core07Exercises.ACD” in RSLogix5000.


2. Program typical work action alarms.
A. Open TP005 program.
B. Open the CloseClamps1 routine, go to Rung 14.

7-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
C. Replace NOP instructions with a zZ999 diagnostic for alarm 63 and
64 with appropriate Help (use the alarm priority and help category
lists presented in this module to assist you). Use bypassable priority
for both alarms.
D. Check that you have only three input parameters and zero return
parameters.
E. Update switch bypass bit rung to bits 63 and 64. (Should be correct)

Figure 30: Editing the Switch Bypass Bit Rung

Note: Having the proper number of parameters on a JSR is very important


(parameter count varies depending on the subroutine). Having an incorrect
number of parameters will cause the subroutines to operate improperly, or in
some cases, fault the controller.

3. Verify the CloseClamps1 routine.


A. Select the routine in the controller organizer, right click, and select
Verify.
4. The alarm numbers used in this case are already used elsewhere in this
program, verify using cross reference. Now, find another available alarm
number.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-29
A. Open the controller tag database. You can just cross reference
and select the kAlarm tag.
B. Select the kAlarm tag, right click, and select Go to Cross
Reference.
C. Use the Show pull down menu to change to the TP005 under
Container (Program)

Figure 31: Show Specific Tags in Cross Reference


D. Double click the column heading of Reference to place the kAlarm
tag list in numerical order.

7-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 32: Sorting by Column in Cross Reference Display

E. Cross reference shows the alarm numbers used by each program.


Using this list find two available alarm numbers in the TP005
program (any unused number will do).

Figure 33: Cross Reference after Sorting

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-31
5. Change the alarm number of the Clamps1 Opened Not Off alarm and the
Clamps1 Closed Not On alarm.
A. Edit the alarm number (value) of the alarm in Step 2 (alarms 63,
64) to the new alarm number found in step 4E above.
B. Check that you have only three input parameters and zero return
parameters.
6. Correct the rung comment on the alarm rung to reflect the new alarm
number.
A. Double click the rung comment in the ladder editor window.
B. Change “Alarm[63]” and “Alarm[64]” to match the new alarm
number.
C. Click the green check mark when complete.
7. Update switch bypass bit rung to match the new alarm numbers chosen.
The Switch Bypass Bit rung immediately follows the Switch Diagnostic
(Alarm) rung.
8. Verify and save the exercise project.

END OF EXERCISE

7-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7.8. Review
1. Name the two categories of diagnostic messages.
2. In the body shop, how many prompt and alarm messages are possible?
3. What are the three values present in a diagnostic message?
4. How are messages prioritized for the HMI display?
5. How is the HMI help screen used to identify fault information?
6. How can a HMI message be used to find the rung of PLC logic that is
generating a HMI alarm message?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 7-33
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 8: Scroll List


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Revised KSL content. Updated exercise.
Synchronized to G16 with Powertrain and
7-30-15 6.0 J. Hocking
EtherNet I/O
8-29-19 7.0 J. Hocking Revised exercises.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application
of the materials in this manual.
The examples, diagrams, and charts in this manual are included solely for
illustrative purposes. Because of the many variables and requirements
associated with any particular safety situation, the General Motors Company
expressly disclaims all express and implied warranties relating to the
materials in this manual, including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved – Rev. 7.0


i
Table of Contents
8. Scroll List ................................................................................... 8-1
8.1. Objectives .................................................................................................. 8-1
8.2. Scroll List Features ................................................................................... 8-2
8.2.1. Scroll List Screen .............................................................................. 8-3
8.2.2. Scroll List Expand/Collapse .............................................................. 8-4
8.2.3. Function List ..................................................................................... 8-5
8.2.4. Screen Indicators .............................................................................. 8-7
8.2.5. Status Indicators ............................................................................... 8-8
8.2.6. Action Routine Example.................................................................... 8-8
8.3. Scroll List Logic ...................................................................................... 8-11
8.3.1. Sequence Routines ........................................................................ 8-14
8.3.2. Grouping ......................................................................................... 8-16
8.4. Exercises: ................................................................................................ 8-20
8.4.1. Exercise 1: Add Items to the Scroll List........................................... 8-20
8.4.2. Exercise 2: Add Groups to the Scroll List........................................ 8-20
8.5. Review ..................................................................................................... 8-21

© 2019 General Motors Company. All Rights Reserved – Rev. 7.0


ii
Table of Figures
Figure 1: Scroll List ...........................................................................................8-2
Figure 2: Scroll List Screen with Selected Stations ...........................................8-3
Figure 3: Scroll List Screen (Expand and Collapse List) ...................................8-4
Figure 4: Scroll Screen (Function List) ..............................................................8-5
Figure 5: Function List ......................................................................................8-6
Figure 6: Function List Indicators ......................................................................8-7
Figure 7: Function List Indicators ......................................................................8-8
Figure 8: Scroll List Screen (Action Display) .....................................................8-8
Figure 9: Scroll List Text Value – MOV ..............................................................8-9
Figure 10: Scroll List Status Indicator – MOV ....................................................8-9
Figure 11: KSL Controller Tag (Partial) ............................................................8-10
Figure 12: Action Scroll List Status Types .......................................................8-10
Figure 13: KSL.Yellow Status Indicator Members ............................................8-11
Figure 14: HMI Scroll List Enable Rung (Dual HMIs) ......................................8-13
Figure 15: Sequence Routine .........................................................................8-13
Figure 16: Starting Scroll List ..........................................................................8-14
Figure 17: Adding Action to Scroll List ............................................................8-14
Figure 18: Do/Undo Parameters .....................................................................8-15
Figure 19: Ending Scroll List ...........................................................................8-15
Figure 20: Grouping Close Actions .................................................................8-16
Figure 21: Grouping Open Actions..................................................................8-17
Figure 22: Parameters for StartGroup and EndGroup ....................................8-18
Figure 23: Group Details .................................................................................8-19

© 2019 General Motors Company. All Rights Reserved – Rev. 7.0


iii
8. Scroll List
8.1. Objectives
1. The student will be able to describe the Function List in the Scroll List.
2. The student will be able to describe the Function Indicators in the Scroll List.
3. The student will be able to describe the logic used to generate a Scroll List.
4. The student will be able to operate the controls on the Scroll List Screen.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-1
8.2. Scroll List Features
The Scroll List (Figure 1) represents the available manual control. For a station, this
would be the sequence of operations. For equipment without a “sequence”, the Scroll
List contains manual functions.

Figure 1: Scroll List

The Scroll List order is built by logic, and there are no limits to the length of list. The list
can be dynamically changed within the logic (for example, based on style or mode
selection). It also displays the status for each line with meaningful text. For example:
Close Clamps has status: Closed, Closing, and Close Flt; and Load Part has status:
Present, Not Present, and Partial.
The Scroll List also features Auto Cursor capability (Cursor follows machine sequence)
and is controlled by a rung in the Action logic routine. The Scroll List allows the grouping
of actions together (Collapse/Expand). The collapsed view shows the group line only. In
Figure 1, the “Oper Loads Door” is the group line. The expanded view shows all actions
within the group. In the manual mode, all actions can be:
 Triggered together by pointing to the group line.
 Triggered independently by pointing to a specific line within the group.
Note the group line is not an action and does not require an action routine.

8-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
8.2.1. Scroll List Screen
The Scroll List screen shows the selected station’s available manual control,
including the following:
 Cursor and Page Up/Page Down buttons.
 Blue cursor buttons are in manual mode or “active.”
 Gray cursor buttons are disabled because Auto Cursor is active. Touching gray
cursor buttons will make them active and disable Auto Cursor.
 The Scroll List is expanded or collapsed by touching the area to the left of the list.

Figure 2: Scroll List Screen with Selected Stations

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-3
Figure 3: Scroll List Screen (Expand and Collapse List)

8.2.2. Scroll List Expand/Collapse


The Scroll List expands and collapses to show more or less detail. Group Lines are
designated with a plus (+) sign to the left when in collapsed mode (1) and with a “T”
when in expanded mode.
o In manual mode, when the Group Line is selected, all grouped actions are
requested together when Do / Undo is pressed.
o The action pushbutton bit (.pb) of all actions in the group turn on
simultaneously.
o Scroll List lines are clear for motion when the green indicator is ON,
indicating that the motion’s clear rung is true.

8-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
8.2.3. Function List
The Scroll Screen Function List provides maintenance functions not included on the
Scroll List.

Figure 4: Scroll Screen (Function List)

The Scroll List function list is updated based on the selected station and the selected
line. The functions that may be presented to the user include:
o View Normal Scroll List/Bypassable Lines/Skippable Lines.
o Turn Auto Cursor On/Off.
o Return to Load Position.
o Return to Unload Position.
o Reset/Set All Completes.
o Reset/Set Line Complete.
o Bypass Current Line / Remove Bypass.
o Skip Current Line/Remove Skip.
o Turn User Function 1-6 On/Off (example: Weld On/Off).

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-5
Figure 5: Function List

 Views: Normal Scroll List / Bypassable Lines / Skippable Lines


o “View Normal” changes the Scroll List to Normal View
o “View Bypassable” changes the Scroll List to Bypassable view
o “View Skippable” changes the Scroll List to Skippable view
 Auto Cursor On/Off
o When Auto Cursor is on, the Scroll List cursor follows the machine
sequence
o Operates in Auto or Manual Mode
 Return to Load Position
 Return to Unload Position
 Reset / Set All Completes
o Sets or resets the station cycle complete and all process completes
The functions below apply to the Scroll List line pointed to by the Scroll List Cursor.
 Reset / Set Current Line Complete
o Sets or Resets the process complete for an individual process action
 Bypass Current Line / Remove Bypass
o Bypasses or removes the bypass for an individual line’s process action
o The line remains bypassed until the bypass is removed
o Bypasses are cleared / removed when:
 User removes line bypass using functions list.
 User removes all bypasses using Remove All Bypass on cell
maintenance screen.
 Controller enters Run Mode (i.e. First Scan). Any equipment that
had Bypass Present may no longer operate properly without
establishing bypasses.
 Skip Current Line/Remove Skip
o Skips or removes the skip for an individual line’s process action
o The skip is active only for the current cycle.

8-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
o Skipping a line will require setting the station cycle complete at the end of
the cycle.
o Station specific functions
o Example: Weld On/Off

8.2.4. Screen Indicators


Figure 6 shows the various indicators that may be present on the bottom left of
the Scroll List screen. Figure 7 describes each of these indicators.

Process Complete Indicator Load Position Indicator


No Process Completes Not at Load

Some Process Completes At Load

All Process Completes

Skip Indicator Unload Position Indicator


Not at Unload

Skippable At Unload

Bypass Indicator Station Specific Functions


Text varies depending
on function
Bypassable

Figure 6: Function List Indicators

Indicator Description
No Process Complete No process is complete in the station.
Some Processes
Some processes in the station are complete.
Complete
All Process Complete All processes in the station are complete.
The black box means you cannot skip the
Skip Indicator
current Scroll List line.
Skippable The current Scroll List line may be skipped.
The black box means you cannot bypass the
Bypass Indicator
current Scroll List line.
The current Scroll List line may be
Bypassable
bypassed.
Load position indicator Green means station is at load position.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-7
Indicator Description
Gray means station is not at load position.
Unload position Green means station is at unload position.
indicator Gray means station is not at unload position.
Station specific Text and color will vary depending on for
functions what indicator is used.
Figure 7: Function List Indicators

8.2.5. Status Indicators


The Scroll List status indicator updates to show the current state of the action.

Figure 8: Scroll List Screen (Action Display)

8.2.6. Action Routine Example


The Scroll List Action text along with the Action status indicator are built in the Scroll List
Configuration rung in the Action routine.
1. The constant value in the first MOV source is the value that is used to set
the text in the scroll list. The number must be unique in the program among
all SL[##] entries and match the rung comment.

8-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 9: Scroll List Text Value – MOV
2. The KSL.Color.Action is a controller tag that represents a constant that is
assigned its value by the routine zZ010_Constants routine located in the
MCP program. This is used to display status of the action on the right side
of the scroll list in a corresponding color. Typical actions will have an
indicator in both the work and home routines.

Figure 10: Scroll List Status Indicator – MOV

The KSL controller tag is shown in .Figure 11.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-9
Figure 11: KSL Controller Tag (Partial)

When to use KSL.Yellow or KSL.Green


 Use KSL.Yellow for the work position.
o Work position of the equipment is generally the position when the
equipment is welding, sealing, filling etc.
 Use KSL.Green for the home position.
o Home position of the equipment is generally the position when the
equipment is empty.

Figure 12: Action Scroll List Status Types

The KSL controller tag has many parts. Action status indicators for the Scroll List are
handled by the first two members of the tag, KSL.Yellow and KSL.Green, they both
have the members shown in Figure 12.

KSL.Yellow. Yellow Colored Status Indicators or

8-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
or KSL.Green Green Colored Status Indicators
Close Close Status Indicator
Open Open Status Indicator
Advance Advance Status Indicator
Return Return Status Indicator
Engage Engage Status Indicator
Disengage Disengage Status Indicator
Raise Raise Status Indicator
Lower Lower Status Indicator
On On Status Indicator
Off Off Status Indicator
Forward Forward Status Indicator
Back Back Status Indicator
InPosn In Posn Status Indicator
Work Work Status Indicator
Home Home Status Indicator
Increase Increase Status Indicator
Decrease Decrease Status Indicator
NoCarrier No Carrier Indicator
Figure 13: KSL.Yellow Status Indicator Members

Work and Home indicators display when the output memory for an Action routine is
turned on. If the Action routine completes before the Action timer is done action
completed indicator displays. If not, motion indicator displays a fault. (See below)
8.3. Scroll List Logic
All actions routines are called from the S000_Sequence routine. The Scroll List is built
by logic in the S000_Sequence routine. There are two versions of the seven routines
used to build the Scroll List. One version is used for Single HMI applications; the other
is for Dual HMI Applications. Note that two HMIs can be used per station. The routines
for single and dual applications share the same routine names as shown below:
 zZ101_StartList
 zZ102_AddLine
 zZ103_DoUndo
 zZ104_TextLine
 zZ111_StartGroup
 zZ112_EndGroup

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-11
 zZ121_EndList
When the application has two HMIs, the HMI Scroll List enable rung must be added to
the top of the S000_Sequence routine. Refer to Figure 14.

8-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 14: HMI Scroll List Enable Rung (Dual HMIs)

Figure 15: Sequence Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-13
8.3.1. Sequence Routines
The Scroll List is started by calling the “zZ101_StartList”. See Figure 11.

Figure 16: Starting Scroll List

Then, as the actions (sequence steps) are programmed, they are added to the Scroll
List by the logic shown in Figure 17.

Note: The order of the rungs in the S000_Sequence routine dictates the display
order of the Scroll List.

Figure 17: Adding Action to Scroll List

8-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The parameters for “Do” and “Undo” functions are as follows:

Figure 18: Do/Undo Parameters

The Scroll List is ended by calling the “zZ121_EndList”.

Figure 19: Ending Scroll List

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-15
8.3.2. Grouping
To group actions, actions are surrounded with “StartGroup” and “EndGroup” routines
in the logic. See Figure 15.

Figure 20: Grouping Close Actions

8-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 21: Grouping Open Actions

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-17
Groups cannot be nested: a group must be ended before a new group is started.
The parameters for the StartGroup and EndGroup are as follows:

Figure 22: Parameters for StartGroup and EndGroup

8.3.2.1. Group Details


Grouping is executed in the S000_Sequece routine only. Groups do not have action
logic. The zZ111_StartGroup JSR will use three KSL input parameters. The first one is
the Scroll list Text number. The second input parameter indicates the status of the
Action (Do button press). The third input parameter indicates the status when the
opposite Action (UnDo button press).
The Group Indicators will display the sum of the status for all actions in the group. If
any action is faulted the fault will display. The zZ111_StartGroup JSR will include both
KSL constants for any StartGroup used.

8-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 23: Group Details

Note: Copy the rung comment from the Scroll List Configuration rung in any action
routine, like S###_CloseClamps for example. Do not forget to edit after you paste in the
rung comment.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-19
Exercises:
8.3.3. Exercise 1: Add Items to the Scroll List
The objective of this exercise is to add calls to the action routine and add the action
to the scroll List. Use the material presented in this module for any guidance
required.
1. Open the exercise project “Core08Exercises.ACD” in RSLogix5000.
2. Add scroll list calls to S000_ Sequence for the S020_CloseClamp2 and
S105_OpenClamp2 routines in the TP005 program.
A. Add a scroll list call rung for the S020_CloseClamp2 action to
S000_Sequence below the S015_CloseClamps1 action (use the
information presented in this module to assist you).
B. Add a scroll list call rung for the S105_OpenClamp2 action to
S000_Sequence below the S100_OpenClamp1.
3. Verify and save the exercise project.

END OF EXERCISE

8.3.4. Exercise 2: Add Groups to the Scroll List


The objective of this exercise is to add group lines to the scroll list in the
S000_Sequence routine and add group line text to the scroll list in the HMI. Use the
material presented in this module for any guidance required.
1. Continue in “Core08Exercises.ACD” in RSLogix5000.
2. Open the TP005 program S000_Sequence routine in RSLogix5000.
A. Group the Close Clamp actions using Text ID 9 (use the information
presented in this module to assist you).
B. Group the Open Clamp actions using Text ID 10.
3. Add the Scroll list text rung comment to the start group lines (copy a SL[ ]
rung comment from an already existing action scroll list rung and then
modify it).
4. Verify/Validate the project in RSLogix5000.
5. Save the project.

Important: Save your project, it will used in later exercises.

END OF EXERCISE

8-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
8.4. Review
1. How do you expand and collapse the Scroll List tree?
2. How do you use the Action Clear indicator in the Scroll List?
3. Name some items found on the Function List in the Scroll List?
4. What are the Function Indicators in the Scroll List?
5. What routine in the logic is used to generate a Scroll List?
6. How are the controls operated on the Scroll List Screen?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 8-21
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 9: Robot Concepts


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
Added Path Control Signals for Global 3
8-26-13 5.0 J. Hocking
robots
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
Changed focus to Global 3 and above robot
9-20-19 7.0 J. Hocking
standards.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual,
including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
9. Robot Concepts .................................................................................. 9-1
9.1. Objectives .............................................................................................................. 9-1
9.2. Robot Specification .............................................................................................. 9-2
9.3. Path Control Signals (GRS-3) .............................................................................. 9-3
9.4. Style (GRS-3) ......................................................................................................... 9-3
9.5. Options (GRS-3) .................................................................................................... 9-3
9.6. Path Segments (GRS-3) ....................................................................................... 9-4
9.7. “Continue” Signals (GRS-3) ................................................................................ 9-6
9.8. Path Decision Control ........................................................................................ 9-10
9.9. Robot Clear.......................................................................................................... 9-11
9.10. Process Control Signals (GRS-3).................................................................... 9-12
9.11. Status & Miscellaneous Signals...................................................................... 9-13
9.12. Review ................................................................................................................ 9-14

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: GRS-3 Path Control Signals Global 3 ....................................................... 9-3
Figure 2: Path Segment Definitions ........................................................................... 9-4
Figure 3: Template Defined Path Segments ............................................................. 9-5
Figure 4: Weld Program RTC .................................................................................... 9-6
Figure 5: Robot Clear of Station ................................................................................ 9-7
Figure 6: Weld Task OK — Successful Process ....................................................... 9-7
Figure 7: Weld Task OK — Incomplete Process ....................................................... 9-8
Figure 8: Weld with Clamp Reposition ...................................................................... 9-8
Figure 9: Robot Code Example ................................................................................. 9-9
Figure 10: Weld, Pick, and Drop ................................................................................ 9-9
Figure 11: Decision Code ........................................................................................ 9-10
Figure 12: Robot Clear ............................................................................................ 9-11
Figure 13: Robot Clear Solution .............................................................................. 9-11
Figure 14: Process Control Signals ......................................................................... 9-12
Figure 15: Status and Miscellaneous Items ............................................................ 9-13

© 2019 General Motors Company. All Rights Reserved


iii
9. Robot Concepts
9.1. Objectives
1. The student will be able to describe the interface between the robot and
the cell controller.
2. The student will be able to describe the use of style numbers between the
cell controller and the robot.
3. The student will be able to describe the use of option bits between the cell
controller and the robot.
4. The student will be able to describe the use of “path segments.”
5. The student will be able to describe the use of “Request to Continue” and
“OK to Continue” bits.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-1
9.2. Robot Specification
 GRS1 Robot Technical Specification
o Out of the box content
o Defines hardwire interface
o Defines MCP controller to robot controller interface:
 EtherNet Safe communication for all safety signals
 Ethernet for upload/download support and control
 Safety power
o Defines interface to Auxiliary Panels
 Process Control Equipment
 Weld Controllers, Dispense Controllers, etc…)
 Dens-Pack (including PedWeld)
 Defines Receptacle / Cable / Pinout for Power

 GRS2 Robot Rules of Process Specification


GRS2 sets the maximum limits for robot processing. These limitations are
critical to the ability to purchase common equipment.
o Maximum of 24 Robots per Cell (Gated Area)
o Maximum of 2 process control panels per robot
 Examples: 2 Spot Weld controllers, 1 Spot, 1 Dispense
o Maximum of 2 end effector functions
 Examples: 2 Weldguns, 1 Weldgun & 1 Material Handling (MH), 1
Spot & 1 Dispense, etc.
 GRS3 Robot Integration
o Path segment Tables
o Robot Dress
 GRS4 Robot Interface
The GRS-4 specification defines all I/O and software requirements associated
with General Motors’ standard robot to cell controller interface to ensure
compatibility with MAAC Common Controls Software, GCCS-1.

9-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
9.3. Path Control Signals (GRS-3)
There are several “types” of application signals, such as Path Control, Process
Control, and Status. The Path Control signals contain information concerning the
commanded motion. Figure 1 summarizes the Path Control signals for Global 3 and
greater robots; the details of the signal usage are coming.

Controller to Robot Robot to Controller


Style Number 1–127 Style Number Echo 1–127
A, B, C, A, B, C,
Option Bits Option Bits Echo
D, E D, E
Initiate Style Manual Style Request
Decision Code 0–31 Decision Code Echo 0–31
Clear to Enter Zone 1–12 Clear Zone 1–12
OK to Continue Request to Continue
Path Segment 0–255
In Cycle
Task OK
Figure 1: GRS-3 Path Control Signals Global 3 Removed Global 2 Path control signals and style table

9.4. Style (GRS-3)


Style Numbers identify different robot paths required by the “style” of the part being
operated on.
 Style Number (1 to 24, 50 to 127) for Production Paths
 Style Numbers (25 to 49) for Special / Maintenance Paths
The robot reads the style once when “Initiate Style Program” bit is ON from the
controller and the style is then echoed back to the controller.
Style numbers need to be defined for each project.
NOTE: See GRS Standards for style assignment.
9.5. Options (GRS-3)
The option bits (A thru E) identify minor path variations within a given robot
style program. The robot reads options once when the “Initiate Style Program”
bit is ON from the controller and then the robot echoes the option bits to the
controller.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-3
9.6. Path Segments (GRS-3)
The Path Segments numbers (0 to 255) identify the location of a robot along its path
within a style program.
 For example: A robot with Path Segment number equal to 1 represents the
robot “Moving to Pounce.”
 Path Segment numbers must be unique within a style program.
 Path Segment numbers are reused between style programs (for example: Path
segment 50 is always “Robot in Process”, but different style programs will have
different process paths).

Path segments 0–9 and 60–63 have standard definitions as shown in Figure 2.

Segment # Usage
0 Unknown / Invalid segment
1 Pounce segment
2 Home to Repair segment
3 Repair to Home segment
Process 1 Tip Dress/Purge
4
segment
Process 2 Tip Dress/Purge
5
segment
6 Cap Change segment
7 Tool Change
8 Spare
9 Fast Fault Recovery
10–59 Template segments
60
Reserved
61
62 Tool Clear segment (Optional)
63 All Clear segment
Figure 2: Path Segment Definitions

9-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Path segments 10-59 have template definitions as shown in Figure 3. Keep in mind
that:
 Most robots use these template segment numbers
 Some robots may require re-defining these segments based on the application,
for example, a pizza rack or stacker robot with multiple drop locations.

Segment # Usage Description


10-13 Pick 1
14-17 Pick 2 There are five locations where a robot
18-21 Pick 3 can pick from. Each location can be
22-25 Pick 4 divided into four segments.
26-29 Pick 5
30-33 Drop 1
34-37 Drop 2 There are five locations where a robot
38-41 Drop 3 can drop to. Each location can be divided
42-45 Drop 4 into 4 segments.
46-49 Drop 5
There are two locations where a robot
can be processing (i.e., weld, dispense).
50-54 Process 1
Each location can be divided into five
55-59 Process 2
segments. (This allows Reposition of
Clamps.)
Figure 3: Template Defined Path Segments

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-5
9.7. “Continue” Signals (GRS-3)
A “Request to Continue” (RTC) signal is required when the robot needs to handshake
with the controller at a specific point in the path. Some of these points may be:
 At pounce position (always requires RTC).
 Clear to drop / pick.
 No part check / part check.
 Decision code point.
A path segment number with “Request to Continue” ON identifies a robot at a specific
point in its path. For example: A robot with path segment number equal to 1 AND with
the “Request to Continue” bit On, represents the robot “At Pounce”.

After the robot turns on the “Request to Continue”, it must wait for the “Continue OK”
bit from the controller. Once the “Continue OK” bit is ON, the robot changes the path
segment number and continues.
Figure 4 through Figure 8 illustrate this using a weld program example.

Figure 4: Weld Program RTC

9-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 5: Robot Clear of Station

Figure 6: Weld Task OK — Successful Process

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-7
Figure 7: Weld Task OK — Incomplete Process

Figure 8: Weld with Clamp Reposition

9-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Note: This is only an example and may not match actual robot programs
GO[PathSegment] = 1 -- Group Output
Message(“In Pounce”) -- Message to Teach Pendant
Move ... Robot indicates to PLC
Move ... “Moving to Pounce”

DO[RequestToContinue] = ON -- Digital Output


Message(“At Pounce”) Robot indicates to PLC
“At Pounce”

Wait DI[OkToContinue] = ON -- Wait for Input from controller


Robot waits for PLC to
continue from pounce
GO[PathSegment] = 50
DO[RequestToContinue] = OFF -- Turning off here, prevents
timing problem
Message(“In Weld Path”) Robot indicates to PLC
Move ... “In Weld Path”
Weld ...

Figure 9: Robot Code Example

Figure 10: Weld, Pick, and Drop

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-9
9.8. Path Decision Control
 Decision Code numbers are used when different paths are required within the
same robot style program as shown in Figure 11.
 Typical use: Multiple pick / drop locations for the same style of part.
 Requires the robot to be at a “Request to Continue” point.
 Decision code is read by the robot when the “Continue OK” bit is ON from the
controller and is then echoed back to controller.

Figure 11: Decision Code

9-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
9.9. Robot Clear

Figure 12: Robot Clear

Instead of trying to identify all of the other segment numbers, the logic will check that
the robot is NOT in segment 30 or 31. Changes can be made to other areas of the
path and not affect this clear condition.

Seg[30] Seg[31] “Clear of Drop”


------]/[----------]/[----------------------------------( )---------

Figure 13: Robot Clear Solution

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-11
9.10. Process Control Signals (GRS-3)
Some common process control signals are highlighted in Figure 14.

Controller to
Robot to Controller
Robot
Tryout Mode Tryout Mode Tells Robot there
Request are no parts
Process 1 ON Process 1 Enabled
Request
Process 2 ON Process 2 Enabled
Request
MH Fault
Robot stops
Process 1 Fault
Process 2 Fault
MH Alert Robot continues
Process 1 Alert
Process 2 Alert
Figure 14: Process Control Signals

These are generic signal names; the application defines the meaning. For example,
Process 1 or 2 Enabled could be:
 For Spot Welding — weld on / off
 For Dispensing — wet / dry
The HMI shows process specific messages (e.g. robot screen, alarms, prompts)

9-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
9.11. Status & Miscellaneous Signals
These items are shown in Figure 15.

Controller to Robot Robot to Controller


User Definable 1-4 User Definable 1-4
At Home
Robot responds to PLC Fast Fault Recovery Provides early
notification to
Robot independent of PLC
Interlock maintenance
Isolate
Spot: “Cap Change” Approaching Tip Replacement
Dispense: “Nozzle” Process 1 Tip Replacement Req.
Process 1 Tip Maintenance Req.
Spot: “Tip dress” Process 2 Tip Replacement Req.
Dispense: “Purge”
Process 2 Tip Maintenance Req.
Figure 15: Status and Miscellaneous Items

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 9-13
9.12. Review
1. Where would you expect to find information about robot dress?
2. How are style numbers used between the MCP controller and the robot?
3. How are option bits used between the MCP controller and the robot?
4. What do path segments signal to the controller?
5. What is a “Request to Continue” bit and what sets it?
6. What is an “OK to Continue” bit and what sets it?

9-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 10: Working with RSLogix5000


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:

Date Revision By Revision History


8-26-13 5.0 J. Hocking Updated Graphics. Revised all exercises.
Synchronized to G16 with Powertrain and
6-18-15 6.0 J. Hocking
EtherNet I/O.
Updated for two network addresses on
9-18-19 7.0 J. Hocking
Controller (Cell) Ethernet switches.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United States
of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for incidental
or consequential damages resulting from the use or application of the materials in
this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
10. Working with RSLogix 5000 .......................................................... 10-1
10.1. Objectives ........................................................................................................ 10-1
10.2. Device Level Ethernet Address Assignment................................................. 10-2
10.2.1. Maintenance Workstation Setup (Laptop) ............................................... 10-2
10.2.2. Set the Static IP Address on a Windows PC ........................................... 10-3
10.2.4. Assigning IP Addresses to Devices Using the BootP Server................... 10-8
10.2.5. Configuring an ENxT with USB ............................................................... 10-9
10.3. Disabling BootP After a Device Has Been Assigned an IP Address ......... 10-12
10.3.1. Disabling BootP on ENxT Modules ....................................................... 10-12
10.4. Configuring RSLinx ....................................................................................... 10-14
10.5. Importing / Exporting .L5K Files .................................................................. 10-16
10.6. Importing .L5K to .ACD ................................................................................. 10-16
10.7. Exporting to .L5k File .................................................................................... 10-18
10.8. Control Flash Firmware Upgrade Tool ........................................................ 10-18
10.9. Downloading to the Processor ..................................................................... 10-23
10.10. Safety Programming in RSLogix 5000 ....................................................... 10-30
10.11. Safety Module Configuration ...................................................................... 10-32
10.12. Safety Network Numbers ............................................................................ 10-45
10.12.1. CIP Safety Protocol ............................................................................. 10-45
10.12.2. Managing Safety Network Numbers .................................................... 10-46
10.13. Exercises ...................................................................................................... 10-47
10.13.1. Exercise 1: Configure RSLinx.............................................................. 10-47
10.13.2. Exercise 2: Update Controller Firmware Using Control Flash ............. 10-51
10.13.3. Exercise 3: Download Logic File to the Processor .............................. 10-53
10.13.4. Exercise 4: Export a *.L5K File ............................................................ 10-54
10.13.5. Exercise 5: Import a *.L5K File into RSLogix ....................................... 10-54
10.13.6. Exercise 6: Create a Safe Node in RSLogix ........................................ 10-55
10.13.7. Exercise 7: Generate a Safety Network Number ................................. 10-58
10.13.8. Exercise 8: Generate a Safety Signature ............................................ 10-59
10.13.9. Exercise 9: Configuring the IP Address for a ENBT Card (Optional Time
permitting) ......................................................................................................... 10-66
10.14. Review .......................................................................................................... 10-67

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Open the Network and Sharing Center......................................................... 10-3
Figure 2: Change Adapter Settings ............................................................................. 10-3
Figure 3: Open the Local Area Connection ................................................................. 10-3
Figure 4: Open Internet Protocol Version 4 ................................................................. 10-4
Figure 5: NIC Configuration Windows computer........................................................... 10-4
Figure 6: TCP/IP Example ............................................................................................ 10-5
Figure 7: Changing the IP Address and Subnet Mask – Definitions ............................. 10-5
Figure 8: Setting the Gateway of the Computer...................................................... 10-6
Figure 9: Click the Advanced button to Disable NETBIOS over TCP .......................... 10-7
Figure 10: Disable NETBIOS ....................................................................................... 10-7
Figure 11: Bootp Server Showing Devices Requesting Addresses .............................. 10-8
Figure 12: RS Who Button ........................................................................................... 10-9
Figure 13: Expand the USB Driver ............................................................................ 10-10
Figure 14: Right Click the ENxT Module .................................................................... 10-10
Figure 15: Open the Module Configuration ................................................................ 10-10
Figure 16: Example ENxT Port Configuration ............................................................. 10-11
Figure 17: Open Module Configuration to Disable BootP .......................................... 10-12
Figure 18: Disable BootP ............................................................................................ 10-13
Figure 19: Accessing the RSLinx Classic Launch Control Panel ................................ 10-14
Figure 20: Start RSLinx from Launch Control ............................................................ 10-14
Figure 21: Open RSLinx ............................................................................................ 10-15
Figure 22: Opening an RSLogix File - .ACD or .L5K ................................................. 10-16
Figure 23: Import .L5K to Generate an .ACD............................................................. 10-17
Figure 24: Import .L5K to Generate an .ACD............................................................. 10-17
Figure 25: Saving as an .L5K File.............................................................................. 10-18
Figure 26: Locating Control Flash.............................................................................. 10-19
Figure 27: Control flash Welcome Screen ................................................................. 10-20
Figure 28: Selection of Card Type to be Flashed ...................................................... 10-20
Figure 29: Selection of Catalog Number of Device to Flash Update.......................... 10-20
Figure 30: Selection of Actual Card Through RSLinx ................................................ 10-21
Figure 31: Available Firmware Revisions for Selected Card ...................................... 10-22
Figure 32: Set the Firmware Revision Level .............................................................. 10-22
Figure 33: Firmware Update In Progress ................................................................... 10-23
Figure 34: Successful Firmware Upgrade ................................................................. 10-23
Figure 35: Who Active Function Inside RSLogix 5000............................................... 10-24
Figure 36: Available Communication Paths from RSLinx .......................................... 10-25
Figure 37: Selection of Correct Processor for Download ........................................... 10-26
Figure 38: Path in Project Correctly Set .................................................................... 10-27
Figure 39: Downloading Into a New Controller .......................................................... 10-28
Figure 40: Project to be Downloaded Matches Current Project in Controller ............. 10-29
Figure 41: Download Status to Controller .................................................................. 10-29

© 2019 General Motors Company. All Rights Reserved


iii
Figure 42: Standard and Safety Controller Scoped Tags ........................................... 10-30
Figure 43: Mapping Standard Tags to Safety Tags for use in Safety Task ......... 10-31
Figure 44: Select Standard Tags and Matching Safety Tags for Mapping .......... 10-31
Figure 45: Beginning Configuration of DeviceNet Safety Modules ............................. 10-32
Figure 46: 1791DS-IB12 Fill in the Proper Data as Shown......................................... 10-33
Figure 47: 1791DS-IB12 Fill in the Proper Data as Shown – Definitions & Settings ... 10-33
Figure 48: Set the RPI to the Proper Value for the Application................................... 10-34
Figure 49: Identify Which Inputs are Pulse-Tested ..................................................... 10-35
Figure 50 Test Output T2 and T3 Used as Standard Output ...................................... 10-36
Figure 51: Proper Configuration to Match................................................................... 10-37
Figure 52: Proper Configuration to Match................................................................... 10-38
Figure 53: Adding a New DeviceNet Safety Node ..................................................... 10-39
Figure 54: Select the Proper Safety I/O Node Type .................................................. 10-39
Figure 55: Fill In the Appropriate Data ....................................................................... 10-40
Figure 56: Set the RPI Values as Appropriate for the Application ............................. 10-40
Figure 57: Identify Which Points are Pulse Tested .................................................... 10-41
Figure 58: Safety Device Receptacles....................................................................... 10-42
Figure 59: Setting the Input Configuration Point Types and Modes .......................... 10-43
Figure 60: Configuring the Test Output ..................................................................... 10-44
Figure 61: Setting the Output Configuration .............................................................. 10-45
Figure 62: Generate a Safety Network Number ......................................................... 10-46
Figure 63: Click to Generate the Safety Network Number .......................................... 10-46
Figure 64: RSLinx Running Indicator in PC System Tool Tray ................................... 10-47
Figure 65: Main RSLinx Window ................................................................................ 10-48
Figure 66: Configure Drivers in RSLinx ...................................................................... 10-49
Figure 67: Configuring Ethernet Devices Driver ......................................................... 10-49
Figure 68: Add an Ethernet Devices Driver - Definitions ............................................ 10-50
Figure 69: Current Running Drivers in RSLinx ........................................................... 10-50
Figure 70: Adding Ethernet IP Addresses to RSLinx Manually (New Driver).............. 10-51
Figure 71: Accessing Safety Lock/Unlock .................................................................. 10-52
Figure 72: Unlocking the Controller Safety and Deleting the Signature ...................... 10-52
Figure 73: Safety I/O Page F1 .................................................................................... 10-56
Figure 74: Safety I/O Page F2 .................................................................................... 10-57
Figure 75: Safety Network Number Generation ......................................................... 10-58
Figure 76: Safety Network Number Generation and Copy/Paste .............................. 10-59
Figure 77: Select Program or Remote Program ......................................................... 10-60
Figure 78 Select Safety Lock/Unlock .......................................................................... 10-61
Figure 79: Select Change Password .......................................................................... 10-61
Figure 80: Enter and Confirm New Password ........................................................... 10-62
Figure 81: Generate Signature and Enter Password Before Locking ........................ 10-62
Figure 82: Processor is Locked ................................................................................. 10-63
Figure 83: Placing Processor in the Remote Run Mode ............................................ 10-63
Figure 84: Open the Signature Screen ...................................................................... 10-64
Figure 85: The Signature Screen .............................................................................. 10-64

© 2019 General Motors Company. All Rights Reserved


iv
Figure 86: Signature Screen – Use Current Signature Screen Button....................... 10-65
Figure 87: Safety Signature Locked and OK ............................................................. 10-65

© 2019 General Motors Company. All Rights Reserved


v
10. Working with RSLogix 5000
10.1. Objectives
1. Create a device level Ethernet address assignment.
2. Assign an Ethernet address to a Maintenance Workstation.
3. Configure drivers in RSLinx.
4. Set up an ENxT card using the USB connection.
5. The student will be able to import an .L5K file.
6. The student will be able to export an .L5K file.
7. The student will be able to update firmware with Control Flash.
8. The student will be able to download to the processor.
9. The student will be able to create a Safety I/O Module in RSLogix.
1. The student will be able to create a Safety Network Number.
2. The student will be able to create a Signature and lock the processor.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-1
10.2. Device Level Ethernet Address Assignment
Setting up the Ethernet system requires that each device on the network has an
individual address including the following:
 Each ENxT
 Each HMI
 Each Robot
 Each Weld SCR
 Each Managed Switch
 Each MWS – Maintenance Workstation
 Each PC such as a Process Tool or Vision Computer
 Optional – Each Programming Port
 Ethernet I/O devices

It is easiest to use the real addresses when setting up the network the first time.
The Plant Floor Systems (PFS) group requires a comprehensive list of devices
that will require IP addresses to properly assign them in the plant. For each of
the devices, the PFS group will need the type of device, the MAC ID, and
possible additional information depending on the facility.
After all of the devices above are submitted to the PFS group, a spreadsheet will
be delivered back to the responsible GM engineer with the proper IP addresses.
If the devices must be configured before the official IP addresses are delivered,
the startup engineer can pick a temporary range of addresses to begin with then
switch at a later point. For example: 2.3.4.XXX with a subnet mask of
255.255.255.0.

10.2.1. Maintenance Workstation Setup (Laptop)


It is important that the Network Interface Card (NIC) in the maintenance
workstation (or laptop) is properly configured with an IP address in the same
range as the devices that it will communicate with. Most Ethernet devices will
default to either BootP or DHCP which is a mode where the device sends out a
request on the network and looks for a server assigned IP address. If the tools
are being integrated at a build source, there will probably not be a DHCP or
BootP server available; the user will have to use Static IP addresses.

10-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10.2.2. Set the Static IP Address on a Windows PC
1. Right click the wireless signal display. (if not available use the
computer’s control panel to access the Network and Sharing Center.)
2. Click Open Network and Sharing Center.

Figure 1: Open the Network and Sharing Center


3. Click Change adapter settings.

Figure 2: Change Adapter Settings


4. Right click on Local Area Connection.

Figure 3: Open the Local Area Connection


5. Double Click Internet Protocol Version 4 (TCP/IPv4).

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-3
Figure 4: Open Internet Protocol Version 4
6. Select Use the following IP address:
7. Enter IP Address, Subnet Mask, and Gateway.

Figure 5: NIC Configuration Windows computer


8. Click OK.

10-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The following is an example of configuring the TCP/IP properties for a Windows
computer.

Figure 6: TCP/IP Example

Item Description Definition


1 Use the following IP Select to use a static, manually entered, IP
address: Address.
2 IP Address: Type in the given address, this example:
120.7.6.100
3 Subnet Mask: Type in the Subnet Mask, this example:
255.255.255.0; This configures 120.7.6.0 thru
120.7.6.255 to be accessible.
4 Default gateway Type in the Default gateway address, usually
the first address in the network. For example:
120.7.6.1. If working with a private network
that does not have a Gateway, then omit the
Gateway address.
5 OK Click OK when finished entering the IP and
Subnet Mask.
Figure 7: Changing the IP Address and Subnet Mask – Definitions

Many computers can adjust the IP address without a re-boot of the machine.
However, if Windows prompts for a re-boot, re-boot. The computer should now
be ready to communicate on the network.
Working with systems that have private and public networks it will be necessary
to pay particular attention to gateway settings on the devices as well as the

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-5
computer that you will use to program. Configure gateway on the computer like
the example that follows:
In order to access devices on the private network, 192.168.1.xxx you must set
the gateway of the programming computer’s NIC to the address of the Controller
(Cell) switch. The PLC and HMI should also use this gateway.

Figure 8: Setting the Gateway of the Computer

NETBIOS is disabled on a workstation connected to a network to avoid sending


extraneous broadcast traffic to the network.
To disable the NETBIOS, please follow the procedure that follows.
Note: Do NOT disable the NETBIOS in the classroom. This procedure is
intended for laptops and maintenance workstations in the field.
1. From the TCP/IPv4 Properties window click the “Advanced” button.
– (see the proceeding procedure to access the TCP/IP Properties
window)

10-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 9: Click the Advanced button to Disable NETBIOS over TCP

2. Click the “WINS” tab


3. Select “Disable NetBIOS over TCP/IP”

Figure 10: Disable NETBIOS

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-7
10.2.4. Assigning IP Addresses to Devices Using the BootP
Server
In most cases it is best to use the USB method, shown next, instead of BootP to
configure the initial IP address in ENxT Ethernet modules and Compact Logix
Controllers. USB is easier to use. BootP will be necessary if the device does not
have the USB connection.
To assign addresses to equipment configured with BootP, first ensure that the
Ethernet network is powered up and all devices including the maintenance
workstation (or maintenance laptop) are connected to the switch. Open the
BootP software on the computer and wait for the devices to begin requesting
addresses as shown in Figure 17. If the BootP server can not be located on the
computer, it can be found on the GM Supply Power website under GCCS
applications.
There is a possibility that software running on the computer will prevent the
computer from getting the broadcast message from the devices that are
requesting addresses. Some software firewalls have been known to block these
requests and, therefore, the firewall software should be shut down while using
the BootP server.

Figure 11: Bootp Server Showing Devices Requesting Addresses

10-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
9. The time data stamp and the Ethernet MAC Address of the requesting
device(s) will appear as each device requests.
10. Double-click the Ethernet Address (MAC) and the New Entry window
appears. (To verify the MAC ID belongs to the device you are trying
to address, look on the device for a white sticker with the Ethernet
Address on it.)
11. Enter the IP address and Subnet Mask, and Gateway address; omit
Gateway if the network does not have a Gateway.
12. Click OK.

The Status window at the bottom of the BootP server will read “Unable to service
BootP request” for a brief moment. However, when the device requests an IP
address again, the Status window will read: “Sent IP address to device.” Also
note that the Request History will now show the device as having an IP address
and a Subnet Mask.
After the IP addresses have been assigned, close the BootP Server.
10.2.5. Configuring an ENxT with USB
Starting with EN2T model Ethernet modules an USB connection is available on
the front of the module to interface between the module and your computer.
RSLinx is used to establish communication.
1. Connect a USB cable from the programming computer to the port on the
front of the ENxT module.
2. Open RSLinx.
3. Click the RS Who button.

Figure 12: RS Who Button

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-9
4. Expand the USB driver.

Figure 13: Expand the USB Driver

5. Right click the ENxT that appears directly below the USB driver.

Figure 14: Right Click the ENxT Module

6. Click Module Configuration from the menu.

Figure 15: Open the Module Configuration

7. Set up the Port Configuration as follows:

10-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
a. Select the Port Configuration tab.
b. Select Static
c. Enter IP Address
d. Enter Network Mask
e. Enter Gateway Address
f. Verify that the Auto Negotiate check box is selected
Important: Auto-negotiate setting is project specific. Some projects may use
Speed=100 and Full duplex. Please confirm appropriate Need new
settings screen
with GM project shot
engineer.
• Auto Negotiate
• Gateway
• Public Address
120.7.1.?

Figure 16: Example ENxT Port Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-11
10.3. Disabling BootP After a Device Has Been Assigned an
IP Address
Once an IP address has been assigned to a device, the BOOTP feature needs to
be disabled. This will ensure that the device will retain its IP address even when
power on the device is cycled.

10.3.1. Disabling BootP on ENxT Modules


1. Open RSLinx and under “Communications” select RS Who.
2. Select the appropriate driver (configured previously) and expand.
Ethernet devices on the network will be displayed.
3. Select the appropriate ENxT module, right click and select Module
Configuration.

Figure 17: Open Module Configuration to Disable BootP

10-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
.
4. Configure the module for Static Network Configuration.
5. Select Static under Network Configuration Type.
6. Click OK and close the ENxT Configuration.

Need new screen shot


• Auto Negotiate
• Gateway
• Public Address
120.7.1.?

Figure 18: Disable BootP

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-13
10.4. Configuring RSLinx
RSLinx is the communications package used by Rockwell Software that allows
Windows-based Rockwell programs to interface with Rockwell Hardware. The
software packages that GCCS-1 currently uses are RSLogix and RSNetworx.
These software packages, when using RSLinx, allow many different
communication paths to the hardware such as Ethernet, USB, ControlNet, and
Serial. This manual exercise will focus on Ethernet and USB with a Serial
backup should problems arise.
RSLinx can be run as a service on your computer, starts at boot-up and is always
running. It can cause problems with some communication tasks that your
computer performs, for example printing. You can elect to use the Launch
Control Panel to start and stop RSLinx software as needed.
Using the RSLinx Classic Launch Control Panel
1. Click the start menu, expand All Programs, expand Rockwell Software,
expand RSLinx and select RSLinx Classic Launch Control Panel. You can
make a shortcut or pin it to the Start Menu or tool bar.

Figure 19: Accessing the RSLinx Classic Launch Control Panel

2. Click the Start button.

Figure 20: Start RSLinx from Launch Control

10-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3. If RSLinx does not open, look for the RSLinx symbol on your tool bar or
notification window. Click the symbol to open RSLinx.

Figure 21: Open RSLinx

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-15
10.5. Importing / Exporting .L5K Files
RSLogix 5000 can save and open files in multiple formats; .ACD, .L5K, .L5X,
etc..
.ACD is the default format and is used to view the logic in a graphical format
online. The .ACD format is a non-user readable format that can only be
viewed inside the RSLogix 5000 software.
.L5K is a text-based format that can be read using any text editor, such as
Notepad or Excel. The .L5K format contains all of the information needed to
recreate the logic and configuration in the controller. Since .L5K is a text-
based format, it is used to manipulate the logic with GM specific tools, such as
the Message Extractor.

10.6. Importing .L5K to .ACD

Figure 22: Opening an RSLogix File - .ACD or .L5K

To import the .L5K, open RSLogix 5000 and choose to open a file. Then
select the proper directory where both the .ACD and .L5K files will be
displayed. Set the Files of type: to All RSLogix 5000 Files (*.ACD, *.L5K,
*.L5X, *XML) as shown in Figure 22.

10-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 23: Import .L5K to Generate an .ACD

The window shown in Figure 23 will display after selecting an *.L5K for import
into RSLogix 5000.

Item Description Definition


1 Revision Indicates the revision that *.L5K
From (import file) was created from.
2 Revision To Select Revision that is desired for
logic output.
3 File name Enter the desired filename for the
*.ACD file.
4 Import Click Import to begin the
importation process.
Figure 24: Import .L5K to Generate an .ACD

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-17
10.7. Exporting to .L5k File
To save an opened file in RSLogix 5000 as an .L5K file, use Save as type:
from the file menu then select *.L5K as the type as shown in Figure 25.

Figure 25: Saving as an .L5K File

10.8. Control Flash Firmware Upgrade Tool


Most Control Logix 1756, Compact Logix 1769, and Flex Logix 1788 cards
are firmware upgradeable to different revision levels. Each major version of
RSLogix requires the controller to be at the matching major revision to enable
upload /download/online capability. New processors are shipped without
firmware so they are ready to be flashed to the proper version.
Communication cards used on GM projects are tested at specific revision
levels. It is not the intent of GM to update to the latest revisions as they are
released unless the new release fixes a specific issue that affects the cell in
question.
The proper version of firmware for the 1756 Cards is listed in the Blockpoint
for the project. To obtain the latest Blockpoint, contact the responsible GM
engineer for the project. The Blockpoint is also maintained on the GM
SupplyPower website: www.gmsupplypower.com

10-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
For Control Flash to work properly, the proper files for each revision need to
be installed. The firmware files are contained on the GCCS-1 release disks
under “Software,” on the Blockpoint software disks, and directly from the
Rockwell Automation website.
Locate the Control Flash shortcut or find it in the Program menu, under Flash
Programming Tools. Select Control Flash.

Figure 26: Locating Control Flash

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-19
Click Next to continue.

Figure 27: Control flash Welcome Screen

Figure 28: Selection of Card Type to be Flashed

Item Description Definition


1 Catalog Select the catalog number of the device you wish
Number to update.
2 Next Once your selection is made, click Next.
Figure 29: Selection of Catalog Number of Device to Flash Update

10-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Once the Next button is clicked, an RSLinx window will open.

Figure 30: Selection of Actual Card Through RSLinx

Now select the proper card, using the correct IP address and slot number in the
backplane as shown in Figure 30. Ensure that the card that is selected matches
the card type selected in Figure 28. Click the OK button.
IMPORTANT: When using Control Flash to update a Guard Logix
Controller (LxS), you must also update the Safety Partner (LSP).

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-21
Figure 31: Available Firmware Revisions for Selected Card

Item Description Definition


1 Status Info Displays the following info for the selected
card:
 Catalog Number.
 Serial number of the card.
 Current Firmware revision level.
2 Firmware Displays all available revision levels.
Revision Choose the proper level as dictated by your
project.
Note: Only the revisions that have been
installed in Control Flash are available.
3 Next Begins the flash update process.
Figure 32: Set the Firmware Revision Level

10-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Certain hardware series of cards will not accept all revision levels for the
product ID. Example: 1756-DNB Series B cannot be flashed to a revision lower
than 6.002 even though 1756-DNB Series A can be flashed to all of the
lower revisions.

Figure 33: Firmware Update In Progress

After starting a firmware update, DO NOT interrupt the process until the
screen looks similar to
Figure 34. Interrupting the update could cause the module to end up in an
unusable state. Starting with Control Flash version 19 the Safety Partner will
be updated when the Safety Controller is updated.

Figure 34: Successful Firmware Upgrade

10.9. Downloading to the Processor


Now that the processor is at the proper revision level, it can be downloaded or
uploaded. However, uploading a processor when the matching Logic file is
not present on the host computer will result in a file that is missing the
documentation such as Rung Comments and Address Comments since these

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-23
are stored in the .ACD file. Communications paths to the processor are set
up in RSLinx, which is covered in Exercise 2.

The first time that a processor is downloaded, there will not be a path set up in
the .ACD file. The easiest way to download to the processor is to use the
“Who Active” function of RSLogix as shown in Figure 35.

Figure 35: Who Active Function Inside RSLogix 5000

10-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 36 shows the different drivers that have been set up in RSLinx. It also
shows that the path is set for the open project in RSLogix 5000.

Figure 36: Available Communication Paths from RSLinx

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-25
Select the proper drivers as shown in Figure 37.

Figure 37: Selection of Correct Processor for Download

Select the path to the processor as highlighted in Figure 37 above. The


buttons for Online, Upload, and Download are now available. From the same
screen, the firmware can be updated, and the path in the project can be set
so that it is easier to go online next time.

10-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
At this time, select Set Project Path so the screen looks like
Figure 38. If the Project Path is set and must be changed, click the Clear
Project Path button then click the Set Project Path Button.

Figure 38: Path in Project Correctly Set

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-27
Now, select Download to prepare for the final confirmation as shown in
Figure 39.

Figure 39: Downloading Into a New Controller

Figure 39 above shows the final confirmation before the project will be
downloaded to the controller. There is no program in the controller currently,
so it is OK to download this program.

10-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
In Figure 40, the controller already has a program that matches the program
that is to be downloaded. This is the typical screen that the user should see.
If the names do not match, check to ensure the processor selection is correct.

Figure 40: Project to be Downloaded Matches Current Project in Controller

After the download is complete, the user may be asked to go back into the run
mode if the controller was in the run mode before the download (Figure 41).
At this point, the program is in the controller and the user can begin making
changes and viewing the logic online.

Figure 41: Download Status to Controller

If a download fails with controller faulted check and repair items causing Major
Faults. When the failure occurs without controller faults with an attribute error/
can’t create module in Error window, file is likely corrupt. Save RSLogix/Studio
5000 as an *.L5K and Import *.L5K then down load. Exporting and importing to
either an *.L5K or a *.L5X often fixes issues with corrupted files.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-29
10.10. Safety Programming in RSLogix 5000
In GCCS-1, Safety Tags, Safety UDT’s, and Safety I/O tags are identified
uniquely with the first letter of s. Additional letters may follow the s such as sz_,
su_, or s_. The only exception is Safety Program Scope tags which are not
named with the s. The Safety Program can only contain Safety tags. See Figure
42.

Figure 42: Standard and Safety Controller Scoped Tags

10-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Standard tags that are to be used in the Safety Task must be first mapped
into Safety Tags. Only tags of the class Safety can be used in the Safety
Task. To map a standard tag into a safety tag, select Logic, Map Safety
Tags as shown in Figure 43.

Figure 43: Mapping Standard Tags to Safety Tags for use in Safety Task

In the left column, select the standard tag name. In the right column,
select the matching safety tag name. Refer to Figure 44.

Figure 44: Select Standard Tags and Matching Safety Tags for Mapping

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-31
10.11. Safety Module Configuration
For networks, Safe I/O must have their safety connections configured in
RSLogix 5000. GCCS-2 contains examples of the safe I/O configuration for
many of the ECS panels. It is recommended that the configuration from
GCCS-2 be used for all existing modules.
Safe I/O can be copied from the GCCS-2 reference and modified or can be
added from scratch. The copying procedure is outlined below.
Typical configurations for the GCCS-2 safe I/O can be dragged and dropped
from the GCCS-2 template to the user’s application. Safe I/O modules must be
configured.
1. Once the module has been copied or dragged and dropped to
desired Network. Under I/O Configuration, Expand the view of the
network then right-click on the proper safe I/O module and select
Properties. See Figure 45.

Figure 45: Beginning Configuration of DeviceNet Safety Modules

After the node is selected, verify data for 1791DS-IB12 as shown in


2. Figure 46 and Figure 47.

10-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 46: 1791DS-IB12 Fill in the Proper Data as Shown

Item Description Definition


1 Name Enter the Safety Node Name
(Format = sz_ or su_XXXXXXX)
2 Node Safety I/O node number
Number
3 Safety Sets the Input RPI
4 Input Sets the Pulse Testing Configuration for
Configuration Inputs
5 Test Output Sets the Pulse Test Outputs
6 Module Illustrates the correct Module
Definition Configuration for 1791DS-I8XOB8
Input/Output module
Figure 47: 1791DS-IB12 Fill in the Proper Data as Shown – Definitions & Settings

Refer to the “Safety IO BK Config yyyy mm dd for the correct I/O settings for
known devices. The document is located on Supply Power in GCCS
Applications.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-33
Figure 48: Set the RPI to the Proper Value for the Application

3. Set the RPI settings to the appropriate value for the application, see
Module 2.

10-34 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4. The input configuration is set to match the hardware design. An
example is shown in Figure 49.

Figure 49: Identify Which Inputs are Pulse-Tested

In Figure 49, Input points 0, 4, and 5 are wired to pulse test T0. All of the
other inputs shown are wired as safety inputs without pulse testing. Test
Outputs T2 and T3 are used as standard outputs as shown in Figure 50.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-35
Figure 50 Test Output T2 and T3 Used as Standard Output

10-36 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 51 shows the correct input configuration to match.

Figure 51: Proper Configuration to Match

1. Type: All input points should be of the type “Single.”


2. Point Mode: Only the points identified on the prints as being pulse
tested should be selected as Safety Pulse Test; otherwise they
should be marked as Safety.
3. Test Source: Any points that have been identified as Safety Pulse
Test must also have an associated Test Source that is clearly
identified on the prints. In the example, Input Points 0, 4, and 5
have a test source of T0.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-37
4. The Test Output tab must be configured with each of the output
points identified as a Pulse Test, Standard or Power Supply
Output. Configure all test outputs connected to input devices as
pulse test. Configure test outputs connected to output devices as
standard. Configure unused test outputs as standard. See Figure
52

Figure 52: Proper Configuration to Match

5. Continue this configuration method for each safe I/O module in the
application.

10-38 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
For Safe nodes that are not listed in GCCS-2, follow the instructions below
to add new Safe nodes into the application.
1. Under I/O Configuration, right click on the network below the proper
DeviceNet scanner and select New Module as shown in
2. Figure 53.

Figure 53: Adding a New DeviceNet Safety Node

3. Select the module that matches the prints. Refer to Figure 54.

Figure 54: Select the Proper Safety I/O Node Type

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-39
4. After the module is selected, fill in the appropriate data. See Figure 55.
DeviceNet is shown on the right.

Figure 55: Fill In the Appropriate Data

5. Set the RPI values to the appropriate value for the application. Refer to
Figure 56. The input configuration is set to match the hardware design.

Figure 56: Set the RPI Values as Appropriate for the Application

10-40 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Input Point 0 is wired to pulse test T0. All of the other inputs shown are wired
as safety inputs without pulse testing. Refer to Figure 57. The correct
configuration for this example is next.

Figure 57: Identify Which Points are Pulse Tested

Test pulse 0 connection is shown next in Figure 58.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-41
Figure 58: Safety Device Receptacles

10-42 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1. All input points should be of the type “Single.” See Figure 59.
2. Only points identified on the prints as being pulse tested should be
selected as Safety Pulse Test; otherwise they should be marked as
Safety. Any points that have been identified as a Safety Pulse Test must
also have an associated Test Source that is clearly identified on the prints.
In the example, Input Point 0 has a test source of T0.

Figure 59: Setting the Input Configuration Point Types and Modes

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-43
3. The Test Output tab must be configured with each of the test output points
identified as a Pulse Test or Standard Output. Refer to Figure 60.
If a pulse test output point is used on the prints, it MUST be configured on
this tab as a Pulse Test output.

Figure 60: Configuring the Test Output

10-44 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4. The outputs on the Output Configuration tab should be set as Single and
Safety Pulse Test. Refer to. Continue this method for each safe I/O
module in the application.
Note: Not all modules will have this tab in their configuration.

Figure 61: Setting the Output Configuration

Note: Change Point Mode to Safety if problems exist.


End of Procedure
10.12. Safety Network Numbers
10.12.1. CIP Safety Protocol
The CIP Safety protocol is an end-node to end-node safety protocol which
allows routing of CIP Safety messages to and from CIP Safety devices
through bridges, switches, and routers.
To maintain safety integrity when routing through non-certified bridges,
switches, or routers, each end node within a routable CIP Safety Control
System must have a unique reference. This unique reference is a
combination of a Safety Network Number (SNN) and the Node Address of
the network device.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-45
10.12.2. Managing Safety Network Numbers
Safety Network Numbers assigned to each safety network or network
segment must be unique. You must ensure that unique Safety Network
Numbers (SNNs) are assigned to each:
 DeviceNet network that contains safety nodes
 Chassis that contains one or more safety devices
After the Safe I/O modules have been created, generate a Safety Network
Number for all modules (Figure 62).

Figure 62: Generate a Safety Network Number

Select Time-based and click the Generate button on each module you open.
This process must be repeated for each DeviceNet Network in the chassis,
generate a unique number for each device on all networks.

Figure 63: Click to Generate the Safety Network Number

10-46 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10.13. Exercises
10.13.1. Exercise 1: Configure RSLinx
RSLinx is a tool used to create communication drivers used to communicate from
a computer to a PLC. The driver only needs to know the IP Addresses of the
controller(s) desired to connect with. ALWAYS use the Ethernet Devices driver,
as shown in this exercise.

1. RSLinx may already be running on the computer when the computer


boots up. RSLinx can be identified by the chain symbol in the system
icon tray in the lower right.

Figure 64: RSLinx Running Indicator in PC System Tool Tray

2. Start RSLinx by clicking on the icon shown in Figure 64, or by clicking


on the shortcut in Windows. The screen will appear as shown in
Figure 65. New installs of RSLinx will not have any drivers configured
for communications. Once RSLinx has been set up the first time on
the computer, it will retain its configuration until the user changes it in
RSLinx.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-47
Figure 65: Main RSLinx Window

10-48 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3. Select the Configure Drivers Icon as shown in Figure 66 below.

Figure 66: Configure Drivers in RSLinx


4. Select Add New and select a name for the driver. The default name
is OK in most cases, see Figure 67.

Figure 67: Configuring Ethernet Devices Driver

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-49
5. The Ethernet Devices Driver setup procedure is summarized in Figure
68.

Item Description Definition


1 Available Driver Types Select Ethernet Devices.
2 Add New Adds a new driver of type selected.
3 Add New RSLinx Driver Default name is usually ok. You may
choose a different name.
4 OK Click OK, the driver is created.
Figure 68: Add an Ethernet Devices Driver - Definitions
6. IMPORTANT: Do NOT use the “EtherNet / IP driver”. The driver uses
broadcast messages that create network traffic storms and cause
devices to stop working. Figure 69 illustrates a driver running in
RSLinx.

Figure 69: Current Running Drivers in RSLinx

10-50 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7. Once the Ethernet devices driver is added, the Configure driver –
Station Mapping screen will open as shown in Figure 70.

Figure 70: Adding Ethernet IP Addresses to RSLinx Manually (New Driver)

This screen allows the user to define all of the IP addresses that RSLinx will be
communicating with. Only Rockwell Ethernet devices (e.g. 1756-ENxT) need to
be entered into the RSLinx drive. Other devices on the Ethernet network may
use a different software package for communication.
10.13.2. Exercise 2: Update Controller Firmware Using Control
Flash
Using Control Flash is an important skill for individuals that startup or replace
PLC modules. Firmware needs to be consistent with the GM Blockpoint listings
for the facility you are working in. Control Flash is used to update modules to the
desired firmware. This exercise will familiarize you with the use of Control Flash.
Note: If the controller is unlocked, proceed to step 7.
1. Open your Core08ExercisesT*, *=1-4, file from Core08, using Studio
5000.
2. Go online with the controller on the trainer, choose download if
asked.
3. Enter the Safety password “plc”, if asked.
4. Access the Safety Lock/Unlock dialog
A. Click Safety Locked pull down button
B. Click Safety Lock/Unlock

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-51
Figure 71: Accessing Safety Lock/Unlock
5. Delete the Safety Signature and Unlock the Safety.
A. On the Unlock dialog, select the Delete Safety Signature box.
B. Click Unlock
C. Confirm the Delete safety signature warning.

Figure 72: Unlocking the Controller Safety and Deleting the Signature
6. Go Offline and close the project.
A. Select the Online pull down button
B. Choose Go Offline
C. Close the project

10-52 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7. Update the controller’s firmware. Find the Control Flash icon or in
the program menu under Flash Programming Tools, select Control
Flash.
8. Select the catalog number for the device to be updated, which is
Guard Logix Processor 1756-L71S.
9. Click Next.
10. Select the proper card in the RSLinx window using the IP Address
and backplanes as shown below. Make sure the card selected is
the same type as that selected above.
11. Click OK.
12. Select the appropriate firmware revision level. Notice you can see
the card type, serial number, and the current revision level.
13. Click Next.
14. Do not interrupt the process at this point. Wait until the Update
status screen appears with the status window message indicating
Update Complete. The box will be green. Interrupting this process
may leave the module in an unusable state.
Note: When using RSLogix v16 repeat the Control Flash procedure
outlined above to flash the Safety Partner module (L7SP). RSLogix v16
is not used in the classroom.

END OF EXERCISE 2
10.13.3. Exercise 3: Download Logic File to the Processor
Downloading to the processor allows the user to load the project from the
computer.
Warning: Uploading a processor when a matching logic file is not present
on the host computer will result in a file that is missing the documentation,
such as rung comments and address comments.

1. Open your Core08ExercisesT*, *=1-4, file from Core08, using Studio


5000.
2. From the Main menu bar, select Communications and then Who
Active. This is required for the first download as there is no path
currently set in the project.
3. Choose the appropriate driver. For this project, choose AB_ETH-1,
Ethernet.
4. Browse for the 1756-EN2T. Left-click to open the tree. Note: use the
DCDL to determine the IP address for the EN2T.
5. Select the processor in slot 0, [0] 1756-L71S. At this point, the
Download button, located on the right side of the window, will become
active, click it.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-53
6. The Download confirmation window will appear. Verify the project is
going to download to the proper processor, then click Download. If
you are unsure, the project is correct, click Cancel and begin again
from Step 1.
7. The Download progress window will appear, tracking the Download
status.

END OF EXERCISE 3
10.13.4. Exercise 4: Export a *.L5K File
Many of GM’s tools work with an *.L5K file. The tools are helpful and require the
understanding of how to create the files needed. This exercise will demonstrate
exporting an *.L5K.

1. Open Studio 5000 and open Core08ExercisesT*, *=1-4.


2. From the ‘File’ menu, select Save As. The Save Window will appear.
The default (the current filename) will be highlighted.
3. Below ‘Filename,’ select the Save as type pull-down menu and select
‘Logix Designer Import/Export File [*.L5K]’ and select Save.
4. The ‘Exporting Progress’ window will appear.
5. A successful export will end with “Project exported with no errors or
warnings” message in the lower left corner of the main RSLogix
window.

END OF EXERCISE 4

10.13.5. Exercise 5: Import a *.L5K File into RSLogix


1. Open Studio 5000.
2. Select Open. The file open selection window will appear.
3. Notice that both Studio 5000 and *.L5K files are displayed.
4. Select the *.L5K created in Exercise 4. Click Open. The ‘Save
Imported Project As’ window will open.
5. Change the ‘Filename’ so that you do not overwrite the existing file.
Use Core08ExercisesT*, *=1-4.
6. Review the lower left corner of the window is the Revision Level
setting. The ‘From:’ indicates the RSLogix version utilized for the
project. The ‘To:’ gives a chance to select the output revision level.
7. Click Import. The ‘Importing’ status window will appear. A successful
import will end with ‘Project imported with no errors or warnings.’
message in the lower left corner of the main Studio 5000 window.

END OF EXERCISE 5

10-54 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10.13.6. Exercise 6: Create a Safe Node in RSLogix
This exercise explains the manual creation of a Safe Node in RSLogix. Students
will learn how to follow a Wiring Diagram to enter settings in the I/O configuration
of the Logix project.
NOTE: The best way to create a device in your project is to copy in an example
from the GCCS-2 template and adjust as needed.

1. Open ComTask10Exercise6 using RSLogix 5000.


2. Create a new safe node in the RSLogix program. Use the prints shown in
Error! Reference source not found. and Error! Reference source not fo
und..
3. See Module 2: RSLogix Overview in this manual to configure Module
definition settings.
4. The device is a 1791DS-IB16, 16 Input Safety I/O Module at node 5 in
DNet05. The device name is s_KA030G4.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-55
Figure 73: Safety I/O Page F1

10-56 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 74: Safety I/O Page F2

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-57
5. Pulse Test T0 is used by Inputs 0, 2, 4, 6, 14.
6. Pulse Test T1 is used by Inputs 5, 7.
7. Test Outputs 2-15 are configured as standard outputs.
END OF EXERCISE 6
10.13.7. Exercise 7: Generate a Safety Network Number
When safe devices are added to the I/O configuration of a Logix project a Safety
Network Number must be generated. A unique number is added for each device.
The SNN is required to safely route traffic through bridges switches or routers.
This student will learn to generate SNN.

1. Open ComTask10Exercise7.
2. Open the I/O configuration at the end of the Controller Organizer.
3. Generate a New Safety Network Number for each module in DNet03.
Begin with the first Safety I/O Module as shown in Error! Reference s
ource not found.

Figure 75: Safety Network Number Generation

10-58 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 76: Safety Network Number Generation and Copy/Paste
Each device will have its own unique Safety Network Number. Click Generate for
each module, do not use Copy.
END OF EXERCISE 7
10.13.8. Exercise 8: Generate a Safety Signature
After the Safety Task has been created and verified for functionality, it must be
locked with a password to prevent future changes. A ‘Signature’ is a mixture of
time and the program checksum. The signature is used to identify that the
Safety Task has not been changed from the time that the task was validated.
1. Open Core08ExercisesT*, *=1-4 in Studio 5000.
2. Go Online with the processor.
3. Select Program or Remote Program mode. See Error! Reference s
ource not found..

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-59
Figure 77: Select Program or Remote Program

10-60 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4. Click Safety Locked or Safety Unlocked. When the drop-down menu
appears, select Safety Lock/Unlock. See Error! Reference source n
ot found..

Figure 78 Select Safety Lock/Unlock

Click Change Password (Figure 79)Error! Reference source not found.

Figure 79: Select Change Password

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-61
5. Select Safety Unlock as shown in
6. Enter “plc”, this will be the New Password and enter the Confirm New
Password.
7. Click OK. Refer to Figure 80.

Figure 80: Enter and Confirm New Password


8. Select Generate Safety Signature. Refer to Error! Reference source n
ot found..
9. Enter password (as needed) and click Lock.

Figure 81: Generate Signature and Enter Password Before Locking

The processor must be in program mode to Generate/Delete the signature


and to lock the processor. The screen shown in Figure 80 also allows the
user to change the passwords used to lock and unlock the processor. A
password is usually assigned to the Safety Unlock only. Be sure to write
down the password.

10-62 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10. Figure 82 shows a locked processor.

Figure 82: Processor is Locked

11. Go to Run or Remote Run mode. (Figure 83)

Figure 83: Placing Processor in the Remote Run Mode

The final steps of locking the processor with a Safety Signature will be carried
out from the HMI.

12. From the Select screen, click the Signature Screen Button. See
Error! Reference source not found..

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-63
Figure 84: Open the Signature Screen
13. The Signature Screen opens.

Figure 85: The Signature Screen


14. Press the Use Current Signature button to open the Signature
Screen. See Error! Reference source not found..
15. The HMI will prompt you to press the Do button, be sure to press it
within 3 seconds.

10-64 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 86: Signature Screen – Use Current Signature Screen Button
16. After a slight delay the signature status will update to [OK-Locked
Safety Signature: (the number, time and date will be displayed).
See Error! Reference source not found..

Figure 87: Safety Signature Locked and OK

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-65
Once the processor has a signature or is locked, edits to the Safety Task are
no longer possible. This is the steady state of the tooling in a production
ready state. The Monitored Power System (MPS) is designed to function only
after there is a signature that matches the signature stored in the processor.
There is typically an additional memory location for the signature (either
PM&C or possibly plant safety) to verify that the Safety Task is intact and
verified.

END OF EXERCISE 8

10.13.9. Exercise 9: Configuring the IP Address for a ENBT Card


(Optional Time permitting)
1. Connect the USB cable between the computer and the ENxT module.
2. Open RSLinx.
3. Set the ENxT to Dynamic in the Network Configuration Type.
4. Cycle power to the ENxT switch.
5. Examine the ENxT card’s display. It should match the address you
entered.
6. Open RSLinx and select Static for the card you just addressed.
7. Uncheck the Auto-negotiate port speed and duplex box.
8. Select 100 in the Current Port Speed pull-down menu.
9. Select Full Duplex in the Current Duplex pull-down menu.
10. Restart the power to the ENBT card to set the port and speed
changes.

END OF EXERCISE 9

10-66 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10.14. Review
1. How do you import an .l5K file?
2. How do you export an .l5K file?
3. How do you update firmware in certain smart cards?
4. How is logic downloaded to the processor?
5. How do you create Safety I/O Modules in RSLogix?
6. How is the Safety Network Number Created?
7. How do you generate the safety signature and lock the processor with
a password?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 10-67
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 11: Ethernet/IP Networks


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Updated Supply Power graphic
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
9-18-19 7.0 J. Hocking Updated to GM standard Ethernet switch

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved
under U.S., International, and Universal Copyright Conventions. Published in the
United States of America. These materials may be used only with related printed
materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual,
including all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
11. Ethernet/IP Networks ..................................................................... 11-1
11.1. Objectives ........................................................................................................ 11-1
11.2. GM Standard Switch ....................................................................................... 11-2
11.3. GM Standard Switch Configuration ............................................................... 11-2
11.3.1. GM Ethernet Switch Configuration Utility - e-Tool ................................... 11-2
11.3.1.1. GM Standard L3 Switch Configuration eTool ................................ 11-4
11.3.1.2. GM Standard L3 Switch Configuration eTool Procedure .............. 11-7
11.4. Module Review .............................................................................................. 11-13

Copyright 2019 General Motors Company


ii
Table of Figures
Figure 1: Hirschmann Octopus Switch – Training Panel Only ................................. 11-2
Figure 2: GM Ethernet Switch on GM Supply Power .............................................. 11-3
Figure 3: Open the GM Standard EtherNet Switch Configuration Utility .................. 11-4
Figure 4: GM Standard L3 Switch Configuration eTool ........................................... 11-4
Figure 5: GM Standard L3 Switch Configuration-Firmware and IP Addresses ....... 11-5
Figure 6: GM Standard L3 Switch Configuration-Host Name and Switch Type ...... 11-5
Figure 7: GM Standard L3 Switch Configuration-SNTP & SNMP and Time Zone .. 11-6
Figure 8: GM Standard L3 Switch Configuration-Port Configuration ....................... 11-6
Figure 9: GM Standard L3 Switch Configuration-VLAN .......................................... 11-7
Figure 10: Setting Temporary IP Address on the PC .............................................. 11-8
Figure 11: Setting Temporary IP Address on a L3 Switch ...................................... 11-8
Figure 12: Verifying the Firmware of the L3 Switch................................................. 11-9
Figure 13: Launch the GM Standard L3 Configuration Tool................................... 11-10
Figure 14: Import Switch Data from the DCDL ...................................................... 11-10
Figure 15: Write Configuration to Switch...............................................................11-11
Figure 16: Clear the Temporary IP Address ......................................................... 11-12

© 2019 General Motors Company. All Rights Reserved


iii
11. Ethernet/IP Networks
11.1. Objectives
1. The student will identify the software’s used to configure a GM standard Switch.
2. The student will understand the use of the Switch Configuration e-Tool.
3. The student will understand how to configure a GM standard Switch.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-1
11.2. GM Standard Switch
The switch is an IP 67 managed switch. IP 67 is a number to specify the
environmental protection of the enclosure of the switch. The first number 6
represents an enclosure that totally protects against dust. The second number 7
represents protection against the effect on immersion between 15 cm and 1 m.
 layer 3 device, legacy switch is layer 2 device.
 4-pin M12 D connectors.
 IP67 (protected from dust and liquid immersion).
 DLR capable allows single hop routing.
 Eliminates the need for additional network card in PLC rack – saves money.
 Supports additional network address ie:
 120.7.6.xxx PLCs, Robots, HMIs etc..
 192.168.1.xxx for I/O blocks, valve manifolds etc.
The OCTOPUS switch can be mounted either on the fence or directly on the
machine.

Figure 1: Hirschmann Octopus Switch – Training Panel Only

11.3. GM Standard Switch Configuration


 Use the GM provided Ethernet switch setup utility to configure the switch.
 The GM Standard switch can be configured with manufacturer provided
software and the GM Ethernet Switch Setup Utility.
 Manufacturer specific software may also be required to configure the switch.
 Connect PC to the GM Standard switch via the designated convenience port.
 The tool detects what the convenience port is by checking for “CVP” to be
contained in the Port Name field.
 Communications may be lost prior to setting all the parameters if the
convenience port is not used.
11.3.1. GM Ethernet Switch Configuration Utility - e-Tool

11-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The Ethernet Switch Setup Utility can be found in the e-Tools portion of the GM
Standards homepage. The utility links to the GM standard switch configuration
procedure found in GCCS-1 on GM SupplyPower.
Key points of the Switch Configuration e-Tool:
• Can import the DCDL data or be filled out by manual input.
• Stand-alone application – Does not use other applications as dependencies
• Requires the switch firmware to be at an acceptable blockpoint revision
• Switch must have the correct IP Address from the DCDL configured.

There are two versions of the GM Ethernet Switch Utility eTool download and
installed version(s) needed.

Figure 2: GM Ethernet Switch on GM Supply Power

Note: Versions shown are not necessarily the most current and are updated in Supply
Power frequently.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-3
11.3.1.1. GM Standard L3 Switch Configuration eTool
1. After installation of the GM Standard L3 Switch Configuration.
2. It can be opened through utility through the “Start” menu located under “All
Programs”.

Figure 3: Open the GM Standard EtherNet Switch Configuration Utility

Figure 4: GM Standard L3 Switch Configuration eTool

11-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 5: GM Standard L3 Switch Configuration-Firmware and IP Addresses

Figure 6: GM Standard L3 Switch Configuration-Host Name and Switch Type

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-5
Figure 7: GM Standard L3 Switch Configuration-SNTP & SNMP and Time Zone

Note: *These addresses are provided by the facility.

Figure 8: GM Standard L3 Switch Configuration-Port Configuration

11-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 9: GM Standard L3 Switch Configuration-VLAN

11.3.1.2. GM Standard L3 Switch Configuration eTool Procedure


Switch settings should be at factory defaults.
 Switch can be reset to factory default via Hi-View/browser interface
 Basic Settings
 Load/Save menu using the down arrow button and selecting ‘Back to factory
defaults’.
 Note: the IP address will need to be reset via Hi Discovery once this is done.
1. Connect PC to the switch via the designated convenience port.
The tool detects what the convenience port is by checking for “CVP” to be
contained in the Port Name field.
Note: Communications may be lost prior to setting all the parameters if
the convenience port is not used.
2. Set the PC and switch IP addresses to temporary values for initial configuration
only.
 Temporary IP’s should be in the same subnet address range.
 For this example, set PC to 172.16.1.100 with a subnet mask 255.255.255.0

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-7
Figure 10: Setting Temporary IP Address on the PC

Using Hi-Discovery, set a temporary IP address for the switch.


For this example, set IP address to 172.16.1.4 with a Subnet mask of
255.255.255.0 and Default gateway can be blank.

Figure 11: Setting Temporary IP Address on a L3 Switch

11-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
3. Using HiView or browser interface, from Basic Settings->Software verify the
switch firmware ‘Running Version’ is HiOS-6.1.04 (Octo. II)
 Update if needed using the ‘Software Update’ section.
 For this example:
Software should already be set to HiOS-6.1.04

Figure 12: Verifying the Firmware of the L3 Switch

4. Launch the ‘GM Standard L3 Switch Configuration Tool’

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-9
Figure 13: Launch the GM Standard L3 Configuration Tool

5. Import switch data from DCDL. Follow DCDL Import dialog prompts to select the
switch and populate the form.
 Alternately, the form data can be manually entered.
For this example, use DCDL for G16 Trainers

Figure 14: Import Switch Data from the DCDL

11-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6. Once data in the form is correct, select ‘Write Config to Switch’ to send the
parameters to the switch.
 When it is complete, communications will be lost to the switch.
The temporary address can no longer be seen since the port-VLAN IDs have been set
to either 120 or 192 and the switch is now running as a router.

Figure 15: Write Configuration to Switch

7. Once the Configuration has finished writing to the switch, Clear the Temporary IP
info.
NOTE: Status Log may indicate that Temporary IP Info was cleared.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-11
Figure 16: Clear the Temporary IP Address

11-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
11.4. Module Review
1. What is meant by single hop routing?
2. When configuring the IP addresses of the workstation to the MTEC Trainer,
where are the convenience port IP addresses located?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 11-13
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 12: Multi-Language


Message Extractor
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation
Standards
Manufacturing Engineer 810-602-9768
Phone:

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Updated graphics and procedures.
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
9-19-19 7.0 J. Hocking Revised module number was 13.

This training is based on the Global Common Software Design Standards,


GCCS-1. Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have
the latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
12. Multi-Language Message Extractor .............................................. 12-1
12.1. Module Objectives: ......................................................................................... 12-1
12.2. Message Extractor Overview ......................................................................... 12-2
12.3. Message Extractor Requirements in the PLC Program ............................... 12-2
12.3.1. Message Extractor Requirements for Prompts and Alarms in Logic ....... 12-2
12.3.2. Message Extractor Requirements for Scrollist Text in Logic ................... 12-4
12.3.3. Message Extractor Requirements for Text Lists in Logic ........................ 12-5
12.3.4. Message Extractor Requirements for Multiple Items in a Single Rung
Comment ............................................................................................................ 12-6
12.3.5. Flags for Non-Alarm, Prompt, or Scroll list Rung Comments .................. 12-6
12.3.6. Flags for Extraction Options.................................................................... 12-7
12.3.7. Flags for Language Translation .............................................................. 12-8
12.4. Message Extractor Tag Extraction ................................................................ 12-8
12.4.1. Message Extractor Requirements for Tag Extraction in Logic ................ 12-8
12.4.2. Message Extractor Additional Tags Option ........................................... 12-10
12.5. Using the Message Extractor ....................................................................... 12-11
12.5.1. Additional Message Extractor Features ................................................ 12-11
12.5.2. Exercise 1: Run the Message Extractor on a PLC Program ................. 12-12
12.6. Language Translation ................................................................................... 12-17
12.6.1. Exercise 2: Language Translation ........................................................ 12-17
12.6.2. Language Discrepancies ...................................................................... 12-19
12.6.3. Proper Use of Parameters in the Translation Library ............................ 12-20
12.7. Transferring Messages from the Extractor to the Application.................. 12-20
12.8. Review ........................................................................................................... 12-21

Copyright 2019 General Motors Company


ii
Table of Figures
Figure 1: Typical GCCS-1 Prompt Rungs and Corresponding Rung Comments ...... 12-3
Figure 2: Typical GCCS-1 Scrollist Text Setup and Corresponding Rung Comment 12-4
Figure 3: Typical GCCS-1 Text List (TL) Setup and Corresponding Rung Comment 12-5
Figure 4: Proper use of the Warning Flag in a Rung Comment ................................ 12-6
Figure 5: Example of Rung Comment Flags, SYS then TODO ................................. 12-7
Figure 6 : Example of Extracted Tags – Date, Time Not Extracted ........................... 12-9
Figure 7: Sample Additional Tags Information ........................................................ 12-10
Figure 8: Message Extractor HMI & Alarm Setup Tab ............................................ 12-11
Figure 9: Opening the Global Message Extractor ................................................... 12-12
Figure 10: Open the .L5K File ................................................................................. 12-13
Figure 11: Extract Messages .................................................................................. 12-14
Figure 12: Main File Extractor ................................................................................. 12-15
Figure 13: Errors Tab in Message Extractor *.TMP file ........................................... 12-15
Figure 14: Warnings Tab in Message Extractor *.TMP file ..................................... 12-16
Figure 15: Review the HMI & Alarm Setup Tab ...................................................... 12-16
Figure 16: Open the Translation Library File ........................................................... 12-17
Figure 17 Language Translator Options .................................................................. 12-18
Figure 18: Example - Parameterized Alarm in the Library ...................................... 12-20

© 2019 General Motors Company. All Rights Reserved


iii
12. Multi-Language Message Extractor
12.1. Module Objectives:
1. The student will be able to use Message Extractor to extract HMI text.
2. The student will be able to correct errors in ladder logic.
3. The student will be able to create multi-language *.L5K files.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-1
12.2. Message Extractor Overview
 Checks an RSLogix *.L5K file, for certain common programming errors relating to
the length and formatting of documentation
 Extracts alarm, prompt, scroll list, and text list information for Siemens
WinCCFlexible and Comfort (TIA Portal) HMI displays. Only Siemens HMIs are
used in the global architecture at this time.
 Extracts tag information for the Siemens HMI.
 Handles language translations in the HMI and also writes the translated
information back into the *.L5K file.
 Provides error and warning messages for prompt, scroll list, alarm and text lists.

12.3. Message Extractor Requirements in the PLC Program


12.3.1. Message Extractor Requirements for Prompts and Alarms in
Logic
There are several requirements that must be followed inside the RSLogix application
to ensure all the features of Message Extractor work properly. First, every call to the
Diagnostics Routine using kAlarm and kPrompt must have a properly formatted rung
comment to document the message appropriately.

12-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1

Figure 1: Typical GCCS-1 Prompt Rungs and Corresponding Rung Comments

Note the format of the rung comment:


 The Rung Comment begins with <@DIAG> to identify a diagnostic message (1).
 The message for extraction begins with < and ends with > (2).
 It must have Alarm or Prompt followed by the message number in brackets [ ]
and a colon (:).
 Following the colon is the alarm or prompt message the HMI will display (3).
 Multiple alarms or prompts can be included in one comment as long as all of the
messages are on the same rung as the instructions.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-3
12.3.2. Message Extractor Requirements for Scrollist Text in Logic
Each action displayed on the Scrollist requires a matching piece of text in the rung
comment that must be properly formatted to document the message appropriately.

Figure 2: Typical GCCS-1 Scrollist Text Setup and Corresponding Rung Comment

Note the format of the rung comment:


 The Rung Comment begins with <@DIAG> to identify a diagnostic message (1)
 The message for extraction starts with < and ends with >.
 It must have SL followed by the message number in brackets [ ] and a colon: (2).

12-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12.3.3. Message Extractor Requirements for Text Lists in Logic
Each Text List (TL) entry that you want created from the PLC program requires a
matching piece of text in a rung comment to document the message appropriately.

Figure 3: Typical GCCS-1 Text List (TL) Setup and Corresponding Rung Comment

Note the format of the rung comment:


 The Rung Comment begins with <@DIAG> to identify a diagnostic message.
 The message for extraction starts with < and ends with >.
 The message must have TL followed by the maximum length of the entry and a
space, then the name of the text list, and finally the entry number in brackets [ ]
and a colon :. See Figure 3 above.
 Following the colon is the text list entry that the HMI will display.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-5
12.3.4. Message Extractor Requirements for Multiple Items in a Single
Rung Comment
Messages are displayed in the rung comment immediately above the location that
will call the message in logic, in most cases. There are some situations where the
alarm number might be a variable.
In the near future, when the alarm number is a variable, there will be a rung
comment with many alarms, but a single call that doesn’t match the values in the
comment above. The extractor checks each of the extracted messages to make
sure that the values in the comment match the values in the rung calling them. In
these specific situations, additional functionality has been added to the extractor to
suppress the warnings.
The warning flag corrects the condition listed above. Any rung comment surrounded
by the warning flag <@WA=Off> (1) and <@WA=On> (2) will not be processed for
any potential warnings that the Message Extractor might discover. See figure 6.2.3
for an example of proper use of the warning flag.

Figure 4: Proper use of the Warning Flag in a Rung Comment

The prompts listed above will not trigger any warning messages for duplicate prompt
messages, or for not having a properly formatted rung.
12.3.5. Flags for Non-Alarm, Prompt, or Scroll list Rung Comments

12-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Rung comments that contain information outside of alarms, prompts, and scrollist
text can be modified via the extractor with the proper flag. SYS, INFO, USER,
PARAM, and TODO are all flags that are used to inform Message Extractor that the
rung comments are of particular importance, and therefore can be translated or
deleted, as required. The flags are for these different types of rung comments are:

 SYS - System Message; Do not delete.


 INFO - Information Message; May be deleted.
 USER - User Message.
 PARAM - Parameter Message.
 TODO - To Do Message; Instructions for user.

The SYS flag (1 in Figure 5) is slightly different than the others, in that the Message
Extractor will not allow deletion of those comments.

Figure 5: Example of Rung Comment Flags, SYS then TODO

You can use multiple flags in the same comment one after another if there are
different sections of the rung comment with separate functions. Note that all of
these flags must be above the listing of alarm, prompt, or scroll list messages. This
is to facilitate the translation of those messages for multiple languages.
12.3.6. Flags for Extraction Options

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-7
The extraction option flags shown below allow flexibility in how messages are
extracted, diagnosed, and formatted for the HMI.
 WA - Warning/Error for RC message (defaulted ON).
 PN/PM - Add program name to message (default Alarms:ON, SL:OFF,
Prompt:OFF).
 EX - Extract RC message (default ON).

12.3.7. Flags for Language Translation


The final flags used by Message Extractor are actually not used by the user at all –
Message Extractor uses the LA and MSGLA flags to indicate what language each
piece of a rung comment is so that it can re-read those messages again later and
place each of the messages in the proper location.
 LA - Language Flag (default English en-US).
 MSGLA – Message Language Flag (default English en-US).

12.4. Message Extractor Tag Extraction


Message Extractor will extract tag information from the PLC for tags that either have the
correct UDT naming format or are requested from the Additional Tags screen. Tags are
exported as .csv files that can be imported into WinCCFlexible. Tags are built up in a
folder structure, where the program name is the first folder, followed by a folder for each
nested UDT until base tag types are reached. Controller-scoped tags are put into a
folder called “Controller Tags”.
There are exceptions to the rules listed above. The HMI program is always called HMI
instead of HMI1, robot IO is extracted to R01-R24 instead of the robot program name,
etc… This allows easy translation from HMI1 to HMI2, and for more pre-programmed
functionality in the WinCCFlexible application.

12.4.1. Message Extractor Requirements for Tag Extraction in Logic


Message Extractor will only extract certain tags to keep the tag database as small
and manageable as possible. It will extract any UDTs that start with “uh_*” or “zh_*”.
All tags that are inside of those UDTs will be extracted, including other UDTs, even if
they do not have the proper header.
If a “uh_*” or “zh_*” UDT is nested inside of other UDTs, only the tags that are at
the “uh_*” or “zh_*” level and below will be extracted, although the full folder path
will still be extracted as described above.

12-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 6 : Example of Extracted Tags – Date, Time Not Extracted

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-9
12.4.2. Message Extractor Additional Tags Option
If there are tags or UDTs that are not structured properly to be automatically
extracted, there is an “Additional Tags” sheet in Message Extractor. Type in the tag
or UDT name that needs to be extracted, along with a “T” or “U” to indicate if it is a
tag or a UDT. Message Extractor will also extract any tags that have that name or
that UDT name in addition to the tags that are properly formatted.

Figure 7: Sample Additional Tags Information

12-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12.5. Using the Message Extractor
This message extractor it will create GM config files required for the Siemens HMI. For
the application to run properly Macro security must be set to Medium or lower.
12.5.1. Additional Message Extractor Features
The message extractor zip package includes a PDF description of added functions of
the message extractor. Once a L5K file is extracted, a HMI & Alarm Setup tab will be
provided next to the Errors tab. This tab reveals status of the projects Diagnostic
Name, Message Offset, and other items. Cells that are shaded in yellow have
warnings; red shaded cells indicate errors are present. All errors, including Scroll List,
Prompts, Alarms, and Text Lists must be resolved before HMI files can be generated.
This helps prevent erroneous HMI projects from being built.

Figure 8: Message Extractor HMI & Alarm Setup Tab

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-11
12.5.2. Exercise 1: Run the Message Extractor on a PLC Program
The message extractor is a GM eTool used to indicate errors in diagnostics in Logix
projects. Much of the errors that it finds relate to duplicate or missing Alarms, Prompts,
Scroll lists and the messages that coincide with them. Once errors are corrected in the
Logix, the messages will then be imported to the HMI(s) used in the Controller (Cell).

IMPORTANT: Extract all files from the Message Extractor zip file. The message
extractor will NOT function properly from inside the zip file.

1. Open ComTask12Exercises and save the logic file in RSlogix as an .L5K


file.
2. Open the GlobalMessageExtractor.xls file.

Figure 9: Opening the Global Message Extractor

3. Click Open RSLogix L5K File. Refer to Figure 10.


4. Select the *.L5K formatted PLC program file that was just saved.
5. Click Open. Refer to Figure 10.

12-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 10: Open the .L5K File

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-13
6. If the program is a conveyor, pre-G08 or a paint program check the “> 1000
Alarms per Program (paint, pre-G08 Conveyor” selection. Refer to Figure
11.
7. To include the HMI name to the output files for the HMI select the Add HMI
Name to the Output file names, these will be imported through WinCC to the
HMI project.
8. Select from the menu list the HMI type for your application. Select TIA
Portal for any TIA Portal application.
9. Click the Extract Msgs button, this process will take 10 to 60 seconds
depending on application size and the computer’s speed.

Figure 11: Extract Messages

The Main File Extractor will display the total quantity of errors and warnings. While it is
helpful to resolve Warnings, the Errors must be resolved to get output files from the
Message Extractor.

12-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 12: Main File Extractor

10. Correct any errors in the RSLogix 5000 application that are listed on the
“Errors” tab of message extraction data file. Errors must be corrected in the
logic that save as an .L5K and re-run the message extractor until the project
is error free. You can cross reference for any kprompt or kalarm numbers if
listed. You can search for Alarm/Prompt or Msg/Text entries. Make sure to
copy the text from the Excel formula bar. This can be pasted to the Find
dialog in the logic.

Figure 13: Errors Tab in Message Extractor *.TMP file

Additional hints for locating errors in the logic using the Message Extractor:
Column F indicates the Program, Routine and Rung number of the error location. You
can navigate to the rung directly.
The Scroll List , Prompts, Alarms, and Text Lists tabs list all diagnostics that are in the
project.
These tabs are useful for diagnosing duplicate message numbers and what values are
available to use.
11. Check the “Warnings” tab and correct any issues in the RSLogix 5000
application.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-15
Figure 14: Warnings Tab in Message Extractor *.TMP file

12. Resolve any errors (red items) displayed on the HMI & Alarm Setup tab.

Figure 15: Review the HMI & Alarm Setup Tab


13. If any changes were made to the RSLogix 5000 file, close everything,
resave the modified RSLogix program as an *.L5K file, and run the extractor
again.

END OF EXERCISE 1

12-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12.6. Language Translation
Not all projects require language translation. The procedure for language translation is
shown in Exercise 2 below.
12.6.1. Exercise 2: Language Translation
1. Open the *.XLS file that is created by the Global MessageExtractor.
2. Select the Main Tab
3. Click Load Language File (Figure 14) and follow the steps below.
4. Select “Global Translation Library.xls”
5. Click “Open” from the Open Excel file window.

Figure 16: Open the Translation Library File

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-17
Figure 17 Language Translator Options
6. Select the languages for alarms, prompts, scroll list, and rung comments
under Message Languages Selected.
A. The available languages in the drop down boxes are based on the
languages listed in the translation library file. Note that one or more of
the language options might be grayed out indicating that the language
was already set from the information read in the *.L5K file.
B. Any of the messages that have already been translated will not be re-
translated. If the translation is not correct, simply delete the entry from
the translation column and it will be translated again.
7. Select the proper options for the rung comment flags. The three options are
“Translate”, “Leave As Is”, and “Delete”. Note that the system flagged
messages cannot be deleted.
8. Select the current language and the desired language to translate the user
defined data types.
A. Unlike the rung comments which show all of the translated languages, the
user defined data types replace the current language with the newly
selected language. This is due to the limited length of tag comments.
9. When all of the options needed for translation have been set, click
Translate Languages.
Once the translations are completed, check each tab and verify that all
messages have been translated and the translation is correct.
END OF EXERCISE 2

12-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12.6.2. Language Discrepancies
1. If there are any messages that were not translated, there are three different
ways to continue. They are listed below in order of complexity.
o Translate the message manually in the appropriate column. The
translation will be saved for this PLC program only and will be lost if it is
not written back to the *.L5K file (see below). This method is best used if
there is a unique message that is unlikely to occur again anywhere else.
o Add the translation into the Translation Library.xls file under the
appropriate “User” section. Updating the translation library will require re-
running MessageExtractor.xls from the beginning (unless you also did the
1st option listed above.) However, placing it here will ensure that the
translation will be used for all messages. Use this option if there is a
message that will need translation often, or if you have many similar
messages that can be translated via parameters.
o If a message translation is incorrect or does not exist, and you believe that
it is a common message that would apply to all GM applications, submit
the message along with its translation to the GM engineer responsible.
The messages will be added to the common messages in the next release
of the translation library. Since this procedure can take some time, use
one of the above methods for your project in the interim.
2. Once all messages are translated to your satisfaction, go back to the Main
tab and click on the Create Multi-Language L5K file. This will create a
*_new.L5K file that can be imported using RSLogix 5000. This ensures all
the translations will be stored for later reprocessing, if necessary. It also
ensures the translated information will have the ability to be read inside of
the RSLogix 5000 program.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-19
12.6.3. Proper Use of Parameters in the Translation Library
Parameters can be set for all messages except “Comments” and “UDTs”. These
parameters should have a recognizable name and be enclosed in braces {}. A
parameter will replace any one word or number, determined by the next space ‘ ‘
encountered. Parameters properly set allow the translation of one message added
to the user section to translate multiple similar messages.

GATE {GATE} I/O MODULE {MODULE} INPUT FLTD /*R*/ INPUT/PULSE TEST

INPUTS {INPUTS} TEST-SEE HELP

Figure 18: Example - Parameterized Alarm in the Library

In the alarm shown in Figure 18, {GATE} represents a Gate # from 1 to 6,


{MODULE} represents module 1 or 2, and {INPUTS} represents the inputs that the
fault is occurring on. Using the parameters saves the local plant from translating the
same alarm repeatedly when there are only slight differences that do not affect the
translated text.

12.7. Transferring Messages from the Extractor to the


Application
 The final step for the Message Extractor is to click on the Export all Siemens
Files button. This will create two files that will need to be loaded to the TIA
Portal application.
 One file is used to import tags into TIA Portal. It will be named HMI1_Tags.xlsx*.
 The Second File is used to import the text lists in the project
HMI1_AllTextLists.xlsx*
 * HMI1 file import files represent HMI1, actual number will reflect the HMI number
chosen.
 Importing these files into their appropriate programs will be covered in the next
module.

12-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12.8. Review

1. How is message extractor used to extract HMI text?


2. How is text corrected in ladder logic?
3. How are multi-language *.L5K files created?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 12-21
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 13: TIA Portal and Siemens


HMI Panels
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:

Date Revision By Revision History


Synchronized graphics and content with TIA
8-26-13 5.0 J. Hocking
Portal.
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
Module was 14. Updated Ethernet Driver
9-19-19 7.0 J. Hocking
settings.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United States
of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for incidental
or consequential damages resulting from the use or application of the materials in
this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
13. TIA Portal and Siemens HMI Panels ............................................. 13-1
13.1. Objectives: ....................................................................................................... 13-1
13.2. TIA Portal Initial Installation ........................................................................... 13-2
13.3. GM HMI Application for the Workstation ....................................................... 13-2
13.3.1. Exercise 1: Creating a GM HMI Application on the PC Workstation ........ 13-2
13.4. Siemens HMI Panel Initial Terminal Setup .................................................... 13-5
13.5. Creation of the *.XLSX Files ......................................................................... 13-22
13.5.1. Exercise 2: Creation of the .XLSX files .................................................. 13-22
13.6. Importing Tags and Text Lists into TIA Portal ............................................ 13-23
13.6.1. Exercise 3: Importing Tags and Text Lists............................................. 13-23
13.6.2. Exercise 4: Transfer the Application to the HMI .................................... 13-28
13.7. HMI User Additions ....................................................................................... 13-33
13.7.1. How to Create Tags .............................................................................. 13-33
13.8. Tag Properties ............................................................................................... 13-35
13.8.1. General.................................................................................................. 13-35
13.8.2. Settings ................................................................................................. 13-35
13.8.3. Range .................................................................................................... 13-36
13.8.4. Linear Scaling........................................................................................ 13-36
13.8.5. Values ................................................................................................... 13-37
13.8.6. Comment ............................................................................................... 13-37
13.8.7. Multiplexing ........................................................................................... 13-38
13.8.8. Good Manufacturing Practices .............................................................. 13-38
13.9. How to Create and Fill Screens .................................................................... 13-39
13.9.1. HMI Screen Creation ............................................................................. 13-39
13.9.2. Screen Objects ...................................................................................... 13-40
13.10. Object Properties......................................................................................... 13-42
13.10.1. Object Appearance .............................................................................. 13-43
13.10.2. Object Visibility .................................................................................... 13-44
13.10.3. Object Movement ................................................................................ 13-45
13.11. System Functions ........................................................................................ 13-46
13.12. TIA Portal and GM Screen Applications .................................................... 13-48
13.12.1. Finishing the Application...................................................................... 13-48
13.12.2. Style Screen Configuration .................................................................. 13-49
13.12.3. Cell Overview Screen Configuration .................................................... 13-49
13.12.4. Custom Screen Configuration ............................................................. 13-55
13.12.5. Review................................................................................................. 13-56

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Extract All Files from MP370 MultiPanel.zip ................................................. 13-2
Figure 2: Selecting a File Destination and Making New File Folders ........................... 13-3
Figure 3: Extraction Wizard .......................................................................................... 13-3
Figure 4: Correct File Directory Appearance ................................................................ 13-4
Figure 5: HMI Panel Transfer Mode ............................................................................. 13-5
Figure 6: HMI Panel Loader Window ............................................................................ 13-5
Figure 7: HMI Panel Transfer Icon................................................................................ 13-6
Figure 8: HMI Panel Transfer Settings Setup ............................................................... 13-6
Figure 9: HMI Panel IP Address, Subnet Mask and Gateway Setup ............................ 13-7
Figure 10: Network Configuration Window ................................................................... 13-7
Figure 11: Reboot the Siemens HMI Panel from OP Properties Tab............................ 13-8
Figure 12: The TIA Portal Start Page ........................................................................... 13-9
Figure 13: TIA Portal Project Setup ............................................................................ 13-10
Figure 14: TIA Portal Transfer Setup .......................................................................... 13-11
Figure 15: TIA Portal Transfer Setup Example ........................................................... 13-12
Figure 16: TIA Portal Open the Update Operating System ......................................... 13-13
Figure 17: TIA Portal HMI Panel OS Update .............................................................. 13-14
Figure 18: HMI Panel Transfer Mode ......................................................................... 13-14
Figure 19: Loader Window ......................................................................................... 13-16
Figure 20: HMI Panel Control Panel – Open Volume and Sounds ............................. 13-16
Figure 21: HMI Panel Volume and Sounds ................................................................ 13-17
Figure 22: HMI Panel Control Panel – Open OP ........................................................ 13-17
Figure 23: HMI Panel Touchscreen Calibration .......................................................... 13-18
Figure 24: HMI Panel Control Panel – Open Regional Settings ................................. 13-18
Figure 25: HMI Panel Control Panel – Regional Settings Properties .......................... 13-19
Figure 26: HMI Panel Control Panel – Open Input Panel ........................................... 13-19
Figure 27: HMI Panel Resizing the HMI Input Panel .................................................. 13-19
Figure 28: HMI Panel Resizing the HMI Keyboard ..................................................... 13-20
Figure 29: HMI Panel Resizing the HMI Input Panel .................................................. 13-21
Figure 30: HMI Panel Close the Control Panel Window ............................................. 13-21
Figure 31: HMI Panel Loader Window Transfer Button .............................................. 13-22
Figure 32: Export all Siemens Files in Message Extractor ......................................... 13-22
Figure 33: Importing Tags – Open the Import Dialog................................................. 13-23
Figure 34: Importing Tags – Open Import File ........................................................... 13-24
Figure 35: Importing Tags – Start Import ................................................................... 13-24
Figure 36: Importing Text Lists – Open the Import Dialog ......................................... 13-25
Figure 37: Importing Text Lists – Start Import............................................................ 13-25
Figure 38: Set the Project HMI IP Address – Access the IP Protocol ........................ 13-26
Figure 39: Setting the HMI Project IP Address .......................................................... 13-26
Figure 40: Set the PLC IP Address............................................................................ 13-27
Figure 41: Set the Area Pointer if Required ............................................................... 13-27

© 2019 General Motors Company. All Rights Reserved


iii
Figure 42: Downloading Computer Control Panel Display Setting ............................ 13-28
Figure 43: Compile the Application – Rebuild All ....................................................... 13-29
Figure 44: Open the Operating System Update (ProSave) ....................................... 13-30
Figure 45: OS Update................................................................................................ 13-30
Figure 46: Downloading the HMI Program ................................................................ 13-31
Figure 47: Load Preview............................................................................................ 13-32
Figure 48: Extended Download to Device ................................................................. 13-32
Figure 49: HMI Tag Creation ...................................................................................... 13-34
Figure 50: Tag Addressing ......................................................................................... 13-35
Figure 51: Settings ..................................................................................................... 13-35
Figure 52: Range ........................................................................................................ 13-36
Figure 53: Linear Scaling............................................................................................ 13-36
Figure 54: Values ...................................................................................................... 13-37
Figure 55: Tag Comment............................................................................................ 13-37
Figure 56: Tag Multiplexing ........................................................................................ 13-38
Figure 57: Good Manufacturing Practices .................................................................. 13-38
Figure 58: Creating a New Screen ............................................................................. 13-39
Figure 59: Simple TIA Portal Objects ......................................................................... 13-41
Figure 60: Object Miscellaneous ................................................................................ 13-42
Figure 61: Object Appearance .................................................................................... 13-43
Figure 62: Add Visibility Animation ............................................................................ 13-44
Figure 63: Object Movement ...................................................................................... 13-45
Figure 64: Events and System Functions ................................................................... 13-46
Figure 65: Style Screen Setup .................................................................................... 13-49
Figure 66: Cell Overview Screen ................................................................................ 13-50
Figure 67 Rotating a Robot PB - Indicator .................................................................. 13-51
Figure 68: 9999 - Cell Overview Graphics – Gates/Guards........................................ 13-51
Figure 69: 9999 - Cell Overview Graphics – Panels ................................................... 13-52
Figure 70: 9999 - Cell Overview Graphics – Robots .................................................. 13-52
Figure 71: 9999 – Cell Power & I/O Graphics ............................................................. 13-53
Figure 72: Tool Overview Screen ............................................................................... 13-54
Figure 73: 9999 - Station Overview Graphics ............................................................. 13-54

© 2019 General Motors Company. All Rights Reserved


iv
13. TIA Portal and Siemens HMI Panels
Totally Integrated Automation (TIA) Portal and Siemens HMI Panels
13.1. Objectives:
1. The student will be able to configure a GM core HMI application to suit a project
using TIA Portal software.
2. The student will be able import project diagnostic messages from logic into an
HMI project.
3. The student will be able to transfer an application to the Siemens HMI.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-1
13.2. TIA Portal Initial Installation
TIA Portal is the programming software used to develop, configure, and transfer
applications from a workstation to the Siemens Multi-Panel HMIs. For information on
installing TIA Portal, refer to the Socrates or GM Supply Power websites and look under
the GCCS-1a heading.

13.3. GM HMI Application for the Workstation


The GM implementation of the HMI requires additional files to operate correctly.
Following the steps below will create the proper directories and place the proper files in
them.

13.3.1. Exercise 1: Creating a GM HMI Application on the PC


Workstation
Students will learn how to start an HMI project using the standard zip file. All HMI
applications require the following steps to begin creating an application specific to
project desired.

1. Right-click on the v11 TP1200 Core App v1.291PFE.zip file. See Figure 1.
2. Select Extract All.

Figure 1: Extract All Files from MP370 MultiPanel.zip

3. Browse for a file destination. Select E:\GCCS2\Exercises\. Create a new


folder.
4. Click Make New Folder and label it HMI (Figure 2).
5. Select the HMI folder and create new folder labeled TP010HMI1.

13-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 2: Selecting a File Destination and Making New File Folders

6. Click Next on the Extraction Wizard (Figure 3).

Figure 3: Extraction Wizard


7. Click Finish on the Extraction Wizard (not shown). The file directory should
appear as shown in Figure 4.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-3
Figure 4: Correct File Directory Appearance
When creating the project, use the application name for the .ap11 file and the folder
containing the .ap11 file. For example, AA110B1HMI1.ap11 and AA110B1HMI1 folder
name. Subfolder names are controlled by TIA Portal.
8. Rename the folder and the .ap11 file to TP010B1HMI1
9. Double-click TP010B1HMI1.ap11 to open the application.
10. Close the application; verify that file and folder name remained.
END OF EXERCISE 1

13-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.4. Siemens HMI Panel Initial Terminal Setup
The procedure for setting up a new Siemens Multi-panel terminal is outlined in the
following pages.
1. Power up the HMI panel.
2. Click on Cancel in the Transfer mode.

Figure 5: HMI Panel Transfer Mode


3. Click on Control Panel.

Figure 6: HMI Panel Loader Window

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-5
4. Double-click Transfer.

Figure 7: HMI Panel Transfer Icon

5. Select Ethernet.
6. Select Automatic under Transfer
7. Click Properties.

Figure 8: HMI Panel Transfer Settings Setup

13-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
8. Click Specify an IP address.
9. Input the proper IP Address, Subnet Mask, and Gateway.
 Important: Set Gateway to match the address of the Controller (Cell)
Ethernet Switch
10. Click OK.

Figure 9: HMI Panel IP Address, Subnet Mask and Gateway Setup

11. Click OK to close the Transfer Settings window.

Figure 10: Network Configuration Window

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-7
12. Toggle power to the WinCC unit by clicking OP on the OP Properties tab, then
the Device tab, then Reboot, or by disconnecting and reconnecting the power
source.

Figure 11: Reboot the Siemens HMI Panel from OP Properties Tab

13-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Open TIA Portal on a laptop.
13. Click Open an Existing Project.

Figure 12: The TIA Portal Start Page

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-9
14. Browse for the .HMI file to be loaded to the HMI panel.

Figure 13: TIA Portal Project Setup

13-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
15. Right Click the Device_1 folder.
16. Click Properties.

Figure 14: TIA Portal Transfer Setup

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-11
17. Under PROFINET Interface (X1) click Ethernet addresses.
18. Input the HMI panel IP Address, Mask and Gateway (Router Address).
19. Click OK.

Figure 15: TIA Portal Transfer Setup Example

13-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
20. Right click the Device_1… HMI folder.
21. Click HMI Device Maintenance.
22. Click Update Operating System.

Figure 16: TIA Portal Open the Update Operating System

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-13
23. Click Update OS.
24. Click Yes.

Figure 17: TIA Portal HMI Panel OS Update

Update OS should take about 5-10 minutes. The HMI Panel will reboot itself when it
is finished.
Note: This needs to be performed only for a new HMI unit. Once a unit has
been updated, it will not need another update unless the WinCCFlexible
version changes.
IMPORTANT: Do Not download v11 firmware to a new HMI. The HMI will fail
and must be returned to Siemens.

25. Click Cancel in the Transfer mode window on the HMI panel.

Figure 18: HMI Panel Transfer Mode

13-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-15
26. Click Control Panel.

Figure 19: Loader Window

27. On the HMI Control Panel, double-click Volume & Sounds. Note: Volume &
Sounds is not available on portable HMI.

Figure 20: HMI Panel Control Panel – Open Volume and Sounds

13-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
28. Uncheck Screen Taps
29. Click OK on the Volume & Sounds Properties window.

Figure 21: HMI Panel Volume and Sounds

30. Double-click OP.

Figure 22: HMI Panel Control Panel – Open OP

31. Click Touch.


32. Click Recalibrate.
33. Click on the crosshairs as required (they move to each corner of the screen) and
double click on the screen to save settings.
34. Click OK on the OP Properties Tab.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-17
Figure 23: HMI Panel Touchscreen Calibration

35. Double click Regional Settings on the HMI control panel.

Figure 24: HMI Panel Control Panel – Open Regional Settings

13-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
36. Change Regional Settings to the appropriate region.
37. Click OK on the Regional Settings window.

Figure 25: HMI Panel Control Panel – Regional Settings Properties

38. Double-click Input Panel.

Figure 26: HMI Panel Control Panel – Open Input Panel

39. Select Show Resize Button. Click Open Input Panel.

Figure 27: HMI Panel Resizing the HMI Input Panel

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-19
40. Press and hold the double arrows next to the Close button.
41. Resize the HMI keyboard to the width of the screen, with an appropriate height.

Figure 28: HMI Panel Resizing the HMI Keyboard

13-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
42. Click Save on the Input Panel window.
43. Deselect Show Resize Button.
44. Click Close Input Panel.
45. Click OK on the Input Panel window.

Figure 29: HMI Panel Resizing the HMI Input Panel

46. Reset the IP Address if it was deleted or changed during the OS Update process.
If so, repeat Steps 4-12 outlined earlier.

47. Close the Control Panel window.

Figure 30: HMI Panel Close the Control Panel Window

48. Click Transfer on the Loader window.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-21
Figure 31: HMI Panel Loader Window Transfer Button

The HMI panel is now fully configured and ready for the application to be
downloaded.
13.5. Creation of the *.XLSX Files
Use Message Extractor as described in Module 13 to extract the messages from the
Logix 5000 .L5k file. Do not use the language translator for this exercise. Use the
procedure in Exercise 2 to create two .XLXS files.
13.5.1. Exercise 2: Creation of the .XLSX files
Select the Export all Siemens Files button (Figure 32).
1. Open Core08Exercises.acd
2. Save a *.L5K
3. Run the Message Extractor, do not use the Language Translator, see
Module 12 for directions.

Figure 32: Export all Siemens Files in Message Extractor

END OF EXERCISE 2

13-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.6. Importing Tags and Text Lists into TIA Portal
Message Extractor creates tags and text lists from the PLC program for use in the HMI
application. Follow the instructions in the Message Extractor; refer to Module 14, to
create the tag and text list import files from the PLC program.
13.6.1. Exercise 3: Importing Tags and Text Lists
Open the TP010B1HMI1 TIA Portal project created in Exercise 1.
13.6.1.1. Importing Tags
1. Expand the Device
2. Expand HMI tags
3. Double Click Show all tags
4. Click Import

Figure 33: Importing Tags – Open the Import Dialog


5. Browse to select the tag file created by message extractor (ApplicationName-
HMIx_Tags.xlsx) “Core08Exercises-HMI1_Tags.xlsx” is the actual file name.
6. Click Open.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-23
Figure 34: Importing Tags – Open Import File
7. Click Import

Figure 35: Importing Tags – Start Import


13.6.1.2. Importing Text Lists
1. Expand the Device
2. Double click Text and Graphic Lists
3. Select Import.

13-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 36: Importing Text Lists – Open the Import Dialog
4. Select the text list file created by message extractor (ApplicationName-
HMIx_AllTextLists.xlsx) “Core08Exercises-HMI1_AllTextLists.xlsx”
5. Select Import.

Figure 37: Importing Text Lists – Start Import


13.6.1.3. Set the Project HMI Address
1. Expand the Device
2. Double click Device configuration
3. Select PROFINET_Interface_1

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-25
Figure 38: Set the Project HMI IP Address – Access the IP Protocol
4. The Properties should be displayed.
5. Use IP protocol should be selected.
6. Use IP router should be selected.
7. Set IP address in the project should be selected.
8. Enter the IP address, subnet mask, and IP router (gateway address) for the HMI
project.

Figure 39: Setting the HMI Project IP Address


IMPORTANT: If the Set IP address using a different method is NOT selected, the IP
address settings in the HMI will be overwritten on download. If any IP address setting is
not known, set the IP address, then select the Set IP address using a different method
option. Once all settings are known and correct, deselect the Set IP address using a
different method option.
13.6.1.4. Set the PLC IP Address
The HMI project must contain the IP address of the PLC that communicates with the
HMI.

13-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1. Double click Connections, the PLC connection will be displayed.
2. ETHERNET Interface should be selected.
3. Set the PLC IP address.
4. If the PLC is not in slot 0, update the Communication path with 1, [Slot number of
PLC]

Figure 40: Set the PLC IP Address


13.6.1.5. Set the Area Pointer Addresses
This step can be skipped with HMI cores version 1.283 or newer. The HMI core
used in class does not require setting the Area Pointer. The Area pointer
configuration is no longer used for control. If the Area pointer properties are blank,
skip this step.
If addresses appear as shown below, update the HMIx program name to match the
HMI in the PLC application (HMI1, HMI2, HMI3). Any fields that do not have
addresses can be left alone.

Figure 41: Set the Area Pointer if Required


Note: This exercise project provided should not require the Area Pointer Address
settings.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-27
END OF EXERCISE 3
13.6.2. Exercise 4: Transfer the Application to the HMI
13.6.2.1. The Downloading Computer Settings
Before you begin the transfer process it is critical to set the downloading computer’s
default display size to 100%.
The HMI font size downloaded to the HMI will change based on the downloading
computer’s Display setting (see picture). To insure consistent HMI font sizes, all
computers used to download HMIs must have 100% as their active setting prior to
download.
To insure a proper download, close all TIA Portal windows. Click on the Start button,
Control Panel, then open the Display property window shown below, and select
100%. After that setting is correct, open the HMI project file, do a full compile, then
download.

Figure 42: Downloading Computer Control Panel Display Setting


13.6.2.2. Open the Aplication
1. Open TP010B1HMI1 in TIA Portal
2. [Optional step replaces step 1] Extract and rename ComTask14Exercise4
(Original trainer file)
3. Set the PLC and HMI Project IP Address info as explained in Exercise 3.
13.6.2.3. Compile the Application
The application must be error free before it can be downloaded. To check for errors
and prepare for download, compile the application. Check the computer’s Control
Panel - Display setting prior to downloading any application.

1. Right click on the Device

13-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
2. Select Compile
3. Select Software (rebuild all) in the pull down menu.

Figure 43: Compile the Application – Rebuild All


Any errors in the application will be highlighted at the bottom of the window.
Resolve all errors. Repeat this step until the application compiles without errors.
13.6.2.4. Load Firmware (Update Operating System)
Do Not Update Firmware in Class; it should be up to date.
TIA Portal loads the required firmware as part of the application download. A
minimum version is all that is required.
The Loader screen shows the firmware version of the HMI. If the firmware displayed
on the loader screen is equal to or greater than the firmware on the project
Blockpoint, skip this step. Load firmware only if the existing firmware is older than
that Blockpoint minimum, or if an error occurs in the download process.
To load firmware to the panel,
1. Open the Online menu.
2. Select HMI device maintenance
3. Select Update operating system

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-29
Figure 44: Open the Operating System Update (ProSave)
The Prosave application will launch. To test your computer and the connection
to the HMI, click on the Device status(1) button. If an error message is returned,
correct the problem. If a message that indicates that the HMI is ready for update,
click on Update OS(2) button to load the firmware.

Figure 45: OS Update

13-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.6.2.5. Download the HMI
Check the computer’s Control Panel – Display setting prior to downloading the HMI.
The computer must be set to the default 100% prior to compiling / downloading.
Download the program to the HMI:
1. Right click on the Device,
2. Select Download to device
3. Select Software (all).

Figure 46: Downloading the HMI Program


The Load preview window will open. If the application requires compiling, the
compiling status will be displayed. Once the Overwrite all option is shown,
check the box and click on the Load button.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-31
Figure 47: Load Preview
The Extended download to device window will display. Select Ethernet for the
Type of the PG/PC interface. Note: If Ethernet does not connect, select PN/IE.
Select your computer’s network adapter for the PG/PC interface. Click the Try
to Connect Button. The software will attempt to connect to the HMI. If a
communication error is displayed, correct the source of the error and try again.
Once communication is established, click on Load.

Figure 48: Extended Download to Device


END OF EXERCISE 4

13-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.7. HMI User Additions
13.7.1. How to Create Tags
Many tags are already created in the core application, and many more are created
through the Message Extractor and imported into the HMI application. Still, there
may be more data that needs to be retrieved from the PLC, or potentially needs an
internal tag for HMI use only.

13.7.1.1. HMI Tag Creation


1. Start the TIA Portal application.
2. Open your custom application file.
3. Expand the Device_1.
4. Double click to expand the HMI tags folder..
5. Double click the Show all tags or double click any folder desired.
6. In displayed tag collections double click the <Add new>
7. A copy of the previous tag will display the name will contain a “_1” after the
tag name.
8. Rename the tag to the desired name.
9. Set the Data type to the appropriate data type and set the number of
elements in the array (set it to 1 if the tag is a stand alone tag.) Note that
Acquisition mode and Acquisition cycle will be grayed out and unavailable for
internal tags – these values are not needed.
10. If this is an internal tag that only the HMI program is using set Connection to
<Internal tag>.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-33
Figure 49: HMI Tag Creation

If you are creating a PLC tag, you will need to set Connection to Connection_1. Then
select the data type from the drop down list. Next, set the Address of the tag. This
should be in the following format: <PLC Program Name>:<UDT Tag Name>.<UDT Tag
Name>.<Base Data Type tag Name>. An example of this would be
“HMI1:ScnCom.O.Alarm.” Next, enter the array length (if it is an individual tag enter 1).
Finally, ensure the Acquisition mode is Cyclic on Use and the Acquisition cycle is set to
500 ms for all tags but strings, which should be set to 1 second.

13-34 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.8. Tag Properties
13.8.1. General

Figure 50: Tag Addressing


The General section for tags allows you to configure the address, connection and
Data type of a tag.
13.8.2. Settings

Figure 51: Settings


Acquisition mode settings are possible from Settings section.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-35
13.8.3. Range

Figure 52: Range


The Range section allows you to set minimum and maximum limits for tags, and to
create alarms and warnings for those values. Note that the alarms and warnings are
for the Siemens alarm system, which GM is not currently utilizing. Limits can be set
to either a constant value, or to the value of another tag. Limits cannot be set on an
array of tags.
13.8.4. Linear Scaling

Figure 53: Linear Scaling


The Linear Scaling section, when enabled, allows you to set the scale factor for PLC
values. Using this you can convert a tag that represents seconds in the PLC to
represent minutes inside of the HMI application.

13-36 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.8.5. Values

Figure 54: Values


The Values section allows you to set up the Start Value for a numeric tag, which will
be displayed until overwritten by the PLC or user entry. The Update ID entry allows
you to trigger a tag update for a tag if it is configured to be updated on demand. If it is
configured, the Event Update Tag must be used with the specific Update ID to force
the tag to update. Note that there are only 100 Update IDs allowed and each tag
must have a unique Update ID, which makes this functionality of limited usefulness.
Note: The Update ID entry cannot be used at this time due to an issue in TIA Portal,
which cannot properly manage the number of directories we use.

13.8.6. Comment

Figure 55: Tag Comment


The Comment section allows you to provide a description of the tag.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-37
13.8.7. Multiplexing

Figure 56: Tag Multiplexing


The Multiplexing section, when enabled, allows one internal tag to point to any of
several different tags based off of another tag that acts as an Index. Note that the
index values cannot be adjusted at all; it counts purely from 0 to x – 1, where x is the
number of elements added to the list. The index numbers also cannot be reordered.
In order to change indexes of the tags, you must delete them and recreate them in
the correct order. Finally, no events can be triggered based off of multiplexed tags.
All of these constraints make multiplexing only of limited usefulness.
13.8.8. Good Manufacturing Practices

Figure 57: Good Manufacturing Practices


The Good Manufacturing Practices section allows settings for GMP.

13-38 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.9. How to Create and Fill Screens
13.9.1. HMI Screen Creation

Figure 58: Creating a New Screen


1. Double click on Add Screen under the Screens folder. It will create a screen
called Screen_1. You will need to rename the screen to xxx – <Screen Name>,
where xxx is the screen number. This number should then be set in the Number
field. It must be a unique number. This allows the PLC to know what screen you
are on.
2. The Use template box should always be checked.
3. The Background color should be set to black.
Note that you are not able to create pop-up screens that would show on top of other
screens. If you want to do this, create the pop-up screen on the screen that would
normally call it and put it on a different layer (see layers under the Screen Objects
section below.) Then only show the items that would be on the pop-up screen based
on a specific internal tag name. This tag name should be set so that when the
specific button is pressed, that specific screen is called up.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-39
Note that several screens are developed and available for you to add custom screen
information. These include 030 – Servo_VFD, 040 – Barcode, 100-105 – Spare 0-5,
200 – Cell Overview, and 201-230 – Tool Overview Station 1-30. These screens
have been created, but left blank for you to develop for your custom application. Any
additional screens will have to have a method to launch the screens. The most
common way to implement this is to have a button that will launch a screen – this will
be covered under Screen Objects that follows.

13.9.2. Screen Objects


Several screen objects will be discussed in this section, describing how the objects
are used and how to configure them.
The TIA Portal application uses the following standard drawing objects used to
create shapes:
 Lines
 Polylines
 Polygons
 Ellipses
 Circles
 Rectangles

13-40 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
TextFields display static text on the screen. Refer to Figure 59. IO Fields display tag
values – either internal tags or PLC tags. IO Fields will display either string or
integer based tag values. Graphic IO Fields will display a graphic or an item from a
graphic list based on the value of a tag (see Text and Graphic Lists below for more
information.) Similarly Symbolic IO Fields will display static text or a static test list
based on the value of a tag (again see Text and Graphic Lists below for more
information.) Finally, Buttons will allow you to trigger events based on a click, press,
or release of the button.

Figure 59: Simple TIA Portal Objects

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-41
13.10. Object Properties
For all objects there are a few common properties that are the same. To set the name
of an object click on the object, then on the Properties tab in the Properties header,
click on the Misc section. Here you can change the object name and set what layer the
object should be on. By default the layer is 0. Most objects should be on this layer.
Invisible buttons have been assigned layer 1 and tags that are on the screen only to
trigger scripts (more on this later) have been assigned layer 31. If you have several
objects overlapping one another on the screen it is recommended that you assign layer
numbers to the groups of objects that are overlapping so that you can easily turn the
layers on and off via the screen Properties header Layers section. This will make it
easier to modify the objects later if need be.

Figure 60: Object Miscellaneous


 The Appearance section changes slightly from object to object, but it is largely
used to set the foreground and background colors of objects as well as to set
borders and border colors.
 The Layout section also changes slightly from object to object. It allows the user
to change the location of the object on the screen and the width and height of the
object by manually typing in the x and y co-ordinates and the height and width
instead of moving and stretching the object on the screen.
 The Flashing section allows you to set whether you would like the object to flash
on screen continuously or not.
 The Animations header has many different sections that change from object to
object, but there are several that are common for most if not all objects. The
most commonly used ones will be discussed below.

13-42 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.10.1. Object Appearance

Figure 61: Object Appearance


The Appearance section, when enabled, allows you to change the foreground color,
the background color, and if the object is flashing or not based on the value of a tag.
The tag value can be read as an integer, as a range of bits, or as a single bit.
Double click on an empty row in the table on the right to add a value and set the
properties. You can enter a range for integer values, but not for binary values.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-43
13.10.2. Object Visibility

Figure 62: Add Visibility Animation

The Visibility section, when enabled, allows you to display or hide the object based
off of the value of a tag. Note: The Enable object section, which is only available for
objects that allow input – such as I/O fields and buttons, is set up exactly like the
visibility section. The only difference is that instead of hiding or showing the object,
the object is instead enabled or disabled for value entry.

13-44 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.10.3. Object Movement

Figure 63: Object Movement

The Movement sections all do roughly the same thing, just in different orientations.
When they are enabled, they allow a tag to shift the starting x and/or y position. The
range that is set up will be scaled based on the starting and ending positions to
determine the actual location of the object. Direct Movement is slightly different in
that it will allow different values for the x and y positions on a single animation, but
they are not scaled – the value of the tag will determine how far the object is shifted
with no scaling.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-45
13.11. System Functions
The Events header is available for tags, screens, and for objects that display data
based on tag values, such as IO Fields and Symbolic IO Fields. There are over 140
System functions that can be triggered. User written scripts can be launched, as well
(scripts will be covered below.)

Figure 64: Events and System Functions


Click <Add function> and use pull down menu to select event desired. Also available for
Deactivate and Input field.
Most objects can only launch events based on object Activate, Deactivate, or Change.
Buttons have the ability to launch events based on Click, Press, and Release events as
well. Screens and tags each have their own events available to them. Screens trigger
events when the page is Loaded or Cleared. Tags trigger events based on Change
Value, High Limit, and Low Limit.

Three of the more common System functions will be described in the next sections,
including:
 Calculation Functions
 Edit bits Functions
 Screens Functions

13-46 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
If you need more information, or want information on a System function not covered in
this document, hold the mouse cursor over the System function key inside of TIA Portal
for a few seconds and a description of the function will be displayed.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-47
13.12. TIA Portal and GM Screen Applications
13.12.1. Finishing the Application
There are several standard screens that will require modification for your specific
application, including the:
 Style Screen
 Cell Overview Screen
 Tool Overview Screens (any that are necessary for your application)
If any extra screens are needed, the Spare 0 through Spare 5 Screens are available
for modification and use.

13-48 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.12.2. Style Screen Configuration
1. Open the Style Screen, named 050 – Style. Do this by using the Project
Tab, and navigating through Device_1->Screens->050 – Style. Double-click
on 050 – Style to open the screen.
2. Navigate to the Screen Properties.
3. Turn off Layer 1 (see Figure 65). This will hide the invisible buttons over the
Style, Option, and Build Status sections and allow you to modify the objects
beneath the buttons.
4. Click on 0: No Style and modify the text in the Properties tab in the General
category. Do the same for each Style, Option, and Build Status test field.

Figure 65: Style Screen Setup

5. Click on an empty section of the screen to bring up the screen properties


again and re-enable Layer 1.

13.12.3. Cell Overview Screen Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-49
1. Open 200 – Cell Overview from the Project tab.
2. Also open all of the 9999 – Cell Overview Graphics screens. Refer to Figure
66 Copy any objects that you require for the Cell Overview Screen, following
the instructions listed on the 9999 screens. This will allow you to properly
place the objects and configure them. Be sure to acquire all of the
associated items for each object. Note that each robot has two images.
This is because images in TIA Portal can be rotated in 90 degree increments
only. Select the image that can be best rotated for your application. To
rotate the image, click on the screen background, go to the Properties tab,
and turn Layer 1 off. This will hide the button that opens the robot screen.
You can then select the Robot##Body_grp object and rotate it. Turn layer 1
back on once you have rotated the object, otherwise the button will not be
copied and the object will not work properly. See Figure 67.

Figure 66: Cell Overview Screen

13-50 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Layer 1 is OFF Layer 1 is ON
Rotate robot icon
only.

Figure 67 Rotating a Robot PB - Indicator

Figure 68: 9999 - Cell Overview Graphics – Gates/Guards

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-51
Figure 69: 9999 - Cell Overview Graphics – Panels

Figure 70: 9999 - Cell Overview Graphics – Robots

13-52 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 71: 9999 – Cell Power & I/O Graphics

Next open each of the 2xx – Tool Overview Station xx Screens that you will need
for your application, and the 9999 – Station Overview Graphics screens. Refer to
Figure 72 and Figure 73.
Follow the same procedure to create the Station Overview screens as you used for
the Cell Overview screen. Be sure to use the Station Overview Graphics screens
instead of the Cell Overview Graphics.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-53
Figure 72: Tool Overview Screen

Figure 73: 9999 - Station Overview Graphics

13-54 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
13.12.4. Custom Screen Configuration
To build any custom screens that your application may require, use the 10x – Spare
x screens first as these screens can be enabled through the PLC. If more screens
are required, you will need to trigger the screen launch yourself, either in the HMI, or
through modification of the PLC program.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 13-55
13.12.5. Review

1. How do you configure a GM core HMI application using TIA Portal?


2. How do you import project diagnostic messages from logic into a GM HMI
project?
3. How is an application transferred to the Siemens HMI?

13-56 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 14: HMI Multi-Language


Functionality
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Control
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Updated graphics and procedures
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
9-19-19 7.0 J. Hocking Module was 15.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.

© 2019 General Motors Company. All Rights Reserved


ii
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
14. HMI Multi-Language Functionality ....................................... 14-1
14.1. Module Objectives: ............................................................................... 14-1
14.2. Configuring the HMI Application for Multi-Language ........................ 14-2
14.2.1. Selection of Languages to be Included in the TIA Portal Project .. 14-2
14.2.2. Selection of Languages to be Included in Runtime ....................... 14-4
14.2.3. Selection of Flags for Each Language .......................................... 14-6
14.2.4. Unicocde Echo Language ............................................................. 14-7
14.2.5. Translation of HMI Text............................................................... 14-13
14.2.6. Final Review of the Translation ................................................... 14-15
14.3. Review ................................................................................................. 14-16

© 2019 General Motors Company. All Rights Reserved


ii
Table of Figures
Figure 1: Selection of Project Languages in TIA Portal............................................. 14-2
Figure 2: Selection of Languages to be Included in the Project ................................ 14-3
Figure 3: Selection of Languages and Fonts for Each .............................................. 14-4
Figure 4: Selection of Languages and Fonts in Runtime .......................................... 14-5
Figure 5: Runtime Language and Font Selection ...................................................... 14-5
Figure 6: Selection of Graphic Flags for Each Language.......................................... 14-6
Figure 7: Selection of Graphic Flags for Each Language.......................................... 14-7
Figure 8: Unicode Echo Language Tag Change ....................................................... 14-8
Figure 9: WinCC Flexible Language Codes ............................................................ 14-12
Figure 10: Export of HMI Texts ............................................................................... 14-13
Figure 11: Select Source and Target Languages ................................................... 14-14

© 2019 General Motors Company. All Rights Reserved


iii
14. HMI Multi-Language Functionality
14.1. Module Objectives:
1. The student will be able to configure the HMI application for multi-language
support in TIA Portal.
2. The student will be able to select languages to be included in HMI Runtime.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-1
14.2. Configuring the HMI Application for Multi-Language
After the HMI application has been fully developed, complete the following steps to
enable the application to support multiple languages in run-time mode.

14.2.1. Selection of Languages to be Included in the TIA Portal Project


The folder Languages and Resources (Figure 1) is part of the project shown on the
left hand side of the screen. This is displayed below the folder Documentation
Settings in the project tree.

Figure 1: Selection of Project Languages in TIA Portal

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-2
Under Language and Resources, select Project Languages and the screen will
look similar to Figure 2.

Figure 2: Selection of Languages to be Included in the Project

Most applications will only contain 2-3 languages with English being one of them.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-3
14.2.2. Selection of Languages to be Included in Runtime

Figure 3: Selection of Languages and Fonts for Each

Under Device_1 [TP1200 Comfort] (model used may vary), double click Runtime
settings then click Languages & Fonts and the screen will look similar to Figure 4.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-4
Figure 4: Selection of Languages and Fonts in Runtime

The table in Figure 4 populates based on the Project Languages selected earlier.
Select the Enable check box to include language in runtime.

Item Description Definition


1 Order Indicates the order for language switch, 0 is first. This
is an indicator only. To change order, begin with
item 4.
2 Enable Select (check) the box for language(s) desired for
runtime use.
3 Language Name The name of the available language.
4 Fixed Font Allows the user to define what the system font will be
for the specific language. Currently, Tahoma is used
for all languages.
5 Row Select Click button to select the row and adjust it’s order.
6 Up Moves selected row up in the language switching
order.
7 Down Moves selected row down in the language switching
order.
Figure 5: Runtime Language and Font Selection

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-5
14.2.3. Selection of Flags for Each Language

Figure 6: Selection of Graphic Flags for Each Language

Double click Project Graphics to begin flag selection. For each language, select the
Flag graphic and right click on the picture. Select Load from file (Figure 7). The flag
icons are stored in the Miscellaneous folder. Select the proper flag for each language
using this method. If the required flag is not available in the directory, obtain a .BMP
image of the flag and define the path to the image.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-6
Figure 7: Selection of Graphic Flags for Each Language

14.2.4. Unicocde Echo Language


The next step is setting the Unicode Echo Language (Figure 8). First expand the
HMI Tags (1) folder, and then expand the Internal (2) folder. Click the
Tags_Internal (3) and select the InternalUnicodeEchoLang (4) tag. Under
Properties select Values (5). Enter 1033 for the Start value (6). The example
shown below sets the InternalUnicodeEchoLang tag to English.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-7
Figure 8: Unicode Echo Language Tag Change

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-8
Language String Code
Afrikaans af 1078
Albanian sq 1052
Arabic United Arab ar-ae 14337
Emirates
Arabic - Bahrain ar-bh 15361
Arabic - Algeria ar-dz 5121
Arabic - Egypt ar-eg 3073
Arabic - Iraq ar-iq 2049
Arabic - Jordan ar-jo 11265
Arabic - Kuwait ar-kw 13313
Arabic - Lebanon ar-lb 12289
Arabic - Libya ar-ly 4097
Arabic - Morocco ar-ma 6145
Arabic - Oman ar-om 8193
Arabic - Qatar ar-qa 16385
Arabic - Saudi Arabia ar-sa 1025
Arabic - Syria ar-sy 10241
Arabic - Tunisia ar-tn 7169
Arabic - Yemen ar-ye 9217
Armenian hy 1067
Azeri Latin az-az 1068
Azeri Cyrillic az-az 2092
Basque eu 1069
Belarusian be 1059
Bulgarian bg 1026
Catalan ca 1027
Chinese - China zh-cn 2052
Chinese - Hong Kong zh-hk 3076
S.A.R.
Chinese Macau S.A.R zh-mo 5124
Chinese - Singapore zh-sg 4100
Chinese - Taiwan zh-tw 1028
Croatian hr 1050
Czech cs 1029
Danish da 1030
Dutch The Netherlands nl-nl 1043
Dutch - Belgium nl-be 2067
English - Australia en-au 3081
English - Belize en-bz 10249
English - Canada en-ca 4105

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-9
Language String Code
English Carribbean en-cb 9225
English - Ireland en-ie 6153
English - Jamaica en-jm 8201
English - New Zealand en-nz 5129
English Phillippines en-ph 13321
English - South Africa en-za 7177
English - Trinidad en-tt 11273
English - United en-gb 2057
Kingdom
English - United States en-us 1033
Estonian et 1061
Farsi fa 1065
Finnish fi 1035
Faroese fo 1080
French - Canada fr-ca 3084
French - France fr-fr 1036
French - Belgium fr-be 2060
French - Luxembourg fr-lu 5132
French - Switzerland fr-ch 4108
Gaelic Ireland gd-ie 2108
Gaelic - Scotland gd 1084
German - Germany de-de 1031
German - Austria de-at 3079
German - de-li 5127
Liechtenstein
German - Luxembourg de-lu 4103
German - Switzerland de-ch 2055
Greek el 1032
Hebrew he 1037
Hindi hi 1081
Hungarian hu 1038
Icelandic is 1039
Indonesian id 1057
Italian - Italy it-it 1040
Italian - Switzerland it-ch 2064
Japanese ja 1041
Korean ko 1042
Latvian lv 1062
Lithuanian lt 1063
FYRO Macedonian mk 1071

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-10
Language String Code
Malay - Malaysia ms-my 1086
Malay Brunei ms-bn 2110
Maltese mt 1082
Marathi mr 1102
Norwegian - Bokmål no-no 1044
Norwegian Nynorsk no-no 2068
Polish pl 1045
Portuguese - Portugal pt-pt 2070
Portuguese - Brazil pt-br 1046
Raeto-Romance rm 1047
Romanian - Romania ro 1048
Romanian - Moldova ro-mo 2072
Russian ru 1049
Russian - Moldova ru-mo 2073
Sanskrit sa 1103
Serbian - Cyrillic sr-sp 3098
Serbian Latin sr-sp 2074
Setsuana tn 1074
Slovenian sl 1060
Slovak sk 1051
Sorbian sb 1070
Spanish - Spain es-es 1034
Spanish - Argentina es-ar 11274
Spanish - Bolivia es-bo 16394
Spanish - Chile es-cl 13322
Spanish - Colombia es-co 9226
Spanish - Costa Rica es-cr 5130
Spanish - Dominican es-do 7178
Republic
Spanish - Ecuador es-ec 12298
Spanish - Guatemala es-gt 4106
Spanish - Honduras es-hn 18442
Spanish - Mexico es-mx 2058
Spanish - Nicaragua es-ni 19466
Spanish - Panama es-pa 6154
Spanish - Peru es-pe 10250
Spanish - Puerto Rico es-pr 20490
Spanish - Paraguay es-py 15370
Spanish - El Salvador es-sv 17418
Spanish - Uruguay es-uy 14346

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-11
Language String Code
Spanish - Venezuela es-ve 8202
Sutu sx 1072
Swahili sw 1089
Swedish - Sweden sv-se 1053
Swedish - Finland sv-fi 2077
Tamil ta 1097
Tatar tt 1092
Thai th 1054
Turkish tr 1055
Tsonga ts 1073
Ukrainian uk 1058
Urdu ur 1056
Uzbek Cyrillic uz-uz 2115
Uzbek Latin uz-uz 1091
Vietnamese vi 1066
Xhosa xh 1076
Yiddish yi 1085
Zulu zu 1077
Figure 9: WinCC Flexible Language Codes

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-12
14.2.5. Translation of HMI Text
The final step that must be completed is the translation of the HMI text itself. The
HMI text includes all of the text buttons and indicators.
To do this, select Tools (1) -> Export project texts (2) -> as shown in Figure 10
below.

Figure 10: Export of HMI Texts

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-13
Select the Source Language (1) and Target Language (2) and click Export (3).
This will create an Excel file named “ProjectTextExport.xlsx. Open this file and verify
the translation.

Figure 11: Select Source and Target Languages

Once you have finished the translation, re-import the screens by selecting Tools ->
Texts -> Import project texts.
Repeat these steps for each additional language that the application needs to
support.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-14
14.2.6. Final Review of the Translation
When all the text has been translated, review each screen for every language and
make sure that the text fits in the areas that they are designated for. In some cases,
the text may have to be changed or abbreviated to allow it to fit into the area
provided.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-15
14.3. Review

1. How is the HMI application configured for multi-language in TIA Portal?


2. How are languages selected to be included in Runtime?

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 14-16
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 15: Starting Up a Cell


DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM Vehicle Systems-Automation Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
Updated DeviceNet addressing section and
8-26-13 5.0 J. Hocking
graphics.
Synchronized to G16 with Powertrain and
7-9-15 6.0 J. Hocking
EtherNet I/O
9-19-19 7.0 J. Hocking Module was 16. Updated DeviceNet.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
15. Starting Up a Cell................................................................... 15-1
15.1. Objectives:............................................................................................. 15-1
15.2. Cell Validation Requirements .............................................................. 15-2
15.3. Configure and Validate I/O Networks .................................................. 15-2
15.3.1. Create Network Files (DeviceNet only) ......................................... 15-2
15.3.2. Setup DNB .................................................................................... 15-3
15.3.3. Setup Network Devices................................................................. 15-3
15.3.4. Connecting to the DeviceNet Network .......................................... 15-3
15.3.5. Configure Network ........................................................................ 15-3
15.3.6. Debug ........................................................................................... 15-3
15.4. Validate the Safety System (Perimeter Guards, Estops, etc.) ........... 15-3
15.4.1. Perimeter Guards ......................................................................... 15-3
15.4.2. Estops (Emergency Stops) ........................................................... 15-4
15.4.3. Gate Boxes ................................................................................... 15-4
15.4.4. Light Curtains ................................................................................ 15-5
15.5. Using the Scroll List in Manual Mode ................................................. 15-5
15.5.1. Verify Station Sequence Steps ..................................................... 15-5
15.5.2. Manually Initiate Motion ................................................................ 15-5
15.5.3. Verify Group / Ungroup Functionality ............................................ 15-6
15.5.4. Initiate Robot to Pounce and Back ................................................ 15-6
15.5.5. Verify Remote Actions .................................................................. 15-6
15.5.6. Verify Return to Load / Unload ...................................................... 15-6
15.6. Software Checklist ................................................................................ 15-6
15.6.1. Search / Replace TBD Bits ........................................................... 15-6
15.6.2. Motion Action ‘Clears’ ................................................................... 15-6
15.6.3. Mapping Routine Configurations ................................................... 15-6
15.6.4. Interlocks ...................................................................................... 15-6
15.6.5. Exercise 1: Search and Replace ‘TBD’ Bits in Logic. .................... 15-7
15.7. Review ................................................................................................... 15-8

© 2019 General Motors Company. All Rights Reserved


ii
15. Starting Up a Cell
15.1. Objectives:
1. The student will be able to start a cell.
2. The student will be able to validate cell functionality.
3. The student will be able to validate the safety system.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 15-1
15.2. Cell Validation Requirements
The following is a list of items that must be validated when starting up a tooling cell.
1. Ethernet System Configuration
2. Load firmware in all firmware upgradable devices
3. I/O Communications (Standard & Safe)
4. Safety System check – EStop, Perimeter, MPS
5. Robot path segment and Interference zone check.
6. Full Cell Reset (Master On – Gates Reset)
7. Manual Tool Operation from Scroll list on HMI
8. Interlocks to other cells + Transfer System
9. Validate Producer/Consumer
10. Auto Mode
A. Tryout Mode
B. With Parts
11. Interlocks to Upper Level (PMC, Tput, Ascii Echo)
12. Through-put evaluation of cell/system – modify operation for required cycle
time improvements
13. Validate tooling alarms

15.3. Configure and Validate I/O Networks

15.3.1. Create Network Files (DeviceNet only)


Use RSNetworx to scan DeviceNet network devices and configure the DNB scan
list in the DeviceNet scanner.
 The I/O of each device must be properly mapped in the DNB configuration
according to GCCS-1 standards. Device I/O is mapped to scanner I/O image at
DINT [Node number x 2].
 For additional help, reference: Project Module 13.4 Creating a RSNetworks .DNT
Configuration File.

15-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
15.3.2. Setup DNB
The default node address of the DNB is set to 63 from the factory. GCCS-1 now
uses node 0 for all DeviceNet scanner modules (DNB) in Logix racks and node 1 for
all (SDN) scanner modules in CompactLogix systems.

15.3.3. Setup Network Devices


Like the DNB, the node address of new hardware devices is typically set to 63 at the
factory. Set the node address and communication baud rate on all network
hardware devices. Devices typically have a mechanism like a rotary switch or
dipswitch to set the address and the baud rate.

15.3.4. Connecting to the DeviceNet Network


 The workstation or laptop can be readily connected to the cell Ethernet network
for access to the PLC and all interconnected DeviceNet networks.
 Connection method requires configuration of a network driver using RSLinx.
Reference Common Task Module 10.

15.3.5. Configure the Network


Open an existing network backup (*.dnt) file or scan, configure and save a network.
Set the ‘Online Path’ by accessing the Network properties. The ‘Online Path’ will
contain the driver created in the previous section and the DNB number (the slot in
which it resides in the controller chassis). Go online. Once online, the network
configuration stored in the network file can be downloaded to the DNB.

15.3.6. Debug
Validate that all nodes are present on the Ethernet or DeviceNet screens. After all
nodes are properly configured, add them to the scan list and map the nodes.
Complete this same process for each DeviceNet DNB Scanner in the MCP. After
the configuration process is complete, use a diagnostic tool, such as the NetAlert
meter, to validate that the DeviceNet network is functioning properly.

15.4. Validate the Safety System (Perimeter Guards, Estops,


etc.)

15.4.1. Perimeter Guards

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 15-3
The Perimeter Guard can be used for light curtains or safety mats. Regardless of the
sensing device used, two redundant ‘clear’ channels are connected to a safe I/O
module within the enclosure. Confirm the module status indicators for these inputs
change state during Perimeter Guard violation. Confirm the Perimeter Guard Reset
PBLT remains off until the reset PB is pressed.

15.4.2. Estops (Emergency Stops)


Estops appear on runstands, Gateboxes, HMIs, etc. In each case, two sets of NC
contacts from the Estop switch are used to create an Estop PB OK channel A and
channel B. Confirm the change of state of the module status indicators for these
inputs during Estop activation.
Channel A & B inputs are also mapped to the safety input data structure in the
controller as tags ‘XXX.I.NoEStopChA’ and ‘XXX.I.NoEStopChB’. These tags are
used in the Estop instruction in the various safety program routines for each
channel. Confirm that the output of this instruction drops when Estop is pressed and
is reactivated when reset.

15.4.3. Gate Boxes


The Safety Task must be locked with a signature for the MPS system to function
properly. After locking the safety task with a signature, use the Gatebox Functional
Specification from GCCH-1 to check the operation of each gatebox in relation to the
robots and tooling.

15-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
15.4.4. Light Curtains
Light curtain and / or safety mat safety circuits can also be found in station fixture
boxes. Safety Device #1 channel A and B are wired to the same safety module
inputs as discussed earlier. Fixture boxes may offer the option for up to three more
sets of safety devices: Safety Device #2, Safety Device #3, and Safety Device #4.
Confirm the change of state of the module status indicators for these inputs during
light curtain violation.
Inputs are also mapped to the safety data structure using the same basic tag names
- ‘XXX.I.LCYClearCh1’ and ‘XXX.I.LCYClearCh2’: where ‘XXX’ correlates to the
enclosure subscript (e.g. F1 – Fixture Box 1, LE1 – Entrance Light Curtain 1, LX2 –
Exit Light Curtain 2, etc.). ‘Y’ correlates to the safety device number (e.g. Light
Curtain #1, Safety Mat #2, etc.). Like the Perimeter Guard safety devices, these tags
are used in RIN instructions.

15.5. Using the Scroll List in Manual Mode


In the Manual Mode, verify all manual functions using the scroll list.

15.5.1. Verify Station Sequence Steps


Verify the scroll list line items match the sequence steps of each station.

15.5.2. Manually Initiate Motion


Manually move the scroll list cursor to each line and initiate motion with the ‘Do’
pushbutton. Press the ‘Undo’ pushbutton to verify opposite motion action, if
applicable. Enable the ‘Auto Cursor’ function. Verify the scroll list cursor
automatically indexes to the next line item after the current motion completes.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 15-5
15.5.3. Verify Group / Ungroup Functionality
Confirm that any scroll list line items that are ‘grouped’ can be expanded to the
correct number of line items and condensed again. With the group expanded,
manually initiate each line item.
15.5.4. Initiate Robot to Pounce and Back
Manually initiate any scroll list motion actions that send robots to the ‘Pounce’
position. Verify the ‘Undo’ pushbutton will initiate motion to return the robot from
‘Pounce’ to ‘Home’.
15.5.5. Verify Remote Actions
Verify scroll list line items for remote actions that initiate motion in remote cells, if
applicable.
15.5.6. Verify Return to Load / Unload
Confirm the return to load / unload position requests function as expected in each
station.
15.6. Software Checklist

15.6.1. Search / Replace TBD Bits


Search the logic for any remaining ‘TBD’ bits created during the software generation
process and replace with the proper logic.

15.6.2. Motion Action ‘Clears’


Confirm ‘crash’ conditions are addressed where station tooling interacts with other
tooling and / or robot actions. Update the prompting logic to match clear conditions.

15.6.3. Mapping Routine Configurations


Confirm all input and output devices are properly mapped in the appropriate Main
and Safety Task programs.

15.6.4. Interlocks
Confirm the configuration of station-to-station and cell-to-cell interlocks, if applicable.
For cell-to-cell communication, verify that the controller heartbeat is monitored at
each end and that alarm messages are present to announce communication
interruptions.

15-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
15.6.5. Exercise 1: Search and Replace ‘TBD’ Bits in Logic.
Exercise is Optional if time permits.
1. Open ComTask15Exercises program in RSLogix 5000.
2. Open Cross Reference.
3. Verify the following settings:
4. Type = tag
5. Scope = controller has controller icon
6. Show = Show All
7. Name = TBD
8. Select Refresh to update cross reference or click Enter.
9. Double-click any cross reference line to navigate to the TBD bit use in the
logic.
10. Do what the @TODO rung comment tells you to do.
Note: TBD bits will require application-specific logic edits. Some examples are as
follows:
o Add conditions to Action Auto or Clear Rungs
o Add prompts for contacts in the clear rung to the action prompt rung
o Add routines to match your application where placeholders are given
11. Repeat this process until all TBD bits are replaced or removed.
END OF EXERCISE 1

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 15-7
15.7. Review
1. How is a cell started?
2. How is the safety system validated?
3. How is the functionality of the cell validated?

15-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
GCCS-2
Global Common Control Software Design
LMS # 33544
Document Version 7.0

Module 16: Common Modifications


to a Running Cell
DOCUMENT MANAGEMENT INFORMATION

Sponsoring Group:

Manufacturing Engineer: Noel Miller


ME Engineering Group: GM MAAC Vehicle Systems-Automation
Standards
Manufacturing Engineer Phone: 810-602-9768

Template Version 1.0

Document Revisions:
Date Revision By Revision History
8-26-13 5.0 J. Hocking Exercise Files changed
Synchronized to G16 with Powertrain and
7-17-15 6.0 J. Hocking
EtherNet I/O
Module was 17. Updated deletion order for
9-19-19 7.0 J. Hocking
a routine and its calling JSR.

This training is based on the Global Common Software Design Standards, GCCS-1.
Please refer to the GCCS-1 manual found on the “GM intranet” or
www.gmsupplypower.com. The GCCS-1 manual is comprehensive and will have the
latest information. This training manual is used as an instructional guide.
Copyright Information
Copyright General Motors Company, 2019, Detroit, Michigan. All rights reserved under
U.S., International, and Universal Copyright Conventions. Published in the United
States of America. These materials may be used only with related printed materials.
In no event will the General Motors Company be responsible or liable for
incidental or consequential damages resulting from the use or application of the
materials in this manual.
The examples, diagrams, and charts in this manual are included solely for illustrative
purposes. Because of the many variables and requirements associated with any
particular safety situation, the General Motors Company expressly disclaims all
express and implied warranties relating to the materials in this manual, including
all examples, diagrams, and charts.
Reproduction of the contents of this manual, in whole or in part, without written
permission of the General Motors Company, is prohibited.

© 2019 General Motors Company. All Rights Reserved


i
Table of Contents
16. Common Modifications to a Running Cell .................................... 16-1
16.1. Objectives ........................................................................................................ 16-1
16.2. Overview .......................................................................................................... 16-2
16.3. Changing / Updating a Tooling Sequence..................................................... 16-2
16.4. Adding / Removing Tooling Actions .............................................................. 16-3
16.4.1. Adding Tooling Actions............................................................................ 16-4
16.4.1.1. Adding Tags .................................................................................. 16-4
16.4.1.2. Adding Routines ............................................................................ 16-5
16.4.2. Removing Tooling Actions....................................................................... 16-6
16.5. Working with Alias Tags ................................................................................. 16-8
16.5.1. Exercise 1 ............................................................................................... 16-8
16.6. Removing a Station ....................................................................................... 16-30
16.6.1. Exercise 2: Deleting a Station Program (Optional) ................................ 16-30
16.7. Adding a Station ............................................................................................ 16-35
16.7.1. Exercise 3: Adding a New Station (Optional) ........................................ 16-35
16.7.2. Exercise 4: Editing a New Station (Optional)......................................... 16-38
16.7.3. Exercise 5: Adding a New Action Routine (Optional) ............................ 16-61
16.8. Editing an Action Routine ............................................................................ 16-72
16.8.1. Exercise 6: Edits After Adding a New Routine (Optional) ...................... 16-73
16.10. Adding a Gate Box ...................................................................................... 16-92
16.11. Adding / Removing Robot Actions ............................................................ 16-93
16.11.1. Adding and Modifying Tags ................................................................. 16-93
16.11.2. Adding and Modifying Routines........................................................... 16-93
16.11.3. Modifying the S000_Sequence Routine .............................................. 16-95
16.11.4. Modifying the S050_R01WeldRepo Routine ....................................... 16-96
16.11.5. Modifying the S065_OpenClamps1 Routine ..................................... 16-104
16.11.6. Configuring the S067_R01WeldClr Routine ...................................... 16-106
16.11.7. V100_R01Common ........................................................................... 16-112
16.11.8. S010_MainCycle ............................................................................... 16-114
16.11.9. Removing a Robot Action.................................................................. 16-115
16.11.9.1. Record Robot Information ....................................................... 16-115
16.11.9.2. Remove Robot Action Routine ................................................ 16-115
16.11.9.3. Search for Robot Action, Segment, Clear Tags ...................... 16-115
16.12. Adding / Removing Welding Actions ....................................................... 16-116
16.12.1. Adding Welding Action – Case 1 ....................................................... 16-116
16.12.2. Adding Tags ...................................................................................... 16-116
16.12.3. Adding and Modifying Routines......................................................... 16-117
16.12.4. Adding the New Weld Action Routines .............................................. 16-117

© 2019 General Motors Company. All Rights Reserved


ii
16.12.5. Modifying the S000_Sequence Routine ............................................ 16-118
16.12.6. Modifying the S040_1stWeld Routine ............................................... 16-118
16.12.7. Configuring the S047_AdvanceWGSlide Routine ............................. 16-120
16.12.8. Configuring the S048_2ndWeld Routine ........................................... 16-121
16.12.9. Configuring the S049_InitW2WG01 Action Routine .......................... 16-125
16.12.10. Modifying the S050_OpenWGRetract Action Routine ..................... 16-132
16.12.11. Modifying the S063_ReturnWGSlide Action Routine ...................... 16-133
16.12.12. Modifying the W001_WeldCommon Routine................................... 16-133
16.12.13. Modifying the S010_MainCycle Routine.......................................... 16-134
16.13. Adding Weld Action – Case 2 ................................................................... 16-135
16.13.1. Adding the SCR3 Ethernet Module ................................................... 16-135
16.13.2. Mapping the SCR3 I/O ...................................................................... 16-136
16.13.3. Adding Tags ...................................................................................... 16-138
16.13.4. Adding and Modifying Routines......................................................... 16-139
16.13.5. Adding the New Weld Action Routine ............................................... 16-140
16.13.6. Modifying the S000_Sequence Routine ............................................ 16-141
16.13.7. Modifying the S040_1stWeld Rouitne ............................................... 16-142
16.13.8. Configuring the S051_InitWG03 Routine .......................................... 16-144
16.13.9. Modifying the W001_WeldCommon Routine..................................... 16-150
16.14. Adding Weld Action – Case 3 ................................................................... 16-155
16.14.1. Adding SCR EtherNet Module ........................................................... 16-155
16.14.2. Adding Tags ...................................................................................... 16-155
16.14.3. Adding the New Weld Controller Program......................................... 16-156
16.14.4. Adding Weld Controller Program Tags and Routines ........................ 16-156
16.15. Removing a Weld Action .......................................................................... 16-158
16.15.1. Remove the Weld Action Routine ..................................................... 16-158
16.15.2. Search for Weld Action Tags............................................................. 16-158
16.15.3. Remove / Inhibit SCR EtherNet Module ............................................ 16-158
16.16. Adding a Robot.......................................................................................... 16-159
16.16.1. Adding the Robot Ethernet Module ................................................... 16-159
16.16.2. Adding the Robot DeviceNet Safety I/O ............................................ 16-160
16.16.3. Adding the Robot Controller Scope Tags .......................................... 16-161
16.16.4. Modifying the Safety Task ................................................................. 16-162
16.16.5. Adding the Robot Program ................................................................ 16-164
16.16.6. Adding the Robot Program Scope Tags ............................................ 16-164
16.16.7. Adding the Robot Program Routines ................................................. 16-166
16.17. Removing a Robot ..................................................................................... 16-175
16.17.1. Remove Robot Program from Main Task .......................................... 16-175
16.17.2. Deleting the Robot Program .............................................................. 16-176
16.17.3. Removing Robot from I/O Configuration ........................................... 16-176
16.17.4. Modify the Safety Task ...................................................................... 16-176
16.17.5. Deleting Station Components from I/O Configuration ....................... 16-176

Copyright 2019 General Motors Company


iii
16.18. Adding / Removing Interlocks to Other Devices .................................... 16-177
16.18.1. Adding the Ethernet / Controller Modules.......................................... 16-177
16.18.2. Adding the Interlock Tags.................................................................. 16-180
16.18.3. Mapping the Consumed Tag Data .................................................... 16-185
16.18.4. Mapping the Produced Tag Data ...................................................... 16-190
16.19. Removing an Interlock .............................................................................. 16-192
16.19.1. Remove Ethernet / Controller Modules ............................................. 16-192
16.19.2. Remove Produced / Consumed Mapping.......................................... 16-192
16.20. Adding / Removing Styles ........................................................................ 16-193
16.20.1. Adding a Style – Station Program ..................................................... 16-193
16.20.2. Adding a Style – Robot Program ....................................................... 16-194
16.20.3. Removing a Style .............................................................................. 16-195
16.21. Review ........................................................................................................ 16-196

© 2019 General Motors Company. All Rights Reserved


iv
Table of Figures
Figure 1: Typical Close Clamps Auto setup rungs .................................................... 16-2
Figure 2: Revised Close Clamps Auto Setup Rungs ................................................. 16-3
Figure 3: Revised Close Clamps Auto Setup Rungs ................................................. 16-3
Figure 4: New Program Tags Added ......................................................................... 16-4
Figure 5: Revised Program Routine List.................................................................... 16-5
Figure 6: Revised Clamps1, Clamps3 Auto Setup Rungs ......................................... 16-6
Figure 7: Revised S000_Sequence Routine Logic .................................................... 16-7
Figure 8: Revised Program Action Routine List ......................................................... 16-7
Figure 9: Unscheduled Programs Location ............................................................... 16-8
Figure 10: Open the Main Task Properties................................................................ 16-9
Figure 11: The Properties Program / Phase Schedule Tab ..................................... 16-10
Figure 12: Place the Scheduled Programs in Order ................................................ 16-10
Figure 13: Sorting by the Alias For Column.............................................................. 16-11
Figure 14: Selecting Alias Tags for Copy ................................................................ 16-12
Figure 15: Copy Multiple Tags ................................................................................ 16-12
Figure 16: Pasting Program Tags ........................................................................... 16-13
Figure 17: Cell Level Controller Tags Already Exist in This Project ......................... 16-14
Figure 18: Change the Alias For Column ................................................................. 16-15
Figure 19: Red X Indicates that Alias For Tag Does Not Exist ................................ 16-15
Figure 20: Creating HMI to Station Controller Tags ................................................. 16-16
Figure 21: Using Action Routines to Determine what Robots Act in the Station ....... 16-17
Figure 22: Find the Robots that Work in the Station using the Controller Organizer
Window .................................................................................................................... 16-18
Figure 23: Removing Extra Tags .............................................................................. 16-19
Figure 24: Type in the Alias For Controller Tag ....................................................... 16-20
Figure 25: The Alias For does not have a Controller Tag ........................................ 16-20
Figure 26: Creating a Controller Tag ........................................................................ 16-21
Figure 27: Selecting the Data Type .......................................................................... 16-21
Figure 28: Creating the Controller Tag (Base Tag) .................................................. 16-22
Figure 29: Creating Controller Tags for the Alias For Column .................................. 16-23
Figure 30: Determine the JobdataPrev and PrevStopModes ................................... 16-24
Figure 31: Changing the JobdataPrev ..................................................................... 16-24
Figure 32: Adding PrevStopModes for Station KA040 ............................................. 16-25
Figure 33: Delete the Extra PrevStopModes tag ...................................................... 16-26
Figure 34: Update the Alias For Column .................................................................. 16-26
Figure 35: Red Stop Sign with an X in it Shows Controller Tags to Create .............. 16-27
Figure 36: Creating the Station Tag with Mode and Sts Members .......................... 16-28
Figure 37: Change the Alias For ............................................................................. 16-29
Figure 38: Create Controller Tags (Base Tag) ........................................................ 16-29
Figure 39: AA075 Moved to Unscheduled ............................................................... 16-30
Figure 40: AA075 in Controller Organizer ............................................................... 16-32

Copyright 2019 General Motors Company


v
Figure 41: AA075 with Main Assigned..................................................................... 16-33
Figure 42: Program Properties Configuration .......................................................... 16-34
Figure 43: Controller Organizer after Renaming Routines ...................................... 16-37
Figure 44: Deleting Program Tags in AA072 ........................................................... 16-38
Figure 45: Cross Reference a Program Tag ........................................................... 16-40
Figure 46: Program Tags Reflecting Edits Through Step 7 ..................................... 16-41
Figure 47: Cross Reference of LHDockingClampsClose......................................... 16-42
Figure 48: Tag Used in Sequence Routine Call ...................................................... 16-43
Figure 49: Editing the First AA072 Program Tag Alias For...................................... 16-45
Figure 50: Copy a Controller Tag ............................................................................ 16-46
Figure 51: “Alias For” Editing Chart ......................................................................... 16-47
Figure 52: AA072 Program Tags After Edits ........................................................... 16-47
Figure 53: AA072 Program Tags after Creating the “Alias For” Controller Tag ....... 16-49
Figure 54: Expanded View of PMCD Tags in AA072 Program ................................ 16-50
Figure 55: PMCD Locating the UDT to Edit............................................................. 16-51
Figure 56: Controller Organizer Opening User-Defined Data Types ....................... 16-52
Figure 57: Open the uc_PMCObjectType_AA065B1Cell UDT ................................ 16-53
Figure 58: Insert an UDT Member ........................................................................... 16-54
Figure 59: UDT with a New Member Added ............................................................ 16-55
Figure 60: Completed uc_PMCObjectType_AA065B1Cell UDT ............................. 16-56
Figure 61: AA072 PMC Tags Corrected .................................................................. 16-57
Figure 62: Delete Routine Calls That Are Not Used ................................................ 16-58
Figure 63: Delete Action Routine Calls and Group That Are Not Used. .................. 16-59
Figure 64: Selecting a New Routine ........................................................................ 16-61
Figure 65: New Routine Dialog ............................................................................... 16-62
Figure 66: New Routine........................................................................................... 16-63
Figure 67: Reference Routine for Copy ................................................................... 16-64
Figure 68: Logix Display of Selected Rungs ............................................................ 16-65
Figure 69: Logix Display After Paste ....................................................................... 16-66
Figure 70: Delete the Empty Line ............................................................................ 16-67
Figure 71: Creating the Action Tag ......................................................................... 16-68
Figure 72: AA070 Program Tags after Clamp1 Edits .............................................. 16-68
Figure 73: Editing the Main Description for a Tag ................................................... 16-69
Figure 74: Edits to the Sequence Routine ............................................................... 16-70
Figure 75: Edits Finished in the Sequence Routine ................................................ 16-71
Figure 76: Close.Comp Rung .................................................................................. 16-72
Figure 77: Close.Comp Rung Description ............................................................... 16-72
Figure 78: Accessing Search and Replace ............................................................. 16-73
Figure 79: Configuring Search and Replace Options .............................................. 16-74
Figure 80: C09 and C10 Program Tags Created in AA070 ..................................... 16-75
Figure 81: Editing the Main Description for Tags C09 and C10 .............................. 16-75
Figure 82: Closed Switch Internal Rung for Cylinder C09 ....................................... 16-76
Figure 83: Switch Internal Rung for Cylinder C10 ................................................... 16-77

© 2019 General Motors Company. All Rights Reserved


vi
Figure 84: CloseClamp1.Comp Rung...................................................................... 16-78
Figure 85: Clamp1Close.Auto Rung ........................................................................ 16-78
Figure 86: Action Clear Rung .................................................................................. 16-79
Figure 87 Do Not Duplicate Conditions in Action Auto and Clear Rung ................... 16-79
Figure 88: Action Output Power Rung ..................................................................... 16-80
Figure 89: Command and Output Internal Rungs .................................................... 16-80
Figure 90: Close Valve Output Rung ....................................................................... 16-81
Figure 91: Action Close Memory, Fault and SL Not Visible Rungs ......................... 16-82
Figure 92: zDiagInternal Enable Bypass Rung ........................................................ 16-83
Figure 93: Switch Diagnostic Rung Chart................................................................ 16-84
Figure 94: Switch Diagnostic Rung and Bypass Bit Rung for Cylinder C09 ............ 16-85
Figure 95: Switch Diagnostic Bypass Rung Chart ................................................... 16-85
Figure 96: Switch Diagnostic Rung and Bypass Bit Rung for Cylinder C10 ............ 16-86
Figure 97: Action Scroll List Text Rung ................................................................... 16-87
Figure 98: Close Clamps1 Prompting Logic ............................................................ 16-88
Figure 99: Close Clamp1 Output Power Prompting Logic ....................................... 16-89
Figure 100: Unlatch of PB and Prompt Bits ............................................................. 16-89
Figure 101: SL.Found Rung .................................................................................... 16-90
Figure 102: Revised Program Routine List.............................................................. 16-93
Figure 103: Program Tag List – Before and After .................................................... 16-94
Figure 104: New Robot Action JSR Added to S000_Sequence Routine ................. 16-95
Figure 105: Changes to WeldRepo.Comp Rung ..................................................... 16-96
Figure 106: Set WeldRepo.Comp, ProcComp Rung ............................................... 16-97
Figure 107: Reset WeldRepo.Comp / ProcComp, .Auto and ClrSetup Rungs ........ 16-97
Figure 108: WeldRepo.Clr Rung ............................................................................. 16-98
Figure 109: WeldRepo.OutPwr Rung ...................................................................... 16-99
Figure 110: WeldRepo.Cmd, .Out, .Mem and .Flt Rungs ........................................ 16-99
Figure 111: Changes to the Scroll List Text Rung ................................................. 16-100
Figure 112: Prompt Driver Logic ........................................................................... 16-101
Figure 113: Prompt Driver Logic (Cont’d) .............................................................. 16-101
Figure 114: Weld & Repo Not Complete Prompt Text ........................................... 16-102
Figure 115: HwEnable Prompt, Scroll List PB Unlatch and SL Line Found Rungs 16-103
Figure 116: Repo Clamps1.Auto Rung.................................................................. 16-104
Figure 117: Repo Clamps1.Clear Rung ................................................................ 16-104
Figure 118: Robot Not Clear Prompt Rungs.......................................................... 16-105
Figure 119: Robot WeldClr.Comp / .ProcComp Rung ........................................... 16-106
Figure 120: Typical Set/Reset Robot WeldClr.Comp / .ProcComp & Auto Rungs 16-107
Figure 121: WeldClr.ClrSetup / .Clear Rungs ........................................................ 16-107
Figure 122: Typical WeldClr.OutPwr / .Cmd Rungs .............................................. 16-108
Figure 123: Typical WeldClr.Out, .Mem, .Flt Rungs .............................................. 16-109
Figure 124: Robot Action Scroll List Text Rung ..................................................... 16-109
Figure 125: Typical Prompt Driver Logic ............................................................... 16-110
Figure 126: Typical Prompt, Do /Undo and Scroll List Logic Rungs ...................... 16-111

Copyright 2019 General Motors Company


vii
Figure 127: V100_R01Common .ValidSeg and .MotionEnable Rungs ................. 16-112
Figure 128: V100_R01Common .MotionEnable Rung (Cont’d) ............................. 16-113
Figure 129: R01.Clear.1 Rung .............................................................................. 16-113
Figure 130: R01.Decision.0 Rung ......................................................................... 16-114
Figure 131: MainCycle Proc / NoProcComp and Steps / NoStepsComp Rungs ... 16-114
Figure 132: Revised Program Tag List .................................................................. 16-116
Figure 133: Revised Program Routine List............................................................ 16-117
Figure 134: Modifications to the S000_Sequence Routine.................................... 16-118
Figure 135: Modifications to the S000_Sequence Routine (Cont’d) ...................... 16-118
Figure 136: Typical .ToolRdy Rung ....................................................................... 16-119
Figure 137: Typical Prompt Driver Rung ............................................................... 16-120
Figure 138: Weld Gun Slide Advance Auto Setup Rung ....................................... 16-120
Figure 139: Weld2 Complete and Tool Ready Rungs ........................................... 16-122
Figure 140: Weld2 Previous Process Complete and Guns Clear Rungs............... 16-123
Figure 141: Typical Prompting Driver Logic .......................................................... 16-123
Figure 142: Typical Prompting Driver Logic (Cont’d) ............................................. 16-124
Figure 143: Typical 2nd Weld Init.Comp Rung ....................................................... 16-125
Figure 144: Typical 2nd Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs .... 16-126
Figure 145: Typical 2nd Weld Init.Cmd, .Out and .InitWeld Rungs ......................... 16-127
Figure 146: Typical 2nd Weld .SeqDone and Init.Mem Rungs ............................... 16-128
Figure 147: Typical 2nd Weld .Init.FLT, SL.NotVisible and SL Text Rungs ............ 16-129
Figure 148: Typical 2nd Weld Prompt Message and Motion Prompt Rungs .......... 16-130
Figure 149: Typical 2nd Weld Output Power Prompt Driver Rungs ........................ 16-131
Figure 150: Typical 2nd Weld Do / Undo Unlatch and SL Found Rungs ................ 16-131
Figure 151: Typical Weld Gun Retract .Auto, .Clear Rungs .................................. 16-132
Figure 152: Typical Weld Gun Retract Motion Prompt Driver Rungs .................... 16-132
Figure 153: Typical Weld Gun Slide Return .Auto Rung ....................................... 16-133
Figure 154: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic............ 16-133
Figure 155: Typical Proc / NoProcComp and Steps / NoStepsComp Rungs ........ 16-134
Figure 156: SCR3 Ethernet Module Configuration ................................................ 16-135
Figure 157: Typical SCR3 Input Mapping Configuration ....................................... 16-137
Figure 158: Typical SCR3 Output Mapping Configuration..................................... 16-138
Figure 159: Revised Controller Tag List ................................................................ 16-138
Figure 160: Revised Weld Controller Program Tag List ........................................ 16-139
Figure 161: Revised Station Program Tag List ...................................................... 16-139
Figure 162: Revised Station Program Routine List ............................................... 16-140
Figure 163: Modifications to the S000_Sequence Routine.................................... 16-141
Figure 164: Modifications to Weld1.Comp Logic ................................................... 16-142
Figure 165: Modifications to Weld1.NoComp, .ProcComp, .NoProcComp Logic .. 16-142
Figure 166: Modifications to Weld1.GunsClear Logic ........................................... 16-143
Figure 167: Typical Init.Comp / .ProcComp Rungs ............................................... 16-144
Figure 168: Typical Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs ......... 16-145
Figure 169: Typical Weld Init.Cmd, .Out and .InitWeld Rungs .............................. 16-146

© 2019 General Motors Company. All Rights Reserved


viii
Figure 170: Typical Weld .SeqDone, .Mem Latch / Unlatch Rungs ....................... 16-147
Figure 171: Typical Weld Init.FLT, SL.NotVisible and SL Line Rungs ................... 16-148
Figure 172: Typical Weld Do / Undo Prompt Message and Prompt Driver Logic .. 16-149
Figure 173: Typical PB Unlatch and SL.Found Latch Logic .................................. 16-150
Figure 174: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic............ 16-150
Figure 175: Typical SCR .NoControlStops and .ContactorSaver Logic ................. 16-151
Figure 176: Typical SCR .ContactorSaver (Cont’d) and .ResetSteppers Logic..... 16-152
Figure 177: Typical SCR .ResetFaults Rung ......................................................... 16-152
Figure 178: Typical SCR .WeldModeReq and .StaTryout Rungs .......................... 16-153
Figure 179: Typical SCR End of Stepper Summation Weld Gun Open Timer Logic ... 16-
154
Figure 180: Typical SCR EtherNet Module Configuration ..................................... 16-155
Figure 181: Revised Controller Tag List ................................................................ 16-155
Figure 182: Revised Station Program Tag List ...................................................... 16-156
Figure 183: Revised Controller Program List ........................................................ 16-156
Figure 184: New Weld Controller Program Tag List .............................................. 16-157
Figure 185: New Weld Controller Program Routine List ........................................ 16-157
Figure 186: Typical Robot Ethernet Module Configuration .................................... 16-159
Figure 187: Typical Robot DeviceNet Safety I/O Module Configuration ................ 16-160
Figure 188: Non-Safety Controller Tags Added .................................................... 16-161
Figure 189: Safety Controller Tags Added ............................................................ 16-161
Figure 190: Safety Task Program Tag Added ....................................................... 16-162
Figure 191: Safety Task B001_MapInputs Routine Modification ........................... 16-162
Figure 192: Safety Task B002_MapOutputs Routine Modification ........................ 16-162
Figure 193: Safety Task B010_SafetyConfig Routine Modifications ..................... 16-163
Figure 194: Safety Task Robot Routine Modifications........................................... 16-164
Figure 195: Revised Main Task List (Partial) ......................................................... 16-164
Figure 196: Typical Robot Program Tag List ......................................................... 16-165
Figure 197: New Robot Program Routine List ....................................................... 16-166
Figure 198: A000_Main Routine Modifications ...................................................... 16-167
Figure 199: B001_MapInputs Routine Modifications ............................................. 16-168
Figure 200: B001_MapInputs Routine Modifications (Cont’d) ............................... 16-169
Figure 201: B001_MapInputs Routine Modifications (Cont’d) ............................... 16-170
Figure 202: B001_MapInputs Routine Modifications (Cont’d) ............................... 16-171
Figure 203: B002_MapOutputs Routine Modifications .......................................... 16-171
Figure 204: B004_Parameters Routine Modifications ........................................... 16-172
Figure 205: B010_Zones Routine Modifications .................................................... 16-172
Figure 206: X100_PMCRobot Routine Modifications ............................................ 16-173
Figure 207: X100_PMCRobot Routine Modifications ............................................ 16-174
Figure 208: Main Task Properties Dialog .............................................................. 16-175
Figure 209: Typical Controller I/O Configuration ................................................... 16-177
Figure 210: Select Communication Module Dialog ............................................... 16-178
Figure 211: New Module Configuration Dialog ...................................................... 16-179

Copyright 2019 General Motors Company


ix
Figure 212: Revised Controller I/O Configuration .................................................. 16-179
Figure 213: New Module Configuration Dialog ...................................................... 16-180
Figure 214: Produced Interlock Tags .................................................................... 16-181
Figure 215: Tag Properties Dialog ........................................................................ 16-182
Figure 216: Consumed Interlock Tags .................................................................. 16-183
Figure 217: Tag Properties Dialog ........................................................................ 16-184
Figure 218: Typical ‘Consumed’ Tag Mapping – Cell Program, B001_MapInputs
Routine ................................................................................................................... 16-185
Figure 219: Typical Standard ‘Consumed’ Tag Mapping – Station Program,
B001_MapInputs Routine ....................................................................................... 16-186
Figure 220: Typical Standard ‘Consumed’ Tag Mapping – Station Program,
B001_MapInputs Routine (Cont’d) ......................................................................... 16-187
Figure 221: Typical Standard ‘Consumed’ Tag Mapping – Cell Program,
C001_InterlockStatus Routine ................................................................................ 16-187
Figure 222: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics
– Cell Program, C001_InterlockStatus Routine ...................................................... 16-188
Figure 223: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics
– Cell Program, C001_InterlockStatus Routine (Cont’d) ........................................ 16-189
Figure 224: Typical Safety ‘Consumed’ Tag Data used for E-stop Monitoring – Cell
Safety Program, B010_SafetyConfig Routine ........................................................ 16-190
Figure 225: Typical Standard ‘Produced’ Tag Data Mapping – Station Program,
B002_MapOutputs Routine .................................................................................... 16-190
Figure 226: Typical Standard ‘Produced’ Tag Data Mapping – Station Program,
B002_MapOutputs Routine (Cont’d) ...................................................................... 16-191
Figure 227: Typical Safety ‘Produced’ Tag Data Mapping – Cell Safety Program,
B002_MapOutputs Routine .................................................................................... 16-192
Figure 228: Typical Controller I/O Configuration ................................................... 16-192
Figure 229: Typical Station Jobdata.Valid Logic ................................................... 16-193
Figure 230: Typical Station TputWsData.Type Logic ............................................ 16-194
Figure 231: Typical Robot TputRbt.Bits.Type Logic .............................................. 16-195

© 2019 General Motors Company. All Rights Reserved


x
16. Common Modifications to a Running Cell
16.1. Objectives
1. Work with Alias tags
2. Delete a station program
3. Add a new station
4. Edit a new station
5. Add a new action routine
6. Edit an action routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-1
16.2. Overview
Once the cell equipment and PLC have been powered up and checked out, the PLC
logic will undergo almost constant changing and updating to ensure that the equipment
controlled by the system functions as designed.
Up to and sometimes including the start of production, it is critical to maintain good
backups for the ever-changing logic files. These changes typically progress from:
 Simple logic modifications in the beginning to get the tooling to function as
designed.
 Later product changes which may result in tooling sequence revisions.
 Tooling cycle time improvements which can result in more sequence
modifications as the start of production nears.
The intent of this module is to present some common scenarios which result in changes
to the controller logic.

16.3. Changing / Updating a Tooling Sequence


The conditional logic in the Auto setup rung of each sequence step action routine
determines when the step will execute relative to the station’s automatic tooling
sequence.
Modifying a station’s tooling sequence effects how a station operates. Use the Clear
rung if devices must be moved in order to prevent device crashes in Manual and Auto.
The example rungs provided in Figure 1 depict two station sequence steps with the
same conditional logic. Since these steps contain the same logic, they will execute at
the same time.

Figure 1: Typical Close Clamps Auto setup rungs

16-2 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Although Figure 2 shows the same two rungs as Figure 1, Figure 2 illustrates how two
sequence steps that execute simultaneously are separated so that one step is
dependent on the other.
The closing of ‘Clamps1’ will operate as before. The closing of ‘Clamps2’ now depends
on ‘Clamps1’ being closed first, thus altering the station tooling sequence.

Figure 2: Revised Close Clamps Auto Setup Rungs

16.4. Adding / Removing Tooling Actions


Adding or removing tooling actions involves creating and deleting tags and routines.
There will also be modifications to sequence step logic and diagnostic messaging. The
example in this section will build on the one presented in Figure 3.

Figure 3: Revised Close Clamps Auto Setup Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-3
16.4.1. Adding Tooling Actions
Adding a tooling action step involves adding program tags for tooling cylinders (used
for clamps in this example) and, if necessary, additional input block tags (BK) and
pneumatic valve manifold tags (PM). Adding the proper tooling action routine to the
station program will follow.

The way tags and routines are added will depend on whether these changes are
made with the controller project online or offline. If changes are made online, a
project download to the PLC will not be necessary. The downside is that tags and
routines cannot be copied and directly pasted into the program, instead, tags will
have to be created individually. Routines must be created, but the rung logic within
can be copied and directly pasted in. On the other hand, with the project offline, tags
and routines can be directly pasted in. This method offers the added benefit of tag
descriptions carried over with the pasted tag, reducing the amount of operand
description editing. The downside is the processor will require a download to go
back online with the new program changes.

For the example considered here, Clamps1 will consist of cylinders C01, C02 and
C03. Clamps2 consists of C04 and C05. The new sequence step for Clamps3 will
consist of C06 and C07. The three clamp steps will execute sequentially.

16.4.1.1. Adding Tags

Figure 4: New Program Tags Added

Figure 4 shows the tags added to the station program tag list. The BK03 and PM2
tags were added because the new cylinders (C06, C07) will be tied to a new input
block and valve manifold for demonstration purposes.

16-4 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The cylinders could have utilized spare I/O if available on existing input blocks and
pneumatic manifolds. The BK03 and PM2 tags will need to be mapped to the Local
I/O in the station program B001_MapInputs and B002_MapOutputs routines (see
GCCS-1, Module 4 for more details).

Note the data type of the Clamps3 tag. Tooling action tags for cylinders are of type
za_action. See GCCS-1a, Module 2 for more information on UDT definitions and
uses.

16.4.1.2. Adding Routines

Before Adding Routine After Adding Routine

Figure 5: Revised Program Routine List

Figure 5 shows the view of a station’s tooling action routine list before and after a
routine is added for an additional close clamps sequence step. Sequence step
numbering is in increments of five, permitting easier step insertion later. The GeRWD
software generation process assigns the sequence step number when generating.
As shown in Figure 5, the new step is easily inserted between two existing steps without
the need to renumber the entire list of sequence steps.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-5
16.4.2. Removing Tooling Actions
Removing a tooling action is accomplished in a way that is very similar to adding a
tooling action, but in reverse. Consider the previous example in which a third clamp
closed sequence step was added to the two current clamp closed steps. Using this
example, the Clamps2 close step will be removed.

Figure 6: Revised Clamps1, Clamps3 Auto Setup Rungs

The Clamps3Close.Auto rung shown in Figure 6 illustrates the third clamps close
sequence will now execute based on the first clamps close being completed. Note
that the cross-hatched Clamps2Close.Comp is shown here for illustrative purposes
only. The bit is actually deleted in the logic.

16-6 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The next step is to open the S000_Sequence routine and delete the rung containing
the JSR for the action routine deleted (see Figure 7).
Figure 8 shows the view of the program routine list before and after the deletion of
the Clamps2 close routine. Right-clicking on the routine name and selecting ‘Delete’
is all that is necessary to delete the routine.

Figure 7: Revised S000_Sequence Routine Logic

Figure 8: Revised Program Action Routine List

A cross reference on the program tag for the action deleted will indicate where the tag is
still being used throughout the rest of the program. Where ever the tag is still used, it
must be revised. Once all occurrences of the action tag are removed from the program,
the tag can be deleted from the program tag list.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-7
16.5. Working with Alias Tags
The upcoming exercise will demonstrate how many programs are structured Alias tag
wise similarly.
16.5.1. Exercise 1
The exercise is designed to enhance your ability to create Controller Base tags and
Program Alias tags based on the tags in other station programs within the Logix project.
1. Open ComTask16_1.
2. Schedule the program KA040, currently unscheduled.

Figure 9: Unscheduled Programs Location

a. Right click on the MainTask.


b. Select Properties.

16-8 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 10: Open the Main Task Properties

c. Click the Program / Phase Schedule tab.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-9
Figure 11: The Properties Program / Phase Schedule Tab

d. Click Add to Schedule the KA040 program.


e. Click the Move arrows to position the program as desired.

Figure 12: Place the Scheduled Programs in Order

f. Position the KA040 program between the KA030 and KA060 programs.
g. Click OK.
3. Expand the KA060 program tags and sort by the Alias For column.

16-10 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
a. Expand the KA060 program.
b. Double click to open the program tags.
c. Select the Edit Tags tab.
d. Double click the Alias For column heading to sort the tags.

Figure 13: Sorting by the Alias For Column

4. Select the KA060 Alias Tags to copy


a. Click the selection square in front of the first Alias tag to copy.
b. While holding the shift key click the selection square of the last Alias tag to
be copied.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-11
Figure 14: Selecting Alias Tags for Copy

5. Copy the selected tags


a. Right click any selection square within the selected tags
b. Click on Copy – the tags are now on the computer’s clipboard

Figure 15: Copy Multiple Tags

16-12 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6. Open KA040 Program Tags and paste in the copied tags (From KA060, in this
case).
a. Open KA040 Program Tags
b. Select the Edit Tags tab
c. Right click the New Tag Row’s selection square
d. Select Paste from the pop-up menu
Note: When copying and pasting tags always use the selection box in front of the tag or
the New Tag Row. Selecting the name cell for the paste can result in all data copied
into that one cell. You will need to delete the data and try again.

Figure 16: Pasting Program Tags

The tags that are selected in the following figure are tags that are used at the Cell level.
They will not require new Controller Tags as they Controller Tags already exist in this
project.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-13
Figure 17: Cell Level Controller Tags Already Exist in This Project

7. Change the Alias For column for the From1stHMI and the From2ndHMI.
a. Change Alias For From1stHMI to KA030HMI1toKA040
b. Create the Controller Tag
c. Change Alias For From2ndHMI to KA030HMI2toKA040
d. Create the Controller Tag

16-14 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 18: Change the Alias For Column

A red stop sign with an X in it appears in the select square of all tags that have an Alias
For column entry that does not have a matching tag in the project.

Figure 19: Red X Indicates that Alias For Tag Does Not Exist

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-15
8. Create the Controller Tags for KA030HMI1toKA040 and KA030HMI2toKA040
a. Copy an existing Controller tag and rename it, KA030HMI1toKA060 for
example.
-OR-
b. Create the tag using the zc_HMIToSta Data Type.

Figure 20: Creating HMI to Station Controller Tags

9. Determine which robots perform actions in the station, you can determine the
names of the robots that work in a station in two ways.
a. The first method is identifying the robot Action tags, remember each
Action routine has an Action Program Tag that represents the action.
b. In the KA040 program tags there are action tags for three different robots:
 KA050R01
 KA050R02
 KN020R04
c. In this case the KN020R04 is part of a remote cell that is dropping its part
into the KA040 station.

16-16 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 21: Using Action Routines to Determine what Robots Act in the Station

10. The second method for determining the robots that work in the station involves
looking at the Controller Organizer Window
a. In the KA040 program there are action routines for three different robots:
 KA050R01
 KA050R02
 KN020R04
b. KN020R04 is part of a remote cell that drops its part into the KA040
station.
See Figure 22.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-17
Figure 22: Find the Robots that Work in the Station using the Controller Organizer Window

11. Create station to robot tags for the 3 robots in the station.
Note: KA060, the station that we copied our tags from, had 5 robots working in the
station.

16-18 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
12. KA040 only has 3 robots working in the station. In KA040 Program Tags delete
the tags ToKA060R02 and ToKA060R05.

Figure 23: Removing Extra Tags

13. The first tag to create is the ToKA050R01 which is an Alias For
KA40ToKA050R01.
a. This tag existed in the KA060 program tags that we copied. We need to
create the controller tag now.
b. In the Alias For column for the ToKA050R01 tag type the name
KA040ToKA050R01, click enter or click another cell to accept.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-19
Figure 24: Type in the Alias For Controller Tag

The red stop sign with an X in it indicates that the Alias For tag does not exist

Figure 25: The Alias For does not have a Controller Tag

14. Open the Controller Tags and create the tag KA040ToKA050R01.
a. Type the tag name KA040ToKA050R01
b. Click in the Data Type cell.

16-20 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 26: Creating a Controller Tag

15. Using the popup menu select the zc_StaToRbt Data Type. Use the following
methods to select the Data Type:
a. You can begin typing the Data Type, the dialog will navigate toward the
name typed.
b. You can scroll to locate your Data Type.
c. You can also type the Data Type directly in the cell.
Alternatively, you can copy and paste any of the station to robot tags so long as they
use the same Data Type.
Important: Do Not Forget to EDIT your copied tag!

Figure 27: Selecting the Data Type

16. The completed Tag and its Controller Base Tag are shown here.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-21
Note: The “(C)” in the Alias For column indicates that the chosen Base Tag is a
Controller Tag.

Figure 28: Creating the Controller Tag (Base Tag)

17. Use the following table to replace the ToKA030R01 and ToKA060R01 tags:

Tag Name Alias For (Controller Tag) Data Type

ToKA050R02 KA040ToKA050R02 zc_StaToRbt


ToKN020R04 KA040ToKN020R04 zc_StaToRbt

18. Create Controller tags for the Alias For tag name.

16-22 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 29: Creating Controller Tags for the Alias For Column

When working with a GM station the sequence routines begin with an S in the prefix
followed by the three digits to organize the routine order in the Controller Organizer
Window. The first routine is the S000_Sequence. In this case it is followed by the
S010_MainCycle. The next routine is the S020_KN020R04. This routine and the
KN020R04 robot supply the part for the KA040 station.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-23
Figure 30: Determine the JobdataPrev and PrevStopModes

JobdataPrev is the Alias For the item that loads the part into the current station.
In this case the robot KN020R04 is the only source of a part for the KA040 station.
19. Replace the JobdataPrev Alias For with KN020R04JobData.
20. Create the controller tag for KN020R04JobData.

Figure 31: Changing the JobdataPrev

21. Add the PrevStopModes for station KA040


a. Replace Prev1StopModes with PrevStopModes since there is only one
robot that loads KA040.
b. Replace the KA030R01StopModes with KN020R04StopModes.
c. Create the controller tag for KN020R04StopModes.

16-24 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 32: Adding PrevStopModes for Station KA040

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-25
22. Delete the entire tag Prev2StopModes, it is not needed for KA040 station.

Figure 33: Delete the Extra PrevStopModes tag

Now consider the JobdataNext and the NextStopModes. The robot or device that takes
the part out of KA040 and places it in the KA060 station, in this case KA050R01, will be
the JobdataNext and NextStopModes.
23. Replace the Alias For with following:
 Jobdata = KA040JobData
 JobdataNext = KA050R01JobData
 NextStopModes = KA050R01StopModes
 StopModes = KA040StopModes
Create these controller tags.

Figure 34: Update the Alias For Column

After typing the tag in the Alias For column if the tag is not proceeded by the X then it
exists in the project.
24. Continue with creating the missing controller tags.

16-26 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 35: Red Stop Sign with an X in it Shows Controller Tags to Create

The Mode and the Sts tags are actually both an Alias For the same tag, a station tag, in
this case KA040.
The tags are an Alias for:
 Mode = KA040.Mode
 Sts = KA040.Sts.
25. Replace the KA060 with KA040 for these two tags
26. Create the KA040 Controller tag, it uses the zc_Station Data Type.
Note: Copy any station controller tag and rename it to the station KA040 tag or create a
new tag with the zc_Station Data Type.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-27
Figure 36: Creating the Station Tag with Mode and Sts Members

27. Replace the KA060 with KA040 for these five tags in the KA040 Program Tags:

Tag Name Alias For (Controller Tag) Data Type

HMI KA040HMI zc_StaHMI


To1stHMI KA040ToHMI1 zc_StaToHMI
To2ndHMI KA040ToHMI2 zc_StaToHMI
TPutWSArray KA040TPut zc_TPutWsDINTData
TPutToHMI KA040TputHMI zc_TputHMI

16-28 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 37: Change the Alias For

28. Create the Controller tags.

Figure 38: Create Controller Tags (Base Tag)

End of Exercise 1

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-29
16.6. Removing a Station
A variety of tasks must be completed in order to delete a program, for example, a
station, cell, or robot. Exercise 6 will guide you through the minimum required tasks to
delete a station program.

16.6.1. Exercise 2: Deleting a Station Program (Optional)


1. Open ComTask16Exercise2.
2. Access the MainTask Properties, Program Schedule tab.
3. Select AA075 in the Scheduled list.
4. Click the Remove button. This moves the program to the Unscheduled
category as shown in Figure 39.
5. Click Ok, or Apply to accept the change.

Figure 39: AA075 Moved to Unscheduled

16-30 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6. Locate the program in the controller organizer. It should be listed under
Unscheduled Programs. Refer to Figure 40.
7. Expand the tree for Station AA075.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-31
Figure 40: AA075 in Controller Organizer

16-32 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
8. Notice the little “1” on the A000_Main routine. This indicates that
A000_Main is assigned to the program, as the main, and must be
unassigned. See Figure 41.

Figure 41: AA075 with Main Assigned

9. Right-click the program name, AA075.


10. Select “Program Properties”, and “Configuration Tab.”

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-33
11. Select from the pull down <none> for the “Main” under the “Assigned
Routines”. Refer to Figure 42.

11

Figure 42: Program Properties Configuration

12. Open the Program Tags for AA075, and enter the edit mode.
13. Delete all program tags for program AA075.
A. Select the selection button in front of the first row in the program tags.
B. Move to the last row.
C. Press and hold the Shift Key and select the selection button. All rows
should highlight.
D. Press Delete on the keyboard.
14. Now delete all routines.
A. Select the first routine, A000_Main.
B. Press the Delete key from the keyboard, click Yes.
C. Hold the Shift key, from the keyboard, while pressing the Delete key.
This will eliminate the “Delete the routine…” warning. Repeat until all
AA075 routines are deleted.
15. Delete the program AA075 from the Unscheduled folder.
16. Verify the I/O configuration to confirm that there are no DeviceNet Safety I/O
nodes for AA 075 station equipment (i.e. Fixture Boxes, Run Stands, etc.).
Note: Controller tags that reference the deleted program should be deleted.

END OF EXERCISE 2

16-34 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.7. Adding a Station
Adding a station to a running cell will involve many modifications to the PLC project.
These modifications may include revising the controller’s I/O Configuration and the
Safety Task. The controller tag list will be updated to accommodate the new station
program. Finally, the new station program will be constructed using program tags and
routines copied from other references and editing them to suit the application.
For this example, a main line station to pick up additional weld spots will be added. The
station will contain four carried weld gun robots and will have its part transfer in and out
on a skid.
16.7.1. Exercise 3: Adding a New Station (Optional)
In this exercise, a new station, AA072, is to be created between stations AA070 and
AA075. AA072 will be a four robot welding station. Additional station edits will be
applied in ComTask16Exercise4.
1. Open ComTask16Exercise3.
2. Copy station program AA070.
A. Right-click the AA070 Program.
B. Select Copy.
C. Select MainTask.
D. Right-click and choose Paste.
3. Rename AA0701 to AA072.
Note: RS Logix 5000 / Studio 5000 will always add a “1” to the end of any tag, UDT,
routine or program, that causes a collision, already exists in project.
A. Right-click AA0701 and select Properties.
B. Rename AA0701 to AA072 (located in “Name:” box on the General tab).
C. Click OK.
4. Move AA072 into position between AA070 and AA075.
A. Right-click MainTask.
B. Select Properties.
C. Select Program Schedule.
D. Locate the AA072 program in the Program Schedule (it will be last in the
list).
E. Select the AA072 program.
F. Move the AA072 program between AA070 and AA075 using the Up/Down
arrow buttons.
G. Click OK to accept your changes.
H. Verify that program AA072 now appears between AA070 and AA075.
It is necessary to modify some routines in the new AA072 program that was just
created. The AA072 station is a weld re-spot station. Therefore, there are no parts
being introduced into this station. Robots AA070R01 and AA070R02 (material
handlers) will not be used in the AA072 station being created.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-35
5. Delete the following routines in the AA072 program:
A. Right-click the routine S060_AA070R01Drop and choose Delete. Use
the same procedure to delete the following routines:
B. S065_AA070R02Drop
C. S070_CloseLHDockingClamps
D. S075_CloseRHDockingClamps
E. S135_AA070R01Repo
F. S140_AA070R02Repo
G. S145_OpenLHDockingClamps
H. S150_OpenRHDockingClamps
I. S160_AA070R01PrtChkClr
J. S165_AA070R02PrtChkClr
K. V100_AA070R01Common
L. V100_AA070R02Common
Routines containing robot names must be renamed to match the new station.
6. Right-click the S035_AA070R03Init routine and select Properties. In the
Name: field, enter S035_AA072R03Init. Use the same procedure to
rename the following routines:
A. S040_AA070R04Init to S040_AA072R04Init
B. S045_AA070R05Init to S045_AA072R05Init
C. S050_AA070R06Init to S050_AA072R06Init
D. S085_AA070R03Weld to S085_AA072R03Weld
E. S090_AA070R04Weld to S090_AA072R04Weld
F. S095_AA070R03Repo to S095_AA072R03Repo
G. S100_AA070R04Repo to S100_AA072R04Repo
H. S105_AA070R05Repo to S105_AA072R05Repo
I. S110_AA070R06Repo to S110_AA072R06Repo
J. S115_AA070R03WeldClr to S115_AA072R03WeldClr
K. S120_AA070R04WeldClr to S120_AA072R04WeldClr
L. S125_AA070R05WeldClr to S125_AA072R05WeldClr
M. S130_AA070R06WeldClr to S130_AA072R06WeldClr
N. V100_AA070R03Common to V100_AA072R03Common
O. V100_AA070R04Common to V100_AA072R04Common
P. V100_AA070R05Common to V100_AA072R05Common
Q. V100_AA070R06Common to V100_AA072R06Common

16-36 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7. Verify your program AA072 routines with Figure 43.

Figure 43: Controller Organizer after Renaming Routines

END OF EXERCISE 3

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-37
16.7.2. Exercise 4: Editing a New Station (Optional)
Now that the program has been created and the routines are renamed for the new
AA072 station, some edits must be made to complete the transformation of the new
station. We will begin by editing some program tags.
1. Open ComTask16Exercise4
2. Click the + sign next to the AA072 program. This will expand the tree view
of the program.
3. Double-click the Program Tags located under the AA072 program name.
4. Select the Edit Tags tab on the bottom of the tag editor window.
5. Delete the following AA070R01 and AA070R02 za_Action tags:
A. AA070R01Drop
B. AA070R01PrtChkClr
C. AA070R01Repo
D. AA070R02Drop
E. AA070R02PrtChkClr
F. AA070R02Repo

Figure 44: Deleting Program Tags in AA072

16-38 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
6. In the AA072 Program Tags, rename the following robot za_Action tags:
A. Click the cell, in the Name column, containing AA070R03Init to enter the
tag edit mode. Rename the tag to AA072R03Init. Use the same
procedure to rename the following tags:
B. AA070R03Ret to AA072R03Ret
C. AA070R03Repo to AA072R03Repo
D. AA070R03Weld to AA072R03Weld
E. AA070R03WeldClr to AA072R03WeldClr
F. AA070R04Init to AA072R04Init
G. AA070R04Ret to AA072R04Ret
H. AA070R04Repo to AA072R04Repo
I. AA070R04Weld to AA072R04Weld
J. AA070R04WeldClr to AA072R04WeldClr
K. AA070R05Init to AA072R05Init
L. AA070R05Ret to AA072R05Ret
M. AA070R05Repo to AA072R05Repo
N. AA070R05WeldClr to AA072R05WeldClr
O. AA070R06Init to AA072R06Init
P. AA070R06Ret to AA072R06Ret
Q. AA070R06Repo to AA072R06Repo
R. AA070R06WeldClr to AA072R06WeldClr

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-39
In Exercise 3, several action routines were deleted to create the AA072 program.
Some of these actions or S routines contained cylinders that were moved as a result
of the action. It is necessary to delete the zp_Cylinder tags from the removed action
routines.

Figure 45: Cross Reference a Program Tag

16-40 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7. Use Cross Reference for Cylinders C01 – C08. Determine tags that are
unused and delete them:
A. Right-click the square button in front of the tag name that you wish to
cross reference.
B. Select Go to Cross Reference.
C. Observe the cross reference results.
If the tag is used, check the next tag.
If the tag is not used, delete it.
D. Continue Cross Referencing and deleting through all Cylinders.
Note: Four cylinders will be deleted.
Figure 46 represents the AA072 program tags edited through to Step 7.

Figure 46: Program Tags Reflecting Edits Through Step 7

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-41
Many routines that contained part present logic were deleted in Exercise 3. It is
necessary to check for unused part tags and delete them as necessary.
8. Cross reference the following tags. Delete them if they are not used:
A. HingePillarLH
B. HingePillarRH

When cross referencing za_Action tags some may appear to be used. Navigating to
the uses in the logic will reveal that the use is in the S000_Sequence routine and is
in a call rung for a routine that was deleted in earlier edits.

9. Cross reference the following tags:


A. LHDockingClampsClose
B. LHDockingClampsOpen
C. RHDockingClampsClose
D. RHDockingClampsOpen

Figure 47: Cross Reference of LHDockingClampsClose

16-42 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
10. Double-click all occurrences for each tag cross reference. This will navigate
to each use of the tag.

Tag Use
(Cross
reference)

Figure 48: Tag Used in Sequence Routine Call

11. Observe that the occurrences of the tag usage are in the S000_Sequence
routine and that they are used in the sequence calls for the routines that
were deleted.
12. After similar verification for the remaining tags, delete the following tags from
the AA072 program tags:
A. LHDockingClampsClose
B. LHDockingClampsOpen
C. RHDockingClampsClose
D. RHDockingClampsOpen
The unused sequence calls in the S000_Sequence will be deleted at a later time.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-43
13. Cross reference the tags listed below. In this case, these tags are used and
should not be deleted.
A. PinClampsClose
B. PinClampsOpen
14. Double-click the column heading for the “Alias For” column. This will sort
the tag listing in the order of the “Alias For” Column.
Many of the tags that have an “Alias For” must have it re-pointed. RS Logix will
indicate an error with a big X in front of a tag that does not have a correct alias. We
can take advantage of this to rename our “Alias For” and then later create missing
controller tags.
15. Observe that some “Alias For” entries are controller tags that reference cell
level tags. These tags will not require an update. Do not update the
following tags Alias For:
A. A1: Alias For: AA065A1(C)
B. Cell: Alias For: AA065B1Cell(C)
C. D1: Alias For: AA065B1CellD1(C)
D. FromHMI1JobData: Alias For: AA065B1HMI1JobData(C)
16. Delete the following AA072 program tags:
A. ToAA070R01
B. ToAA070R02
17. Update the “Alias For” column for the tag From1stHMI
A. Click in the “Alias For” column and edit: AA065B1HMI1toAA070 to
AA065B1HMI1toAA072

16-44 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 49: Editing the First AA072 Program Tag Alias For

B. Observe that the (C) that follows the tag name in the “Alias For” column
will disappear after the edit is complete and that there is a big X in front of
the tag. This is because a controller tag must be created. To do this:
C. Open the Controller tag editor.
D. Select the square button in front of the row that contains the controller tag
AA065B1HMI1toAA070.
E. Copy the entire row. This ensures that the datatype will be copied.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-45
Figure 50: Copy a Controller Tag

F. Select the new tag button to highlight the last row in the tag editor.
G. Paste the tag AA065B1HMI1toAA070, RSLogix will add a 1 at the end of
the tag. AA065B1HMI1toAA0701
H. Rename the tag:
AA065B1HMI1toAA0701 to AA065B1HMI1toAA072
I. Open the AA072 Program Tags.
J. Confirm that the tag From1stHMI has the “Alias For” equal to
AA065B1HMI1toAA072(C). Also notice the X is gone from the tag button.
18. Edit the “Alias For” column for the following tags:
Note: You may edit the Alias For the Program tags first and then create the
controller tags or complete one tag at a time as shown above. The table that follows
contains the remaining tag and “Alias For” edits required for the AA072 station.

16-46 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Existing Tag Name New Tag Name Existing Alias For New Alias For
FromPrev FromPrev AA065ToAA070(C) AA070ToAA072
ToNext ToNext AA070ToAA075(C) AA072ToAA075
Mode Mode AA070.Mode(C) AA072.Mode
Sts Sts AA070.Sts(C) AA072.Sts
HMI HMI AA070HMI(C) AA072HMI
Jobdata Jobdata AA070JobData(C) AA072JobData
ToPrev ToPrev AA070ToAA065(C) AA072ToAA070
To1stHMI To1stHMI AA070toAA065B1HMI1(C) AA072toAA065B1HMI1
ToAA070R03 ToAA072R03 AA070toAA070R03(C) AA072toAA072R03
ToAA070R04 ToAA072R04 AA070toAA070R04(C) AA072toAA072R04
ToAA070R05 ToAA072R05 AA070toAA070R05(C) AA072toAA072R05
ToAA070R06 ToAA072R06 AA070toAA070R06(C) AA072toAA072R06
FromNext FromNext AA075ToAA070(C) AA075ToAA072
Figure 51: “Alias For” Editing Chart
19. Verify the edits to AA072 program tags as shown in Figure 52.

Figure 52: AA072 Program Tags After Edits

At this point there are several tags that do not have a controller tag to “Alias For.”

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-47
20. Open the Controller Tag editor.
21. Create the following controller tags:
Tag Name Alias For (controller tags) Data Type
FromPrev AA070ToAA072 zc_SKInterlockToNext
ToNext AA072ToAA075 zc_SKInterlockToNext
Mode AA072.Mode zz_StaMode*
Sts AA072.Sts zz_StaStatus*
HMI AA072HMI zc_StaHMI
Jobdata AA072JobData zc_JobData
ToPrev AA072ToAA070 zc_SKInterlockToPrev
To1stHMI AA072toAA065B1HMI1 zc_StaToHMI
FromNext AA075ToAA072 zc_SKInterlockToPrev
*Note: zz_StaMode and zz_StaStatus are members (nested UDTs) the UDT zc_Station.

A. Copy the tag AA070 in the controller tags and rename it to AA072.
B. Copy the tag AA065ToAA070 in the controller tags and rename it to
AA070ToAA072.
C. Copy the tag AA070ToAA075 in the controller tags and rename it to
AA072ToAA075.
D. Copy the tag AA070HMI in the controller tags and rename it to
AA072HMI.
E. Copy the tag AA070JobData in the controller tags and rename it to
AA072JobData.
F. Copy the tag AA070ToAA065 in the controller tags and rename it to
AA072ToAA070.
G. Copy the tag AA070ToAA065B1HMI1 in the controller tags and rename it
to AA072ToAA065B1HMI1.
H. Copy the tag AA075ToAA070 in the controller tags and rename it to
AA075ToAA072.

16-48 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
I. Open the AA072 Program tags. Verify there are no tags with the large X
in front of them. Figure 53 shows how AA072 Program Tags should look
after creating the “Alias For” controller tags.

Figure 53: AA072 Program Tags after Creating the “Alias For” Controller Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-49
To update the “Alias For” for the PMCDSta and PMCDDFTSta tags it will be necessary
to update a UDT to accommodate the new AA072 station being added.
22. Open the AA072 Program tags.
23. Left-click the + in front of the PMCD tags to expand the view of the tags as
shown in Figure 54.

Figure 54: Expanded View of PMCD Tags in AA072 Program

24. Click the pull down arrow and examine the main tag. The
PMCD.AA065B1Cell tag uses the uc_PMCObjectType_AA065B1Cell UDT.
See Figure 55.

16-50 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 55: PMCD Locating the UDT to Edit

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-51
25. Open the User Defined folder under Data Types. See Figure 56.

Figure 56: Controller Organizer Opening User-Defined Data Types

16-52 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
26. As shown in Figure 57, the Data Type Size (1) will indicate “???” when there
is a problem with one the data type (UDT) used by one or more members
(2), usually the UDT for a member is missing from the project. Any UDT
used by a member must exist in the Data Types\User-Defined folder (3).

Figure 57: Open the uc_PMCObjectType_AA065B1Cell UDT

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-53
27. Right-click the square button preceding the AA070 member.
28. Select Insert Member. See Figure 58.

Figure 58: Insert an UDT Member

16-54 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
1. Copy the AA070 member into the newly inserted row. See Figure 59.

Figure 59: UDT with a New Member Added

2. Rename the Member Name and Description to AA072 for the new station.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-55
3. Verify that your UDT looks like Figure 60.
4. Click Apply or OK to save the updated UDT.

Figure 60: Completed uc_PMCObjectType_AA065B1Cell UDT

16-56 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
5. Open the AA072 Program tags.
6. Edit the “Alias For” column for station AA072 for the following tags, see
Figure 61:
A. PMCDSta
B. PMCDDFTSta

Figure 61: AA072 PMC Tags Corrected

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-57
The steps taken to this point have left errors that point to routines that do not exist in the
new AA072 program. Now some corrections in the A000_Main and S000_Sequence
must be made.
7. Delete the following calls to sub routines in the A000_Main of program
AA072:
A. V100_AA070R01Common
B. V100_AA070R02Common

Delete

Figure 62: Delete Routine Calls That Are Not Used

These routines are not used in the AA072 but were in the reference program AA070.
8. Delete the following calls (the entire rung of logic) to sub routines in the
S000_Sequence of program AA072:
A. zZ111_StartGroup (1st Input Par = 31). The robot actions that are
contained in this group are not in the AA072 program.
B. S060_AA070R01Drop
C. S065_AA070R02Drop

16-58 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
D. zZ112_EndGroup (31)
See Figure 63.

Delete

Figure 63: Delete Action Routine Calls and Group That Are Not Used.

The docking clamps are not necessary since no part is loaded into re-spot station
AA072.
9. Delete the following calls (the entire rung of logic) to sub routines in the
S000_Sequence of program AA072:
A. zZ111_StartGroup (1st Input Par = 32). The Docking Clamp actions that
are contained in this group are not in the AA072 program.
B. S070_CloseLHDockingClamps

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-59
C. S075_CloseRHDockingClamps
D. zZ112_EndGroup (32).
10. Delete the call to the S080_HingePillarPartPresentDwell sub routine (The
entire rung of logic) in the S000_Sequence of program AA072:
11. Delete the following calls (the entire rung of logic) to sub routines in the
S000_Sequence of program AA072:
A. zZ111_StartGroup (1st Input Par = 36). The robot actions that are
contained in this group are not in the AA072 program.
B. S135_AA070R01Repo
C. S140_AA070R02Repo
D. zZ112_EndGroup (36)
12. Delete the following calls (the entire rung of logic) to sub routines in the
S000_Sequence of program AA072:
A. zZ111_StartGroup (1st Input Par = 37). The Docking Clamp actions that
are contained in this group are not in the AA072 program.
B. S145_OpenLHDockingClamps
C. S150_OpenRHDockingClamps
D. zZ112_EndGroup (37)
13. Delete the following calls (the entire rung of logic) to sub routines in the
S000_Sequence of program AA072:
A. zZ111_StartGroup (1st Input Par = 38). The robot actions that are
contained in this group are not in the AA072 program.
B. S160_AA070R01PrtChkClr
C. S165_AA070R02 PrtChkClr
D. zZ112_EndGroup (38)
14. Edit the Message Offset to 5000
A. Open B005_Parameters in the AA072 program.
B. Update the Move Source in the Program Message Offset rung to 5000.
15. Update the Program Name (using ASCII codes)
A. Use the ASCII converter or look up the proper codes.
B. Open B005_Parameters in the AA072 program and edit the program
name as necessary.
16. Verify and save project.

END OF EXERCISE 4

16-60 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.7.3. Exercise 5: Adding a New Action Routine (Optional)
17. Open ComTask16Exercise5
18. Right-click on the AA070 program in the logix organizer.
19. Click New Routine.

3
2

Figure 64: Selecting a New Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-61
4

5
7

Figure 65: New Routine Dialog

20. Type the new routine name; S057_CloseClamp1.


21. Type the description for the new routine; Routine to Close 1st Clamps.
22. Verify the routine will be created in the desired program, AA070
23. Click OK.

16-62 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
24. Verify the new routine, S057_CloseClamp1, is displayed where desired in
the controller organizer, between S055 & S060 for this project.
25. Verify the new routine ladder is empty.
26. Open the S055_ClosePinClamps routine in station AA070

10

Figure 66: New Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-63
Figure 67: Reference Routine for Copy

Note: Using a routine from the current project will eliminate some work because some
conditioning will already be completed. If a suitable routine does not exist in the project,
then utilize a comparable routine from the unscheduled programs in the GCCS-2
RSLogix 5000 reference project. The GCCS-2 RSLogix 5000 reference project contains
the standard reference routines for all tooling action sequence steps.

27. Type Control + A on the keyboard to select all rungs. Rungs selected will
have a green box (dashed here for clarity) around the rung number as in
Figure 68.
28. Type Control + C on the keyboard to copy all rungs.

16-64 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 68: Logix Display of Selected Rungs

29. Open S057_CloseClamp1.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-65
30. Right-click the end line and choose paste. The routine window should
appear with the last rung pasted as shown in Figure 69.

Figure 69: Logix Display After Paste

16-66 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
15

Figure 70: Delete the Empty Line

31. Right Click in front of the empty rung


32. Choose Delete. (Empty rungs are not allowed in RSLogix.)
33. Open the AA070 Program Tags.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-67
34. Copy the Tags PinClampsClose and PinClampsOpen to the clipboard.
A. Select gray box to copy all information.
35. Paste the Close and Open PinClamp tags; RSLogix will change to
PinClampsClose1 and PinClampsOpen1 to avoid a name collision.
A. Select the tag box to ensure data type and other info paste properly.

Copy the tag PinClamps


18

19 Paste the tags.

Figure 71: Creating the Action Tag

36. Rename PinClampsClose1 to Clamp1Close and PinClampsOpen1 to


Clamp1Open, see Figure 72.

Figure 72: AA070 Program Tags after Clamp1 Edits

37. Edit the main description for Clamp1Close and Clamp1Open. This is a nice
new feature known as the pass – through comment from the UDT structure.
See Figure 73.

16-68 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 73: Editing the Main Description for a Tag

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-69
24

25

Figure 74: Edits to the Sequence Routine

38. Open the S000_Sequence Routine.


39. Copy the S055_ClosePinClamps rung.
40. Paste the rung; this will become the CloseClamps1 rung.
41. Select, from pull-down, the S057_CloseClamps1 routine.

16-70 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
42. Select Input and Return Parameters:
A. First Input Par = Clamp1Close (Where the unit moves to when Do is
pressed.)
B. Second Input = Clamp1Open (Where the unit moves to when Undo is
pressed.)
C. Return Parameters = Copy in exact order the input parameters.
D. When the edits are finished, they should appear similar to Figure 75.

Figure 75: Edits Finished in the Sequence Routine

END OF EXERCISE 5

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-71
16.8. Editing an Action Routine
Regardless of the methods used to create the new action routine, the logic will require
the same changes. The first is to perform a “Search and Replace” on the action tags. A
search and replace can be performed, for example, on all text in the routine that
matches ‘PinClamps’ and replace with ‘Clamp1’, or whatever is the desired tag name.
This action completes a large portion the necessary edits but the logic now requires a
rung-by-rung analysis to ensure proper configuration. “Search and Replace” is
available only during offline edits. Ensure that the Search and Replace Find Within
scope is set to affect the desired routines with the replace function.

Figure 76: Close.Comp Rung

Item Description
1 Rung copied from an existing routine within the program.
2 Source rung from GCCS-1 reference project.
3 Finished rung after edits to form Clamp3Close.comp.
Figure 77: Close.Comp Rung Description

The Close.Comp rungs shown in


Figure 76 represent (1) the source rung copied from an existing step in the program, (2)
the source rung from the GCCS-1 reference project and (3) the rung as it appears in the
new sequence step routine following edits for Clamps3.

16-72 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.8.1. Exercise 6: Edits After Adding a New Routine (Optional)
1. Open ComTask16Exercise6.
2. Open S057_CloseClamp1, in the AA070 station.
3. Use Search and Replace to change PinClamps to Clamp1.
A. Select Search menu from tool bar. See Figure 78.
B. Click Replace.

Figure 78: Accessing Search and Replace

See Figure 79.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-73
IMPORTANT: Be sure to select Find Where search scope as needed, in this case,
use ‘Current Routine’ setting.
 Enter the Find What = PinClamps (what you are searching for).
 Enter the Replace With = Clamp1, what you want to change to.
 The Find Within button allows defining where to find the search string. All
categories selected is fine for this search.
C. Click Replace ALL.

Figure 79: Configuring Search and Replace Options

16-74 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
4. Open the program tags for station AA070.
5. Add C09 & C10 tags.
6. Copy an existing cylinder tag.
7. Rename the copied tag (datatype should be zp_Cylinder). See Figure 80.

Figure 80: C09 and C10 Program Tags Created in AA070

8. Edit the main description for tags C09 and C10. See Figure 81.

Figure 81: Editing the Main Description for Tags C09 and C10

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-75
9. Open AA070 CloseClamp1 routine.
10. Edit the Switch Internal rung 1.
A. Change all tags within the boxes in Figure 82 to begin with C09
B. Edit the input to BK01.I.D13
Note: To determine unused input addresses, cross reference tag BK01.I
with the scope set to the program of interest. Any used addresses should
display in the cross reference result.
C. The finished rung should look like Figure 82.

9B

Figure 82: Closed Switch Internal Rung for Cylinder C09

16-76 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
11. Edit the Switch Internal rung 2.
A. Change tags to C10 as shown in Step 9.
B. Edit input to BK02.I.D13 as shown in Figure 83.
12. Delete any remaining switch internal rungs (C03 and C04) after the new C10
switch internal rung.

Figure 83: Switch Internal Rung for Cylinder C10

13. Edit the Action Complete Rung.


14. Enter XIC of C09.PX2 and XIO of C09.PX1
15. Enter XIC of C10.PX2 and XIO of C10.PX1
16. Ensure XIO of Clamps1Open.Out is the last contact before the rung’s coil.
Delete any unneeded operands. The finished rung should look like Figure
84.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-77
Figure 84: CloseClamp1.Comp Rung

17. Edit the Action Auto Rung so that Clamp1 closes after PinClampsClose is
complete.
18. Ensure XIO of MainCycle.ProcComp is in the rung.
19. Add XIC of PinClampsClose.Comp.
20. Delete any unneeded operands. The finished rung should look like Figure
85.

Figure 85: Clamp1Close.Auto Rung

16-78 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
21. Clamp1 will now close once PinClampsClose is complete.
22. Add AA070R05 and AA070R06 to ActionClear Rung. This allows Clamps1
to close only when these robots are clear of station AA070.
A. Add XIC of ToAA070R05.Clear.1.
B. Add XIC of ToAA070R06.Clear.1.
C. The finished rung should look like Figure 86.

Figure 86: Action Clear Rung


23. Verify that the Output Power rung looks like Figure 88.
Note: Do not use the same instructions in both the Auto and the Clear rung. For
example: XIC of PinClampsClose.Comp.

Figure 87 Do Not Duplicate Conditions in Action Auto and Clear Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-79
Figure 88: Action Output Power Rung

24. Verify that the Action Command and Output Internal Rungs do not require
edits. The finished rung should look like Figure 89.

Figure 89: Command and Output Internal Rungs

16-80 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
25. Edit the output valve assignment to PM1.O.V4S14.

26. Cross-reference to determine that this valve address is not used more than
once. The finished rung should look like Figure 90.

Figure 90: Close Valve Output Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-81
27. Verify the Action Memory, Action Fault, and the Scroll List Not Visible rungs
against
28. Figure 91. Usually edits are not necessary.

Figure 91: Action Close Memory, Fault and SL Not Visible Rungs

16-82 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
29. Edit the zDiagnostic Internal Enable Bypass rung.
A. Add XIO C09.BypPX2NOn.
B. Add XIO C09.BypPX2NOff.
C. Add XIO C10.BypPX2NOn.
D. Add XIO C10.BypPX2NOff.
E. Delete any unwanted operands.
The finished rung should look like Figure 92.

Figure 92: zDiagInternal Enable Bypass Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-83
30. Edit the Switch Diagnostic Rung using the following table:

Item Ladder Element Tag Description


1 XIC Clamp1.Close.FLT From the motion timer rung.
2 XIC BK01.CommOK I/O block has communications,
3 XIC C09.PX2 Work position switch
4 XIC C09.PX1 Home position switch
5 JSR 2nd Input Use cross reference to determine
Parameter available alarm #
Kalarm[221]
6 JSR 2nd Input Use cross reference to determine
Parameter available alarm #
Kalarm[222]
7 Rung Comment <Alarm[221]: Clamp1 Opened C09.PX1 Not Off /*R*/
BK01.I.D12 PM1.O.V4S14 >
<Alarm[222]: Clamp1 Closed C09.PX2 Not On /*R*/
BK01.I.D13 PM1.O.V4S14 >
8 XIO C09.PX2 -
Figure 93: Switch Diagnostic Rung Chart

31. Verify this rung against Figure 94.


32. Note that the Alarm[ ] number in the rung comment, Item 7, must match the
2nd parameter in the JSR kalarm[ ] number, Item 5 & 6.

16-84 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
7 5

3 4
1 2
6

Switch
Diagnostic
8
Rung

Switch 11 12
Diagnostic
Bypass
Rung
9

10

Figure 94: Switch Diagnostic Rung and Bypass Bit Rung for Cylinder C09

33. Edit the lower Switch Diagnostic Bypass Rung shown in Figure 94 using the
chart below.

Item Ladder Element Tag Description


9 XIC BypSw[221] Number matches kalarm # in
preceding switch diagnostic rung.
10 XIC BypSw[222] Number matches kalarm # in
preceding switch diagnostic rung.
11 OTE C09.BypPX1NOff Home position switch Not Off
12 OTE C09.BypPX2NOn Work position switch Not On
Figure 95: Switch Diagnostic Bypass Rung Chart

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-85
The Switch Bypass Bit rung corresponds to the Switch Diagnostic rung that precedes it.
The XIC BypSw[] needs to match:
 The alarm numbers used in the Switch Diagnostic rung.
 Alarm[] in the rung comment.
 kalarm[] in the JSR call to the diagnostic program.
The OTE must match the switch that is being diagnosed by the alarm.
Complete similar edits for cylinder C10 Alarm and Switch Bypass Bit rungs. See
Figure 96.

Figure 96: Switch Diagnostic Rung and Bypass Bit Rung for Cylinder C10

The diagnostic rungs required cylinder tag revisions. Unique kAlarms were identified for
the fault messages. Using cross reference for ‘kAlarm’ produces a list of all kAlarms
used in the entire project, broken down by program. Scan the list of used kAlarms with

16-86 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
your eyes for this station program and select unused kAlarm numbers near the ones
used for the Pin Clamps. When multiple cylinders exist in a routine, usually also on the
same valve, the edits for diagnostic rung will be repeated for each cylinder.

34. Delete the remaining Alarm and Switch Bypass Bit rungs. (Cylinders C03
and C04).
The SL number and the scroll list text value, items A & B in Figure 97, must be unique
within the current program. In this case, the number 8 cannot be used for the scroll list
text value because it is already used in the ClosePinClamps routine in station AA070
program.
35. Update the Scroll List Configuration rung as shown in Figure 97.
A. Enter the rung comment: <SL[200]: Close Clamp1>
B. Enter the constant, 200. This constant must match the SL[] number in the
rung comment.
C. Enter Move Destination, Clamp1Close.Text.
D. Enter Move Source, KSL.Yellow.Close, this is a named constant that
represents the anticipated state of the unit at the end of the sequence
step. Yellow is used for the Work position whereas Green is used for the
Home position.
E. Enter Move Destination, Clamp1Close.Status.Type, this will hold the
value used to display sequence step status on the HMI scroll list.

Figure 97: Action Scroll List Text Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-87
36. Choose a Prompt[ ] and kprompt[ ] number in the same manner as choosing
a kalarm. Use Prompt[231].
37. Enter Clamp1 Not Closed in the rung comment.
38. Enter motion prompts for all devices in the action clear rung as parallel
branches as shown in see Figure 98.

Look for the


program tag

Figure 98: Close Clamps1 Prompting Logic

16-88 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
39. Match the conditions in the Output Power Prompting rung to the conditions
on the Output Power rung as shown in Figure 99.

Figure 99: Close Clamp1 Output Power Prompting Logic

40. The Unlatch rung verify that the tags match the routine, Clamp1Close.PB,
Clamp1Close.Prompt, and Clamp1Close.OutPwrPrompt.

Figure 100: Unlatch of PB and Prompt Bits

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-89
41. In Figure 101, the SL Found rung verifies that the tags match the routine,
Clamp1Close.Auto, Clamp1Close.Clear, and Clamp1Close.Comp. Note:
this rung can be adjusted to accommodate unusual sequences to obtain
proper Auto Cursor functioning.

Figure 101: SL.Found Rung

42. Verify and save the program.


Note: this procedure could be used to create the action routine that opens
Clamp1. Creating this routine is not part of this lab.

END OF EXERCISE 6

16-90 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-91
16.10. Adding a Gate Box
In light of there being a few different choices for gate boxes depending on the project
and the block point that is to be used it is recommended to utilize the Unscheduled
Programs within the GCCS-2 template to configure a gate box for the project. The
boxes will be identified by the ECS number and there will be two template programs for
each ECS gate box CellGateBox and SafeGateBox. Depending on the gate box ECS
accessed the SafeGateBox will contain a routine with instruction for use in the rung
comment. Some gate boxes will also have instructions in the Cell Gate Box.

16-92 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.11. Adding / Removing Robot Actions
Like the examples presented in Modules 9.1-9.9, adding or removing robot actions will
involve creating or deleting tags and routines. For this example, a reposition step will be
added to a robot’s weld path. Using the previous example of the two clamp motions, the
opening sequence will be revised from all clamps opening after all welding to one set of
clamps opening during the robot’s weld path (i.e. a reposition) and then the robot
continuing to weld.
These program changes will affect the program tag list, program routine list, the
S000_Sequence routine, the clamps open routines, the robot weld routines and the
V100_RobotCommon routine.

Figure 102: Revised Program Routine List

Figure 102 provides some insight into the changes to the program structure resulting
from the newly added robot sequence step. Note that S050 now indicates the robot will
weld to a reposition location. The Clamps1 will open, the robot will continue its weld
path, followed by Clamps2 opening.
16.11.1. Adding and Modifying Tags
Before adding a tag for the new robot action step the tag used for the current robot
action step is modified. Editing the tag name in the program tag list will automatically
update the action tag names in the current robot step.
16.11.2. Adding and Modifying Routines
As shown in Figure 102 on the previous page, the S050_BG010R01WeldClr is
renamed S050_BG010R01WeldRepo. The S067_BG010R01WeldClr routine is
added to the program routine list by right-clicking on the program name and
selecting ‘New Routine…’. The new robot action is assigned a step number between
65 and 70 so, when created, it will appear between the S065_OpenClamps1 and
S070_OpenClamps2 in the routine list.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-93
Figure 103 provides views of the robot action tags before and after the weld action tag
was modified and the new action tag added. As mentioned above, before the new robot
action tag was added the current tag, BG010R01WeldClr, was renamed to
BG010R01WeldRepo. RSLogix 5000 automatically renames all occurrences of this tag
in the program. The new tag, BG010R01WeldClr, was then added, which happened to
be the same name of the original tag.

Figure 103: Program Tag List – Before and After

16-94 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.11.3. Modifying the S000_Sequence Routine
The S000_Sequence routine is modified in much the same way it was for adding a
tooling action step (see Module 9.6). The changes to the logic involve adding a JSR
rung to call the new robot action routine. This rung is placed between the JSR rungs
for the open Clamps1 and open Clamps2 See Figure 104 below.

Figure 104: New Robot Action JSR Added to S000_Sequence Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-95
16.11.4. Modifying the S050_R01WeldRepo Routine
A robot performing a typical weld operation without a reposition will run through path
Seg[1] (pounce), Seg[50] (weld to clear), Seg[62] (clear of tool) and Seg[63] (all
clear) before returning to the ‘Home’ position.
A robot performing a typical weld operation with a clamp reposition will run a path
with the weld portion made of two additional path segments: Seg[50] (weld), Seg[51]
(clear for clamp reposition) and Seg[52] (continue weld).
Figure 105 represents the start of logic modifications to the S050_R01WeldRepo
routine (formerly the S050_R01WeldClr routine). The figure provides a before and
after view of the WeldRepo.Comp rung logic edits (see the highlighted robot
segment bits).

Figure 105: Changes to WeldRepo.Comp Rung

16-96 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rungs shown in Figure 106 and Figure 107 remained unchanged.

Figure 106: Set WeldRepo.Comp, ProcComp Rung

Figure 107: Reset WeldRepo.Comp / ProcComp, .Auto and ClrSetup Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-97
The branch with the highlighted robot Seg[51] bit was added to the rung shown in
Figure 108 to maintain the .Clear signal while the robot transitions from Seg[50] to the
end of Seg[51] . At that point the robot motion will stop until the clamp reposition
executes.

Figure 108: WeldRepo.Clr Rung

16-98 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rungs shown in Figure 109 and Figure 110 remained unchanged.

Figure 109: WeldRepo.OutPwr Rung

Figure 110: WeldRepo.Cmd, .Out, .Mem and .Flt Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-99
Figure 111 illustrates the changes made to the rung comment. This rung comment
contains the text of the scroll list line that will be displayed on the HMI for this robot
action sequence step.

Figure 111: Changes to the Scroll List Text Rung

16-100 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rung shown in Figure 112 and Figure 113 remained unchanged.

Figure 112: Prompt Driver Logic

Figure 113: Prompt Driver Logic (Cont’d)

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-101
Figure 114 shows the changes made to the message text for the Not Complete
prompt (see rung comment).

Figure 114: Weld & Repo Not Complete Prompt Text

16-102 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rungs shown in Figure 115 remained unchanged.

Figure 115: HwEnable Prompt, Scroll List PB Unlatch and SL Line Found Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-103
16.11.5. Modifying the S065_OpenClamps1 Routine
The following examples illustrate the changes made to the open Clamps1 routine
relative to the robot request for the clamps reposition.
The rungs shown in Figure 116 represent the original Clamps1 open auto setup and
the revisions made to reposition the clamps when the robot has completed its initial
welding.

Figure 116: Repo Clamps1.Auto Rung

The rungs shown in Figure 117 illustrate the edits to the Clamps1 open clear setup.

Figure 117: Repo Clamps1.Clear Rung

16-104 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The edits to the robot prompt driver rung shown in Figure 118 reflects the changes
made to the Clamps1.Open.Clear rung.

Figure 118: Robot Not Clear Prompt Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-105
16.11.6. Configuring the S067_R01WeldClr Routine
This is the new robot action routine added to the station program structure back in
Module 9.10. This routine is empty at this point. The correct logic for a ‘continue from
reposition’ robot action routine can be found in the current version of the GCCS-2
RSLogix 5000 reference project. Simply copy the routine contents and paste them
into the routine added to this program.
Once the routine logic is pasted in, the generic action tags will be revised and the
correct rung conditioning logic inserted into each rung.
The intent of the example shown in Figure 119 is to provide an idea of what a typical
rung (top rung in the example) from the reference routine looks like. Note that the
only changes to this rung were to rename the robot action tags which can be
completed using the ‘search – and – replace’ function on this routine.

Figure 119: Robot WeldClr.Comp / .ProcComp Rung

The rungs shown in Figure 120 and Figure 121 are configured similar to the initial
weld action. The difference is that the .ClrSetup rung is conditioned with Clamps1

16-106 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
open rather than closed and the .Clear rung will go true when the robot has reached
the end of path Seg [51], remaining true through Seg [52].

Figure 120: Typical Set/Reset Robot WeldClr.Comp / .ProcComp & Auto Rungs

Figure 121: WeldClr.ClrSetup / .Clear Rungs

The rung comment shown in Figure 124 will be used to create the scroll list line text
for this new robot action step. The ‘Source’ of the MOV instruction in Figure 124
must be a unique number relative to this station program. For convenience, the

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-107
number selected for the ‘Source’ correlates to the sequence step number. This
number, when combined with this program’s message offset, will point to a specific
scroll list line text stored within the HMI.

Figure 122: Typical WeldClr.OutPwr / .Cmd Rungs

16-108 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 123: Typical WeldClr.Out, .Mem, .Flt Rungs

Figure 124: Robot Action Scroll List Text Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-109
Note that the conditioning logic for the prompt latch bits in the rung shown in
Figure 125 mimics the conditioning logic in the clear setup rungs of Figure 121.

Figure 125: Typical Prompt Driver Logic

16-110 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Note that the prompt message number selected in rung #15 shown in Figure 126
must be unique to this station program.

Figure 126: Typical Prompt, Do /Undo and Scroll List Logic Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-111
16.11.7. V100_R01Common
This is the robot to station interface routine. There are minor changes necessary to
this routine to account for the new robot action step. Refer to Figure 127.

Figure 127: V100_R01Common .ValidSeg and .MotionEnable Rungs

16-112 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The highlighted portions of the rungs featured in Figure 127represent modifications
necessary to accommodate the additional robot segments resulting from the new
robot action step.

Figure 128: V100_R01Common .MotionEnable Rung (Cont’d)

The rung shown in Figure 129 drives the bit used in the Clamps1 open clear setup.
See Figure 128 above.

Figure 129: R01.Clear.1 Rung

The R01.Decision.0 bit is the robot decision code for general ‘continue’ commands.
The highlighted branch of the rung featured in Figure 130 was added to issue the
decision code to the robot following the clamp reposition.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-113
Figure 130: R01.Decision.0 Rung

16.11.8. S010_MainCycle
The rungs shown in Figure 131 were modified to ensure the .ProcComp and .Comp
bits from both robot sequence steps were present.

Figure 131: MainCycle Proc / NoProcComp and Steps / NoStepsComp Rungs

16-114 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.11.9. Removing a Robot Action
Looking back at the last section in which a robot reposition action was added to the
station tooling sequence, this section will cover what needs to be done to the station
program to remove the robot action.

16.11.9.1. Record Robot Information


Record the robot path segments associated with the robot action to be removed.
From the previous example, the robot action added to the station sequence used
robot path segments [51] and [52]. The program will be searched later for these
robot path segment tags.

16.11.9.2. Remove Robot Action Routine


Right-click on the robot action sequence step routine in the station program list and
select Delete. Go to the S000_Sequence routine and remove the rung containing the
JSR calling the deleted action routine. At this point, the rung should be marked with
lower case ‘e’s indicating a JSR still exists for a routine that has been removed.

16.11.9.3. Search for Robot Action, Segment, Clear Tags


Open the station program tag list. Perform a cross reference on the robot action tag.
The results will show the routines where the tags are still used. Modify these
routines accordingly.

Open the controller tag list. Perform a cross reference on the robot segment tags
recorded in Module 16.11.9.2. The results will show the routines where the tags are
still used. Modify these routines accordingly. Among these routines should be the
station V100_RobotCommon routine.
Robot path segment tags are used in the ‘.Clear.x’ rungs (see Figure 129). Record
any clear bits specific to the robot action being removed. Cross reference any
applicable clear tags and modify the routines where they are used accordingly.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-115
16.12. Adding / Removing Welding Actions
For certain situations, the procedure for adding or removing welding actions will be
similar to the revisions of the other sequence actions presented previously. There are
other situations where characteristics specific to welding actions must be considered,
that is whether the new action to be added will be for a new weld gun connected to an
existing weld controller or a new weld controller. Each one of these cases will result in
different edits to the PLC project.

16.12.1. Adding Welding Action – Case 1


This example will explore what program edits need to be performed in a situation in
which a weld gun that currently welds a single spot is mounted on a slide to weld an
additional spot. In this case, the weld gun is still connected to the same SCR (Silicon
Controlled Rectifier – the weld controller firing board) and weld controller.

16.12.2. Adding Tags


The highlighted tags shown in Figure 132 represent the tags required for the new
weld action and group routines. Note the WGSlide tag was required for the tooling
action added.

Figure 132: Revised Program Tag List

16-116 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.12.3. Adding and Modifying Routines
Adding and modifying routines requires creating sequence routines for the program
routine list. All of the sequence routines added will require a rung with the respective
JSR added to the S000_Sequence routine.
16.12.4. Adding the New Weld Action Routines
Right-click on the station program name and select ‘New Routine…’ to create the
new sequence routines. Figure 133 provides a before (left side) and after (right
side) view of the program routine list.

Figure 133: Revised Program Routine List

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-117
16.12.5. Modifying the S000_Sequence Routine
Figure 134 and Figure 135 feature the rungs inserted into the S000_Sequence
routine providing the JSR instructions to call the new action routines.

Figure 134: Modifications to the S000_Sequence Routine

Figure 135: Modifications to the S000_Sequence Routine (Cont’d)

16.12.6. Modifying the S040_1stWeld Routine


The highlighted bit in Figure 136 was added to the Weld1.ToolRdy rung to ensure
the weld gun slide is in the return position for the first weld action.

16-118 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 136: Typical .ToolRdy Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-119
The highlighted branch shown in Figure 137 was added to compliment the
conditional logic in the Weld1.ToolRdy rung.

Figure 137: Typical Prompt Driver Rung

16.12.7. Configuring the S047_AdvanceWGSlide Routine


This is one of two tooling action routines added (see Module 16.12.4).
The rung shown in Figure 138 illustrates that the weld gun slide will advance
following the 1st weld complete.

Figure 138: Weld Gun Slide Advance Auto Setup Rung

16-120 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.12.8. Configuring the S048_2ndWeld Routine
The S048_2ndWeld routine is one of two weld action routines added. This routine
starts out empty following its creation in Module 16.12.4. The rung contents for this
routine are copied from the current version of the GCCS-2 RSLogix 5000 reference
project.
Both of the rungs in Figure 139 required modification of the logic pasted in. In rung
#1 there were ‘TBD’ bits in each branch that were removed and all weld gun
conditioning bits were corrected with the proper tag names. The rung outputs bits
required no edits. The conditioning of rung #2 was modified for this station.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-121
Figure 139: Weld2 Complete and Tool Ready Rungs

16-122 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Rung #3 conditioning logic, shown in Figure 140, as copied from reference logic
contained the ‘.Comp’ bit rather than the ‘.ProcComp’ bit. Rung #4 required the weld
gun conditioning bits be corrected with the proper tag names.

Figure 140: Weld2 Previous Process Complete and Guns Clear Rungs

Figure 141: Typical Prompting Driver Logic

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-123
Figure 142: Typical Prompting Driver Logic (Cont’d)

16-124 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.12.9. Configuring the S049_InitW2WG01 Action Routine
This is the second of two weld action routines added. The rung contents for this
routine are also copied from the current version of the GCCS-2 RSLogix 5000
reference project. Prior to any rung configuration, a ‘Search and Replace’ is
performed on all weld action tags used in the routine. As shown in the following
examples, these are the instructions assigned the W2WG01RE tags.
The only modifications required to the rungs shown in Figure 143 were the updating
of the action tags.

Figure 143: Typical 2nd Weld Init.Comp Rung

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-125
In rung #3 shown in Figure 144, the W2.PrevProcComp bit replaced
W1.PrevProcComp. The Weld2.ToolRdy bit replaced the Weld1.ToolRdy bit in rung
#4. The F1.MinorPwrOn bit in rung #5 replaced a ‘TBD’ place holder. No changes
were needed in rung #6.

Figure 144: Typical 2nd Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs

16-126 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
No changes are made to the rungs shown in Figure 145.

Figure 145: Typical 2nd Weld Init.Cmd, .Out and .InitWeld Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-127
No changes are made to the rungs shown in Figure 146.

Figure 146: Typical 2nd Weld .SeqDone and Init.Mem Rungs

Changes were made to rung #15 of Figure 147 to reflect the proper scroll list line
text and number for the new weld action.

16-128 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 147: Typical 2nd Weld .Init.FLT, SL.NotVisible and SL Text Rungs

Changes to the rungs shown in Figure 148 included ensuring proper prompt
message numbers in rung #16 and the Weld2.ToolRdy and Weld2.Prompt

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-129
instructions in rung #17 replaced Weld1.ToolRdy and Weld1.Prompt,
respectively.

Figure 148: Typical 2nd Weld Prompt Message and Motion Prompt Rungs

16-130 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The lower two branches for the operator light curtain were added to the rung shown
in Figure 149.

Figure 149: Typical 2nd Weld Output Power Prompt Driver Rungs

No changes were necessary to the rungs shown in Figure 150.

Figure 150: Typical 2nd Weld Do / Undo Unlatch and SL Found Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-131
16.12.10. Modifying the S050_OpenWGRetract Action Routine
The highlighted instructions shown in Figure 151 illustrate the changes made to the
WGRetract.Open.Auto, .Clear rungs.

Figure 151: Typical Weld Gun Retract .Auto, .Clear Rungs

The highlighted branch shown in Figure 152 was added for the Weld2 motion prompt
driver.

Figure 152: Typical Weld Gun Retract Motion Prompt Driver Rungs

16-132 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.12.11. Modifying the S063_ReturnWGSlide Action Routine
This is the second of two tooling action routines added (see Module 16.12.4 for
details about adding a tooling action). The rung shown in Figure 153 illustrates the
weld gun slide will return following process complete and the weld gun open and
clear.

Figure 153: Typical Weld Gun Slide Return .Auto Rung

16.12.12. Modifying the W001_WeldCommon Routine

Figure 154: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-133
16.12.13. Modifying the S010_MainCycle Routine
The rungs shown in Figure 155 highlight the revisions made to the process complete
and steps complete logic to account for the additional weld action.

Figure 155: Typical Proc / NoProcComp and Steps / NoStepsComp Rungs

16-134 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.13. Adding Weld Action – Case 2
This example will explore the program edits that need to be performed when a new weld
gun is connected to a spare SCR of an existing weld controller. The station currently
contains two weld guns connected to a SCR3 weld controller.

16.13.1. Adding the SCR3 Ethernet Module


As previously indicated, the weld controller used for this example currently uses two
of its three SCRs. Although the spare SCR is available it is not configured in the
PLC’s I/O Configuration since it is not used. This section will illustrate adding the
SCR3 Ethernet communication module and the mapping of the SCR I/O.
The partial view of the PLC I/O Configuration shown in Figure 156 includes the new
Ethernet module created for SCR3. Right-clicking on the ‘Ethernet’ word at the top of
the tree and selecting ‘New Module…’ opens the new module dialog. Another
method is to right-click on an existing module and select ‘Copy’, then right-click on
the ‘Ethernet’ word at the top of the tree and select ‘Paste’. This will create a
duplicate module. Right-click on the duplicate module and select ‘Properties’ to edit
the module name and IP address.

Figure 156: SCR3 Ethernet Module Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-135
16.13.2. Mapping the SCR3 I/O
To establish control of the weld controller SCR, the I/O must be mapped. When the
SCR Ethernet module was created in Module 16.14.1 the controller scope input and
output tags were created as well. These tags are mapped to the PLC control data in
the B001_MapInputs and B002_MapOutputs routines of the weld controller program.
See the GCCS-1 Standard Section 6 Hard Auto Weld Program for details on
mapping SCR I/O.

16-136 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 157: Typical SCR3 Input Mapping Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-137
Figure 158: Typical SCR3 Output Mapping Configuration

16.13.3. Adding Tags


The following require edits:
 Controller tag
 Station program tag
 Weld controller program tag data base.
The controller tag highlighted tag in Figure 159 provides the interface between the
station program and the weld controller program.

Figure 159: Revised Controller Tag List

16-138 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
In this particular case, the highlighted program tag shown in Figure 160 was created
during the software generation process. The controller tag featured in the previous
figure is aliased to this program tag to complete this portion of the station to weld
controller interface.

Figure 160: Revised Weld Controller Program Tag List

The highlighted tags shown in Figure 161 represent the tags required for the new
weld action and SCR.

Figure 161: Revised Station Program Tag List

16.13.4. Adding and Modifying Routines

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-139
The example under consideration in this section will result in one new sequence
routine added to the program routine list and a rung with the respective JSR added
to the S000_Sequence routine.

16.13.5. Adding the New Weld Action Routine


Right-click on the station program name and select ‘New Routine…’ to create the
new sequence routine. Figure 162 provides a before and after view of the program
routine list.

Figure 162: Revised Station Program Routine List

16-140 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.13.6. Modifying the S000_Sequence Routine
Figure 163 features the rung (#18) inserted into the S000_Sequence routine
providing the JSR instructions to call the new action routine.

Figure 163: Modifications to the S000_Sequence Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-141
16.13.7. Modifying the S040_1stWeld Rouitne
The rung shown in
Figure 164, Figure 165, and Figure 166 illustrate the edits made to the Weld1
complete logic for the additional weld gun.

Figure 164: Modifications to Weld1.Comp Logic

Figure 165: Modifications to Weld1.NoComp, .ProcComp, .NoProcComp Logic

16-142 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 166: Modifications to Weld1.GunsClear Logic

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-143
16.13.8. Configuring the S051_InitWG03 Routine
The rung contents for this routine are copied from the current version of the GCCS-2
RSLogix 5000 reference project. Prior to any rung configuration a ‘Search and
Replace’ is performed on all weld action tags used in the routine.
The rungs shown in Figure 167 required no further changes beyond renaming the
weld action tags (except for renaming the weld controller tags for the correct SCR)
Refer to the highlighted instructions at the top of rung #1.

Figure 167: Typical Init.Comp / .ProcComp Rungs

16-144 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Minor edits were required to the rungs shown in Figure 168. The weld controller tag
for the highlighted instruction in rung #3 was renamed for the correct SCR. The robot
clear of tooling bit was added for this station in rung #4. The F1.MinorPwrOn bit in
rung #5 replaced a ‘TBD’ place holder. No changes were needed in rung #6.

Figure 168: Typical Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-145
The rungs featured in Figure 169 required no additional configuration other than the
weld controller tag for the highlighted instruction in rung #9 being renamed for the
correct SCR.

Figure 169: Typical Weld Init.Cmd, .Out and .InitWeld Rungs

16-146 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rungs featured in Figure 170 required no additional configuration other than the
weld controller tag for the highlighted instruction in rung #10 being renamed for the
correct SCR.

Figure 170: Typical Weld .SeqDone, .Mem Latch / Unlatch Rungs

The rungs shown in Figure 171 required minor edits as follows:

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-147
 The weld controller tag for the highlighted instruction in rung #13 was renamed
for the correct SCR.
 The rung comment for rung #15 was revised for the new weld gun.
 The MOV instruction for the text number in rung#15 was revised.

Figure 171: Typical Weld Init.FLT, SL.NotVisible and SL Line Rungs

16-148 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 172: Typical Weld Do / Undo Prompt Message and Prompt Driver Logic

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-149
Figure 173: Typical PB Unlatch and SL.Found Latch Logic

16.13.9. Modifying the W001_WeldCommon Routine


The rungs shown in Figure 174 were added to the routine to actuate the new weld
gun valve and send the weld initiate signal to the weld controller SCR.

Figure 174: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic

16-150 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The highlighted branches of the rungs shown in Figure 175 and Figure 176 were
added for the spare SCR commissioned for the new weld action.

Figure 175: Typical SCR .NoControlStops and .ContactorSaver Logic

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-151
Figure 176: Typical SCR .ContactorSaver (Cont’d) and .ResetSteppers Logic

The rung shown in Figure 177 was added for SCR 3.

Figure 177: Typical SCR .ResetFaults Rung

The highlighted rung branches shown in Figure 178 were added for SCR 3.

16-152 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 178: Typical SCR .WeldModeReq and .StaTryout Rungs

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-153
The highlighted instruction of rung #18, shown in Figure 179, was added for SCR 3.
Rung #22 was added for the new weld gun.

Figure 179: Typical SCR End of Stepper Summation Weld Gun Open Timer Logic

16-154 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.14. Adding Weld Action – Case 3
This example will explore the program edits that need to be performed in a situation in
which a new weld gun is connected to a new weld controller (WC02). Much of the
routine creation and modifications associated with this scenario was covered in the
previous examples. The major differences include the types of tags that need to be
created and the additional weld controller program that will be added. For convenience,
this example will build on the one used in Module 16.13.

16.14.1. Adding SCR EtherNet Module


This is the same procedure described in Module 16.13.1.

Figure 180: Typical SCR EtherNet Module Configuration

16.14.2. Adding Tags


Adding a new weld gun and controller requires revising the controller and station
program tag lists.

Figure 181: Revised Controller Tag List

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-155
The tags highlighted in Figure 182 represent the new tags required for the additional
weld action.

Figure 182: Revised Station Program Tag List

16.14.3. Adding the New Weld Controller Program


A new weld controller requires that a weld controller program be added to the PLC
Main Task. Right-clicking in the ‘Main Task’ word at the top of the program tree and
selecting ‘New Program…’ will open the new program dialog. Right-click again on
the ‘Main Task’ word and select ‘Properties’ to define the order the new weld
controller program will appear in the program list. See Figure 183 for the ‘Main Task’
listing with the new weld controller program.

Figure 183: Revised Controller Program List

16.14.4. Adding Weld Controller Program Tags and Routines

16-156 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The program tags and routines for this program can be copied from the GCCS-2
RSLogix 5000 reference project although they will require some configuration.
To begin, the program tags will need to be aliased to the correct controller tags.
Refer to Figure 184.

Figure 184: New Weld Controller Program Tag List

The correct ‘z33x_WS2AxSCR’ routine to use (Figure 185) will be determined by the
number of SCRs contained in the weld controller. The example used here is a single
SCR weld controller.

Figure 185: New Weld Controller Program Routine List

After the program routines are copied, the ‘A000_Main’ routine is designated the
‘main’ routine of the program by right-clicking on the program name, selecting
‘Properties’ and selecting the ‘Configuration’ tab.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-157
Minor edits may need to be made to the A000_Main for the correct SCR driver
routine JSR. The configuration of the B001_MapInputs and B002_MapOutputs
routines was covered in Module 16.13.2. The correct program message offset and
name is defined in the B004_Parameters routine. The last two routines are standard,
no-edit routines.
Routines added to the station program pertaining to the new weld action in this
example have been previously discussed in Modules 16.12.4 or 16.13.4.

16.15. Removing a Weld Action


16.15.1. Remove the Weld Action Routine
Right-click on the weld action init sequence step routine in the station program list
and select Delete. Remove the weld group routine if the weld action is the only one
in this group. Go to the S000_Sequence routine and remove the rung containing the
JSR calling the deleted action routine (and weld group routine, if applicable). At this
point, the rung should be marked with lower case ‘e’s indicating a JSR still exists for
a routine that has been removed.

16.15.2. Search for Weld Action Tags


Open the station program tag list. Perform a cross reference on the weld action and
weld gun tags. The results show the routines where the tags are still used. Modify
these routines accordingly.

16.15.3. Remove / Inhibit SCR EtherNet Module


If the weld controller SCR used by the former weld action is disconnected,
communication faults will make it necessary to remove the SCR EtherNet module
from the PLC I/O configuration or inhibit the module from its properties tab.

16-158 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.16. Adding a Robot
Adding a robot to a running cell will involve several modifications to the PLC project.
These tasks include:
 Configuring the robot Ethernet and DeviceNet I/O modules
 Adding robot controller tags
 Modifying the Safety Task
 Creating the robot program.
Creating the robot program will require copying program tags and routines from the
GCCS-2 RSLogix 5000 reference project and editing them to suit the application.

16.16.1. Adding the Robot Ethernet Module


The method used to configure the robot Ethernet module is the same as the one
used to configure the weld controller SCR Ethernet module in the previous module.

Figure 186: Typical Robot Ethernet Module Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-159
16.16.2. Adding the Robot DeviceNet Safety I/O
The method used to add the robot DeviceNet Safety I/O module is similar to the one
used to add the Ethernet module. In this case, a duplicate of the module at node 11
is made by:
 Right-clicking on the module
 Selecting ‘Copy’
 Right clicking on the ‘DeviceNet’ word
 Selecting ‘Paste’
Configuring the new module for the correct node number and robot name is
performed by right-clicking on the module and selecting ‘Properties’. The new
module is highlighted in Figure 187.

Figure 187: Typical Robot DeviceNet Safety I/O Module Configuration

16-160 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.16.3. Adding the Robot Controller Scope Tags
Figure 188 and Figure 189 illustrate the tags added to the controller tag list for the
new robot. Note that the highlighted tags within the shaded regions were created
during the robot Ethernet and Safety I/O module configuration.

Figure 188: Non-Safety Controller Tags Added

Figure 189: Safety Controller Tags Added

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-161
16.16.4. Modifying the Safety Task
Updating the Safety Task for a new robot involves modifying the program tag list and
several of the routines supporting robot functionality. Refer to Figure 190, Figure
191, Figure 192, and Figure 193.

Figure 190: Safety Task Program Tag Added

Figure 191: Safety Task B001_MapInputs Routine Modification

Figure 192: Safety Task B002_MapOutputs Routine Modification

16-162 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 193: Safety Task B010_SafetyConfig Routine Modifications

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-163
Figure 194 highlights the modifications made to the Safety Task robot routines. The
‘R000_5Robots’ routine replaced ‘R000_4Robots’. This is the routine that calls the
individual robot routines that follow. ‘R005_Robot5’ was added for the new robot.
Note that the ‘R000_5Robots’ routine is called by ‘A000_Main’. Therefore, the rung
containing the JSR calling the former ‘R000_4Robots’ routine was modified.

Figure 194: Safety Task Robot Routine Modifications

16.16.5. Adding the Robot Program


Section 16.14.3 discussed the method to add a weld controller program to the ‘Main
Task’. Adding a robot program is performed in the same manner. The new robot
used for this demonstration will be added to the first station in the cell.
The highlighted robot program shown in Figure 195 was created for the new robot.
This robot will be utilized in the first station (BP005B1 in this example) to perform
spot welding.

Figure 195: Revised Main Task List (Partial)

16.16.6. Adding the Robot Program Scope Tags

16-164 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
These tags are copied from the reference project and edited per the application.
Figure 196 illustrates the robot program tag list as copied from the RSLogix 5000
reference project. Note that aliases for the ‘Cell’, ‘FromSta1’, ‘HMI’, ‘R’ and
‘TputRbtCT’ tags have been updated per this application. Also, to update the aliases
for the ‘PMCDDFTRobot’ and ‘PMCDRobot’ tags the
‘uc_PMCObjectType_BP008Cell’ UDT was revised to include the new robot.

Figure 196: Typical Robot Program Tag List

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-165
16.16.7. Adding the Robot Program Routines
The routines to build the robot program are copied from the GCCS-2 reference
project. After opening the reference project, it is best to expand the robot program.
Opening each routine will determine if the routine can be copied as is or if it is a
place holder directing the engineer to another area within the reference project to
obtain the routine specific to the application.
All of the routines are first assembled in the destination project and then each one is
configured as required. Of the 19 routines used to build the robot program, only six
required some form of configuration in this case.
Figure 197 represents the completed routine list for the new robot. A check of each
routine will determine any configuration necessary to the logic copied from the robot
reference program. At this point, right-click on the program name and select
‘Properties’. Select the ‘Configuration’ tab and designate the ‘A000_Main’ routine
as the program’s main routine.

Figure 197: New Robot Program Routine List

16-166 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rungs shown in Figure 198 represent the only modifications made to the
‘A000_Main’ routine as copied from the reference program. All of these JSRs
contained generic routine names.

Figure 198: A000_Main Routine Modifications

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-167
The rungs shown in Figure 199 thru Figure 202 represent the rungs requiring
modifications in the ‘B001_MapInputs’ routine as copied from the reference program.

Figure 199: B001_MapInputs Routine Modifications

16-168 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 200: B001_MapInputs Routine Modifications (Cont’d)

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-169
Figure 201: B001_MapInputs Routine Modifications (Cont’d)

16-170 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 202: B001_MapInputs Routine Modifications (Cont’d)

The rungs shown in Figure 203 represent the rungs requiring modifications in the
‘B002_MapOutputs’ routine as copied from the reference program.

Figure 203: B002_MapOutputs Routine Modifications

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-171
The rungs shown in Figure 204 represent the rungs requiring modifications in the
‘B004_Parameters’ routine as copied from the reference program.

Figure 204: B004_Parameters Routine Modifications

The rung shown in Figure 205 represents the rung requiring modifications in the
‘B010_Zones’ routine as copied from the reference program.

Figure 205: B010_Zones Routine Modifications

16-172 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rung shown in Figure 206 represents the rung requiring modifications in the
‘X100_PMCRobot’ routine as copied from the reference program. Also refer to
Figure 207 for more information.

Figure 206: X100_PMCRobot Routine Modifications

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-173
Figure 207: X100_PMCRobot Routine Modifications

16-174 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.17. Removing a Robot

16.17.1. Remove Robot Program from Main Task


The first step to removing a robot from the PLC project is to remove the robot
program from the controller’s Main Task. This is accomplished by right-clicking
on the ‘Main Task’ at the top of the program tree and selecting ‘Properties’.
Select the ‘Program Schedule’ tab. Scroll down list under the heading
‘Scheduled:’ select the robot program name and click the ‘Remove’ button. This
action will move the robot program name under the ‘Unscheduled:’ heading (see
Figure 208). Upon clicking ‘Apply’ and / or ‘OK’ the actual robot program will be
moved from the ‘Main Task’ to the ‘Unscheduled’ area of the controller organizer.

Figure 208: Main Task Properties Dialog

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-175
16.17.2. Deleting the Robot Program
Expand the robot program tree. Right-click on each routine and select ‘Delete’.
Open the program tag list and select the ‘Edit Tags’ tab. Highlight all of the tags and
select ‘Delete’. Close the program tag list. Right-click on the robot program name
and select ‘Delete’.

16.17.3. Removing Robot from I/O Configuration


Right-click on the robot Ethernet Module in the controller ‘I/O Configuration’ and
select ‘Delete’. Locate the robot DeviceNet Safety I/O node in the DNB
configuration. Right-click on the I/O module and select ‘Delete’.

16.17.4. Modify the Safety Task


Refer to the module on modifications to the ‘Safety Task’ for adding a robot. Remove
and replace the R000_xRobots routine to suit the revised cell configuration. Remove
the appropriate R00x_Robotx routine. Open the program tag list and re-alias any
R0x tags as necessary. Modify the ‘A000_Main’, ‘B001_MapInputs’,
‘B002_MapOutputs’ and ‘B010_SafetyConfig’ routines as required. Verify the
controller.

16.17.5. Deleting Station Components from I/O Configuration


Locate any DeviceNet Safety I/O nodes for station equipment (i.e. Fixture Boxes,
Run Stands, etc.) in the DNB configuration. Right-click on each I/O module and
select ‘Delete’.

16-176 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.18. Adding / Removing Interlocks to Other Devices
A common example of an interlock between devices is when a station within one cell
must interact with a station from another cell. This scenario will require the two cells be
interlocked so that information such as communication, mode, e-stop and interference
statuses are made available to the stations on both sides. Interlocks are actually
controller scope tags ‘produced’ by one controller and ‘consumed’ by other controller(s).
The ‘producer’ / ‘consumer’ communication takes place over the cell – to – cell Ethernet
network.
Creating an interlock between two controllers will require adding an Ethernet module to
each controller’s I/O Configuration. Custom UDTs for the ‘produced’ / ‘consumed’ tags
will be created based on the type of information shared between cells. Finally, the tags
will be mapped accordingly in each cell.

16.18.1. Adding the Ethernet / Controller Modules


Adding an Ethernet module to the I/O Configuration for controller – to – controller
communication varies somewhat from adding a weld controller SCR or robot
(Modules 16.13.1 and 16.16.1). This is actually a two step process in which the
Ethernet module is added, followed by adding the remote controller to the Ethernet
module.
Figure 209 illustrates the I/O Configuration of a typical controller (BB010) currently
interlocked to one controller (BK010).

Figure 209: Typical Controller I/O Configuration

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-177
An interlock to another controller is established by right-clicking on the ‘Ethernet’
word directly under the controller’s Ethernet module (Enet02 in the figure above) and
selecting ‘New Module’. This will open the ‘Select Module’ dialog consisting of three
categories:
 Communications
 HMI
 Others.
Expand the ‘Communications’ tree and select the ‘1756-ENBT/A’ type module and
select ‘OK’. Refer to Figure 210.

Figure 210: Select Communication Module Dialog

16-178 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 211 shows the new module setup dialog that opens once the Ethernet
module type is selected. The items highlighted are filled in according to the Ethernet
module in which the interlock is being established. When the ‘OK’ button is pressed,
the module will appear in the controller I/O Configuration (see Figure 212 below).
The second part of this setup process will link the remote Ethernet module just
created to the controller in the same chassis.

Figure 211: New Module Configuration Dialog

Figure 212: Revised Controller I/O Configuration

The controller in the remote chassis is defined by right-clicking on ‘1756 Backplane’


and selecting ‘New Module’.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-179
This will open the ‘Select Module’ dialog consisting of six categories:
 Analog
 Communications
 Controllers
 Digital
 Other
 Specialty.
Expand the ‘Controllers’ tree and select the controller type that matches the remote
PLC (in this case a 1756-L61S) and select ‘OK’.
Figure 213 shows the new module setup dialog that opens once the controller
module type is selected. The items highlighted are filled in according to the controller
in which the interlock is being established.

Figure 213: New Module Configuration Dialog

When the ‘OK’ button is pressed, the module will appear in the controller I/O
Configuration (see Figure 213, above, right) under the Ethernet module previous
created. Note that the modules appearing in slot 1 (Partner) and slot 2
(BC010_Enet02) were created when the controller in slot 0 was created.

This completes the I/O Configuration modifications in this controller. The controller in
which the interlock is being established will require the same edits to its I/O
Configuration before communication can begin.

16.18.2. Adding the Interlock Tags

16-180 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 214 shows the two tags (one standard, one safety) this controller (BB010)
‘produces’ to the interlocked controller (BC010). In this example, the station BB040
(located in this cell, BB010) will control the pick action for a robot residing in the
BC010 Cell. The UDT of the standard tag (‘BB010toBC010Interlocks’ in this
example) is a custom data structure based on the amount of interaction between the
cells. The UDT of the safety tag (‘s_BB010Interlocks’) is more standardized, typically
providing the communication and other cell safety statuses.

Figure 214: Produced Interlock Tags

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-181
After the tags are created, they must be defined as ‘produced’ in order for the
remote controller to retrieve the data from the tag structure. To access the properties
dialog of the tag begin by right clicking on the tag name in the tag list and select ‘Edit
properties’. ‘Produced’ is selected from the pull down menu for tag ‘Type:’. Pressing
the ‘Connection…’ button opens a dialog in which the maximum number of
controllers ‘consuming’ the tag data is defined. See Figure 215 below for more
details.

Figure 215: Tag Properties Dialog

The ‘consumed’ tags are created in the same manner as the ‘produced’ but the tag
properties are configured differently.

16-182 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 216 shows the two tags (one standard, one safety) this controller (BB010)
‘consumes’ from the interlocked controller (BC010). Again, the UDT of the standard
tag (‘BC010toBB010Interlocks’ in this example) is a custom data structure based on
the amount of interaction between the cells. This tag contains the bits to manually
initiate the robot actions from the BC010 (remote) Cell. The UDT of the safety tag
(‘s_BC010Interlocks’) provides the same data as the ‘produced’ safety tag described
in Figure 216.

Figure 216: Consumed Interlock Tags

After the tags are created, they must be defined as ‘consumed’ in order to retrieve
the data from the ‘produced’ tag structure in the remote controller. To access the
properties dialog of the tag, begin by right-clicking on the tag name in the tag list and
select ‘Edit properties’. ‘Consumed’ is selected from the pull down menu for tag
‘Type:’. The ‘Connection…’ button opens a dialog to specify where to get the data for
the ‘consumed’ tag. The ‘Producer:’ pull down menu contains a list of all controllers
with an Ethernet communication connection defined in this controller’s I/O
Configuration. Simply select the remote controller from the list. The ‘Remote Data:’ is
filled in with the name of the ‘produced’ tag providing the desired data. The ‘RPI:’ is
set to 60ms for standard ‘consumed’ tag data (Note that the ‘RPI:’ is set to 30ms
for safety tag data). See Figure 217 below for more details.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-183
Figure 217: Tag Properties Dialog

The procedure referenced above for adding the ‘produced / consumed’ interlock tags
to this controller must be performed on the remote controller before communication
can be established.

16-184 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.18.3. Mapping the Consumed Tag Data
The standard ‘consumed’ tag data is mapped to controller tags in the cell and station
level programs. The safety ‘consumed’ tag data is used in the ‘C001_InterlockStatus’
routine of the cell program and the ‘B010_SafetyConfig’ routine of the cell safety
program. Refer to Figures 202 thru 208 below.

Figure 218: Typical ‘Consumed’ Tag Mapping – Cell Program, B001_MapInputs Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-185
Figure 219: Typical Standard ‘Consumed’ Tag Mapping – Station Program, B001_MapInputs Routine

16-186 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 220: Typical Standard ‘Consumed’ Tag Mapping – Station Program, B001_MapInputs Routine (Cont’d)

Figure 221: Typical Standard ‘Consumed’ Tag Mapping – Cell Program, C001_InterlockStatus Routine

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-187
Figure 222: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics – Cell Program,
C001_InterlockStatus Routine

16-188 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 223: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics – Cell Program,
C001_InterlockStatus Routine (Cont’d)

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-189
Figure 224: Typical Safety ‘Consumed’ Tag Data used for E-stop Monitoring – Cell Safety Program, B010_SafetyConfig
Routine

16.18.4. Mapping the Produced Tag Data


Controller tags in the station level program are mapped to standard ‘produced’ tag
data. A cell safety program tag is mapped to the safety ‘produced’ tag data.

Figure 225: Typical Standard ‘Produced’ Tag Data Mapping – Station Program, B002_MapOutputs Routine

16-190 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
Figure 226: Typical Standard ‘Produced’ Tag Data Mapping – Station Program, B002_MapOutputs Routine (Cont’d)

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-191
Figure 227: Typical Safety ‘Produced’ Tag Data Mapping – Cell Safety Program, B002_MapOutputs Routine

16.19. Removing an Interlock

16.19.1. Remove Ethernet / Controller Modules


Figure 228 shows the current view of the controller’s I/O configuration. Right-clicking
on the remote controller icon and selecting ‘Delete’ will remove the controller and all
consumer tags linked to the controller. The Ethernet module can be deleted in the
same manner.

Figure 228: Typical Controller I/O Configuration

16.19.2. Remove Produced / Consumed Mapping


Delete the tags ‘produced’ to the former remote controller. Verify the controller. The
deleted ‘produced’ and ‘consumed’ tags will display several errors to be displayed
following a project verify. Search all error locations and modify logic accordingly.
The F4 function key on the keyboard will navigate the display through errors one at a
time so they can be corrected.

16-192 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
16.20. Adding / Removing Styles
Adding or removing job styles will require modifications to station program job data and
throughput routines. Job data transfers from stations to robots are automatic but any
throughput routines residing in robot programs will require edits.

16.20.1. Adding a Style – Station Program


The routines affected in the station program by the addition of a new job style are
the ‘J001_JobData’ and ‘X224_TputUser’ routines. For this example, the cell
currently processes style numbers 7 and 8. A new style number 9 will be added.

Figure 229: Typical Station Jobdata.Valid Logic

The rungs shown in Figure 229 are typical of the ‘Jobdata.Valid’ outputs found in the
‘J001_JobDataRF’ and ‘J001_JoDataShiftReg routines, respectively. The highlighted

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-193
branch in rung #12 was added for the new style. The ‘High Limit’ of the LIM
instruction in rung #13 was increased to ensure the new style was included in the
range of valid styles.

Figure 230: Typical Station TputWsData.Type Logic

The rung shown in Figure 230 is taken from the station ‘X224_TputUser’ throughput
routine. To activate this rung for the new style, an ‘AlwayOff’ bit was removed from
the top branch and the EQU instruction ‘Source B’ was assigned the number ‘9’ for
the new style.

16.20.2. Adding a Style – Robot Program


The routine affected in the robot program by the addition of a new job style is the
‘X200_TputUser’ routine. For this example, the cell currently processes style
numbers 7 and 8. A new style number 9 will be added.

16-194 © 2019 General Motors Company. All Rights Reserved Rev. 7.0
The rung shown in Figure 231 is taken from the robot ‘X200_TputRbtUser’
throughput routine. To activate this rung for the new style an ‘AlwayOff’ bit was
removed from the beginning of the rung and the EQU instruction ‘Source B’ was
assigned the number ‘9’ for the new style.

Figure 231: Typical Robot TputRbt.Bits.Type Logic

16.20.3. Removing a Style


The procedure to remove a style can follow the same procedure used to add a style.
Simply modify the station and robot job data or throughput routines for the obsolete
style number(s). Note that the engineer must be cognizant of any control logic
outside the indicated routines that may be utilizing style data being removed.

Rev. 7.0 © 2019 General Motors Company. All Rights Reserved 16-195
16.21. Review
1. How do you change / update a tooling sequence?
2. How do you add / remove a tooling action?
3. How do you edit an action routine?
4. How do you add a new station?
5. How do you delete a station?

16-196 © 2019 General Motors Company. All Rights Reserved Rev. 7.0

You might also like