Back to Projects
Digital Twin: Motion Log Collection & Replay System

Digital Twin: Motion Log Collection & Replay System

A microservice-based system for collecting, transforming, and replaying PLC motion logs to enable reproducible digital twin workflows

Sep 2024 - Dec 2024 3 months

Tech Stack

Industrial Data PlatformDigital TwinEvent-driven ArchitectureRust

Overview

PLC を含む実設備の動作状態を収集し、
後から同じ挙動を再現できること を目的とした
デジタルツイン向けの 動作ログ収集・再現基盤 を設計・実装しました。

本システムでは、
単なるログ保存ではなく 「時間軸を含めた状態変化を再生可能な形で保持する」 ことを重視しています。


Background / Problem

デジタルツインや設備シミュレーションにおいては、

後から再現できること が重要になります。

しかし現場では、

といった課題があり、
「データはあるが、再現できない」 状態になりがちでした。


Design Goals

本システムでは、以下を設計ゴールとしました。


Architecture Overview

本システムは Rust によるマイクロサービス構成 で実装しています。

Data Flow

  1. UI / PLC Interface

    • PLC から設備状態を抽出
    • 状態変化をイベントとして取得
  2. Message Queue (Redis)

    • 状態イベントをキューに書き込み
    • コンポーネント間を疎結合に分離
  3. Log Processing Services

    • MQ からイベントを読み出し
    • 任意の形式に変換
      • CSV
      • JSON
      • MongoDB への永続化
  4. Data Export / OPC Integration

    • MongoDB に保存されたログを元に
    • OPC サーバへデータを送信
  5. Digital Twin / Replay

    • OPC サーバ上でデータを受信
    • クライアント側で動作再現を実施

Key Design Decisions

Event-driven Architecture

Intermediate Representation

Microservices with Rust


Role


Result / Impact


Lessons / Insights


Tech Stack (Abstracted)

View All Projects