物流系统仿真实验报告

实验报告

课程名称: 物流系统仿真 实验类型: 上机

实验项目名称: Flexsim仿真软件操作

学生姓名: xxx 专业:物流工程 学号: XXXXXX

同组学生姓名: 指导老师: XXXXXX 

实验地点: XXXXXX 实验日期: 2010-10-29

一、 实验目的和要求

(一)实验目的

1、掌握仿真软件Flexsim操作及应用。

2、结合实际情况设计模型解决问题。

(二)实验要求

能够根据实际要求建立仿真模型,通过对仿真模型的运行找到实际系统的瓶颈,并通过修改模型对实际系统进行分析,最终对系统提出优化方案

二、实验内容和原理

模型一

在第一个模型中将研究3种产品离开一个生产线进行检验的过程。有3种不同产品类型的临时实体将按照正态分布间隔到达。临时实体的类型1,2,3之间均匀分布。当临时实体到达时,它们将进入暂存区并等待检验。有三个检验台用来检验。检验后的临时实体放到输送机上。在输送机终端再被送到吸收器中,从而推出模型。

数据:

发生器到达速率:正态分布normal(20,2)s;

暂存区最大容量:25个临时实体;

检验时间:指数分布exponential(0,30)s;

输送机速度:1m/s;

模型二

模型二中将采用一组操作员来为模型中临时实体的检验流程进行预置操作。检验工作需要两个操作员之一进行预置。预置完成后就可以进行检验了,无需操作员在场操作。操作员还必须在预置开始前将临时实体搬运到检验地点。检验完成后,临时实体转移到输送机上,无需操作员协助。

数据:

检测器的预置时间:为常数值,10s;

产品搬运:操作员从暂存区到检测器,叉车从输送机到末端的暂存区到吸收器。

输送机暂存区:容量为10。

基础教程二增补

本教程指导建模人员如何添加一些额外的东西在模型运行中显示数据和信息;学习如何添加3D图标和图形,如何显示在基础教程2中完成的模型中的3D文本。学习内容如下:

(1) 如何添加一个三维曲线图来显示暂存区的当前数量;

(2) 如何添加一个三维柱状图来显示暂存区的等待时间;

(3) 如何添加一个三维饼状图来显示每个操作员的状态分布;

(4) 如何添加一个三维可视化文本来显示输送机暂存区的平均等待时间;

(5) 如何安排曲线图、图表、文本的位置以取得最好的视觉效果。

模型三

在模型三中将用三个货架代替吸收器,用来存储装运前的临时实体,需要改变输送机1和3的物理布局,使他们的末端弯曲以接近暂存区。采用一个全局表作为参考,所有实体类型1的临时实体都送到货架2,所有试题类型2的临时实体都送到货架3,所有实体类型3的临时实体都送到货架1。采用网络节点实体,可以为一个叉车建立一个路径网络,当它从输送机暂存区往货架运输临时实体时用此路径网络。还要用实验控制器设定多次运行仿真来显示统计差异,并计算关键绩效指标的置信区间。

考试

一自动化立体仓库存放两种货物,货物到达的时间间隔服从exponential(0,60,1),对于入库的货物需要对产品进行检测,检测器的预置时刻需要配置操作员,预置时间为20s,三种产品的检测时间是介于160~180s之间的均匀分布,检测合格的货物分类入库存放,检测不合格的货物退回供应商,A产品的合格率为95%,B产品的合格率为96%,不合格货物每10个进行打包后退回。仿真系统一天8小时的运行状况。

2、原理

Flexsim是一套系统仿真模型设计、制作与分析工具软件。它集计算机三维图像处理技术、仿真技术、人工只能技术、数据库处理技术为一体,专门面向制造、物流等领域。运用该系统可在计算机内建立研究对象的系统三维模型,然后对模型进行各种系统分析和工程验证,最终获得优化设计或改造方案。

Flexsim是新一代离散事件系统仿真的有效工具。面向对象的建模方式使得建模过程更为快捷,只需通过图形的拖动和必要的附加程序就可以快速地建立起系统的模型。软件提供丰富分物理单元,如处理器、操作员、堆垛机、货架等,大大方便了用户建模。所建立的模型可以用三维动画方式表现出来。

Flexsim研究的对象多是复杂的多目标系统。Flexsim将众多目标的不同参数组合的运行结果输出后供分析者比较,选取最优的参数组合。由于Flexsim提供了逼真的动画显示、完整的运作业绩报告,并通过模型运行给分析者提供了各种方案相关的大量反馈信息,因此分析者可以在较短的的时间内对各种方案的优劣进行比较,对各种预选方案作出评估,从而选出最有的方案进行实际实施。

二、 操作方法与实验步骤

模型一

步骤1:从库里拖出一个发生器放到正投影视图中。

步骤2:把其余的实体拖到正投影视图视窗中。

步骤3:连接端口

下一步是根据临时实体的路径连接端口。连接过程是:按住“A” 键,然后用鼠标左键点击发生器并拖曳到暂存区,再释放鼠标键。拖曳时你将看到一条黄线,释放时变为黑线。

连接每个处理器到暂存区,连接每个处理器到输送机,连接每个输送机到吸收器,这样就完成了连接过程。

步骤4:指定到达速率

双击发生器键打开其参数视窗 

我们要设定到达时间间隔为normal(10,2)。现在,按下到达时间间隔下拉菜单中的箭头,选择“正态分布”选项。该选项将出现在视窗里。如果要改变分布的参数,则选择模板 按钮,之后可以改变模板中任何灰褐色的值。

选择模板按钮

可以使用模板改变数值来调整分布,甚至可以插入一个表达式。在本模型中改变10为20。按确定键返回到参数视窗。

步骤5:设定临时实体类型和颜色

离散均匀分布与均匀分布相似,但返回的不是给定的参数之间的任意实数值,而是离散整数值。点击本视窗和发生器参数视窗的确定键。

首先,需要设定暂存区最多可容纳25个临时实体的容量。其次,设定临时实体流选项,将类型 1的实体发送到处理器1,类型2的实体发送到处理器2,依此类推。

步骤6:设定暂存区容量

双击暂存区打开暂存区参数视窗改变最大的容量为25。

步骤7:为暂存区指定临时实体流选项

在参数视窗选择临时实体流分页来为暂存区指定流程

步骤8:为处理器指定操作时间

将形状参数(scale value)改为30。这里指数分布的形状参数恰好是均值。按确定按钮关闭视窗。这仅仅是这一次对处理器所做的改变,今后的课程中还要考察一些其它的操作。按确定按钮关闭处理器参数视窗。

对其它的处理器重复上述过程。

因为输送机的默认速度已经设为每时间单位为1,所以这次不需要修改输送机的速度。

现在可以编译和运行模型了。

步骤9:编译

 按主视窗的   按钮。完成编译过程后就可以运行模型了。

步骤10:重置模型

为了在运行模型前设置系统和模型参数的初始状态,总是要先点击主视窗底部的  键。

步骤11:运行模型

步骤13:查看简单统计数据

为了观察每个实体的简单统计数据,选择视窗上的设置菜单,取消对“隐藏名称”选项的选择。正投影视图的默认状态是显示名称的,而透视视图在默认状态下是隐藏名称的。

步骤14:保存模型

可使用“文件 >模型另存为...”来保存模型。

模型二

步骤1:装载模型1并编译

步骤2:向模型中添加一个分配器和两个操作员

步骤3:连接中间和输入/输出端口

步骤4:编辑暂存区临时实体流设置使用操作员

步骤5: 编译、保存模型,和测试运行

步骤6:为检测器的预置时刻配置操作员

为了使检测器在预置时使用操作员,必须连接每个检测器的中间端口和分配器的中间端口。操作是:按住键盘“S”键点击分配器拖到检测器释放。

在“预置时间” 下拉菜单中选择“Constant Value(常数值)” 选项,然后按   键来打开代码模板视窗,将时间改为10。

点击“确认”按钮关闭代码模板视窗。点击主页中的 “应用” 保存此改变。然后打开“操作员”分页。

选择“使用操作员进行预置”旁的复选框。选择后,将会看到“操作员数量”编辑区和“选取操作员”下拉菜单可用。预置所需的操作员数量为1,“ 选取操作员”的被选内容应设置为中间端口1。

点击“确认”按钮保存此改变并关闭视窗。对模型中的每个检测器重复此步骤。然后编译、重置,并运行模型以确认在预置时间期间确实使用了操作员。

步骤7:断开输送机到吸收器的端口间连接

应在添加输送机暂存区前断开输送机和吸收器之间的输入输出端口连接。操作是:按住键盘“Q” 键点击输送机拖动至吸收器。

端口被断开后,从库中拖一个暂存区放置在中间那个输送机的末端。然后连接输送机的输出端口至暂存区的输入端口,操作为:按住“A”键点击每个输送机拖动至暂存区。然后用同样的操作连接暂存区的输出端口至吸收器。

步骤8:添加运输机

从库中拖出一个叉车输送机放置到模型视窗中。

添加叉车后,将暂存区的中间端口连接到此叉车。按住键盘“S”键点击暂存区拖动到叉车。

步骤9: 调整暂存区的临时实体流参数来使用叉车

选择“临时实体流”分页并选中“使用运输机 ”复选框。暂存区的中间端口1已经被连接上,因此无须其它调整。点击“确认”按钮关闭视窗。

步骤10:运行模型

步骤11:输出分析

从库中拖出一个图标即可再添加一个操作员。按住“A”键点击拖动,连接分配器与操作员。编译、重置、保存,然后运行。

进阶模型二

步骤1:装载模型2并编译

步骤2:将模型另存为“Model 2 Extra Mile”,并打开统计收集选项

找到菜单选项“文件>另存为”将模型用一个新名称保存。在开始进行修改前,确保已经采用菜单选项“统计 >统计收集>所有实体打开”为所有的实体打开了统计收集选项。

步骤3:添加一个记录器来显示暂存区的当前数量

步骤4:调整记录器的参数来显示暂存区的满意的曲线图

在记录器实体上双击打开它的参数视窗。

按下数据捕捉设置按钮。在数据类型域段中,选择“标准数据”选项。然后在实体名称域段的下拉菜单中选择那个暂存区。在 “选择捕捉数据”域段中,选择“当前数量”。点击“向前”按钮。

步骤5:设定记录器的显示选项

在记录器视窗上选择显示选项按钮在“图形名称”域段中,键入名称“Queue Content Graph(暂存区当前数量曲线图)”这是一个用户定义的域段,用来定义图形的标题。可以在这里键入任意想要的名称。完成后按完成按钮。

步骤6:调整图形的视景属性

将“Z”(位置)改为7.80,将“RX”(X转角)改为90。这将会把图表旋转直立起来,而设定的高度将图表的底部处于地板上。

编译模型后,进行重置,并运行,现在应该看到图形显示了暂存区的当前数量随时间变化的情况。如果没有显示,可能需要从“统计>统计收集>所有实体打开”菜单中打开统计历史数据选项。

步骤7:添加一个记录器来显示暂存区的停留时间柱状图

按照和添加当前数量曲线图一样的步骤,往模型中添加一个记录器作为停留时间柱状图。唯一的区别是,在记录器参数的“选择捕捉数据 ”中应该选择“停留时间”选项。

将记录器放在紧挨着当前数量曲线图的右边。像步骤6中那样选择属性,旋转图形,改变高度位置。然后编译、重置并运行。

步骤8:为每个操作员添加一个状态饼图

步骤9:给模型添加3D文本

另一种往模型中添加信息来在模型运行中显示绩效指标的方式是,在模型布局的某些战略点上放置3D文本。采用可视化实体,在视景显示中选择 “文本”选项就可以实现此操作。在这个模型中,将要添加一个3D文本来显示“Conveyor Queue”中的临时实体的平均等待时间。

拖出一个可视化工具实体到模型中,并放置到输送机暂存区旁边。

在视景显示中选择“文本”选项。现在可以定义文本参数了。在文本显示下拉菜单中选择“Display Avg StayTime”选项。

然后选择代表模板按钮来改变显示的文本,改为“The average staytime of the Conveyor Queue is:(输送机的暂存区的平均等待时间是:)”。

按住键盘上的“S”键并点击可视化工具拖动到输送机暂存区的操作来实现。要点击可视化工具,可直接点击所显示的3D文本。如果点击到字母之间的空白上可能不能正确建立连接。

编译了模型后,将会在模型视图中看到文本。

到此,用户可能想要调整文本的显示。文本的尺寸默认设置为1,可能想要让它变小点。可直接调整文本大小。

在可视化工具视窗的左下角,选择属性按钮打开属性视窗。

在属性视窗中,用“RX”域段将文本旋转90度。

在参数和属性视窗中按“确认”按钮。现在模型中的文本就被旋转了。用鼠标按照意愿来选择和放置文本。记住,可以通过并用鼠标左右键选择文本并前后移动鼠标来控制文本的高度,或者选择文本然后滚动鼠标轮来上下移动文本。

步骤10:编译、重置、保存和运行

在模型中放置文本,并编译、重置、保存该模型。然后就准备好可以运行模型并查看刚刚添加的图形、图表和3D文本了。

模型三

步骤1:装载模型2并编译

装载模型后,在工具栏上按编译按钮。

步骤2:重新配置输送机1和3的布局

使用输送机1和3的参数视窗中的布局分页,改变其布局,使输送机在末端有一个弧段,将临时实体输送到离输送机暂存区更近的位置去。至少需要添加一个附加的弧段来实现此目的。注意,第2个分段的“类型”的值是2,表示它是一个弧形分段。对于类型1的分段,可以使用长度、上升高度和支柱数目等参数。对于类型2的分段,可以使用上升高度、弯曲角度、半径和支柱数目等参数

步骤3:删除吸收器

为模型添加货架做准备,先要把模型2中的最后的吸收器删除。选中吸收器,使它成为黄色高亮显示,并按键盘上的“ Delete” 键即可将其删除。当删除一个实体后,所有从此实体连接出和连接入的连接都同时将被删除。当心,这可能会影响到与被删除实体相连的实体的端口编号。

步骤4:给模型添加3个货架

在库中选择货架实体,往模型中拖放3个货架。模型中放入货架后,创建从输送机暂存区到每个货架的端口连接,方法是按住“ A”键然后从这个暂存区到每个货架进行点击拖动操作。

将货架放置得离暂存区有足够的距离,以便让叉车在到达货架时需要行进一定的距离。

步骤5:设定用来安排临时实体从暂存区到货架的路径的全局表

下一步是设定一个全局表,用来查找每个临时实体将被送到哪个货架(或者,更确切的表述为,临时实体将从输送机暂存区的哪个输出端口发送出去)。这里假设条件是,输出端口1连接到货架1,输出端口2连接到货架2,输出端口3连接到货架3。本模型将把所有实体类型为1的临时实体送到货架2,所有实体类型为2的临时实体送到货架3,所有实体类型为3的临时实体送到货架1。下面是设定一个全局表的步骤:

1. 在工具栏中选择全局表按钮。

2. 打开全局建模工具视窗后,按全局表旁边的按钮。全局表的下拉菜单中将会出现默认的表名称。

3. 选择按钮来设定此表。

4. 在全局表参数视窗中,将表的名称改为“rout”。

5. 设定此表有3行1列,然后点击应用按钮。

6. 将3行分别命名为item1、item2和item3,然后填入相应的临时实体要被送到的输出端口号(货架号)。

7. 选择视窗底部的确认按钮。选择全局建模工具视窗底部的关闭按钮。

现在,已定义了全局表,可以调整暂存区上的“送往端口”选项。

步骤6:调整输送机暂存区上的“送往端口”选项

在输送机暂存区上双击打开其产生视窗。选择临时实体流分页。在“送往端口”下拉菜单中,选择“By Lookup Table(通过查表)”选项。选择了查表选项后,选择代码模板按钮。编辑模板来使用叫做“rout” 的表。选择确认按钮关闭模板视窗,然后再选择确认按钮来关闭参数视窗。

步骤7:编译、重置、保存和运行

到现在为止,最好编译、重置、保存一下模型,然后运行模型来验证对模型的改动。模型应该显示用叉车往货架中搬运临时实体,送往的货架的选择基于在全局表中定义的实体类型。

步骤8:为叉车添加网络节点来为叉车开发一条路径

网络节点用来为任何任务执行器实体,如运输工具、操作员、堆垛机、起重机等,开发一个路径网络。在前面几课中,已经采用过操作员和运输工具来在模型中任意运输临时实体。到此为止,任务执行器可以在模型中在实体之间的直线上自由地移动。现在,当叉车在从输送机暂存区到货架之间运输临时实体时,想将叉车的行进限制在一个特定的路径上。下面的步骤用来设定简单的路径。

1. 在输送机暂存区和每个货架旁边拖放添加网络节点。这些节点将在模型中成为捡取点和放下点。可以在这些节点之间添加附加节点,但是并没有必要这样做。

2. 按住“A”键在每个网络节点之间点击拖动一条连线,可以将这些网络节点彼此连接起来。建立连接后将会显示一条绿色的连线,表示这两个节点之间的路径在两个方向上都是可以通行的。  

3. 现在,给输送机暂存区连接一个节点,并给3个货架的每一个都连接一个节点。必须这样做,叉车才能知道与模型中每个捡取和放下地点相连的是哪一个网络节点。此连接也是用按住键盘“A”键然后在网络节点和实体之间点击拖动一条连线的方式来实现。正确建立了连接后将显示一条细蓝线。

4. 最后一步是将叉车连接到节点网络上。为了让叉车知道它必须采用路径行进,必须把它连接到路径网络中的某个节点上。按住键盘“A”键然后在叉车到一个网络节点之间进行点击拖动操作可以实现连接。建立连接后将显示一条红色的连线。所选择的连接到叉车的那个节点将成为每次重置和运行模型时叉车的起始位置。

步骤9:编译、重置、保存并运行模型

可以编译、重置、保存,然后允许模型来查看叉车是否在使用路径网络。路径样条线节点带来了极大的灵活性,同时也减少了建立复杂路径所需要的网络节点数。路径网络自动采用Dyjkstra算法来确定网络中任意两个节点之间的最短路径。

步骤10:使用报告来查看输出结果

如要在Flexsim中获得相应的特征报告,就必须在模型中选中想要包含在报告中的实体。在运行结束后可以获得报告。要选中实体,可以按住键盘 “Shift”键然后用鼠标拖动一个选择框包围要报告的实体。当一个实体被选中时,在它周围将显示一个红色方框。也可以使用“Ctrl”键并点击实体来实现向选中的集合中添加和移除实体。选择了想要进行报告的实体后,选择菜单选项“统计>标准报告”。 选择了此选项后,将会看到Standard Report Setup(标准报告设置)视窗。

按生成报告可以生成一个基本报告。如果只需要生成关于所选实体的报告,就不要选择“整个模型的信息报告 ”复选框。如果需要向报告中添加其它的属性,可以在此界面中添加。报告将输出到一个csv文档,并自动用Excel显示,或者用用户机器上所默认的用来显示csv文档的应用程序来显示。

选择菜单选项“统计>统计报告”可以创建统计报告。这将生成一个包括模型中所有选定实体的状态报告。

步骤11:使用实验控制器进行多次允许

要获取Flexsim的实验控制器,可以选择主视窗右底部的实验控制器按钮。按下按钮后,将出现Simulation Experiment Control(仿真实验控制)视窗。

Simulation Experiment Control视窗用来设定一个特定模型的多次重复运行,和一个模型的多个场景运行。当运行多场景时,可以声明几个实验变量,然后每个场景下想要运行的各个变量的取值。将会计算并显示在绩效指标分页中定义的每个绩效指标的置信区间。参见帮助文档的实验控制器部分,可以获得更多关于实验控制器的信息。

三、 讨论、心得

在设计和讨论的过程当中,我们需要考虑需要配置多少个操作员台机器设备和多少才能满足该系统的运输需求?仿真系统一天8小时的总货物流量为多少?两种不同的货物都有自己的检验合格率。每个货物进行检测后,不合格的货物要打包退回,合格的货物入库。

此外在调整这个系统的实体和操作员、机器、货架配置中,要结合系统情况和实际情况合理安排,大量的人员安排和设备配置当然可以确保系统运行通畅,但是必须得考虑的实际建设中的成本问题,能用人完成的弓就没必要添加机器完成;还有一些设备如果没有必要的话就可以考虑不在系统中出现。

通过这段时间的上机实验,认识到了Flexsim仿真系统的功能以及模型的建立步骤和参数设计方法,同时认识到物流仿真系统在实际物流系统建设中的重要作用。设计者可以根据仿真系统的建立、运行和所得到是数据进行分析,根据该系统得到一天的货物总流量和目前配置下的系统所能承受的最大日流量,根据系统运行得到的数据和运行的结果和实际情况对物流和工作人员进行安排和调整。

最终得到最优的系统模型,再根据系统模型和实际条件进行物流系统的实际建设,使得最终的建设模型达到理想的效果。

但是在做实验的过程中也发现了很多的问题,比如平常上机的时候都是按照课本一步一步的来,而且做的很流畅,但是到了自己要设计一个系统,没有了参照步骤只有设计数据要求的时候,自己却不知道该系统要怎么设计,怎么运行,怎么样才能达到最优等,如果平常上机的时候自己能认认真真的做,用心去思考每一个步骤都是为什么我想到最后就没有这么不知所措。通过这次的实验让我明白了其实做任何事情都一样,平时自己肯动手肯思考,平常的积累多了,平时都用心做了,到最后肯定会有收获,最起码不至于到最后不知所措。

短短的32个学时的物流系统仿真上机实验很快就结束了,从最开始老师给我们介绍一些仿真理论到最后我们自己作出一个系统,中间的过程中我们学到了很多东西,并且认识到了自学,用心学习的重要性,这对我们以后参加工作,接触社会也是一次很好的指导。

相关推荐