GCCS2_CommonTask_Module17_Rev6.0
GCCS2_CommonTask_Module17_Rev6.0
Sponsoring Group:
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
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, 2015, 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. 6.0 © 2015 General Motors Company. All Rights Reserved 17-1
17.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.
17-2 © 2015 General Motors Company. All Rights Reserved Rev. 6.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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-3
17.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.
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.
17-4 © 2015 General Motors Company. All Rights Reserved Rev. 6.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.
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. 6.0 © 2015 General Motors Company. All Rights Reserved 17-5
17.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.
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.
Figure 7 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. The next step is to open the
S000_Sequence routine and delete the rung containing the JSR for the action
routine deleted (see Figure 8).
17-6 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 8: Revised S000_Sequence Routine Logic
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.
17.5. Working with Alias Tags
The upcoming exercise will demonstrate how many programs are structured Alias tag
wise similarly.
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
17.5.1. Exercise 1 Working with Alias Tags
1. Open ComTask17_1.
2. Schedule the program KA040, currently unscheduled.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-7
Figure 9: Unscheduled Programs Location
17-8 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
a. Right click on the MainTask.
b. Select Properties.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-9
Figure 11: The Properties Program / Phase Schedule Tab
f. Position the KA040 program between the KA030 and KA060 programs.
g. Click OK.
17-10 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 13: Close the Properties Window
3. Open the KA060 program tags select the Edit Tags tab.
Note: select Edit Tags tab to view Alias For column and to perform any tag edits.
Since the KA040 program is missing its Alias tags we will copy the Alias tags from
KA060 to get started. Some controller tags will need to be created to match the KA040
station. Some tags may not be useful for the KA040 station; they can be deleted from
the KA040 program tags.
4. Examine the alias tags.
5. Copy the alias tags to the computer’s clipboard.
a. Double click Sort the tags by the Alias For column.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-11
Figure 14: The KA060 Alias Tags
b. Click the square in front of the first Alias tag, Cell in this case.
c. Press the shift key and click the square in front of the last Alias tag, To
KA060R05 in this case.
d. Press ctrl +c or right click on the selection and press copy.
17-12 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 15: Alias Tags Selected for Copy
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-13
Figure 16: Pasting Tags
Many times the programs inside a project will have similar structure for their alias tags.
Some of the Alias tags will not require edits; these are items that are shared by other
programs. These tags will be at the cell level. The next figure highlights tags that
require no editing.
17-14 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 17: Cell level Controller Tags – Edit Not required
6. The Cell level Controller tags in the Alias For column in Figure 17 will not require
new base (Controller) tags because many programs use the tags so the
controller tags were not removed.
7. Create Controller Tags for the Alias Tags indicated in Figure 18; adjust Controller
tags to the KA040 station needs and name.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-15
Figure 18: Create Controller Tags for Alias Tags
17-16 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 19: Changing Scope
11. Double Click by the top of the Name column to sort by that column.
Note: Double Clicking again will reverse the sort order. The Name and the Alias For
column are the most commonly selected sorting orders.
Creating a Controller Tag has two main methods. The first method is to copy and paste
the Controller Tag and then rename it. The second method is to create a new tag with
the desired name then select the proper Data Type using the pull down menu in the
Data Type cell.
12. Select the Edit Tags tab.
13. Right Click the square in front of the tag name KA060.
14. From the drop down menu select Copy.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-17
Figure 21: Copy a Controller Tag
15. Right Click the square in the front of the new tag row.
16. Select Paste.
17-18 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 22: Pasting a Tag
Duplicate tag names are not permitted in the same program. RSLogix / Studio 5000 will
add a 1 to the end of the tag name.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-19
Figure 23: Pasted Tag – Duplicate
Now create a tag by entering its name and selecting its desired Data Type. Browse the
controller Tags and find the KA060 tags. Select a Controller tag to add for the KA040
station. Browse the KA060 Controller Tags and choose a tag to copy for station KA040.
18. Remember or write down the Tag Name and its Data Type; KA060HMI in this
case.
17-20 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 25: Tag Name and Data Type
19. Click the Name cell in the Tag Entry row; this is the last row in the editor.
20. Type the desired Tag name.
21. Click in the Data Type Cell.
22. Click the Select Data Type button to access the Select data Type dialog.
23. Select the desire Data Type and click OK.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-21
Figure 26: Creating a Controller Tag
24. Proceed with creating the Controller tags for KA040 using KA060 as a guide.
Use the tag copy or the create method to create the tags.
25. Look at the KA040 program in the Controller Organizer see Figure 28. Discover
what robots interact in the station’s sequence.
26. Three robots work in the station, KN020R04, KA050R01, and KA050R02.
Create program tags for each in this format ToKN020R04.
27. Open the Controller tags and create controller tags for the tags create in step 24
using this format KA040ToKN020R04. Use the data type zc_StaToRbt for each
tag.
28. Set the Alias For column in the KA040 program tags using the tags creted in
steps 24 & 25.
29. Job Data is used to track parts through stations and Material Handling (MH)
robots.
30. Create the following aliases:
17-22 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
JobdataNext KA050R01Jobdata zc_Jobdata
31. Create the Stop Modes which are used to manage various Stop types such as
with parts, without parts, do not allow part load as well as unload.
Program Tag Controller Tag Data Type
StopModes KA040StopModes zc_StationHold
PrevStopModes KN020R04StopModes zc_StationHold
NextStopModes KA050R01StopModes zc_StationHold
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-23
Figure 28: Controller Organizer – KA040 Program
End of Exercise 1
17-24 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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.
17.6.1. Exercise 2: Deleting the a Station Program (Optional)
1. Open ComTask17Exercise2.
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 29.
5. Click Ok, or Apply to accept the change.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-25
6. Locate the program in the controller organizer. It should be listed under
Unscheduled Programs. Refer to Figure 30.
7. Expand the tree for Station AA075.
17-26 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 30: AA075 in Controller Organizer
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-27
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 31.
17-28 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
11. Select from the pull down <none> for the “Main” under the “Assigned
Routines”. Refer to Figure 32.
11
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-29
17.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.
17.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 ComTask17Exercise4.
1. Open ComTask17Exercise3.
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.
17-30 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-31
7. Verify your program AA072 routines with Figure 33.
END OF EXERCISE 3
17-32 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 ComTask17Exercise4
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-33
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
17-34 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-35
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 36 represents the AA072 program tags edited through to Step 7.
17-36 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-37
10. Double-click all occurrences for each tag cross reference. This will navigate
to each use of the tag.
Tag Use
(Cross
reference)
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.
17-38 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-39
Figure 39: 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.
17-40 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 40: 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-41
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 41: “Alias For” Editing Chart
19. Verify the edits to AA072 program tags as shown in Figure 42.
At this point there are several tags that do not have a controller tag to “Alias For.”
17-42 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-43
I. Open the AA072 Program tags. Verify there are no tags with the large X
in front of them. Figure 43 shows how AA072 Program Tags should look
after creating the “Alias For” controller tags.
Figure 43: AA072 Program Tags after Creating the “Alias For” Controller Tag
17-44 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 44.
24. Click the pull down arrow and examine the main tag. The
PMCD.AA065B1Cell tag uses the uc_PMCObjectType_AA065B1Cell UDT.
See Figure 45.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-45
Figure 45: PMCD Locating the UDT to Edit
17-46 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
25. Open the User Defined folder under Data Types. See Figure 46.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-47
26. As shown in Figure 47, 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).
17-48 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
27. Right-click the square button preceding the AA070 member.
28. Select Insert Member. See Figure 48.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-49
1. Copy the AA070 member into the newly inserted row. See Figure 49.
2. Rename the Member Name and Description to AA072 for the new station.
17-50 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
3. Verify that your UDT looks like Figure 50.
4. Click Apply or OK to save the updated UDT.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-51
5. Open the AA072 Program tags.
6. Edit the “Alias For” column for station AA072 for the following tags, see
Figure 51:
A. PMCDSta
B. PMCDDFTSta
17-52 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-53
C. S065_AA070R02Drop
D. zZ112_EndGroup (31)
See Figure 53.
Delete
Figure 53: 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.
17-54 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
B. S070_CloseLHDockingClamps
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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-55
17.7.3. Exercise 5: Adding a New Action Routine (Optional)
17. Open ComTask17Exercise5
18. Right-click on the AA070 program in the logix organizer.
19. Click New Routine.
3
2
17-56 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
4
5
7
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-57
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
17-58 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 57: 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 58.
28. Type Control + C on the keyboard to copy all rungs.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-59
Figure 58: Logix Display of Selected Rungs
17-60 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
30. Right-click the end line and choose paste. The routine window should
appear with the last rung pasted as shown in Figure 59.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-61
15
17-62 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
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 63.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-63
Figure 63: Editing the Main Description for a Tag
17-64 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
24
25
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-65
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 65.
END OF EXERCISE 5
17-66 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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.
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 67: Close.Comp Rung Description
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-67
17.8.1. Exercise 6: Edits After Adding a New Routine (Optional)
1. Open ComTask17Exercise6.
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 68.
B. Click Replace.
17-68 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-69
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 70.
8. Edit the main description for tags C09 and C10. See Figure 71.
Figure 71: Editing the Main Description for Tags C09 and C10
17-70 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
9. Open AA070 CloseClamp1 routine.
10. Edit the Switch Internal rung 1.
A. Change all tags within the boxes in Figure 72 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 72.
9B
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-71
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 73.
12. Delete any remaining switch internal rungs (C03 and C04) after the new C10
switch internal rung.
17-72 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 74: 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
75.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-73
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 76.
17-74 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 78: 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 79.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-75
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 80.
17-76 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
27. Verify the Action Memory, Action Fault, and the Scroll List Not Visible rungs
against
28. Figure 81. Usually edits are not necessary.
Figure 81: Action Close Memory, Fault and SL Not Visible Rungs
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-77
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 82.
17-78 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
30. Edit the Switch Diagnostic Rung using the following table:
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-79
7 5
3 4
1 2
6
Switch
Diagnostic
8
Rung
Switch 11 12
Diagnostic
Bypass
Rung 9
10
Figure 84: Switch Diagnostic Rung and Bypass Bit Rung for Cylinder C09
33. Edit the lower Switch Diagnostic Bypass Rung shown in Figure 84 using the
chart below.
17-80 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 86.
Figure 86: 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
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-81
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 87, 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 87.
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.
17-82 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 88.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-83
39. Match the conditions in the Output Power Prompting rung to the conditions
on the Output Power rung as shown in Figure 89.
40. The Unlatch rung verify that the tags match the routine, Clamp1Close.PB,
Clamp1Close.Prompt, and Clamp1Close.OutPwrPrompt.
17-84 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
41. In Figure 91, 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.
END OF EXERCISE 6
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-85
17-86 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-87
17.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 92 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.
17.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.
17.11.2. Adding and Modifying Routines
As shown in Figure 92 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.
17-88 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 93 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-89
17.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 94 below.
17-90 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 95 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).
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-91
The rungs shown in Figure 96 and Figure 97 remained unchanged.
17-92 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The branch with the highlighted robot Seg[51] bit was added to the rung shown in
Figure 98 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-93
The rungs shown in Figure 99 and Figure 100 remained unchanged.
17-94 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 101 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-95
The rung shown in Figure 102 and Figure 103 remained unchanged.
17-96 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 104 shows the changes made to the message text for the Not Complete
prompt (see rung comment).
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-97
The rungs shown in Figure 105 remained unchanged.
Figure 105: HwEnable Prompt, Scroll List PB Unlatch and SL Line Found Rungs
17-98 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 106 represent the original Clamps1 open auto setup and
the revisions made to reposition the clamps when the robot has completed its initial
welding.
The rungs shown in Figure 107 illustrate the edits to the Clamps1 open clear setup.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-99
The edits to the robot prompt driver rung shown in Figure 108 reflects the changes
made to the Clamps1.Open.Clear rung.
17-100 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 109 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.
The rungs shown in Figure 110 and Figure 111 are configured similar to the initial
weld action. The difference is that the .ClrSetup rung is conditioned with Clamps1
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-101
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 110: Typical Set/Reset Robot WeldClr.Comp / .ProcComp & Auto Rungs
The rung comment shown in Figure 114 will be used to create the scroll list line text
for this new robot action step. The ‘Source’ of the MOV instruction in Figure 114
must be a unique number relative to this station program. For convenience, the
17-102 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-103
Figure 113: Typical WeldClr.Out, .Mem, .Flt Rungs
17-104 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Note that the conditioning logic for the prompt latch bits in the rung shown in
Figure 115 mimics the conditioning logic in the clear setup rungs of Figure 111.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-105
Note that the prompt message number selected in rung #15 shown in Figure 116
must be unique to this station program.
Figure 116: Typical Prompt, Do /Undo and Scroll List Logic Rungs
17-106 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 117.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-107
The highlighted portions of the rungs featured in Figure 117represent modifications
necessary to accommodate the additional robot segments resulting from the new
robot action step.
The rung shown in Figure 119 drives the bit used in the Clamps1 open clear setup.
See Figure 118 above.
The R01.Decision.0 bit is the robot decision code for general ‘continue’ commands.
The highlighted branch of the rung featured in Figure 120 was added to issue the
decision code to the robot following the clamp reposition.
17-108 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 120: R01.Decision.0 Rung
17.11.8. S010_MainCycle
The rungs shown in Figure 121 were modified to ensure the .ProcComp and .Comp
bits from both robot sequence steps were present.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-109
17.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.
Open the controller tag list. Perform a cross reference on the robot segment tags
recorded in Module 17.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 119). 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.
17-110 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-111
17.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.
17.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 123 provides a before (left side) and after (right
side) view of the program routine list.
17-112 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.12.5. Modifying the S000_Sequence Routine
Figure 124 and Figure 125 feature the rungs inserted into the S000_Sequence
routine providing the JSR instructions to call the new action routines.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-113
Figure 126: Typical .ToolRdy Rung
17-114 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The highlighted branch shown in Figure 127 was added to compliment the
conditional logic in the Weld1.ToolRdy rung.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-115
17.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 17.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 129 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.
17-116 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 129: Weld2 Complete and Tool Ready Rungs
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-117
Rung #3 conditioning logic, shown in Figure 130, 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 130: Weld2 Previous Process Complete and Guns Clear Rungs
17-118 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 132: Typical Prompting Driver Logic (Cont’d)
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-119
17.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 133 were the updating
of the action tags.
17-120 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
In rung #3 shown in Figure 134, 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 134: Typical 2nd Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-121
No changes are made to the rungs shown in Figure 135.
Figure 135: Typical 2nd Weld Init.Cmd, .Out and .InitWeld Rungs
17-122 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
No changes are made to the rungs shown in Figure 136.
Changes were made to rung #15 of Figure 137 to reflect the proper scroll list line
text and number for the new weld action.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-123
Figure 137: Typical 2nd Weld .Init.FLT, SL.NotVisible and SL Text Rungs
Changes to the rungs shown in Figure 138 included ensuring proper prompt
message numbers in rung #16 and the Weld2.ToolRdy and Weld2.Prompt
17-124 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
instructions in rung #17 replaced Weld1.ToolRdy and Weld1.Prompt,
respectively.
Figure 138: Typical 2nd Weld Prompt Message and Motion Prompt Rungs
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-125
The lower two branches for the operator light curtain were added to the rung shown
in Figure 139.
Figure 139: Typical 2nd Weld Output Power Prompt Driver Rungs
Figure 140: Typical 2nd Weld Do / Undo Unlatch and SL Found Rungs
17-126 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.12.10. Modifying the S050_OpenWGRetract Action Routine
The highlighted instructions shown in Figure 141 illustrate the changes made to the
WGRetract.Open.Auto, .Clear rungs.
The highlighted branch shown in Figure 142 was added for the Weld2 motion prompt
driver.
Figure 142: Typical Weld Gun Retract Motion Prompt Driver Rungs
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-127
17.12.11. Modifying the S063_ReturnWGSlide Action Routine
This is the second of two tooling action routines added (see Module 17.12.4 for
details about adding a tooling action). The rung shown in Figure 143 illustrates the
weld gun slide will return following process complete and the weld gun open and
clear.
Figure 144: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic
17-128 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.12.13. Modifying the S010_MainCycle Routine
The rungs shown in Figure 145 highlight the revisions made to the process complete
and steps complete logic to account for the additional weld action.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-129
17.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.
17-130 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 17.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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-131
Figure 147: Typical SCR3 Input Mapping Configuration
17-132 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 148: Typical SCR3 Output Mapping Configuration
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-133
In this particular case, the highlighted program tag shown in Figure 150 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.
The highlighted tags shown in Figure 151 represent the tags required for the new
weld action and SCR.
17-134 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-135
17.13.6. Modifying the S000_Sequence Routine
Figure 153 features the rung (#18) inserted into the S000_Sequence routine
providing the JSR instructions to call the new action routine.
17-136 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.13.7. Modifying the S040_1stWeld Rouitne
The rung shown in
Figure 154, Figure 155, and Figure 156 illustrate the edits made to the Weld1
complete logic for the additional weld gun.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-137
Figure 156: Modifications to Weld1.GunsClear Logic
17-138 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 157 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-139
Minor edits were required to the rungs shown in Figure 158. 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 158: Typical Weld Init.Auto, .Clear, .OutPwr and .InitAntiRpt Rungs
17-140 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The rungs featured in Figure 159 required no additional configuration other than the
weld controller tag for the highlighted instruction in rung #9 being renamed for the
correct SCR.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-141
The rungs featured in Figure 160 required no additional configuration other than the
weld controller tag for the highlighted instruction in rung #10 being renamed for the
correct SCR.
17-142 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
• 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-143
Figure 162: Typical Weld Do / Undo Prompt Message and Prompt Driver Logic
17-144 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 163: Typical PB Unlatch and SL.Found Latch Logic
Figure 164: Typical Weld Gun Valve Output and SCR .InitiateWeld Logic
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-145
The highlighted branches of the rungs shown in Figure 165 and Figure 166 were
added for the spare SCR commissioned for the new weld action.
17-146 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 166: Typical SCR .ContactorSaver (Cont’d) and .ResetSteppers Logic
The highlighted rung branches shown in Figure 168 were added for SCR 3.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-147
Figure 168: Typical SCR .WeldModeReq and .StaTryout Rungs
17-148 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The highlighted instruction of rung #18, shown in Figure 169, was added for SCR 3.
Rung #22 was added for the new weld gun.
Figure 169: Typical SCR End of Stepper Summation Weld Gun Open Timer Logic
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-149
17.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 17.13.
17-150 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The tags highlighted in Figure 172 represent the new tags required for the additional
weld action.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-151
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 174.
The correct ‘z33x_WS2AxSCR’ routine to use (Figure 175) will be determined by the
number of SCRs contained in the weld controller. The example used here is a single
SCR weld controller.
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.
17-152 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 17.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 17.12.4 or 17.13.4.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-153
17.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.
17-154 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 177.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-155
17.16.3. Adding the Robot Controller Scope Tags
Figure 178 and Figure 179 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.
17-156 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 180, Figure
181, Figure 182, and Figure 183.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-157
Figure 183: Safety Task B010_SafetyConfig Routine Modifications
17-158 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 184 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-159
These tags are copied from the reference project and edited per the application.
Figure 186 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.
17-160 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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 187 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-161
The rungs shown in Figure 188 represent the only modifications made to the
‘A000_Main’ routine as copied from the reference program. All of these JSRs
contained generic routine names.
17-162 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The rungs shown in Figure 189 thru Figure 192 represent the rungs requiring
modifications in the ‘B001_MapInputs’ routine as copied from the reference program.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-163
Figure 190: B001_MapInputs Routine Modifications (Cont’d)
17-164 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 191: B001_MapInputs Routine Modifications (Cont’d)
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-165
Figure 192: B001_MapInputs Routine Modifications (Cont’d)
The rungs shown in Figure 193 represent the rungs requiring modifications in the
‘B002_MapOutputs’ routine as copied from the reference program.
17-166 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The rungs shown in Figure 194 represent the rungs requiring modifications in the
‘B004_Parameters’ routine as copied from the reference program.
The rung shown in Figure 195 represents the rung requiring modifications in the
‘B010_Zones’ routine as copied from the reference program.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-167
The rung shown in Figure 196 represents the rung requiring modifications in the
‘X100_PMCRobot’ routine as copied from the reference program. Also refer to
Figure 197 for more information.
17-168 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 197: X100_PMCRobot Routine Modifications
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-169
17.17. Removing a Robot
17-170 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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’.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-171
17.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.
17-172 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 200.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-173
Figure 201 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 202 below).
The second part of this setup process will link the remote Ethernet module just
created to the controller in the same chassis.
17-174 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 203 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.
When the ‘OK’ button is pressed, the module will appear in the controller I/O
Configuration (see Figure 203, 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-175
Figure 204 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.
17-176 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
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 205 below for more
details.
The ‘consumed’ tags are created in the same manner as the ‘produced’ but the tag
properties are configured differently.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-177
Figure 206 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 206.
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 207 below for more details.
17-178 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 207: 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-179
17.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 208: Typical ‘Consumed’ Tag Mapping – Cell Program, B001_MapInputs Routine
17-180 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 209: Typical Standard ‘Consumed’ Tag Mapping – Station Program, B001_MapInputs Routine
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-181
Figure 210: Typical Standard ‘Consumed’ Tag Mapping – Station Program, B001_MapInputs Routine (Cont’d)
Figure 211: Typical Standard ‘Consumed’ Tag Mapping – Cell Program, C001_InterlockStatus Routine
17-182 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 212: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics – Cell Program,
C001_InterlockStatus Routine
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-183
Figure 213: Typical Safety ‘Consumed’ Tag Data used for Communication Diagnostics – Cell Program,
C001_InterlockStatus Routine (Cont’d)
17-184 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 214: Typical Safety ‘Consumed’ Tag Data used for E-stop Monitoring – Cell Safety Program, B010_SafetyConfig
Routine
Figure 215: Typical Standard ‘Produced’ Tag Data Mapping – Station Program, B002_MapOutputs Routine
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-185
Figure 216: Typical Standard ‘Produced’ Tag Data Mapping – Station Program, B002_MapOutputs Routine (Cont’d)
17-186 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
Figure 217: Typical Safety ‘Produced’ Tag Data Mapping – Cell Safety Program, B002_MapOutputs Routine
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-187
17.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.
17-188 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
The rungs shown in Figure 219 are typical of the ‘Jobdata.Valid’ outputs found in the
‘J001_JobDataRF’ and ‘J001_JoDataShiftReg routines, respectively. The highlighted
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.
The rung shown in Figure 220 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.
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-189
The rung shown in Figure 221 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.
17-190 © 2015 General Motors Company. All Rights Reserved Rev. 6.0
17.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?
Rev. 6.0 © 2015 General Motors Company. All Rights Reserved 17-191