系统仿真实验报告.docx
《系统仿真实验报告.docx》由会员分享,可在线阅读,更多相关《系统仿真实验报告.docx(48页珍藏版)》请在冰豆网上搜索。
![系统仿真实验报告.docx](https://file1.bdocx.com/fileroot1/2023-4/16/0334ed0d-2865-4ae7-bd2d-b407c1c69cf7/0334ed0d-2865-4ae7-bd2d-b407c1c69cf71.gif)
系统仿真实验报告
实验一 熟悉Flexsim软件
一.实验目的
1.了解典型的离散事件系统仿真软件---Flexsim;
2.为理论学习中的第9章增强感性认识;
3.熟悉Flexsim的基本操作。
二.实验内容:
学习要点:
·如何建立一个简单布局
·如何连接端口来安排临时实体的路径
·如何在Flexsim实体中输入数据和细节
·如何操纵动画演示
·如何查看每个Flexsim实体的简单统计数据
模型描述
在第一个模型中,我们将研究三种产品离开一个生产线进行检验的过程。
有三种不同类型的临时实体将按照正态分布间隔到达。
临时实体的类型在类型1、2、3三个类型之间均匀分布。
当临时实体到达时,它们将进入暂存区并等待检验。
有三个检验台用来检验。
一个用于检验类型1,另一个检验类型2,第三个检验类型3。
检验后的临时实体放到输送机上。
在输送机终端再被送到吸收器中,从而退出模型。
模型数据
发生器到达速率:
normal(20,2)秒
暂存区最大容量:
25个临时实体
检验时间:
exponential(0,30)秒
输送机速度:
1米/秒
临时实体路径:
类型1到检验台1,类型2到检验台2,类型3到检验台3。
三.实验步骤:
第一步:
创建实体
•创建一个发生器,命名为发生器;
•从库中拖出一个暂存区,3个处理器,3个传送带,1个吸收器到视图中。
放置与命名方式如下。
命名一个实体:
双击实体,在属性框的顶部改变实体名字,然后点击确定;
第二步:
端口连接
点击按钮或者按住A键进入连接模式。
一旦进入连接模式,有两种连接方式可以用来
连接两个实体。
一种是你可以单击一个实体,然后单击另外一个实体。
另一种方法是点击一个实体拖动至另外一个实体。
需要注意的是连接方向将会直接影响到临时实体的流动方向。
临时实体从第一个连接的第一个实体,流向被连接的实体。
顺便值得提到的是,点击按钮,或按下Q键,利用与连接相同的方式即可断开连接。
•发生器与暂存区连接。
•把暂存区与处理器1,处理器2,处理器3分别连接。
•处理器1与传送带1,处理器2与传送带2,处理器3与传送带3连接。
•传送带1,传送带2,传送带3分别连接至吸收器。
第三步:
指定到达速率
对于这一模型,我们将改变到达时间间隔与临时实体类型从而产生三种不同的产品类型进入系统。
•双击发生器,打开其属性窗口。
•发生器选项卡,在到达时间间隔下拉列表中选择统计分布。
代码模板窗口和建议性
窗口弹出。
•双击建议窗口中的normal(0,1,0)选项。
将蓝色文本修改为:
统计分布:
normal(20,2,0)。
这种到达速率是表明到达时间均值为20秒,标准方差为2。
下面我们需要为临时实体指定一个实体类型,使进入系统临时实体的类型服从以1到3之间的均匀分布。
最好的做法是在发生器的“创建触发器”中改变实体类型,所以先不要关闭参数窗口。
第四步:
设定临时实体类型和颜色
选择发生器的触发器分页。
为离开触发器(点击按钮)增加一个函数。
首先打开离开触发器下拉菜单。
在下拉菜单中选择设定临时实体类型和颜色,弹出代码模板窗口。
离散均匀分布与均匀分布相似,但返回的不是给定的参数之间的任意实数值,而是离散整数值。
默认的蓝色文本此时可以直接引用于此案例。
点击确定按钮,关闭参数窗口。
下一步是详细设定暂存区参数。
由于暂存区是在临时实体被处理器处理前存放临时实体的场所,因此需要做两件事。
首先,需要设定暂存区最多可容纳25个临时实体的容量。
其次,设定临时实体流选项,将类型1的实体发送到处理器1,类型2的实体发送到处理器2,依此类推。
第五步:
设定暂存区容量
•双击暂存区Queue1,打开参数窗口。
•将最大容量改变为25。
•不要关闭参数窗口。
第六步:
设定暂存区的临时实体流
•在暂存区的参数窗口中,点击临时实体流选项卡设置临时实体流选项。
•在发送至端口列表中选择指定。
由于我们已经分配实体类型号为1、2、3,我们就可以根据不同的临时实体类型分配不同的端口号。
请注意,默认的输出端口是:
getitemtype(item)。
请不要修改。
通过此参数,处理器1可以连接到端口1,处理器2应连接到端口2,依此类推。
在窗口之外点击即可应用此触发器。
点击确定按钮关闭暂存区的参数视窗。
下一步是设定处理器的加工时间。
第七步:
为处理器定义加工时间
•双击处理器1,打开属性窗口
•在处理器选项卡上,在加工模块中,时间下拉列表中选择统计分布。
弹出模板窗口和附带建议小窗口。
•双击建议小窗口中的exponential(0,1,0)选项。
编辑蓝色文本为:
统计分布:
exponential(0,30,0)
•对于另外两个处理器重复处理器1的操作
因为输送机的默认速度是时间单位为1,所以这次不需要修改输送机的速度。
现在可以编译和运行模型了。
第八步:
重置与运行模型
•在运行模型前点击按钮,为重置系统和吧模型参数返回至初始状态。
•点击按钮,运行模型。
•你可以看到临时实体进入暂存区,并且移动到处理器。
从处理器出来,实体将移动到输送机,然后进入吸收器
第九步:
查看简单统计数据
第十步:
保存模型
要保存模型,点击保存按钮,弹出“Flexsim模型文件”窗口,你可以选择任意文件夹保存模型。
命名为合适“文件名”(如lesson1.fsm),然后点击保存。
注意文件扩展名必需为.fsm。
实验二 Flexsim仿真建模步骤
一.实验目的
1.了解Flexsim仿真软件的建模步骤;
2.熟悉Flexsim的实体库。
3、进行简单模型的仿真。
二.实验内容:
(1)如何访问和修改实体参数和属性;
(2)如何向模型中加入一组操作员;
(3)如何向模型中加入叉车运输机;
(4)如何选择一个实体进行图标数据统计;
(5)如何打开统计数据收集;
(6)如何在模型运行中观察实体统计数据;
三.理论知识
实体属性:
每个Flexsim实体都有自己的参数窗口。
你可以通过双击实体或者右键单击,点击属性选型进入参数窗口。
根据不同实体的不同类型,你可以通过属性窗口来进行不同的属性配置。
四、实验步骤
(一)预备内容
(1)选择实体进行统计:
需在模型视窗中选定想要进行统计记录的实体。
按住键盘“Shift”键,拖动鼠标选定要进行统计的所有实体;一旦实体被选定,将会在它周围出现红色框。
(2)开始统计:
要收集所选实体的历史统计记录,点击统计>实体图形数据>打开选中实体
一旦点击后,将有绿色方框框住正在被记录历史统计的实体。
可以选择“统计>统计收集>隐藏绿色指示框”来关闭绿色方框的显示。
(二)主要内容
第一步:
装载模型1
第二步:
创建1个任务分配器和2个操作员:
分配器用来为一组操作员或运输机进行任务序列排队。
在该例中,它将与两个操作员同时使用,这两个操作员负责将临时实体从暂存区搬运到检测器。
从库中点击相应图标并拖放到模型中,即可添加分配器和两个操作
(1)从库中拖动一个分配器到视图中,命名为分配器。
(2)从库中拖动2个操作员,命名为操作员1和操作员2。
第三步:
连接分配器与操作员
暂存区将要求一个操作员来拣取临时实体并送至某个检测器。
临时实体的流动逻辑已经在第1课中的暂存区设置好了,无需改变。
只需请求一个操作员来完成该任务。
由于我们使用两个操作员,我们将采用一个分配器对请求进行排队,然后选择一个空闲的操作员来进行这项工作。
如果我们只有一个操作员,就不需要分配器了,可以直接将操作员和暂存区连接在一起。
为了使用分配器指挥一组操作员进行工作,必须将分配器连接需要操作员的实体的中间端口上。
中间端口位于实体底部的中间位置。
若要将分配器的中间端口连接到暂存区,则按住键盘上的“S”键然后点击分配器拖动到暂存区。
释放鼠标,就建立了一个从分配器中间端口到暂存区中间端口的连接,你可以通过工具栏中的中间端口连接模式进行连接。
为了让分配器将任务发送给操作员,须将分配器的输出端口与操作员的输入端口连接,两个操作员均需此种方式进行连接。
(1)将暂存区与分配器的中间端口进行连接(S键)。
(2)将分配器与操作员1、操作员2分别进行标准连接(A键)。
第四步:
编辑暂存区临时实体流选项卡使用运输工具(操作员)
下一步是修改暂存区临时实体流属性来使用操作员完成搬运任务。
•可以双击暂存区,打开参数窗口。
•点击临时实体流选项卡。
•选择“使用运输工具”复选框。
弹出“按下列条件请求运输工具”列表。
这个下拉菜单将根据端口号来选择利用哪台运输机或哪个操作员去搬运临时实体。
在本例中,它被连接到分配器,由分配器将任务分配给操作员,所以默认设置即可。
点击确认关闭窗口。
第五步:
保存模型,运行测试
现在运行模型来确认我们所做的改变是否生效。
运行模型以便确认操作员可以把临时实体从暂存区移动至检测台。
第六步:
为检测器的预置时刻配置操作员
为了使检测器在预置时使用操作员,必须把每个检测器的中间端口和分配器的中间端口进行分别连接。
然后需要定义检测器的配置时间。
(1)分配器与处理器1,处理器2,和处理器3分别进行中间端口连接(S键)。
(2)双击处理器1打开参数窗口。
(3)点击处理器选项卡,在预置模块下方点击“使用操作员进行预置”。
“预置操作员人数”和“拣取操作员”将变为可用。
(4)在预置模块下,在时间列表中选择“指定”。
编辑蓝色文本为:
指定:
10
(5)点击应用、确认按钮关闭属性窗口。
(6)对处理器2及处理器3重复上面操作。
第七步:
断开传送带与吸收器的链接
应在添加传送带暂存区前断开传送带和吸收器之间的输入输出端口连接。
操作是:
按住键盘“Q”键,点击输送机拖动至吸收器。
(1)分别断开传送带1,传送带2,传送带3与吸收器的链接(Q键)。
(2)从库中拖动一个暂存区放置在传送带的右边,命名为传送带暂存区。
(3)将传送带1,传送带2,传送带3连接至传送带暂存区(A键)。
(4)连接传送带暂存区至吸收器(A键)。
现在已修改了模型布局,并创建了端口连接,可以添加叉车了。
第八步:
添加运输机
在模型中添加叉车,来将临时实体从传送带暂存区搬运到吸收器,这和添加操作员来完成暂存区到检测器之间的搬运是一样的。
由于此模型中只有一辆叉车,所以不需要使用分配器。
直接将叉车连接到暂存器的一个中间端口。
(1)将吸收器向右移动10个单位来模拟移动距离。
(2)从库中拖动一个运输机放在传送带暂存区旁边,命名为运输机。
(3)将传送带暂存区与运输机用中间端口连接(S键)。
第九步:
调整暂存区的临时实体流参数来使用叉车
(1)双击传送带暂存区实体打开它的参数窗口。
(2)单击临时实体流选项卡,选中使用运输工具复选框。
弹出“按下列条件请求运输工具”列表。
暂存区的中间端口1已经连接,所以不需要做任何调整。
(3)点击确认关闭属性窗口。
(4)重置、保存模型。
第十步:
运行模型
运行模型
这一步是建立本模型的收获部分,现在可以检验此模型是否如你所愿地运行。
在模型运行中,可使用动画显示来直观地检查模型,看各部分是否运行正常。
应能看到操作员来回走动,叉车在暂存区和吸收器之间搬运临时实体。
可注意到当一个检测器在等待操作员进行预置时,一个黄色的方框显示在检测器下。
第十一步:
输出分析
根据此模型简介中的步骤,在统计主菜单中打开所有实体的记录。
再次运行模型,即可在属性窗口中查看实体统计。
通过观察动画和图表,请判断此模型是否有瓶颈。
传送带暂存区数据图表:
运输机数据图表:
处理器数据图表:
操作员数据图表:
实验三 Flexsim流体教程
一.实验目的
学习Flexsim流体。
学习这些离散实体是如何相互影响、相互关联的,如何使用
它们建立模型。
利用流体建立模型需要更加注重细节,所以在你开始学习流体之前,你应该感到使用其他实体建立模型还是比较舒服的。
二.实验内容:
(1)怎么样使用Flexsim模拟流体物质
(2)如何将实体转换成流体物质
(3)如何运输与储存流体物质
(4)如何在流体储存箱上使用液位标记(levelmarks)来控制液体流动。
(5)如何将流体物质混合
(6)如何将流体物质转换成临时实体
三.理论知识
流体模型
在这个模型中,一个操作员会将两种不同材质的箱子搬进模型。
这两种箱子分别被转化成液体,通过输送管道(Pipe)运输至两个液体储存箱(Tanks)里面。
两种液体由储存箱再输送至一个混合器(Mixer)中,混合器将两种液体混合在一起,生产出一种新的产品。
这种新产品被输送到液体处理器(流体处理器)里,在通过实体转换器转换成实体,经过传送带,到达吸收器。
模型中的液体单位为加仑,时间单位为秒。
流体模型数据
Flowitem到达速率:
exponential(0,10)seconds
流体转换器的最大容量:
20加仑
单个实体转换成的流体量(流体转换器):
10加仑/实体
向储存箱输送液体的输送管的最大容量:
20加仑
运输率(流体转换器至储存箱):
2加仑/秒
储存箱的最低标记:
1加仑
储存箱的最高标记:
45加仑
向混合器输送液体的输送管(pipe)的最大容量:
10加仑
输送率(储存箱至实体转换器):
1加仑/秒
混合步骤:
步骤1:
物质类型1,无延迟
步骤2:
物质类型2,10秒延迟
混合方式:
物质类型1:
10加仑,步骤1
物质类型2:
20加仑,步骤2
实体转换器的最大容量:
10加仑
转换成一个实体的流体量(实体转换器):
10加仑/实体
四、实验步骤
第一步:
模型布局与连接
在库窗口上方的列表中,选择“流体实体”,打开库。
从库中拖拽出以下实体,从而开始这课的学习。
(1)2个发生器,起名为发生器1和发生器2(离散实体)。
(2)一个操作员命名为操作员(离散实体)。
(3)2个流体转换器命名为流体转换器1和流体转换器2(流体实体)。
(4)2个输送管命名为输送管1和输送管2(流体实体)。
(5)2个流体储存箱命名为流体储存箱1和流体储存箱2(流体实体)。
(6)在添加两个输送管命名为输送管3和输送管4(流体实体)。
(7)1个流体混合器,命名为流体混合器(流体实体)。
(8)1个流体处理器,命名为流体处理器(流体实体)。
(9)1个实体转换器命名为实体转换器(流体实体)。
(10)1个传送带命名为传送带(离散实体)。
(11)1个吸收器命名为吸收器(离散实体)。
•将实体布局如下。
一旦创立了所有的实体,并把它们安置在了理想的位置,你就可以进行连接了。
流体实体的连接方式与离散实体的链接方式一样:
使用A键,建立输入/输出端口连接,S键进行中间端口。
•将实体进行连接,创建加工路线,从发生器1至流体转换器1,从流体转换器
1至输送管1,从输送管1至储存箱1,从储存箱1至输送管3,从输送管3至
流体混合器,连接后,显示如下。
以发生器2为连接起始点,同样的链接对应
实体的方式创建一条并列的加工线。
•为了发生器能够利用操作员将临时实体输送至流体转换器,需要在每个发生器与操作员之间创建一个中间端口。
•从流体混合器连接至流体处理器,从流体处理器连接至实体转换器,从实体
转换器连接至传送带,从传送带连接至吸收器。
第二步:
配置发生器
发生器的默认间隔到达时间(inter-arrivaltime)对于这个模型来说设置是合理的。
两个发生器需要命令操作员将临时实体输送至流体转换器。
•双击发生器1,打开属性窗口。
点击临时实体流选项卡,选中使用运输工具复
选框。
•点击确认按钮,关闭属性窗口。
•对发生器2,重复以上操作。
第三步:
设置实体的颜色
当创建了所有实体后,根据不同的种类,实体会出现不同的颜色。
根据实体所加工的物质类型,将实体加上不同的颜色是非常有必要的。
在这个模型中,共有两条加工线,每条加工线都包含有一个流体转换器,一个输送管,一个储存箱和另一个输送管.通过属性GUI,我们将一条加工线上的这四个实体的颜色改成蓝色,另一条线上的这四个实体改成红色。
这样,在模型运行的时候,实体就可以变成设定的颜色。
•双击流体转换器1,打开其属性窗口,点击常规选项卡。
•点击颜色模块紧邻的按钮。
弹出颜色窗口。
从选项中选择蓝色,然后点击确
认,关闭窗口。
流体转换器1设置:
输送管道设置:
液体储存箱1设置:
液体输送管3设置:
•对以上提到的其他实体重复以上操作,把另一条加工线设置成红色,而不是蓝
色。
流体转换器2设置:
流体输送管道2设置:
流体储存箱2设置:
流体输送管4设置:
第四步:
配置流体转换器
下一步是对流体转换器进行配置,使每个进入的临时实体都被转换成一定量的流体物质。
•双击流体转换器1,打开属性窗口。
在流体转换器选项卡上,将每个临时实体的
离散单位数改成10。
这种配置是告诉流体转换器实体,每个临时实体需要创
造出10加仑的流体。
•改变最大实体速率和最大端口速率为2。
•将最大容量改为20。
•点击确认,保存修改,然后关闭属性窗口。
•对流体转换器2重复如上操作。
第五步:
配置输送管
与两个流体转换器连接的两个流体管道是下面需要进行配置的实体。
建模者不能对输入速率和输出速率进行设置。
输出速率是以物质接收的实际速率为基础的。
•双击输送管1打开属性窗口。
•在输送管选项卡上,设置最大流动速率为2,最大容量为20。
这能保证物质会在流体管中停留一段时间,但是不会是很长的时间。
.
第六步:
配置流体储存箱
输送管现在最大输出速率为2,但是输送管的最大输入速率为1.如果不改变这些速率值,在模型运行过程中,储存箱的速率就会启动(应为两个值进行比较,它的值较小)。
输送管将不能以你设置的速度将物质输送到储存箱。
所以需要改变储存箱的速率。
•双击流体储存箱1打开属性窗口。
在储存箱选项卡上,在输入端口模块中,将
最大实体速率和最大端口速率修改为2。
第七步:
下一组输送管定向与设置尺寸
为了使连接储存箱和混合器的输送管对准混合器,需要根据实体放置的位置,对输送管需要进行适当的调节。
同样,调节进行时,变化是可视的,输送管的尺寸以及布局都不会影响它们的运行。
使用布局选项卡调节你的模型中的输送管,使模型看起来更漂亮。
输送管的最大容量目前对于这个模型来说太大。
•双击输送管3,打开属性窗口。
在输送管选项卡上,将实体的最大容量改为10。
这能保证离开储存箱的物质可以花费很短的时间达到混合器。
第八步:
设置混合器的步骤及处方表
现在需要对流体混合器进行配置,使它能够将收到的不同物质混合成一种新的物质。
配置可以通过修改流体混合器的属性窗口中,步骤选项卡上的两个表格完成。
建模者可以使用步骤选项卡上的混合器步骤表格定义一系列混合器在加工产品时,必需遵循的步骤。
在这个模型中,混合器步骤表格需要两个步骤。
在步骤一中,混合器应该从第一个输入端口中接受10加仑的第一种物质。
然后从第二输入端口中吸入20加仑的第二种物质。
第九步:
检查流体处理器
流体处理器的默认值对于这个模型来说是合适的。
它从输入端口1接收物质,加工一段时间后,发送至输出端口1。
加工时间的多少是以建模者在属性窗口中,流体处理器选项卡上设置的最大容量及最大输出速率为基础的。
可以通过设置不同值,来查看它们是如何影响模型运行的。
如果想要流体处理器的指示工具出现在实体的前方,可以像设置混合器一样,将Y值设置为1,像前一步一样。
第十步:
配置实体转换器
实体转换器被放置在生产线的末端,作用是将来自于流体处理器的流体物质,转换成离散实体。
要得出用多少流体实体,才能制造出一个离散实体,需要将单个离散单位的流体量的值乘以单个临时实体的离散单位的值。
在这个模型中,10加仑的流体物质,将会形成一个离散实体。
•双击实体转换器打开属性窗口。
在实体转换器选项卡上,在临时实体输出模块下,将单个离散单位的流体量改变成10。
•在实体转换器选项卡上,将最大容量改为10。
也就是说这个实体在任何时候,只能收集足够用于产出一个实体的物质。
如果这个值高于10,实体转换器实体就会像暂存区,在你模型中储存很多的临时实体。
第十一步:
重置、运行模型
•重置、保存模型。
实验四 学习Flexsim实体库
一.实验目的
1.深入学习Flexsim仿真软件的建模步骤;
2.熟悉Flexsim的实体库。
3、进行较为复杂模型的仿真。
二.实验内容:
(1)如何使用全局表定义路径
(2)了解FLEXSIM实体库的相关对象
(3)如何执行模型的多次运行
三.模型描述
在模型4中,将用3个货架代替吸收器,用来存储装运前的临时实体(见图3-1)。
需要改变输送机1和3的物理布局,使它们的末端弯曲以接近暂存区。
采用一个全局表作为参考,所有实体类型1的临时实体都送到货架2,所有实体类型2的临时实体都送到货架3,所有实体类型3的临时实体都送到货架1。
四、实验步骤
1、模型4数据
修改运输临时实体的传送带1和3与传送带暂存区之间的距离,使距离更短。
从输送机暂存区寻径至货架:
使用一个全局表给临时实体指定如下的路径:
(1)实体类型1到货架2
(2)实体类型2到货架3
(3)实体类型3到货架1
2、主要内容
第一步:
装载模型2
如果模型2没有处于打开的状态,请装载模型2。
第二步:
重新配置传送带1与传送带3布局
现在将要改变三个传送带的布局,以至于它们可以在末尾部分出现弯曲,从而使临时实体距传送带暂存区更近。
你可能有兴趣在布局分页中实验创建一些复杂的弯曲和倾斜上升的布局,将很有意思!
•双击传送带1(传送带1),打开参数窗口。
•点击布局选项卡。
•点击添加弧度在传送带末尾添加弯曲。
•编辑角度与半径参数,使传送带1向传送带暂存区方向弯曲,如下:
•对于传送带3重复以上操作。
注意,第2个分段的“类型”的值是2,表示它是一个弧形分段。
对于类型1的分段,可以使用长度、上升高度和支柱数目等参数。
对于类型2的分段,可以使用上升高度、弯曲角度、半径和支柱数目等参数
第三步:
删除吸收器
•选中吸收器,点击删除键。
当删除一个实体后,所有从此实体连接出和连接入的连接都同时将被删除。
当心,这可能会影响到与被删除实体相连的实体的端口编号。
第四步:
创建三个货架
•创建3个货架,将它们排列至传送带暂存区的右边,依次命名为货架1,货架2,和货架3。
要把货架放置传送带暂存区足够远,以至于叉车可以运行一段距离
后到达货架。
•将传送带暂存区分别与货架1、货架2和货架3货架连接(A键)。
第五步:
创建控制临时实体路径的全局表
下一步是设定一个全局表,用来查找每个临时实体将被送到哪个货架(或者,更确切的表述为,临时实体将从输送机暂存区的哪个输出端口发送出去)。
这里假设条件是,输出端口1连接到货架1,输出端口2连接到货架2,输出端口3连接到货架3。
本模型将把所有实体类型为