RobotStudio event

About GripLoad Loaddata;

Hallo everyone,

i have a Problem. I define an Loaddata Array  als PERS.

PERS loaddata Muffe_Load{47}:=[[03.62, [0, 0, 0.4],[1, 0, 0, 0], 0, 0, 0],

[04.66, [0, 0, 0.4],[1, 0, 0, 0], 0, 0, 0], .......];

But it is not working with Gripload.

PROC GreiferClose()

Reset DO10_0GripperClose;

Set DO10_1GripperOpen;

WaitTime 0.5;

GripLoad Muffe_Load{12};

ENDPROC

Everytime Shows the follow Message:

41442: Reference Error


Description
Task: T_ROB1The reference in argument Load is not an entire persistent variable. Program Ref. /VenConfig/Greiferspannen/GripLoad/96


Actions
It is not possible to use record component or array element in arg. Load . It is only possible to use entire persistent variables for Tool, WObj or Load in any motion instruction.


Thanks

Comments

  • Hello,

    Did you forget to put TASK before creating the loaddata? as in:

    TASK PERS loaddata Muffe_Load{47}:=[[03.62, [0, 0, 0.4],[1, 0, 0, 0], 0, 0, 0],

    [04.66, [0, 0, 0.4],[1, 0, 0, 0], 0, 0, 0], .......];


    This works for me...


    I got this:

    TASK PERS loaddata LoadGripper{2} := [[0.001, [0, 0, 0.001],[1, 0, 0, 0], 0, 0, 0] , [0.001, [0, 0, 0.001],[1, 0, 0, 0], 0, 0, 0]];

    GripLoad L0adGripper{1};


    This works for me


  • Hallo B_Baan,

    Thank U for your Answer;

    I have copy your code. But It does not work for me. It is same error.


    Now i define a between-pers loaddata .  It called  "current_load"

    Verytime i update this data from my Loaddata-array.  It worked!


    PERS loaddata current_load:=[5.23, [0, 0, 0.4],[1, 0, 0, 0], 0, 0, 0];

    Pers num MuffeNrCurrent:=0;


    Proc Gripperclose()........MuffeNrCurrent:=DnumToNum (GInputDnum(gi17_22MuffeNr));

    current_load:=Muffe_Load{MuffeNrCurrent};

    GripLoad current_load;

    endproc