SNAP PAC R1 - Schneider Quantum Comms

Hello there.
I´m using the Modbus Master chart to try communicate with a Quantum PLC from Schneider.
By now I just want to read a INT value from the Quantum that is register %MW6147, but Idk how do the mapping for that register. I try with follows: 6147, 406147, 46147, and with offset of 1 (so last number 8 instead of 7) but don´t have luck yet. Also in the configurations ask for the Slave Address, but I don´t know if keep the default “1” or where find that address.
I followed the settings from this video:


What Opto software are you using to read the Modbus slave? Or are you using Node-RED?

You are going to have to roll your sleeves up and read the Schneider manual I’m afraid.
The slave address will be set in the Schneider device, you will need to know it before you can continue. The manual will guide you on how to find it out if it is preset, or how to configure it otherwise.

How to read the register will be determined by the software you are using.

Also, welcome to the Opto forums.

Thank you Beno.

I´m using PAC Control Professional R9.3b, and PLC Simulator for Schneider.
I have done connections through kepserver to Schneider, using the 984 addressing.
But don´t have a clue how to do the “match” with opto22.
On schneider side only have the register, and that´s it. There´s nothing more to configurate.

This is what I´m doing, so I know at least the Opto22 is connected to PLC Simulator, “just” need to read/write values, and that´s it :rofl:

Right at minute 2:55 in the video is where we set the slave address.
I am not familiar with the PLC Simulator software, but somewhere in there will be a setting for what slave address it is.
Looks like you have everything else looking good, just that slave address is the unanswered question.

Is this Modbus TCP? If so, and you are connecting directly to the PLC and not going through a gateway, then there is no slave ID. Technically, in Modbus TCP it is called a Unit ID. You likely need to have this set to 0 or 255 when talking directly to a Modbus TCP device.

For your register, I would try just 6147. Some Modbus manufacturers do want the register to be 46147, but those are the dumb ones and should be thoroughly shamed in wasting so much address space. 406147 would never work since the modbus address is a 16 bit number.

My Modbus rant:

Modbus is fun like this - every manufacturer has their own ideas on how it should be implemented, no one reads the latest modbus spec which clarifies a lot of this and the manufacturers documentation assumes that everyone understand modbus just like they do. So we are left with documentation that leaves out all the important information that is needed to figure out how they decided to implement it. So we are left to guessing.

That’s a pretty good summary in my experience. :rofl: :rofl:

Yep, still one of my favorite protocols though.