Memory Mapping for Modbus Implementation


Thread Starter


Hi all. Can somebody help me in understanding the role of Memory Mapping when implementing Modbus with 2 devices of diffrent manufacturers? e.g. I want to read 3 diffrent types of register memories (%r, %p, %w, etc.) from GE fanuc PLC using modbus. I will send Modbus command from some other PLC (e.g. Siemens) to read this memory. What kind of memory structure is required to implement this?

Automation Linse

Well, perhaps you're not asking exactly what you want answered, but there is no role or structure as far as Modbus is concerned. Modbus is just moving a block of 16-bit integers; with no promise of what that data represents.

Likely your Master PLC has a command which says "read 125 words from Slave X starting at its Yth word, and store results in my meory starting at Zth word." You are responsible not to over-write things in the Master PLC and to possible "process" the data to convert types. For example, the GE may have a floating point stored within the 10th & 11th words, but that's no promise the Siemens can treat it as a float.

Best regards
- Lynn A Linse, (Modbus for 2-decades and counting)