BAS () Kuka Robot Continuous motion

  • Hi,


    I am currently developing a program with a Kuka Robot, in which I constantly change tools with these two commands:


    $TOOL = TOOL_DATA[5]

    BAS(#TOOL,5)

    then I make movement with PTP_REL, however the movement is not continuous like when you move the robot from one PTP to another. I have noticed that a PTP is defined with BAS(#PTP_PARAMS,100), and there the motion conditions are defined. But since it is not a PTP but PTP_REL, I don't know how I can define the motion conditions to always have a continuous motion and not a step-by-step one.


    Greetings and thank you very much for your answers

  • Schritt für Schritt zum Roboterprofi!
  • basically $TOOL = TOOL_DATA[5] sets the toolframe to TOOL_DATA[5], that's normally all you need.

    BAS(#TOOL,5) does the same, but also checks limits and overwrites the loaddata, and so on...

    If you just want to modify the geometry then a bare "$TOOL = TOOL_DATA[5]" should work without stops.


    Michael

  • Thank you very much,


    At first I only tried with $TOOL = TOOL_DATA[5], but when running the program the Robot did not make the move with that tool and kept selecting TOOL 1 without making the change. Maybe I don't know if $Advance has anything to do with it. That's why I found that with BAS(#TOOL,5) it activates the tool I want. I attach a summary of the code I try to implement. It possibly helps to understand my problem better. I appreciate your help and comments


  • Why you use two threads? It's difficult to reply seriously to two topics.

    Den Roboter "in seinem Lauf hält weder Ochs noch Esel auf!"

  • I don't get the point of your code, because the loops are senseless so far, you never use the counter in any way. That means, the robot will stop simply because the PTP_REL leads repeatedly to the same position, depending on how big N_Punkte is.


    Anyway, the tool assignment should be okay with just $TOOL=... and no load interference. $ADVANCE, of course, should be 1.


    Michael

  • Why do you think it should be 1?

    It can, and should be more than 1.

    Because (well, that's my impression of this, as said before, I really don't get the point) he's calculating, changing a TOOL AND also driving one point and doing this point by point inside of a loop for each single target. So all calculations and settings better affects as less as possible. Outside of the loop bounds he should switch back to default.

    Preparatory calculations in and around loops might be confusing as soon as you stop and restart.


    Michael

  • I appreciate all your comments,


    Finally I managed to make the continuous movement by making an Array in which I saved the desired values of the relative movement in this case the number of points of the loop and then I execute the saved points, so I understand that the Robot already has data to perform the movement.

    Now I will open a new case for other doubts. Additionally, only with $TOOL I didn't achieve the tool change during execution but with $ACT_TOOL.


    Thanks to everyone!:aktion066:

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden