CN111723473A - 一种三维可视化协同仿真系统 - Google Patents
一种三维可视化协同仿真系统 Download PDFInfo
- Publication number
- CN111723473A CN111723473A CN202010480389.XA CN202010480389A CN111723473A CN 111723473 A CN111723473 A CN 111723473A CN 202010480389 A CN202010480389 A CN 202010480389A CN 111723473 A CN111723473 A CN 111723473A
- Authority
- CN
- China
- Prior art keywords
- simulation
- subsystem
- action
- scene
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 195
- 230000000007 visual effect Effects 0.000 title claims abstract description 12
- 230000009471 action Effects 0.000 claims abstract description 91
- 230000006854 communication Effects 0.000 claims abstract description 39
- 238000004891 communication Methods 0.000 claims abstract description 39
- 238000004519 manufacturing process Methods 0.000 claims abstract description 13
- 230000006399 behavior Effects 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims description 22
- 230000003993 interaction Effects 0.000 claims description 16
- 238000007906 compression Methods 0.000 claims description 14
- 230000006835 compression Effects 0.000 claims description 12
- 238000012800 visualization Methods 0.000 claims description 10
- 230000007175 bidirectional communication Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 abstract description 29
- 230000008901 benefit Effects 0.000 abstract description 4
- 230000002708 enhancing effect Effects 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000003754 machining Methods 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001276 controlling effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004445 quantitative analysis Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000007514 turning Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
Abstract
本发明涉及一种三维可视化协同仿真系统,包括相互通信连接的基于Unity平台的场景子系统和基于Plant Simulation平台的仿真子系统,其中,所述场景子系统包括:第一通信模块,用于与所述仿真子系统通信,接收所述仿真子系统的动作指令;3D对象模块,基于所述动作指令控制3D对象的执行动作;所述仿真子系统包括:仿真对象模块,用于定义仿真行为,基于仿真需求模拟生产过程,产生所述动作指令;所述仿真子系统驱动场景子系统,场景子系统控制仿真子系统的启停,实现协同仿真。与现有技术相比,本发明具有降低Unity三维模型动作定义的复杂度、增强Plant Simulation仿真三维直观性等优点。
Description
技术领域
本发明涉及一种工业控制仿真系统,尤其是涉及一种三维可视化协同仿真系统。
背景技术
系统仿真就是根据系统分析的目的,在分析系统各要素性质及其相互关系的基础上,建立能描述系统结构或行为过程的、且具有一定逻辑关系或数量关系的仿真模型,据此进行试验或定量分析,以获得正确决策所需的各种信息,仿真可以比较真实地描述系统的运行、演变及其发展过程,仿真的过程也是实验的过程,而且还是系统地收集和积累信息的过程。
仿真系统需要两个方面的“真”,一个是仿真系统运行过程的“真”,即其动作机理、运行规律要符合实际系统规律;另一个是人机交互的“真”,需要三维建模、拟实场景和多媒体人机交互,虚拟现实或增强现实技术就是追求这个“真”。目前,很少有一个软件同时具备这两个“真”,如果需要构建一个两方面都让人满意的仿真系统,需要不同软件的协同仿真。
Unity是一种流行的三维游戏引擎,由于其具有良好的扩展性和跨平台特性(可以支持Windows、MAC OS、安卓、iOS等多个操作系统平台),越来越多的应用程序利用其开发拟实人机交互界面,也有大量的利用Unity开发的仿真模型,形成能支持虚拟现实(VR)、增强现实(AR)的应用。
Unity仿真模型能正常运行的关键是要正确地定义Unity中的三维对象模型动作。一般地,模型动作行为可以利用理论计算公式来定义,或者是收集的真实系统的历史数据来得到模型运动规律,进一步形成动作反馈。但是如果一个系统很复杂,很难用简单公式描述,或者一个系统还没有对应的真实系统存在,这两种方法就都不能有效解决模型动作拟实问题。结合协同仿真思想,一种新的方法是利用其它仿真软件生成的数据来驱动Unity模型,这样可以减少在Unity里面定义Unity三维对象模型动作的工作量,方便实现三维功能展示。
目前,针对Unity仿真方面公开的方法都是如何基于Unity平台实现三维仿真。如专利申请CN110515812A公开了一种基于Unity+3D技术的虚拟仿真系统构建方法,包括仿真模型系统模块与数据库模块,解决了现有的虚拟仿真系统在进行数据的发送与传送的过程中可能会出现混乱的问题,但还不能得到令人满意的仿真效果。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种三维可视化协同仿真系统,使得生产过程的三维仿真更加直观。
本发明的目的可以通过以下技术方案来实现:
Plant Simulation软件(简称Psim软件)是西门子公司提供的一种离散事件仿真系统,大量用于生产过程仿真、物流仿真等领域。其前身是称作em-plant软件。它具有友好的仿真模型构建界面,能方便地构建一条生产线、一个车间甚至一个工厂的运行仿真模型。但是Plant Simulation的优点是构建生产和物流二维分析模型,其三维可视化以及对VR/AR的支持是其短板。本发明利用Plant Simulation仿真运行的数据,驱动Unity构建的仿真模型,能让Plant Simulation运行结果以一种三维可视化的形式展示出来,同时也能减少Unity模型动作定义和逻辑关系设定的工作量。
本发明提供一种三维可视化协同仿真系统,包括相互通信连接的基于Unity平台的场景子系统和基于Plant Simulation平台(简称Psim平台)的仿真子系统,其中,
所述场景子系统包括:
第一通信模块,用于与所述仿真子系统通信,接收所述仿真子系统的动作指令;
3D(三维)对象模块,基于所述动作指令控制3D对象的执行动作;
所述仿真子系统包括:
仿真对象模块,用于定义仿真行为,基于仿真需求模拟生产过程,产生所述动作指令;
所述仿真子系统驱动场景子系统,场景子系统控制仿真子系统的启停,实现协同仿真。
进一步地,所述3D对象包括简单3D对象和复杂3D对象,所述仿真对象包括简单仿真对象和复杂仿真对象。
进一步地,一个所述复杂3D对象对应一个所述复杂仿真对象,但是不一定所有仿真对象都会对应到3D对象。
进一步地,每一所述复杂仿真对象设置有至少一个触发器,该触发器基于设定的事件动作关系产生动作指令。
进一步地,所述动作指令的信息包括指令ID、指令对象、指令动作、产生时间、估计结束时间和结束动作。
进一步地,所述仿真子系统还包括第二通信模块和用于存储所述动作指令的指令队列模块,所述第二通信模块以先进先出方式将动作指令传输给所述第一通信模块。
进一步地,所述指令队列模块实时监测所存储的动作指令,判断是否存在需进行压缩处理的情况,若是,则进行压缩处理,所述需进行压缩处理的情况包括:
对于同一对象的指令条数大于第一条数设定值,且各条指令的产生时间间隔小于时间设定值;或
指令队列模块所存储的动作指令的总条数大于第二条数设定值。
进一步地,所述压缩处理包括按时间删除指令、按间隔删除指令和指令合并。
进一步地,所述场景子系统还包括用于接收交互指令的人机交互模块,所述交互指令包括启动、停止和复位。
进一步地,所述场景子系统和仿真子系统基于Socket通信方式实现双向通信。
与现有技术相比,本发明具有如下有益效果:
1、本发明利用Plant Simulation软件驱动Unity模型,结合了Plant Simulation在离散事件仿真领域的建模优势以及Unity在三维模型和人机交互上的优点,形成一个三维可视化的协同仿真系统,可以降低在Unity模型构建过程中对模型动作设定的复杂程度,降低对Unity内部三维对象的运行机理建模复杂度,同时也提高了Psim软件仿真结果的三维展示能力,并进一步能支持PSim的VR/AR领域的应用。
2、在Unity里面,每个模型的动作都有其自己的动作周期,比如,一扇门关闭,门需要转90度,那么,这个90度应该是在一个时间内匀速运动的。如果只是在0°位置发出关门信息,门按某个速度动作,可能转到30°的时候,突然来一个门已经关上的信息,则动作就会跳跃。本发明的动作指令中包含估计结束时,在动作发出前给出一个预估时间,这样便于Unity模型进行动画周期的设定,比如,如果预知5秒这个门要关上,则可以在5秒内定义门0°到90°的动画,这样5秒后当门已关上的信号传来,则这个关门动作动画正好结束,增加了Unity场景的平滑度,减少动作的跳跃。
3、本发明在设计指令的时候,包括了预期结束时间、预期下一个动作的内容,这样可以让Unity模型做好动画周期设置;同时避免了如果发生指令丢失,3D对象会出现动作失措的情况。
4、本发明的Psim仿真子系统中的某个事件,会触发向Unity平台中的3D对象发送动作信号数据。如果Psim中这个事件发生过于频繁,会导致大量动作信号数据堆积,这样一来会堵塞网络,二来Unity里面模型对象也来不及执行,会造成失步。本发明通过设置指令队列,并实时监控这个动作指令数据的队列长度,如果过长,则进行必要的压缩和删减,保证最新的信号能及时送达Unity模型,避免信息拥堵,能够保证Psim仿真模型和Unity三维模型的同步展示。
5、本发明的基于Unity平台的场景子系统和基于Psim平台的仿真子系统相互通信连接,如果对Psim中的仿真参数进行调整,则Unity平台中的场景模型也会跟随变化,便于进行不同仿真参数下的场景模型直观展示和对比。
6、可以利用场景子系统的人机交互模块,来启动停止场景子系统的动作,同时可以让仿真子系统启动或停止。
附图说明
图1为本发明仿真的结构示意图;
图2为本发明协同仿真的总体流程示意图;
图3为本发明仿真子系统向场景子系统发送指令进行协同仿真的过程示意图;
图4为实施例中一个简易加工制造单元的Psim仿真模型示意图;
图5为实施例中一个简易加工制造单元的Unity场景示意图;
图6为实施例中Unity场景的一种设备状态示意图;
图7为实施例中Unity场景的另一种设备状态示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示,本发明提供一种三维可视化协同仿真系统,包括相互通信连接的基于Unity平台的场景子系统A和基于Psim平台的仿真子系统B,场景和仿真模型互相对应,仿真子系统B驱动场景子系统A,实现协同仿真。
1、场景子系统
场景子系统A包括第一通信模块,用于与仿真子系统通信,接收仿真子系统的动作指令;3D对象模块,具有若干个3D对象(三维模型对象),并基于动作指令控制3D对象的执行动作,3D对象是指在Unity场景下可以看到的一个三维物体。
3D对象包括简单3D对象和复杂3D对象,简单3D对象一般在场景中是静止的,不会有动画,而复杂3D对象可执行指定动作。每一个复杂3D对象都包含若干个“动作定义”。“动作定义”是指Unity里面的动画设定,用来确定3D对象的动作。一个3D对象如果有多个动作,就有多个“动作定义”。
Unity中3D对象的动画展示即某个三维对象执行某个动作。例如,场景下有一个数控机床,就是一个3D对象,数控机床包括防护门,那么,防护门也是一个3D对象。防护门可以开和关,这个开或关的动画,就是一个动作。
一般一个动作都有一个可自定义的周期。例如,一个开门动作,实现门从0°到90°的位置转变,这个转变可以在5秒内完成,也可以在10秒内完成(门开得快和慢)。这个开门时间可以预先配置,这样在实际动作呈现的时候,就可以模拟快速开门和慢速开门。
再比如,对于物流运输对象,一辆小车,是一个3D对象,它会运动,就是动作。该动作的一个表现动画就是小车在某条道路上移动。
在一个实施方式中,场景子系统A还包括用于接收交互指令的人机交互模块,交互指令包括启动、停止和复位。
2、仿真子系统
仿真子系统B包括仿真对象模块,具有若干个仿真对象,用于定义仿真行为,基于仿真需求模拟生产过程,产生动作指令。仿真子系统B构建一个基于虚拟环境的仿真模型,一般一个仿真模型针对一条流水线、一个车间甚至一个工厂进行构建。模型的复杂程度不一。
仿真对象是对实际对象的一个抽象,一般是一个设备、一个被加工的零件等的抽象。仿真对象包括简单仿真对象和复杂仿真对象,简单仿真对象为被动对象,复杂仿真对象为主动对象。每一复杂仿真对象设置有至少一个触发器,该触发器基于设定的事件动作关系产生动作指令。
主动对象,例如,一个机床的仿真对象,它能加工零件,可以产生“加工”、“停止”、“零件到达”、“零件送出”这些事件。被动对象,例如被加工的零件,被动对象一般不会主动产生事件。被动对象一般会有其产生和消失的过程,它会在主动对象之间传输。
例如,在一个车间的仿真模型中,零件是被动对象。零件从车间外面运送到车间,那么就是在车间内“产生”了这个被动对象。车间里面的一个个设备(机床、运输小车等)就是一个个主动对象,零件在不同的主动对象中传递,最后完成加工从车间中运输出去,则在这个仿真模型中“消失”了。
主动对象会产生事件,事件发生的时候,通过触发器发送“指令”,这个指令用来告诉Unity场景中的对应的三维对象做什么动作,如果发生的事件与对象无关,则不会发送“指令”。主动对象如果会产生多种事件,则会包括多个触发器。简单的仿真对象可以不包括触发器。
场景子系统A中的3D对象会和仿真子系统B中的仿真对象相对应。一般一个复杂3D对象会对应1个复杂仿真对象,但是不一定所有仿真对象都会对应到3D对象,简单3D对象也可以没有仿真对象对应。
仿真对象中的触发器产生的指令,会告知3D对象中相关动作执行,也就是触发器和动作定义有一种事件动作对应关系。这种对应关系通过前期设定,后期触发器发送指令的时候会指定相应的对象。通过“仿真对象发送指令”、“3D对象执行指令产生动作”这个关系,就可以用仿真模型来驱动场景中的3D对象,最终形成整体的动作。
动作指令的一个典型组成为(指令ID,指令对象,指令动作,产生时间,估计结束时间,结束动作)。具体的指令表示方法有多种,可以采用JSON、XML等方式,也可以采用代码方法,可以设定每个代码所代表的含义。采用代码的方式,可以缩短指令的长度。
比如,仿真对象1是表示一个机床模型,对应3D对象1也是一个机床的三维模型。在仿真模型中,零件到达仿真对象1,那么仿真对象1中的触发器就会产生一条指令,这条指令的一种表示方法(JSON方法)为{"001","3D对象1","零件到达","2020/3/31 15:20:34.123","2020/3/31 15:20:49.123","开始加工"}。指令的含义:仿真模型告诉Unity场景下的“3D对象1”,在2020年3月31日的15:20:34.123时刻,开始做一个“零件到达”的动作。这个动作估计持续15秒钟(预期结束时间为15秒之后)。后面动作结束之后,就做“开始加工”这个动作。零件到达动作,在“3D对象1”中定义,一个典型的例子就是防护门打开,零件放入机床这个动画。
在一个实施方式中,仿真子系统B还包括第二通信模块和用于存储动作指令的指令队列模块,第二通信模块以先进先出方式将动作指令传输给第一通信模块。
指令队列模块实时监测所存储的动作指令,判断是否存在需进行压缩处理的情况,若是,则进行压缩处理,需进行压缩处理的情况包括:对于同一对象的指令条数大于第一条数设定值,且各条指令的产生时间间隔小于时间设定值;或指令队列模块所存储的动作指令的总条数大于第二条数设定值。压缩处理包括按时间删除指令、按间隔删除指令和指令合并。
由于仿真目标问题的复杂程度不同,图1中Unity平台中的场景和Psim平台中的仿真模型,复杂程度会有变化。针对不同仿真目标,里面的仿真对象、3D对象的数量会不同。但是整个系统实现的逻辑关系不会改变。
3、场景子系统与仿真子系统的协同
场景子系统A和仿真子系统B基于Socket通信方式实现双向通信,具体Socket通信建立方法,可以参考Unity开发文档和Psim的帮助文档。
如图2所示,本发明三维可视化协同仿真系统的协同仿真的整体流程具体包括如下步骤:
S1:启动Plant Simulation软件平台(Psim软件),即启动仿真子系统B,并且启动相应仿真模型;启动Unity相应的场景,即启动场景子系统A。
S2:Unity场景模型通过通信模块,寻找对应的仿真模型。如果对应的仿真模型已经正常启动,则进入S4。
S3:如果没有启动Psim软件和相应的仿真模型,一种可选的方法是Unity可以发送命令行,自动启动PSim软件以及相应的仿真模型,可以参考Psim软件的帮助系统获取如何自启动模型的方法。但是这种方法有其局限性,就是Unity场景必须是在Windows操作系统下运行的,并且以原生exe方式运行。如果Unity运行在移动设备上,或者是嵌入在浏览器中运行,就不能用这种方法。只能在S1步骤中人工打开Psim软件。
如果Psim仿真模型正常启动,并且能通过通信模块找到,则进入S4。否则,提示错误信息,仿真运行结束。
S4:Psim仿真模型和Unity场景建立通信连接。双方通信模型通过发送一个“询问-应答”指令确认通信正常。
如果Unity场景模型发现通信不正常,则会终止运行。
S5:操作人员在Unity场景中通过人机交互模块启动仿真。
S6:Unity场景通过通信模块发送“启动”指令给Psim仿真模型,Psim仿真模型接收到指令后,开始仿真。
S7:Psim仿真模型根据仿真进展,仿真对象产生相应的事件,触发器触发,产生相应的指令,发送给Unity场景中的3D对象,执行相应的动作。
S8:结束仿真。
结束仿真有2种形式。一种是在Unity场景下,通过人机交互模块,操作人员发出结束仿真的命令(例如,点击某个按钮),Unity场景发送结束指令给Psim软件,Psim软件终止仿真,停止发送指令,Unity场景也停止。另一种形式是,Psim仿真模型仿真时间到了而结束,比如,仿真定义是仿真一天的生产情况,一天的时间到了,则仿真结束。Psim仿真模型发出仿真停止的信号,Unity场景接收到这个信号,也停止运行,并且给用户一个反馈信息,表示仿真停止。
步骤S7的细化流程如图3所示,包括:
S701:Psim软件开始仿真,根据仿真过程,会产生不同的事件,比如,零件到达某个设备,或者某个设备完成加工等。
S702:需要判断这个事件是否会影响对应Unity场景中3D对象的动作。有些事件没有影响到Unity场景下的3D对象动作,则这个事件只是在Psim仿真模型中应用,不需要产生指令来传递给Unity场景。
S703:如果一个事件会影响到Unity场景下的3D对象的动作,则通过预先设置的触发器产生动作指令。指令传送到仿真模型中的指令队列。
S704:指令队列会判断指令接收的3D对象是否指令过多。
指令过多包括2种情况,第1种情况是指,在指令队列中集聚很多(典型地,大于3条)发送给某指令对象的指令,并且这些指令的产生时间小于间隔某个值(典型地,1秒)。这种情况往往会引起指令来不及传递给Unity场景中的3D对象,一方面,指令过多会造成Psim模型和Unity场景通信阻塞,另一方面,后续指令会冲掉前面指令的动作,会造成3D对象动作来不及处理,引起协同失步。
指令过多的第2种情况,是由于双方通信模块通信问题造成的指令来不及发送,从而集聚了大量未发送指令。典型地,如果指令队列中指令大于100条没有发送,则可以判断为指令过多。
S705:如果发送给同一个3D对象的指令过多,则需要进行指令压缩。
指令压缩可以采用多种方法,可以根据指令接收的对象、当前Psim仿真模型的仿真速度来确定仿真指令的压缩处理办法,比如,按时间删除、间隔删除、指令合并等。
一种简单的方法是按时间删除,即删除老的指令。如果是前述的第1种指令过多情况,则可以选择删除某个密集时间段δ内(典型地,δ选取1秒钟)发送给同一3D对象的时间靠前指令,保留δ内最后的动作指令。如果是因为通信问题造成的前述第2种指令过多情况,则可以删除前面指令(典型地,可以删除前面积压的一半指令),然后发送新指令。
如果多次遇到指令过多情况,可以暂停仿真过程,修改仿真参数,检查通信同道后再重新开始仿真。
S706:Psim模型通过通信模块,发送指令到Unity场景。典型地,双方可以采用基于Socket的通信方式。
S707:Unity场景接收到指令,发送给指令相关的3D对象。
S708:3D对象接收到指令,执行相关的动作。
每个指令里面有一个“估计结束时间”,这样3D对象在设置动作的时候可以对动画有一个预先的设定。例如,机床开门,可以知道大概多少时间内完成这个开门动作。如果时间短,则动画显示得快一些,如果时间长,则动画显示得长一些。通过这个字段,可以简化Unity场景内3D对象的动画时长设定。
指令里面包括了“结束动作”,可以给3D对象当完成这个动作之后,如果没有新的指令收到,可以执行什么动作的指示。这个方法是防止因为通信问题,3D对象接收不到后续指令的时候,不至于发生失措现象。
实施例
本实施例以一个简易加工制造单元为例,该简易加工制造单元由两台加工设备和一个物料储存单元(仓库区)组成,每个加工设备配备一台物流小车,其由一个长方体替代,其具体的加工流程为:设备1加工完成后工件由小车推送到设备2,然后设备2加工完成后由小车推送到物料存储单元。图4为Psim模型示意图,图5为对应的Unity场景示意。Unity模型和Psim模型之间采用Socket通信方式。
对于单个设备:工位机床门闭合表示当前工位正在进行物料加工,机床门打开表示加工完成,同时在仿真过程中,面板上会显示设备的状态,当该设备上物料加工完成后对应的小车将物料运送至下一工位。
两个模型之间的协同仿真方法,可以参考前面图2、图3所设定的流程。
图6和图7为演示过程中,Unity模型的典型中间状态。图6或图7中的Start、Reset按钮形成人机交互模块,用来控制模型启动、停止和复位。
图6中设备1机床门关闭对应面板上显示设备1正在加工,此时设备1对应的小车1停靠在设备1边,同时设备2机床门打开对应面板上显示设备2加工结束,此时设备2对应的小车2向仓库区移动。图7中设备1机床门打开,对应面板上显示设备1加工结束,此时设备1对应的小车1向设备2移动,同时设备2机床门关闭对应面板上显示设备2正在加工,此时设备2对应的小车2停靠在设备2边。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (10)
1.一种三维可视化协同仿真系统,其特征在于,包括相互通信连接的基于Unity平台的场景子系统和基于Plant Simulation平台的仿真子系统,其中,
所述场景子系统包括:
第一通信模块,用于与所述仿真子系统通信,接收所述仿真子系统的动作指令;
3D对象模块,基于所述动作指令控制3D对象的执行动作;
所述仿真子系统包括:
仿真对象模块,用于定义仿真行为,基于仿真需求模拟生产过程,产生所述动作指令;
所述仿真子系统驱动场景子系统,场景子系统控制仿真子系统的启停,实现协同仿真。
2.根据权利要求1所述的三维可视化协同仿真系统,其特征在于,所述3D对象包括简单3D对象和复杂3D对象,所述仿真对象包括简单仿真对象和复杂仿真对象。
3.根据权利要求2所述的三维可视化协同仿真系统,其特征在于,一个所述复杂3D对象对应一个所述复杂仿真对象。
4.根据权利要求2所述的三维可视化协同仿真系统,其特征在于,每一所述复杂仿真对象设置有至少一个触发器,该触发器基于设定的事件动作关系产生动作指令。
5.根据权利要求1所述的三维可视化协同仿真系统,其特征在于,所述动作指令的信息包括指令ID、指令对象、指令动作、产生时间、估计结束时间和结束动作。
6.根据权利要求1所述的三维可视化协同仿真系统,其特征在于,所述仿真子系统还包括第二通信模块和用于存储所述动作指令的指令队列模块,所述第二通信模块以先进先出方式将动作指令传输给所述第一通信模块。
7.根据权利要求6所述的三维可视化协同仿真系统,其特征在于,所述指令队列模块实时监测所存储的动作指令,判断是否存在需进行压缩处理的情况,若是,则进行压缩处理,所述需进行压缩处理的情况包括:
对于同一对象的指令条数大于第一条数设定值,且各条指令的产生时间间隔小于时间设定值;或
指令队列模块所存储的动作指令的总条数大于第二条数设定值。
8.根据权利要求7所述的三维可视化协同仿真系统,其特征在于,所述压缩处理包括按时间删除指令、按间隔删除指令和指令合并。
9.根据权利要求1所述的三维可视化协同仿真系统,其特征在于,所述场景子系统还包括用于接收交互指令的人机交互模块,所述交互指令包括启动、停止和复位。
10.根据权利要求1所述的三维可视化协同仿真系统,其特征在于,所述场景子系统和仿真子系统基于Socket通信方式实现双向通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010480389.XA CN111723473A (zh) | 2020-05-30 | 2020-05-30 | 一种三维可视化协同仿真系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010480389.XA CN111723473A (zh) | 2020-05-30 | 2020-05-30 | 一种三维可视化协同仿真系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111723473A true CN111723473A (zh) | 2020-09-29 |
Family
ID=72565374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010480389.XA Pending CN111723473A (zh) | 2020-05-30 | 2020-05-30 | 一种三维可视化协同仿真系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111723473A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385762A (zh) * | 2011-10-20 | 2012-03-21 | 上海交通大学 | 集成Modelica的三维视景仿真系统 |
CN105045970A (zh) * | 2015-07-01 | 2015-11-11 | 国家电网公司 | 基于Unity动态生成三维场景的仿真系统及其实现方法 |
CN106909397A (zh) * | 2017-03-06 | 2017-06-30 | 北京潘达互娱科技有限公司 | 在Unity界面中生成输入框的方法及装置 |
CN107610214A (zh) * | 2017-08-09 | 2018-01-19 | 南通汇聚软件科技有限公司 | 一种基于虚拟现实技术的栈房监控系统 |
CN107679281A (zh) * | 2017-09-05 | 2018-02-09 | 国家电网公司 | 基于Unity动态生成的智能站三维场景仿真系统及实现方法 |
CN108845802A (zh) * | 2018-05-15 | 2018-11-20 | 天津大学 | 无人机集群编队交互式仿真验证系统及实现方法 |
CN109033535A (zh) * | 2018-06-29 | 2018-12-18 | 中国航空规划设计研究总院有限公司 | 一种基于vr技术的生产线设计可视化系统 |
CN109408055A (zh) * | 2018-10-10 | 2019-03-01 | 苏州好玩友网络科技有限公司 | Unity环境下的跨平台GUI触摸事件解析方法 |
CN110059380A (zh) * | 2019-04-03 | 2019-07-26 | 武汉同立方智能科技有限公司 | 一种基于Simulink的电气教育三维虚拟仿真方法 |
CN110328663A (zh) * | 2019-06-25 | 2019-10-15 | 河北工业大学 | 基于虚拟仿真与Linux操作系统的机器人硬实时控制系统 |
CN110675509A (zh) * | 2019-10-14 | 2020-01-10 | 陈树铭 | 一种基于三维建模的可编辑综合仿真方法及其系统 |
CN110688005A (zh) * | 2019-09-11 | 2020-01-14 | 塔普翊海(上海)智能科技有限公司 | 混合现实的教学环境、教师、教具互动系统及互动方法 |
-
2020
- 2020-05-30 CN CN202010480389.XA patent/CN111723473A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102385762A (zh) * | 2011-10-20 | 2012-03-21 | 上海交通大学 | 集成Modelica的三维视景仿真系统 |
CN105045970A (zh) * | 2015-07-01 | 2015-11-11 | 国家电网公司 | 基于Unity动态生成三维场景的仿真系统及其实现方法 |
CN106909397A (zh) * | 2017-03-06 | 2017-06-30 | 北京潘达互娱科技有限公司 | 在Unity界面中生成输入框的方法及装置 |
CN107610214A (zh) * | 2017-08-09 | 2018-01-19 | 南通汇聚软件科技有限公司 | 一种基于虚拟现实技术的栈房监控系统 |
CN107679281A (zh) * | 2017-09-05 | 2018-02-09 | 国家电网公司 | 基于Unity动态生成的智能站三维场景仿真系统及实现方法 |
CN108845802A (zh) * | 2018-05-15 | 2018-11-20 | 天津大学 | 无人机集群编队交互式仿真验证系统及实现方法 |
CN109033535A (zh) * | 2018-06-29 | 2018-12-18 | 中国航空规划设计研究总院有限公司 | 一种基于vr技术的生产线设计可视化系统 |
CN109408055A (zh) * | 2018-10-10 | 2019-03-01 | 苏州好玩友网络科技有限公司 | Unity环境下的跨平台GUI触摸事件解析方法 |
CN110059380A (zh) * | 2019-04-03 | 2019-07-26 | 武汉同立方智能科技有限公司 | 一种基于Simulink的电气教育三维虚拟仿真方法 |
CN110328663A (zh) * | 2019-06-25 | 2019-10-15 | 河北工业大学 | 基于虚拟仿真与Linux操作系统的机器人硬实时控制系统 |
CN110688005A (zh) * | 2019-09-11 | 2020-01-14 | 塔普翊海(上海)智能科技有限公司 | 混合现实的教学环境、教师、教具互动系统及互动方法 |
CN110675509A (zh) * | 2019-10-14 | 2020-01-10 | 陈树铭 | 一种基于三维建模的可编辑综合仿真方法及其系统 |
Non-Patent Citations (1)
Title |
---|
孙威: ""数字化工厂技术在生产线规划中的应用"", 《计算机辅助工程》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105786483B (zh) | 基于平板电脑的焊接机器人离线编程系统及其离线编程方法 | |
US20030090491A1 (en) | Simulation device | |
EP3819733A1 (en) | Creation of a digital twin from a mechanical model | |
JP6950347B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN103076762B (zh) | 基于htm40100车铣复合加工中心三维在线防碰撞方法 | |
EP2871540A2 (en) | Time synchronization of signal transmission intervals for simulating a machine in industrial automation | |
US10025286B2 (en) | Simulation system, programmable controller, simulation device, and engineering tool | |
US8862251B2 (en) | Controller for machine tool and machining-related data processing system provided therewith | |
CN105171745A (zh) | 一种机器人离线编程系统 | |
CN106406223A (zh) | 机床与机器人的实时干扰确认系统 | |
EP4002189A1 (en) | Industrial network communication emulation | |
CN113268044B (zh) | 增强现实人机接口的仿真系统和测试方法及介质 | |
KR102124312B1 (ko) | 컨트롤러 및 반송 시스템 | |
EP3974920A1 (en) | Unifying multiple simulation models | |
Montano et al. | Using the time Petri net formalism for specification, validation, and code generation in robot-control applications | |
CN104914875A (zh) | 一种多飞行设备协同飞行的控制方法及控制装置 | |
JP2019061523A (ja) | 情報処理装置、情報処理方法およびプログラム | |
Ko et al. | A study on manufacturing facility safety system using multimedia tools for cyber physical systems | |
CN111723473A (zh) | 一种三维可视化协同仿真系统 | |
CN105468432A (zh) | 一种基于机器人可视化交互式仿真环境的实现方法 | |
CN111324045A (zh) | 一种仿真及实物结合的产线模拟系统及方法 | |
CN103064375A (zh) | 核级设备检测远程操控上位机的软件结构和控制方法 | |
Tang et al. | Development of a laboratory HILs testbed system for small UAV helicopters | |
CN102650852B (zh) | 一种硬件在环数控系统控制结构的设计方法 | |
KR102371544B1 (ko) | 이송 로봇의 티칭 방법 및 이를 이용한 티칭 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200929 |