iFactory.Godot/README.md

73 lines
4.0 KiB
Markdown
Raw Normal View History

2023-06-12 15:50:22 +08:00
# iFactory.Godot
2023-06-13 14:43:03 +08:00
![](https://img.shields.io/badge/Dev-0.32-green)
基于Godot的iFactory客户端(网络服务和服务端已定义接口,预计使用[KCP](https://github.com/skywind3000/kcp)实现)
正在从Unity版[内网链接](http://192.168.1.50:3000/cn-intelli/iFactory.git)一步一步移植到Godot中
该项目主要使用[ECS](https://zhuanlan.zhihu.com/p/30538626)架构,[BITKit](http://server.bitfall.icu:3000/root/BITKit.git)作为基本的dotnet框架
## Installation 安装过程
1.首先你需要安装 **Godot4.0.3 Net** 👉[GodotEngine.Net](https://godotengine.org/download/windows/)
2.通过Git Clone两个仓库到与该仓库相同路径的文件夹,文件结构看起来像这样:
> GitHub (你的项目文件夹的上一级)
> >iFactory.Godot [外网仓库链接](http://server.bitfall.icu:3000/root/iFactory.Godot.git)
>
> >BITKit [外网仓库链接](http://server.bitfall.icu:3000/root/BITKit.git)
>
> >AGV_System [内网仓库链接](http://192.168.1.50:3000/cn-intelli/AGV_System.git)
3.最后在**Godot**中导入**iFactory.Godot**
4.⭐ 安装完成
## Features 功能与模块
### 功能介绍
#### 机位同步
* 超炫酷`零延迟`机位同步(可能需要一些硬件支持)
* 基于角度的`Loopback`算法,解决了同步角度和位置时0>1>0的值被线性插值解析为0>0.7414>0的问题
* 基于物理`PBR`的三维模型,确保和现实中的设备看起来几乎一致
* 基于`Lancer.SCADA`返回数据的物料同步(例如`SR7C1L`夹着物料`多功能笔记本`放进`交付气缸夹`)
#### 数据回放
* 录制生产时的数据,可离线播放生产过程
* 支持数据追溯,收集和录制重要数据,可对数据进行加工、提炼和分析,找到可能存在的重要数据
#### 布局规划
* 拖放`模型库`/`预制件`到场景中,快速完成场景的基础规划
* 选中`实体`并编辑数值或节点,可快速定制`模型`,例如
* 自定义围墙,围栏,输送带的尺寸,如 长`4096mm`,宽`256mm`
* 编辑贝塞尔曲线,标记`AGV`或其他可运动设备的`路线`
* 快速替换预览设备的型号,例如将`KUKA.AGV`替换为`Intelli.AGV`
#### 多终端实时同步场景
* `PC客户端`进行布局规划,`Mixed Reality`客户端(例如`AR`)可直接在现场看到设备规划的位置和生产路线
* 虚拟化生产过程,用户可通过`手机AR`或者`AR眼睛`在现场预览生产过程并对过程进行评估
* `AGV`夹起`物料`放入`装配单元`
* `AGV`向`装配单元`提供`物料`
* `装配单元`进行虚拟化装配
* `AGV`从`装配单元`取走产品,并放入`交付单元`
* `所有客户端`可对现实坐标进行标记(`文字消息` `图像消息`)
* 标记需要改进的工序或移动的位置
* 标记用户希望的生产路线
#### 智能诊断
* 基于`Lancer.SCADA`提供的数据,自动分析重要数据的值并返回异常和诊断数据
* 可通过`WebAPI`接口下发异常
* 与`微信`紧密绑定
### 功能清单
- [x] 基于`Lancer.SCADA`的基本数据请求服务`WebApi/GetInfos`——请求json,处理json嵌套,向内部提交数据
- [x] 基于`Lancer.SCADA`基本的角度和位置同步
- [ ] 基于`AI`算法的零延迟同步
- [ ] 基于`硬件本身的api`提供的零延迟同步
- [ ] 全平台通用网络通讯接口(基于KCP的基本网络服务)`NetProvider` `NetClient` `NetServer`
- [ ] 基于`Camera3D`的虚拟相机服务`观察场景` 例如`移动视角` `拖动视角` `缩放视角` `保存与加载预设视角`
- [ ] `Android`支持
- [ ] `WebGL` 支持
- [ ] 回放录制器——录制`Lancer.SCADA`返回的数据,
- [ ] 场景编辑器——拖动预制件到场景中,完成组合场景,可用于对现场规划进行三维浏览和布局评估
- [ ] 网络场景——多个平台和客户端同步场景例如在PC上更改场景在`Mixed Reality`中可实时看到场景的更改
- [ ] 自诊断服务——通过解析数据,找到`空值`或`null`的数据并向指定接口(例如`微信推送` `数据库日志`)提交异常
## Getting Started 使用指南