Unity 数字孪生笔记 工具介绍

流程思考

数字孪生本质上一种基于实际物理数据的可视化方案,通过对接实际数据,在三维界面中展示孪生结果。
那么这个流程就很简单了。
Power by Draw.io
整个流程分为三块:数据来源-》数据分析-》数据展示

输入数据

首先我们需要考虑我们能拿到什么。第一,实际物体的三维数据从哪里来,第二,实际数据怎么获取到。

模型数据

工业上常常会用到CAD模型,CAD模型具有精确、统一的特点,但是CAD不是三角面片,我们不能直接导出到Unity中,而且导入之后有很多不合理的地方,例如面片杂乱、面数过高等问题。针对这个问题我们祭出我们的第一把工具:PIXYZ。
PIXYZ简介

在这里插入图片描述

具体内容这里不做介绍,大概的意思就是:

  • 能够导入CAD模型,生成对应的三维模型,导入的CAD模型的层级结构不会发生变化;
  • 提供自动化减面工具,减少工作量;
  • 提供UV生成工具,可以自定义贴图效果;
  • 提供网格工具,方便用户进行网格合并、网格减面、网格坐标系调整等;
  • 支持在runtime进行导入。

获取到这个工具之后,CAD模型的导入就不成问题了。
有同学就会问了,为啥不用Maya这些建模软件去生成呢。
首先机械模型非常复杂,Maya这些建模软件去生成,就会相当消耗人力,而且不一定精确。其次,CAD作为标准,相关的机械提供商已经有对应的CAD模型数据,再去重建就是吃力不讨好的事情。

有了模型数据之后,我们来看看信号数据的接入。

信号数据

通产机械硬件的控制会通过PLC(Program Logic Controller)来实现,PLC与机械,PLC与PLC之间也会有固定的通信协议来通信。那么这里大家就会想到,我们直接与PLC通信不就好了。对!实际信号的获取就是与PLC通信来实现。但是每家PLC的通信协议不同,需要进行大量的协议适配工作。
这里我们要说到我们的第二把工具:PREspective(后面统称PREs)
这个工具是Unity的工业插件之一,可以找Unity的人申请License。
这个工具的作用是:

  • 提供多种工业通信协议的接口;
  • 提供复杂物理碰撞仿真;
  • 提供网格合并,物体单选等工具;
  • 提供机械仿真工具;
  • 接入物理仿真模型文件,如Matlab、Anasys等。
    在这里插入图片描述

从上面的总结可以看出,PREs除了具有数字孪生所必需的通信协议接口外,还包括一些仿真逻辑。这些功能也帮组我们更好的搭建数字孪生平台。

数据分析

我们拿到实际数据之后,我们能做什么呢?我们需要做数据分析对吧,我们需要做物理模型的计算。这里其实也是使用的PREs对其他第三方的模型进行接入。
数据预测
经典的预测模型有很多,这里不详述
异常检测
异常预测模型

三维显示

Unity

Unity就不做过多介绍了,在三维实时渲染领域已经有了很多的成功案例。那么我们这里为什么会选择使用Unity来实现数字孪生系统呢?
这可以分为两方面来讨论:

  • 数字孪生对实时要求高,实时渲染引擎具有天然的优势
  • 数字孪生的开发,需要学习成本低、工具丰富的引擎
    因此,本着入门简单、稳定性能高、工具丰富的原则,Unity是不二之选。

FinalIK

这是一个反向运动学的解算插件,为什么我们会在这里提到这个插件呢。因为在数字孪生中,如果我们缺乏实际数据的输入,那么对于机械臂来说,我们还能使用一些其他工具进行仿真,FinalIK就是其中较好的一个。

posted @ 2021-01-05 01:06  守夜人灬  阅读(2068)  评论(0编辑  收藏  举报