FANUC R - J3IC program going on a loop.

  • Hello All,


    I'm a newbie to FAUNC robot or any robots. I am working on an existing FANUC program. I have three questions:


    1) What is exactly TIMER[1] = STOP => Is this tell the program to stop counting? I read TIMER[1]=STOP from this forum and not fully understanding it.

    2) This robot program is running on a loop once it completed the process. It does not see the part present on the conveyor. It is running ghost part.

    3) What is the difference between (ON) and ON. For example, 71: F[3:StandbyPos.-Side move]=(OFF) ;


    This FANUC robot is communicating with Mitsubishi PLC. Here is the program for your reference. Thank you all for your support.


    1: UFRAME_NUM=0 ;

    2: UTOOL_NUM=1 ;

    3: ;

    4: LBL[1] ;

    5: IF GI[1:Modle number]<>4,JMP LBL[9999] ;

    6: ;

    7:J PR[2:Standby Pos.] 30% FINE ;

    8: DO[9:Standby Pos.]=ON ;

    9: ;

    10: TIMER[1]=RESET ;

    11: TIMER[1]=START ;

    12: WAIT DI[11:Upside camera scan]=OFF AND DI[14:Side camera scan]=OFF

    : AND DI[10:Upside valve OFF]=ON AND DI[13:Side valve OFF]=ON ;

    13: ;

    14: DO[9:Standby Pos.]=OFF ;

    15: DO[4:Upside interfrence]=ON ;

    16: CALL JOB0500 ;

    17: ;

    18: !Top coating ;

    19: TOOL_OFFSET CONDITION PR[13:Toolshift Z Top] ;

    20:J P[1] 80% CNT100 ;

    21:L P[2] R[103:Sealing speed_4]mm/sec FINE BREAK Tool_Offset ;

    22: DO[12:Start of upside]=ON ;

    23: WAIT DI[9:Upside valve ON]=ON ;

    24: ;

    25:L P[3] R[105:Sealing speed_6]mm/sec CNT100 Tool_Offset ;

    26:L P[4] R[105:Sealing speed_6]mm/sec CNT50 Tool_Offset ;

    27:L P[5] R[103:Sealing speed_4]mm/sec CNT50 Tool_Offset ;

    28:L P[6] R[103:Sealing speed_4]mm/sec CNT50 Tool_Offset ;

    29:L P[7] R[103:Sealing speed_4]mm/sec CNT80 Tool_Offset ;

    30:L P[8] R[103:Sealing speed_4]mm/sec CNT70 Tool_Offset ;

    31:L P[9] R[103:Sealing speed_4]mm/sec CNT80 ;

    32:C P[10] Tool_Offset

    : P[11] R[102:Sealing speed_3]mm/sec CNT50 Tool_Offset ;

    33:L P[12] R[103:Sealing speed_4]mm/sec CNT70 Tool_Offset ;

    34:L P[13] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    35:L P[14] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    36:L P[15] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    37:L P[16] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    38:L P[17] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    39:L P[18] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    40:L P[19] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    41:L P[20] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    42:L P[21] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    43:L P[22] R[103:Sealing speed_4]mm/sec CNT70 Tool_Offset ;

    44:C P[23] Tool_Offset

    : P[24] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    45:L P[25] R[103:Sealing speed_4]mm/sec CNT80 Tool_Offset ;

    46:L P[26] R[103:Sealing speed_4]mm/sec CNT80 Tool_Offset ;

    47:C P[27] Tool_Offset

    : P[28] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    48:L P[29] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    49:L P[30] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    50:L P[31] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    51:L P[32] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    52:L P[33] R[102:Sealing speed_3]mm/sec CNT100 Tool_Offset ;

    53:L P[34] R[102:Sealing speed_3]mm/sec CNT100 Tool_Offset ;

    54:L P[35] R[102:Sealing speed_3]mm/sec CNT100 Tool_Offset ;

    55:L P[36] R[102:Sealing speed_3]mm/sec CNT100 Tool_Offset ;

    56:L P[37] R[103:Sealing speed_4]mm/sec CNT100 Tool_Offset ;

    57:L P[38] R[103:Sealing speed_4]mm/sec FINE Tool_Offset ;

    58: ;

    59: DO[5:Upside Appli, Done]=ON ;

    60: ;

    61:J P[39] 30% CNT100 ;

    62: DO[12:Start of Upside]=OFF ;

    63: WAIT DI[10:Upside valve OFF]=ON ;

    64: DO[5:Upside Appli, Done]=ON ; // I was testing this

    65: ;

    66:J PR[2:Standby Pos.] 80% FINE ;

    67: DO[4:Upside interfrence]=OFF ;

    68: DO[9:Standby Pos.]=ON ;

    69: WAIT DI[14:Side camera scan]=OFF AND DI[13:Side valve OFF]=ON ;

    70: DO[9:Standby Pos.]=OFF ;

    71: F[3:StandbyPos.-Side move]=(ON) ;

    72: DO[6:Side interference]=ON ;

    73:J PR[2:Standby Pos.] 50% FINE ;

    74: DO[6:Side interference]=OFF ;

    75: F[3:StandbyPos.-Side move]=(OFF) ;

    76: TIME[1]=STOP

    77: R[14:Sealing Time_4]=TIMER[1]

    78: END

    79:

    80:

    81: LBL[9999: Model number err]

    UALM[1]


    Thank you all for your time.

  • SkyeFire

    Approved the thread.
  • 1) What is exactly TIMER[1] = STOP => Is this tell the program to stop counting? I read TIMER[1]=STOP from this forum and not fully understanding it.

    2) This robot program is running on a loop once it completed the process. It does not see the part present on the conveyor. It is running ghost part.

    3) What is the difference between (ON) and ON. For example, 71: F[3:StandbyPos.-Side move]=(OFF) ;

    1. That is just a timer keeping track of how long it takes the program to run. Or actual the time between the timer start and stop commands.


    2. The jump label creates the loop.


    3. In this case, no difference between (ON) and ON. You can combine more complex logic inside parentheses if needed.

  • 1. That is just a timer keeping track of how long it takes the program to run. Or actual the time between the timer start and stop commands.


    2. The jump label creates the loop.


    3. In this case, no difference between (ON) and ON. You can combine more complex logic inside parentheses if needed.

    Thank you for the response.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now