Skip to main content

LS ELECTRIC XGI / XBC / XBM

Communicates with the LS ELECTRIC (formerly LS Industrial Systems) XGI / XBC / XBM PLC series using the FEnet (Fast Ethernet) standard protocol.

This is the most common communication method for the XGT series. It first verifies ICMP (ping) reachability before starting actual communication.


Registration Form Input Values​

Input FieldWhat to EnterExample
IP AddressPLC FEnet module IP192.168.0.80
PortFEnet port2004 (XGT default)
Connect TimeoutMaximum connection attempt time (ms)3000
Read TimeoutMaximum read response time (ms)3000
Use ChecksumBCC checksum optionUsually false
Use Hex Bit IndexWhether to interpret bit numbers as hexadecimalUsually false. Set to true only when using hexadecimal indices like F in the P area

For the PLC side, simply pre-register the FEnet module's IP/port in XG5000.

Ping Check

Before attempting communication, the gateway first checks whether the LS PLC is reachable via ping. If ICMP (ping) is blocked on your corporate network, even a healthy PLC will show as "Ping failed," so please verify your firewall policy.


PLC Address Notation for Tags​

The short format (D00309) is recommended for LS PLCs; the gateway automatically converts it to the standard format (%DW00309).

Memory Areas​

LetterArea
DData Register — Most Common
MMemory (memory bit)
KKeep Relay
FFlag
TTimer
CCounter
R(Depending on series)
PI/O

Notation Examples​

Notation (Short Format)Meaning
D00309Data Register 309 (16-bit)
D00600Data Register 600 (to use as 32-bit, specify DW in [Format Helper])
M02704Memory bit 2704
P0001FI/O bit (when using hex index)

Since the same LS address can be interpreted variously as 16-bit / 32-bit / 64-bit / float, the [Format Helper] is essential.


Data Type Matching​

PLC ValueData TypeFormat HelperExample PLC Address
Bit (M, K, T, P)Boolean(empty)M02704
Specific bit within a wordBooleanBIN[3] (3rd bit)D00309
16-bit integerInteger(empty)D00309
16-bit unsignedIntegerUID00300
32-bit integerIntegerDWD00600 (uses D00600~D00601)
32-bit unsignedIntegerUDWD00690
64-bit integerLong(empty)D00700
32-bit float (most common real type)FloatREALD00450
64-bit floatDoubleLREALD00500
String of N words (= 2N characters)StringSTR[N]D00500
What if 32-bit but Format Helper is empty?

It will be misread as 16-bit, producing a completely different value. For 32-bit integers, always specify DW; for 32-bit floats, always specify REAL.


Common Issues and Solutions​

Symptom / MessagePossible CauseSolution
"Ping failed"ICMP blocked environmentAllow ICMP in firewall. If not possible, contact system administrator
"Connect failed"FEnet module not running, wrong portVerify FEnet module IP/port (2004) in XG5000
32-bit value is wrongFormat Helper left emptySpecify DW (integer) / REAL (float)
Bit is not readRegistered with D00100 (D is a word area)Use a bit area like M02704. Or extract the bit from the word using format=BIN[3]
String characters garbledLS sends low-byte-firstThe gateway handles this automatically. Be cautious when decoding directly with external tools

Frequently Used Examples​

Standard Line PLC Registration​

Tag NamePLC AddressData TypeFormat Helper
Running BitM02704Boolean(empty)
Counter (16-bit)D00309Integer(empty)
Cumulative Production (32-bit)D00600IntegerDW
Pressure (Float)D00100FloatREAL
Pressure (kPa, Converted)D00100FloatREAL (Formula ${VALUE}*0.1)
Batch Name (10 words)D00500StringSTR[10]

Extracting Bits from a Word​

If multiple bit signals are packed into the same word, you can register them line by line with BIN[비트번호].

Tag NamePLC AddressData TypeFormat Helper
Bit 0D00309BooleanBIN[0]
Bit 3D00309BooleanBIN[3]
Bit 15D00309BooleanBIN[F] (hex F = 15)

By setting the PLC registration option with use-hex-bit-index=true, you can use hex indices (such as F).


More Detailed Examples / Automated Registration​

Refer to the LS example in Advanced — REST API.