简体中文  |  English

全国服务热线:400-860-2881

新闻中心

您现在所在的位置:首页 > 新闻中心 > 公司新闻

公司新闻

基于虚拟现实的灌装饮料生产线行为仿真与应用

2019-12-28

1 概述

近年来, 饮料工业发展迅猛。饮料企业为了做出最佳工艺布置设计和决策, 在投资建立生产线之前, 虚拟生产线系统模拟现实生产全过程具有非常重要的意义。与此同时, 对饮料企业工人技能要求以及管理提出了更高要求, 虚拟生产线系统可实现岗前培训以及生产线管理的功能。沉浸式灌装饮料生产线三维动态仿真系统是院士工作站及浙江天煌科技合作项目:在计算机虚拟环境中构建典型饮料灌装生产线的工业现场, 包括了典型的工艺流程和生产线行为。系统采用虚拟现实 (Virtual Reality, VR) 技术可以进行虚拟设备操作、巡视, 完整体现饮料灌装生产线现场环境。通过虚拟生产线系统, 可对生产过程潜在问题进行预测, 以增强生产过程中各个层次的设计、生产决策与控制能力。

虚拟生产线系统是典型的虚拟制造系统。虚拟制造系统是将实际物理制造系统与实际信息系统映射为虚拟物理制造系统与虚拟信息系统, 是对实际制造过程的动态模拟以及本质实现。虚拟制造系统的最终目的是实现物理制造系统及其对象的行为仿真。对虚拟制造系统行为的分析以及行为的精确展现是虚拟制造系统研究的重要内容。

虚拟环境行为研究方面, 国内外学者取得了一定成果, 例如文献[1]对虚拟环境中机器人行为进行虚拟调试;文献[2]通过人工神经网络与中枢模式发生器控制复杂虚拟环境中生物体的行为;文献[3]研究了虚拟装配系统限制行为操纵;文献[4-5]研究了智能虚拟人Agent行为建模与运动控制以及煤矿虚拟环境中Multi-Agent行为模型。相比之下, 虚拟生产线行为的研究却很少, 文献[6-9]研究了虚拟生产线框架、行为以及行为实现机制, 将虚拟系统化为多Agent系统并通过Petri网工具进行行为建模;文献[10-11]对比了反应型Agent、混合型Agent和多Agent这3种行为建模技术在虚拟环境的应用并对虚拟环境基于过程的行为建模、基于对象的行为建模及基于Agent的行为建模进行了分析对比。

本文提出用基于消息的Petri网行为建模方法和虚拟现实技术来模拟生产线仿真。介绍虚拟生产线系统基本框架, 分析系统的行为, 建立虚拟生产线系统基于消息的Petri网行为模型并进行模型的实例分析, 利用3Ds Max9.0和Virtools5.0平台实现虚拟系统。

2 虚拟生产系统行为分析

灌装饮料生产线的典型工艺流程内容包括物料传送、空瓶清洗、空瓶检测、饮料灌装、瓶体封盖、成品检测、瓶体贴标、成品入库等11项基本工艺流程, 如图1所示。

图1 生产线典型工艺流程

图1 生产线典型工艺流程   下载原图


为了便于系统的实现, 建立虚拟生产线系统框架, 如图2所示。框架包括虚拟环境管理、系统建模、物流系统分析、生产过程分析、虚拟检测、模型数据库、虚拟模型行为仿真和虚拟现实用户接口等模块[6]。为了表达物理系统真实特性, 使虚拟生产线系统行为的变化符合过程规律, 必须将行为嵌入到虚拟系统, 对系统进行行为建模。通过确定系统分析模型, 实现过程数据驱动下的虚拟对象行为, 以对象行为的相互作用描述系统行为。

图2 虚拟生产系统框架

图2 虚拟生产系统框架   下载原图


2.1 系统行为

系统行为是对整个系统状态变化规律的描述。在虚拟生产线系统中, 系统行为的定义主要关心系统状态的变化过程规律。系统行为定义为系统状态的迁移演化过程, 由系统状态序列表示。系统行为模型需要对系统各对象的时间-逻辑的动作序列进行表达[7]。对虚拟灌装饮料生产线而言, 给出如下基本术语:

(1) 实体:虚拟灌装饮料生产线内部的对象, 如缓冲器、工件、贴标机、压盖机生产设备等, 其行为用B表示。

(2) 属性:实体的特征或特性, 如灌酒机、验瓶机的忙态、闲态等。

(3) 事件:引起系统状态发生变化的行为, 是在某一时间点上的瞬间行为, 如一项活动的开始或结束、一个实体属性值的改变等。

(4) 活动:实体在2个事件之间保持某一状态的持续过程。活动是实体行为间的交互, 用Aj表示, Aj={B1B2…Bn}。

(5) 过程:由事件的时间序列及若干活动组成, 是实体的活动集, 用Pi表示。

 


(6) 状态:在某个时间点上, 对系统所有实体属性的描述, 分为活动态和等待态。例如卸垛机正在卸垛属于活动态, 卸垛机等待卸垛就是卸垛机处于等待态。状态定义为过程的截面用Ti表示状态。

 


因此, 系统行为就可由系统状态迁移来表示, 即:Be Hav:T0→T1→…→Tg, T0为系统初始状态, Tg为系统目标状态。

2.2 实体行为

实体行为是系统行为的基本要素, 虚拟生产系统的所有制造活动都基于实体行为。在虚拟生产系统环境中, 实体由局部属性和若干行为组成[7]。用实体的状态迁移来表示实体行为模型, 记为B:

 


其中, S0:实体的初始状态;St:实体的状态迁移过程。在四维空间 (x, y, z, t) 中, St为时间t递增时, S的变化过程;Sf:实体的目标状态;S:实体所有状态的集合。实体的状态由实体的一组属性表示, 例如实体的几何特征、空间位置、速度、加速度、角速度以及角加速度等。

3 基于消息的Petri网行为模型

Petri网系统由表示状态的P (库所) 元素和表示变化的T (变迁) 元素构成。它适用于描述异步并发系统, 只要对系统中T元素给予正确的描述, Petri网理论就能够保证整个网络系统是可实现的[12]。虚拟生产线是一个典型的离散事件系统, 具有异步和并发的特性。虚拟系统的系统行为与实体行为状态迁移模型通过Petri网的状态变迁机制能得到很好的表达, 所以, Petri网可以用来描述灌装饮料生产线系统行为, 并能严格控制系统的行为。

3.1 消息

虚拟生产系统实体间必须通过相互协作完成生产任务。消息是实体间交流信息的载体, 作为通信媒介, 将消息纳为Petri网内资源[13]。消息为六元组, 用Msg表示:

 


系统中实体分别对各自产生的消息进行统一编号 (ID) , 用来标识不同实体各自的消息。对消息的类型 (Type) 、内容 (Value) 以及消息当前所处的状态 (Stat) 也进行标记。同时各实体也会对消息的产生者 (Sender) 和消息的接收者 (Receiver) 进行标记。

3.2 Petri网行为模型

Petri网行为模型是实体在消息驱动下实体行为的描述。用W表示Petri网行为模型:

 


其中, (P, T;F) 为有向网, 成为W的基本过程, 满足:P∩T=Φ, P∪T≠Φ, , 且dom (F) ∪cod (F) =P∪T。

 


在虚拟系统中, P和T分别标识了实体的当前状态和行为。消息的流动情况用连接P和T之间的流关系F来表示。

∑表示有限字符集;h表示T→∑为标识函数;为了解决虚拟环境中语义匹配问题以及研究的便利, 引入标记函数h将虚拟生产线的行为映射到虚拟系统上的抽象符号。

C:P∪T→ρ (D) , ρ (D) 为消息类型集D的幂集。

I: (P→T) ∪ (T→P) , 任意I (p, t) ∈[C (t) MS→C (p) MS]L且I (p, t) 不属F。

C (t) MS是表示集合C (t) 上的所有有限多重集组成的集合;[C (t) MS→C (p) MS]L则表示从C (t) MS到C (p) MS上的所有线性函数的集合。

函数I是消息和行为关系的纽带, 表明行为发生对消息的影响。根据消息的消耗和产生关系, 将I进一步划分为I-和I+两种关系, 分别称为P×T上的负函数和正函数。I-对应于F中状态p到行为t的流关系, 表示对消息的消耗, 表示当且仅当一个实体接收到这些消息, 行为才会被触发, 同时这些消息消亡。I+对应F中行为t到状态p的流关系, 表示行为完成后产生的消息。k=I- (p, t) 表示触发行为t所需要的一组消息。消息是一种资源, 函数I通过对消息的消耗和产生的计算, 实质上体现了消息对流程的控制。

S0:P→DMS是W的初始标识, 满足p∈P:S0 (p) ∈C (p) MS, 即S0 (p) 是p消息类型集合上的多重集。

:终态集合。

初始标识S0指出了触发行为所有可能消息交互的位置及其个数。在虚拟生产系统中, P可能消耗多个相同消息, T亦可能产生多个相同消息, 故引入多重集。S0体现了发送消息实体与接收消息实体之间的一个交互。一个消息序列激活一个行为序列, 用Si[σ>Sj表示W在标识Si经过一个行为序列σ后到达Sj。行为模型所有位置的消息情况以及其所处的状态都由标识进行说明。

Gf是W的终止标识集, R (S0) 表示S0经过任意行为序列之后的标识集。当整个虚拟生产线系统达到满足Gf中的某个标识时, 虚拟生产系统到达终止态, 可以返回最终结果, 并等待下一个调用。

3.3 Petri网行为模型实例

通过Petri网行为模型结合卸垛机卸垛过程Wh、洗瓶机洗瓶过程、验瓶机验瓶过程以及缓冲器运输过程组成的小系统来说明虚拟生产线的行为模型。其Petri网如图3所示。卸垛机的行为过程分为3个阶段:

(1) 卸垛机处于就绪状态, 等待“系统请求生产信息”M1, 而当它到达后, 触发卸垛机卸垛行为t1。对应Wh中I- (P1, t1) =h, I- (P2, t1) =M1, 即h和M1触发t1

(2) 行为t1完成后返回信息“请求缓冲器输瓶信息”M2给缓冲器1。对应Wh中I+ (t1, P3) =q, 即行为t1产生表明生产状态的消息q。

(3) 卸垛机进入卸垛终止状态, 经过一个等待行为Wait之后, 再次进入就绪状态, 等待下一轮的调用。

图3 生产线Petri网行为模型

图3 生产线Petri网行为模型   下载原图


卸垛机完成卸垛之后, 通过向缓冲器1发送消息M2来驱动缓冲器1进入输瓶行为的循环。与此同时, 缓冲器1完成输瓶后继续向下一级洗瓶机发送消息M3来驱动洗瓶机洗瓶行为的循环, 以此类推, 到生产线最后一级生产设备完成生产, 从而完成整个生产行为。

Wh在整个卸垛过程中需要接收请求者M1消息, 用于触发t1行为。另外, h表明灌酒的启动, 于是, 其初始标识为S0= (h, M1, 0) , 易见其终态标识为Gf= (0, 0, q) 。同理易得缓冲器3初始标识为S0= (h5, M6, 0) , 其终态标识为Gf= (0, 0, q5) 。

通过实例可知, Petri网行为模型直观地描述了生产线系统的整个生产过程的行为, 并发性也与实际生产相符。消息的引入表达了行为的产生条件、可能性以及行为的结果, 为程序实现提供了逻辑思路。生产过程状态迁移 (行为) 通过初始标识S0、终止标识Gf以及Si[σ>Sj得到了很好的表达。

通过Petri网结合消息数学定义, 可借助数学工具方便地对系统进一步的静态结构与动态行为进行分析。Petri网离散、并发特点方便了设计, 使后期改进无需在原网络进行大幅调整与修改。

4 虚拟灌装饮料生产线仿真

生产线用3D Max建模, 将建好的模型进行模型转换, 生成.CMO格式的文件, 通过Virtools中自带的相关BB模块以及通过Virtools脚本语言 (VSL) 编写的自定义BB模块定义模型中的各元素。按照各生产设备的Petri网行为模型将各模型加载Virtools虚拟现实开发平台进行交互, 通过Petri网消息进行系统的行为控制, 实现了沉浸式虚拟灌装饮料生产线系统, 如图4所示。相比纯粹数学模型仿真, 基于VR的系统, 可对使用者关于视觉、听觉、触觉等感官的模拟, 使其如同身历其境一般, 能及时、无限制地观察三度空间环境等优点。

图4 沉浸式虚拟灌装饮料生产线系统截图

图4 沉浸式虚拟灌装饮料生产线系统截图   下载原图


虚拟系统的运行是通过仿真循环实现的。仿真循环开始, 通过人机交互接口产生消息序列对系统指派生产任务。收到消息的生产设备检查自身状态, 如处于忙碌状态, 继续当前生产, 否则触发相应生产。生产设备完成任务产生新消息, 以驱动下级生产, 直到所有设备完成指派的生产, 该生产任务结束, 进入下一仿真循环。系统仿真过程包括如下4个基本部分:

(1) 虚拟生产线行为映射到抽象符号 (标记函数h) , 如表1所示。将抽象符号统一分配内存 (有限字符集Σ) 进行管理。

表1 标记函数的h映射     下载原表

表1 标记函数的h映射

(2) 虚拟生产线系统消息产生过程 (I+) :定义新的类Message_new继承父类Message类。添加消息属性成员变量, 重载构造函数Message_new () , 初始化成员变量。对Create Message () 方法进行重载, 作为行为触发消息属性函数, 形式如下:


如果消息传递完毕通过重载析构函数~Message_new () 释放内存, 删除消息。

(3) 消息消耗过程 (I-) :生产设备接收到消息后, 通过消息的内容“Destacking, Delivering, …”触发相应的行为, 行为的实现通过定义相关的行为函数eventhandler () 。消息触发行为, 通过关联消息与行为函数实现:


(4) 初始标识S0与终态标识Gf:初始标识S0, 给出了eventhandler () 启动判断条件。Gf说明了eventhandler () 运行结束输出的结果。eventhandler () 运行最后触发相应的消息, 依次推动下一级行为的进行。

5 结果分析

用于生产线虚拟环境行为的其他模型主要有2种: (1) 活动循环图[14]的半形式化模型; (2) Agent系统等智能系统模型。

活动循环图这类模型可读性强但缺乏严格的语义, 难以验证模型的正确性。活动循环图仅仅是系统的一个逻辑模型。Petri网可以建立准确无二义性的模型, 定义了系统严格的行为特性, 容易验证模型的正确性, 并能借助数学工具方便地对系统结构和行为进行分析。此外, Petri网模型的并发性是活动循环图模型无法表达的。

Agent系统等智能模型通过引入Agent概念实现了对智能物体的信念、愿望等精神状态以及判断、推理等思维过程的建模, 使得环境中智能物体的行为反应更加真实、自然, 适用于智能型的虚拟环境。目前, 这类方法大多数的研究只是给出了系统的一个基本模型框架, 对于模型的具体现实往往不尽人意 (如人的思考方式、自主行为等) 。Agent系统一般应用在高级智能的系统上, 然而生产线系统本身逻辑行为较为清晰, Petri网模型足以进行其行为的表达。另外, Agent系统真正意义上的建模难以实现, 生产线系统Agent建模反而显得力不从心。

基于消息的Petri网模型在传统的Petri网中引入消息, 并给出了严格的数学定义, 将虚拟环境中每个对象都看成一个对等的通信实体, 充分考虑了消息和行为的关系。模型中, 消息作为一种资源, 行为作为资源消耗者, 自然地建立消息触发行为的关系, 并且在生产过程确定之后, 不需要任何附加的控制约束, 其本身就可以控制流程的正确执行。仿真结果表明, 基于消息的Petri网行为模型能很好地对虚拟生产线进行搭建控制与分析。

6 结束语

生产线行为的仿真是生产系统的重要内容, 是系统微观层次与宏观层次仿真的桥梁, 起着承上启下的作用。在对灌装饮料生产线建模实现的基础上, 本文对灌装饮料生产线行为的建模和仿真进行了研究, 给出了生产线行为的Petri网行为模型、Petri网实例, 并通过虚拟现实开发平台Virtools实现了整个虚拟系统, 对生产线评估、设计、可行性分析等提供了重要依据。下一步工作将在虚拟生产线环境中进行虚拟设备操作和巡视, 通过标准工业控制总线与西门子S7-300PLC控制系统进行物理生产线模型互动。

[返回]