Device |
Bit Address |
Word address |
32 bits |
Remarks |
Coil |
000001 - 065536 |
000001 - 065521 |
or
|
|
Discrete Input |
100001 - 165536 |
100001 - 165521 |
||
Input Register |
------ |
300001 - 365536 |
||
Holding Register |
400001,0 - 465536,15 |
400001 - 465536 |
|
*1 You can set the data storing order in 32-bit data word units and 64-bit data double-word units in the Device Setting dialog box.
*2 Write disabled.
The following table lists the equipment variable address range if you have selected the IEC61131 Syntax
Device |
Bit Address |
Word address |
32 bits |
Remarks |
|---|---|---|---|---|
%I |
%I000.000.000 - %I255.255.255 |
------ |
|
|
%IW |
%IW000.000.000:X00 - %IW255.255.255:X15 |
%IW000.000.000 - %IW255.255.255 |
|
|
%KW |
%KW00000:X00 - %KW65535:X15 |
%KW00000 - %KW65535 |
or
|
|
%MD |
------ |
%MD00000 - %MD65534 |
|
|
%MF |
------ |
%MF00000 - %MF65534 |
|
|
%M |
%M00000 - %M65535 |
------ |
|
|
%MW |
%MW00000:X00 - %MW65535:X15 |
%MW00000 - %MW65535 |
|
|
%Q |
%Q000.000.000 - %Q255.255.255 |
------ |
||
%QW |
%QW000.000.000:X00 - %QW255.255.255:X15 |
%QW000.000.000 - %QW255.255.255 |
||
%S |
%S000 - %S000 |
------ |
||
%SW |
%SW000:X00 - %SW999:X15 |
%SW000 - %SW999 |
|
*1You can set the data storing order in 32-bit data word units and 64-bit data double-word units in the Device Setting dialog box.
*2Write disable
*3For input addresses, such as %Ir.m.c, %IWr.m.c, or %IWr.m.c:Xj, with a minimum of two and a maximum of three segments. Each segment identifies a physical rack, module, and channel as necessary, for the associated I/O.
*4For output addresses, such as %Qr.m.c, %QWr.m.c, or %QWr.m.c:Xj, with a minimum of two and a maximum of three segments. Each segment identifies a physical rack, module, and channel as necessary, for the associated I/O.
*5Read/Write, depending on the bit/word number.
*6To fit with equipment variable coding, the most significant byte could be chosen by the software.
When you write to %IWr.m.c:Xj or %QWr.m.c:Xj variables, the Display reads the entire word, sets the defined bit, then returns the new word value to the External Device. If the ladder program writes data to this word address during the bit read/write process, the resulting data may be incorrect.
%I and %Q (and their W variants) are not supported for Quantum.
When the [Base Address] check box is selected
for a 8-bit data type array or structure, and a %MW or %KW address
is specified as the device address, the bottom byte and top byte
of consecutive addresses is allocated to each element.
Example: BYTE type array Var1
Var1[0]...%MW1:X0
Var1[1]...%MW1:X8
Var1[2]...%MW2:X0
The following table gives the equivalents between the Modbus syntax and the IEC61131 syntax.
Device |
MODBUS Syntax
|
IEC61131 Syntax |
||||||
|---|---|---|---|---|---|---|---|---|
Format |
0 start |
1 start |
||||||
Format |
Range |
First element |
Range |
First element |
Range |
First element |
||
Coil |
000001+i |
i = 0 to 65535 |
000001 |
%Mi |
i = 0 to 65535 |
%M0 |
i = 1 to 65536 |
%M1 |
Discrete Input |
100001+i |
i = 0 to 65535 |
100001 |
- |
- |
- |
- |
- |
Input Register (Word) |
300001+i |
i = 0 to 65535 |
300001 |
- |
- |
- |
- |
- |
Input Register (Word bit) |
300001+i,j |
i = 0 to 65535 j = 0 to 15 |
300001,00 |
- |
- |
- |
- |
- |
Holding Register (Word) |
400001+i |
i = 0 to 65535 |
400001 |
%MWi |
i = 0 to 65535
|
%MW0 |
i = 1 to 65536
|
%MW1 |
Holding Register (Word bit) |
400001+i,j |
i = 0 to 65535 j = 0 to 15 |
400001,00 |
%Mwi:Xj |
i = 0 to 65535 j=0 to 15 |
%MW0:X0 |
i = 1 to 65535 j=0 to 15 |
%MW1:X0 |
The addresses 100000 and 300000 cannot be accessed using IEC61131 syntax.
If you apply IEC61131 syntax to a project that has a discrete input or input register already set, the addresses become invalid.
Address mapping in BLUE is as follows. %MD and %MF use two sequential words form the specified address. The %KW, %KD, and %KF are mapped similarly.

You can import symbol data from the project created by your programming software.
Device |
Bit Address |
Word Address |
32 bit |
Notes |
|
|---|---|---|---|---|---|
BOOL EBOOL |
Single |
<SYMNAME> |
- |
- |
|
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
BYTE |
Single |
- |
<SYMNAME> |
|
|
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
INT UINT WORD |
Single |
- | <SYMNAME> |
||
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
DINT UDINT DWORD |
Single |
- | <SYMNAME> |
||
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
|
REAL TIME |
Single |
- |
<SYMNAME> |
|
|
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
STRING |
Single |
- |
<SYMNAME> |
- |
|
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
LWORD |
Single |
- | <SYMNAME> |
- |
*1 *2 |
1D Array |
<SYMNAME>[xl] - <SYMNAME>[xh] |
||||
2D Array |
<SYMNAME>[xl,yl] - <SYMNAME>[xh,yh] |
||||
3D Array |
<SYMNAME>[xl,yl,zl] - <SYMNAME>[xh,yh,zh] |
||||
*1 <SYMNAME>:
When referring to structures, the Symbol Name includes the structure name. The
maximum number of characters for the Symbol Name is 255, which includes
delimiters and elements.
Example)
BOOL type single symbol "BOOLSYMBOL"
BOOL type 1D Array "BOOL1D[10]
WORD type 2D Array "WORD2D[10,10]
UDINT type 3D Array "UDINT3D[0,1,2]
STRING in User Defined Structure [STRUCT001] "STRUCT001.STRINGSYM"
*2 The number of elements for each dimension is shown from "l" (the first number of the elements) to "h" (the last number of elements).
If you use unlocated variables, import a XVM file. Unlocated variables cannot be imported by a XSY file.
User-defined Function Blocks cannot be imported.
When using symbol data in BLUE, in the [Properties] window of the equipment, set [String Mode] to [Little Endian].
For symbol import procedures, see the following.
Importing Symbols from External Devices
The supported function code list is shown below.
Function Code (Hex) |
Description |
FC01(0x01) |
Read the ON/OFF status of the slave coil (0X). |
FC02(0x02) |
Read the ON/OFF status of the slave discrete input (1X). |
FC03(0x03) |
Read the description of the slave holding register (4X). |
FC04(0x04) |
Read the description of the slave input register (3X). |
FC05(0x05) |
Change (Write) the slave coil (0X) status to either ON or OFF. |
FC06(0x06) |
Change (write) the description of the slave holding register (4X). |
FC15(0x0F) |
Change (Write) the slave consecutive multiple coils (0X) status to either ON or OFF. |
FC16(0x10) |
Change (write) the descriptions of the slave consecutive multiple holding registers (4X). |
FC15/FC16 are used for writing. FC05/FC06 are used for the External Devices that do not support the function codes mentioned on the left.
Please refer to the precautions on manual notation
for icons in the table.
Supported Devices Symbol
and Terms