基于时间Petri网的断路器虚拟装配系统研究

2019-02-27 01:18杨艳芳吴自然
中国机械工程 2019年3期
关键词:流水线断路器生产线

杨艳芳 贺 焕 舒 亮 杨 秒 陈 萍 吴自然

1. 武汉理工大学物流工程学院,武汉,4300632.温州大学浙江省低压电器工程技术研究中心,温州,3250273.中铁第四勘察设计院集团有限公司,武汉,430063

0 引言

供电调度是保证电气化铁路正常运行的重要内容,在牵引供电设备的安全运行、维修和故障处理等工作中起着非常重要的作用。铁路牵引供电系统中断路器的保护作用非常重要,断路器的稳定与可靠性对保障高速铁路稳定安全运行关系重大[1-2]。小型断路器日产量巨大,其装配工艺和制造流程十分复杂,以手工生产为主的传统制造方式效率低下,严重制约了产品性能和可靠性的提升,研究和开发以自动化、数字化为主要特征的新型断路器集成化制造系统,对提升产品性能及其整体生产效率具有重要意义。这一问题的解决面临两方面的难题:一方面是制造系统的工艺布局与方案设计问题,方案的制定直接决定了系统未来的效率与性能,如何确立最佳的规划布局,是系统研究过程中需要解决的首要问题;另一方面,断路器数字化制造系统以流水线作为其生产组织形式,由于零部件众多,制造工艺复杂,装配过程涉及硬件设备、装配对象、零部件约束、装配序列等复杂因素,故流程复杂,逻辑关系繁多,所导致的生产节拍调整和时间控制问题是需要解决的第二个难题。

时间Petri网模型[3-4]以及基于该模型的虚拟现实技术为解决上述问题提供了有效手段。通过虚拟仿真技术,人的知识和经验可以有效移植到虚拟制造系统中,形成以沉浸式交互技术和三维立体模型为基础的虚拟系统,也可以更加直观地展示制造系统整体性能,能更方便地掌握流水线的三维布局以及工艺的优化和改进。此外,通过Petri网对流水线行为特征和变迁规律建模,借助抽象的逻辑建模方法,可以在理论层面准确描述系统行为特征,进而进行制造过程行为分析和精炼,所得结论可以为流水线的设计与控制提供重要参考。

断路器的装配制造过程可以等效为动态异步并发型的离散事件系统,涉及时间序列和多节拍匹配问题,在时间和空间上均是离散的。Petri网建模是一种描述该系统的有效方法,它在车间调度[5-6]、交通控制[7-8]、故障诊断[9]和供应链仿真[10]等离散事件系统中得到了广泛应用。通过Petri网建模,可以清晰描述系统内部的并发冲突及相互作用。曹政才等[11]提出了一种基于有色赋时Petri网的半导体生产线建模方法,将半导体生产线分为不同的调度和控制模块,来分析生产线调度与控制性能;徐彪等[12]在Petri网库所及变迁中引入时间属性来表征电力系统警告信息的时序约束关系,提出了一种基于模糊时间Petri网的电网故障诊断方法,优化了在线调控运行;张伟军等[13]采用时延Petri网对装配机器人等柔性装配单元进行建模,分析不同作业任务的时间消耗,对任务规划的时间进行了优化;ULLAH等[14]提出了一种基于装配序列优化装配方案的通用Petri网模型,建立了灵活的装配系统结构模型。这些文献主要研究在Petri网中加入时间等元素,建立基于时间Petri网模型,对特定的制造系统/生产线进行优化或调度控制。这些方法仅局限于对模型和工艺的研究与讨论,缺乏后续的仿真验证,没有将模型计算结果进行形象化的对比和展示,同时缺乏交互性。

采用商业化软件对Petri网模型进行仿真也是另一项重要研究内容。潘春荣等[15]采用Petri网建立了印刷包装生产系统的赋时Petri网模型,依据Petri网模型逻辑关系,运用eM-Plant仿真软件进行了模拟生产;梅江平等[16]提出一种以高速搬运机器人为核心的新型果奶包装生产线设计方法,建立了系统的Petri网模型,基于不变量方法分析生产线系统的可达性、安全性,同时通过eM-Plant软件进行仿真;WANG等[17]提出基于Petri网的生产线模型,建立了Petri网模型与eM-Plant离散系统模型之间的映射关系,在不同的输入条件下进行合理的仿真实验。这些研究通过商业软件对Petri网模型进行了仿真,给出了不同工艺设计对制造过程的影响,然而商业化的仿真软件仅可以为特定对象提供数值化的反馈结果,研究者只能通过在固定化的开发接口上获取需要的信息,缺乏交互性。同时,数值化的仿真结果对于用户而言,缺乏直观性和生动性。

本文针对断路器数字化制造的布局和设计问题,提出一种基于时间Petri网建模的虚拟仿真技术,以Unity 3D作为虚拟现实开发平台,建立了基于时间节拍约束的嵌套式Petri网模型组,并建立了基于C#函数库的虚拟装配系统数据交换引擎,可以通过Wi-Fi、工业串口实现与实体系统的数据交换。为降低系统逻辑复杂性,提高Petri网模型结构的可重用性,根据生产线单元层级相互关系,对断路器数字化制造单元进行了模块层次化设计,将断路器装配线分为系统整体线路装配模块、零部件互相配合模块和单个零件上料模块,结合案例研究其在系统中的调度和控制问题,并给出了具体的仿真和分析结果。

1 生产线建模

1.1 装配生产线构成

断路器装配生产线包括外壳上料、手柄装配、磁系统、热系统等13项基本流程,见图1。整个生产线中,装配主体置于承座,并通过传送带完成装配动作和回流循环使用。整个装配生产系统包括被加工对象和生产线装备本身,涉及装配动作、约束关系和装配序列等过程,十分复杂。

图1 生产线构成Fig.1 The components of production line

小型断路器的内部零件模型见图2,包括手柄结构、连动机构、热系统、磁系统等,零部件数量较多,尺寸和大小不一,装配过程复杂。装配流程包含零件的自动上料、依次配合、组件装配和压合检测等。生产线工艺流程设计时,断路器内部零部件的结构信息是重点考虑内容。

图2 断路器零部件模型图Fig.2 Model drawing of circuit breaker parts

断路器生产线的结构层次关系和包含的装配动作见图3,断路器生产线13道工艺分布在9个系统单元,每个系统单元包含特定的机械设备与零件,设备相互配合运动完成相应的零件上料、零件配合、零件压合与检测等工作。整个系统包含串行动作269个,并行动作139个,在每个生产节拍中总共需要完成327个动作,系统的零部件总数达到4 568个,并且每个动作和零件需要根据相应的逻辑和时序进行配合运动,系统运行过程和逻辑控制较为复杂,需要采用逻辑层次模型对该生产过程和运动控制进行描述。

图3 断路器生产线部分结构图Fig.3 Structure diagram of circuit breaker production line

1.2 时间Petri网络建模

整个断路器装配系统单元繁多,且流程复杂,各单元间的逻辑关系设计、时间节拍的同步和异步协调等问题,是进行自动化装配线设计与仿真的难点。基本Petri网模型可以对离散并行系统进行描述,但是缺乏时间信息。为解决此问题,采用分级设置Petri网模型,并引入时间域、零部件信息等元素对Petri网进行补充和建模,实现Petri网络模型的优化。

1.2.1时间节拍约束

系统仿真的运动通过时序信息来进行驱动,时间节拍的设计具有重要意义。在实际生产线中,装配过程是连续的,每道工序的节拍时间相同,而且同一工序的装配过程是相同而重复的,假设在仿真过程中,单个零件的最小装配时间节拍为Ta,在0~Ta中完成一个零件的装配过程,然后做周期运动,可达到单元联动效果。由装配关系和系统运动时间连贯性可知,每个单元的时间分配包括运动和等待时间,其代数和应为Ta。部件由多个零件配合组装而成,其装配时间也为Ta。当部件由多个零件组合而成时,其配合过程总时间应为kTa(k为部件中零件子单元装配过程的数量)。

图4 时间节拍设计方法流程图Fig.4 Time stamp design method flow chart

在自动化装配系统中,机器人是流水线中的重要环节,其工作过程可以等效为整条流水线中的一个工作单元,机器人从装配动作开始到装配过程结束(机械臂重置到初始工作点),总工作时间也应该为Ta,因而机器手臂的装配工艺设计和轨迹规划需要考虑到时间节拍Ta的约束。在进行流水线设计时,Ta的选择需要考虑到流水线的总单元数量和零部件个体数量,且受到仿真设计的总执行循环时间约束。同时,机构的运动走向、运动速率、部件的位置分布等也需要进行综合考虑,具体时间节拍设计方法见图4。整个流水线运动可看作是一个多单元依次衔接、小单元局部循环的过程,单元从初始状态经过一定运动转化为终止状态,且该单元的终止状态与下一个单元的初始状态一致。运动开始则无限循环,可实现断路器装配流水线的仿真。

1.2.2装配流水线运动设计

基于装配流水线构成,将整个流水线描述为A=(Ta,O,G,TP,M,C,K),以此对断路器虚拟装配生产线系统中各对象的时间-逻辑的动作层次进行描述。模型A中,Ta表示节拍;O表示各个零部件模型;G表示模型的分组信息;TP表示对象运动的时间节点;M表示对象在时间域内的运动信息;C表示流水线的结构特征;K表示流水线运动中所包括其他信息。

由上可知,装配流水线实现运动需要满足以下条件:①虚拟编译环境中,需要设置全局时间变量来对各单元流程进行协调和控制;②虚拟环境中必须包括所有必要零件模型,以及各个零件的分组信息;③零件模型之间需要设置正确的结构、配合关系;④不同对象处于不同时间节点时,具有不同的运动状态;⑤每一个单元在一个循环周期结束后,其时间和空间位置信息均需要进行重置;⑥虚拟场景中对象的运动规律应与实际物理系统的工艺一致。

1.2.3时间Petri网模型

基本的Petri网(PN)模型fPN=(S,T,F),描述了断路器虚拟装配流水线的实际工艺和逻辑,在PN模型中加入时间、零部件信息等元素,构成装配流水线Petri网(APN)模型,即

fAPN=(S,Sa,TR,F,k,M,M0,TP,T)M={Mi}i=1,2,…,nMj={mj}j=1,2,…,kmj={xjs,yjs,zjs,αjs,βjs,γjs;xje,yje,zje,αje,βje,γje}

式中,S为库所集,表示系统中的资源状态;Sa为前期工位完成的装配状态;TR为变迁,表示系统中的资源消耗、变化、生成等操作;F为流信息,指代装配零件或设备从一个状态到另一种状态的过程;k为由一个库所即将发生的多个变迁的权重值;M为对象时间域中的变换量;Mi为对象i的变换量;mj为对象单个时间域内的变换量,如手柄上料需移动的距离、工作台旋转角、机械臂目标轨迹位置等信息;(xjs,yjs,zjs)为对象初始坐标点;(αjs,βjs,γjs)为对象初始欧拉角;(xje,yje,zje)为对象目标坐标点;(αje,βje,γje)为对象目标欧拉角;M0为模型初始信息,即代表运动未发生时所有模型姿态信息;TP为时间节点,从动作的开始,依据循环次数进行自动叠加,到达一定额度后进行对象状态重置和时间点重置,TP={tp},tp∈[0,T];T为对象的动作时间域(每个对象的总时间域相同),T={Ti}(i=1,2,…,n);Ti为对象i的时间域,一个对象的某个动作分为多个时间段,即Ti={tj}(j=1,2,…,k);tj为对象的某个时间域,如设置t1为手柄上料的运动时间,tj={tjs,tje};tjs、tje分别为该对象的变换时间开始和终止节点,如tjs为手柄上料动作开始的时间节点,tje为手柄上料动作完成时间节点。

根据装配线的原理和结构特征可得APN结构图,见图5,该结构图可描述整个断路器装配主线的工作状态和流程。图5中,S0~S13为断路器装配状态,如S0代表为空,S1代表承座装配完成,S2代表断路器外壳装配完成,S13代表所有装配完成得到成品。系统共分成13个基本操作,Sa0~Sa12代表断路器装配所需的前位工作已完成状态,如Sa0代表承座上料,Sa12代表合盖。TR1~TR13代表断路器装配零件、部件变迁运动的过程。K1~K13代表零部件装配次数,记录生产量。

图5 APN结构图Fig.5 Structure chart of APN

图6 JAPN结构图Fig.6 Structure chart of JAPN

磁系统、热系统等完成装配之前,需要对组成磁系统、热系统的零件进行配合,通过搭建零部件配合Petri网(JAPN)来描述其配合过程,fJAPN=(J,Sr,TP,F,k,M0,TP,T),简化后的局部结构图见图6。图6中,Ji(i=1,2,…,n)表示部件组合过程中各零件上料或配合完成,如J1表示第一个零件已就位,J2表示第二个零件就位。TP2i-1表示零件的上料变迁动作,由上料单元移动到承座进行配合。Sri表示带着前i个零件的承座组合,TP0、TP2、TP4等表示带着前i个零件的承座组合变迁到下一个零件装配工位动作,Sai表示最后组合完成的部件,也是APN网络中的Sa,断路器装配所需的前位工作完成状态。

零件上料等小单元装配工序具有单独的装配过程,采用Petri网来描述单个零件模型的上料,即LAPN模型,表达式为fLAPN=(P,Th,F,W,M0,TP,T),具体见图7。

图7 LAPN结构图Fig.7 Structure chart of LAPN

图7中,P1~Pi代表设备状态,Th1~Th3代表自动化夹具设备或机器人带动零件进给变迁的过程,Th-1~Th-i代表零件夹取设备或机械臂在零件上料完毕后的重置过程。运行最后达到JAPN中的Ji状态,即上料完成或配合完成。

由上述APN、JAPN与LAPN模型形成带时间信息的嵌套式Petri网模型组,它层次地描述了整个装配流水线的行为逻辑关系。流水线中通过机器人完成上料工作,因而机器人的运动逻辑与时间节拍应符合Petri网络LAPN模型的描述。

完成时间Petri网络模型的搭建后,整个虚拟制造仿真系统的搭建过程就更加便捷、严密,且逻辑清晰,同时使节拍修正调节更加简便。此外,虚拟制造仿真系统需要与实物结合,以完成各对象从真实环境到虚拟环境的映射,实现生产线数字化和虚拟化,便于生产线的运维监控过程。

2 数据交换引擎

断路器虚拟装配系统以设备网络化、过程透明化、数据可视化和生产自动化为目标。虚拟系统内容包括设备、车间布局三维展示、生产线仿真运动和产品实时生产数据显示等。通过分析数据在系统中的传递关系与接口交换模式,可实现多领域软件数据流的无缝链接[18]。虚拟系统的运动仿真与控制需要结合实体对象的运动方向、距离、时间、速度等具体的行为数据。产品生产数据包括当日车间总生产计划、当日车间生产人数(实时出勤人数)、当前设备运行状态(有无故障)、当前完工产品数量等实时数据。虚拟系统接收实时数据时,需要对流水线设备进行信息采集和信息传输等功能设计。数据传递基本过程见图8。

图8 数据传递方式框图Fig.8 The block diagram of data transmission

图8中,PLC对实体系统进行驱动和控制,实体系统的数据信号通过工业以太网传输到PLC,经过网关通信协议转换以后,以工业串口和Wi-Fi的形式发送给虚拟系统,虚拟系统通过数据交换引擎接收并处理数据。数据的传输格式设计见图9,其中,开始位S、确认位A、结束位E分别用于数据传输的开始、确认和结束;读写类别W用于区分数据的传输或接收;数据类别C用于区分数据的种类;从地址F和到地址T分别表示数据的发送与接收的主体的地址。该传输格式通用性好,结构整齐,适用于各种数据传输情况。

图9 数据传输格式Fig.9 Data-transport format

Unity 3D能够很好地支持和继承C#的功能,实现Unity与实体的数据交换,即使用C#自带的程序API函数进行数据的交换和处理。进行串口通信时,需要基于Serial Port(串口)类进行开发,采用Wi-Fi模式时,则需要采用Socket(端口)类函数进行设计。

采用Wi-Fi模式时,首先为分布式网络设置通信参数,并由服务器初始化网络后,发现客户端,再为客户端进行参数配置和入网操作,最后进行数据传输等工作,其具体流程见图10。

图10 端口通信方式Fig.10 Data communication mode

串口通信时,首先对串口参数进行配置,包括其串口名、波特率、奇偶校验等,再使用串口的打开、关闭、数据接收等函数实现串口通信。数据通信转换应用过程见图11。

图11 串口通信方式框图Fig.11 The block diagram of series communication

3 Petri网模型到虚拟平台的映射与实现

将建立的Petri网模型中的库所、变迁与Unity 3D虚拟场景中的实体对象相对应,根据Petri网络进行模型的分组、分级并链接层次关系,根据对应数据进行行为驱动编译。通过编程架设Petri网所描述的系统结构,实现系统速度柔性可控的多节拍循环运动和动态切换运动,实现Petri网模型到虚拟平台Unity 3D平台的映射,从而实现装配流水线的虚拟现实仿真。

3.1 模型结构化

映射过程中,首先对模型对象进行结构化处理,模型中,具有相同运动过程的设备可链接成组。如根据模型的运动关系,若干个零件组成的部件是整体运动,将这些零件设为一组,成为一个气缸部件,并命名为气缸01,组中各个零件与整个气缸部件具有层级关系。层级关系在Unity中也叫父子关系,满足“父动子动,子动父不动”的规则。根据这种规则,将所有零件分层链接并建立层级关系,然后层层链接成为一个有层次的系统。

根据Petri网的逻辑,在Unity的hierarchy视图中建立层级关系,创建Control.cs脚本,并赋给系统物体,在C#环境下定义部件变量并将这些变量与部件建立一一对应关系。

定义变量:

Public Transform bracket-circulation ;//定义承座回流

Public Transformrobot;//定义机器人装配

Public Transformbracket01;//定义承座01对象

链接层次关系:

Bracket-circulation = gameObject.transform. GetChild(1).transform; //承座回流是断路器装配系统的第1个子物体

robot=gameObject.transform.GetChild(2).transform;//机器人装配断路器外壳是断路器装配系统的第2个子物体

bracket01= Bracket-circulation.transform. GetChild(1).transform;//承座01是承座回流单元的第一个子物体

3.2 系统行为实现

映射过程中,Petri网络模型中的变迁映射是重要的任务。变迁映射符合网络中时间节拍设计的约束。Unity 3D系统自带有全局坐标系,模型从SolidWorks导入时,空间位置关系已确定,使用全局坐标系根据零部件坐标标记运动始末坐标。

对象平移运动可运用transform.Translate函数实现,例如气缸01在z轴上相对移动距离0.154 m,用以下代码实现:

GameObject.Find(“Cylinder01”).transform.

Translate(new Vector3(0,0,-0.154));

对象旋转运动可用transform.RotateAround函数实现,例如自动化设备中的转盘每循环装配一次,其在0.80T~0.95T时间域内绕着转轮中心点创建的虚拟对象pivot01的z轴旋转45°。将时间T分为100节,则在80到95节之间每小节旋转3°。用以下代码实现:

If((key_frame>=80)&(key_frame<95))

this.transform.RotateAround(GameObject.Find(“pivot01”).transform.position,Vector3.up,3);

3.3 碰撞检测与界面设计

在仿真过程中,机械设备运行过程中可能会发生自身的碰撞或是与其他设备的碰撞,碰撞检测可以在发生碰撞时及时做出报告与响应。Unity支持多种检测方法,本文采用包围盒法[19-20]检测。包围盒法是使用碰撞体包围盒近似覆盖对象,通过包围盒的相交情况来检测碰撞。平台提供了3种碰撞响应函数:VoidOnCollisionEnter(Collision collisionInfo)、VoidOnCollisionExit(Collision collisionInfo)、VoidOnCollisionStay(Collision collisionInfo)。当物体的碰撞状态发生改变时,相应的碰撞响应函数在后台会自动被调用。

操作系统界面是人机交互较为重要的部分,界面的设计直接影响到整个系统的操作便利性、美观程度等。在Unity 3D中使用UI组件,通过在UI界面上设置背景图片、文字、按钮等功能,显示装配系统的工作量与工作效率等实时数据。在系统中设置虚拟漫游功能,用户能够在系统中通过输入硬件设备达到全方位观察系统结构的目的。

3.4 仿真结果展示

依据时间Petri网模型中的逻辑关系和节拍设定,在Unity 3D中对断路器装配系统进行了虚拟仿真,其系统部分展示结果见图12。使用Petri网对各对象运动规律进行定义和描述,结合系统设计中设置的全局时间变量Ta,使得虚拟系统可根据Ta的改变,来改变整条流水线的设计节拍,由此,可对装配系统的工艺及其流程进行柔性设计和控制,实现整个装配系统的节拍调控。

图12 系统部分工作展示图Fig.12 Part of the system work display

利用基于时间的嵌套式Petri模型,清晰地描述了各设备的运动逻辑先后关系,方便系统对故障信号的处理转换,实现实时信号控制设备运动状态,达到生产监控的目的。在APN中的生产线主装配线上,当承座与零部件准备到位时,零部件装配才能进行,零部件依次装配才能得到最后的产品。网络中,S0代表承座上料完成,Sa0代表断路器外壳就位,当承座与外壳都就位后,外壳的装配过程TR1才能进行,才能形成外壳装配完成状态S1,进而装配下一零部件直到产品成形。而APN中的零部件就位(即Sa的实现),需要满足JAPN中的TPi载具变迁到位与Ji小零件的到位,此时,部件的配合才能发生。而JAPN的Ji实现需要满足LAPN中设备的运动Th。Petri网逻辑环环相扣,断路器运维系统正常情况下,单元正常运行,当接收到第i个单元故障信号时,该单元以前的所有单元控制的设备及载具停止。当接收到故障解除信号且所有单元的上料位有载具时,所有单元正常运行,若某单元上料位载具为空,则其单元上料停止。达成目标系统需保证:①单元无故障;②传送带上料位有载具。

可以看到,通过时间Petri网络对制造线的逻辑框架进行构建和描述,并与虚拟现实技术相结合,可有效解决虚拟仿真系统建模过程中的流程和工艺复杂等问题,且时间Petri网中的时间元素使系统程序编译更加方便。使用所提出的工业串口通信方法,完成了虚拟装配系统与实际装配线的匹配,实现了生产线实时数据的可视化展示与生产故障状态的检测展示,如图13所示。

(a)正常

(b)故障图13 系统工作状态Fig.13 System working status

图13分别为设备正常运转和出现故障时的状态,当故障出现时相应设备停止工作,并做出合适的故障示警动作(单元状态灯由绿灯变红灯提醒,数据展示板提示出现故障),点击定位导航选择查看单元可定位到故障单元进行故障查看,便利了整个生产装配线的实时监控过程。

4 结论

采用时间Petri网方法对断路器装配流水线的逻辑结构进行建模,以Unity 3D为虚拟平台,直观展示了系统的生产布局与调度控制性能。通过生产线的虚拟仿真和实体数据的交换,可整体掌握各个生产模块的工作状态与效率。仿真结果表明:①基于时间的嵌套式Petri模型组可以对复杂多层次的断路器自动装配生产线运动逻辑和工艺节拍进行有效描述;②设计开发人员能够利用本系统提高装配生产线的设计、制造能力,提高产品开发的效率与可靠性;③制造商能够基于本系统的设计与仿真,对厂房结构、生产工艺条件和生产线布局进行设计和评估,节省成本。

猜你喜欢
流水线断路器生产线
方便小米粥亿级生产线投入运行
流水线
基于PLC的饮料灌装流水线设计
六氟化硫断路器运行与异常处理
断路器控制回路异常分析及处理
流水线
一例断路器内部发热的诊断分析
SF6断路器拒动的原因分析及处理
半桥壳冷冲压生产线的设备组成及其特点
Hazelett生产线熔炼工艺探讨