Skip to main content

How the Edge Reads and Sends Values

Everything the gateway does comes down to three things — read, store, and send. Understanding how these three fit together tells you where to start looking when a value isn't showing up.

PLC ──① 읽는다──▶ 엣지 ──② 담는다──▶ 로컬 Cassandra (PE)
│
└──③ 올린다──▶ 상위 플랫폼
(전송 큐 → 막히면 디스크 큐)

Connection · Tag — the two layers that define what to read​

What it isExample
ConnectionWhich device, and over which protocolOPC_LS_XGI_0001 — LS, <PLC-IP>:2004
Tag«Which address» on that device to read, and «how often»D0800, 1000ms

A single connection can have many tags attached to it. Knowing the address is half the battle, and the address notation differs from protocol to protocol → PLC Address Input Reference.

① Read — poll at a regular interval​

The edge queries the PLC every collection cycle (polling). The default is 1000ms; for rapidly changing values 500 is appropriate, and for slower values 5000 works well.

Shortening the cycle is not free

The cycle time is load on the PLC. Setting it to 100ms means ten queries per second, and if you have hundreds of tags, the PLC will go down first. First check whether the value actually changes that quickly — reading a value that changes once per second at a 100ms interval just gets you the same value nine extra times.

② Store — the gateway has its own local storage​

The edge stores the values it reads in a local Cassandra (127.0.0.1:9042, keyspace PE). This is different from the Cassandra on the upper platform (pp).

🔴 This is why collection doesn't stop even if the connection to the upper platform drops. Even if the site network goes down, the gateway keeps reading and storing on its own, and once the connection is restored, it sends what has accumulated.

→ Database Model

③ Send — the transmission queue tells you the status​

Values to be sent are queued in the transmission queue and then sent out. The 대기 큐 (queue_size) on the home screen shows its size.

Queue StatusMeaning
0 to a few dozenNormal. Values are being sent out as they arrive
Continuously increasingOutbound transmission is blocked — check the connection to the upper platform
Overflowing to the disk queue (queue_disk_size)The in-memory queue is full. This indicates the connection was down for an extended period
The first thing to check when "values aren't going up"

If the queue is near zero but values aren't showing on the platform, transmission is working — so look at the platform side. If the queue is increasing, the path from the edge upward is blocked.

→ Home Screen · Viewing Realtime Values

When something is blocked, where to look​

SymptomCheck order
No tag values at all① Can the edge reach the PLC? — Test connection, ping
Values are stuck at an old timestamp① Is the address correct? Are there read errors?
Values are on the edge but not on the platform③ Is the queue growing?
Several days' worth arrived all at once②③ The connection was down and got restored. That's normal operation

See Also​