Issue
How do you declare a symbol in EcoStruxure Machine Expert or SoMchine in a PLC with a Modbus Coil boolean 0x or %M address?
Product Line
Modicon M238, LMC058, M258, M241, M251, M262, PacDrive 3, EcoStruxure Machine Expert, SoMachine
Environment
PLC Configuration software in Windows 10
Cause
There are no Modbus Coil (0x notation or %M) boolean address space in SoMachine / EcoStruxure Machine Expert PLCs.
Only Holding Registers exist in SoMachine / EcoStruxure Machine Expert PLCs.
Addressing of the Double Words, Words, Bytes, and Bits are described in this table (which applies for all M2xx Logic PLCs supported in SoMachine / EcoStruxure Machine Expert):
Resolution
You will need to declare bits within a BYTE of a Holding Register using the notation %MX<y>.<z>
<y> is the Byte offset starting at 0
<z> is the Bit offset from 0 to 7 of the <y>th byte
Here is an example of a Variable declaration of 4 bits within a single Holding Register:
bVar1 is the 0th bit of %MW100 (%MW100.0)
bVar2 is the 7th bit of %MW100 (%MW100.7)
bVar3 is the 8th bit of %MW100 (%MW100.8)
bVar4 is the 16th bit of %MW100 (%MW100.15)
Notice that there are 2 Byte addresses per 1 Holding Register Word.
How do you declare a symbol in EcoStruxure Machine Expert or SoMchine in a PLC with a Modbus Coil boolean 0x or %M address?
Product Line
Modicon M238, LMC058, M258, M241, M251, M262, PacDrive 3, EcoStruxure Machine Expert, SoMachine
Environment
PLC Configuration software in Windows 10
Cause
There are no Modbus Coil (0x notation or %M) boolean address space in SoMachine / EcoStruxure Machine Expert PLCs.
Only Holding Registers exist in SoMachine / EcoStruxure Machine Expert PLCs.
Addressing of the Double Words, Words, Bytes, and Bits are described in this table (which applies for all M2xx Logic PLCs supported in SoMachine / EcoStruxure Machine Expert):
Resolution
You will need to declare bits within a BYTE of a Holding Register using the notation %MX<y>.<z>
<y> is the Byte offset starting at 0
<z> is the Bit offset from 0 to 7 of the <y>th byte
Here is an example of a Variable declaration of 4 bits within a single Holding Register:
VAR
bVar1 AT %MX200.0: BOOL;
bVar2 AT %MX200.7: BOOL;
bVar3 AT %MX201.0: BOOL;
bVar4 AT %MX201.7: BOOL;
END_VAR
bVar1 is the 0th bit of %MW100 (%MW100.0)
bVar2 is the 7th bit of %MW100 (%MW100.7)
bVar3 is the 8th bit of %MW100 (%MW100.8)
bVar4 is the 16th bit of %MW100 (%MW100.15)
Notice that there are 2 Byte addresses per 1 Holding Register Word.