实验1 Flexsim 仿真软件认识

实验1  Flexsim 仿真软件认识

一、 实验目的  

熟悉Flexsim的安装与启动;熟悉Flexsim用户界面;熟悉Flexsim建模元素;熟悉Flexsim建模与仿真过程.  

二、 实验设备与仪器  

1.  微机;  2. Flexsim仿真软件  

三、 实验步骤  

1.  了解flexsim的硬件和软件必备环境;  

2.  启动flexsim;  

3.  熟悉标题栏,菜单栏,工具栏,元素选择窗口,状态栏,控制栏,以及系统布局区;  

4.  学习建模与仿真过程.  

四、 实验报告要求  

1.   了解flexsim系统界面的各个构成;以及系统布局区的组成;以及每一部分的功能;  

                                         

   

   

   

   

   

   

   

   

   

   

   

   

Flexsim软件界面  

   

2.仿真过程应用举例.(详见实验二)  

   

实验配货系统仿真与分析

一、 实验模型简介  

一个小型的发货商有10种产品运送给五个客户,每个客户有着不同的订单,这个发货商的10种产品都有很大的供货量,所以,当有订单来时,即可发货。产品是放在托盘上输送出去的。。  

1.       系统数据  

订单到达:平均每小时产生10个订单,到达间隔时间服从指数分布。  

产品到达:产品拣选时间服从指数分布,根据订单确定每种产品的需求数量。  

产品包装:固定时间10秒。  

2.       概念模型  

                   

        

            

    

        

         

二、 实验目的  

1、            掌握flexsim仿真软件的基本功能;  

2、            熟悉配货系统的作业及物流特点;  

3、            研究配货系统的配货流程及影响配货时间的因素。  

三、实验设备  

1、计算机      2、flexsim仿真软件  

四、实验步骤  

l  第一步:建立模型  

双击桌面上的Flexsim图标打开软件,你可以看到Flexsim菜单、工具条、实体库,和正投影模型视窗,如图1-1所示。  

1            模型实体设计  

表1-1实体与系统元素的对应关系  

2            生成实体  

从实体库中拖出(按住鼠标左键不放,拖至正投影模型视窗即可)11个Source(每个Source代表一类货物)实体,Combiner实体、Conveyor实体、Sink实体各1个,把各实体按照概念模型中的位置摆好,如图1-2所示。  

      

图1-2 生成所需实体对象  

3            连接端口  

连接端口时,根据流程图,我们只需将Source与Combiner,Combiner与Conveyor,Conveyor与Sink之间使用A连接(按下A键不放,鼠标左键点击输入实体不放,拖至输出实体松开鼠标左键和A键即可。若要取消A连接,则按下Q键不放,鼠标左键点击输入实体不放,拖至输出实体松开鼠标左键和Q键即可)进行连接即可,连接时注意输入输出顺序。如图1-3所示:  

      

图1-3 实体的“A”端口连接  

4            设置连接线  

端口连接完成后,我们为了使视图更加好看,同时也为了利于以后的建模,因此我们考虑将这些连接线设为不可见。  

单击Show Connections选项前的方框,除去其前的√,可以看到模型视窗中的连接线都不见了。  

为了使界面更加清晰简洁,我们再去掉Show Names选项前面的√,使得模型中各实体的名字属性等标签不显示出来。如图1-4所示:  

      

图1-4 隐藏实体的名称属性等标签  

5            定义Source  

在模型中,共有11个Source实体,第一个Source定义为产生托盘,其余10个Source产生待包装的十种货物。  

托盘的到达时间固定的,每3600个单位时间产生10个托盘。我们双击对应于托盘阿谁Source1实体,打开其参数视窗。改变其Arrival Style的默认选项“Inter-Arrival Time”,选择“Arrival Schedule”,并将“FlowItem Class”选项的下拉列表中选择“Pallet”,将“Number of Arrivals”数值改为5,点击“Refresh Arrival”按钮刷新列表,修改列表中的数值,如图1-5所示:       

   

6            定义全局表  

下面我们定义一个全局表。首先,点击工具栏中的“ToolBox”按钮,打开“Global Modeling Tools”视图,在“Global Tables”一项中点击“Add”按钮,系统为我们添加了一个名为“GlobalTable1”的全局表,如图1-6所示:  

      

图1-6 加入一个名为GlobalTable1的全局表  

“GlobalTable1”就是我们要编辑的全局表。我们单击“Edit”按钮,打开“Global Table Parameters Window”视图,如图1-7所示:  

   

      

图1-7编辑全局表  

编辑的过程中,我们可以随时点击Apply按钮来保存我们的编辑结果,防止发生意外而进行重复劳动。编辑完成后,点击OK按钮保存并关闭视图  

7            定义Combiner  

下面我们来设置Combiner实体。  

我们双击Combiner实体,打开它的参数视图,然后我们点击名为“ProsserorTriggers” 标签, 我们在“进入触发”选项的下拉列表框中选择“更新组成列表:根据名为’tablename’的全局表设定合成器的组成列表……”一项。  

   

l  第二步 模型运行  

1            设置Experimenter  

我们模型的运行共分4个阶段,每个阶段3600个单位时间,连续进行,共记14400单位时间。模型的运行总时间长度在Experimenter中设置。单击界面右下方的     按钮,打开Experimenter窗口,将Simulation End Time改为14400。这里,我们只运行一次仿真,因此将仿真次数改为1。  

2            编译、重置、运行模型  

单击     按钮,对模型进行编译。编译完成后,单击     按钮,重置模型。最后单击     按钮,开始仿真。  

我们看到在不同的阶段,托盘包装的货物个数是不同的,Combiner根据全局表来设定托盘包装的货物的个数,从不同的Source中获取不同数量的货物。如图1-9所示:  

      

图1-9 模型的运行  

当仿真运行到14400单位时间的时候,自动停止。  

l  第三步 数据运行  

数据收集分析。在操作区中Combiner实体上点击鼠标左键使其被选中,被选中的实体显示出红色边框。  

点击软件菜单栏中的Stats,在弹出的下拉菜单中选中Stats Collecting,在右侧弹出的选项中点击选择Selected Objects On。如图1-10所示:这个操作打开了所选中实体的数据收集开关。  

右键点击Combiner,选择Properties打开属性页。点击选择Statistics项目。  

查看该包装机相关数据,与订单信息进行比较。  

实验配送中心仿真实验  

一、  实验简介  

配送中心时从事货物配送并组织对用户的送货,以实现销售和供应服务的现代流通设施。它不同于传统的仓储设施, 在现代商业社会中,配送中心已经成为连锁企业的商流中心、物流中心、信息流中心,是连锁经营得以正常运转的关键设施。  

本实验是一个典型的配送中心建模过程,该配送中心从三个供应商进货,向三个生产商发货。  

1.     系统数据  

供货商(三个):当三个供应商各自供应的产品在配送中心的库存小于10件时开始生产,库存大于20件时停止生产。供应商一和供应商二分别以4小时一件的效率向配送中心送产品,供应商提供一件产品的时间服从3-6小时均匀分布。  

配送中心发货:当三个生产商各自的库存大于10件时停止发货。当生产商一的库存量小于2时,向该生产商发货;当生产商二的库存量小于3时,向该生产商发货;当生产商三的库存量小于4时,向该生产商发货。  

配送中心成本和收入:进货成本3元/件;供货价格5元/件;每件产品在配送中心存货100小时费用1元。  

生产商(三个):三个生产商均连续生产。生产商一每生产一件产品需要6小时;生产商二每生产一件产品的时间服从3-9小时的均匀分布;生产商二每生产一件产品的时间服从2-8小时的均匀分布。  

2.     概念模型  

                         

    

    

    

    

    

                

    

    

                               文本框: 配货中心
  

二、  实验目的  

4、            掌握flexsim仿真软件的基本功能;  

5、            熟悉配送中心的作业及物流特点;  

6、            研究该配送中心的即时库存成本和利润,并试图加以改善。  

三、  主要仪器设备  

1、计算机      2、flexsim仿真软件  

四、  实验步骤  

l  第一步:建立模型  

3、            模型实体设计  

4、            在模型中加入实体  

从模型中拖入3个Source、6个Processor、3个Rack、3个Queue和1个Sink到操作区中,如图1-1所示:  

      

图1-1 模型实体布局图  

5、            连接端口  

根据配送的流程,对模型做如下的连接:每个Source分别连到各自的Processor,再连到各自的Rack,每个Rack都要与后面的每一个Queue进行连接(配送中心送出产品对三家生产商是均等的),每一个Queue再连接到各自的Processor,最后三个Processor都连到Sink。如图1-2所示:  

      

图1-2 连接后的模型实体布局图  

6、            Source参数设置  

双击一个Source打开参数设置页。在Source项目下的Inter-Arrivaltime下拉菜单中选择Constant Value。点击Inter-Arrivaltime下拉菜单后的按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)“Return constant time of 1 .”   

然后对其它两个Source做同样的设置。  

为了区分来自不同供应商的货源,在三个Source的“发生触发器”选项卡中,选择“离开触发”下的“设定颜色(rgb):采用红、绿、蓝……”选项,并点击参数编辑按钮     ,设置三个参数分别为:  

r=255,g=0,b=0  

r=0,g=255,b=0  

r=0,g=0,b=255  

7、            Processor(供货商)参数设置  

双击最上面的Processor打开参数设置页,在ProcesTimes项目下Process Time的下拉菜单中选择默认设置。点击Process Time下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)“Return constant time of 4 .”   

在这个模型中,我们将1个单位时间定义为1小时,那么这条指令的意思就是该供应商在收到订单后的成产效率为每4小时1个产品。  

根据预先设计的系统数据,供货商一和供货商二的生产效率是一样的,都为每4小时1个产品,所以对中间的Processor也进行同样的操作即可完成设置。  

对于最下面的Processor,在Process Time的下拉菜单中选择Uniform Distribution(均匀分布)。  

点击Process Time下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)“A Uniform distribution with a minimum value of  2  and a maximum value of  6  using random number stream  1  .”   

8、            Rack参数设置  

双击一个Rack打开参数设置页。在RackTriggers项目下的OnEntry下拉菜单中选择Close and Open Ports。  

点击OnEntry下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“If content(current)==20 then closeinput ports of the inobject(current,1) object.” 如图1-10所示:  

      

图1-3Close and Open Ports的参数编辑窗口  

点击OnEntry下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“If content(current)==10 then openinput ports of the inobject(current,1) object.” 如图1-11所示:  

      

图1-4 Close and Open Ports的参数编辑窗口  

我们对另外两个货架进行同样的设置。  

9、            Queue参数设置  

三个Queue在模型中代表三个生产商的仓库,它们根据自己的需求向配货中心订货。为了描述的需要,我们按照模型中由上至下的顺序依次将三个Queue和Processor看作生产商一、生产商二、生产商三。  

双击最上面的Queue打开参数设置页。在Queue项目下,将Maximum Content改为15。在Flow项目下的Pull选项前面点击打勾。  

点击Pull From Port下拉菜单后面的代码编辑按钮     ,对代码进行如下的编辑(粗体为更改部分):“return duniform(1,3);”   

在QueueTriggers项目向的OnEntry下拉菜单中选择Close and Open Ports。  

点击OnEntry下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“If content(current)>=10 then closeinput ports of the current object.” 如图1-16所示:  

      

图1-5 Close and Open Ports的参数编辑窗口  

点击OnExit下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“If content(current)<=2 then openinput ports of the current object.” 如图1-18所示:  

      

图1-6 Close and Open Ports的参数编辑窗口  

对于剩下的两个Queue,我们所做的相同设置是:改变Maximum Content为15,点选它们Flow项目下的Pull选项并进行相关的代码编辑,对QueueTriggers项目下的OnEntry触发进行同样的设置。  

不同的设置是对QueueTriggers项目下的OnExit触发进行的修改和编辑。  

对于中间的Queue,我们在OnExit下拉菜单中仍然选择Close and Open Ports。然后点击OnExit下拉菜单后的参数编辑按钮     将指令改为:(粗体为改动部分)  

“If content(current)<=3 then openinput ports of the current object.” 如图1-19所示:  

      

图1-7 Close and Open Ports的参数编辑窗口  

对于最下边的Queue,我们在OnExit下拉菜单中仍然选择Close and Open Ports。然后点击OnExit下拉菜单后的参数编辑按钮     将指令改为:(粗体为改动部分)  

 “If content(current)<=4 then openinput ports of the current object.” 如图1-8所示:  

      

图1-8 Close and Open Ports的参数编辑窗口  

可以发现,唯一改变的只是对需求产品的最低库存条件,其它并没有变化。  

10、        Processor(生产商)参数设置  

双击最上面的Processor打开参数设置页,在ProcesTimes项目下Process Time的下拉菜单中选择默认设置。  

点击Process Time下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)“Return constant time of 6 .”   

对于中间的Processor,即生产商二,我们在Process Time的下拉菜单中选择Uniform Distribution(均匀分布)。  

点击Process Time下拉菜单后的参数编辑按钮     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“A Uniform distribution with a minimum value of 3 and a maximum value of 9 using random number stream  1  .”   

对于最下面的的Processor,即生产商三,我们在Process Time的下拉菜单中选择Uniform Distribution(均匀分布)。  

点击后面的     ,在弹出的编辑框中进行如下编辑:(粗体为改动部分)  

“A Uniform distribution with a minimum value of 2 and a maximum value of 8 using random number stream  1  .”   

   

l  第二步 模型运行  

1、            编译  

单击主视窗底部的        按钮。编译过程完成后,就可以进行模型的重置和运行了。  

2、            重置模型  

单击主视窗左下角     按钮。  

3、   运行模型  

单击主视窗底部       按钮。   

模型运行时的截图如图1-9所示:  

      

图1-9 模型运行截图  

要停止运行,可随时按      按钮。  

   

l  第三步 数据分析  

点击软件窗口右下角的     按钮(实验控制器)。在打开的窗口中做如下的设置:  

将Simulation End Time值设为8760.00(在该实验中,1个单位时间代表1个小时,我们要对模型运行一年的数据进行收集,即让模型运行24(小时)×365(天)=8760小时);  

将Number of Scenarios值设为1;将Replications per Scenario值设为1;   

数据收集分析。在操作区中,按住键盘的Ctrl键,同时点击鼠标左键分别点击三个Rack,则三个Rack被选中,被选中的实体显示出红色边框。  

点击软件菜单栏中的Stats,在弹出的下拉菜单中选中Stats Collecting,在右侧弹出的选项中点击选择Selected Objects On。  

右键点击一个Rack选择Properties打开属性页。点击选择Statistics项目。  

      

图1-10 Rack属性页中的Statistics  

在所显示的数据中,对我们的分析有帮助的数据是(每次运行模型所收集的数据会不相同,这里仅对这一次模型运行的数据结果进行分析):  

Content下的Average(该Rack每小时的平均库存),即32.78;  

Throughput下的Input(该Rack在运行时间内的总输入)即1640;  

Throughput下的Output(该Rack在运行时间内的总输出)即1637;

相关推荐