Let me start by saying I am a VERY GREEN engineer so forgive me if my nomenclature is not up to par. I am working on mapping IO and creating a program for control of an external device (Gesipa GAV 2000, Rivet gun) I have never done anything like this before (only simple pick and place MH). The gun is mounted on the EOAT of my FANUC SR-20iA SCARA. Unfortunately, the Gesipa does not work with PROFINET so we have decided to wire the interface module directly across to a breakout board for the R-30iB Compact's JRM18 I/O. NOTE: My company prefers our robots to be "as dumb as possible" so with that being said...
Idea 1: Have my robot in charge of basic rivet gun control while PLC handles Pass/Fail data.
Idea 2: Only control the robot path and give all rivet gun control to PLC and trigger gun thru PLC so my robot is just passing signals to PLC
The vendor said only 4 signals are typically used:
Out 2: Cycle lift position (confirmation that cycle started/ended?)
In 1: Start cycle
Out 8: OK
Out 9: NOK
Here is the full list of IO
Discrete Inputs from PLC/robot:
1 - Cycle Start
2 - Cycle Reverse
3 - Rivet Query Present in Nosepiece (for photoeye connected to PLC)
4 - Lock Cycle Start (disable manual trigger switch on tool)
5 - Counter Start (or reset maybe?)
6 - (spare?)
7 - Profile 1
8 - Next Profile
9 - Select Profile
10 - Profile List/Profile Bit 0
11 - Profile List/Profile Bit 1
12 - Profile List/Profile Bit 2
13 - Profile List/Profile Bit 3
14 - Evaluation Part
15 - (spare?)
16 - (spare?)
Discrete Outputs to PLC/robot:
1 - Cycle Ready
2 - Cycle Lift (stroke) Position
3 - GAV Fault
4 - Cycle Fault
5 - Counter/Part Finished
6 - MAN (manual mode?)
7 - (spare?)
8 - Process/Part OK
9 - Process/Part NOK
10 - Error Code Bit 0
10 - Error Code Bit 1
10 - Error Code Bit 2
10 - Error Code Bit 3
14 - (spare?)
15 - Maintenance (Mode?)
16 - (spare?)