ホーム画面 (/ui/main) — カード / アクション / 更新周期 完全ガイド
ゲートウェイ Web UI のメインページです。1画面でゲートウェイの すべての 運用状態をカード形式で表示します。カードは 1秒周期 でバックエンド(/monitor/bean)から値を再取得して更新され、Sparkplug B カード のみ別途 5秒周期 (/api/v1/transfer) で更新されます。
左上の PlantPulse ロゴ、または直接 http://<gateway>/ui/main へアクセスします。
- MQTT / Sparkplug B / OPC UA サーバー カード:
app.propertiesの*.enable/host/port/userキーを直接 lookup します。install.sh がボックスごとに random パスワードを生成するため、user が空欄であったり、ボックスごとに異なる表示になります。 - Docker カード:
/var/run/docker.sockのマウントが必要です。plantpulse-edge自身は self-exclude され、list に表示されません (start/stop/delete をブロックする安全策)。 - ネットワーク カード (LAN1/LAN2/WiFi/GSM/VPN/管理):
edge.net.<role>.ifaceの値でマッピングします。 dev ボックスのようにenp1s0 / enp2s0 / tailscale0のような systemd predictable 名の場合はapp.propertiesに直接設定します (install.sh のLAN1_IFACE=...env で自動反映可能)。 - コンポーネントヘルスを1行で確認:
curl http://localhost/api/v1/system/health(認証不要、8 コンポーネントの status map + 503 分岐)。
カード一覧 (計 ~30個)
横6列のグリッドです。カードの種類は3つです:
| 種類 | 色 | 意味 |
|---|---|---|
| action_box (白背景、大きいアイコン) | グレー枠線 | クリックすると該当メニューへ移動 |
| black_box (黒背景) | グレー文字 | 変化しないゲートウェイ情報 |
| gray_box (白背景、グレーヘッダー) | ライトグレー | リアルタイム監視 — 値が1秒ごとに更新 |
1. 上部 アクション / 情報 (1行目)
1.1 엣지 정보 (black_box)
何を表示するか: このゲートウェイの 変化しない アイデンティティ情報です。起動時に一度だけ測定され、画面に固定されます。
| フィールド | 意味 | 出典 |
|---|---|---|
| HOST名 | OS の hostname (例: pe-edge-01) | EdgeContext.hostname |
| O/S | OS 名 + アーキテクチャ (例: Linux (amd64)) | os.name + os.arch |
| カーネル | カーネルバージョン (例: 5.14.0-...) | os.version |
| バージョン | ゲートウェイ SW バージョン (例: V2026.05.08) | app.properties |
| ビルド日 | 成果物のビルド日 (例: 2026-05-08) | BUILD_DATE |
⚠ HOST名、O/S 情報はゲートウェイ再起動後に OS が変わった場合のみ変化します。
1.2 프로토콜 연결 하기 (action_box)
→ クリックで /ui/connect/connect へ移動します。新しい PLC / OPC-UA / MQTT / シミュレータ接続を追加する画面です。
1.3 연결된 목록 (N) (action_box)
→ クリックで /ui/connect/list。括弧内の N は現在登録されている OPC(接続) 数 (monitor.opc_count) です。
1.4 애플리케이션 (action_box)
→ /ui/apps。Docker ベースのユーザーアプリケーションの起動/停止/管理を行います。
1.5 노-코드 플로우 (action_box)
→ /ui/flow (Node-RED 埋め込み)。
詳しい使い方: フロー (Node-RED)
1.6 환경 설정 (action_box)
→ /ui/system/config。app.properties の直接編集 + システム再起動 / リブート / バックアップ / 一時ファイル整理など。
2. ゲートウェイ識別 (3 cards)
2.1 엣지 시작 시간 (gray_box)
表示内容: 最後にゲートウェイ (Tomcat) が起動した正確な時刻 — yyyy년 MM월 dd일 [a] HH시 mm분 ss초 (KST)。
再起動時点が疑わしい場合は、この値で「最後の再起動」を確認してください。
2.2 엣지 ID (gray_box)
表示内容: このゲートウェイの固有 ID (例: EDGE_00303)。Sparkplug、REST API、OPC-UA ノードツリーなど すべての識別 の基準です。app.properties の edge.id から取得されます。
2.3 배포 사이트 ID (gray_box)
表示内容: この Edge がどのサイト(工場 / ライン)に配置されているか (例: SITE_00001)。外部 SCADA / Sparkplug の Group ID 決定に使用されます。app.properties の site.id から取得されます。
3. ネットワーク状態 (6 cards)
各カードは リンク状態アイコン + IP、または DISCONNECTED(グレー) を表示します。
3.1 인터넷 (gray_box)
ゲートウェイが外部インターネットへ ping 可能かどうか。アイコンの色:
- 緑の globe: 正常に接続
- 赤の globe: 接続失敗
ping 対象は app.properties の monitor.ping.targets (例: 8.8.8.8) です。
3.2 이더넷 (gray_box) — 2つに分割
- 左: 1 WAN (外部網 NIC、
net_1_ip) - 右: 2 PLC (PLC 網 NIC、
net_2_ip)
各欄の色は インターネット ping の結果 に応じて一緒に変化します (簡略化された表示)。
3.3 WIFI (gray_box)
wifi-1 アイコン + IP、または wifi-slash グレー (DISCONNECTED)。
3.4 3G/4G/5G (gray_box)
GSM モデムの IP または DISCONNECTED。SIM カードアイコン。
3.5 VPN (gray_box)
shield-check アイコン。VPN 接続時は IP を表示、切断時はグレー + DISCONNECTED。
3.6 관리 포트 (gray_box)
wrench アイコン。USB / 別途管理 NIC の IP。一般的にサイトネットワークから分離された診断用チャネルです。
4. システムリソース (5 cards)
4.1 온도 (gray_box)
CPU 温度。90°C 以上で赤色 + temperature-high アイコン (危険)、それ以下は緑 + temperature-low。産業環境における ファン詰まり / 高温アラーム の一次シグナルです。
4.2 CPU (gray_box)
ゲージ(0–100%) + 総コア数。JustGage ライブラリ。1秒更新。
継続的に 90% を超える場合は、PLC ポーリング周期 / タグ数の見直しが必要です。
4.3 물리 메모리 (gray_box)
ゲージ + 사용 / 전체 (KB/MB/GB 自動単位)。swap とは別の RSS 使用量です。
4.4 가상 메모리 (gray_box)
スワップ(swap) 使用量。ゲージ + 사용 / 전체。通常は 0–10% が正常、継続的に 30% を超える場合は RAM 不足の可能性があります。
4.5 디스크 (gray_box)
/data1 (またはゲートウェイホーム) の使用率。ゲージ + 사용 / 전체。
90% を超えたら直ちに 整理 / クリーンアップ (clean.sh / node-cleanup.sh) 手順を実行してください。
5. ネットワークトラフィック (1 card)
5.1 네트워크 사용량 (gray_box)
- ダウンロード (RX) — 累積受信バイト
- アップロード (TX) — 累積送信バイト
KB/MB/GB 自動単位。起動後の累積値です。
6. 収集 / 処理 (4 cards)
6.1 연결 | 태그 건수 (gray_box)
- 上段の大きい数字: 接続 (OPC) 数 (
opc_count) - 下段の大きい数字: タグ数 (
tag_count)
ゲートウェイが認識している OPC/タグの 全体 カウントです。システムタグ (EDGE_*) も含みます。
6.2 PLC 연결 및 수집 상태 (gray_box) — 2x4 マトリクス
| 左側 (接続) | 意味 |
|---|---|
| 🟢 接続 | TCP/UDP 接続 OK の OPC 数 (plc_con_connected_count) |
| 🔴 切断 | 接続失敗の OPC 数 (plc_con_disconnected_count) |
| 右側 (収集) | 意味 |
|---|---|
| 🟢 正常 | 収集開始 + read 成功中 (plc_scan_start_count) |
| 🟧 異常 | 収集は開始したが一定時間 read 失敗 (plc_scan_not_collect_count) |
| ⬜ 停止 | ユーザーが停止を押した OPC (plc_scan_stop_count) |
接続と収集は別物です: TCP が生きていても (接続 ✅)、何らかの理由で read が入ってこない場合は 収集異常 に分類されます。
6.3 PLC 읽기/쓰기 결과 (gray_box)
収集器/REST API が累積した read/write カウンタ。K/M/B 単位に圧縮して表示します。
| 成功 | 失敗 | |
|---|---|---|
| 読み取り (R) | plc_value_read_success_count | plc_value_read_error_count |
| 書き込み (W) | plc_value_write_success_count | plc_value_write_error_count |
右上の ↻ 更新アイコンをクリック → /connect/reset-read-error を呼び出し → 失敗カウンタのみ 0 に初期化。アラーム整理後、次のサイクルから新たにカウントしたい場合に使用します。
6.4 MPS (gray_box)
Messages Per Second — 1秒あたりに処理されるデータポイント数 (monitor.mps)。
すぐ下に sparkline (直近のトレンドを示すミニチャート)。負荷の変化を一目で把握できます。
普段のサイトの mps が 100 なのに突然 0 に落ちた場合 → PLC 接続または収集の異常です。
7. 転送 / 保存 (5 cards)
7.1 대기 큐 (gray_box)
転送待機中のポイントキューのサイズ (queue_size)。
通常は 0–数十。外部転送が詰まると (Sparkplug 切断など) 急速に増加 → ディスクキュー (
queue_disk_size) に溢れます。このカードが継続的に増加する場合は外部通信の点検が必要です。
7.2 포인트 전송 건수 (gray_box)
起動後に 外部へ転送成功 した累積ポイント数 (sended_point_count)。
7.3 포인트 전송량 (gray_box)
起動後の累積送信バイト (sended_point_bytes)。自動単位。データ使用量の請求 算定の参考になります。
7.4 데이터 저장량 (gray_box)
Cassandra の keyspace pe に保存された時系列の総サイズ (MBytes 入力 → 自動単位変換)。ディスク残容量と併せて確認してください。
7.5 데이터 저장 기간 (gray_box)
tm_tag_point の TTL (Time-To-Live) 日数 (system_db_ttl、デフォルト 30 日)。この日数を過ぎると自動的に期限切れとなります。app.properties で変更します。
8. システムエラー (1 card)
8.1 시스템 오류 (오늘) (gray_box)
本日(00:00–現在)発生した ERROR レベルのシステムログ件数 (system_error_count)。赤い大きな数字で表示されます。
数字をクリック → /system/log/list へ移動し、実際のログ本文を確認できます。
9. 外部サービス / 連携 (5 cards)
各カードは ステータスバー (緑/赤/グレー) + 接続情報テーブルで構成されます。
9.1 플랫폼 API 서버 (gray_box)
上位 PlantPulse Platform API との接続状態。右上の外部リンクアイコンをクリックすると、新規ウィンドウでそのサーバーに接続します。
| 行 | 意味 |
|---|---|
| バー | 🟢 接続成功 / 🔴 接続失敗 (monitor.api) |
| HOST/IP | server.host |
| PORT | server.port |
| USER | server.username |
9.2 OPC-UA 서버 (gray_box)
ゲートウェイ 内蔵 OPC-UA サーバーの情報。外部 SCADA はここに接続してタグを購読します。
| 行 | 意味 |
|---|---|
| バー | 🟢 有効化 (サーバーは常時稼働) |
| HOST/IP | opc.ua.server.host |
| PORT | opc.ua.server.tcp.port (デフォルト 12000) |
| USER | opc.ua.server.user |
詳しいノードツリー / 時系列チャート: OPC-UA ノードビューアの使用
9.3 MQTT 서버 (gray_box)
ゲートウェイ 内蔵 HiveMQ の情報 + Sparkplug などを発行するトピック。
| 行 | 意味 |
|---|---|
| バー | 🟢 有効化 / ⬜ 無効化 (mqtt.enable) |
| HOST/IP | mqtt.server.host |
| PORT | mqtt.server.port (デフォルト 1883) |
| USER | mqtt.server.user |
| TOPIC | mqtt.server.topic (Sparkplug spBv1.0/... またはユーザートピック) |
9.4 Sparkplug B (gray_box)
Sparkplug 発行コンポーネントのリアルタイム状態 (5秒更新、/api/v1/transfer の Sparkplug 項目)。
| 行 | 意味 |
|---|---|
| バー | 🟢 有効化 (接続済み) / 🔴 接続切断 (有効だが broker 接続が切断) / ⬜ 無効化 (sparkplug.enable=false) |
| GROUP | Sparkplug Group ID (例: Plant1) |
| NODE | Edge Node ID (例: EDGE_00303) |
| セッション # | bdSeq (デバイス birth/death シーケンス — 再接続回数) |
| メッセージ # | seq (現在の発行メッセージ番号 — 0–255 循環) |
メッセージ # が止まっている場合は送出が停止しています。セッション # が頻繁に増加する場合は broker 接続が不安定です。
9.5 도커 (gray_box)
Docker デーモンの状態 + ユーザーアプリケーションコンテナの統計。
| 行 | 意味 |
|---|---|
| バー | 🟢 稼働中 / 🔴 停止 (monitor.docker_on) |
| カウント | [ 살아있는 / 전체 ] コンテナ数 (docker_container_up_count / docker_container_total_count) |
/ui/apps で登録したアプリケーションがすべて稼働しているかを一目で確認できます。
10. フッター (全ページ共通)
画面下部に以下が表示されます。
- PlantPulse Edge テキスト + ライセンス
- ☁ ソフトウェアアップグレード アイコン — クリックで
upgrade.shを呼び出し (確認ダイアログの後)- アイコン横のバッジ:
- 赤い "アップグレード可能!" → ダウンロードサーバーに新バージョンあり
- グレーの "ダウンロードサーバーに接続できません" → 外部網 /
product.kopens.ioへのアクセス失敗 - (バッジなし) → 現在のバージョンが最新
- アイコン横のバッジ:
- 外部ポートショートカット — その他の外部サービス (例: Grafana 3000) を新規ウィンドウで開きます
内部的には /config/upgrade/check が server-to-server で https://product.kopens.io/.../VERSION.JSON を取得して比較 → CORS エラーなしにクリーンにバッジを表示します。
11. 更新周期 / データ出典の整理
| 領域 | 更新周期 | エンドポイント |
|---|---|---|
| ゲージ / リソース / ネットワーク / カウンタ / キュー / 保存量 / エラー | 1秒 | GET /monitor/bean |
| Sparkplug B カード | 5秒 | GET /api/v1/transfer |
| アップグレードバッジ | ページ読み込み時に1回 | GET /config/upgrade/check |
| 黒い情報カード (HOST名/OS/バージョンなど) | 更新されない (ページ読み込み時点の値) | EdgeContext (サーバー起動時に決定) |
12. よく見るパターン
| 画面のシグナル | 疑い / 対応 |
|---|---|
| 温度 赤 (90°C↑) | ファン詰まり / 環境温度 — 直ちに点検 |
| CPU 90%+ が継続 | ポーリング周期が速すぎる / タグ数が過多 |
| ディスク 90%+ | 整理 / クリーンアップ — clean.sh + node-cleanup.sh |
| PLC 切断 カウントが急増 | PLC 網ケーブル / スイッチ / PLC 電源 |
| 収集異常 > 0 | 接続は OK だが read 失敗 — アドレス形式 / PLC ファームウェアを点検 |
| MPS が 0 に落ちる | すべての PLC が read 失敗、または収集器が停止 |
| 待機キュー が増え続ける | 外部転送 (Sparkplug / MQTT) が詰まっている — 9.3/9.4 カードを確認 |
| システムエラー の赤い数字 | クリック → /system/log/list で本文を確認 |
| Sparkplug メッセージ # が変わらない | 送出停止 — app.properties の sparkplug.* を点検 |
| Docker 赤 | systemctl status docker でデーモンの状態を確認 |
13. さらに詳しく
- 接続の追加: 新しい PLC 接続の追加
- 接続一覧 / タグ画面: リアルタイム値の表示
- OPC-UA ノードビューア: OPC-UA ノードビューアの使用
- フロー自動化: フロー (Node-RED) を始める
- システム環境設定 / 運用スクリプト: 運用 — 全体像