My robot stops frequently, and I'm looking to smooth out the motions it executes. using the system variables, i'm looking whats causing the ARP to stop, and it appears to be my IF statements, because they are checking input statuses. The IF statements are calling my subprograms based on things like out of interference, gripper status, etc.
Is there a different way i should be writing my main program to call the subroutines? Or a way to let the ARP evaluate those IF statements? Sorry this is our first Kuka project so i'm not accustomed to their best practices.
Sample of my main logic below:
;************************
;CV Pick Logic
;************************
IF((GRIPPER_PART_STATUS == 0) AND ($IN[13] == TRUE) AND (($IN[11] == TRUE) OR ($IN[14] == TRUE))) THEN
cv_pickup()
ELSE
ENDIF
;************************
;Station 4 Pick Logic
;************************
IF((GRIPPER_PART_STATUS == 0) AND ($IN[10] == TRUE) AND ($IN[12] == TRUE)) THEN
station_4_unload()
ELSE
ENDIF