X90CP15x controller : register access during runtime for sensor output control

Dear all,

First of all I wish to everyone an Happy new year 2026 !

So I don’t know if I’m on the right folder but my topic : the X90 controller has a sensor output (0V, 5V or 10V) wich is configured on AS (see below) and set only at the controller boot.

But for one project, I would like to stop and start (at 10V) this sensor output during the runtime and on the Help, I see that this output could be managed by “register” (I never used that) :

Wich is the register number "36865” with “write” access

But I don’t found any link to a library to access to this “register”, did someone already use this kind of “register access” and how ?

I’m using AS 4.12.8.41.

Thank you

This should be possible with the AsEPL library and the EplSDOWrite function block.

I have not tested with an X90 but by setting the “node = 0” you should be able to access the local PLC’s registers.

Calling the function block with “node = 0” accesses the local object dictionary on the PLC.

Hello,

As this table does not show Index and SubIndex. I would consider the Library AsIoAcc as the one to go. It is also used for configuring X20-Registers.

I tried to make a test in Simulation but i could not get it up running. it might be due to Simulation, but i have no X90PLC at hand to test. Or i might be wrong… Here is my Test Program.

X90RegisterX1.zip (1.6 KB)

Greetings
Michael

2 Likes

Dear Tommi,

Thanks for your feedback.

I had a look on this library and the problem is that this requires an “index” and “sub-index” that don’t exist for the X90 controller registers.

I tried the sample of this library on my controller without success.

AsIoAcc is the correct library.

Note that the cfgOpMgmt_Mode register only has acyclic write access, so the AsIOAccRead() FUB won’t work on that register. Try only running the AsIOAccWrite() FUB against the register.

Hello,

Thanks for the test with the real Hardware. As i had same issue with the Write-Function Block i assume there is some other issue.

I think the Module itself was correct as i got another Error when changing ‘X1’ to something different.

The Library also stated that we can use the Register Numer, which i tryed, but resulted in same Error.

I think there is some issue with this RegisterName, i have to think about this…

Greetings
Michael

Dear Austin,

This is just what I understood before your answer (I only tested the Read FUB) and I tried only the Write FUB and it’s working !

Thank you.

2 Likes

Just a precision : this feature (control the sensor supply ouput from 0V to 10V) is only available on the “X90CP15x” NOT on the “X90CP17x”

On the “X90CP17x”, you can only adjust between 5V to 10V (tested with the same library and control to 0V is not possible).

1 Like