生产线流程建模与仿真
流水线生产系统WITNESS建模与仿真
(一)
1. 模型描述
某企业在一条流水线上加工一种产品,该产品所需的零部件(Widget)经过称重(Weigh)、冲洗(Wash)、加工(Produce)和检测(Inspect)四个工序的操作后,形成产品离开系统,生产线布置如下图所示。
生产线上每道工序只有一台设备,零部件在每台设备上加工完毕后,由同其连接的输送链运输至下一设备,最后经过检测后被送出系统。已知该流水线中各个工序的加工时间分别为:称重(weigh)5分钟、冲洗(wash)4分钟、加工(produce)3分钟、检测(inspect)3分钟。每条输送链上有20个零件位,输送链上零件移动节拍为0.5min。零部件的供应是源源不断的,不存在缺货现象。使用WITNESS建立该系统的仿真模型界面如下图所示。.
.
仿真模型界面流水线生产系统WITNESS
系统分析2.
元素说明2.1
四台设备和三条输该流水线系统的组成元素主要为被加工的零部件、送线,因此该系统仿真模型的元素如下表所示:被加工的零部件由表示输送链,C3、C2、4widget表示,道工序分别由四台机器表示,C1 output统计和可视化显示。而最后的实际产量由变量
1 模型元素介绍表
2
.
.
系统运行时间2.2
。小时=8*60=480min 仿真运行终止时间为:一天8
模型建立3.
建立仿真模型的过程一般分为如下三步:使用WINTESS Step1:定义元素Step2:元素细节设计Step3:仿真实验和数据分析下面描述如何通过这三步建立流水线生产系统的仿真模型。
3.1 定义元素中可以通过四种方式定义元素:WITNESS
)定义元素:在系统布局区点击layout window(1)通过系统布局区(菜单项,将弹出新建元素对话框,Define鼠标右键,在弹出菜单中选择然后进行元素定义。:选择元素选择窗口中)定义元素elements (2)通过元素选择窗口(菜单项,将项,单击鼠标右键,在弹出菜单中选择Define的simulation 弹出新建元素对话框,然后进行元素定义。
,新建元素图标3()使用工具栏进行元素的定义:点击工具栏中的将弹出新建元素对话框,然后进行元素定义。元素模板定义元素:在该))通过用户元素窗口((4designer elements然后在系统布局区中单击窗口中,鼠标选中所需建立的元素类型图标,3
.
.
鼠标左键进行元素定义。便于初该方法直观简单,选择第四种方法来对元素进行定义,在此,学者掌握。下面演示该模型的元素
定义过程。->WITNESS 2008->Witness 2008 Manufacture 所有程序开始->通过:(1)软件,软件界面如下图所示。,打开WITNESSPerformance Edition
Designer 上图WITNESS界面下方的(2)建立一个零部件元素。在图标,使得整个PartElements窗口的Basic页中,鼠标单击选中元素图标外围被一个黑色方框圈中如下图所示,然后移动鼠标(注:不Part窗口适当位置单要按住鼠标的左、右键拖动鼠标),在Layout Window Part001击鼠标左键,将建立一个名称为的元素。4
.
.
零部件元素过程相似,依次Part001 元素。同建立(3)建立四个机器元素图标,然后在MachineBasic页中的选择Designer Elements窗口的窗口适当位置单击鼠标左键,分别建立名称为Layout Window Machine004四个机器元素。Machine002、Machine003和Machine001、
零部件元素过程相似,依Part001 4)建立三个输送链元素。同建立(然后元素,Transport页中的Conveyor次选择Designer Elements窗口的窗口适当位置单击鼠标左键,分别建立名称为Layout Window在Conveyor003三个输送链元素。、Conveyor001Conveyor002、
Variables窗口的Designer Elements定义一个整数变量5)元素。选择(窗口适当位置单击鼠标左元素,然后在Layout WindowVInteger 页中的VInteger001键,建立一个名称为的变量。5
.
.
通该模型所需要的所有元素都已经建立了,经过如上元素定义步骤,,将模型另存为:软件的菜单File->Save As...过WITNESS 软件界面如下图所示。,至此,StreamLine.modWITNESS
元素细节设计3.2
因为这些元节完成系统元素定义的模型上尚不能做仿真实验,3.1
在例如机器设备每素还没有设置符合流水线系统运行行为的数据和
特征,6
.
.
输送次的作业时间、机器设备完成某件产品作业后将产品送到何处去、建模与仿真过程中,对模型元素的运WITNESS线的长度和速度等。在元素细节设计是建立行行为和特征进行设计称之为对元素的细节
设计。如果元素的作业时间设计不准确,或仿真模型中最为重要的一个阶段,输出规则设计不准确,都将使得仿真模型的运行行为同/者
元素的输入导致仿真结果不能正确的反映实际系统的运行状态和实
际系统不匹配,存在的问题。打开细节设计对话进行元素细节设
计需要使用元素细节设计对话框,
框的途径有如下三种:)在布局区中对应元素的可视化图标上双击鼠标左键;(1
)在布局区中对应元素的可视化图标上单击鼠标右键,在弹出菜(2 Detail...;单中选择菜单项Simulation中对应元素名称上双击鼠标左键;(3)在元素列表窗口的
中对应元素名称上单击鼠标右键,Simulation(4)在元素列表窗
口的;在弹出菜单中选择菜单项Detail...)在布局区选中对应建模元素的可视化图标,然后点击标准工具5
(
栏中的图标;
零部件元素细节设计3.2.1
在弹出对话框中进行相关设计。Part001双击元素图标,在布局区
只要第一道工序空闲,因为在流水线生产系统中,零部件的数量足够多,因此设计零部件元素类型需要提取零部件进行加工就可以获得零部件,Part001 Name。Passive被动型为缺省值:()然后在栏中将零
部件名称由7
.
.
点击,设计完毕后,零部件细节设计对话框的界面如下图。Widget
改为确定按钮,完成零部件元素细节设计。
3.2.2 变量细节设计,用于记录和实时显示流水线VInteger001本模型中建立了一个变量
对于该变量的细节设计只需要修改其名称即可,方产出的零件的数量。
在弹出的细节设计对话框中法为在布局区中双击该变量的可视化图标,output将名称修改为即可。
3.2.3 机器细节设计在弹出的机器细节设计对话框中修改如下项目:Machine001双击元素,Machine001“Weigh”Name栏中输入,修改的名称;?8
.
.
,表示零部件在该台机器上所需的加工5在Cycle Time栏中输入?个仿真时间,在模型中,取每个仿真时间单位表示实际时间为5 系统的1分钟;点击按钮确定,完成称重机器修改之后的细节设计对话框如下图所示,的细节设计。
栏中输入元素图标,在细节设计对话框的Name双击Machine002 ,点击确认键确定。,在“Wash”Cycle Time栏中输入4栏中输入元素图标,在细节设计对话框的双击Machine003Name 栏中输入3,点击
确认键确定。,在“Produce”Cycle Time栏中输入Name元素图标,在细节设计对话框的双击Machine004本模型还需要点击确认键确定。3Cycle Time,“Inspect”在栏中输入,中,实时统计该流水线加工完成的零件数量,并将其记录在变量output9
.
.
,1output的数量要增加这需要每当Inspect机器加工完成一个零件,变量)打开其细2Inspect的图标;(实现该功能的步骤为:(1)双击机器)在;(3节设计对话框,在其对话框中点击按钮:Actions on Finish...按钮,完成语句的)点击OK;(4output=output+1弹出对话框中写入:)点击确定按钮,完成机器细节设计。设计过程如下图所示。5设定;
(
3.2.3 输送链明细设计图标,出现下图所示的输送链细节设计对话
框。在双击Conveyor001,设定输送链将零件向0.5Index Time栏中输入C1,在栏中输入Name栏中输入Length in Parts前移动一个放置位所需要的时间为0.5Min。在如果没个。)的放置位为10,设定移位式输送链(Indexed Queuing10分钟(放置5有遇到阻塞等异常情况,零件通过整个输送链将需要耗费)的时间。=10*0.5=5*位数量移位节拍
10
.
.
弹出的细节设计对话框、Conveyor003的图标。在双击Conveyor002,修改输送链的名称,其他项目设计与C3栏中分别输入C2、的Name 输送链C1的设计相同。输入/输出规则设计3.2.4
输出规则设计是元素细节设计的一部分,主要是设定零部件在输入/ 。在本模系统各个地点(机器、输送链、缓冲区等)之间的移动规则需要设计的输入输出规则主要有加工设备怎样获得被加工的零部型
中,变量怎样累积加工output件、加工完毕如何将零部件送出该设备,以及完毕零件的数量。/输出规则设计)(l 机器输入数量足够多,Weigh称重机器的输入规则设计:模型中假设Widget
像这从来没有出现过缺货,就表示称重机器空闲时都可以获取到零件,的细节设计中,保种情况,一般总是假设零件为被动式的(在Widget11
.
.
由主动的机器在空闲时区提,留了其进入模型的类型为缺省的Passive)取它,即本案例中称重机器的输入规则为提取被动式的零部件。操作步Visual 工具栏中的鼠标单击Element2选中Weigh机器;()骤为:(1)
规则文本框对话框,出现Input Rule for WeighInput Rule设计图标,“PULL Widget out of 3)在规则文本框中输入;(的缺省值为Pull
在空闲时,将从本系统模型的外,该规则定义了机器WeighWORLD”,完键确认4)单击OK部(WORLD)拉进一个Widget进行加工;(该设计过程在界面上的操作步骤和效果设备的输入规则设计。成Weigh 参看下图。
的输出规则设计:称重机器将零件加工完毕后要送Weigh 称重机器将零件送给后续的清洗工序加工。上,然后由C1到其后面的输送链C1)选中1C1称重工序输出规则为输送到输送链,具体设计步骤为:
(
Output
,将弹出Visual Output RuleWeigh机器;(2)鼠标单击图标的设计对话框,此时该对话框中的规则框内仅有缺省输Rule for Weigh的可视化图标,则在输出)鼠标单击输送链;(出规则:PUSH 3C112
.
.
即称重机器加工完零件后,的输出规则,设计对话框中形成PUSH
C1(1)OK输出规则对话框中的)点击将零件推到输送链C1(1)的末端;(4该设计过程在界面上的操作步骤按钮,完成称重设备的输出规则设计。和效果参看下图。
机器的输入规则为从输送输出规则设计:WashWash输入/ 清洗机器C2,输出规则为加工完毕后送入输送链C1的前端获取零件Widget 链)2Wash机器;()选中的尾端。其输入规则的屏幕操作过程为:(1
Input
出现Visual Input Rule工具栏中的设计图标,鼠标单击Element则在输鼠标单击输送链C1的可视化图标,(Rule for Wash对话框;3)的输入规则,即清洗机器空闲时,总入设计对话框中形成PULL C1(1)最前端的零件放置位,如果该位置有零件,则取过C1(1)是搜索输送链来进行加工;如果该位置没有零件,则该机器将保持等待,直至该位置按钮,完成清洗机器输入规则的设定。该设计OK)点击有零件;(4 过程在界面上的操作步骤和效果参看下图。13
.
.
)鼠标单2)选中Wash机器;(清洗机器输出规则设计过程为:(1
的设计对话Output Rule for WashVisual Output Rule图标,将弹出击)鼠3;(框,此时该对话框中的规则框内仅有缺省输出规则:PUSH PUSH 的可视化图标,则在输出设计对话框中形成标单击输送链
C2C2(1)的输出规则,即清洗机器加工完零件后,将零件推到输送链C2(1)按钮,完成清洗设备的输输出规则对话框中的OK的末端;(4)点击
该设计过程在界面上的操作步骤和效果参看称重机器输出出规则设计。规则设计的图示。
机器的输入规则为从Produce输入Produce/输出规则设计:加工机器,输出规则为加工完毕后送入输送链Widget输送链C2的前端获取零件机器;Produce1)选中C3的尾端。其输入规则的屏幕操作过程为:
(
出Visual Input Rule设计图标,工具栏中的(2)鼠标单击Element 的可视化图)鼠标单击输送链C2对话框;(现Input Rule for Produce3的输入规则,即加工机器PULL C2(1)标,则在输入设计对话框中形成最前端的零件放置位,如果该位置有零空闲时,总是搜索输送链
C2(1)件,则取过来进行加工;如果该位置没有零件,则该机器将保持等待,按钮,完成加工机器输入规则的设)点击直至该位置有零件;
(4OK14
.
.
定。该设计过程在界面上的操作步骤和效果参看清洗机器输入规则设计的图示。
加工机器输出规则设计过程为:(1)选中Produce机器;(2)鼠标
单击Visual Output Rule图标,将弹出Output Rule for Produce的设计对话框,此时该对话框中的规则框内仅有缺省输出规则:PUSH ;(3)鼠标单击输送链C3的可视化图标,则在输出设计对话框中形成PUSH
C3(1)的输出规则,即加工机器加工完零件后,将零件推到输送链C3(1)的末端;(4)点击输出规则对话框中的OK按钮,完成Produce设备的输出规则设计。该设计过程在界面上的操作步骤和效果参看称重机器输出规则设计的图示。
检测机器Inspect输入/输出规则设计:Inspect机器的输入规则为从输送链C3的前端获取零件Widget,输出规则为加工完毕后送出系统。其输入规则的屏幕操作过程为:(1)选中Inspect机器;(2)鼠标单击
Element工具栏中的Visual Input Rule设计图标,出现Input Rule for Inspect对话框;(3)鼠标单击输送链C3的可视化图标,则在输入设
计对话框中形成PULL C3(1)的输入规则,即检测机器空闲时,总是搜索输送链C3(1)最前端的零件放置位,如果该位置有零件,则取过来进行加工;如果该位置没有零件,则该机器将保持等待,直至该位置有零件;(4)点击OK按钮,完成检测机器输入规则的设定。该设计过程在界面上的操作步骤和效果参看清洗机器输入规则设计的图示。
检测机器输出规则设计过程为:(1)选中Inspect机器;(2)鼠标
,将弹出Output Rule for Inspect图标单击Visual Output Rule的设计15
.
.
)(3对话框,此时该对话框中的规则框内仅有缺省输出规则:PUSH ;按钮,则在输出设计对话框中形成鼠标单击输出规则对话框上的Ship的输出规则,即检测机器检测完零件后,将零件发运出去,PUSH SHIPInspect完成点击输出规则对话框中的OK按钮,即零件退出系统;(4)设备的输出规则设计。该设计过程在界面上的操作步骤和效果参看下图。
3.3.5 机器颜色标识设计软WITNESS 在模型运行过程中,模型元素会经历多种不同的状态,件为多种元素设计了标准化的颜色标识键,例如黄色通常表示空闲、等待,绿色表示正常工作,红色表示故障、维护维修等。在本模型中,每该图标的颜色将在仿个机器设备可视化图标的右下角有个正方形图标,为了便于理解不同真运行过程中随着机器状态的变化而呈现不同颜色。颜色表示的机器状态,这里
先设置机器设备的颜色标识。,View->Keys->Machine1设计步骤为:()通过WITNESS软件菜单
按钮,当光标在对话框中点击2打开机器标志键设计对话框;()Draw16 .
.
然后点击鼠变成十字尖头的形状,将光标移动到布局区中合适的位置,标左键,完成标志键的设计。设计过程和设计后的效果如下图。
机器状态显示图标与机器状态之间从上图的机器标识键中可以
看出,的关系如下:---机器处于不当班时间;白色等待零件的状态,即机器处于空闲状态;---黄色机器处于忙的状态,即正常作业状态;绿色---但是因为其---机器处于阻塞状态,即机器完成了当前的操作,粉红色则该机器上面的零件就后续输出对象在这个时间不能接受零件的输入,不能送到其后续工序,机器处于阻塞状态,也就不能进行下一个作业的加工;兰色---机器处于换模状态,或者等待换模操作工的状态;---红色机器处于故障维修状态,或者等待故障维修工的状态;17
.
.
即机器正常作业过程需要员工辅机器处于等待操作员工状态,蓝色---助作业,但是该类员工人数不足,不能准时到达该机器,则该机器的作业处于暂停状态。
4. 运行模型仿真运行工具栏 4.1
下图所示,首先介绍运行工具栏以及工具栏中各个按钮的作用。如
进行仿真的复位操作,点击该按钮,系统仿真时钟和逻reset:按钮辑型元素(变量、属性、函数)的值将置零;
:停止仿真运行的按钮;
窗口中显interact box按钮控制模型以步进的方式运行,同时在:step 示仿真时刻所发生的事件,便于理解和调试模型;
按钮控制模型的连续运行,如果没有设定运行时间,模型将一:run 模型连续运行到如果设定了运行时间,直到按直运行下去,stop按钮,终止时刻;
包括一个按钮和一个输入框,用来设定仿真运stop run at:输入框输行时间,按钮决定仿真是否受到输入框中的输入时间点控制,入时间点;
用来设定仿真连包括一个按钮和一个滑动条,walk on/off:续运行时,仿真运行的速度。18
.
.
结果分析4.2.
,按钮中按下stop run at 本例中,在运行工具栏run toolbar
开始运行run按钮在输入框中输入模型运行终止时间480,然后点击时刻点自动停止运行。模型,直至仿真模型运行至480设计了各种类型建模元素的标准统计项目,仿真运WITNESS软件