RobotStudio event

Reduced TCP speed with moveL

Hi everyone,



I've encountered a problem with repeated moveL instructions between close points.

Problem is:

The rapid manual states:

"If it is not possible to attain the programmed velocity for the reorientation or for the external

axes, the velocity of the TCP will be reduced."

on page 244 under MoveL.



Question is:

How do I know when exactly the TCP speed is being reduced? Is there any
flag in RAPID that can be read? Or, better, can the true TCP speed be
detected by RAPID in any way?

some Background information (if you're interested)


we're trying to make the robot follow a specific path that is described
with points in a NC-file. While this is generally working well, we
experience problems with using the moveL command when the distance
between two points is too little for the TCP speed given.





Basicly it's looking like this





moveL point,vExecuteV:=40,z1, toolwobj





with point is continually read from the nc-file looking like this:





...


77.6393,95.6992,0.0000,orientation


86.4886,90.9937,0.0000,orientation


97.6393,88.1516,0.0000,orientation


...

making the path look like this in the end. the thick blue line is the TCP.
image
Now i'm trying to find the best suiting distance between two points. If the point density is getting too high, the TCP feed rate (in my example above 40 mm/s) is dropping low, probably because the restrictive zone z1 in combination with moveL.

I hope my description is clear and I'm looking forward to hearing from anyone.

Best regards,
Michael Fink

Comments






  • See
     
    Topic I/O - Type System Output - Status values
    TCP speed



  • Thanks for the quick response. I searched the documentation and set up the system parameters for the TCP speed (and tcp speed ref) but it gives me an error that the corresponding E/A-signal is missing:
    image


    Out of the documentation i didn't find information about which E/A signal to choose (out of the list in the screenshot). Any help with that is appreciated.
    image
    Regards,
    Michael




    fraunhofer_ipt2009-11-26 13:24:33
  • Hi,

     

    Yes you need create a output signal before

    and associate to a system output

    and i tink you need create input signal and use cross link for read in rapid module

     

    Mario

     

  • Thanks Mario, but how do I create an output signal? The documentation says i have to define a bus (which one? DeviceNet1, Virtual1 or Local) and then create a unit (which type etc?)

    And then, how do i link that unit (?) to the E/A-signal?



    fraunhofer_ipt2009-11-26 14:31:36
  • Hi

    i don't remember each step but it's true
    Create a virtual_unit, type virtual on bus virtual1

    after you can create a analog output on virtual_unit

    create a analog input use a other mapping

    after use cross connection to connect annalog input on analog output

    and you can read analog input from rapid

     image

  • Great that seemed to work, i now have the signal and system output. Thanks.

    image
    I can read from it in robotstudio through E/A signals like in the screenshot above.

    But how can i read from it in rapid?

    fraunhofer_ipt2009-11-26 15:44:19

  • i probaly found a command fir read your output analog
    Try this
    AOutput is used to read the current value of an analog output signal. <?: prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    Basic examples Basic examples of the function AOutput are illustrated below.

    Example 1

    IF AOutput(ao4) > 5 THEN ...







    if do not work you can try read analog input.

    example (ai1 = signal name)

     IF ai1 > 5.2 THEN ...

    current_value := ai1;


    Give me info on your result please

  • Hey Mario,

    it's working just great with the AOutput() function. That did the trick. Quite a complicated way to set it up, but it works nicely now.

    Thank you very much for your help!

    Regards,
    Michael