Shifu框架
  • 欢迎
  • Shifu基本架构
    • 当前兼容的设备协议和驱动
    • 当前用户可用的协议
  • 快速上手:安装
  • 快速上手:DeviceShifu
  • 快速上手: 接入一个PLC
  • 快速上手: 添加新驱动
  • Shifu相关文章
Powered by GitBook
On this page
  • EdgeDevice
  • DeviceShifu
  • Shifu Utils
  • MQTT Broker
  • RTSP Client
  • Siemens S7 Suite
  • HTTP to SSH driver stub

Shifu基本架构

Previous欢迎Next当前兼容的设备协议和驱动

Last updated 2 years ago

Shifu是一个原生的平台,它的所有组件都以的形式运行。下图是Shifu架构的概览:

EdgeDevice

每一个EdgeDevice拥有两个部分: EdgeDeviceSpec 和 EdgeDeviceStatus. 在EdgeDeviceStatus当中,最主要的部分是EdgeDevicePhase.

EdgeDeviceSpec包含了设备的基本信息。它拥有四个元素:

Sku        *string     # 设备的SKU名称

Connection *Connection # 硬件连接方式 (例:以太网, 4G等)

Address    *string     # 硬件地址

Protocol   *Protocol   # 传输协议

EdgeDevicePhase定义了设备的当前状态:

Pending     # 设备已被识别,但接入Shifu尚未完成

Running     # 设备已成功接入Shifu并正在运行

Failed      # 设备接入Shifu失败

Unknown     # 未知状态

DeviceShifu

EdgeDevice定义了名为DeviceShifu的Kubernetes Pod. DeviceShifu是一个实际设备的数字化表示,或数字孪生。

每一个DeviceShifu都与一个实际设备相关联。用户与DeviceShifu进行交互,就可以实现与实际设备的交互。

南向 - DeviceShifu接收用户的请求,对请求进行转换并发送到设备。 北向 - DeviceShifu收集设备数据,进行转换并发送给用户端。

Shifu Utils

Shifu在持续加入新的工具类服务来保证不同协议和驱动的兼容。

MQTT Broker

RTSP Client

RTSP Client保证了流媒体信息的传输。

Siemens S7 Suite

HTTP to SSH driver stub

Shifu定义了一个 EdgeDevice,它描述了一个连接到Shifu的实际设备的各项信息。

MQTT Broker被用来帮助MQTT信息的订阅和发布。当前,Shifu使用了来实现兼容。

Siemens S7 Suite支持了西门子S7系列PLC的操作。当前,Shifu使用了来实现兼容。

HTTP to SSH driver stub使得Shifu可以允许用户任意添加新的命令行驱动。 参见。

CRD
Mosquitto
Snap7
快速上手:添加新的命令行驱动
Kubernetes
Pod
Overall_Architecture