Shifu Demo 使用指南 ——体验与 PLC 的数字孪生进行交互
Shifu (GitHub 主页:https://github.com/Edgenesis/…) 是一个基于 Kubernetes 的物联网开发及治理的开源平台。开发者通过应用 Shifu,能够更简略地连贯、监督和管制任何物联网设施。
PLC 作为可编程逻辑控制器,是专门为在工业环境下利用而设计的数字运算操作电子系统。因为能够在其外部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,进而实现管制各种类型的机械设备或生产过程,所以 PLC 是与古代工业自动化生产倒退密不可分的设施。
Shifu 曾经实现对 PLC 设施的虚拟化,在 Shifu Demo 中能够体验通过一行命令实现对 PLC 设施的管制,这是在数字孪生环境中对物理设施进行管制最为重要的一步。
本文依据 Shifu Demo 使用指南,具体介绍 Shifu 极速试玩中体验与 PLC 的数字孪生进行交互的内容。
## 部署 Docker
### 1. 下载并装置 Docker
安装包:https://demo.shifu.run/detail
2. 查看 Docker 是否可用
a. 关上 Docker, 并放弃其运行
b. 在 Linux/Windows/Mac 的命令行中执行以下命令
sudo docker ps
如果 Docker 运行顺利,将会失去以下输入:
装置 Shifu
1. 装置 Shifu
返回 demo.shifu.run 进行下载安装。(间接进入页面中的第二步,实现该步骤的流程后即可回到本页面)
装置实现后 Shifu 会在 docker 运行时随同启动。
2. 查看 Shifu 是否启动
应用以下命令来查看运行成果:
sudo kubectl get pods -A
如果所有“STATUS”都是 Running 即示意胜利:
## 与 PLC 的数字孪生交互
### 1. 启动 Nginx
咱们启动一个 nginx 实例来模仿应用程序与 shifu 之间的交互:
sudo kubectl run --image=nginx:1.21 nginx
sudo kubectl get pods -A | grep nginx
能够看到 nginx 曾经在运行:
2. 启动 PLC 虚构设施
首先,咱们启动 PLC 的数字孪生:
sudo kubectl apply -f run_dir/shifu/demo_device/edgedevice-plc
通过如下指令,能够看到 PLC 设施的数字孪生曾经启动:
sudo kubectl get pods -A | grep plc
3. 与 PLC 虚构设施交互
接着,咱们须要进入 nginx:(如果您未启动 Nginx,请您首先 启动 Nginx 服务)
sudo kubectl exec -it nginx -- bash
最初,咱们能够与 PLC 的数字孪生通过 http://deviceshifu-plc.device… 进行交互,将 PLC 的 Q0 内存区域的第 0 位设置成 1:
curl "deviceshifu-plc.deviceshifu.svc.cluster.local/sendsinglebit?rootaddress=Q&address=0&start=0&digit=0&value=1";echo
例如一个 PLC 的 Q0 内存的第四位值代表控制程序,设定“digit=3”与“value=1”就能够开启程序:
curl "deviceshifu-plc.deviceshifu.svc.cluster.local/sendsinglebit?rootaddress=Q&address=0&start=0&digit=3&value=1";echo
Q&A
Q:在这个试玩中如何模仿 PLC?
A:当模仿 PLC 接管到 sendsinglebit 命令能够批改内存区域中一个 bit,接管到 getcontent 命令能够失去内存区域中一个 byte 的值。
本文由博客群发一文多发等经营工具平台 OpenWrite 公布