Posts by atomic_robo

    HI Panic Mode. My setup is like this.


    I have 3 buttons. One to move next and a second to move backward and a third to save the position. I am running in AUT as I don't have a higher level controller.




    Do you mean increment a pointer on a push button? Sorry, I don't mean for you or anyone to do my homework :smiling_face:


    Like always, thank you

    Thank you for the your reply SkyeFire.


    I tried using


    CWRITE($CMD,STAT,MODE,"STOP 1") which I had in the sps but for some reason it stopped the Submit Interpreter as well


    Does it matter if have MODE = #SYNC?


    Thanks again

    Hello all,


    KRC4 KSS V.8.3.30 controlling a KR3


    I used CWRITE to select a program in AUT mode ( not in AUT/EXT) and it works perfectly fine. Is there any way of starting the program using a signal without having to use a loop , i.e. the equivalent of pressing the play button?


    Also, I used the command

    CWRITE ($CMD, STAT, MODE, "STOP/R1/Program()") in the submit interpreter.


    But I noticed that it stops the submit interpreter as well and not just the program. Is this normal?


    Thank you all


    EDIT: I did not include the line

    MODE=#SYNC. Can someone tell me what it means if I just want to stop or start a program? In the manual it says


    Quote:


    The CWRITE statement is deemed to have been executed
    once the partner controller has fetched the transferred data
    from the receive buffer.

    Unquote

    Hello,


    KRC4 KSS V.8.3.30 controlling a KR3


    I already checked this thread and tried to recreate it but nothing is working.


    https://www.robot-forum.com/robotforum/thread/21062-e6pos-array-and-touch-up-problem/


    my goal is create motion folds that could be touched from the pendant and then stored into an array, i.e. when the block pointer is at a particular motion and when someone touches the point, i'd like it to be saved in that array.


    Here's what I did


    DECL GLOBAL E6POS XPOS[2]


    XPOS[1]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}

    XPOS[2]={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0}


    DECL GLOBAL FDAT FPOS[2]

    FPOS[1] = {TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " ",TQ_STATE FALSE}

    FPOS[2] = {TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " ",TQ_STATE FALSE}

    DECL PDAT PPDAT1={VEL 100.000,ACC 40.0000,APO_DIST 100.000,GEAR_JERK 50.0000,EXAX_IGN 0}


    Then in the .src file I created a fold


    ;fold PTP XPOS1


    $BWDSTART=FALSE

    PDAT_ACT=PPDAT1

    FDAT_ACT=FPOS[1]

    BAS(#CP_PARAMS,10)

    PTP XPOS[1]


    ;ENDFOLD


    When I try to touch or change i get a message saying ' invalid component'


    Any suggestions?


    Thnk you in advance

    Hi Everyone,

    Robot: KR3

    Controller: KRC4 running KSS 8.3.30




    Is it possible to convert an INT variable to a BITS without having to write my own functions


    My goal of this conversion is to map each bit to $OUT.


    For example, let's say I have 8 digital outputs:


    If INT_Variable = 8 then

    $OUT[1]= 0

    $OUT[2]= 0

    $OUT[3]= 0

    $OUT[4]= 1

    $OUT[5]= 0

    $OUT[6]= 0

    $OUT[7]= 0

    $OUT[8]= 0


    Thanks :smiling_face:

    Hello Fanuc Experts,


    I am fairly new to Fanuc. I have a customer on site asking for a password, but no one here knows what it is. Is there any way to extract the password from the backups I have?


    Controller: r30iA


    Thank you in advance

    SkyeFire: In your reply, you mentioned motion prediction before the robot moves


    " ... but you want to check whether the location is reachable before you issue the motion command"


    Can you please explain how that can be done?


    Thank you in advance

    Skyfire, I can't thank you enough for your amazing and detailed answer which took me back to the Serial Manipulator Class I took a while back in engineering school.


    Thank you again. Everything makes a lot more sense now. :merci: :merci: :merci:

    Thank you just_learning_KRL and Skyfire.


    @Skyfire: 1) Doing "


    $TOOL=TOOL_DATA[1]
    PTP Point1
    $TOOL=TOOL_DATA[2]
    PTP Point1 "


    Point1 has coordinates in reference with a certain tool and base, e.g TOOL_DATA[1] and $NULLFRAME. I am still unclear on how this code would work without doing any transformation.



    2) Can you please let me know where to find more information on such functions? I couldn't find the inverse function in the system integrator manual.


    Thank you again :beerchug:

    Hello,


    KRC4 KSS V.8.3.30 controlling a KR3



    Q1: I have a taught point, let's call it P1=[X1,Y1,Z1,A1,B1,Z1], in { Base=$Nullframe and Tool=Tool1}. I'd like to move to the same point is space using a different tool frame {Tool=Tool2}. How do I go about this? Is it simply a matter of transforming T1 to T2 using the G. O(:) and then moving the tcp to P1?


    Q2: I have a taught point. P2=[X2,Y2,Z2,A2,B2,C2] in {Base=$nullframe and Tool=Tool1}. I'd like to create a new base( Base2) and get to P2 in space using the Base2 as a reference.



    Thank you so much in advance

    Hello Robo-specialists,


    Robot: KR3
    Controller: KRC4 running KSS 8.3.30


    I am well aware of the palletizing threads and used the programs posted by Skyfire as a reference to build my own. The thing is, while testing the algorithm I kept the orientation of the tool fixed. I am trying for fill boxes with mushrooms, what I did so far works for one type of boxes. I was surprised by the fact that they use a different type of box that has 'lips' on its sides ( please look at the pic I attached). I believe I need to enter the box at different orientations under the 'lips'. I am not sure how to do this using loops? I thought of splitting the box into a geometrical positions, i.e. a matrix of coordinates and then command the robot to enter at different orientations where the lips reside. Any better ideas?


    Thank you so much and sorry for making this post an essay

Advertising from our partners