E6POS array and touch up problem

  • Hi,


    I declared an E6POS array and there is no error.
    But in .src file when I try to touch up a point which is in my array, Kuka shows me the default tool and base, not my point's FDAT_ACT value.
    As I understood when you try to touch up a point ex: xExamplePoint the system try to fınd an FDAT which is called fExamplePoint. If can not find It uses the actual tool and base.
    I Declared an FDAT array with same name of my array but it did not worked. System still try to touch up with actual tool and base.
    Is there anyone who can touch up an array point with correct tool and base?



    My .src file


    My Kernel System is V8.3.161

    Edited once, last by s.yilmaz ().

  • Try not to use arrays. Probably the controller does not expect arrays to be used here. At least when I try to teach positions the controller does not use arrays.


    DECL GLOBAL E6POS XEXAMPLEARR1 = {...}
    DECL GLOBAL E6POS XEXAMPLEARR2 = {...}
    DECL GLOBAL E6POS XEXAMPLEARR3 = {...}
    ...


    DECL GLOBAL FDAT FEXAMPLEARR1 = {...}
    DECL GLOBAL FDAT FEXAMPLEARR2 = {...}
    DECL GLOBAL FDAT FEXAMPLEARR3 = {...}
    ...


    Fubini

  • I need to use arrays. if I dont use arrays I know it works.


    what is the meaning of FDAT_ACT= in the defining of a point? the controller system really looks this value?


    Because as I understood controller try to find an FDAT which is the same name with the point. (point -> XEXAMPLE fdat-> FEXAMPLE )

  • Well it is not important what you need. It is important how the controller can handle it. And this is not in connection to arrays.


    FDAT_ACT: Yes it is used. Study bas.src on how it is used.


    Fubini

    Edited once, last by Fubini ().

  • it does work fine, interpreter has no problem with it, touching up works as expected etc.
    the issue is that such things are pain to work with because HMI editor does not allow use of square brackets in name.

    1) read pinned topic: READ FIRST...

    2) if you have an issue with robot, post question in the correct forum section... do NOT contact me directly

    3) read 1 and 2


  • I need to use arrays. if I dont use arrays I know it works.


    what is the meaning of FDAT_ACT= in the defining of a point? the controller system really looks this value?


    Because as I understood controller try to find an FDAT which is the same name with the point. (point -> XEXAMPLE fdat-> FEXAMPLE )


    Actually, the FDAT variable can have any name. It's just that the HMI makes the FDAT variable match the point name variable by default, when creating a point using the standard inline forms.


    If you wanted, you could have only one FDAT variable in your .DAT file, and simply use it at every point.


    FDAT variables are used to assign Tool and Base data on a point-by-point basis.


    The only reason that FDAT_ACT and BAS are used in every move is to make menu-driven programming from the pendant easier. The problem is, the menu-driven programming system was set up as a "easy mode" programming system -- every point created, named, and taught from the pendant using the menus. Once you start trying to get fancier, like building points into arrays, the system starts to break down, because it wasn't designed to cover that option. One thing to understand is that, to enable menu-based programming, the user interface bundles multiple, often redundant, lines of KRL code together where an KRL programmer would only use 1 or 2 lines. And the lines that begin with ";" are treated by the compiler as comments -- they only exist to enable the inline form drop-down menus.


    Are you creating this program on the pendant, by hand, or generating it offline? I assume it must be the latter, since the inline form will not accept "[" or "]" characters. If you are generating this code offline, then you should be okay to do things like touch-ups from the pendant, but you won't be able to add new points or change the names due to the character limitation.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account
Sign up for a new account in our community. It's easy!
Register a new account
Sign in
Already have an account? Sign in here.
Sign in Now