So it completes the pallet then?
The robot only runs for one pallet; after that, it gets stuck in a loop.
So it completes the pallet then?
The robot only runs for one pallet; after that, it gets stuck in a loop.
; Last Bag R C/V
IF (SIG(1009)==TRUE) THEN; Last Bag R C/V
SIGNAL (22); Job Complete R ==> Forced pallet exit
bag_no_r = 0
GOTO 10
END
; Last Bag L C/V
IF (SIG(1008)==TRUE) THEN; Last Bag L C/V
SIGNAL (21); Job Complete L ==> Forced pallet exit
bag_no_l = 0
GOTO 10
END
Display More
SIGNAL (21) and SIGNAL (22) look like they need swapping.
pg14 uses SIGNAL 21 for last bag right, but above you have SIGNAL (22)?
Also recommended not to place SIGNAL outputs in parenthesis either:
SIGNAL 21
SIGNAL 22
You need to recheck your master for correct signals for left and right.
Something appears mixed or swapped over between left and right selection , complete, reset.
The following areas of code need to checked to ensure left and right logic is applied for the correct sequencing:
;Last Bag Change Logic
; Last Bag R C/V
IF (SIG(1009)==TRUE) THEN; Last Bag R C/V
SIGNAL (22); Job Complete R ==> Forced pallet exit
bag_no_r = 0
GOTO 10
END
; Last Bag L C/V
IF (SIG(1008)==TRUE) THEN; Last Bag L C/V
SIGNAL (21); Job Complete L ==> Forced pallet exit
bag_no_l = 0
GOTO 10
END
Display More
I think these are mixed up between left and right according to your sequence.
THANK YOU VERY MUCH, IT'S SOLVED!
The problem was that as the robot programmer and the PLC programmer, I didn't align the logic properly with the left and right conveyors.
Nice.......glad to hear you've resolved it............
FYI..........
Your initial coding was valid AS Language format for IF's and SIGNALS, but as mentioned I have seen instances where the return of the arguments comes back incorrectly plus it is quite easy for 'us' to misread or insert some typo's etc.
Regarding the suggestions of changing your code referencing the IF's and the SIGNALs, it makes it clearer and easier to read and eliminates incorrect returns of arguments.
So reviewing everything, it looks like it was the 'mix up' of the logic that was probably the issue.
Keep that PAUSE command in your troubleshooting tool box, very effective command to use outside of the usual use of it.