Access adr()

Hi, when I compile and load the program, it goes to the plc service. When I look at the registry, it directs me to this. I’ve defined the values ​​MpAxisBasic[0..7] and MpAxisBasicParType[0..7] as global and will use them as references for local access, but it goes to the plc service.

The ACCESS must be done in the cylic part of the task.

I didn’t fully understand, could you give some details, where should I define the paxARM ACCESS ADR() function?

-Action ‘Accestion’
End_Action-

I enabled it on the main blog,
Accestion();

I have configured this in the cyclical part of the ACCESS main blog

If your action “Accestion” in call in a CYCLIC it should work, one thing I didn’t understand is that you but it in an action it’s for reusability? Why did the index “gARM“ is a constant?

pAxARM ACCESS ADR(gAxisBasic[gARM]); must be called before the pAxARM variable is used by anything else. So your ACTION Accesstion must be the first thing called in your CYCLIC code for the task.

PROGRAM _CYCLIC

Accesstion; (*Call the action to initialize the variables*)

pAxPar.Axis := ADR(gAxis01); (*Now i can start using the referenced function block after it is pointed to an actual structure*)

PAxPar.Mplink := ADR(gAxisBasic01);

1 Like