Using OPC tags to write input values of type real to the PLC does not work

Hi all,

I’m doing hardware-in-the-loop testing with a Siemens S7-300 PLC and Ignition. I want Ignition to feed a real sensor value into the PLC memory/register [plc_1]MD100. In Ignition, I created an OPC tag pointing to this address with writing access, and using a timer script, the tag correctly displays the expected value.

I tried using a connection of kind M (memory) for discrete or algebraic variables. I also attempted using an input variable of type REAL, but that did not work either. Despite this, the value is not passed to the actual PLC, and in TIA Portal’s live view, [plc_1]MD100 remains 0.

For comparison, I used Booleans in a similar way to simulate button presses via Ignition, and this works perfectly.

Does anyone know why writing to [plc_1]MD100 isn’t working, and how I could properly feed a sensor value from Ignition into the PLC?

Are you testing within designer and turned on gateway comms write mode?

Yes, I’m indeed testing with designer. The gateway communication is set to full read/write mode.
For the Boolean inputs this works fine, but it are specifically the variables of type real that are not properly send to the PLC.

Have you changed your OPC Item Path to something like [plc_1]MREAL100 in these tests? and the Ignition tag type to Float?

The type was indeed set to Float. Changing the path of the OPC tag to MREAL solved the issue. Thanks!