73 lines
4.0 KiB
Markdown
73 lines
4.0 KiB
Markdown
# iFactory.Godot
|
||
|
||

|
||
|
||
基于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 使用指南 |