You are on page 1of 94

Federal Mogul, Frankfort

2018 Automated Trimmer

Specifications
And
Instruction Manual

7/15/2019 Rev. 1.0


2019 Stoeller Automation Inc
2 McKinley Ave, Frankfort, IN 46041
Phone: 1(765)654-6195 Fax: 765.654.6320

2
Table of Contents
Introduction………………....…………………………………….....…. 4
Configuration Overview……………………………………………….. 5
Main Electrical Panel, PLC, HMI, and Robots
System Layout…………………………………………………………..7
HMI Operations…………………………………………………………9
Main Screen…………………………………………………9
All Stop Screen…………………………………………….12
E-Stop Screen……………………………………………...13
Pallet Screen……………………………………………….14
Menu Bar…………………………………………………..15
Manual Controls Screen…………………………………...16
VFD Screen………………………………………………..17
Outputs Screen……………………………...…………......18
Left Side Servos Screen…………………...………………24
Right Side Servos Screen….…....…………..……………..28
Left Knife Setup Screen………………………………...…33
Right Knife Setup Screen……………………………...…..37
Robot Commands Screen………………………………….41
Inputs Screen 1…………………………………………….45
Inputs Screen 2…………………………………………….46
Safety Screen………………………………………………47
Setup Screen……………………………………………….49

3
PLC Operations………………………………………………………...50
Load Robot (R1) Operations…………………………………………...61
Unload Robot (R2) Operations………………………………………...78
Robots and PLC Address Nomenclature………………………………91
Recommended Spare Parts…………………………………………….92

Introduction
The 2018 Automated Trimmer is a system created to optimize the
mass production of part 209012RG. An operator places 16 parts at once
onto a pallet resting on the pallet conveyor. With the system in
automatic mode, the start pushbutton is pressed and the newly loaded
pallet indexes forward. The parts are cooled by two fans as the pallet
travels. Once the pallet reaches the unload location, a pair of Mitsubishi
robots begin moving the parts. The load robot moves a part from the
pallet to the left or right collet, alternating with each new part. After the
robot releases the part, a VFD driven motor turns on spinning the collet
and part. Two servo driven slides move together to place the cutting
assembly in the set location. The cutting assembly consists of two
knifes. One knife cuts the inner diameter and one knife cuts the outer
diameter of the part at the same time. Once the unwanted flash is cut
from the part, the slides retract and the flash falls down a shoot leading
to a trash bin. The unload robot removes the cut part from the left or
right collet and places it on the inspection conveyor. The inspection
conveyor drops the part onto a table where a second operator measures
and packages the finished parts.

4
Configuration Overview

Main Electrical Panel


This system contains a 60 by 60-inch steel electrical enclosure that is 12
inches deep. The enclosure houses a Mitsubishi iQ-R series PLC, six
Mitsubishi MR-J4-10GF-RJ servo drives, six Mitsubishi A820-0007-E1-
N6 variable frequency drives, a Wago 787-732 24VDC power supply, a
Wieland SNO 4083KM-A safety relay, a Netgear 24 port ethernet
switch, and other various electrical components. Note, there is also a 24
by 24-inch steel electrical enclosure serving as a junction box mounted
inside of the main cell.

PLC
The 2018 Automated Trimmer utilizes Mitsubishi`s iQ-R series
components. The PLC configuration, from left to right, is as follows:
R61P power supply, R04CPU, RX41C4 32-point input card (x2),
RY10R2 16-point output card (x3), all of which plug into the base unit
R38B. GXWorks3 is the programming software.

HMI
This system uses a Mitsubishi GT25, 10.1-inch color touchscreen,
GT2510-WXTBD. GT Designer 3 is the programming software.

Robots
The 2018 Automated Trimmer is composed of two RV-FR Mitsubishi
robots. Their specific model number is RV4FRLD. The first robot,
labeled R1, is the load robot and is responsible for moving parts from

5
the pallet conveyor to either of the two collets. The second robot, labeled
R2, is the unload robot and is responsible for removing parts from either
of the two collets and placing them onto the inspection conveyor. The
robot controllers are located on the top of the main cell, closest to the
main electrical panel. One teach pendant is available for use. The PC
programing software is RT Toolbox3.

6
System Layout

Motor and Flash Cage

Main Electrical Enclosure

Inspection Conveyor
R2

R1

HMI
Main Cell

Pallet
Conveyor

7
Left X
Right X

Left Y Right Y

Left Brush
Right Brush

Left Collet

Right Collet

8
HMI Operations
Upon starting the machine, the following screen will be displayed on the
HMI.
Main Screen

This is the main screen and contains all of the functions needed to begin
operations. On the far-left hand side of the screen, the tall dark grey
rectangle, is the menu bar. The menu bar is displayed in the same place
on every screen and contains push buttons that allow the user to navigate
through the system. See Menu Bar for details
Just to the right of the menu bar is a list of indicator lights that let the
operator know what components are powered on. Currently, all of the
indicators are in there off state. Once a component is powered on, the
indicator light associated with that component will turn bright green.
Every indicator light must be green before automatic mode can be ran.

9
The PRE-OP button is a quick and easy way to turn on the list
of indicator lights. When PRE-OP is pressed, all six servo motors, all six
variable frequency drives, and both of the robot’s servos will power on.
When the system is running in automatic mode, the PRE-OP button will
not be available

The HOME ALL button is only available in manual mode.


When all of the before mentioned components are powered on, pressing
HOME ALL will send every component back to its home position. This
should be done at the time of start-up and before entering/reentering
automatic mode.

This is the manual/automatic mode selection


button. The label seen on the button is the current mode the machine is
in. Pressing MAN MODE will put the machine into AUTO MODE and
start the automatic process. Pressing AUTO MODE will put the machine
back into manual mode but the machine will continue to run until it
reaches a proper stopping point. This is the best method to stop the
machine and should be used for normal operations. This button will not
be available if the KNIFE CHANGE button has been pressed. Once the
HOME ALL button has been pressed and all of the systems components
are homed, the MAN/AUTO MODE button will reappear.

The CLEAN OUT button is only available in manual mode.


This button is used for removing parts from the collets. When this button

10
is pressed, the unload robot will move to each collet in turn and place
any remaining parts onto the inspection conveyor.

The KNIFE CHANGE button is only available in manual


mode. When this button is pressed, the unload robot will move to the
front of the cell and the knife assemblies will extend. This allows ease of
access to the knifes. After the knifes have been changed, press HOME
ALL. While the system is in the KNIFE CHANGE state, the HOME
ALL button will be the only button available on the screen.

This button is only available in manual mode. Pressing VIEW


PALLET will take you to the pallet screen. See Pallet Screen for details

This button will reset the parts counter numerical display to


zero.

This is the parts counter numerical display. The


number shown represents the number of parts that have traveled down
the inspection conveyor.

Pressing this button will stop the movement of all components


inside the main cell of the trimmer without losing power or
functionality. A pop-up window will be displayed over the main screen
with instructions on what to do next. See All Stop Screen for details

11
This button functions like but is NOT a true E-Stop. Pressing it
will stop any moving components and turn off the servos. However, it
does not remove any physical connections and is controlled by the plc.
All Stop Screen

When ALL STOP is pressed, this pop-up window will be displayed over
the main screen. Simply press PRE-OP, press HOME ALL, and close
the pop-up window by pressing the x in the top right corner. Failure to
do so will inhibit the machines ability to operate.

12
E-Stop Screen

When an e-stop is pressed this pop-up screen will be displayed over the
main screen. Press each button in the order indicated to reset the
machine and close the window by pressing the x in the top right corner.

13
Pallet Screen

This is the pallet screen and is a graphical representation of the pallet


currently in use. This screen gives the operator the ability to tell the
robot to begin the automatic process at any starting point. Press the
numbered button of where to begin picking up parts and then press

Once the machine is put back into automatic mode, the robot
will begin picking up parts starting at the position selected.

14
Menu Bar
This is the menu bar and is displayed on the far-left hand
side of the HMI on every screen. The menu bar gives the
operator the ability to navigate through the HMI program and
control the system. Each button will take the operator to a
different page within the HMI.

15
Manual Controls Screen

Pressing in the Menu Bar will bring you to this screen. This is
a directory that will take you to one of six different pages. Each of these
pages have functions that can be used while the machine is in manual
mode.

16
VFD Screen

Press in the Menu Bar and then press on the


Manual Controls Screen to open the VFD Screen. This screen gives
the operator the ability to set and operate each of the six VFDs
individually while in manual mode. First, set the command speed of the
desired VFD by pressing the numbers inside of the numerical input box
associated with that VFD. A keypad will pop-up on the display. Type
the desired speed and press enter.

Next, press either to move forward or to move in


reverse. The directional button pressed will turn green and the motor
will begin running. The motor will continue to run until the operator
presses the green highlighted button again, deselecting the direction.

17
Note, make sure that all of the directional control buttons are off (dark
grey) before returning the machine to automatic mode.

The left and right spindle motors have this button. It functions
as an enable/disable for the spindle in the event of malfunctioning
equipment.

Output Screen

Press in the Menu Bar and then press on the


Manual Controls Screen to open the Output Screen. The operator may

18
also press in the Menu Bar and the button on
Input Screen 1 and Input Screen 2 to reach this screen.
The Output Screen gives the operator the ability to see the status of and
control each output device individually while in manual mode. This
picture shows everything in its off, default state. Before putting the
machine back into automatic mode, make sure all of the push buttons are
off, dark grey. Failure to do so could cause the machine to malfunction.

Pressing this button will take you to Input Screen 1.

Pressing this button will take you to Input Screen 2.

Pressing this button will extend the left brush cylinder and
turn the button green. The cylinder will remain extended until the button
is pressed again.

Pressing this button will turn on the brush`s servo causing the
brush to rotate. The brush will continue to rotate until this button is
pressed again, turning the servo off.

Pressing this button will extend the right brush cylinder and
turn the button green. The cylinder will remain extended until the button
is pressed again.

This button controls the inspection (unload) conveyor. When


it is pressed, the button will turn green and the conveyor will index. It
will continue to index until the button is pressed again.

19
This button actuates the left collet. When it is off, dark grey, a
part can be placed on or taken off of the collet. Pressing this button will
expand the collet and turns the button green. Expanding the collet is
what holds a part onto the spindle. Do not try to take a part off of or put
a part onto the collet while it is expanded (green).

This button will rotate its associated collet in the forward


direction. The collet will continue to rotate until this button is pressed
again.

This button will rotate its associated collet in the reverse


direction. The collet will continue to rotate until this button is pressed
again.

This button actuates the right collet. When it is off, dark grey,
a part can be placed on or taken off of the collet. Pressing this button
will expand the collet and turns the button green. Expanding the collet is
what holds a part onto the spindle. Do not try to take a part off of or put
a part onto the collet while it is expanded (green).

This button will open and close the gripper mounted on the
load robot, R1. When the button is dark grey the gripper is open. Once
the button is pressed, the gripper closes and the button turns green.

This button will open and close the gripper mounted on the
unload robot, R2. When the button is dark grey the gripper is open. Once
the button is pressed, the gripper closes and the button turns green.
20
This button will extend and retract the two small cylinders
that are mounted on the load gripper. While the button is dark grey, the
cylinders are retracted.

This button turns the two fans mounted on the pallet


conveyor on and off. A dark grey button indicates that the fans are off.

, ,
These three buttons work together to control the unload end of the pallet
conveyor. The unload end of the pallet conveyor is on the inside of the
main cell. The robots pick up parts from this end of the conveyor.

By default, the brake is applied to the unload cylinder when


it is in its off state. This means the operator must first press the unload
brake button if they wish to raise or lower the unload side of the pallet
conveyor. The indicator light tells the operator which state the brake is
currently in. Once the unload side is in the desired location press the
green unload brake button again to reengage the brake.

The indicator light below the unload up button tells the


operator if the unload side is in the up position. The indicator light will
turn green only when the unload side is fully raised. Pressing the unload
up button will raise the unload side of the conveyor and turn the button
green. If the unload side does not raise, check to make sure the unload
brake indicator light says disengaged and make sure that the unload

21
down button is off (dark grey). Once it is in the up position, engage the
brake and then deselect the unload up button.

The indicator light below the unload down button tells the
operator if the unload side is in the down position. The indicator light
will turn green only when the unload side is fully lowered. Pressing the
unload down button will lower the unload side of the conveyor and turn
the button green. If the unload side does not lower, check to make sure
the unload brake indicator light says disengaged and make sure that the
unload up button is off (dark grey). Once it is in the down position,
engage the brake and then deselect the unload down button.

, ,
These three buttons work together to control the load side of the pallet
conveyor. The load side of the conveyor is farthest from the robots and
has a START/RUN push button mounted on its end.

By default, the brake is applied to the load cylinder when it


is in its off state. This means the operator must first press the load brake
button if they wish to raise or lower the load side of the pallet conveyor.
The indicator light tells the operator which state the brake is currently in.
Once the load side is in the desired location press the green load brake
button again to reengage the brake.

22
The indicator light below the load up button tells the
operator if the load side is in the up position. The indicator light will turn
green only when the load side is fully raised. Pressing the load up button
will raise the load side of the conveyor and turn the button green. If the
load side does not raise, check to make sure the load brake indicator
light says disengaged and make sure that the load down button is off
(dark grey). Once it is in the up position, engage the brake and then
deselect the load up button.

The indicator light below the load down button tells the
operator if the load side is in the down position. The indicator light will
turn green only when the load side is fully lowered. Pressing the load
down button will lower the load side of the conveyor and turn the button
green. If the load side does not lower, check to make sure the load brake
indicator light says disengaged and make sure that the load up button is
off (dark grey). Once it is in the down position, engage the brake and
then deselect the load down button.

This button will retract the stopper at the end of the upper
conveyor that is inside the pallet conveyor. The stopper will only retract
while the operator holds this button.

This button will retract the stopper in the middle of the upper
conveyor that is inside the pallet conveyor. The stopper will only retract
while the operator holds this button.

23
This button will retract the stopper in the middle of the lower
conveyor that is inside the pallet conveyor. The stopper will only retract
while the operator holds this button.

This button will retract the stopper at the end of the lower
conveyor that is inside the pallet conveyor. The stopper will only retract
while the operator holds this button.
Left Side Servos Screen

Press in the Menu Bar and then press on the


Manual Controls Screen to open the Left Side Servos Screen.
The Left Side Servos Screen contains the controls and displays the
status of the three servos associated with the left side of the system.

24
This button will turn on and off the servo that controls
left X. Once pressed, the indicator to the right of the button should turn
green indicating that the servo is powered on.

This button will turn on and off the servo that controls
left Y. Once pressed, the indicator to the right of the button should turn
green indicating that the servo is powered on.

This button will turn on and off the servo that controls
the left brush`s rotation. Once pressed, the indicator to the right of the
button should turn green indicating that the servo is powered on.

This value shows the current position (in mm) of its


associated servo.

This value shows the current speed (in RPM) of its


associated servo.

When in manual mode, pressing HOME MODE will change


the mode type of the associated servo to home. The servo will not begin
to move.

25
After HOME MODE has been pressed, pressing START
HOME will fully retract the slide associated with the servo. If HOME
MODE has not been pressed, START HOME will not function.

The HOME COMPLETE indicator light will turn on once


it`s associated slide is fully retracted and resting at a position of 0.

The DURING HOME indicator light will turn on after


START HOME has been pressed and stays on until the slide reaches its
home position, 0.

When in manual mode, pressing JOG MODE will change the


mode type of the associated servo to jog. Selecting JOG MODE gives
the operator the ability to move a slide manually.

This button gives the operator


the ability to choose the jog direction of a slide. The direction that is
currently displayed on the button will be the direction the slide moves.
(Forward=Extend, Reverse=Retract) Ensure the correct direction is
selected before pressing START JOG.

Before pressing START JOG the operator must first press JOG
MODE, select the jog direction, and input a JOG SPEED. Once those
three things have been completed, pressing START JOG will index its
associated slide. The slide will continue to index while START JOG is
pressed. Once the button is released, the slide will stop indexing.

26
Before START JOG will function, the operator must
input a jog speed. To input a JOG SPEED, press on the numbers inside
of the numerical input. A key window will be displayed. Type in a
speed, in RPM, between the values of 0 and 30. Trying to input a value
less than 0 or greater than 30 will not be accepted and an error message
will be displayed on the screen.

Another JOG MODE function is the MOVE TO


command. If the operator knows what position (in mm) they want a slide
to move to, the MOVE TO command can be used. The value put into the
MOVE TO numerical input is how far from home the slide will move.
To input a value, press the numbers inside of the numerical input box. A
key window will be displayed. Input the desired position and press enter.
Next press the MOVE button associated with the slide. See the
associated MOVE button limits below.

Once a value has been put into the associated MOVE TO


numerical input, pressing this button will move left X to that value. The
MOVE TO input value must be within 0 - 200 mm. Values outside of
that range will not be accepted and an error message will be displayed
on the screen.

Once a value has been put into the associated MOVE TO


numerical input, pressing this button will move left Y to that value. The
MOVE TO input value must be within 0 - 25 mm. Values outside of that
range will not be accepted and an error message will be displayed on the
screen.

27
The MOVE COMPLETE indicator light will turn on once
the slide has reached the set MOVE TO value.

The DURING MOVE indicator light will turn on after a


MOVE button has been pressed and stays on until the slide reaches the
set MOVE TO value.

Pressing this button will change the mode type of the associated
servo to point table. All of the servos must be in point table mode to run
in automatic mode.

Pressing this button will clear the errors from all six servo
controllers. The servos will be turned off and must be turned back on.
Right Side Servos Screen

28
Press in the Menu Bar and then press on the
Manual Controls Screen to open the Right Side Servos Screen.
The Right Side Servos Screen contains the controls and displays the
status of the three servos associated with the right side of the system.

This button will turn on and off the servo that controls
right X. Once pressed, the indicator to the right of the button should turn
green indicating that the servo is powered on.

This button will turn on and off the servo that controls
right Y. Once pressed, the indicator to the right of the button should turn
green indicating that the servo is powered on.

This button will turn on and off the servo that controls
the right brush`s rotation. Once pressed, the indicator to the right of the
button should turn green indicating that the servo is powered on.

This value shows the current position (in mm) of its


associated servo.

This value shows the current speed (in RPM) of its


associated servo.

29
When in manual mode, pressing HOME MODE will change
the mode type of the associated servo to home. The servo will not begin
to move.

After HOME MODE has been pressed, pressing START


HOME will fully retract the slide associated with the servo. If HOME
MODE has not been pressed, START HOME will not function.

The HOME COMPLETE indicator light will turn on once


it`s associated slide is fully retracted and resting at a position of 0.

The DURING HOME indicator light will turn on after


START HOME has been pressed and stays on until the slide reaches its
home position, 0.

When in manual mode, pressing JOG MODE will change the


mode type of the associated servo to jog. Selecting JOG MODE gives
the operator the ability to move a slide manually.

This button gives the operator


the ability to choose the jog direction of a slide. The direction that is
currently displayed on the button will be the direction the slide moves.
(Forward=Extend, Reverse=Retract) Ensure the correct direction is
selected before pressing START JOG.

Before pressing START JOG the operator must first press JOG
MODE, select the jog direction, and input a JOG SPEED. Once those
30
three things have been completed, pressing START JOG will index its
associated slide. The slide will continue to index while START JOG is
pressed. Once the button is released, the slide will stop indexing.

Before START JOG will function, the operator must


input a jog speed. To input a JOG SPEED, press on the numbers inside
of the numerical input. A key window will be displayed. Type in a
speed, in RPM, between the values of 0 and 30. Trying to input a value
less than 0 or greater than 30 will not be accepted and an error message
will be displayed on the screen.

Another JOG MODE function is the MOVE TO


command. If the operator knows what position (in mm) they want a slide
to move to, the MOVE TO command can be used. The value put into the
MOVE TO numerical input is how far from home the slide will move.
To input a value, press the numbers inside of the numerical input box. A
key window will be displayed. Input the desired position and press enter.
Next press the MOVE button associated with the slide. See the
associated MOVE button limits below.

Once a value has been put into the associated MOVE TO


numerical input, pressing this button will move right X to that value.
The MOVE TO input value must be within 0 - 200 mm. Values outside
of that range will not be accepted and an error message will be displayed
on the screen.

Once a value has been put into the associated MOVE TO


numerical input, pressing this button will move right Y to that value.
The MOVE TO input value must be within 0 - 25 mm. Values outside of
31
that range will not be accepted and an error message will be displayed
on the screen.

The MOVE COMPLETE indicator light will turn on


once the slide has reached the set MOVE TO value.

The DURING MOVE indicator light will turn on after


a MOVE button has been pressed and stays on until the slide reaches the
set MOVE TO value.

Pressing this button will change the mode type of the associated
servo to point table. All of the servos must be in point table mode to run
in automatic mode.

Pressing this button will clear the errors from all six servo
controllers. The servos will be turned off and must be turned back on.

32
Left Knife Setup Screen

Press in the Menu Bar and then press on the


Manual Controls Screen to open the Left Knife Setup Screen.
The Left Knife Setup Screen gives the operator the ability to control
and modify the cutting operations for the left side of the system. Left X
refers to the vertically mounted, 200mm stroke slide that moves the
knife assembly up and down. Left Y refers to the horizontally mounted,
25mm stroke slide that moves the knife assembly toward and away from
the left collet. These two slides work together in a step by step process to
cut the unwanted flash off of a part. The step by step process is as
follows:
1. Both the left X and left Y begin the process in the PARK
POSITION.

33
2. Left X extends toward the collet to the ADVANCE POSITION.
The ADVANCE POSITION places the knife assembly over the
collet with the inner diameter cutting knife within the inner circle
of the part. The knife assembly should straddle the part.
3. Left Y extends toward the collet to the TRIM POSITION. Left
Y`s TRIM POSITION decides the depth at which the part is cut. If
the height measurement of the part`s lip is incorrect, this is the
setting to adjust.
4. Left X extends to its TRIM POSITION. The final TRIM
POSITION puts the tip of the knifes against the part as close as
possible without actually touching the part.
5. Left X extends 3mm to the DASH POSITION. This movement
cuts the part.
6. Left Y retracts to the PARK POSITION.
7. Left X retracts to the PARK POSITION.

This value displays how far its associated slide is


extended.

Press the numbers inside of the numerical input and a


key window will be displayed. Input the desired speed, in RPM, and
press enter. The slide associated with this input will travel at that speed
to and from every position with the exception of left X dash. Left X dash
has its own separate speed that must be set.

This is the position input box. Press the numbers inside


of the numerical input and a key window will be displayed. Input the
desired position, in mm, and press enter. The slide will not move to this
position until the associated MOVE button is pressed.

34
This is the taught position box that is saved in the PLC.
When the system is in automatic mode, the associated slide will move to
this value when the associated position is called in the PLC program.

This is the taught dash speed box that is saved in the


PLC. When the system is in automatic mode, this is the speed that left X
will travel from the TRIM POSITION to the DASH POSITION. Keep in
mind that this is the movement that cuts the part; set the speed
accordingly.

Pressing this button will move the value in the (white)


park position box to the (red) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


advance position box to the (red) taught position box and store the value
in the PLC. The next time the system is ran, the associated slide will
move to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


trim position box to the (red) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


dash position box to the (red) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

35
Pressing this button will move the value in the (grey) dash
speed box to the (red) taught speed box and store the value in the PLC.
The next time the system is ran, the associated slide will move from the
TRIM POSITION to the DASH POSITION at that speed. Keep in mind
that this movement is what cuts the part; set the speed accordingly.

Pressing this button will move the left X slide to the value
set in the (white) park position input box.

Pressing this button will move the left X slide to the value
set in the (white) advance position input box.

Pressing this button will move the left X slide to the value
set in the (white) trim position input box.

Pressing this button will move the left X slide to the value
set in the (white) dash position input box. If the slide does not move,
make sure there is a value put into the (grey) dash speed input box.

Pressing this button will move the left Y slide to the value
set in the (white) park position input box.

Pressing this button will move the left Y slide to the value
set in the (white) trim position input box.

36
Right Knife Setup Screen

Press in the Menu Bar and then press on the


Manual Controls Screen to open the Right Knife Setup Screen.
The Right Knife Setup Screen gives the operator the ability to control
and modify the cutting operations for the right side of the system. Right
X refers to the vertically mounted, 200mm stroke slide that moves the
knife assembly up and down. Right Y refers to the horizontally mounted,
25mm stroke slide that moves the knife assembly toward and away from
the right collet. These two slides work together in a step by step process
to cut the unwanted flash off of a part. The step by step process is as
follows:
1. Both the right X and right Y begin the process in the PARK
POSITION. The PARK POSITION is always 0mm which is the
same as being HOME.
37
2. Right X extends toward the collet to the ADVANCE POSITION.
The ADVANCE POSITION places the knife assembly over the
collet with the inner diameter cutting knife within the inner circle
of the part. The knife assembly should straddle the part.
3. Right Y extends toward the collet to the TRIM POSITION. Right
Y`s TRIM POSITION decides the depth at which the part is cut. If
the height measurement of the part`s lip is incorrect, this is the
setting to adjust.
4. Right X extends to its TRIM POSITION. The final TRIM
POSITION puts the tip of the knifes against the part as close as
possible without actually touching the part.
5. Right X extends 1.5mm to the DASH POSITION. This movement
cuts the part.
6. Right Y retracts to the PARK POSITION.
7. Right X retracts to the PARK POSITION.

This value displays how far its associated slide is


extended.

Press the numbers inside of the numerical input and a


key window will be displayed. Input the desired speed, in RPM, and
press enter. The slide associated with this input will travel at that speed
to and from every position with the exception of right X dash. Right X
dash has its own separate speed that must be set.

This is the position input box. Press the numbers inside


of the numerical input and a key window will be displayed. Input the
desired position, in mm, and press enter. The slide will not move to this
position until the associated MOVE button is pressed.

38
This is the taught position box that is saved in the PLC.
When the system is in automatic mode, the associated slide will move to
this value when the associated position is called in the PLC program.

This is the taught dash speed box that is saved in the


PLC. When the system is in automatic mode, this is the speed that right
X will travel from the TRIM POSITION to the DASH POSITION. Keep
in mind that this is the movement that cuts the part; set the speed
accordingly.

Pressing this button will move the value in the (white)


park position box to the (blue) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


advance position box to the (blue) taught position box and store the
value in the PLC. The next time the system is ran, the associated slide
will move to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


trim position box to the (blue) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

Pressing this button will move the value in the (white)


dash position box to the (blue) taught position box and store the value in
the PLC. The next time the system is ran, the associated slide will move
to the new set value when it is called in the PLC program.

39
Pressing this button will move the value in the (grey) dash
speed box to the (blue) taught speed box and store the value in the PLC.
The next time the system is ran, the associated slide will move from the
TRIM POSITION to the DASH POSITION at that speed. Keep in mind
that this movement is what cuts the part; set the speed accordingly.

Pressing this button will move the right X slide to the value
set in the (white) park position input box.

Pressing this button will move the right X slide to the value
set in the (white) advance position input box.

Pressing this button will move the right X slide to the value
set in the (white) trim position input box.

Pressing this button will move the right X slide to the value
set in the (white) dash position input box. If the slide does not move,
make sure there is a value put into the (grey) dash speed input box.

Pressing this button will move the right Y slide to the value
set in the (white) park position input box.

Pressing this button will move the right Y slide to the value
set in the (white) trim position input box.

40
Robot Commands Screen

Press on the Menu Bar to access the Robot Commands


Screen.
The Robot Commands Screen gives the operator the ability to control
and monitor the load (R1) and unload (R2) robots.

This button will turn on and off the associated robot`s servos. The
servos should be turned on before putting the system into automatic
mode.

41
This button will turn on and off operation enable. Operation
enable should be turned on before putting the system into automatic
mode. Operation enable must be turned off in order to use the robot`s
teach pendant or computer program.

This button will turn on and off auto enable. Auto enable should
be turned on before putting the system into automatic mode.

This button will enable the program number input box. The
program select button should be turned off (as shown) before running
the system in automatic mode.

Press on the numbers inside of the numerical input and


a key window will be displayed. Type in the desired program number
and press enter.

Pressing this button will make the associated robot begin


running the program number that is entered in the program number
numerical input box.

Pressing this button will stop its associated robot while it is


running a selected program (number). Pressing this button will not stop a
robot at any other time.

42
Pressing this button will clear the errors from the associated
robot. When there is an error, the robot`s controller will set an audible
alarm and this button will flash a bright yellow.

Pressing this button will clear the program number and put its
associated robot into a clean state of operation.

This light indicates that the load robot (R1) has


operation enable on or off. To operate this robot with a teach pendant or
computer, operation enable should be turned off. This light should be
bright green before putting the system into automatic mode.

This light indicates that the unload robot (R2) has


operation enable on or off. To operate this robot with a teach pendant or
computer, operation enable should be turned off. This light should be
bright green before putting the system into automatic mode.

This light indicates that the load robot (R1) is


ready to run in automatic mode. This light should be bright green before
putting the system into automatic mode.

This light indicates that the unload robot (R2) is


ready to run in automatic mode. This light should be bright green before
putting the system into automatic mode.

43
This light indicates that its associated robot is
executing a program.

This light indicates that its associated robot has


an error. If this light turns on, ERROR RESET must be pressed before
the robot will operate.

This light indicates that its associated robot has


been stopped internally. The robot has an error and an e-stop has been
pressed are common reasons why STOP IN would be triggered.

This light indicates that its associated robot is still


in a STOP IN situation.

This light indicates that its associated robot has


been stopped by an external source. For this system, pressing ALL
STOP or AUTO CYCLE STOP will trigger this condition.

This light indicates that its associated robot is still


in a STOP 2 condition.

This light indicates that its associated robot has


its servo`s powered off. This light must be off (as shown) for the robot to
operate.

44
Input Screen 1

Press on the Menu Bar to access Input Screen 1.


Input Screen 1 gives the operator the ability to observe which inputs are
on or off in the PLC.

Pressing NEXT will take you to Input Screen 2.

Pressing PREVIOUS will take you to the Output Screen.

45
Input Screen 2

Press on the Menu Bar and on Input Screen 1 to


get to Input Screen 2.
Input Screen 2 gives the operator the ability to observe which inputs are
on or off in the PLC.

Pressing NEXT will take you to the Output Screen.

Pressing PREVIOUS will take you to Input Screen 1.

46
Safety Screen

Press on the Menu Bar to access the Safety Screen.


The Safety Screen is used to let the operator know when and where a
safety component has been activated. This screen is for monitoring
purposes only and does not have any functional controls.

When an e-stop is off, system ok to run, its


indicator light will be a dark red circle seen on the left. If the e-stop is
pressed, the indicator light turns on and the system freezes. When an e-
stop is pressed, the E-Stop Screen will be displayed over the Main
Screen. See E-Stop Screen for details.

47
There are two door switches on this
system and they function the same way. When the door is closed, the
door switch indicator light will be green showing that it is safe to run the
system. If a door is open, its indicator light will be red and the system
will not run. The left and right doors of the main cell must be closed and
remain closed for the system to operate. The motor and flash cage door
may be opened and closed while the system is running.

There are two safety mats on this system


and they function the same way. When there is not any weight on the
safety mat, its indicator light will be green and the system will run
normally. If a weight is applied to a safety mat, its indicator light will
turn red and the load end of the pallet conveyor will not function until
the weight is removed.

48
Setup Screen

Press on the Menu Bar to access the Setup Screen.


The Setup Screen gives the operator the ability to enable and disable
either the left brush, the right brush, and/or one side of the machine.

If the X is displayed, then its associated component(s) are


disabled.

If the check mark is displayed, then its associated component(s)


are enabled.

49
PLC Operations

GLOBAL LABELS, 2018 AUTOMATED


TRIMMER
Label Name Data Type Initial Assigned
Value
UNLOAD_UP_HMI BOOL
UNLOAD_DOWN_HMI BOOL
UNLOAD_BRAKE_HMI BOOL
LOAD_BRAKE_HMI BOOL
LOAD_DOWN_HMI BOOL
LOAD_UP_HMI BOOL
LOWER_EXIT_HMI BOOL
LOWER_MIDDLE_HMI BOOL
UPPER_EXIT_HMI BOOL
COOLING_FANS_HMI BOOL
LEFT_COLLET_HMI BOOL
RIGHT_COLLET_HMI BOOL
UNLOAD_GRIPPER_HMI BOOL
LOAD_GRIPPER_HMI BOOL
LEFT_BRUSH_HMI BOOL
RIGHT_BRUSH_HMI BOOL
LEFT_BLOW_HMI BOOL
UNLOAD_DOWN BOOL Y41
UNLOAD_UP BOOL Y42
UNLOAD_BRAKE BOOL Y43
LOAD_DOWN BOOL Y44
LOAD_UP BOOL Y45
LOAD_BRAKE BOOL Y46
LOWER_EXIT_CYL BOOL Y47
LOWER_MIDDLE_CYL BOOL Y48
UPPER_MIDDLE_CYL BOOL Y4A
UPPER_EXIT_CYL BOOL Y49
COOLING_FANS BOOL Y54
LEFT_COLLET BOOL Y56
RIGHT_COLLET BOOL Y57

50
UNLOAD_GRIPPER BOOL Y58
LOAD_GRIPPER BOOL Y59
LEFT_BRUSH BOOL Y5A
RIGHT_BRUSH BOOL Y5B
LR_PUSHERS BOOL Y5D
LEFT_BLOW BOOL Y5C
LOAD_CONV_DS_ON BOOL X0
LOAD_CONV_PS1 BOOL X1
LOAD_CONV_PS2 BOOL X2
LOAD_CONV_UP_PS BOOL X3
LOAD_CONV_DOWN_PS BOOL X4
LOWER_CONV_PS1 BOOL X5
LOWER_CONV_PS2 BOOL X6
UPPER_CONV_PS1 BOOL X7
UPPER_CONV_PS2 BOOL X8
UNLOAD_CONV_PE1 BOOL X9
UNLOAD_CONV_PE2 BOOL X0A
UNLOAD_CONV_UP_PS BOOL X0B
UNLOAD_CONV_DOWN_PS BOOL X0C
UNLOAD_CONV_DS_ON BOOL X0D
UPPER_CONV_DS_ON BOOL X0E
LOWER_CONV_DS_ON BOOL X0F
LEFT_SPINDLE_ON BOOL X10
RIGHT_SPINDLE_ON BOOL X11
LOAD_CONV_ON_HMI BOOL
LOAD_CONV_PS1_HMI BOOL
LOAD_CONV_UP_HMI BOOL
LOAD_CONV_DOWN_HMI BOOL
LOWER_CONV_PS1_HMI BOOL
LOWER_CONV_PS2_HMI BOOL
UPPER_CONV_PS1_HMI BOOL
UPPER_CONV_PS2_HMI BOOL
UNLOAD_CONV_PS1_HMI BOOL
UNLOAD_CONV_PS2_HMI BOOL
UNLOAD_CONV_UP_HMI BOOL
UNLOAD_CONV_DOWN_HMI BOOL
UNLOAD_CONV_ON_HMI BOOL
UPPER_CONV_ON_HMI BOOL
LOWER_CONV_ON_HMI BOOL
51
LEFT_SPINDLE_ON_HMI BOOL
RIGHT_SPINDLE_ON_HMI BOOL
UPPER_MIDDLE_HMI BOOL
RIGHT_BLOW_HMI BOOL
PALLET_READY_PB BOOL X12
AUTO_MANUAL_MODE_HMI BOOL
PALLET_EMPTY_FROM_LR BOOL X1319
TON_2 TIMER
LOAD_UP_AUTO BOOL
LOAD_CONV_ON_AUTO BOOL
UPPER_MIDDLE_CYL_AUTO BOOL
UPPER_EXIT_CYL_AUTO BOOL
UPPER_CONV_ON_AUTO BOOL
UNLOAD_UP_AUTO BOOL
UNLOAD_DOWN_AUTO BOOL
UNLOAD_CONV_ON_AUTO BOOL
LOWER_CONV_ON_AUTO BOOL
LOAD_DOWN_AUTO BOOL
COOLING_FANS_AUTO BOOL
RIGHT_BLOW_AUTO BOOL X1321
LEFT_BLOW_AUTO BOOL
RIGHT_BRUSH_AUTO BOOL
LEFT_BRUSH_AUTO BOOL
LOAD_GRIPPER_AUTO BOOL
UNLOAD_GRIPPER_AUTO BOOL
RIGHT_COLLET_ON_FROM_LR BOOL X131B
LEFT_COLLET_ON_FROM_LR BOOL X131A
LOWER_MIDDLE_CYL_AUTO BOOL
LOWER_EXIT_CYL_AUTO BOOL
LOAD_BRAKE_AUTO BOOL
UPPER_CONV_FWD_AUTO BOOL
LOAD_CONV_FWD_AUTO BOOL
UNLOAD_CONV_FWD_AUTO BOOL
LOWER_CONV_FWD_AUTO BOOL
LOAD_CONV_REV_AUTO BOOL
UNLOAD_CONV_REV_AUTO BOOL
UPPER_CONV_REV_AUTO BOOL
LOWER_CONV_REV_AUTO BOOL
UNLOAD_BRAKE_AUTO BOOL
52
TM_COOL TIMER
TON_1 TIMER
LOAD_MOTOR_AUTO_SPEED INT
OK_TO_MOVE_LOAD_ROBOT BOOL
LEFT_COLLET_CLOSE_FROM_UNLR BOOL X141A
RIGHT_COLLET_CLOSE_FROM_UNLR BOOL X141B
TIMER_2_RESET BOOL
TIMER_1_RESET BOOL
TON_3 TIMER
PALLET_READY_TO_UNLOAD BOOL Y1319
PALLET_READY_TO_UNLOAD_AUTO BOOL
LOAD_GRIPPER_LR BOOL X1320
UNLOAD_GRIPPER_ULR BOOL X1420
RIGHT_COLLET_ULR BOOL X141B
LEFT_COLLET_ULR BOOL X141A
TRIM_STEP INT
DRM_TEST BOOL
DASH_STEP INT
ADVANCE_STEP INT
PARK_STEP INT
LEFT_KNIFE_STEP INT
ENTER_POINT_MODE BOOL
RIGHT_KNIFE_STEP INT
WRITE_DELAY_1 TIMER
PALLET_EMPTY_LR BOOL
TON_4 TIMER
MOVE_DELAY_LX BOOL
ERROR_DEBUG BOOL
CNT COUNTER
LEFT_X_PARK DINT 48000
LEFT_X_ADVANCE DINT
LEFT_X_TRIM DINT
LEFT_X_DASH DINT
LEFT_Y_PARK DINT 0
LEFT_Y_TRIM DINT
START_LEFT_TRIM_FROM_LR BOOL X131E
LEFT_X_SPEED DINT 250000
LEFT_X_ACC INT 100
LEFT_X_DEC INT 100
53
LEFT_Y_SPEED DINT 100000
LEFT_Y_ACC INT 100
LEFT_Y_DEC INT 100
MOVE_DELAY_LY BOOL
TON_5 TIMER
TON_6 TIMER
LEFT_X_MOVE_STEP BOOL
X_Y_COMPLETE_RESET BOOL
TON_200 TIMER
TON_300 TIMER
TON_400 TIMER
TON_500 TIMER
TON_600 TIMER
TON_700 TIMER
LEFT_X_DASH_SPEED DINT 4000
START_RIGHT_TRIM_FROM_LR BOOL X131F
RIGHT_X_PARK DINT 0
RIGHT_X_SPEED DINT 250000
RIGHT_X_ACC INT 100
RIGHT_X_DEC INT 100
RIGHT_Y_PARK DINT 0
RIGHT_Y_SPEED DINT 100000
RIGHT_Y_DEC INT 100
TON_7 TIMER
TON_1200 TIMER
RIGHT_X_ADVANCE DINT
TON_1300 TIMER
RIGHT_Y_TRIM DINT
RIGHT_X_TRIM DINT
TON_1400 TIMER
RIGHT_X_DASH DINT
RIGHT_X_DASH_SPEED DINT 4000
TON_1500 TIMER
TON_1600 TIMER
RIGHT_X_MOVE_STEP BOOL
TON_1700 TIMER
RIGHT_Y_ACC INT 100
RIGHT_COLLET_CLEAR_TO_PICK BOOL Y141F
LEFT_COLLET_CLEAR_TO_PICK BOOL Y141E
54
LEFT_TRIM_STARTED_TO_LR BOOL Y131E
RIGHT_TRIM_STARTED_TO_LR BOOL Y131F
LEFT_TRIM_STARTED BOOL
RIGHT_TRIM_STARTED BOOL
Right_Spindle_FWD_AUTO BOOL
LEFT_Spindle_FWD_AUTO BOOL
LR_AUTO_ENABLE BOOL Y130A
LR_AUTO_ENABLE_HMI BOOL
LR_OPERATION_ENABLE BOOL Y1300
LR_SERVO_ON BOOL Y1301
LR_SERVO_OFF BOOL Y1302
LR_CYCLE_STOP BOOL Y130D
LR_ERROR_RESET BOOL Y1304
LR_PROGRAM_RESET BOOL Y1305
LR_STOP2 BOOL Y1307
LR_START BOOL Y1309
ULR_OPERATION_ENABLE BOOL Y1400
ULR_SERVO_ON BOOL Y1401
ULR_SERVO_OFF BOOL Y1402
ULR_CYCLE_STOP BOOL Y140D
ULR_ERROR_RESET BOOL Y1404
ULR_PROGRAM_RESET BOOL Y1405
ULR_STOP2 BOOL Y1407
ULR_START BOOL Y1409
ULR_AUTO_ENABLE BOOL Y140A
OPERATION_ENABLE_FROM_LR BOOL X1300
LR_DURING_SERVO_ON BOOL X1301
LR_SERVO_ON_DISABLE BOOL X1302
LR_DURING_ERROR BOOL X1304
LR_PROGRAM_SELECT_ENABLE BOOL X1305
LR_STOP_IN BOOL X1306
LR_DURING_WAIT_2_STOP2 BOOL X1307
LR_DURING_WAIT_STOP BOOL X1308
LR_DURING_EXECUTE_START BOOL X1309
AUTO_ENABLE_FROM_LR BOOL X130A
OPERATION_ENABLE_FROM_ULR BOOL X1400
ULR_DURING_SERVO_ON BOOL X1401
ULR_SERVO_ON_DISABLE BOOL X1402
ULR_DURING_ERROR BOOL X1404
55
ULR_PROGRAM_SELECT_ENABLE BOOL X1405
ULR_STOP_IN BOOL X1406
ULR_DURING_WAIT_2_STOP2 BOOL X1407
ULR_DURING_WAIT_STOP BOOL X1408
ULR_DURING_EXECUTE_START BOOL X1409
AUTO_ENABLE_FROM_ULR BOOL X140A
ULR_AUTO_ENABLE_HMI BOOL
PROGRAM_NUMBER_TO_LR INT
PROGRAM_NUMBER_TO_ULR INT
ULR_START_HMI BOOL
ULR_PROGRAM_RESET_HMI BOOL
ULR_ERROR_RESET_HMI BOOL
ULR_SERVO_OFF_HMI BOOL
ULR_SERVO_ON_HMI BOOL
ULR_OPERATION_ENABLE_HMI BOOL
LR_OPERATION_ENABLE_HMI BOOL
LR_SERVO_ON_HMI BOOL
LR_SERVO_OFF_HMI BOOL
LR_ERROR_RESET_HMI BOOL
LR_PROGRAM_RESET_HMI BOOL
LR_START_HMI BOOL
LR_PROGRAM_NUMBER WORD W1180
ULR_PROGRAM_NUMBER WORD W1200
LR_KNIFE_CHANGE BOOL
ULR_KNIFE_CHANGE BOOL
Label274 INT W1181
Label275 INT W1182
Label276 INT W1183
Label277 INT W1184
Label279 INT W1201
Label280 INT W1202
Label281 INT W1203
Label282 INT W1204
Label283 INT W1205
LR_PROGRAM_SELECT BOOL Y1328
ULR_PROGRAM_SELECT BOOL Y1428
LR_PROGRAM_SELECT_HMI BOOL
ULR_PROGRAM_SELECT_HMI BOOL
RIGHT_DOOR_SWITCH BOOL X26
56
LEFT_DOOR_SWITCH BOOL X27
LEFT_X_MOVE_TO_PARK_HMI BOOL
RIGHT_X_OK_TO_MOVE BOOL
RIGHT_X_MOVE_TO_PARK_HMI BOOL
RIGHT_X_MOVE_TO_ADVANCE_HMI BOOL
RIGHT_X_MOVE_TO_TRIM_HMI BOOL
RIGHT_X_MOVE_TO_DASH_HMI BOOL
RIGHT_X_PARK_HMI DINT
RIGHT_X_ADVANCE_HMI DINT
RIGHT_X_TRIM_HMI DINT
RIGHT_X_DASH_HMI DINT
RIGHT_X_SPEED_HMI DINT
RIGHT_X_DASH_SPEED_HMI DINT
RIGHT_X_DASH_SPEED_HMI_1 DINT
LEFT_SPINDLE_SELECT_HMI BOOL
LEFT_X_OK_TO_MOVE BOOL
LEFT_X_MOVE_TO_DASH_HMI BOOL
LEFT_X_MOVE_TO_TRIM_HMI BOOL
LEFT_X_MOVE_TO_ADVANCE_HMI BOOL
LEFT_X_DASH_HMI DINT
LEFT_X_DASH_SPEED_HMI DINT
LEFT_X_SPEED_HMI DINT
LEFT_X_TRIM_HMI DINT
LEFT_X_ADVANCE_HMI DINT
LEFT_X_PARK_HMI DINT
LEFT_Y_MOVE_TO_PARK_HMI BOOL
LEFT_Y_SPEED_HMI DINT
LEFT_Y_TRIM_HMI DINT
LEFT_Y_OK_TO_MOVE BOOL
RIGHT_Y_MOVE_TO_PARK_HMI BOOL
RIGHT_Y_PARK_HMI DINT
RIGHT_Y_SPEED_HMI DINT
RIGHT_Y_TRIM_HMI DINT
RIGHT_Y_MOVE_TO_TRIM_HMI BOOL
RIGHT_Y_OK_TO_MOVE BOOL
LEFT_Y_PARK_HMI DINT
LEFT_Y_MOVE_TO_TRIM_HMI BOOL
LeftXServoON_HMI BOOL
RIGHT_SAFETY_MAT BOOL X14
57
LEFT_SAFETY_MAT BOOL X13
TEST_1_HMI BOOL
LEFT_X_NOT_HOME_TO_LR BOOL Y131C
LEFT_X_NOT_HOME_TO_ULR BOOL Y141C
RIGHT_X_NOT_HOME_TO_LR BOOL Y131D
RIGHT_X_NOT_HOME_TO_ULR BOOL Y141D
ALL_STOP_HMI BOOL
CYCLE_STOPPED_FROM_LR BOOL X1303
CYCLE_STOPPED_FROM_ULR BOOL X1403
RIGHT_X_DASH_MIN DINT
LEFT_X_DASH_MIN DINT
LR_PROGRAM_NUMBER_OUTPUT_REQ BOOL Y1329
LR_PROGRAM_NUMBER_OUTPUT_REQ_HMI BOOL
LEFT_X_TEACH_ADVANCE_HMI BOOL
RIGHT_X_TEACH_ADVANCE_HMI BOOL
LEFT_X_TEACH_TRIM_HMI BOOL
LEFT_X_TEACH_DASH_HMI BOOL
RIGHT_X_TEACH_DASH_HMI BOOL
LEFT_Y_TEACH_TRIM_HMI BOOL
RIGHT_Y_TEACH_TRIM_HMI BOOL
RIGHT_X_TEACH_TRIM_HMI BOOL
RIGHT_X_TEACH_DASH_SPEED_HMI BOOL
LEFT_X_TEACH_DASH_SPEED_HMI BOOL
KNIFE_CHANGE_HMI BOOL
ESTOP_PRESSED BOOL
TON1_PROGRAM_SELECT TIMER
NEW_PROGRAM_REQUEST BOOL
TON2_PROGRAM_SELECT TIMER
ESTOP_PRESSED_HMI BOOL
ESTOP_RESET_HMI BOOL
TON3_PROGRAM_SELECT TIMER
TON4_PROGRAM_SELECT TIMER
HOME_ROBOTS_HMI BOOL
CLEAN_OUT_HMI BOOL
RIGHT_SPINDLE_OFF_HMI BOOL
LEFT_SPINDLE_OFF_HMI BOOL
RIGHT_X_KNIFE_CHANGE DINT 240000
LEFT_X_KNIFE_CHANGE DINT 50000
RIGHT_X_HOME_POSITION DINT 0
58
LEFT_X_HOME_POSITION DINT 0
LEFT_Y_HOME_POSITION DINT 0
RIGHT_Y_HOME_POSITION DINT 0
RIGHT_X_OK_TO_MOVE_KNIFE_CHANGE BOOL
LEFT_X_OK_TO_MOVE_KNIFE_CHANGE BOOL
HOMING_MODE BOOL
TMR_HOMING TIMER
KNIFE_CHANGE_AFTER_HOME BOOL
PRE_OPERATION_HMI BOOL
ALL_SERVOS_OFF_HMI BOOL
TMR_KNIFE_CHANGE TIMER
TMR_KNIFE_CHANGE_2 TIMER
TMR_KNIFE_CHANGE_3 TIMER
TMR_KNIFE_CHANGE_4 TIMER
KJM_TEST BOOL
LR_POSITION_RESET BOOL Y1315
ULR_POSITION_RESET BOOL Y1415
PALLET_POSITION_HMI INT 1 W1185
SEND_TO_ROBOT_HMI BOOL
CYCLE_START_HMI BOOL
START_CYCLE_COUNTER INT
STOELLER_HMI BOOL
TIM_PROGRAM_CHANGE TIMER
TMR_STOP1 TIMER
TMR_STOP2 TIMER
STOP_ALL_RESET BOOL
ULR_CYCLE_STOP_HMI BOOL
LR_CYCLE_STOP_HMI BOOL
LR_CYCLE_STOP_DONE BOOL X130D
ULR_CYCLE_STOP_DONE BOOL X140D
PALLET_PB_LATCH BOOL
LEFT_BRUSH_ENABLE_HMI BOOL 0
RIGHT_BRUSH_ENABLE_HMI BOOL 0
INSPECTION_CONVEYOR_AUTO BOOL
INSPECTION_CONVEYOR BOOL Y5F
INSPECTION_CONVEYOR_HMI BOOL
INSPECTION_TIM TIMER
INSPECTION_CONVEYOR_RUN BOOL
RIGHT_ENABLE_HMI BOOL
59
LEFT_ENABLE_HMI BOOL
RIGHT_ENABLE BOOL
LEFT_ENABLE BOOL
CYCLE_COUNT COUNTER
LOAD_BREAK_TIMER TIMER
RIGHT_SIDE_ENABLE_HMI BOOL 1
LEFT_SIDE_ENABLE_HMI BOOL 1
PART_COUNT_PE BOOL X15
PART_COUNT COUNTER
PART_COUNT_RESET_HMI BOOL
GOT_CALL_MENU BOOL 1
PART_COUNT_HMI INT
ESTOP_PB BOOL X28
UPPER_CONV_FWD_HMI BOOL
UPPER_CONV_REV_HMI BOOL
LOWER_CONV_FWD_HMI BOOL
LOWER_CONV_REV_HMI BOOL
LOAD_CONV_REV_HMI BOOL
LOAD_CONV_FWD_HMI BOOL
UNLOAD_CONV_FWD_HMI BOOL
UNLOAD_CONV_REV_HMI BOOL
OK_MOVE_TO_SPINDLE_FROM_ULR BOOL Y1313
OK_MOVE_TO_SPINDLE_TO_LR BOOL X1413
LOCK_BUTTONS BOOL

60
Load Robot (R1) Operations

Position Data
Name X Y Z A B C L1 L2 FLG1 FLG2
P1 523.180 -212.350 341.850 -88.660 -50.030 -92.480 X X R,A,F 0
P2 482.250 -211.320 341.200 -88.660 -50.030 -92.480 X X R,A,F 0
P3 445.220 -216.950 345.290 -91.310 -50.340 -88.930 X X R,A,F 0
P4 318.360 -140.520 544.840 -47.070 -62.360 -127.550 X X R,A,F 0
P10 -85.240 -47.280 720.320 -0.310 -1.380 -109.370 X X L,A,F 0
P11 -209.300 -270.220 776.760 0.150 -1.010 -179.860 X X L,A,N 0
P12 43.650 -3.970 92.420 -4.950 -89.140 -0.760 X X L,B,F X
P13 -392.730 -295.950 814.590 -2.860 -1.910 -152.450 X X R,A,F 0
P14 143.320 9.450 78.810 -5.000 -88.470 -6.230 X X L,B,F X
P20 520.980 199.920 492.820 -89.970 -49.040 -91.100 X X R,A,F 0
P21 495.370 200.390 492.820 -89.970 -49.040 -91.100 X X R,A,F 0
P22 459.390 199.730 493.450 -89.850 -49.270 -90.550 X X R,A,F 0
P23 204.780 90.000 540.020 -74.620 -39.000 -101.230 X X R,A,F 0
P24 -383.910 -153.570 848.200 0.030 1.760 -3.940 X X R,A,F 15728640
P11A -209.300 -270.220 776.760 0.150 -1.010 -179.860 X X L,A,N 0
PICK 150.970 -98.430 874.520 -1.210 -0.940 179.320 X X L,A,N 61440
PLACE 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 L,B,F X
P100(1) 147.680 -277.900 871.530 -1.590 -0.390 179.310 X X L,A,N 61440
P100(2) 148.700 -98.370 873.220 -1.210 -0.940 179.320 X X L,A,N 61440
P100(3) 145.660 78.800 875.460 -0.840 0.050 109.920 X X R,A,N 61440
P100(4) 145.960 257.900 873.910 -0.390 0.050 109.920 X X R,A,N 61440
P100(5) -33.610 -279.100 872.840 -1.840 0.060 -169.200 X X L,A,N 0
P100(6) -31.620 -99.890 875.120 -1.360 1.010 -169.210 X X L,A,N 61440
P100(7) -31.690 84.570 874.460 0.510 0.560 -170.010 X X L,A,N 0
P100(8) -31.620 259.890 875.780 0.330 0.540 -37.290 X X R,A,F 0
P100(9) -212.940 -276.740 871.040 -1.980 0.700 178.040 X X L,A,N 0
P100(10) -214.270 -97.770 873.670 -0.760 1.240 -179.880 X X L,A,N 0
P100(11) -211.890 83.730 873.590 0.510 0.950 -179.570 X X L,A,N 61440
P100(12) -210.690 263.600 873.550 1.470 0.270 -169.200 X X L,A,N 61440
P100(13) -391.150 -274.910 871.000 -1.020 0.740 -179.690 X X L,A,N 15728640
P100(14) -392.330 -95.210 873.460 -0.550 0.710 -178.690 X X L,A,N 15728640
P100(15) -391.570 85.120 872.150 0.120 0.960 -179.530 X X L,A,N 0

61
P100(16) -391.390 263.940 870.350 0.340 0.660 -179.010 X X L,A,N 0
P100(17) 0.000 0.000 0.000 0.000 0.000 0.000 X X L,B,F 0
P100(18) 0.000 0.000 0.000 0.000 0.000 0.000 X X L,B,F 0
P100(19) 0.000 0.000 0.000 0.000 0.000 0.000 X X L,B,F 0
P100(20) 0.000 0.000 0.000 0.000 0.000 0.000 X X L,B,F 0

1.prg
Lin
Command
e
1 Dim P100(20)
2 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
3 Dly 1 'DELAY TO LET UNLOAD START FIRST
4 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
5 M_Out(6017) = 0 'RESET START CLEAN OUT PROGRAM
6 If M_In(6013) Then GoTo *CYCLESTOP
7 '''Wait M_In(6015) = 1 ' Auto mode from plc
8 M_Out(6032) = 0 'OPEN GRIPPER
9 M_Out(6033) = 0 ' RETRACT RIGHT BLOWER OR PUSHER
10 M_Out(6030) = 0 'SHUT OfF CLEAR TO START LEFT TRIM
11 M_Out(6031) =0 'SHUT OfF CLEAR TO START RIGHT TRIM
12 Ovrd 60
13 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
14 Wait M_In(6016)= 1 'ok to Move from unload robot
15 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
16 Mov P10
17 Wait M_In(6016)=1 'WAIT FoR OK TO MoVE FROM UNLOAD ROBOT
18 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
19 '''''''Dly 0.5
20 M1 = M_Inw(6070) 'MOVE THE PICK START POSITION IN FROM THE GOT
21 If M1 = 0 Then M1 = 1
22 'M1=1
23 Ovrd 60
24 *loop
25 ' M_Out(6027) = 0 'shut Off Right trim cycle to PLc
26 ' M_Out(6026) = 0 'shut Off left trim cycle to PLc
27 ' If M_In(6013) Then GoTo *CYCLESTOP 'CYCLE STOP FROM PLC
28 'Wait M_In(6015) = 1 ' Auto mode from plc

62
29 Wait M_In(6025) ' pallet present from PLC
30 PICK =P100(M1)
31 M_Out(6016)=0 'DO NOT MoVE TO UNLOAD ROBOT
32 If M1=1 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
33 If M1>4 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
34 '''If M1 = 9 Then Mov P11 Else Mov (PICK), -100
35 Mov (PICK), -100
36 Ovrd 20
37 Mov(PICK)
38 M_Out(6030)=0 ' left trim turn Off start trim to PLC
39 M_Out(6031)=0 ' RIGHT trim turn Off start trim to PLC
40 Dly 0.25
41 M_Out(6032) = 1 'CLOSE GRIPPER
42 'CLOSE GRIPPER
43 Dly 0.5
44 '''If M1 = 9 Then Mov P11 Else Mov (PICK), -100
45 Mov (PICK), -100
46 Ovrd 60
Mov P10 'STAGE AND WaiT 'WAIT FoR COLLET ClosED AND UNLOAD ROBOT CLEAR SIGN
47
AL
If M1 = &H10 Then M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOUL
48
D DROP DOWN
49 M_Out(6016) = 1 ' OK TO MoVE (unload) from LOAD ROBOT
50 Dly 0.5
51 M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
52 Wait M_In(6016) = 1
53 ' If M1<>1 Then M_Out(6016) = 1 ' OK TO MoVE TO UNLOAD ROBOT
54 If M_In(6034) = 1 Then GoSub *RIGHTSPINDLE Else GoSub *LEFTSPINDLE
55 M1 = M1+1
56 If M1 <=&H10 Then *loop ' 10 HEX = 16 DECIMAL
57 Mov P10
58 ''''M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOULD DROP DOWN
59 If M_In(6030) =1 Then M_Out(6030)=0 ' If left trim cylce started, turn Off start trim to PLC
60 If M_In(6031) = 1 Then M_Out(6031)=0 ' If right trim cylce started, turn Off start trim to PLC
61 Dly 0.1
62 '''''M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
63 M1 = 1
64 M_Out(6022) = 1 ' tell plc to reset pallet position
65 ' Dly 5 USED FoR TESTING

63
66 Wait M_In(6025)= 1 ' PALLET READY TO UNLOAD FROM PLC
67 M_Out(6022)=0 ' RESET PALLET BIT
68 GoTo *loop
69 *LEFTSPINDLE
70 Wait M_In(6016)= 1 'ok to Move from unload robot
71 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
72 Ovrd 60
73 Wait M_In(6016)= 1 'ok to Move from unload robot
74 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
75 Mov P23
76 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
77 Wait M_In(6016)= 1 'ok to Move from unload robot
78 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
79 Mov P22
80 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
81 Wait M_In(6016)= 1 'ok to Move from unload robot
82 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
83 Mvs P21
84 Wait M_In(6016)= 1 'ok to Move from unload robot
85 Ovrd 30
86 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
87 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
88 Mvs P20
89 Dly 0.1
90 M_Out(6032) = 0 'OPEN GRIPPER
91 Dly 0.2 ' PAUSE BEFORE PUSHER EXTENDS
92 M_Out(6033) = 1 'TURN ON PUSHER
93 Dly 0.3
94 M_Out(6026) = 1 'SEND SIGNAL TO PLC TO turn on (hold part) LEFT COLLET
95 Dly 0.25
96 'M_Out(6032) = 0 'OPEN GRIPPER
97 ' Dly 0.25
98 Wait M_In(6016)= 1 'ok to Move from unload robot
99 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
100 Mvs P21
101 M_Out(6026) = 0 'SEND SIGNAL TO PLC TO reset the bit For collet
102 M_Out(6033) = 0 'TURN OfF PUSHER
103 Ovrd 60

64
104 Mov P22
105 M_Out(6030) = 1 'start Left trim cycle to PLc
106 Mov P10
107 '''M_Out(6030) = 1 'start Left trim cycle to PLc
108 If M_In(6013) Then GoTo *CYCLESTOP
109 Return
110 *RIGHTSPINDLE
111 Wait M_In(6016)= 1 'ok to Move from unload robot
112 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
113 'Dly 0.5
114 Ovrd 60
115 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
116 Mov P4
117 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
118 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
119 Mov P3
120 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
121 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
122 Mvs P2
123 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
124 Ovrd 20
125 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
126 Mvs P1
127 Dly 0.1
128 M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
129 Dly 0.2 ' PAUSE BEFORE PUSHER EXTENDS
130 M_Out(6033) = 1 'TURN ON PUSHER
131 Dly 0.3
132 M_Out(6027) = 1 'SEND SIGNAL TO PLC TO tun on right COLLET (hold part)
133 Dly 0.25
134 ' M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
135 'Dly 0.25
136 Mvs P2
137 M_Out(6027) = 0 'SEND SIGNAL TO PLC TO reset the bit For RIGHT collet
138 M_Out(6033) = 0 'TURN OfF PUSHER
139 Ovrd 60
140 Mov P3
141 Mov P4

65
142 M_Out(6031) = 1 'start Right trim cycle to PLC
143 Mov P10
144 ''''M_Out(6031) = 1 'start Right trim cycle to PLC
145 If M_In(6013) Then GoTo *CYCLESTOP
146 Return
147 *CYCLESTOP
148 Mov P10
149 M_Out(6017) = 1 'OK TO START CLEAN OUT PROGRAM
150 M_Out(6013)=1 'SEND CYCLE STOPPED TO PLC
151 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
152 M_Out(6030)=0 ' clear to start left trim to PLC
153 M_Out(6031)=0 ' clear to start right trim to PLC
154 End

2.prg
Line Command
1 Dim P100(20)
2 Ovrd 30
3 M_Out(6032) = 0 'OPEN GRIPPER
4 Dly 0.1 ' PAUSE BEFORE PUSHER EXTENDS
5 M_Out(6033) = 0 'RETRACT PUSHER/RIGHT BLOWER
6 Mov P10
7 M_Out(6016) = 1 ' OK TO MoVE TO UNLOAD ROBOT
8 Ovrd 90
9 End

4.prg
Line Command
1 Dim P100(20)
2 M_Out(6032) = 0 'OPEN GRIPPER
3 Dly 0.1 ' PAUSE BEFORE PUSHER EXTENDS
4 M_Out(6033) = 0 'RETRACT PUSHER/RIGHT BLOWER
5 M_Out(6022) = 0 'SHUT OfF PALLET POSITION
6 M_Out(6030) = 0 'SHUT OfF left trim
7 M_Out(6031) = 0 'SHUT OfF right trim
8 Ovrd 30

66
9 Mvs,(-60)
10 Mov P10
11 End

5.prg
Line Command
1 Dim P100(20)
2 M_Out(6032) = 0 'OPEN GRIPPER
3 Dly 0.1 ' PAUSEE BEFORE PUSHER EXTENDS
4 M_Out(6033) = 0 'RETRACT PUSHER/RIGHT BLOWER
5 Ovrd 30
6 Mov P10
7 End

6.prg
Lin
Command
e
1 Dim P100(20)
2 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
3 Dly 1 'DELAY TO LET UNLOAD START FIRST
4 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
5 M_Out(6017) = 0 'RESET START CLEAN OUT PROGRAM
6 If M_In(6013) Then GoTo *CYCLESTOP
7 '''Wait M_In(6015) = 1 ' Auto mode from plc
8 M_Out(6032) = 0 'OPEN GRIPPER
9 Dly 0.1 ' PAUSE FOR PUSHER EXTENDS
10 M_Out(6033) = 0 ' RETRACT RIGHT BLOWER OR PUSHER
11 M_Out(6030) = 0 'SHUT OfF CLEAR TO START LEFT TRIM
12 M_Out(6031) =0 'SHUT OfF CLEAR TO START RIGHT TRIM
13 Ovrd 60
14 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
15 Wait M_In(6016)= 1 'ok to Move from unload robot
16 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
17 Mov P10
18 Wait M_In(6016)=1 'WAIT FoR OK TO MoVE FROM UNLOAD ROBOT
19 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
20 '''''''Dly 0.5

67
21 M1 = M_Inw(6070) 'MOVE THE PICK START POSITION IN FROM THE GOT
22 If M1 = 0 Then M1 = 1
23 'M1=1
24 Ovrd 60
25 *loop
26 ' M_Out(6027) = 0 'shut Off Right trim cycle to PLc
27 ' M_Out(6026) = 0 'shut Off left trim cycle to PLc
28 ' If M_In(6013) Then GoTo *CYCLESTOP 'CYCLE STOP FROM PLC
29 'Wait M_In(6015) = 1 ' Auto mode from plc
30 Wait M_In(6025) ' pallet present from PLC
31 PICK =P100(M1)
32 M_Out(6016)=0 'DO NOT MoVE TO UNLOAD ROBOT
33 If M1=1 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
34 If M1>4 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
35 If M1 = 9 Then Mov P11 Else Mov (PICK), -100
36 ' MOV (PICK), -100
37 Ovrd 20
38 Mov(PICK)
39 M_Out(6030)=0 ' left trim turn Off start trim to PLC
40 M_Out(6031)=0 ' RIGHT trim turn Off start trim to PLC
41 Dly 0.25
42 M_Out(6032) = 1 'CLOSE GRIPPER
43 'CLOSE GRIPPER
44 Dly 0.5
45 If M1 = 9 Then Mov P11 Else Mov (PICK), -100
46 Ovrd 60
Mov P10 'STAGE AND WaiT 'WAIT FoR COLLET ClosED AND UNLOAD ROBOT CLEAR SIGN
47
AL
If M1 = &H10 Then M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOUL
48
D DROP DOWN
49 M_Out(6016) = 1 ' OK TO MoVE (unload) from LOAD ROBOT
50 Dly 0.5
51 M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
52 Wait M_In(6016) = 1
53 ' If M1<>1 Then M_Out(6016) = 1 ' OK TO MoVE TO UNLOAD ROBOT
54 If M_In(6034) = 1 Then GoSub *RIGHTSPINDLE Else GoSub *LEFTSPINDLE
55 M1 = M1+1
56 If M1 <=&H10 Then *loop ' 10 HEX = 16 DECIMAL
57 Mov P10

68
58 ''''M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOULD DROP DOWN
59 If M_In(6030) =1 Then M_Out(6030)=0 ' If left trim cylce started, turn Off start trim to PLC
60 If M_In(6031) = 1 Then M_Out(6031)=0 ' If right trim cylce started, turn Off start trim to PLC
61 Dly 0.1
62 '''''M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
63 M1 = 1
64 M_Out(6022) = 1 ' tell plc to reset pallet position
65 ' Dly 5 USED FoR TESTING
66 Wait M_In(6025)= 1 ' PALLET READY TO UNLOAD FROM PLC
67 M_Out(6022)=0 ' RESET PALLET BIT
68 GoTo *loop
69 *LEFTSPINDLE
70 Wait M_In(6016)= 1 'ok to Move from unload robot
71 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
72 Ovrd 60
73 Wait M_In(6016)= 1 'ok to Move from unload robot
74 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
75 Mov P23
76 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
77 Wait M_In(6016)= 1 'ok to Move from unload robot
78 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
79 Mov P22
80 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
81 Wait M_In(6016)= 1 'ok to Move from unload robot
82 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
83 Mvs P21
84 Wait M_In(6016)= 1 'ok to Move from unload robot
85 Ovrd 30
86 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
87 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
88 Mvs P20
89 Dly 0.1
90 M_Out(6032) = 0 'OPEN GRIPPER
91 Dly 0.2 ' PAUSE BEFORE PUSHER EXTENDS
92 M_Out(6033) = 1 'TURN ON PUSHER
93 Dly 0.3
94 M_Out(6026) = 1 'SEND SIGNAL TO PLC TO turn on (hold part) LEFT COLLET
95 Dly 0.25

69
96 'M_Out(6032) = 0 'OPEN GRIPPER
97 ' Dly 0.25
98 Wait M_In(6016)= 1 'ok to Move from unload robot
99 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
100 Mvs P21
101 M_Out(6026) = 0 'SEND SIGNAL TO PLC TO reset the bit For collet
102 M_Out(6033) = 0 'TURN OfF PUSHER
103 Ovrd 60
104 Mov P22
105 M_Out(6030) = 1 'start Left trim cycle to PLc
106 Mov P10
107 '''M_Out(6030) = 1 'start Left trim cycle to PLc
108 If M_In(6013) Then GoTo *CYCLESTOP
109 Return
110 *RIGHTSPINDLE
111 Wait M_In(6016)= 1 'ok to Move from unload robot
112 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
113 'Dly 0.5
114 Ovrd 60
115 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
116 Mov P4
117 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
118 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
119 Mov P3
120 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
121 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
122 Mvs P2
123 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
124 Ovrd 20
125 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
126 Mvs P1
127 Dly 0.1
128 M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
129 Dly 0.2 ' PAUSE BEFORE PUSHER EXTENDS
130 M_Out(6033) = 1 'TURN ON PUSHER
131 Dly 0.3
132 M_Out(6027) = 1 'SEND SIGNAL TO PLC TO tun on right COLLET (hold part)
133 Dly 0.25

70
134 ' M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
135 'Dly 0.25
136 Mvs P2
137 M_Out(6027) = 0 'SEND SIGNAL TO PLC TO reset the bit For RIGHT collet
138 M_Out(6033) = 0 'TURN OfF PUSHER
139 Ovrd 60
140 Mov P3
141 Mov P4
142 M_Out(6031) = 1 'start Right trim cycle to PLC
143 Mov P10
144 ''''M_Out(6031) = 1 'start Right trim cycle to PLC
145 If M_In(6013) Then GoTo *CYCLESTOP
146 Return
147 *CYCLESTOP
148 Mov P10
149 M_Out(6017) = 1 'OK TO START CLEAN OUT PROGRAM
150 M_Out(6013)=1 'SEND CYCLE STOPPED TO PLC
151 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
152 M_Out(6030)=0 ' clear to start left trim to PLC
153 M_Out(6031)=0 ' clear to start right trim to PLC
154 End

7.prg
Lin
Command
e
1 Dim P100(20)
2 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
3 Dly 1 'DELAY TO LET UNLOAD START FIRST
4 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
5 M_Out(6017) = 0 'RESET START CLEAN OUT PROGRAM
6 If M_In(6013) Then GoTo *CYCLESTOP
7 '''Wait M_In(6015) = 1 ' Auto mode from plc
8 M_Out(6032) = 0 'OPEN GRIPPER
9 Dly 0.1 ' PAUSE FOR PUSHER EXTEND
10 M_Out(6033) = 0 ' RETRACT RIGHT BLOWER OR PUSHER
11 M_Out(6030) = 0 'SHUT OfF CLEAR TO START LEFT TRIM
12 M_Out(6031) =0 'SHUT OfF CLEAR TO START RIGHT TRIM
13 Ovrd 60

71
14 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
15 Wait M_In(6016)= 1 'ok to Move from unload robot
16 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
17 Mov P10
18 Wait M_In(6016)=1 'WAIT FoR OK TO MoVE FROM UNLOAD ROBOT
19 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
20 '''''''Dly 0.5
21 M1 = M_Inw(6070) 'MOVE THE PICK START POSITION IN FROM THE GOT
22 If M1 = 0 Then M1 = 1
23 'M1=1
24 Ovrd 60
25 *loop
26 ' M_Out(6027) = 0 'shut Off Right trim cycle to PLc
27 ' M_Out(6026) = 0 'shut Off left trim cycle to PLc
28 ' If M_In(6013) Then GoTo *CYCLESTOP 'CYCLE STOP FROM PLC
29 'Wait M_In(6015) = 1 ' Auto mode from plc
30 Wait M_In(6025) ' pallet present from PLC
31 PICK =P100(M1)
32 M_Out(6016)=0 'DO NOT MoVE TO UNLOAD ROBOT
33 If M1=1 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
34 If M1>4 Then M_Out(6016) = 1 ' OK TO MoVE UNLOAD AT SAME TIME As load
35 If M1 = 9 Then Mov P11 Else Mov (PICK), -100
36 ' MOV (PICK), -100
37 Ovrd 20
38 Mov(PICK)
39 M_Out(6030)=0 ' left trim turn Off start trim to PLC
40 M_Out(6031)=0 ' RIGHT trim turn Off start trim to PLC
41 Dly 0.25
42 M_Out(6032) = 1 'CLOSE GRIPPER
43 'CLOSE GRIPPER
44 Dly 0.5
45 If M1 = 9 Then Mov P11 Else Mov (PICK), -100
46 Ovrd 60
Mov P10 'STAGE AND WaiT 'WAIT FoR COLLET ClosED AND UNLOAD ROBOT CLEAR SIGN
47
AL
If M1 = &H10 Then M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOUL
48
D DROP DOWN
49 M_Out(6016) = 1 ' OK TO MoVE (unload) from LOAD ROBOT
50 Dly 0.5

72
51 M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
52 Wait M_In(6016) = 1
53 ' If M1<>1 Then M_Out(6016) = 1 ' OK TO MoVE TO UNLOAD ROBOT
54 If M_In(6034) = 1 Then GoSub *RIGHTSPINDLE Else GoSub *LEFTSPINDLE
55 M1 = M1+1
56 If M1 <=&H10 Then *loop ' 10 HEX = 16 DECIMAL
57 Mov P10
58 ''''M_Out(6025) = 1 ' PALLET EMPTY TO PLC....UNLOAD CONVEYOR SHOULD DROP DOWN
59 If M_In(6030) =1 Then M_Out(6030)=0 ' If left trim cylce started, turn Off start trim to PLC
60 If M_In(6031) = 1 Then M_Out(6031)=0 ' If right trim cylce started, turn Off start trim to PLC
61 Dly 0.1
62 '''''M_Out(6025) = 0 ' SHUT OfF PALLET EMPTY TO PLC
63 M1 = 1
64 M_Out(6022) = 1 ' tell plc to reset pallet position
65 ' Dly 5 USED FoR TESTING
66 Wait M_In(6025)= 1 ' PALLET READY TO UNLOAD FROM PLC
67 M_Out(6022)=0 ' RESET PALLET BIT
68 GoTo *loop
69 *LEFTSPINDLE
70 Wait M_In(6016)= 1 'ok to Move from unload robot
71 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
72 Ovrd 60
73 Wait M_In(6016)= 1 'ok to Move from unload robot
74 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
75 Mov P23
76 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
77 Wait M_In(6016)= 1 'ok to Move from unload robot
78 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
79 Mov P22
80 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
81 Wait M_In(6016)= 1 'ok to Move from unload robot
82 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
83 Mvs P21
84 Wait M_In(6016)= 1 'ok to Move from unload robot
85 Ovrd 30
86 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
87 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
88 Mvs P20

73
89 Dly 0.1
90 M_Out(6032) = 0 'OPEN GRIPPER
91 Dly 0.1 ' PAUSE BEFORE PUSHER EXTENDS
92 M_Out(6033) = 1 'TURN ON PUSHER
93 Dly 0.3
94 M_Out(6026) = 1 'SEND SIGNAL TO PLC TO turn on (hold part) LEFT COLLET
95 Dly 0.25
96 'M_Out(6032) = 0 'OPEN GRIPPER
97 ' Dly 0.25
98 Wait M_In(6016)= 1 'ok to Move from unload robot
99 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
100 Mvs P21
101 M_Out(6026) = 0 'SEND SIGNAL TO PLC TO reset the bit For collet
102 M_Out(6033) = 0 'TURN OfF PUSHER
103 Ovrd 60
104 Mov P22
105 Mov P23
106 M_Out(6030) = 1 'start Left trim cycle to PLc
107 Mov P10
108 '''M_Out(6030) = 1 'start Left trim cycle to PLc
109 If M_In(6013) Then GoTo *CYCLESTOP
110 Return
111 *RIGHTSPINDLE
112 Wait M_In(6016)= 1 'ok to Move from unload robot
113 M_Out(6016)=0 'DO NOT MoVE SIGNAL TO UNLOAD ROBOT
114 'Dly 0.5
115 Ovrd 60
116 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
117 Mov P4
118 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
119 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
120 Mov P3
121 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
122 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
123 Mvs P2
124 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
125 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
126 Ovrd 20

74
127 Wait M_In(6019)= 1 'ok to Move TO SPINDLE from unload robot
128 Mvs P1
129 Dly 0.1
130 M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
131 Dly 0.2 ' PAUSE BEFORE PUSHER EXTENDS
132 M_Out(6033) = 1 'TURN ON PUSHER
133 Dly 0.3
134 M_Out(6027) = 1 'SEND SIGNAL TO PLC TO tun on right COLLET (hold part)
135 Dly 0.25
136 ' M_Out(6032) = 0 'OPEN GRIPPER 0 = Open 1 = Closed
137 'Dly 0.25
138 Mvs P2
139 M_Out(6027) = 0 'SEND SIGNAL TO PLC TO reset the bit For RIGHT collet
140 M_Out(6033) = 0 'TURN OfF PUSHER
141 Ovrd 60
142 Mov P3
143 Mov P4
144 M_Out(6031) = 1 'start Right trim cycle to PLC
145 Mov P10
146 ''''M_Out(6031) = 1 'start Right trim cycle to PLC
147 If M_In(6013) Then GoTo *CYCLESTOP
148 Return
149 *CYCLESTOP
150 Mov P10
151 M_Out(6017) = 1 'OK TO START CLEAN OUT PROGRAM
152 M_Out(6013)=1 'SEND CYCLE STOPPED TO PLC
153 M_Out(6016)= 1 ' OK TO MOVE TO UNLOAD ROBOT
154 M_Out(6030)=0 ' clear to start left trim to PLC
155 M_Out(6031)=0 ' clear to start right trim to PLC
156 End

8.prg
Line Command
1 Dim P100(20)
2 TEMP2 = M_Inw(6070)
3 If TEMP2>0 Then Mov P100(TEMP2)
4 Dly 5

75
5 End

9.prg
Line Command
1 Dim P100(20)
2 M1 = 1
3 *dog
4 Dly 3
5 Ovrd 50
6 ''If M1 = 9 Then Mov P11 Else Mov P100(M1), -100
7 Mov P100(M1), -100
8 Dly 2
9 Ovrd 10
10 Mvs P100(M1)
11 Dly 3
12 ''If M1 = 9 Then Mov P11 Else Mov P100(M1), -100
13 Mvs P100(M1), -100
14 Ovrd 50
15 Mov P10
16 M_Out(6026)=0
17 M_Out(6027)=0
18 M1= M1 + 1
19 If M1< &H11 Then GoTo *dog
20 End

Parameters setting
Robot No: 0:Common
Parameter Explanation Pos. Data
[1] 6000
IOENA Operation enable INPUT,Operation enable OUTPUT
[2] 6000
LNG Language(JPN:Japanese,ENG:English) [1] ENG
NETIP Ethernet IP Address [1] 192.168.12.30
[1] LOADPALLET
SLT1 Program name,Mode,Condition,Priority [2] REP
[3] START

76
[4] 1
[1] 6002
SRVOFF Servo off INPUT,Servo on disable OUTPUT
[2] 6002
[1] 6001
SRVON Servo on INPUT,During servo on OUTPUT
[2] 6001

Robot No: 1:RV-2FRLB-D


Parameter Explanation Pos. Data
[1] 1.00
[2] 200.00
[3] 200.00
HNDDAT0 Hand 0 weight[kg],figure(X,Y,Z)[mm],center of gravity(X,Y,Z)[mm] [4] 150.00
[5] 0.00
[6] 0.00
[7] 100.00
[1] 0.00
[2] 0.00
[3] 0.00
MEXTL Standard tool coordinate
[4] 0.00
[5] -0.00
[6] 0.00

77
Unload Robot (R2) Operations

Position Data
Name X Y Z A B C L1 L2 FLG1 FLG2
P1 331.050 -580.970 330.930 90.200 49.910 90.350 X X R,A,N 0
P2 291.300 -581.180 331.040 90.200 49.910 90.350 X X R,A,N 0
P3 193.720 -544.480 381.440 90.040 48.690 91.460 X X R,A,N 0
P4 2.350 -34.450 615.300 79.980 -2.270 10.930 X X L,A,F 0
P5 574.790 72.680 362.290 89.850 21.550 177.230 X X R,A,N 0
P20 327.180 -167.640 485.580 90.700 49.270 90.340 X X R,A,N 0
P21 290.470 -167.500 485.870 90.700 49.270 90.340 X X R,A,N 0
P22 117.660 -163.400 487.050 90.370 49.500 89.790 X X R,A,N 0
P23 26.620 114.990 688.650 -9.700 29.260 -10.110 X X L,A,N 0
P29 113.500 367.120 720.180 9.330 -1.540 9.260 X X L,A,F 4096
P30 111.320 375.820 665.950 9.330 0.750 9.640 X X L,A,F 4096
P31 -19.970 97.750 643.320 52.450 -3.310 6.600 X X L,A,F 0
P50 -436.920 -23.600 673.480 4.110 -3.640 93.590 X X L,A,F 0

1.prg
Li
Command
ne
1 'do a get current position and Then do a Z -
2 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
3 ''''Wait M_In(6015) = 1 ' Auto mode from plc
4 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
5 Ovrd 60
6 M_Out(6016) = 0 'DO NOT MoVE LOAD ROBOT WhilE MoVING TO UNLOAD STAGE
7 Wait M_In(6016)= 1 'ok to Move from load robot
8 Mov P31
9 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
10 M_Out(6032) = 0' Open gripper here
11 Dly 1
12 *Main
13 ''''If M_In(6013)=1 Then GoTo *CYCLESTOP
14 '''''''Wait M_In(6015) = 1 ' Auto mode from plc

78
15 ' M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
16 ' Dly 0.5
17 ' Wait M_In(6016)=1 ' Wait FoR load robot clear
18 Wait M_In(6016)= 1 'ok to Move from load robot
19 M_Out(6016)=0 ' SHUT OFF OK TO MoVE TO LOAD ROBOT
20 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
21 Mov P4
22 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
If M_In(6016) = 0 Then M_Out(6016) = 1 ' IF UNLOAD IS AT P4 AND LOAD IS MoVING, GIVE LO
23
AD THE RIGHT TO MoVE
If M_In(6016) = 0 Then M_Out(6019) = 1 ' IF UNLOAD IS AT P4 AND LOAD IS MoVING, GIVE LO
24
AD THE RIGHT TO MoVE TO SPINDLE
25 Wait M_In(6016)= 1 'ok to Move from load robot
26 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
27 M_Out(6016)=0 ' SHUT OFF OK TO MoVE TO LOAD ROBOT
28 Mov P3 'Right spindle Step 1
29 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
30 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
31 Wait M_In(6016)= 1 'ok to Move from load robot
32 Mov P2 'Right Spindle Step 2
33 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
34 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
35 Wait M_In(6016)= 1 'ok to Move from load robot
36 Ovrd 20
37 Mvs P1 ' Move to right spindle
38 Dly 0.25
39 M_Out(6032) = 1 'close gripper
40 Dly 0.25
M_Out(6027) = 1 'send signal to PLC For collet RELEASE THIS IS A NC CONTACT IN A LATCH R
41
OUTINE IN PLC
42 'Wait For collet Closed signal
43 Dly 0.5
44 Mvs P2 'move to after unload position Step 1
45 M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
46 Ovrd 60
47 M_Out(6027) = 0 'ENABLES collet Off/GRIP IN THE PLC
48 Wait M_In(6016)= 1 'ok to Move from load robot
49 Mov P3 'move to after unload position Step 2
50 Mov P31

79
51 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
52 ''''M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
53 M_Out(6016) = 1 'send "Clear to Move to Load Robot
54 Mov P30
55 Mov P29
56 M_Out(6032) = 0' Open gripper here'open gripper here
57 Dly 0.5
58 Mov P30
59 Mov P31
60 Wait M_In(6016) = 1 ' OK TO MoVE FROM LOAD ROBOT
61 M_Out(6016)=0 ' SHUT OF OK TO MoVE TO LOAD ROBOT
62 'wait For load robot signal
63 '''''''Dly 0.5
64 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
65 Wait M_In(6016)= 1 'ok to Move from load robot
66 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
67 Mov P22 'Left Step 2
68 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
69 Wait M_In(6016)= 1 'ok to Move from load robot
70 Mov P21 'Left Step 1
71 Wait M_In(6016)= 1 'ok to Move from load robot
72 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
73 Ovrd 20
74 Mov P20 'Left Spindle
75 Dly 0.25
76 M_Out(6032) = 1'close gripper
77 Dly 0.25
M_Out(6026) = 1 'send signal to PLC For collet Off (RELEASE) signal Is like a motor starter stop/st
78
art circuit
79 'wait For PLC collet Is Closed
80 M_Out(6034) = 0 ' TELLS LOAD ROBOT THAT LEFT SPINDLE IS CLEAR
81 Dly 0.5
82 Wait M_In(6016)= 1 'ok to Move from load robot
83 Mov P21
84 Ovrd 60
85 M_Out(6026) = 0 'ENABLES collet on/GRIP IN THE PLC
86 ' Mov p22
87 Wait M_In(6016)= 1 'ok to Move from load robot

80
88 Mov P31
89 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
90 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
91 Mov P30
92 Mov P29
93 M_Out(6032) = 0 'open gripper here
94 Dly 0.25
95 Mov P30
96 Mov P31
97 If M_In(6013) Then GoTo *CYCLESTOP
98 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
99 Dly 0.25
10
Wait M_In(6016)=1 ' Wait FoR load robot clear
0
10
GoTo *Main
1
10
*CYCLESTOP
2
10
Mov P31
3
10
M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
4
10
' M_Out(6013)=1 'SEND CYCLE STOP DONE TO PLC
5
10
Wait M_In(6017)=1 ' OK TO START CLEAN OUT FROM LOAD ROBOT
6
10
CallP "2"
7
10
End
8

2.prg
Lin
Command
e
1 Ovrd 30
2 Mov P31
3 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
4 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
5 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
6 Ovrd 90

81
7 Wait M_In(6015) = 0 ' MANUAL MODE FROM PLC
8 Wait M_In(6016)=1 ' Wait FoR load robot clear
9 M_Out(6016)=0 ' SHUT OFF OK TO MoVE TO LOAD ROBOT
10 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
11 Mov P4
12 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
13 Mov P3 'Right spindle Step 1
14 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
15 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
16 Mov P2 'Right Spindle Step 2
17 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
18 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
19 Ovrd 20
20 Mvs P1 ' Move to right spindle
21 Dly 0.25
22 M_Out(6032) = 1 'close gripper
23 Dly 0.25
M_Out(6027) = 1 'send signal to PLC For collet RELEASE THIS IS A NC CONTACT IN A LATCH
24
ROUTINE IN PLC
25 'Wait For collet Closed signal
26 Dly 0.5
27 Mvs P2 'move to after unload position Step 1
28 Ovrd 90
29 M_Out(6027) = 0 'ENABLES collet Off/GRIP IN THE PLC
30 Mov P3 'move to after unload position Step 2
31 Mov P31
32 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
33 ' M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
34 M_Out(6016) = 1 'send "Clear to Move to Load Robot
35 Mov P30
36 Mov P29
37 M_Out(6032) = 0' Open gripper here'open gripper here
38 Dly 0.5
39 Mov P30
40 Mov P31
41 Wait M_In(6016) = 1 ' OK TO MoVE FROM LOAD ROBOT
42 M_Out(6016)=0 ' SHUT OF OK TO MoVE TO LOAD ROBOT
43 'wait For load robot signal

82
44 Dly 0.5
45 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
46 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
47 Mov P22 'Left Step 2
48 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
49 Mov P21 'Left Step 1
50 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
51 Ovrd 20
52 Mov P20 'Left Spindle
53 Dly 0.25
54 M_Out(6032) = 1'close gripper
55 Dly 0.25
M_Out(6026) = 1 'send signal to PLC For collet Off (RELEASE) signal Is like a motor starter stop/st
56
art circuit
57 'wait For PLC collet Is Closed
58 ' M_Out(6034) = 0 ' TELLS LOAD ROBOT THAT LEFT SPINDLE IS CLEAR
59 Dly 0.5
60 Mov P21
61 Ovrd 90
62 M_Out(6026) = 0 'ENABLES collet on/GRIP IN THE PLC
63 ' Mov p22
64 Mov P31
65 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
66 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
67 Mov P30
68 Mov P29
69 M_Out(6032) = 0 'open gripper here
70 Dly 0.5
71 Mov P30
72 Mov P31
73 M_Out(6013)=1 'SEND CYCLE STOP DONE TO PLC
74 End

4.prg
Line Command
1 Ovrd 30
2 M_Out(6032)=0 ' OpeN GRIPPER

83
3 Mvs,(-60)
4 Mov P31
5 End

5.prg
Line Command
1 'This Is the knife change position For the unload robot
2 Ovrd 30
3 Mov P31
4 Mov P50
5 M_Out(6032) = 0' Open gripper here
6 End

6.prg
Lin
Command
e
1 '''RIGHT SPINDLE ONLY
2 'do a get current position and Then do a Z -
3 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
4 ''''Wait M_In(6015) = 1 ' Auto mode from plc
5 Ovrd 60
6 M_Out(6016) = 0 'DO NOT MoVE LOAD ROBOT WhilE MoVING TO UNLOAD STAGE
7 Wait M_In(6016)= 1 'ok to Move from load robot
8 Mov P31
9 M_Out(6032) = 0' Open gripper here
10 Dly 1
11 *Main
12 ''''If M_In(6013)=1 Then GoTo *CYCLESTOP
13 '''''''Wait M_In(6015) = 1 ' Auto mode from plc
14 ' M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
15 ' Dly 0.5
16 ' Wait M_In(6016)=1 ' Wait FoR load robot clear
17 Wait M_In(6016)= 1 'ok to Move from load robot
18 M_Out(6016)=0 ' SHUT OFF OK TO MoVE TO LOAD ROBOT
19 M_Out(6019)=0 'Not OK TO PLACE ON SPINDLE TO LOAD ROBOT
20 Mov P4

84
21 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
If M_In(6016) = 0 Then M_Out(6016) = 1 ' IF UNLOAD IS AT P4 AND LOAD IS MoVING, GIVE LO
22
AD THE RIGHT TO MoVE
23 Wait M_In(6016)= 1 'ok to Move from load robot
24 Mov P3 'Right spindle Step 1
25 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
26 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
27 Wait M_In(6016)= 1 'ok to Move from load robot
28 Mov P2 'Right Spindle Step 2
29 Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
30 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
31 Wait M_In(6016)= 1 'ok to Move from load robot
32 Ovrd 20
33 Mvs P1 ' Move to right spindle
34 Dly 0.25
35 M_Out(6032) = 1 'close gripper
36 Dly 0.25
M_Out(6027) = 1 'send signal to PLC For collet RELEASE THIS IS A NC CONTACT IN A LATCH
37
ROUTINE IN PLC
38 'Wait For collet Closed signal
39 Dly 0.5
40 Mvs P2 'move to after unload position Step 1
41 M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
42 Ovrd 60
43 M_Out(6027) = 0 'ENABLES collet Off/GRIP IN THE PLC
44 Wait M_In(6016)= 1 'ok to Move from load robot
45 Mov P3 'move to after unload position Step 2
46 Mov P31
47 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
48 ''''M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
49 M_Out(6016) = 1 'send "Clear to Move to Load Robot
50 Mov P30
51 Mov P29
52 M_Out(6032) = 0' Open gripper here'open gripper here
53 Dly 0.5
54 Mov P30
55 Mov P31
56 ''Wait M_In(6016) = 1 ' OK TO MoVE FROM LOAD ROBOT
57 ''M_Out(6016)=0 ' SHUT OF OK TO MoVE TO LOAD ROBOT

85
58 'wait For load robot signal
59 '''''''Dly 0.5
60 ''Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
61 ''Wait M_In(6016)= 1 'ok to Move from load robot
62 ''Mov P22 'Left Step 2
63 ''Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
64 ''Wait M_In(6016)= 1 'ok to Move from load robot
65 ''Mov P21 'Left Step 1
66 ''Wait M_In(6016)= 1 'ok to Move from load robot
67 ''Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
68 ''Ovrd 20
69 ''Mov P20 'Left Spindle
70 ''Dly 0.25
71 ''M_Out(6032) = 1'close gripper
72 ''Dly 0.25
''M_Out(6026) = 1 'send signal to PLC For collet Off (RELEASE) signal Is like a motor starter stop/s
73
tart circuit
74 ''M_Out(6034) = 0 ' TELLS LOAD ROBOT THAT LEFT SPINDLE IS CLEAR
75 ''Dly 0.5
76 ''Wait M_In(6016)= 1 'ok to Move from load robot
77 ''Mov P21
78 ''Ovrd 60
79 ''M_Out(6026) = 0 'ENABLES collet on/GRIP IN THE PLC
80 ''Wait M_In(6016)= 1 'ok to Move from load robot
81 ''Mov P31
82 ''M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
83 ''Mov P30
84 ''M_Out(6032) = 0 'open gripper here
85 ''Dly 0.25
86 ''Mov P31
87 If M_In(6013) Then GoTo *CYCLESTOP
88 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
89 Dly 0.25
90 Wait M_In(6016)=1 ' Wait FoR load robot clear
91 GoTo *Main
92 *CYCLESTOP
93 Mov P31
94 ' M_Out(6013)=1 'SEND CYCLE STOP DONE TO PLC

86
95 Wait M_In(6017)=1 ' OK TO START CLEAN OUT FROM LOAD ROBOT
96 CallP "2"
97 End

7.prg
Lin
Command
e
1 '''LEFT SPINDLE ONLY
2 'do a get current position and Then do a Z -
3 M_Out(6013)=0 'RESET CYCLE STOP DONE TO PLC
4 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
5 ''''Wait M_In(6015) = 1 ' Auto mode from plc
6 Ovrd 60
7 M_Out(6016) = 0 'DO NOT MoVE LOAD ROBOT WhilE MoVING TO UNLOAD STAGE
8 Wait M_In(6016)= 1 'ok to Move from load robot
9 Mov P31
10 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
11 M_Out(6032) = 0' Open gripper here
12 Dly 1
13 *Main
14 ''''If M_In(6013)=1 Then GoTo *CYCLESTOP
15 '''''''Wait M_In(6015) = 1 ' Auto mode from plc
16 ' M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
17 ' Dly 0.5
18 ' Wait M_In(6016)=1 ' Wait FoR load robot clear
19 Wait M_In(6016)= 1 'ok to Move from load robot
20 M_Out(6016)=0 ' SHUT OFF OK TO MoVE TO LOAD ROBOT
21 ''Mov P4
22 ''Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
''If M_In(6016) = 0 Then M_Out(6016) = 1 ' IF UNLOAD IS AT P4 AND LOAD IS MoVING, GIVE L
23
OAD THE RIGHT TO MoVE
24 ''Wait M_In(6016)= 1 'ok to Move from load robot
25 ''Mov P3 'Right spindle Step 1
26 ''Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
27 ''Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
28 ''Wait M_In(6016)= 1 'ok to Move from load robot
29 ''Mov P2 'Right Spindle Step 2

87
30 ''Wait M_In(6029) = 1 ' RIGHT KNIFE IS CLEAR
31 ''Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
32 ''Wait M_In(6016)= 1 'ok to Move from load robot
33 ''Ovrd 20
34 ''Mvs P1 ' Move to right spindle
35 ''Dly 0.25
36 ''M_Out(6032) = 1 'close gripper
37 ''Dly 0.25
''M_Out(6027) = 1 'send signal to PLC For collet RELEASE THIS IS A NC CONTACT IN A LATCH
38
ROUTINE IN PLC
39 'Wait For collet Closed signal
40 ''Dly 0.5
41 ''Mvs P2 'move to after unload position Step 1
42 ''M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
43 'Ovrd 60
44 ''M_Out(6027) = 0 'ENABLES collet Off/GRIP IN THE PLC
45 ''Wait M_In(6016)= 1 'ok to Move from load robot
46 ''Mov P3 'move to after unload position Step 2
47 ''Mov P31
48 ''''M_Out(6034) = 1 ' TELLS LOAD ROBOT THAT RIGHT SPINDLE IS CLEAR
49 ''M_Out(6016) = 1 'send "Clear to Move to Load Robot
50 ''Mov P30
51 ''M_Out(6032) = 0' Open gripper here'open gripper here
52 ''Dly 0.5
53 ''Mov P31
54 ''Wait M_In(6016) = 1 ' OK TO MoVE FROM LOAD ROBOT
55 ''M_Out(6016)=0 ' SHUT OF OK TO MoVE TO LOAD ROBOT
56 'wait For load robot signal
57 '''''''Dly 0.5
58 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
59 Wait M_In(6016)= 1 'ok to Move from load robot
60 M_Out(6019)=0 'NOT OK TO PLACE ON SPINDLE TO LOAD ROBOT
61 Mov P22 'Left Step 2
62 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR
63 Wait M_In(6016)= 1 'ok to Move from load robot
64 Mov P21 'Left Step 1
65 Wait M_In(6016)= 1 'ok to Move from load robot
66 Wait M_In(6028) = 1 ' LEFT KNIFE IS CLEAR

88
67 Ovrd 20
68 Mov P20 'Left Spindle
69 Dly 0.25
70 M_Out(6032) = 1'close gripper
71 Dly 0.25
M_Out(6026) = 1 'send signal to PLC For collet Off (RELEASE) signal Is like a motor starter stop/st
72
art circuit
73 M_Out(6034) = 0 ' TELLS LOAD ROBOT THAT LEFT SPINDLE IS CLEAR
74 Dly 0.5
75 Wait M_In(6016)= 1 'ok to Move from load robot
76 Mov P21
77 Ovrd 60
78 M_Out(6026) = 0 'ENABLES collet on/GRIP IN THE PLC
79 Wait M_In(6016)= 1 'ok to Move from load robot
80 Mov P31
81 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
82 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
83 Mov P30
84 Mov P29
85 M_Out(6032) = 0 'open gripper here
86 Dly 0.25
87 Mov P30
88 Mov P31
89 If M_In(6013) Then GoTo *CYCLESTOP
90 M_Out(6016) = 1 'SEND OK TO MoV TO LOAD ROBOT
91 Dly 0.25
92 Wait M_In(6016)=1 ' Wait FoR load robot clear
93 GoTo *Main
94 *CYCLESTOP
95 Mov P31
96 M_Out(6019)=1 'OK TO PLACE ON SPINDLE TO LOAD ROBOT
97 ' M_Out(6013)=1 'SEND CYCLE STOP DONE TO PLC
98 Wait M_In(6017)=1 ' OK TO START CLEAN OUT FROM LOAD ROBOT
99 CallP "2"
100 End

Parameters setting

89
Robot No: 0:Common
Parameter Explanation Pos. Data
LNG Language(JPN:Japanese,ENG:English) [1] ENG
NETIP Ethernet IP Address [1] 192.168.12.31
[1] UNLOAD
[2] REP
SLT1 Program name,Mode,Condition,Priority
[3] START
[4] 1

Robots and PLC Address Nomenclature

90
LOAD ROBOT PLC PLC LOAD ROBOT UNLOAD ROBOT PLC PLC UNLOAD ROBOT

91
INPUTS OUTPUTS INPUTS OUTPUT INPUT OUTPUT INPUT OUTPUT
6000 Y1300 LR OPERATION ENABLE X1300 6000 LR OPERATION ENABLE TO PLC 6000 Y1400 ULR OPERATION ENABLE X1400 6000 ULR OPERATION ENABLE TO PLC
6001 Y1301 LR SERVO ON X130 6001 LR DURING SERVO ON TO PLC 6001 Y1401 ULR SERVO ON X1401 6001 ULR DURING SERVO ON TO PLC
6002 Y1302 LR SERVO OFF X1302 6002 LR SERVO ON DISABLE TO PLC 6002 Y1402 ULR SERVO OFF X1402 6002 ULR SERVO ON DISABLE TO PLC
6003 Y1303 LR CYCLE STOP X1303 6003 LR DURING CYCLE STOP TO PLC 6003 Y1403 ULR CYCLE STOP X1403 6003 ULR DURING CYCLE STOP TO PLC
6004 Y1304 LR ERROR RESET X1304 6004 LR DURING ERROR TO PLC 6004 Y1404 ULR ERROR RESET X1404 6004 ULR DURING ERROR TO PLC
6005 Y1305 LR PROGRAM RESET X1305 6005 LR PROGRAM SELECT ENABLED TO PLC 6005 Y1405 ULR PROGRAM RESET X1405 6005 ULR PROGRAM SELECT ENABLED TO PLC
6006 Y1306 X1306 6006 LR STOP IN TO PLC 6006 Y1406 X1406 6006 ULR STOP IN TO PLC
6007 Y1307 LR STOP2 X1307 6007 LR DURING WAIT 2 (STOP 2)TO PLC 6007 Y1407 ULR STOP2 X1407 6007 ULR DURING WAIT 2 (STOP 2)TO PLC
6008 Y1308 X1308 6008 LR DURING WAIT (STOP) TO PLC 6008 Y1408 X1408 6008 ULR DURING WAIT (STOP) TO PLC
6009 Y1309 LR START X1309 6009 LR DURING EXECUTE (START) TO PLC 6009 Y1409 ULR START X1409 6009 ULR DURING EXECUTE (START) TO PLC
6010 Y130A LR AUTO ENABLE X130A 6010 LR AUTO ENABLED TO PLC 6010 Y140A ULR AUTO ENABLE X140A 6010 ULR AUTO ENABLED TO PLC
6011 Y130B X130B 6011 6011 Y140B X140B 6011
6012 Y130C X130C 6012 6012 Y140C X140C 6012
6013 Y130D X130D 6013 LR CYCLE STOP DONE 6013 Y140D ULR CYCLE STOP DONE X140D 6013
6014 Y130E X130E 6014 6014 Y140E X140E 6014
6015 Y130F AUTOMATIC MODE FROM PLC X130F 6015 6015 Y140F AUTOMATIC MODE FROM PLC X140F 6015
6016 Y1310 OK TO MOVE FROM UNLOAD ROBOT X1310 6016 SAFE POSITION TO UNLOAD ROBOT 6016 Y1410 OK TO MOVE FROM LOAD ROBOT X1410 6016 SAFE POSITION TO LOAD ROBOT
6017 Y1311 X1311 6017 CLEAN OUT OK TO ULR 6017 Y1411 OK TO START CLEANOUT FROM LR X1411 6017
6018 Y1312 X1312 6018 6018 Y1412 X1412 6018
6019 Y1313 OK TO MOVE TO SPINDLE FROM ULR X1313 6019 6019 Y1413 X1413 6019 OK TO MOVE TO SPINDLE TO LR
6020 Y1314 X1314 6020 6020 Y1414 X1414 6020
6021 Y1315 LR POSITION RESET X1315 6021 6021 Y1415 ULR POSITION RESET X1415 6021
6022 Y1316 X1316 6022 6022 Y1416 X1416 6022
6023 Y1317 X1317 6023 6023 Y1417 X1417 6023
6024 Y1318 X1318 6024 6024 Y1418 X1418 6024
6025 Y1319 PALLET READY TO UNLOAD TO PLC X1319 6025 PALLET EMPTY FROM LR TO PLC 6025 Y1419 X1419 6025
6026 Y131A X131A 6026 OPEN LEFT COLLET TO PLC 6026 Y141A X141A 6026 CLOSE LEFT COLLET TO PLC
6027 Y131B X131B 6027 OPEN RIGHT COLLET TO PLC 6027 Y141B X141B 6027 CLOSE RIGHT COLLET TO PLC
6028 Y131C LEFT X AT HOME X131C 6028 6028 Y141C LEFT X AT HOME X141C 6028
6029 Y131D RIGHT X AT HOME X131D 6029 6029 Y141D RIGHT X AT HOME X141D 6029
6030 Y131E LEFT TRIM STARTED TO LR X131E 6030 CLEAR TO START LEFT TRIM TO PLC 6030 Y141E LEFT SPINDLE READY FOR UNLOAD X141E 6030
6031 Y131F RIGHT TRIM STARTED TO LR X131F 6031 CLEAR TO START RIGHT TRIM TO PLC 6031 Y141F RIGHT SPINDLE READY FOR UNLOAD X141F 6031
6032 X1320 6032 LR GRIPPER 0 = OPEN 1 = CLOSE 6032 X1420 6032 ULR GRIPPER 0 = OPEN 1 = CLOSE
6033 6033 6033 6033 L BLOW
6034 6034 6034 6034 LOAD LEFT OR RIGHT SIDE TO LR
Recommended Spare Parts

Vendor Part Description Qty


Allied Automation, RV4FRLD MITSUBISHI Robot/4kg/800 1
Inc. Cont (No iQR CPU) "Robot and Controller"
Powerhold, Inc. 935-3B5C-P2313 Special 3B/5C Workhead 1
"Spindle"
Allied Automation, 575676, VUVS-L20-M52-AZD-G18-F7-1C1, 1
Inc. FESTO Solenoid valve
MQ SMC CJP2B10-35D-B "Robot Gripper Pushing 2
Automation/Mosier Cylinder"
Allied Automation, HG-KN13J, MITSUBISHI, SRVMTR 100W, 1
Inc. 3KRPM,200V "Y and Brush Servo"
Allied Automation, RX41C4, Mitsubishi, iQ-R 32 point input 1
Inc. 24VDC
Allied Automation, 543985, DGSL-16-30-PA, FESTO Mini slide, 1
Inc. DGSL-16-30-PA "Brush Slide"
Allied Automation, 8048306, EGSC-BS-KF-32-25-8P, FESTO 2
Inc. Mini slide "Y Slide"
Allied Automation, 4491059, EAMM-A-V25-40P, FESTO Axial 1
Inc. kit "Y and Brush Servo to Slide Adapter"
Allied Automation, MR-J4-10GF-RJ, MITSUBISHI, AMP 100W, 1
Inc. 200V, CCLINK IE FIELD "Y and Brush Servo
Drives"
Allied Automation, FR-A820-00077-E1N6, MITSUBISHI, CT 1
Inc. INVERTER 1HP(ND) 230V W/ETHERNET
"VFDs"
MiniTec MAT-36251 Belt Conveyor 45 Plug-On Motor 1
Automation
Allied Automation, 1163043, HGDD-50-A, FESTO 3-point gripper 1
Inc. HGDD-50-A "Robot Grippers"
Allied Automation, 00118ET3E143TC-S; WEG 1HP 1800 3 60 1
Inc. 208-230/460 "Spindle Motors"

92
Anita Machine & GRIPPER ASSEMBLY (PER SET) "Gripper 3
Tool Inc Tooling"
Keyence 8536509065; GS-10PC; Safety Interlock - Non 1
contact type simple type, 5 pin, PNP, M12
Allied Automation, MR-J4-70GF-RJ, 1.0 MITSUBISHI, AMP 1
Inc. 750W 200V,CCLINK IE FIELD "X Servo
Drives"
Allied Automation, 2733785, EAMM-A-D50-80P, FESTO Axial 1
Inc. kit "X Servo to Slide Adapter"
Allied Automation, 8022595, ESBF-BS-50-300-10P, FESTO 1
Inc. electric drive "X Slide"
Allied Automation, 2784164, EAGF-V2-KF-50-320, FESTO Guide 1
Inc. unit "X Slide Rails"
Allied Automation, HG-KN73JK, MITSUBISHI, SRVMTR 750W, 1
Inc. 3KRPM,200V "X Slide Servos"
Gates-Mectrol 32AT10/1650 / 1650mm lg welded steel, PU 2
92 shore A, White, Nylon Tooth, 25mm
slitting, 2mm 92A Urethane backing "White
Conveyor Belts"
Gates-Mectrol 32AT10-22 / Pulley 22 Teeth 20mm bore w/ 2
key small flange, Flange OD 71mm, No Hub
"Pulley for White Conveyor Belts"
Net Conveyor.com NP-Z / Plastic Coupling Chain 3.226 meters 1
long (254 links)
Misumi SSCCJ20-6 / Clamp Collar 2
Misumi CHEES20 / Two Row Sprocket 2
Pepperl+Fuchs ML17-54/115b/136 / Photo Switch 2
Pepperl+Fuchs REF-S25 / Reflector 25mm 2
Pepperl+Fuchs NBB5-18GM50-E2-V1 / Prox Switch 18mm 1
Charles P Lauman SK 1SMID31AZ - 63S/4 CUS / Quote ID 1
4ZH2GR.0 0.16hp 25:1 "Individual Conveyor
Motors"

93
Flodraulic CDNA2B50-400-D / SMC Cylinder w/Lock 1
"Load and Unload Conveyor, Up/Down
Cylinder"
Flodraulic RSDQA32-20T / SMC Stopper Cylinder 1
"Upper Middle, Upper Exit, Lower Middle, and
Lower Exit Cylinders"

94

You might also like