ebs-gateway RFIDミドルウェアシステム概要

GitHubリポジトリ

1. 概要

複数RFIDリーダーの監視・操作を可能にするミドルウェアシステム。WebSocket/Socket通信によるリアルタイム通信を実現し、マルチデバイス対応の柔軟なアーキテクチャを採用。

2. システムアーキテクチャ

6層アーキテクチャ図
  1. クライアント層(JSON通信)
  2. Socketサービス層
  3. アプリケーションAPI層
  4. 抽象デバイスインターフェース層
  5. ドライバ適用層
  6. 物理デバイス通信層

3. 接続方式

1ブラウザ(JavaScript) → (ebs-gateway) → 複数リーダー制御
1画面アプリ(java、.Net、、) → (ebs-gateway) → 複数リーダー制御
サーバ → (ebs-gateway) → 複数リーダー制御
 接続方式図

4. 主な機能

5. 接続実装例

JavaScript(WebSocket)

const socket = new WebSocket("ws://localhost:9001");
socket.onopen = () => {
    socket.send(JSON.stringify({
        command: "connect",
        modelName: "FX9600",
        params: { ip: "10.8.1.210", port: 5084 }
    }));
};

C#(TCPクライアント)

using (TcpClient client = new TcpClient("127.0.0.1", 9001))
{
    string command = "{\"command\":\"connect\", ... }";
    byte[] bytes = Encoding.UTF8.GetBytes(command);
    stream.Write(bytes, 0, bytes.Length);
}

6. Windowsサービス操作

サービス登録

sc create ebs-gateway binPath="C:\path\to\ebs-gateway.exe"

起動/停止

net start ebs-gateway
net stop ebs-gateway

7. JSON通信仕様

接続リクエスト例

{
    "command": "connect",
    "modelName": "FX9600",
    "params": {
        "ip": "10.8.1.210",
        "port": 5084,
        "timeout_ms": 5000
    }
}

レスポンス例

{
    "status": "success",
    "message": "リーダー接続完了"
}