Flexsim仿真软件介绍

Flexsim仿真软件介绍
Flexsim仿真软件介绍

Flexsim仿真软件介绍

从1993年起,Flexsim软件产品就进入了仿真软件市场并且建立了自己的咨询业务。经过十多年在仿真行业的经验积累以及高新软件技术的应用,我们已经开发出了一个全新的面向对象的仿真建模工具Flexsim。它是迄今为止世界上惟一一个在图形建模环境中集成了C++IDE和编译器的仿真软件。在这个软件环境,C++不但能够直接用来定义模型,而且不会在编译中出现任何问题。这样,就不再需要传统的动态链接库和用户定义变量的复杂链接。Flexsim有很广阔的应用范围,还能应用在更高层次的仿真工程上。欢迎大家使用Flexsim,它一定会令你耳目一新!

Flexsim能应用于建模、仿真以及实现业务流程可视化。下面我们简单地介绍一下Flexsim仿真软件。

一、建模

Flexsim应用深层开发对象,这些对象代表着一定的活动和排序过程。要想利用模板里的某个对象,只需要用鼠标把该对象从库里拖出来放在模型视窗即可。每一个对象都有一个坐标(x,y,z)、速度(x,y,z),旋转以及一个动态行为(时间)。对象可以创建、删除,而且可以彼此嵌套移动,它们都有自己的功能或继承来自其他对象的功能。这些对象的参数可以把任何制造业、物料处理和业务流程的快速、轻易、高效建模的主要特征描述出来。

下图是一个仓库的模型:

Flexsim中的对象参数可以表示几乎所有存在的实物对象。像机器、操作员、传送带、叉车、仓库、交通灯、储罐、箱子、货盘、集装箱等等都可以用Flexsim 中的模型表示,同时数据信息也可以轻松地用Flexsim丰富的模型库表示出来。层次结构

Flexsim可以让建模者使模型构造更具有层次结构。在组建客户对象的时候,每一组件都使用了继承的方法,在建模中使用继承结构可以节省开发时间。Flexsim可以使用户充分利用Microsoft Visual C++的层次体系特性。

用户化

目前在市场上,还没有其他任何仿真软件能像Flexsim这样有更多的用户化设定。对使用者来说,软件的每一个方面都是开放式的。对象、视窗、图形用户界面、菜单、选择列表和对象参数等都是非常直观的。你可以在对象中根据自己的想法改变已经存在的代码,删除不需要的代码,甚至还可以创建全新的对象。值得一提的是,不论是你设定的还是新创建的对象都可以放入库中,而且可以应用

在别的模型中。最重要的是,在Flexsim中可以用C++语言创建和修改对象,同时,利用C++可以控制对象的行为活动。Flexsim的界面、按钮条、菜单、图形用户界面等都是由预编译的C++库来控制的。

可移植性

由于Flexsim中的对象都是开放的,因此这些对象可以在不同的用户、库和模型之间进行交换,同时结合对象的高度可自定义性,可以大大提高建模的速度。当用户自定义的对象加入库中时,就可以非常方便的在别的模型中使用该对象。由此可见,用户化和可移植性扩展了对象和模型的生命周期。

二、仿真

Flexsim中有一个效率非常高的仿真引擎,该引擎可同时运行仿真和模型视窗(可视化),但可以通过关闭模型视窗来加速仿真的运行速度。同时当仿真运行时,利用该引擎和flexscript语言可以改变模型的部分属性。

下图是仿真原材料的传输过程:

Flexsim还可以用试验的形式来仿真假定的情节,而且它可以自动运行并把结果存在报告、图表中。这样我们可以非常方便地利用丰富的预定义和自定义的行为指示器,像用处、生产量、研制周期、费用等来分析每一个情节。而且也很容易将结果导入到别的应用程序像Microsoft Word和Excel等,利用ODBC(开放式数据库连接)和DDEC(动态数据交换连接)可以直接输入仿真数据。三、可视化

如果一幅图能够表达上千的文字,那么Flexsim的虚拟现实动画以及模型浏览窗口就表达了无限的容量。Flexsim把所有最新的虚拟现实博奕图形整合在个人计算机上。Flexsim中有可以直接导入3DS (3D Studio), VRML,3D DXF and STL等类型文件的选项,而其他仿真软件中没有这项功能。Flexsim内置了虚拟现实浏览窗口,可以让用户添加光源、雾以及虚拟现实立体技术。用户定义的“Fly-Throughs”可以被定义为艺术模型状态显示出来。AVI文件可以通过Flexsim的AVI录制器快速生成。任何模型都能被录制、拷贝到CD,以及发送到任何人的实时查看器中。

七、输入和输出

1)输出:Flexsim具有强力的商务图表功能,海图(Charts)、饼图、直线图表和3D文书能尽情地表现模型的情报,需要的结果可以随时提出。Flexsim的open architecture允许用户连接OBDC数据源、进行读和写,可以实时的连

接Word和Excel。对于Flexsim模型,为便于在Flexsim系统之外观看和演示,系统提供了AVI转换功能:可以将模型的3D效果转换成AVI格式。

2)输入:Flexsim的模型中的3D图形可以是所有符合OpenGL规范的3D图形,比如:*.wrl; *.3ds; *.dxf; *.stl等。

八、应用领域

Flexsim是一款建模应用软件,可以用于对任何商业流程,包括制造、物流、管理等等的仿真和可视化。尤其适合于流水线(研发、生产制造、销售展示、工程规划、生产管理分析)、物流设备(研发、生产制造、销售展示、工程规划、性能分析)、物流与配送(工程布局规划、性能分析)等。

Flexsim的理念就是柔性。无论是建模对象、视图、图形用户界面,还是你能想到的许许多多其他构件,在Flexsim中都可以完全用户化。

1 Flexsim系统仿真软件概况

Flexsim 是PC Base的数字虚拟企业的仿真系统,来建立各种经营、管理、制造等模型,并且可在微软公司的Windows 2000、Windows XP、及Vista 等不同作业平台上执行的全窗口化3D专业仿真软件。Flexsim是新一代的面向对象的仿真建模工具,它是迄今为止世界上唯一一个在图形建模环境中集成了C++IDE和编译器的仿真软件。在这个软件环境,C++不但能够直接用来定义模型,而且不会在编译中出现任何问题。这样就不再需要传统的动态链接库和用户定义变量的复杂链接。它能使决策者轻易地在个人电脑中建构及监控任何工业及企业的分散式流程。透过Flexsim我们可以率先找出未来工业及企业流程的模式。Flexsim基础架构设计不只是要满足使用者现今的需求,其架构的概念更是为了企业的未来而准备。

Flexsim就是帮助工程师,经理和决策者形象化地在动态三维

虚拟现实环境中检测新提议的操作,流程或是系统。这对于创建那些可能出现崩溃,发生中断或是产生瓶颈的复杂系统是必不可少的。通过预先创建系统模型,可以考察各种假设的场景,同时不会产生改变实际系统时所面临的中断,成本和风险。

Flexsim不仅已应用于工业自动化仿真、物流中心配送仿真、交通运输仿真、交通流量管制仿真、医疗管理研究、医院动线规划仿真等民用工程,也已经应用于先进国防战略仿真、航天制程仿真等大型研究方向。

主要的应用领域:

制造业:

半导体芯片制造、肉食包装工厂中的牛肉处理、钢铁制造、果酱成品的罐装,标签,包装,发货、电子器件制造、

仓储和配送:

港口集装箱船只的装卸、配送中心操作、订单取货、传输带系统和布局、物流货架、传送带和堆垛机。

运输:

高速路交界处的交通流、火车站中人群和列车的移动、河流中驳船的往来穿梭、国际边防路口的交通堵塞

其他:

矿石开采和加工、快餐店中食物准备和客户服务、参观者在娱乐场所内的活动、喷气式飞机引擎的拆卸,翻新和更换、医院中病人和食物的处理、共享的网络存储器中数据的流动、银行处理中

心中支票的处理。

2 Flexsim仿真功能

2.1 Flexsim建模的功能

1)Flexsim具有离散型和连续型的混合建模功能。软件本身

更多的是离散型仿真方面应用,但它支持连续型生产建

模,它有专门的流体部件库,有很多应用于炼钢厂、塗料

生产厂及石油输送的成功案例。

图-1 Flexsim连续型生产模型之一

2)Flexsim提供平面与三维建模窗口,可以直接将AutoCAD的

平面布置图导入建模窗口,可完全遵循平面布置图的距离

关系建立平面模型,平面模型只要换一个窗口,或换一个

角度就是三维模型,建立二维模型的同时,同步自动生成

三维模型,不需要将二维模型转为三维模型的操作。同样,

也可以直接在三维建模窗口建立模型,二维模型同步自动

生成。二/三维建模完全同步关联。

图-2 AutoCAD的平面布置图上建模

3)Flexsim提供的部件具有相当的柔韧性,部件的参数设定可

适应于不同层次的使用者,对于刚入门的使用者,Flexsim 提供了制造业和物流业常见策略,用户只需要选择和修改数据,就可以实现先进先出、先进后出、随机出入、百分比出入、统计概率出入、最长队列出入、最短队列出入、按品种出入、按标签出入等出入库策略,无需编程。对于使用熟练者,可以直接用C++编程,实现更复杂的有特殊需求的出入库策略,每个部件都有C++编程接口。

4)Flexsim用拖放图形方法建立模型,Flexsim提供有固定类

部件库,执行类部件库,流体类部件库,以及用户部件库。

建模时将相应的部件拖放到模型窗口的指定位置。Flexsim 允许用户开发自己的部件并建立自己的部件库,对于使用熟练者用户可以手工编制代码来建模。

5)Flexsim具有完全的C++面向对象(object-oriented)性。

6)Flexsim所有模型均建立和运行于耀眼的彩色3D中,采用

了与先进的视频游戏相同的虚拟现实技术。

--通过简单的点击和拖动,可从任何角度观看模型。

--通过“飞行漫游模块”,用户可随镜头漫游整个模型运行状况。可以任意使用全景、局部放大、侧面、反面等漫游技巧。

--多个窗口可以设置不同的视角,仿真运行时,以便同时观察系统的各部分。实现模型的规模化展现。

图-3 大规模模型全景

模型的第二层情景模型的第一层情景

7)Flexsim能利用包括最新的虚拟现实图形在内的所有PC上

可用的图形。如果是扩展名为3DS、VRML、DXF和STL的3D 立体图形文件的话,可以直接导入Flexsim模型中,模型

中的任何部件或背景都可以通过导入图片或立体图形文件的方法替换部件或背景的图片或立体图形。

图-4 Flexsim模型

8)Flexsim是世界唯一的在图形的模型环境中应用C++ IDE和

编译程序的仿真软件。定义模型逻辑时,可直接使用C++,而且可立刻编译到 Flexsim 中。因为Flexsim 具有高度的开放性和柔韧性,所以能为几乎所有产业定制特定的模型。

9)有Flexsim版本3.0的中文版。最新版本没有中文版,是

英文版,但软件本身在建模环境中能输入中文字符,在仿真运行环境中能以标签或表格形式显示中文信息等。

图-5 Flexsim最新版报表中显示的中文信息10)Flexsim尽管能同时打开多个窗口,但模型是在集成统

一的开发环境中,这种开发环境具有两种表现形式,一种

是3D或2D的视景环境,一种是树结构的纯文本环境。它是同一个东西,不同表现形式,方便建模和调试。Flexsim 建模环境同时支持仿真模型的运行、调试等功能。

11)Flexsim全部模块是在Windows系列版本的操作系统上

运行,包括Windows 2000各版本、Windows XP各版本、Windows 2003各版本以及Windows Vista各版本。软件操作风格上具备典型的Windows操作风格,具备菜单、工具条以及复制、粘贴等操作。

12)Flexsim提供较为详细的通用格式的技术帮助文件(文

件格式为*.HTML)。在软件中也有帮助菜单,有查询功能。

13)开放性和互联性是Flexsim体系架构的一个特点。

Flexsim完全与C++ 相结合,用户可以随时修改Flexsim 满足其特定需求,而不必学习专有代码。Flexsim能够链接到任何ODBC数据库(像Oracle.or Access.)和大众数据结构文件(如text, Excel, 或 Word)。创时能公司能够提供仿真与用户异构平台的接口。

2.2 Flexsim的分析优化的功能

1)Flexsim建立模型的所有资源是对象(Objects),对象可以

是产品,模型,图表,记录,库,GUI,甚至是应用程序本身。而Flexsim的对象都可以向定制的用户公开,建模人员可以自由地操作部件、图形用户界面、菜单、选择列表和部件参数,可以在部件里增加自定义的逻辑、改变或删

掉既存的编码。所以当然允许用户根据实际需求来自定义统计分析报表。Flexsim在仿真过程中,能根据仿真进度动态显示2D和3D报表数据。

图-7 3D报表实时显示报表数据

2)Flexsim仿真的统计分析数据除在仿真运行环境内显示外,

可以直接导出EXCEL和文本文件形式的报表,提供数据库以自定义表形式储存报表。

3)Flexsim在模型运行过程中记录了所有设备的所有状态(工

作、等待、阻塞、故障等)的时间数值,以及设备加工产品的个数,用户可以自由组合和输出由这些数据组成的报表。当然提供包括设备利用率、单条模型生产线的加工总能力、单个设备的加工能力、设备状态的时长及时间比例、模型瓶颈分析等统计分析功能。

图-8 Flexsim提供的设备状态饼图

4)Flexsim提供平面和立体饼图、柱状图、折线图、海图、以

及甘特图等多种图形图表,支持数据与图表混合的统计报

表(如上图)。

5)优化模块Optquest完全集成于Flexsim中,Optquest用于

仿真优化,即找寻一组最佳的参数值(或决策变量值),以

使得目标函数最优,在仿真模型中执行优化功能。由于在

Flexsim中除了模型本身外、模型中的每个部件都提供了编

写VC++程序的接口,所以当然支持嵌入自定义的优化算法。

2.3 Flexsim的其它功能

1)层次结构 Flexsim可以让建模者使模型构造更具有层次结构。建立模型的时候,每一部件都使用继承的方法(即采

用继承结构),可以节省开发时间。Flexsim可以让用户充

分利用Microsoft Visual C++的层次体系特性。

2)量身定制软件的所有可视窗体都可以向定制的用户公开。

建模人员可以自由地操作部件、视窗、图形用户界面、菜

单、选择列表和部件参数,可以在部件里增加自定义的逻

辑、改变或删掉既存的编码,也可以从零开始完全建立一个新的部件。不论是设定的还是新创建的部件都可以保存到部件库中,而且可以应用在其它模型中。最重要的是,在Flexsim中可以用C++语言创建和修改部件,同时,利用C++可以控制部件的行为活动。Flexsim的界面、按钮条、菜单、图形用户界面等都是由预编译的C++库来控制的。

3)可移植性因为Flexsim的部件是向建模者公开的,所以部件可以在不同的用户、库和模型之间进行交换。可移植性与量身定制相结合能带来惊异的建模速度。定制的部件保存在部件库中,建模时,只要从部件库中拖放相应部件,就能在新模型中再现这些部件。可移植性与量身定制延长了部件和模型双方的生命周期。

4)仿真实验 Flexsim 能一次进行多套方案的仿真实验。这些方案能自动进行,其结果存放在报告、图表里,这样我们可以非常方便地利用丰富的预定义和自定义的行为指示器,像用处、生产量、研制周期、费用等来分析每一个情节。同时很容易的把结果输出到象微软的Word、Excel 等大众应用软件里,利用ODBC(开放式数据库连接)和DDEC(动态数据交换连接)可以直接对数据库进行读写数据。

5)统计分析自带随机变量发生器,能容易地建立近似于现

实系统的数学模型。提供了25种以上的统计分布函数,

集成了ExpertFit ,具有拟合统计分布函数的功能。

技术支持:Flexsim 中国唯一代理商 北京创时能科技发展有限公司

第五章 Flexsim 相关的概念及关键技术研究

5.1 Flexsim 软件介绍

Flexsim 是由美国的Flexsim Software Production 公司出品的,是一款商业化离散事件系统仿真软件。Flexsim 采用面向对象技术,并具有三维显示功能。建模快捷方便和显示能力强大是该软件的重要特点。该软件体供了原始数据拟合、输入建模、图形化的模型构建、虚拟现实显示、运行模型进行仿真试验、对结果进行优化、生成3D 动画影像文件等功能,也提供了与其他工具软件的接口。图5-1是Flexsim 软件及其构成模块的结构图[7]。

图5-1 Flexsim 功能结构图

Flexsim 提供了仿真模型与ExpertFit 和Excel 的接口,用户可以同过ExperFit 对输入数据进行分布拟合,同时可以在Excel 中方面地实现和仿真模型之间的数据交换,包括输出和运行模型过程中动态修改运行参数等。另外该软件还提供了优化模块Optquest ,增加了帮助迅速建模的Microsoft Visio 的接口。

5.1.1 Flexsim软件的主要特点

Flexsim仿真软件的特点主要体现在采用面向对象技术,突出3D显示效果,建模和调试简单开放方便,模型的扩展性强,易于和其他软件配合使用等方面。

(1)基于面向对象技术建模

Flexsim中所有用来建立模型的资源都是对象,包括模型、表格、记录、GUI等。同时,用户可以根据自己行业和领域特点,扩展对象,构建自己的对象库。面向对象的建模技术使得Flexsim的建模过程生产线化,对象可以重复利用,从而减少了建模人员的重复劳动。

(2)突出的3D图形显示功能

Flexsim支持OpenGL技术,也支持3ds、wrl、dxf和stl等文件格式。因此用户可以建立逼真的模型,从而可以帮助用户对模型有一个直观的认识,并帮助模型的验证。用户可以在仿真环境下很容易地操控3D模型,从不同角度、放大或缩小来观测。

(3)建模和调试的方便

建模过程中用户只需要从模型库中拖入已有的模型,根据模型的逻辑关系进行连接,然后设定不同对象的属性。建模的工作简单快捷,不需要编写程序。

(4)建模的扩展性强

Flexsim支持建立用户定制对象,融合了C++编程。用户完全可以将其当作一个C++的开发平台来开发一定的仿真应用程序。

(5)开放性好

提供了与外部软件的接口,可以通过ODBC与外部数据库相连,通过socket接口与外部硬件设备相连,与Excel、Visio等软件配合使用。

5.2 Flexsim的一些重要概念

Flexsim是目前国内最新的仿真软件,关于该软件的资料和使用经验还很少。作者是在不断的摸索中学习的,所以希望本文能对其他人有一定的借鉴。要完全掌握好Flexsim,并将其用到我们的工作、学习和研究当中,理解该软件的一些重要概念和思想是很重要的,本节针对集装箱码头建模仿真中用到的技术做一个梳理。

5.2.1 面向对象的思想

相对于目前的一些仿真软件(如Witness, eM-Plant等),Flexsim是采用面向对象思想和技术开发的,其本身更是用C++语言实现。严格地说该仿真软件包括了两部分,仿真软件和后台支持环境VC++.NET。由于C++是一种面向对象的语言,所以使用Flexsim软件,从用户用于系统建模,或是做一些二次开发,这些工作都有面向对象思想的体现。可以这样说,没有领会面向对象的思想,就不能完全发挥Flexsim软件本身的特点,也就不能用其实现用户的目的。使用Flexsim软件的用户需要对C++语言有一定程度的熟悉。本节主要是解释Flexsim中所特有的一些面向对象思想,而不涉及面向对象语言的解释(关于C++语言的知识请查看相关书籍)。

对象(Object)的概念在Flexsim软件中无处不在,我们先直观的感受一下。软件的运行界面左边是一个常用的对象库(如图5-1)。库中的各种部件就是有特定功能的对象,这些对象是软件本身自带的,使用这些基本的部件对象用户可以完成大多数的仿真工作。我们使用Processor来解释一下对象的概念:我们日常所见的任何具体事物都可看作是对象,这里Processor就是一种设备,它的作用就是对经过他的物件进行一些加工,即改变物件的状态。这里我们可以将其当作现实中的设备,如机床等。

图5-1

这里我们借用C++程序设计语言中的对象的概念。对象是类的实例,类是对现实对象的抽象。类中包含了对象的数据(相当于现实对象的状态),以及对象的方法(相当于现实对象用来处理外界所给信息的方法)。对象封装了属性和方法,进一步到Flexsim中,对于软件中可用的库对象,他们本身有自己的属性(如颜色,尺寸,位置等),还有处理物件的方法。在使用软件的过程中,我们完全可以以人们平时的思维方式来思考,而无须过多的抽象化,这也就是面向对象方法的优点。

5.2.2 Flexsim的对象层次结构

面向对象方法的一个优点是类与类之间可以有继承关系,对象的继承性给我们提供了更大的柔性来扩展我们自己的对象,即衍生出新的对象。在Flexsim中我们可以充分利用继承性来开发我们自己的对象,而软件本身也给用户提供了这样的机制。Flexsim本身的库对象是高度抽象化的,具有很强的通用性,几乎涵盖了仿真中可能遇到的所有对象。这些对象之间有一定的继承关系,他们之间存在着逻辑关系。下图(图5-2)是Flexsim中对象的层次结构。

图5-2

从类的派生关系图中我们可以对Flexsim中各种对象的逻辑关系一目了然。对象库中的对象分为两种,一种是从FixedResource中派生下来的,另一种是TaskExecuter中派生下来的。通过分析我们不难发现,从FixedResource中派生来的对象有一个共同的特点,其本身是不会运动的,他们的作用只是产生或消除物件、存储物件、加工物件等等;从TaskExecuter 中派生的对象,其本身是可以运动的,其作用是将物件从一个地点运送到另一个地点。

当现有的库对象不能满足用户的需要时,用户就需要创建自己的对象。Flexsim为用户提供了这样一种机制——用户可以定制自己的库对象。在对象层次图中,我们看到有两个虚线框,这表示用户可以从FixedResource和TaskExecuter中派生出自己的对象。Flexsim的早期版本中从这两个类中派生新的对象比较复杂,最新的3.06版中增加了BasicFR和BasicTE 类,使用户的开发工作更容易。后面的章节中将具体介绍怎样来实现一个新对象的定制。

5.2.3 节点和树

在介绍树结构之前,我们先来了解Flexsim中节点(node)的概念。

节点是树结构的最基本的组成单元,他们组成了链接的层次。所有的节点都有一个文本缓冲区,用来保存节点的名字。节点可以是其他节点的容器,可以是用来定义一个对象属性的关键字,或是拥有一个数据项。属于一个节点的数据项类型可能是:数值(number),字符串(string),对象(object),或指针(pointer)。

下面列出FLexsim中不同类型的节点标志:

标准(Standard):

对象(Object):

属性/变量(Attribute/Varibale):

函数(Function(C++)):

函数(Function(FlexScript)):

用户可以在对象的树结构中任意地操作节点,例如增加节点,删除节点,改变节点所包含的值等。含有对象数据(Object)的节点可能包含有节点的子列表。含有对象数据的节点

称之为对象节点。当你单击一个对象节点时,你会看到在节点的左边有一个大于号(>)。

单击>将打开对象数据的树分支。如果一个节点包含子节点,可以按下+按钮来展开。如果一个节点包含对象数据,可以按下>来展开。

下图(图5-3)展示了一个队列(Queue)展开的对象数据树。

图5-3

树结构(tree)是一种很常用的数据结构。Flexsim仿真模型中的对象,或对象中的属性和方法节点等都是树结构;用户甚至可以直接在树结构中操作对象。在Flexsim中有两个主要的对象类型:模型(Model)或仿真对象(Simulation Object)和视图对象(View Object)。两种类型都有对象数据树,包含了属性和行为控件。一个对象节点的对象数据树中的节点可以作为属性、变量或成员函数。也有只是作为简单的容器来包含节点以达到组织的目的。5.2.4 任务序列

任务序列(Task Sequences)是Flexsim仿真软件中的核心机制。各种复杂仿真的实现很大程度取决于怎样实现任务序列。前面介绍了Flexsim中有两种对象,一种是派生至FixedResource的静态对象(即对象本身不运动);另一种是派生至TaskExecuter的动态对象(即对象本身可运动)。如果用户建立的系统模型全部使用了静态对象,那么就不需要任务序列的机制,但是这种情况几乎没有。使用动态对象搬运物件,对象怎样运动,实现什么样的功能等,这就需要任务序列来控制。

任务序列是由TaskExecuter执行的一组命令序列。这里TaskExecuter涵盖了所有派生自他的动态对象,如Operators,Transpoters,Crane,ASRSvehicle,Robots,Elevators以及其他可运动的对象。图1-4表示一个任务序列,该任务序列有多个任务组成。

Simulation Time

P1: Priority Value

P2: Preempt Value

图1-4

Flexsim中为用户提供了功能齐备的任务类型。常用的任务序列有:TASKTYPE_TRA VEL、TASKTYPE_LOAD、TASKTYPE_UNLOAD、TASKTYPE_TRA VELTOLOC等。不同的任务序列有不同的设置参数,用户可以根据需要在使用的时候查询帮助文档。

5.2.4.1 默认任务序列

FixedResource为了将物件(item)移至下一个站点(station),有一个创建任务序列的默认机制。FixedResource对象的参数对话框中一个通用的“Flow”选项页,选择其中的“Use Transport”复选框,这样就可创建默认的任务序列。对于Processor对象,还可以自动创建对Setup time/Process time/Repair operation的任务序列。

当仿真运行时,这些自动创建的任务序列就会传递给与其中心端口相连的动态对象来执行。这里给个简单的例子说明。假设用户选择了Queue对象参数对话框的“Flow”选项页中的“Use Transport”复选框,当系统运行时,产生了如下任务序列:

当Operator收到该任务序列时,顺序地执行任务序列中的每个任务,执行过程如下:Operator先移动到Queue处(Travel);接着拿起物件(Load);然后移动到下一个站点处(Travel);最后放下物件(Unload)。

在仿真运行的任意时刻,一个TaskExecuter只能执行一个任务序列,而此时FixedResource可能创建了许多任务序列,这些未执行的任务序列被放置在缓存队列中等待执行。

5.2.4.2 定制任务序列

一般情况下,默认的任务序列就可以满足仿真要求。有时候用户需要为某些特定的工艺、多个设备的组合操控灯定制任务序列。这里分三种介绍定制任务序列,第一种是创建最简单的、只分配给一个对象执行的任务序列;第二种是由多个对象协同作业的任务序列。

定制简单任务序列

使用3条命令来创立任务序列,命令执行的顺序如下:

createemptytasksequence(…);

inserttask(…);

dispatchtasksequence(…);

从函数名就可以看出创建任务序列的过程。首先创立一个空的任务序列,然后在此任务序列中插入具体的任务,最后发布该任务序列。我们举个简单的例子,叉车运动到集装箱旁边,然后装载集装箱。在这个过程中,涉及了两个任务:运动(TASKTYPE_TRA VEL)和装载(TASKTYPE_LOAD)。具体实现如下:

fsnode* new_ts = createemptytasksequence(forklift, 0, 0);

inserttask(new_ts, TASKTYPE_TRA VEL, station);

inserttask(new_ts, TASKTYPE_LOAD, item, station, 2);

dispatchtasksequence(new_ts);

这里叉车(forklift )是任务序列的执行者,我们为其创建了一个新任务序列(new_ts ),在此任务序列中插入具体的任务(TRA VEL/LOAD ),最后发布任务序列。

我们在创建新任务序列时,createemptytaskseqence 函数的第一个参数forklift 可以是该任务序列的执行者,或者是Dispatcher 对象。关于Dispatcher 对象的作用下一小节有具体的介绍。后两者参数决定了该任务序列的优先级别,我们可以根据任务的紧急程度来定义任务序列的执行顺序。

Inserttask 函数插入具体的任务类型。第一个参数表示该任务所属的任务序列。前面提过不同的任务类型有着不同的代码,以及不同的参数选择。这些参数分别是:Task Type/involved1/involved2/var1/var2/var3,有些参数是选择性的,这要根据任务类型来决定。这里以TASKTYPE_LOAD 为例,图1-5表示了不同参数的意义。用户可以根据所示规则查询具体的任务的参数选项。

图1-5 任务Load 的参数含义

● 协同作业的任务序列

协同作业的情况有很多,比如叉车作业需要一个司机来操控,或者一件物品需要两个人来同时搬运等。在Flexsim 中叉车、人都是可运动对象,要实现协同作业的任务序列相对于只对一个对象创建任务序列要复杂许多。我们以叉车和司机的协同工作为例来说明怎样实现协同作业的任务序列。

我们先来分解任务的执行过程:1)人运动到叉车上(Travel );2)人进入驾驶室(这里是叉车的动作)(Load );3)叉车运动到指定地点(Travel );4)叉车装载货物(Load );

5)叉车运动到卸载点(Travel );6)卸载货物(Unload )。图1-6是叉车和人的任务序列。

图1-6 协同任务序列

Forklift Operator

从图中可以看出,叉车在人到达之后才执行任务,人进入叉车之后就随着叉车一起完成叉车的任务。人的任务序列中只有一个任务,其他时间不做任何事情。

在Flexsim中实现的代码要复杂一些,调用的函数与前面所讲的函数不同。涉及的函数主要有:

createcoordinatedtasksequence(…);

insertallocatetask(…);

insertproxytask(…);

insertsynctask(…);

insertdeallocatetask(…);

dispatchcoordinatedtasksequence(…);

一个协同作业的任务序列的定制是很复杂,也是很容易出错的。在开始实现之前必须分析清楚作业的过程。对于前面人操控叉车的例子我们已经将作业流程分析清楚了,下面是具体的实现,我将每个函数的功能写在程序的注释当中。

//创建协同任务序列

fsnode * myts = createcoordinatedtasksequence(operatorteam);

//为每个执行对象分配任务

int opkey = insertallocatetask(myts, operatorteam, 0, 0);

int forkliftkey = insertallocatetask(myts, forkliftteam, 0,0);

//人的分派任务序列

int traveltask = insertproxytask(myts, opkey, TASKTYPE_TRA VEL, forkliftkey, NULL);

insertsynctask(myts, traveltask);

//叉车的分派任务序列

insertproxytask(myts, forkliftkey, TASKTYPE_MOVEOBJECT, opkey, forkliftkey);

insertproxytask(myts, forkliftkey, TASKTYPE_TRA VEL, loadstation, NULL);

insertproxytask(myts, forkliftkey, TASKTYPE_LOAD, item, loadstation);

insertproxytask(myts, forkliftkey, TASKTYPE_TRA VEL, unloadstation, NULL);

insertproxytask(myts, forkliftkey, TASKTYPE_UNLOAD, item, unloadstation);

//释放分派的任务序列

insertdeallocatetask(myts, forkliftkey);

insertdeallocatetask(myts, opkey);

//发布协同任务序列

dispatchcoordinatedtasksequence(myts);

5.2.4.3 对象Dispatcher及任务序列的分配规则

现在考虑一种较为复杂的情况:有两个Queue对象用于存放物件,三个Operator对象用于搬运物件;三个Operator是自由的,没有被分配给固定的Queue,那么怎样来有效地调用这三个Operator呢?此时就要用到Dispatcher对象。

Dispatcher用来控制一组Transporter或Operator。任务序列从一个静态对象发送到Dispatcher,然后Dispatcher来调配这些任务序列分配给与其输出端口相连的动态对象。动态对象接收到任务序列后执行相应的命令序列。

Dispatcher对象的功能就是将任务序列进行队列存储和发送任务序列。根据用户建模的逻辑,任务序列可以被排队等待或是立即传送个相应的对象。Dispatcher的参数设置对话框只有两项,当接收到一个任务序列时,调用“Pass To”函数。顾名思义,该函数将任务序列发送给接收对象;如果该函数返回值是0,即该任务序列不能被立即分配,则根据“QueueStrategy”定义的规则将任务序列放入队列中等候。QueueStrategy函数返回任务序列的相关值,然后根据优先级来确定任务序列在队列中的位置。高优先级的任务序列放在队列的前面,低优先级的放在队列的后面。如果优先级相同,则根据队列的先进先出(FIFO)原则来处理。用户可以根据需要,动态的改变任务序列的优先级。

物流系统flexsim仿真实验报告

物流系统f l e x s i m仿真 实验报告 文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

广东外语外贸大学 物流系统仿真实验 通达企业立体仓库实验报告 指导教师:翟晓燕教授专业:物流管理1101

目录

一、企业简介 二、通达企业立体仓库模型仿真 1.模型描述: 仓储的整个模型分为入库和出库两部分,按作业性质将整个模型划分为暂存区、分拣区、储存区以及发货区。 入库部分的操作流程是: ①.(1)四种产品A,B,C,D首先到达暂存区,然后被运 输到分类输送机上,根据设定的分拣系统将A,B,C,D分拣到 1,2,3,4,端口; ②.在1,2,3,4,端口都有各自的分拣道到达处理器,处理 器检验合格的产品被放在暂存区,不合格的产品则直接吸收掉; 每个操作工则将暂存区的那些合格产品搬运到货架上;其中,A, C产品将被送到同一货架上,而B,D则被送往另一货架; ③.再由两辆叉车从这两个货架上将A/B,C/D运输到两个 暂存区上;此时,在另一传送带上送来包装材料,当产品和包装 材料都到达时,就可以在合成器上进行对产品进行包装。 出库部分的操作流程是:包装完成后的产品将等待被发货。 2.模型数据: ①.四种货物A,B,C,D各自独立到达高层的传送带入口端:

A:normal(400,50)B:normal(400,50)C:uniform(500,100)D:uniform(500,100) ②.四种不同的货物沿一条传送带,根据品种的不同由分拣 装置将其推入到四个不同的分拣道口,经各自的分拣道到达操作 台。 ③.每检验一件货物占用时间为60,20s。 ④.每种货物都可能有不合格产品。检验合格的产品放入检 验器旁的暂存区;不合格的吸收器直接吸收;A的合格率为95%, B为96%,C的合格率为97%,D的合格率为98%。 ⑤.每个检验操作台需操作工一名,货物经检验合格后,将 货物送至货架。 ⑥.传送带叉车的传送速度采用默认速度(包装物生成时间 为返回60的常值),储存货物的容器容积各为1000单位,暂存 区17,18,21容量为10; ⑦.分拣后A、C存放在同一货架,B、D同一货架,之后由 叉车送往合成器。合成器比例A/C : B/D : 包装物 = 1: 1 :4 整个流程图如下: 3.模型实体设计

FLEXSIM软件在生产物流系统仿真实验报告

FLEXSIM软件在生产物流系统仿真实验报告 专业:学号:姓名: 1.FLEXSIM软件简介 Flexsim是一个强有力的分析工具,可帮助工程师和设计人员在系统设计和运作中做出智能决策。采用Flexsim,可以建立一个真实系统的3D计算机模型,然后用比在真实系统上更短的时间或者更低的成本来研究系统。 Flexsim是一个通用工具,已被用来对若干不同行业中的不同系统进行建模。Flexsim已被大小不同的企业成功地运用。使用Flexsim可解决的3个基本问题 1)服务问题 - 要求以最高满意度和最低可能成本来处理用户及其需求。 2)制造问题 - 要求以最低可能成本在适当的时间制造适当产品。 3)物流问题 - 要求以最低可能成本在适当的时间,适当的地点,获得适当的产品。 2.实验内容及目的 在这一个实验中,我们将研究三种产品离开一个生产线进行检验的过程。有三种不同类型的临时实体将按照正态分布间隔到达。临时实体的类型在类型1、2、3三个类型之间均匀分布。当临时实体到达时,它们将进入暂存区并等待检验。有三个检验台用来检验。一个用于检验类型1,另一个检验类型2,第三个检验类型3。检验后的临时实体放到输送机上。在输送机终端再被送到吸收器中,从而退出模型。图1-1是流程的框图。 本实验的目的是学习以下内容:

?如何建立一个简单布局 ?如何连接端口来安排临时实体的路径 ?如何在Flexsim实体中输入数据和细节 ?如何编译模型 ?如何操纵动画演示 ?如何查看每个Flexsim实体的简单统计数据 3.实验过程 为了检验Flexsim软件安装是否正确,在计算机桌面上双击Flexsim3.0图标打开应用程序。软件装载后,将看到Flexsim菜单和工具按钮、库、以及正投影视图的视窗。 步骤1:从库里拖出所有实体拖到正投影视图视窗中,如图1-3所示: 图1-3 完成后,将看到这样的一个模型。模型中有1个发生器、1个暂存区、3个处理 器、3个输送机和1个吸收器。 步骤2:连接端口 下一步是根据临时实体的路径连接端口。连接过程是:按住“A” 键,然后用鼠标左键点击发生器并拖曳到暂存区,再释放鼠标键。拖曳时你将看到一条黄线,

flexsim仿真模型答案

实验一流水作业线的仿真 1、先将各个实体按下图顺序布置,再进行各参数设置。 2、source,OnCreation设置两种工件,两种工件L_a、L_b,分别以正态分布(10,2)和均匀分布(20,10)min的时间间隔进入系统。 3、processor定额2分钟处理工件,并使用人工运送到下一步。 第一个Processor传送到Sink与Conveyor的比例是5:95。 4、对于第二、第三个处理器也需要修改处理时间。

5、由于运行时间较长,队列的容量不够,需要修改。 6、仿真实验数据 思考题: 1、什么单元的哪些参数可以有效反映系统生产能力平衡状况? 工件B 的速度相对于工件A慢了很多,使得设备Q_m2、M2、Q_out2的闲置时间太多,不能有效利用,且暂存区Q_in 、Q_m1、Q_out1容量相对不足,所以,需要对系统的参数进行调整。 2、根据模型运行结果对系统进行调整,比较调整前后的运行结果。 ①、将暂存区Q_in 、Q_m1、Q_out1最大容量改为25; ②、将发生器1的到达时间间隔,改为正态分布(16,1)分钟,发生器2的到达时间间隔,改为均匀分布(12,20)分钟; ③、处理器2的处理时间改为均匀分布(8,11),处理器3的处理时间改

为正态分布(12,2)。 3、学习仿真建模的心得体会。 这次的Flexsim仿真软件的使用,是我第一次真正的使用仿真软件,感觉很很有意思,所以自己一直很投入的做实验,也从这个课程设计中得到了许多收获。 首先是通过这次实验,让我了解和熟悉了Flexsim仿真软件,并初步的学会了运用该软件来模拟物流系统中所要涉及的过程及步骤。 其次,在这次课程设计中使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识,所以在这里非常感谢帮助我的同学。在此要感谢老师对我的指导和帮助。在设计过程中,我通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。 总的来说,学习Flexsim的过程是比较艰辛的。虽说事前查阅了相关书籍,但实践的时候却发现远远不止于此,上机操作时还是花了很多时间。正如我们的校训所说的那样,知行结合才能成功。要想学好这门课程,理论仅仅是一个入门基础,真正的付诸于实践才能使我们真正进入这个学科,了解它的内涵。由此推及各个学科,如果真的想有实实在在的收获的话,不仅要把理论知识学精,更要敢于动手操作,勇于去实践。

Flexsim仿真软件介绍

Flexsim仿真软件介绍 从1993年起,Flexsim软件产品就进入了仿真软件市场并且建立了自己的咨询业务。经过十多年在仿真行业的经验积累以及高新软件技术的应用,我们已经开发出了一个全新的面向对象的仿真建模工具Flexsim。它是迄今为止世界上惟一一个在图形建模环境中集成了C++IDE和编译器的仿真软件。在这个软件环境,C++不但能够直接用来定义模型,而且不会在编译中出现任何问题。这样,就不再需要传统的动态链接库和用户定义变量的复杂链接。Flexsim有很广阔的应用范围,还能应用在更高层次的仿真工程上。欢迎大家使用Flexsim,它一定会令你耳目一新! Flexsim能应用于建模、仿真以及实现业务流程可视化。下面我们简单地介绍一下Flexsim仿真软件。 一、建模 Flexsim应用深层开发对象,这些对象代表着一定的活动和排序过程。要想利用模板里的某个对象,只需要用鼠标把该对象从库里拖出来放在模型视窗即可。每一个对象都有一个坐标(x,y,z)、速度(x,y,z),旋转以及一个动态行为(时间)。对象可以创建、删除,而且可以彼此嵌套移动,它们都有自己的功能或继承来自其他对象的功能。这些对象的参数可以把任何制造业、物料处理和业务流程的快速、轻易、高效建模的主要特征描述出来。 下图是一个仓库的模型: Flexsim中的对象参数可以表示几乎所有存在的实物对象。像机器、操作员、传送带、叉车、仓库、交通灯、储罐、箱子、货盘、集装箱等等都可以用Flexsim 中的模型表示,同时数据信息也可以轻松地用Flexsim丰富的模型库表示出来。层次结构 Flexsim可以让建模者使模型构造更具有层次结构。在组建客户对象的时候,每一组件都使用了继承的方法,在建模中使用继承结构可以节省开发时间。Flexsim可以使用户充分利用Microsoft Visual C++的层次体系特性。 用户化 目前在市场上,还没有其他任何仿真软件能像Flexsim这样有更多的用户化设定。对使用者来说,软件的每一个方面都是开放式的。对象、视窗、图形用户界面、菜单、选择列表和对象参数等都是非常直观的。你可以在对象中根据自己的想法改变已经存在的代码,删除不需要的代码,甚至还可以创建全新的对象。值得一提的是,不论是你设定的还是新创建的对象都可以放入库中,而且可以应用

物流系统仿真flexsim仿真实验介绍材料

实验一flexsim基本操作和简单模拟仿真(4学时) 一、实验目的 1.了解什么是flexsim及其主要应用 2.学习flexsim软件主窗口 3.学习flexsim基本概念和专有名词 4.了解flexsim建模步骤 5.学会把现实系统中的不同环节抽象成仿真模型中的对应实体 6.初步认知flexsim模型的建立和运行 7.体会发生器、暂存区、传送带、吸收器的使用 8.体会A连接和S链接的作用 9.学会根据现实情况对相应的实体进行参数设定 二、实验内容 (一)仔细阅读教材第一部分 (二)按以下步骤建立第一个flexsim模型 1. 模型基本描述 在这个模型中,我们来看看某工厂生产三类产品的过程。在仿真模型中,我们将为这三类产品设置itemtype值。这三种类型的产品随机的来自于工厂的其它部门。模型中还有三台机器,每台机器加工一种特定类型的产品。加工完成后,在同一台检验设备中对它们进行检验。如果没有问题,就送到工厂的另一部门,

离开仿真模型。如果发现有缺陷,则必须送回到仿真模型的起始点,被各自的机器重新处理一遍。仿真目的是找到瓶颈。该检验设备是否导致三台加工机器出现产品堆积,或者是否会因为三台加工机器不能跟上它的节奏而使它空闲等待?是否需要在检验站前面添加一个缓冲区域? 虽然我们以制造业为例,但同类的仿真模型也可应用于其它行业。以一个复印中心为例。一个复印中心主要有三种服务:黑白复印、彩色复印和装订。在工作时间内有3个雇员工作,一个负责黑白复印工作,另一个处理彩色复印,第三个负责装订。另有一个出纳员对完成的工作进行收款。每个进入复印中心的顾客把一项工作交给专门负责该工作的雇员。当各自工作完成后,出纳员拿到完成的产品或服务,把它交给顾客并收取相应的费用。但有时候顾客对完成的工作并不满意。在这种情况下,此项工作必须被返回相应的员工进行返工。此场景与上面描述的制造业仿真模型相同。但是,在此例中,你可能更多关注在复印中心等待的人数,因为服务速度慢,所以复印中心的业务成本高昂。 这个仿真模型也适用于运输业。商业运输卡车通过一座桥从加拿大行驶到美国去,进入美国之前还要过海关。司机首先要取文件,然后通过安检。有三种类型的卡车。每种卡车的司机需要填写的文件不同,所以必须向不同的海关部门索取。文件填写完成后,所有类型的卡车都在同一个安检站进行安检。如果未通过检查,就必须填写更多的文件。这个情况中包含的仿真元素与上面的制造业例子完全相同,在此案例中,你可能会对桥梁上排队的卡车数量感兴趣。如果整个桥上车辆排队几英里,并且造成交通堵塞,那么你就需要对海关的工作进行优化了。

Flexsim仿真学习(新手)

Flexsim仿真学习 一、序言——学习方法 1、准备 2、入门 3、深入 4、高级 5、集大成 二、系统仿真基础知识 1 、系统仿真的基本概念 系统、模型和系统仿真 系统式相互联系、相互作用的对象的组合。可以分为工程系统和非工程系统。 系统模型是反映内部要素的关系,反映系统某昔日方面本质特征,以及内部要素与外界环境关系的形同抽象。模型主要分为两大类:一类是形象模型;二类是抽象模型,包括概念模型、模拟模型、图标模型和数学模型等 重点描述一下数学模型 (1)按变量分为随机模型和确定模型; (2)按变量之间的关系分为线性模型和非线性模型; (3)按变量取值分为连续模型和离散模型; (4)按时间分为静态模型和动态模型; (5)按功能用途分为结构模型、评价模型、工程模型和预测模型等。 系统仿真方法是:系统模型建立后,在模型上对系统进行实验研究的方法。 随机变量的产生方法: a) 逆变换法 b) 卷积法 c) 合成法 d) 取舍法 e) 函数变换法 随机数性能测试: (1)X2测试 (2)运行测试 (3)自相关测试 2 、离散事件系统仿真 2.1、离散事件系统基本要素 离散事件系统式指状态变量随时间呈离散状态变化的系统。可以形式化的表现为: M={T,U,X,Y,Ω,λ} T为时间基;U为状态变量;X为输入变量;Y为输入变量;Ω为状态转移函数;λ状态空间。离散事件系统的描述需要5个基本要素:实体、属性、事件、活动、进程。 1、实体(单元)。在离散事件中实体分为永久实体和临时实体两类。凡是在系统仿真器件流经系统,在仿真结束时已经离开系统的实体都称为临时实体。凡是在系统仿真期间自始自终停留在系统中的实体都称为永久实体。 2、属性。实体所具有的特性称为实体的属性。实体可能具有很多特征,但是并不是所有特征都是实体的属性,只有那些与系统仿真相关的特征才称为属性。 3、事件。在离散事件系统仿真中,有两种事件:一种是引起系统状态变化的行为。这类事件是系统所固有的,使系统状态变化的主要驱动力。另一种事件就是程序事件。如,在仿真

Flexsim系统仿真软件介绍

集可视化、建模和仿真于一体的软件

下一代离散事件仿真软件 过程仿真的未来已经来到。Flexsim是一个基于Windows的,面向对象的仿真环境,用于建立离散事件流程过程,像是制造业,物料处理和办公室工作流,这些全都配以令人瞠目结舌的三维虚拟现实环境。 完全基于面向对象,彻底整合C++ 使用拖放方式图形化创建模型 效果卓越的三维虚拟现实动画 异常直观,易学易用的操作界面 无以伦比的灵活性与功能 经验与创新相结合 Flexim代表了过去十年仿真软件最重要的创新。Flexsim是由使用最前沿的仿真软件达二十年的工程师采用当今最新的技术完全重新开发的。Flexsim将你从老旧、过时的仿真软件所固有的限制中解放出来,并赋予你完善的功能,灵活性以及与时下各种工具的交互性。为今天也是为未来所造,Flexsim将开放和灵活的概念推广到极致,使得今天无法想象的事物在明天得以创建!

为不可预期的风险而准备 Flexsim就是所需的理想工具,帮助工程师,经理和决策者形象化地在动态三维虚拟现实环境中检测新提议的操作,流程或是系统。这对于创建那些可能出现崩溃,发生中断或是产生瓶颈的复杂系统是必不可少的。通过预先创建系统模型,可以考察各种假设的场景,同时不会产生改变实际系统时所面临的中断,成本和风险。 广阔的应用领域 Flexsim可以应用于范围广泛的系统和过程中,例如: 制造业 半导体芯片制造 肉食包装工厂中的牛肉处理 钢铁制造 果酱成品的罐装,标签,包装,发货 电子器件制造

仓储和配送 港口集装箱船只的装卸 配送中心操作 订单取货 传输带系统和布局 物流货架,传送带和堆垛机 运输 高速路交界处的交通流 火车站中人群和列车的移动 河流中驳船的往来穿梭 国际边防路口的交通堵塞

Flexsim(仿真软件)中文版教程

教程 本基础教程将带你一起完成建立过程流、创建模型、输入数据、查看动画、以及分析输出结果的各个步骤。每一节课都是基于上一节内容的,所以学完一节课要消化它,才能进入下一节课。每节课大约需要至少45分钟的时间。在第二课的最后还包括一个提高环节,可以为你的模型增色。本教程包括下列课程; 第一课:建立一个处理3种不同临时实体类型的简单模型。每种临时实体的路径都不同。本模型中使用的实体包括发生器、暂存区、处理器、输送机和吸收器。对模型表现的基本统计做了介绍,也介绍了每一实体的参数选项。 第二课:使用第一课中建立的模型。用户添加操作员和运输机。介绍实体的属性界面,进一步讨论附加统计分析。 第二课提高内容:完成第二课之后,介绍如何使用记录器实体向模型添加3D图表和图形。同时也介绍了如何使用可视化工具添加3D文本。 第三课:使用第二课中的模型,用户将要添加货架和网络路径。将会添加高级统计功能和模型逻辑编程功能。同时也将使用表来读取和写入数据。 每一课将会按照下列格式: 1. 介绍 2. 本课学习内容 3. 估计完成时间 4. 模型描述 5. 模型数据 6. Flexsim软件概念学习 7. 逐步模型构建 如果学习此课程有任何问题,请联系我们的技术团队。Flexsim技术支持的电话是801-224-6914(美国),或者发邮件到 support@https://www.360docs.net/doc/428338574.html,. 希望你在学习如何使用flexsim来优化你们的流程的过程中感到愉快。 重要提示:你必须在电脑上安装Visual C++.NET编译程序,否则此Flexsim软件将不会正确工作。flexsim 评估版本附带的编译器并不具备与Microsoft Visual C++零售版本同样的能力。如果你没有Visual C++ .NET,在购买Flexsim软件时,你可以选择捆绑购买Visual C++和Flexsim软件。 1

基于Flexsim的自动化立体仓库仿真设计毕业设计论文

基于 Fl exs i m的自动化立体仓库仿真设计 摘要 随着计算机信息技术的发展和竞争的日益加剧,市场对企业物流系统提出了新的要求,自动化立体仓库受到了越来大的关注并得到广泛应用。其运营效率的研究也成为企业关注的焦点。Fl exs i m软件针对离散系统的建模和仿真,是自动化立体仓库仿真规划的理想选择。物流仿真利用计算机技术来模拟真实的物流系统,通过仿真活动和过程来验证物流项目建设的有效性,合理性和优化的效果。本文以一个公司的自动化立体仓库为例,根据自动化立体仓库基本组成和工作过程,进一步探究采用Fl exs i m 软件进行建模仿真的一般方法。通过仿真自动化立体仓库物流系统,对仓库物流过程进行整体分析。根据各部分不同的运行特点,对仿真的整个流程进行研究,找出其不合理的地方并对其进行优化,结果显示优化后仓库作业效率得到提高。 关键词:自动化立体仓库;Fl exs i m;建模;仿真

AS/RS Si mul a t i on D e s i gn Ba s ed on Fl exs i m ABSTRACT W i t h t he devel opme nt of comput er i nf or m a t i on t echnol ogy and t he i ncr eas i ng compe t i t i on, m a r ket has put new de m a nds on ent er pr i s e l ogi s t i cs s ys t em a nd t he AS/RS i s pai d mor e a nd mor e a t t ent i on and wi del y us ed. The r es ea r ch of i t s oper a t i ona l ef f i c i ency ha s a l s o become t he f ocus of ent e r pr i s e . Fl exs i ms of t wa r e , whi ch i s f or di s cr e t e s ys t em mode l i ng and s i mul a t i on, i s a good choi ce f or AS/RS s i mul a t i on pl a nni ng. Logi s t i cs s i mul a t i on us e comput er t echnol ogy t o s i mul a t e t he r eal l ogi s t i cs s ys t em t hr ough s i mul a t i on a ct i vi t i es and pr oces s es and t hen ver i f y t hat t he cons t r uct i on of t he l ogi s t i cs pr oj ect ef f ect i venes s , r a t i ona l i t y and opt i m i zat i on of t he ef f ect . Thi s paper t a kes an a ut oma t ed wa r ehous e of one compa ny as an exa mpl e t o f ur t her expl or e t he gener a l m e t hod of us i ng t he Fl exs i m mode l i ng and s i mul a t i on, bas ed on t he bas i c compone nt s a nd wor k pr oces s es of t he AS/RS. W a r ehous e l ogi s t i cs pr oces s i s anal yzed a s a whol e t hr ough t he s i mul a t i on of AS/RS l ogi s t i cs . Ba s ed on t he va r i ous oper a t i ng char act er i s t i cs , r es ear ched on t he s i mul a t i on of t he over a l l pr oces s , i dent i f i ed t he unr eas onabl e pl ace and t hen opt i m i zed i t , t he r es ul t s s how t ha t t he ef f i c i ency of wa r ehous e oper a t i ons i s i mpr oved a f t er opt i m i za t i on.

Flexsim系统仿真在物流中的应用综述

Flexsim系统仿真在物流中的应用综述 摘要:物流仿真借助计算机技术对物流系统进行真实模仿,通过仿真实验得到各种动态活动及过程瞬间仿效记录,进而验证物流工程项目建设的有效性、合理性和优化效果。本文通过对Flexsim软件在物流配送中心、自动化立体仓库、物流仓储系统、生产线管理等多方面的应用进行综述,借此反映Flexsim软件系统仿真在物流发展现状以及带来的强大、灵活、可靠的决策效果。 关键词:FLexsim系统仿真物流 引言:系统仿真是系统分析的有效工具,它以建模理论、计算方法、评估理论为理论基础;以计算机技术、网络技术、图形图像技术、多媒体技术、软件工程、信息处理、自动控制及系统工程等相关技术为支撑。本文通过对Flexsim仿真在物流多个领域的应用研究以及现有的研究设计成果,我们认为Flexsim 等模拟设计软件还有很大的潜力可以挖掘,若能充分地应用于实际,将会给企业和社会带来极大的效益。 一、Flexsim 系统仿真 (一)、Flexsim 系统仿真软件简介 Flexsim 由位于美国犹他州奥勒姆市的Flexsim Software Products 公司出品,是一款商业化离散事件系统仿真软件。Flexsim 已成功地应用在多个领域,特别适合于生产制造、仓储配送、交通运输等物流系统领域。Flexsim采用面向对象技术,并具有3D 显示功能。建模快捷方便和显示能力强是Flexsim 仿真软件的重要特点。该软件提供了原始数据拟合、输入建模、虚拟现实显示、运行模型进行仿真实验、对结果进行优化、生成3D 动画影像文件等功能,也提供了与其他工具软件的接口。Flexsim 提供了仿真模型与ExperFit 和Microsoft Excel 的接口,通过ExperFit对输入数据进行分布拟合,可以同时在Microsoft Excel 中方便地实现和仿真模型之间的数据交换,包括输出在运行模型过程中动态修改的运行参数。 (二)、Flexsim 系统仿真软件步骤 物流系统仿真一般步骤为调研系统、建立系统模型、确定仿真算法、建立仿真模型、运行仿真模型、仿真结果分析、仿真结果输出、系统方案分析、修改系统参数、重复仿真运行和分析,直至仿真结束。具体步骤见下图:

Flexsim系统仿真软件介绍

1 Flexsim系统仿真软件概况 Flexsim 是PC Base的数字虚拟企业的仿真系统,来建立各种经营、管理、制造等模型,并且可在微软公司的Windows 2000、Windows XP、及Vista 等不同作业平台上执行的全窗口化3D专业仿真软件。Flexsim是新一代的面向对象的仿真建模工具,它是迄今为止世界上唯一一个在图形建模环境中集成了C++IDE和编译器的仿真软件。在这个软件环境,C++不但能够直接用来定义模型,而且不会在编译中出现任何问题。这样就不再需要传统的动态链接库和用户定义变量的复杂链接。它能使决策者轻易地在个人电脑中建构及监控任何工业及企业的分散式流程。透过Flexsim我们可以率先找出未来工业及企业流程的模式。Flexsim基础架构设计不只是要满足使用者现今的需求,其架构的概念更是为了企业的未来而准备。 Flexsim就是帮助工程师,经理和决策者形象化地在动态三维虚拟现实环境中检测新提议的操作,流程或是系统。这对于创建那些可能出现崩溃,发生中断或是产生瓶颈的复杂系统是必不可少的。通过预先创建系统模型,可以考察各种假设的场景,同时不会产生改变实际系统时所面临的中断,成本和风险。 Flexsim不仅已应用于工业自动化仿真、物流中心配送仿真、交通运输仿真、交通流量管制仿真、医疗管理研究、医院动线规划仿真等民用工程,也已经应用于先进国防战略仿真、航天制程仿真等大型研究方向。 主要的应用领域:

制造业: 半导体芯片制造、肉食包装工厂中的牛肉处理、钢铁制造、果酱成品的罐装,标签,包装,发货、电子器件制造、 仓储和配送: 运输: 高速路交界处的交通流、火车站中人群和列车的移动、河流中驳船的往来穿梭、国际边防路口的交通堵塞 其他: 矿石开采和加工、快餐店中食物准备和客户服务、参观者在娱乐场所内的活动、喷气式飞机引擎的拆卸,翻新和更换、医院中病人和食物的处理、共享的网络存储器中数据的流动、银行处理中心中支票的处理。 2 Flexsim仿真功能 2.1 Flexsim建模的功能 1)Flexsim具有离散型和连续型的混合建模功能。软件本身 更多的是离散型仿真方面应用,但它支持连续型生产建模, 它有专门的流体部件库,有很多应用于炼钢厂、塗料生产 厂及石油输送的成功案例。 图-1 Flexsim连续型生产模型之一 2)Flexsim提供平面与三维建模窗口,可以直接将AutoCAD的 平面布置图导入建模窗口,可完全遵循平面布置图的距离 关系建立平面模型,平面模型只要换一个窗口,或换一个

Flexsim仿真实验报告

集美大学 实验课程:F l e x s i m仿真实验姓名?阮达毅 学号?2007956028 班级?物流0791班 学院?航海学院 报告成绩?

实验项目1混合流水线系统仿真与分析 1建立概念模型 1.1概念定义 多对象流水线生产有良种基本形式。一种是可变流水线?其特点是?在计划期内?按照一定的间隔期?成批轮番生产多种产品?在间隔期内?只生产一种产品?在完成规定的批量后?转生产另一种产品。另一种是混合流水线?其特点是?在同一时间内?流水线上混合生产多种产品?按固定的混合产品组组织生产?即将不同的产品按固定的比例和生产顺序编成产品组。一个组一个组地在流水线上进行生产。 1.2模型描述 一个工厂有5个不同的车间?普通车间?钻床车间?铣床车间?磨床车间?检测车间??加工3种类型产品。每种产品都要按工艺顺序在5个不同的车间完成5道工序。 假定在保持车间逐日连续工作的条件下?仿真在多对象平准化中生产采用不同投产顺序来生产给定数量的3种产品。通过改变投产顺序使产量、品种、工时和负荷趋于均衡?来减少时间损失。 如果一项作业在特定时间到达车间?发现该组机器全都忙着?该作业就在该组机器处排入一个F I F O规则的队列的暂存区?如果有前一天没有完成的任务?第二天继续加工。1.3系统数据 普通车间钻床车间铣床车间磨床车间检测车间 机器数量33231 普通机床钻床铣床磨床检测产品155446 产品244343 产品345341 总数?个?每批量?个?时间间隔?m i n?产品11000103 产品250053 产品320023 1.4概念模型

2 建立F l e x s i m 模型 第 1步?在模型中生成所有实体? 从 左边实体库中依次拖拽出所有实体?一个S o u r c e ,5个Q u e u e ,12个P r o c e s s o r ,一个C o n v e y o r ,一个S i n k ?放在右边模型视图中?调整至适当的位置 第 2步?修改名称? 双 击左边暂存区?弹出实体属性的对话框?在名称栏里修改成相应名称 普 通机床 钻床 铣床 检 测 磨床 毛 坯 成 品

基于Flexsim的仿真实验报告

基于Flexsim的仿真实验报告 专业班级:XXXXXXX 姓名:XXX 学号:XXXXX X

4 基于Flexsim的仿真实验 1.实验报告 2.提交Flexsim的仿真图 基于Flexsim的仿真实验报告 一、实验目的与要求 1.1实验目的 Flexsim是一个基于Windows的,面向对象的仿真环境,用于建立离散事件流程过程。Flexsim是工程师、管理者和决策人对提出的“关于操作、流程、动态系统的方案”进行试验、评估、视觉化的有效工具。Flexsim 能一次进行多套方案的仿真实验。这些方案能自动进行,其结果存放在报告、图表里,这样我们可以非常方便地利用丰富的预定义和自定义的行为指示器,像用处、生产量、研制周期、费用等来分析每一个情节。同时很容易的把结果输出到象微软的Word、Excel等大众应用软件里。另外,Flexsim具有强力的商务图表功能,海图(Charts)、饼图、直线图表和3D文书能尽情地表现模型的信息,需要的结果可以随时取得。 本实验的目的是学习flexsim软件的以下相关内容: ●如何建立一个简单布局 ●如何连接端口来安排临时实体的路径 ●如何在Flexsim实体中输入数据和细节 ●如何编译模型 ●如何操纵动画演示 ●如何查看每个Flexsim实体的简单统计数据 我们通过学习了解flexsim软件,并使用flexsim软件对实际的生产物流建立模型进行仿真运行。从而对其物流过程,加工工序流程进行分析,改进,从而得出合理的运营管理生产。

1.2实验要求 (1)认识Flexsim 仿真软件的基本概念; (2)根据示例建立简单的物流系统的仿真模型; (3)通过Flexsim 仿真模型理解物流系统仿真的目的和意义 1.2.1实验2.多产品单阶段制造系统仿真与分析 某工厂加工三种类型产品的过程。这三类产品分别从工厂其它车间到达该车间。这个车间有三台机床,每台机床可以加工一种特定的产品类型。一旦产品在相应的机床上完成加工,所有产品都必须送到一个公用的检验台进行质量检测。质量合格的产品就会被送到下一个车间。质量不合格的产品则必须送回相应的机床进行再加工。 我们希望通过仿真实验找到这个车间的瓶颈所在,以回答如下问题:检验台能否及时检测加工好的产品?或者检验台是否会空闲?缓存区的大小重要吗? 该仿真模型的概念模型如下: 机台1 检验台 机台3 机台2 1类产品 3类产品 2类产品 80%不合格产品 20%不合格产品 1.2.2实验3.产品测试工艺仿真与分析 某工厂车间对两类产品进行检验。这两种类型的产品按照一定的时间间隔方式到达。随后,不同类型的产品被分别送往两台不同的检测机进行检测,每台检测机只检测一种特定的产品类型。其中,类型 1的产品到第一台检测机检测,类型 2 的产品到第二台检测机检测。产品检测完毕后,由传送带送往货架区,再由叉车送

《Flexsim仿真实验》报告

安徽工业大学管理科学与工程学院 《Flexsim仿真实验》报告 专业物流工程班级流131 姓名潘霞学号 139094152 指导老师张洪亮 实验(或实训)时间十九周

实验报告提交时间 2016年7月7日 一、实验(或实训)目的、任务 1基本掌握全局表的使用 2理解简单的仿真语言 3简单使用可视化工具 二、实验(或实训)基本内容(要点) 运用Flexsim软件了解多产品加工生产系统仿真的过程。 模型介绍: 发生器产生四种临时实体,服从整数均匀分布,类型值分别为1、2、3、4,颜色分别为绿色、蓝色、白色、黄色,进入暂存区1;临时实体到达的时间间隔exponential(0,10,0) 然后随机进入处理器进行加工,可以使用的处理器有四个,不同类型的临时实体在处理器上的加工时间不同,详情如下表: 加工时间处理器5 处理器6 处理器7 处理器8 产品1 4 6 2 5 产品2 5 3 3 5 产品3 2 4 2 2

产品4 4 6 3 6 加工结束后,进入暂存区2存放,并由叉车搬运至货架。 同时,在各个处理器附近用可视化工具显示该处理器的实时加工时间。 三、实验(实训)原理(或借助的理论) 系统仿真的基本概念 系统、模型和系统仿真 系统式相互联系、相互作用、的对象的组合。可以分为工程系统和非工程系统。系统模型是反映内部要素的关系,反映系统某昔日方面本质特征,以及内部要素与外界环境关系的形同抽象。模型主要分为两大类:一类是形象模型,二类是抽象模型,包括概念模型、模拟模型、图标模型和数学模型等。 通过Flexsim可成功解决:提高设备的利用率,减少等候时间和排队长度,有效分配资源,消除缺货问题,把故障的负面影响减至最低,把废弃物的负面影响减至最低,研究可替换的投资概念,决定零件经过的时间,研究降低成本计划,建立最优批量和工件排序,解决物料发送问题,研究设备预置时间和改换工具的影响。 Flexsim软件的基本术语:Flexsim实体,临时实体,临时实体类型,端口,模型视图。 四、所使用到的实验设备、仪器、工具、图纸或软件等 计算机 Flexsim软件 五、实验(或实训)步骤 步骤一:模型布局

1.FlexSim系统仿真软件简介

第三讲 Flexsim系统仿真软件的功能特点 从第三讲开始依次介绍物流仿真领域应用最广的一款软件Flexsim的功能特点,建模方法,以及应用案例。 一、Flexsim系统仿真软件的简介 Flexsim是一款通用离散仿真软件,被用来对若干不同行业不同系统进行建模和仿真。据粗略估计,世界500强企业中的一半为Flexsim的客户,包括通用磨坊食品公司、戴姆勒克莱斯勒、可口可乐、波音公司、通用汽车、佳能、IBM、三星、富士康等一些著名企业。物流行业包括FedEx、DHL、LSI物流、德马泰克、AE等一些著名物流或物流设备企业。 Flexsim是一套集计算机三维图像处理技术、仿真技术、人工智能技术、数据处理技术为一体,为制造、物流等领域服务。运用Flexsim系列仿真软件,可在计算机内建立研究对象的系统三维模型,然后对模型进行各种系统分析和工程验证,最终获得优化设计和改造方案。用此软件,可以快速确定物流设备导入方案或3D竟标演示方案,提高中标率;验证物流项目的可行性;提供改善和管理的基本数据,降低运营成本。 Flexsim是新一代离散事件系统仿真的有效工具。面向对象的建模方式使得建模过程更为快捷,只需通过图形的拖动和必要的附加程序就可以快速地建立起系统的模型。软件提供了丰富的物理单元,如处理器、操作员、堆垛机、货架等,大大方便了用户的建模。所建立的物理仿真模型可以用三维动画方式表现出来。三维动画模型形象、生动、逼真地表现出整个物流系统,为物流中心的规划设计或改造提供了有效的可视化手段。 目前,Flexsim软件已经在物流领域里成功地进行了多种系统的建模与仿真分析,如配送中心的拣选仿真、仓储出入库仿真、产品仓库分拣仿真、生产物流系统仿真、集装箱码头仿真、机场物流仿真等。 Flexsim研究的对象多是复杂的多目标系统。Flexsim将众多目标的不同参数组合的运行结果输出后供分析者比较,选取较优的参数组合。由于Flexsim提供了逼真图形动画显示、完整的运作绩效报告,并通过模型运行给分析者提供了各种方案相关的大量反馈信息,因此分析者可以在较短的时间内对各种方案的优劣进行比较,对各种预选方案做出评估。 使用Flexsim可以达到以下效果: (1) 提高资源(设备资源、人力资源、资金资源)的利用率; (2) 减小等待时间和排队长度; (3) 有效分配资源; (4) 消除缺货问题; (5) 把故障的负面影响减至最低; (6) 把废弃物的负面影响减至最低; (7) 研究可替换的投资概念; (8) 决定零件经过的时间; (9) 研究降低成本的计划; (10) 建立最优批量和工序排序; (11) 坚决物料发送问题; (12) 研究设备预置时间和改换工具的影响; (13) 优化货物和服务的优先次序与分派逻辑; (14) 在系统全部行为和相关作业中训练操作人员; (15) 展示新的工具设计和性能; (16) 管理日常运作决策; (17) 从历史运行中得到经验和教训。

相关主题
相关文档
最新文档