circular (rotary table) conveyor tracking setup and callibration problems

  • I am setting up a rotary table circular conveyor tracking robot on a IRC5 robot. Met with some strange problems that I could not understand why.
    Sympton: After I finished the three steps of teaching, I try running the conveyor with my tracking trajetory, found out that the robot runs the shape as if table not moving!!! In other words, I can see the object been synchronised (c1 connected) and encoder counting ok (variable C1position value accumulates with the table rotating), but the robot run the desired shape as if tracking speed is zero.
    The steps I used:
    Step 1: calibrate encoder, counter as 48000 counts/meter (rad)
    Step 2 calculation of base frame center: the three positions P1 ,P2 and P3 , without activate the conveyor, using coordination system= tool, tool= my TCP for touch pisition. And non of these three positions has relationship to the sync position.
    Step 3, tracking work object teach. For position "ModPos" of X1, X2 and Y1. Except that the table must be synchronized and stopped right at the sync switch position. Then I use
    coordination system =tool
    Tool= my TCP
    To teach the tracking work object.
    Is there anything I did wrong?
    Later I founded out that the encoder pulse is not correct. After check, it should be 32500 pulse/meter (rad), but it should not cause the tracking to be a problem, just accuracy offset more and more along tracking, right?

    Good controller for good manipulator, good programmer for good robots

  • Are you using the WaitWobj and DropWobj in your routine?


    WaitWObj wobj_turntable;
    Set sync_ref;
    MoveL *,v1000,z20,tmix_head\WObj:=wobj_turntable;
    Set FOAM_1;
    .
    .
    .
    .

    MoveL *,v1000\T:=3.5,z20,tmix_head\WObj:=wobj_turntable;
    Reset FOAM_1;
    MoveL *,v1000\T:=0.6,z20,tmix_head\WObj:=wobj_turntable;
    Set CLEAN;
    DropWObj wobj_turntable;

    BR<br />prnuk2003

  • Yes, I use waitWobj before pick up object and after process tracking trajecoty, dropWobj and deact CNV1.
    Wandering what is the root cause of my problem.

    Good controller for good manipulator, good programmer for good robots

  • I think I did set the work object to be the tracking user frame.
    My program is like:
    My process tracking routine is like:
    ........
    MoveL pShot012_02, v4000\T:=0.3, z100, toGun\WObj:=wobjtrack;
    MoveL pShot012_03, v4000\T:=0.7, z100, toGun\WObj:=wobjtrack;
    MoveL pShot012_04, v4000\T:=0.5, z100, toGun\WObj:=wobjtrack;
    MoveL pShot012_05, v4000\T:=1.5, fine, toGun\WObj:=wobjtrack;
    SetFoam;
    MoveL pShot012_06, v4000\T:=0.3, fine, toGun\WObj:=wobjtrack;
    ResetFoaming;
    MoveL pShot012_07, v4000\T:=0.5, z100, toGun\WObj:=wobjtrack;
    .......


    My main logit is like:
    ......... //from below is the job starts
    SetProNo;
    ConfL\Off;
    !MoveL pWait, v3000, fine, toGun;
    Actunit CNV1;
    %"WaitTrack"%;

    WaitUntil c1Position>0.01;
    MoveL pTrackA10, v2500, fine, toGun\WObj:=wobj0;
    reset doCoveyorStoped;
    reset doInPosTeach;
    CallByVar "JobModule_",nProd; //call process tracking routine like I listed above
    Set doCycleEnd;
    MoveL pA20, v2500, fine, toGun\WObj:=wobj0;


    DropWObj wobjtrack;
    DeactUnit CNV1;
    MoveJ pHome, v2000, Fine, toGun;


    Set doIRBOutRangMC;
    Reset doCycleEnd;
    ClkStop Timer;
    nCycleTime:=ClkRead(Timer);
    Waittime 5;
    ........... //loop for next job

    Good controller for good manipulator, good programmer for good robots

  • I don't see waitwobj wobjtrack but you said earlier you use this instruction so they must be in another routine than those you list.


    If you go into program data window, types - wobj
    then look into the 'wobjtrack' values can you see that ufprog is set to FALSE and mechanical unit name (I think CNV1 in your case) in the text string of ufmec?


    see example on attached doc.


    There are some fancy calculations or manual definitions for the base frame but then you have some other params for a circular conveyor to check (from the manual):


    In the parameters for the robot do you have this settings:


    8.7 Additional motion settings
    Conveyor start window and sync separation
    For circular conveyor tracking these distances are defined in radians.


    Conveyor maximum and minimum distances
    Note!For circular conveyor tracking these distances are defined in milliradians.


    Conveyor adjustment speed
    The same as for linear conveyors.


    Motion System parameters
    The same as for linear conveyors.


    Mechanical Unit parameters
    The same as for linear conveyors.


    Transmission and Single Type parameters
    The motion configuration of the conveyor must be adjusted to account for a circular motion
    of the conveyor. There are two parameters that must be adjusted.


    Parameter Type Description
    Rotating Move Transmission Defines if the conveyor is rotating (Yes) or linear
    (No).


    Mechanics Single Type Defines the mechanical structure of the conveyor. Select EXT_ROT

  • Thank you prnuk2003. Found out that my problem was caused by base frame calibration. Now solved it by correct way.

    Good controller for good manipulator, good programmer for good robots

Advertising from our partners