Posts by Fubini

    What weight difference? Light Boxes weigh how much? Heavy boxes weigh how much? What robot type? Please be a lot more specific and read forum read first and honor the suggestions given there.



    A 150 kg robot will for example not be able to decide between 20 and 25 kg. Industrial robots are not that sensitive. They do not have torque sensors. So torque is only estimated from current.


    Use a scale to determine the weight will probably be better.



    Fubini

    github? Bitbucket? Tons of sample programs for pretty much everything in pretty much any programming language. Or are you looking for something in peticular?


    There is no special subforum for examples. Just use search function for specific topics.


    Fubini

    What do you mean by difficult? I am eager to help but you need to be more specific. This sounds to me like you already speak Italian and wonder now why it does not help you in France. You should at least be willing to learn French.


    Spline can solve pretty much any problem you could also solve with traditional motions but you have to learn its tricks and tweaks just as you learned them for traditional programming style and now apply automatically without even thinking about them anymore. But remember when you started out this was probably not the case. In my experince you can achieve most of the times better results in performance, accuracy, ... with spline than with tradional programming and usually if you learn and become a spline expert this better results can be reached in less amount of time you have to invest.


    Fubini

    Maybe you use it wrong. What are these problems? Just complainig does not help. I am not sure I have understood your explanation correctly but If you want to stop on path on a defined position if a certain input is in desired state use stop when path feature aka conditional stop.


    Fubini

    No there is not. Why would you want to do this? This is a position that in normal execution should never be reached. Spline geometry is always the same with blending even when approximation is not possible. This is collision safe.


    Fubini

    Short answer: No they have no significance.


    But: Of course LINs have also an associated Status and Turn. But not necessarily those programmed by you when teaching your positions. Status is kept constant along the LIN move and has the value that Status happens to have when the LIN starts. Turn can change along the path and is created implicitly along the path. The motion interpolation always chooses each 12 ms cycle the axis values closest to the previous cycle axis values and on the defined cartesian line.

    Fubini

    When exactly does this happen?

    - In which operation mode?

    - How short are the moves?

    - Is it better when using SLIN instead of LIN?

    - Is it better if you use spline blocks instead of single motion command with blending?

    - Do you use blending? Which type with what blending configuration?

    ...


    Just to many possibilities with that minimum amount of information you are giving. Please show at least your program.


    Fubini



    Unfortunatly orientation control is not as simple as you expect. Is done using rotation and swivel with respect to a qualified axis usually the tool x axis.


    Fubini

    Yes APO_DIST is approximation distance in mm. APO_FAC on the other hand is a percentage value. In bas.src both are used to calculate corresponding system variable $APO. So lookup bas.src for your software version on how $APO is calculated and system variables manual to understand it and what units are used. Additionally look into system integrators manual to understand how blending works in general.


    Fubini

    Approximation Distance and approximation factor. Used in inline forms to store the programmed blending radii to define when blending from one motion to the next motion starts. To see how they are applied study bas.src together with looking into tbe system integrators manual and the system variables manual.


    Fubini

    I think the main costs are alle the necessary new licenses, mainly KSS 8.6 and Kuka Windows Embedded, you need to buy from KUKA and this is something that can not be avoided. Everything else would be software piracy and therfore illegal. If you can upgrade to 8.6 (which is running on windows side a Windows 10 version) depends on the mainboard version (MCC 20, 30 , ...) you have. I think these dependencies have been posted some time ago in this forum but I did not search for it now. But as always asking KUKA would probably also reveal this.


    Oops panic beat me to it.


    Fubini

    Totally agree deteriorated positions as you call it is something a process should never generate. Reteaching the positions is a solution if something like this happens but not the problem. The problem should be solved. So again: What is the problem? Otherwise if all points refer to a common base of course the "error" can be compensated by shifting the base as Leon said.


    Fubini

    Do not hit the robot! Thats cruel. :P


    Are those hits unidentienal or by purpose because you want to achieve something. If latter waht are you trying to do?


    Ever heard of CollissionDetection? Might be a direction for some cases.


    Fubini

    What does not exceed 2500 rpm? The axis or the servomotor. If it is the axis also rat_mot_ax needs to be considered.



    How do you know that desired velocity is not reached?


    Why is the axis set to linear by axis_type?


    If you want only to use a motor without kinematic integration why do you assign it external kinematic #EASYS.


    Fubini

    If this is your code you are only copying the variable and function prototypes into the program. Of course you need to declare and initialize your own variables and use them. Something like this:


    Code
    DECL SYNCTYPE mySyncTypeVariable
    DECL INT myCoopMask
    ...
    mySyncTypeVariable = #PROGSYNC
    myCoopMask = 'B00001'
    ...
    SYNCCMD(mySyncTypeVariable, "R2_R1", myCoopMask)
    ...


    or use the values directly


    Quote
    Code
    SYNCCMD(#MOTIONSYNC, "R3_R4", 'B1001')




    Fubini