




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论第一章绪论1.1物流系统仿真原理1.2物流仿真在不同行业的应用特点1.3物流系统仿真建模技术1.4物流系统仿真常见的错误
最早的系统仿真始于20世纪40年代飞行器设计中空气动力学特性的风洞试验。随着计算机技术和卫星技术的发展,仿真技术已经广泛应用于各种生产、服务行业,其主要应用领域是复杂产品的设计与验证、复杂系统的分析与预测等。物流系统仿真(LogisticSystemSimulation)定义为:借助计算机仿真技术,对现实物流系统建模并进行实验,得到各种动态活动及其过程的瞬间仿效记录,进而研究物流系统性能的方法。第一章绪论物流系统仿真的原理是通过对现实系统进行抽象,从而在计算机中建立现实系统的仿真模型,进而通过仿真实验来分析现实系统并提供科学的方案。1.1物流仿真原理1.1物流仿真原理在没有实际系统的情况下,把系统规划方案转换成仿真模型,评价并修改规划方案,这是仿真目前在物流系统中最主要的作用。通过对物料库存、生产流程、计划调度的仿真,可以帮助管理者找到合适的管理和控制方法。通过对运输调度过程的仿真,调度人员可对所执行的调度策略进行检验和评价,从而采取比较合理的调度策略仿真技术的应用物流系统规划与设计
生产管理与控制
物料运输调度1.2物流仿真在不同行业的应用特点
物流系统是企业生产和流通领域以及整个供应链的一个重要组成部分,物流合理化是提高供应链生产率最重要的方法之一。随着数字化仿真技术的不断发展,仿真技术已经成为分析、研究各种复杂系统的重要工具,广泛用于工程领域和非工程领域。离散制造业流程工业供应链管理公共服务业军事领域物流仿真1.2物流仿真在不同行业的应用特点Descriptionofthecompany’ssubcontents
离散制造企业产品结构复杂、生产组织难,目前,物流仿真技术已经应用于离散制造业的各个方面,如在FMS仿真、AGV路线规划、库存管理仿真、设备利用率平衡、预测生产计划和生产线的布局规划等方面都有广泛的应用。
面向离散制造系统的虚拟仿真包括建模、规划和优化评价三个层次,以建模为支撑,以规划为主线,以优化为目标,形成虚拟生产系统规划方案,通过对方案的分析和对比,优化改进,最终输出生产制造系统设计的优化方案。离散制造业1.2物流仿真在不同行业的应用特点建模建模方法:面向对象的仿真建模(OOS)规划优化评价1.2物流仿真在不同行业的应用特点通过运行仿真模型来收集数据,能对实际系统进行多方面的分析,帮助了解调度方案及调度过程,也便于进行调度方案的选择,确保生产均衡、稳定、安全的运行
供应链仿真是一个新的应用领域,但目前只停留在理论研究阶段。其未来发展方向主要是在分布式仿真的支持下,增强供应链全过程的协作能力,从而提高供应链的整体效能。物流仿真技术能够很好的模拟当前城市交通情况,对其拥堵现象进行分析,还能够模拟新的道路基础设施、控制方案对交通的影响。物流仿真技术由于其具有无破坏性、可多次重复、可控、不受气候条件和场地空间的限制等十大独特优点,已经成为现代战争物资保障中必不可少的一部分流程工业供应链管理公共服务业军事领域1.3物流系统仿真建模技术建模技术三维可视化建模技术虚拟现实快速建模设备真实化流程仿真建模技术系统真实化1.3物流系统仿真建模技术1.4物流系统仿真常见的错误模型缺乏柔性行业特点不了解仿真对象选择不正确物流逻辑表达错误随机因素表达不准确第2章离散制造系统仿真案例第2章离散制造系统仿真案例离散制造系统仿真特点分析2.1办公桌组装线仿真案例2.2柔性生产线仿真案例2.3小结2.4离散制造业的生产特点是产品品种多、制造流程复杂,每一道工序都需在物料、加工工具、人员、生产任务、技术条件等齐备的前提下才可进行,而且在加工过程中存在不确定性,并可能会出现次品和返修,而这种不确定性又会进一步影响生产流程和生产效率。
因此,除一些特定的环境,如新建车间,离散制造系统会有三维仿真可视化的需求外,其他更多的是采用流程仿真技术模拟制造流程,并通过仿真来掌握制造系统的特点和规律。
2.1离散制造系统仿真特点分析2.2办公桌组装线仿真案例2.2.1案例分析2.2.2办公桌建模过程2.2.3仿真分析2.2.1案例分析本案例重点研究典型的办公桌制造组装线,即一张桌面和四条桌腿的办公桌的案例。下面的流程图描绘了桌面制造组装线系统建模仿真的整体思路。图2-1办公桌生产线仿真流程
1.确定办公桌组装生产线工艺流程(1)绘制实际系统的简化工艺流程图。图2-2办公桌组装生产线简化的工艺流程1.确定办公桌组装生产线工艺流程(2)绘制体现实际系统车间模块功能的详细工艺流程图。图2-3办公桌组装生产线详细的工艺流程2.车间模块功能及相关设备参数根据以上两个工艺流程图,重点描述主要车间模块的功能,并分析车间模块中详细的设备配置及相关数据资料。
此处重点描述上漆检验车间模块和组装车间模块。详细设备参数设置(见P15-16)。
(1)上漆检验车间模块:其功能是桌面按序上漆、人工检验桌面和不合格桌面返工处理。
上漆处理工序功能,即每10个桌面一批,自动涂装设备按照蓝、红、棕、黄、绿5种颜色给桌面上漆;
检验工序功能,即一个工人负责此道工序的检验,检验时间为1分钟,且上漆不合格桌面的返工再进行上漆处理
。
(2)组装车间模块:其功能是托盘装载桌面、办公桌组装和托盘回收。
3.主要设计技术(1)层式设计技术类似于模块化设计技术。主要思想是将某些要素组合在一起,构成一个实现特定功能的子系统,并将这个子系统作为通用性的模块与子系统或其他要素按照一定的流程进行组合,以构成新系统,从而实现主系统综合的功能。Em-plant特色之一是提供了层式结构设计技术,即主Frame对象包含多级的Frame对象的设计技术。图2-4层式结构示意图3.主要设计技术(2)二维动画设计技术基本思想是在模块化设计的基础上,针对每个子模型实现二维界面下的动画展示和动态演示。实现步骤:①图标置换;②图标动画点设置;③仿真动画演示2.2.2办公桌建模过程1.模型假设①面板板材、桌腿板材、托盘库连续供应;②不考虑加工设备出故障的情况;③人工操作设备均配置一名员工。2.2.2办公桌建模过程2.系统实体与仿真元素关联表2-1基础物流对象与系统实体的对应关系2.2.2办公桌建模过程
建模过程中用到的其他物流对象:1)BrokerWorkerPool
Worker
WorkerPlace
FootPath这组资源类对象配合使用实现工人操作设备的功能;2)Method和Variable这组信息类对象灵活控制仿真过程;3)TableFile和TimeSequence这组信息流对象记录仿真运行过程中的各类数据信息表;4)Gauge(多以文本、条形图或饼形图的形式显示缓存区存量数据)和Plotter(以线型图形式显示)这组用户接口对象动态显示仿真结果。
2.2.2办公桌建模过程3.建立系统概要模型图2-5办公桌系统概要仿真模型建模步骤:1)创建模型并重命名;2)对象布局、连线、参数设置;3)启动并运行仿真。
2.2.2办公桌建模过程4.建立系统详细模型图2-10办公桌组装生产线系统详细仿真模型2.2.2办公桌建模过程(1)Milling磨削车间模块化建模层式结构设计
当勾选Blocking复选框时,FlowControl会按照设置的比例执行,即后端节点按照27/73固定比例配送;当没有勾选Blocking复选框时,FlowControl会在两个机台上同时为空的情况下,才依此比例进行配送。2.2.2办公桌建模过程图2-13层式结构分流与普通分流方式对比图2-14milling磨削车间模块动画设计实现Milling磨削车间模块动画设计2.2.2办公桌建模过程实现步骤:1)图标置换具体操作(见P21)2)动画演示图2-15实现milling磨削车间动画演示2.2.2办公桌建模过程(2)
lacquertext上漆检验车间模块化建模重点介绍层式结构建模过程,动画设计部分(见P25)
图2-17lacquertext车间模型该模块实现的三个功能颜色指派人工检验不合格桌面的返工处理2.2.2办公桌建模过程颜色指派1)绘制五种颜色的桌面图标应用Em-plant提供的动画设计中的图标
创建和图标编辑功能。具体的操作步骤
(见P22)2)用表存储桌面颜色信息
3)提取表中的颜色信息指派给当前进入检验区的桌面图标,
且用colorindex全局变量实时传出表中值,并配合color方法将颜色指派给进入检验区的桌面。
实现此功能的程序(见P23)图2-18棕色桌面图标设计
图2-20colortable对象表格设置及效果图2.2.2办公桌建模过程人工检验examine检验区请求人工服务,Broker开始调度,Exporter提供人工操作。图2-21examine对象请求“检验”服务图2-22Exporter对象提供“检验”服务2.2.2办公桌建模过程不合格桌面返工处理1)不合格桌面需要事先进行客制化属性设置;2)
当桌面进入lacquer时rework方法触发按照一定的规则使桌面客制化属性生效,规则是10个以内的桌面属性为GOOD,否则属性为BAD。桌面数动态统计使用counter全局变量实现。具体的程序(见P24);3)
将rework对象指派给lacquer对象Controls选项卡中的Exit事件,使控制生效。具体操作(见P25);4)
模型初始化设置。2.2.2办公桌建模过程(3)assembling组装车间模块化建模此车间层式结构模型物流对象的布局和实现的功能如图,对于动画设计可参见课本(P29)。图2-24assembling车间模型2.2.2办公桌建模过程图2-25assembling1车间模型Assembling1车间的详细物流对象的布局及实现的功能描述如图:2.2.2办公桌建模过程建模过程:
1)托盘和桌腿的图标置换的方法类似桌面图标置换的方法,另外需进行图标编辑,以托盘为例,设置operational和waiting两种状态图标。
VS图2-26pallet图标效果2.2.2办公桌建模过程
2)实现托盘承载桌面、托盘与办公桌组装、托盘回收等功能,主要使用method对象对仿真过程进行灵活控制。程序部分(见P27-28)
托盘承载桌面功能:在缓存区托盘与桌面都准备齐全后,再进入托盘承载桌面的工序。此功能的实现需要loading方法协助装载功能。办公桌组装设计功能:此部分需要assembling方法协助实现办公桌组装。托盘回收功能:根据案例分析,托盘回收,办公桌进入下道工序。
2.2.2办公桌建模过程3)实现人工操作。loadingstation(装载站)和unloadingstaion(卸载站)请求人工操作,方法类似桌面人工检验工序;Broker命令WorkerPool(工人池)进行工人调度,工人沿FootPath(路径)到达WorkerPlace(工作站)提供装载和拆卸操作。装载站处WorkerPlace属性设置:将loadingstation拖入相应工作站的属性station中,取消SupportedService继承,单击并填入loading服务。WorkerPool和Work属性设置如图。图2-29WorkerPool设置图2-29Worker设置注意:装载站需求服务与工作站、工人提供的服务必须一致,而卸载站需求服务与工作站、工人提供的服务也必须一致,只有这样仿真才能正常运行。
4)将assembling子模型拖入主模型,实现层式结构。2.2.2办公桌建模过程(4)
packing打包车间模块化建模
packing自动捆扎设备在24小时中只有6时~22时的时段工作,其余时段设备pause状态,需使用Trigger对象控制packing设备不同时段的状态。Trigger对象设计:对于周期参数设置,相对时间下生效周期为一天,即1:00:00:00,一天为一周期,循环按时间表作业。其次安排自动打包设备工作时间表,自动打包设备作业时间控制如图2-31所示。图2-31自动打包设备作业时间控制2.2.2办公桌建模过程使打包设备按照Trigger安排的时间表工作生效,可以使用属性控制,亦可使用方法控制。Trigger两种控制设置如图2-32所示。
VS图2-32Trigger两种控制设置2.2.2办公桌建模过程(5)shipping发运车间模块化建模此模块将打包好的办公桌发运,即用Drain对象吸收办公桌,以实现发运功能.具体一方面需要统计每张办公桌总加工时间并在表中显示,另一方面需要对发运的蓝、红、棕色办公桌分别进行统计。
图2-33发运车间子模型2.2.2办公桌建模过程统计每张办公桌总加工时间并在表中显示的建模过程:1)实时统计Drain吸收的办公桌数量和相应的进入Drain的时间。用TimeSequence表进行统计。2)统计办公桌组装加工的总加工时间,需要方法和表配合使用。主要思想是调用方法,即离开Drain的办公桌触发evaluate方法,evaluate方法调用tpt_method方法,将统计的办公桌加工时间值在表tpt_protocol中记录。3)办公桌数量信息在console窗口中显示。具体的程序(见P31)
图2-34TimeSequence表设置2.2.2办公桌建模过程发运的蓝、红、棕色办公桌分别进行统计的建模过程:1)partstatistics表记录需要统计的颜色信息。2)evaluate实现对partstatistic方法的调用,partstatistic对象的程序实现实现对color栏中颜色的查找,并对进入Drain对象的相应颜色的桌面进行记录。程序(见P32-33)。最后,通过程序对模型进行重置,实现对表中数据的删除。
图2-36partstatistics表2.2.3仿真分析仿真运行一天后,统计相关需要的资料。在EvenController的Settings中设置结束时间为1:00:00:00,勾选DeleteMUsonreset,能实现每次仿真实验后,模型中移动的桌面、桌腿、托盘对象等自动删除,从而实现重置。统计packing车间模块PlaceBuffer中的办公桌数使用Gauge对象,以String方式和Pie方式动态显示统计信息;应用plotter对象,以线型图形式动态显示统计信息。图2-37Gauge统计结果
2.3柔性生产线仿真案例2.3.1案例分析2.3.2模型搭建2.3.3仿真实现2.3.4仿真分析2.3.5模型优化1、案例说明1)柔性制造系统状况
该企业柔性生产线共有5台加工中心,将加工中心名称分别定义为CNC1、CNC2、CNC3、CNC4、CNC5。此制造系统内有一辆AGV小车,运行速度为1m/s,可控制其实现不同的运送策略。每台设备入口和出口前有容量为4的缓冲,而工件由设备完成加工前后必须经过入口缓冲和出口缓冲,且每台设备由一名工人负责工件的搬运和安装(工人不在此模型模拟)。工人由AGV小车搬运工件至缓冲的时间和由缓冲搬运工件至AGV小车的时间统一为固定时间10s。工件按一定顺序进入柔性制造系统,待进入系统后由AGV小车负责将其搬运到第一道工序,且在系统入口有工人负责将工件搬运至到达入口的AGV小车,搬运时间固定为10s,在加工完第一道工序后由AGV小车搬运至下道工序,且执行同样的操作,在工件所有工序都加工完后AGV小车将工件搬运至柔性制造系统出口,在出口由工人负责将工件由AGV小车搬走,时间统一为固定时间10秒。2.3.1案例分析图2-40柔性制造系统工件物流过程示意图2.3.1案例分析图2-41柔性制造系统三维布局示意图2.3.1案例分析图2-42柔性制造系统布局示意图2.3.1案例分析2)产品工艺状况该柔性制造系统主流加工的产品有3种,其名称分别为part1、part2、part3产品工艺路线如下:part1(CNC3[60]、CNC4[80]、CNC3[120])
part2(CNC1[50]、CNC4[70]、CNC1[40]、CNC3[80]);part3(CNC1[30]、CNC2[60]、CNC5[50]),其中中括号
内数字为该工序的额定工时。工件在设备上的加工时间服从正态分布,而正态分布中心为额定工时,分布方差统一为10,数字单位为秒。
2.3.1案例分析3)订单状况现在接到一批紧急加工订单,该订单对part1、part2、part3这3类工件批量要求分别为(60、40、80),要求针对以上信息建立仿真模型,该柔性制造系统进行建模和仿真,通过模拟该制造系统的物流状况,找到最好的满足要求的系统控制方法。2.3.1案例分析2、建模步骤
(1)收集建模所需资料;
(2)采用Em-plant对柔性制造系统进行仿真建模;
(3)仿真优化步骤;
2.3.1案例分析3、主要技术设计1)传感器(sensor)由于仿真是在四维(x,y,z,t)的虚拟空间环境中进行的,因此在此环境中如何确定每个导引车的当前位置是个难题。由于导引车始终都在固定的物流通道上运行,因此并不需要确定小车详尽的物理位置,而只需确定小车在物流通道上的位置即可。采用Em-plant提供的传感器技术可以较方便地达到这个目的。运行仿真时,AGV小车可以通过提取任务队列中的任务并参照设备位置关系确定其下一步的行走方向,每当导引车触发传感器后修改其位置属性,并以此确定AGV小车当前所在的位置和应该触发何种控制方法。
2.3.1案例分析
2)队列任务由于需要控制一辆或多辆AGV小车的运行效果,因此如何同时控制一辆或多辆AGV小车是仿真模型构建的一项关键技术。在此可采用任务队列的方法来控制AGV小车响应工件的运送请求,任务队列的控制结构如图2-43所示。任务队列接受等待运送的工件发出的运送请求,且运送请求可按假设的运送规则进行排列,系统中的空闲AGV小车按照任务队列中的排列顺序依次提取运送请求并完成运送,而在仿真过程中任务队列不断删除空闲AGV小车提取的运送请求并不断接受工件发出的新的运送请求。
2.3.1案例分析图2-43任务队列的控制结构2.3.1案例分析
3)冲突化解一般来讲,在柔性生产系统的仿真运行过程中会出现各种冲突,具体包括:多个工件对一台设备的争夺冲突;多台设备对一个工件的争夺冲突;多个工件对一台小车的争夺冲突;多辆小车对一个工件的争夺冲突。由于仿真过程中是靠AGV小车搬运工件,而AGV小车又是通过任务队列来选择工件,所以AGV小车代替设备完成了对工件的选择,而工件对设备的争夺冲突则依靠任务队列的排序规则来完成。2.3.1案例分析
4)注意问题在构建二维模型时需要注意的是由于工件的工艺路线各不相同,因此不能确定设备之间的关系,不可采用Connector对象来连接设备,而工件在设备和导引车间的传送完全依靠Method控制语句来实现。另外,需要依据生产线的物流通道长度来确定仿真模型中Track对象的Length属性,并依据设备位置确定传感器Sensors在Track中的位置。采用Table对象来表达3类工件投放的时间和数量,并将该对象与生产线入口(Source)对象相连。2.3.1案例分析1、基础空间总体布局
图2-44基本模型布局示意图2.3.2模型搭建2、Track设计根据案例可知加工路线总长度为165m,双击Track,将其Attributes中的length设置为165。在其curve中取消transferlength的复选框。标记每一个加工中心的位置,控制Transporter在Track上的运动,在每一个设备的出入口处以及系统的出入口共7处分别设置Sensors。Sensors布局情况如图2-45所示。同时,为每一个Sensors设置响应的Method对象。将所有加工设备的入口以及出口和加工线出口的Sensors所调用的Method命名为methodsensors,将加工线入口处的Sensors所调用的Method命名为SourceControl。其具体做法如下:双击Track选择Controls,并单击右下角的Sensors;然后点击New新增ID,根据案例要求距离设计。Sensors位置关系对应表如图2-46所示。
2.3.2模型搭建图2-45sensor布局情况图2-46sensor位置关系对应表2.3.2模型搭建4、工件和AGV的属性设计
1)工件设计。在Explorer窗口MUs目录中双击Entity,选择其用户自定义属性CustomAttributes,单击new添加自定义属性,设Name为step,数据类型Datatype为integer,初始值value设为1。复制3次Entity并分别命名为part1、part2、part3。其中,工件的step属性是用来说明工件的加工流程。2)AGV小车设计。在Explorer窗口MUs目录中双击Transporter,将其属性Attributes中的length设为1.5m,speed设为1m/s,然后选择backwards。在用户自定义属性CustomAttributes中添加两个新的用户自定义属性:一个Name为curpos,Datatype为integer,初始值value为7;另一个Name为des,Datatype为integer,初始值Value为0。这里,curpos表示小车在Track上的当前位置,des表示小车的目的地。
2.3.2模型搭建5、表的设计
1)工件流程及加工时间表的设计(见教材P40);2)位置表的设计(见教材P42);3)工件生产表的设计(见教材P42);4)任务表的设计;
2.3.2模型搭建6、工件生成器source和消灭器Drain的设计在软件Em-plant中,所有的部件都是由Source来生成的,最终也是由Drain来接受消灭的。双击Source,在其Attributes中的Amount中填写180,表示其一共产生180个工件。把表sourceproduct用鼠标拖到Table框中,单击apply设计sourceproduct表。如图2-44所示,把Drain重命名为n61,单击Controls在Entrance中填写statis,表示每当有一个工件进入Drain时就将触发statis方法。
2.3.2模型搭建7、Method和Variable的设计
一共向添加7个Method和4个Variable,并根据图2-44命名。其中,init和reset是控制EventController的初始化和重置的方法,setparttime被设置在加工中心中,是用来控制加工时间的方法,insertask是用来向task表中添加数据的方法;sourcecontrol是用来控制Track入口的控制方法;statis是用来控制Drian的方法;methodsensors是本模型最复杂的方法,用来控制Track上的Sensors。添加4个Variable到模型中,并分别命名为n1、n2、n3和n,它们分别用来统计工件part1、part2、part3和总工件的数目。
2.3.2模型搭建1、工件加工流程及时间设计工件的加工流程及时间是由图2-47所决定的,所以主要是需要把图2-47中的3个表与加工设备联系起来。如图2-44所示,setparttime是用来控制工件加工时间的。setparttime是当有工件进入加工中心时触发的,作用是控制每个工件在加工中心的加工时间,由于每个加工中心所要加工的工件有所不同甚至相同工件的加工步数的不同都可能导致加工中心的加工时间的差异,所以每个加工中心的加工时间是一个随着工件的变化而变化的变量。具体的代码参考教材P43。2.3.3仿真实现2、任务队列设计小车的运行就是在不断的读取任务表也就是task表,如果task表中没有数据,则小车返回Source;如果不为空,则根据task表中的第1行决定目的地。如何在task表中输入数据是一个关键。当有工件在某个加工中心加工完成后,则在进入到出口缓冲时触发inserttask,而inserttask的作用为将工件进入缓冲区时的时间和缓冲区的名称插入task表,且task表将按时间顺序自上到下排列。此部分程序如下
task.insert(EventController.simtime,?.name);--插入当前时间和工件名称
2.3.3仿真实现3、小车的运行规则设计小车的运行规则设计是本案例的核心。通过案例分析,可以设计小车的规则如下:在轨道第一个Sensor处触发sourcecontrol,而小车运行到Track上其他Sensors处触发Methodsensors。此时小车有两种状态:第一种情况是小车上有工件,此时小车根据小车上工件的名称和step属性读取相应的表来判断目的地,行驶到目的地处将工件卸载到加工设备的入口缓冲区;第二种情况是小车上没有工件,此时通过读取任务列表(task表)的第1行来决定小车的目的地,当行驶到目的地后,相对应设备的出口缓冲区的工件移到到小车上,而如果task表为空,则小车返回Source领取新的工件进入加工线。触发传感器的运送车的控制流程如图2-50所示。其具体的各项代码程序的编写参见教材P45-P47。
2.3.3仿真实现图2-50触发传感器的运送车的控制流程2.3.3仿真实现4、其他控制方法在小车的控制方法确定以后,主要还有source处的控制方法、加工工件统计方法、初始化以及重置的方法。以上的元素和方法的设计已经基本满足案例要求,而本案例的设计最关键之处在于要清楚小车的各种运行规则,然后根据运行规则再去
设计各个元素的自定义变量和各种表,且所有
的表和自定义变量都是为小车的运行和工件的加工时间设置服务的。当然,完成本案例不止此一种方法,还可以用别的思路来实现。
2.3.3仿真实现1、设备利用率分析要分析利用率需要在模型中添加chart控件来显示各个设备的利用率。在图2-44所示的模型中添加一个chart模型,且双击打开它;在Data中的Datasource中选择InputChannels;单击TableFile并在Format中取消InheritFormat前的复选框;然后添加数据。设备利用率设置表如图2-51所示。其余的详细设置参考教材P50。2.3.4仿真分析图2-51设备利用率设置表2.3.4仿真分析工件的加工效率如图2-52所示。从图2-52可以看出,每个加工设备的工作时间都非常低,最高的cnc3都不到20%,最少的cnc5只有5%
所以,可以看出这个模型在设备利用率方面并不是最优的。
图2-5工件的加工效率2.3.4仿真分析2、轨道利用率分析轨道利用率和分析设备利用率差不多,添加一个Chart到模型中并命名为Charttrack。大部分设置和前部分一样,只是在添加表时有差异。轨道利用率设置表如图2-53所示,其运行后的结果如图2-54。
图2-53轨道利用率设置表2.3.4仿真分析图2-51运行后得出的轨道利用率2.3.4仿真分析3、加工总时间运行上面模型得出的总时间大约为1:02:27:37.5000,由于设备的加工时间是正态分布的,所以可能会有一些差异,但相差应该不过超过15min。从时间上看加工180个零件的加工时间并不是很长,但最后却要1天多时间,加工周期作为最重要的衡量指标,很明显这个基本模型需要改进,而柔性生产的最大优点就在于可以改变一些加工策略,所以分析模型的各种加工设备利用率可以充分找出制约加工周期的障碍,从而优化模型。
2.3.4仿真分析1、订单投产优化在实际的建模过程中可以觉察到
,如果一类零件出的太集中,很容易出现死锁现象。因此在订单上,有很大的提升空间。在实际的优化过程中,很多的订单投产方案都被尝试,在此只介绍两种具有代表性的方案且进行对比,并与之前没有优化过的方案也就是顺序投产方案进行两两对比,从而得出最优化
的方案,以在后续的优化中能够被直接应用。这两种方案分别是按时间顺序投产和按次序循环投产。
2.3.5模型优化1)按时间顺序投产在小车数量不变的情况下,订单的投入由顺序投入改变为时间分批投入。此时,只需重新设置图2-44中控制Source产生工件的sourceproduct表就可以了。双击Source并在Attribute属性的Timeofcreation中选择DeliveryTable,然后在Table中填写sourceproduct再单击Apply就出现一个表,最后设置如图2-56所示。而得到的设备利用率、轨道利用率和加工总时间如图2-57所示。
2.3.5模型优化图2-56按时间顺序投产2.3.5模型优化图2-57顺序投产结果2.3.5模型优化2)按次序循环投产如果将订单拆分得足够细,效果会是怎么样呢?将订单拆分成2个part1、4个part3、1个part1、2个part2,依次循环出货180个工件。其具体设置为:双击Source,在Attributes中的Timeofcreation下拉选项中选择NumberAdjustable,并在Amount中填写180,在Muselection中选择sequencecyclical,在Table填写sourceproduct,再单击Apply设置如图2-58所示。Source按照图2-59所示的表生产最终得到的设备利用率、轨道利用率和加工总时间如图2-59所示。
2.3.5模型优化图2-56循环生产2.3.5模型优化图2-56循环投产结果2.3.5模型优化2、小车的优化小车的优化最主要的就是增加小车的数量,下面分析增加小车数量的设备利用率、轨道利用率和总时间的变化。在图2-59所示的模型中复制轨道5次并分别命名为track1、track2、track3、track4、track5、track6。及具体实现方法见P53。最终实现的结果如图2-60(参见教材P54)。结果可以看出,随着小车的增加设备利用率在不断地上升,轨道利用率却没有什么变化,一直维持在88%附近,而加工总时间在1辆到4辆之间增加明显,但从4辆开始到5、6辆之间增加并不太多。总结来说,随着小车的增加,设备利用率一定会随着增加,且增加到一定的时候,cnc3将有可能达到100%,但是加工总时间的增加量随着小车的增加在逐渐减少,且最终可能达到一个恒定的时间,这时候制约模型的主要的因素将会是加工设备,在此不考虑了。
2.3.5模型优化3、其他优化策略
1)增加系统入口缓冲;2)提高小车运行速度;3)提高设备出入看的缓冲容量;4)提高设备性能;5)优化工艺流程;6)优化出货策略;7)设置环形轨道;
2.3.5模型优化2.4小结
本章对离散制造系统的两个案例,在案例分析、模型搭建、仿真、分析优化等方面进行了详细说明。这两个案例都是采用仿真软件Em-plant实现的。在办公桌案例中,将办公桌生产流程分解为磨削、上漆、组装、打包、发运5个环节,这5个环节自成模块,各有特点。因此在办公桌案例中,读者除了可以掌握Em-plant的一些基本用法外,更需注意这种模块分解的仿真思想。在柔性生产线仿真案例中,仿真受产品投产、小车数量、物流逻辑等因素影响,而系统内部控制关系复杂,这种情况则不适于采用模块分解的方法,只能在建模时尽可能将仿真的控制统一化,并对不同的产品、设备、采用统一的控制方法,从而在仿真逻辑发生变化时,只需改变仿真元素的设置,而控制代码无需改变,这样可使仿真模型具有较好的柔性。按照这一思路,读者可在本案例对直线轨道建模的基础上,进一步考虑环形轨道的建模方法。第3章连续制造系统仿真案例第3章连续制造系统仿真案例
连续制造系统仿真特点分析3.1钢铁企业板坯库仿真案例3.2炼钢连铸物流仿真案例3.3小结3.4
3.1连续制造系统仿真特点分析1)连续制造系统生产节奏性更强,且更强调各子系统之间物流的衔接;2)而且随着多品种、小批量生产模式在连续制造系统中的实施,离散制造系统中存在的多品种、流程复杂等问题同样出现在连续制造系统中。因此,连续制造系统更需要采用流程仿真方法来把握生产过程的规律,并进行科学的分析和管理。3.2钢铁企业板坯库仿真案例3.2.1案例分析3.2.2NP跨单独上料仿真分析3.2.3MN跨单独上料仿真分析3.2.4多点上料仿真分析3.2.1案例分析图3-1板坯库示意图该区域主要在出坯区因某种原因不能出坯或板坯有特殊要求需分开存放时使用。存放存放外卖的板坯二检有问题需判定的板坯。存放供给热轧的板坯。存放外卖的板坯。存放热坯。供成品区、特殊出坯区、待处理区共同使用。供成品区、特殊出坯区、待处理区共同使用。供出坯区使用。经分析发现,目前板坯库存在如下两个问题。1)容量不足。一方面,该钢厂轧线整体设计目标为80%热装(HCR)和70%直装(DHCR),因此板坯库容量相对较小;另一方面,实际生产中可供倒垛的区域占用大量空间。2)轧线供坯能力不足。一方面,最初主要是出于板坯检验和处理工艺考虑设计,LM跨没有可存放上料坯的区域,上料能力不足;另一方面,尝试天车直接由NP跨上料,实现多点供坯,可是是否满足能力未知。3.2.1案例分析3.2.2NP跨单独上料仿真分析
图3-2板坯库NP跨板坯区域及天车位置关系示意图有4部天车NP跨上料由天车直接吊板坯至NP跨中部轨道(上料点)或由天车吊至距离上料点很近的备料点,再吊至上料点。1)对热轧线达产时的NP跨作业进行仿真假设。(见P60)2)根据经验和板坯库现场调研,设置NP跨上料的所有仿真参数。(见P61)3)建立板坯库NP跨上料仿真模型。如图3-4所示。图3-4板坯库NP跨上料仿真模型3.2.2NP跨单独上料仿真分析4)仿真结果3.2.2NP跨单独上料仿真分析表3-1NP跨1区上料仿真结果表3-2NP跨2区上料仿真结果目前NP跨上料的方式,NP跨2区单独上料远远不能满足热轧需求,建议不实行NP跨单独上料的方式。若NP跨单独上料,改进后的示意图在距离轨道20m附近区域,于轨道不同的方向放置两个备料区,如图3-6所示。
3.2.2NP跨单独上料仿真分析图3-6NP跨单独上料备料区示意图3.2.3MN跨单独上料仿真分析图3-7板坯库MN跨板坯区域及天车位置关系示意图MN跨上料由天车直接吊板坯至MN跨中部卸板台,再由卸板台推至轨道。在卸板台推板过程中,天车可以去执行其他的任务。4部天车1)对热轧线达产时的MN跨作业进行仿真假设。(见P64-64)2)
根据经验和板坯库现场调研,设置MN跨上料所有仿真参数。见(P64)
3.2.3MN跨单独上料仿真分析图3-9MN跨各段长度图3-8板坯库MN跨仿真分区示意图1区由一部80吨天车负责上料,2区由另一部80吨天车专门负责上料,而其余两部40吨天车负责备料和倒垛。图3-10板坯库MN跨上料仿真模型3)建立的板坯库MN跨上料仿真模型如图3-10所示。3.2.3MN跨单独上料仿真分析4)仿真结果
3.2.3MN跨单独上料仿真分析表3-3板坯库MN跨1区上料仿真结果表3-4板坯库MN跨2区上料仿真结果目前MN跨上料的方式,1区供坯能力要远大于2区,且天车干涉和加热炉的节奏对MN跨上料影响很大。
按较为保守的天车干涉概率为50%、加热炉节奏为1.5min来计算,1区连续供坯能力约190块,2区连续供坯能力约20块。MN跨单独在1区上料应可满足1~2个计划的热轧需求,如在特殊情况下需MN跨单独上料,则应安排在1区上料。如果按加热炉平均节奏为2min来计算,则2区可有约150块的供坯能力,但为保险起见,2区上料应尽可能和其他区域搭配上料。3.2.3MN跨单独上料仿真分析图3-11板坯库MN跨单独上料区域多点上料的两种方式:①在多跨以“插花”方式上料,即一跨上一块板坯,然后另一跨上一块板坯。这种方式可发挥现行板坯库最大的供坯能力,多用于为平衡不同跨的供坯能力而将同一铸机铸出的板坯实现在不同的跨区共同上料;②以一跨多板的方式上料,即一跨上多块板坯后另一跨再继续上多块板坯。这种方式多用于依照热轧计划将不同铸机铸出的板坯协同上料。按照以上两次仿真对MN跨和NP跨的分区,可以将多点上料分为以下4种情况:MN跨1区和NP跨1区;MN跨1区和NP跨2区;MN跨2区和NP跨1区;MN跨2区和NP跨2区。3.2.4多点上料仿真分析3.2.4多点上料仿真分析图3-12多点上料仿真区域示意图MN跨1区和NP跨1区组合适用于2号铸机出坯多点上料,此时多采用两区插花供坯的策略;MN跨1区和NP跨2区组合和MN跨2区和NP跨1区组合适用于两台铸机出坯组合供坯,此时多采用两区分供10块板坯的策略;MN跨2区和NP跨2区组合适用于1号铸机出坯多点上料,此时多采用两区插花供坯的策略。1)仿真主要针对的上料流程(见P66-67)。2)根据经验和板坯库现场调研,设置MN跨上料的所有仿真参数(见P67-68)。3)建立的板坯库M跨上料仿真模型如图3-13所示。3.2.4多点上料仿真分析图3-13板坯库MN跨上料仿真模型3.2.4多点上料仿真分析4)仿真结果NP跨1区与MN跨1区的仿真:仿真初始两跨天车按由近至远的原则选择垛位送坯,加热炉车间等至加热炉前缓冲满至4块时开始向加热炉送坯,采取两区插花供坯的策略,则NP跨1区和MN跨1区上料仿真结果见表3-5。表3-5NP跨1区和MN跨1区上料仿真结果表3-6NP跨2区和MN跨2区上料仿真结果NP跨2区与MN跨2区的仿真,采取两区插花供坯的策略。3.2.4多点上料仿真分析NP跨1区与MN跨2区的仿真,采取两区分供10块板坯的策略。表3-7NP跨1区和MN跨2区上料仿真结果表3-8NP跨2区和MN跨1区上料仿真结果NP跨2区与MN跨1区的仿真,采取两区分供10块板坯的策略。5)结论由表3-5和表3-6中的数据可得出以下结论。(1)
2号铸机坯的多点上料(NP跨1区和MN跨1区的组合)的所有垛位都可完全满足供坯需求。(2)
在1号铸机坯的多点上料(NP跨2区和MN跨2区的组合)中,NP跨和MN跨约有13个垛位可较好地满足供坯需求,但对于热轧节奏较快的板坯(1.5min/块)则很难满足供坯需求。多点连续上料能力范围图如图3-14所示。
3.2.4多点上料仿真分析图3-14多点连续上料能力范围图3.2.4多点上料仿真分析由表3-7和表3-8中的数据可得出如下结论。(1)
NP跨1区和MN跨2区的组合多点上料,按每跨连续供10坯计算,每跨约有10个垛位可供应热轧的基本需求,而对于热轧节奏较快的板坯(1.5min/块)每跨只有距离轨道最近的约2个垛位可满足需求。多点批次上料能力范围图如图3-15所示。(2)
NP跨2区和MN跨1区的组合多点上料,按每跨连续供10坯计算,则很难满足热轧需求。
图3-15多点批次上料能力范围图3.3炼钢连铸物流仿真案例3.3.1案例分析3.3.2直轨道仿真模型3.3.3分段轨道仿真模型3.3.4仿真分析3.3.1案例分析设某钢铁企业炼钢—连铸生产车间有3台转炉,即CF1、CF2、CF3;两台精炼炉,即RF1、RF2;两台连铸机,即CC1、CC2。其车间设备布置图如图3-16所示。图3-16某钢铁企业炼钢—连铸生产车间设备布置图3.3.1案例分析案例假设:1)该炼钢—连铸车间只能炼8个钢种的产品,分别为g1、g2、g3、…、g8,而且每个转炉所冶炼的钢种有限:2)转炉CF1能够冶炼的钢种是g1、g4、g7、g8;转炉CF2能够冶炼的钢种是g2、g5;转炉CF3能够冶炼的钢种是g3、g6。3)每个转炉具有相同的生产能力,技术成本也相同,并且它们的冶炼时间均为40min;4)每个精炼炉也具有相同的生产能力,技术成本也相同,并且它们的精炼时间均为35min;5)每台连铸机具有相同的技术能力,每台最多只能进行一个浇次的生产,CC1、CC2的浇注时间均为45min。已知8个钢种的生产计划如下。3.3.1案例分析炼钢—连铸中所涉及的物流约束其实主要是天车的调度问题。车间天车调度是指在满足天车运行空间约束和天车资源约束的条件下,合理地分配天车任务以完成生产物料的吊运作业,并保证生产任务有序、紧凑地进行,且使整体物流运输效率与生产目标相一致。天车调度问题是典型的多机、多任务、多约束、随机性复杂问题。主要介绍两种炼钢-连铸生产中的天车运行方式:①一辆天车运送一个钢包,即从转炉到精炼再到连铸,为了避免死锁冲突,天车在将出钢钢包运送到铸机处前不会返回运送下一个钢包,这种模型在下文中称为直轨道模型。②天车分段运送钢包,即一辆天车在一段轨道上只负责运送这段轨道上的钢包,从而避免了和其他天车冲突,这种模型在下文中称为分段轨道模型。3.3.2直轨道仿真模型图3-17直轨道模型此模型可以由多条轨道组成,为了避免天车冲突每条轨道上只能有一辆天车3.3.2直轨道仿真模型1)在炼铁Source处设置了几个出钢表,里面有出钢量和出钢顺序。2)在转炉处炼钢,此时转炉处用PlaceBuffer。3)待炼钢完成后将钢包运送到转炉的台车工位,天车接收到任务通知,前往运送钢包。每个钢种都设置了一个proctable属性,打开表,就能看到钢的加工路线,天车在运送钢包的时候,会将钢包按照proctable表(工艺顺序表)上的顺序运送钢包到相应的加工地点。图3-18Q235L2的工序表注意:为了防止物流冲突,在仿真建模时设置天车和钢包的一一对应,这样当钢包在精炼时,空闲的天车原地等待钢包完成加工,具体实现方法如下。
waituntilobj.nummu>0andobj.cont.currentproc=2prio3;obj.cont.move(@);
其中obj是台车工位,obj.cont是钢包,@是天车。通过waituntil语句设定条件让天车等待,直到当台车工位有钢包且钢包属性为精炼完成后才开始吊运钢包。3.3.2直轨道仿真模型图3-19断浇事故窗口3.3.2直轨道仿真模型4)在连铸机的控制方法Continuerestrict里面设置了如果连铸机里的钢包在出连铸机时还没有新钢包进来,就弹出报警窗口显示“断浇”。3.3.3分段轨道仿真模型分段轨道模型特点是,轨道分为两段,每段轨道上有一辆天车,每辆天车负责各自的任务,互相不干涉。图3-20分段轨道天车模型图两个轨道分别通过不同的Method通过设备位置表读出需要放或者取得钢包位置,写入相应的天车队列表。注意:不同于直轨道仿真模型,分段轨道的天车不再同钢包一一对应,而是通过规则排列天车队列表,来实现天车的仿真控制该模型的特点是建立了两个设备位置表,里面有所有钢包要相对不同轨道的工序位置,设备位置表如图3-21所示。3.3.3分段轨道仿真模型图3-21设备位置表4)分段轨道模型和直轨道模型类似,在发生断浇的时候,也会弹出断浇窗口。图3-22分段轨道天车运行模式断浇界面3.3.3分段轨道仿真模型图3-23直轨道计划甘特图3.3.4仿真分析
1.直轨道天车仿真分析根据案例分析中的8个钢种的计划,绘制计划甘特图,计划甘特图中8种钢种能在CC1和CC2铸机上连铸。计划甘特图如图3-23所示。加入天车约束的影响,在很多情况下天车等待时间很长,使整个工序完成时间后移。实际运行甘特图如图3-24所示。
图3-24直轨道实际运行甘特图3.3.4仿真分析对比以上两个甘特图,分析发现:1)先从时间上来分析,图3-23显示的这8炉钢完成的计划时间是从16点45分开始,21点28分结束。图3-24显示的加入物流因素后实际结束时间约为21点47分,实际仿真的时间大于计划时间。发生这种原因是图3-24中的天车运送或者等待时间引起的。2)我们看到图3-24虽然实际结束时间拖后但没有断浇现象发生,说明在整体模式下物流因素不会导致断浇事故。
3.3.4仿真分析2.分段轨道天车仿真分析1)根据以上8种钢种绘制分段轨道天车模型的计划甘特图。2)如果分段模型考虑物流因素,绘制实际的甘特图。
图3-25分段轨道天车模型计划甘特图图3-26分段轨道天车模型实际甘特图1号铸机(Continuecasting1)在19点45分左右发生断浇。3.3.4仿真分析对计划甘特图和实际甘特图进行分析,得出如下结论:天车的运行、往返和等待时间等动态的物流因素给生产带来未知性,这些时间会使炼钢连铸各个工序的时间后移,而且后移量很难预先估算,严重的就会使得铸机发生断浇事故。而通过仿真技术建立炼钢连铸的仿真模型可以模拟未来的实际情况,从而能直观地发现物流因素造成的影响。
3.4小结本章案例分为板坯库物流仿真和炼钢连铸物流仿真,这两个案例的仿真结果都受到时多方面因素的影响,是较为复杂的系统。
在当前商品化仿真软件中尚没有针对性的软件,因此本案例采用二次开发性能较好的Em-Plant,结合第2章柔性生产线中的相关建模技术建立仿真模型。在板坯库案例中,采用分解仿真的方法,将板坯库作业分解为NP跨上料、MN跨上料和多点上料3种不同模式进行建模和仿真,并对具体问题进一步分解,如分别将NP跨、MN跨各分为两个区域,将多点上料分为4种区域的组合等。这种分解仿真的方法可将复杂问题分解为较为简单的局域问题,从而便于进行仿真分析。
对于炼钢连铸物流仿真案例而言,其连续性要求比板坯库更高,在案例中对两种物流方案分别建立仿真模型并进行仿真,通过仿真结果的甘特图,可以进行更直观的分析。
125第4章电梯仿真案例第4章电梯仿真案例电梯仿真1仿真建模2电梯运行方案仿真分析3小结4
4.1电梯仿真电梯已经成为高层建筑中不可缺少的服务设施,满足
人们对楼内垂直运输的服务需要。然而随着人们社会活动的频繁,很多高层建筑的电梯已难以满足服务需要,为了提高运营效率和服务满意度,一些建筑采用了对电梯进行单双层或高低层分层运营的管理方法。但不同建筑物用途不同,其交通特征也不同,而且同一建筑物内的交通模式在一天的不同时间也是变化的,因此不同建筑对电梯的服务需求规律呈动态变化且非常复杂,仿真为描述这种规律提供了新的方法。整体来说,电梯的仿真不同于普通的物流仿真,它们具有以下不同点。(1)指令的产生。其包括进入电梯乘客发出指令的地点随机和电梯外部请求电梯服务的地点随机。(2)电梯运行相关规则。为了确保运行效率,电梯在运行中执行如下规则:电梯上行状态下不会接送下行需求的乘客,同理,下行状态下不会接送上行需求乘客;当电梯处于等待状态时,按先来先服务规则响应外部楼层服务需求;当电梯的负重达到最大载荷时,不再允许乘客进入电梯。
如果可以在以上不同点基础上建立仿真模型,则可在一定程度上对电梯运行规律予以描述。为此,首先尝试先建立单台电梯运行的基本模型,以描述以上不同点,然后在此基础上研究建立多台电梯仿真模型。
4.1电梯仿真
4.2电梯建模4.2.1基本模型4.2.2多台电梯模型4.2.1基本模型图4-1单台电梯的基本模型仿真流程图4-2单台电梯乘客乘梯流程4.2.1基本模型图4-3单台电梯运行流程4.2.1基本模型1、控件选择凡是需要运动轨道的都可以选择Track来作为运行轨道,而电梯可以选择具有装载功能的Transporter,并可以自定义其特定属性乘客可以利用Source来产生Entity来代替,而当乘坐电梯的人数很多时乘客将进行排队,所以利用Buffer来使在乘客进入电梯前进行排队。同样,乘客从电梯出去后可以利用Buffer和Drain来处理。值得注意的是,电梯与工件加工模型最大的区别在于工件加工模型的工件产生只在一个地方,而电梯的乘客却在每层都有可能产生,所以需要每次都设置一个乘客进入装置和出去装置。外部任务队列的任务需要利用TimeSquence表处理。由于电梯主要由代码进行控制,所以还需要Method和全局变量variable来进行电梯的运行控制。4.2.1基本模型2、整体布局
图4-4电梯仿真模型整体布局4.2.1基本模型3、基本控件设计1)电梯轨道设计Track表示电梯的运行轨道,可以利用Sensors来进行每一层的划分。根据上面的整体布局可以知道一共设置9个Sensors来表示每层间距离为5米,共9层。Track中Sensors的设置在本书的柔性生产线仿真小节已经详细介绍,本处不再重述。其中Sensors中的控制方法为图4-4中的Mesensor。
4.2.1基本模型
2)电梯设计电梯可以利用Transporter来表示。在属性设置中确定Transporter的长度为1.5m,速度为1m/s,x-dimension为3,y-dimension为2,表示电梯的容量为6。在电梯的自定义属性中分别设计curpos、des、statusup、taskclass和target5个属性。
图4-5target表4.2.1基本模型
3)楼层设计图4-6为电梯的第6层控件,可以看出由Source61和Source62分别产生在6楼需要上到更高层的乘客和需要下降到更低层的乘客,具体控件属性设置参考教材P85。
图4-6电梯楼层控件4.2.1基本模型
4)表的设计在此案例中主要有两个TimeSquence表,分别命名为ElvUpTask和ElvDownTask,分别针对乘客在外部对电梯发出的要求上楼和下楼的乘梯请求。
4.2.1基本模型4、控制方法设计根据图4-3的单台电梯运行流程来讲述Method的控制。其主要的控制方法包括:1)初始化(程序参见教材P86);2)外部任务产生(上下行任务请求列表如图4-6和图4-7,程序参见教材P86);3)无任务电梯接受外部任务(程序参见教材P88);4)电梯内部任务的获取(程序参见教材P92);5)内外部任务处理(程序参见教材P93);6)电梯运行中触发sensors的控制(程序参见教材P95);
4.2.1基本模型图4-7上行任务请求列表图4-8下行任务请求列表4.2.1基本模型4.2.2多台电梯模型
在现实生活中,大部分的电梯都是双梯,也就是两部电梯同时运行的。此外还可以发现,在有些建筑中两部电梯是每个楼层都可以服务的,而有些两部电梯是分单双层运行的,甚至还有一些是分高低层运行的。电梯的运行规则是多种多样的,此时需注意在一定的环境中一定的指标判别下选择什么样的运行规则最为合适。所以,任意层电梯模型的仿真可以在一定的环境下研究各种运行规则的优劣,为建筑设计者提供依据,从而帮助设计者选择较好的电梯运行策略来缓解人们乘坐电梯的压力。上一节主要介绍了单台电梯的运行过程及主要设置,在多台电梯的模型中其实与单台电梯差别不大,主要的差别在于多台电梯的不同电梯的任务层是不同的,可到达的楼层可以自由设计。在这一节主要将提出与单台电梯不同的设置。
图4-9两台电梯模型布置图4.2.2多台电梯模型
uu1:对象是单层电梯1,其值为大于电梯的目前
位置且离当前位置最近的有上升需求的合适层(合适层即为电梯能够服务的层)。例如,服务电梯在3楼,而高于3楼的4、5、6、7都有乘客需要上升,则uu1=5,因为电梯1只能服务单层,所以不理会4楼和6楼的需求,同时相对7楼来说5楼离3楼更近,所以uu1=5。ud1:对象是单层电梯1,其值为大于电梯的目前
位置且离当前位置最近的有下降需求的合适层。du1:对象是单层电梯1,其值为小于电梯的目前
位置且离当前位置最近的有上升需求的合适层。4.2.2多台电梯模型
dd1:对象是单层电梯1,其值为小于电梯的目前
位置且离当前位置最近的有上升需求的合适层。uu2:对象是单层电梯2,其值为大于电梯的目前
位置且离当前位置最近的有上升需求的合适层。ud2:对象是单层电梯2,其值为大于电梯的目前
位置且离当前位置最近的有下降需求的合适层。du2:对象是单层电梯2,其值为小于电梯的目前
位置且离当前位置最近的有上升需求的合适层。dd2:对象是单层电梯2,其值为小于电梯的目前
位置且离当前位置最近的有下降需求的合适层。4.2.2多台电梯模型图4-10Transporter的target属性设置图4-8Transporter1的target属性设置
4.2.2多台电梯模型1、初始化在基本模型中的init方法中,主要是产生了一台电梯并且利用waitGetTask方法使其等待外部任务,而对两台电梯来说,其初始化的目的是一样的(参考教材P101)。
2、外部任务的产生在此处多台电梯模型与基本电梯模型并无差别,可以参考基本模型的外部任务产生的具体代码。3、全局变量的设计
对单双层电梯的模型来说,8个全局变量的设计很重要,其各自所代表的意义在前面说明,具体的代码设计参考教材P101。
4.2.2多台电梯模型4、无任务电梯接受外部任务在基本模型中,用waitGetTask来控制电梯,而在此处,用waitGetTask来控制第一台电梯Transporter,用waitGetTask1来控制第二台电梯Transportter1。下面以控制Transporter的waitGetTask来说明其与基本模型的差别。在基本模型中,由于只有一台电梯,所以所有ElvUpTask表或者ElvDownTask表中的楼层都是电梯服务的对象,而在本模型中,电梯的服务楼层有差别,所以在目的地的选择方面需要考虑表中的楼层是否是可服务的。因此当电梯处于空闲状态下,目的地的选择代码上有差别(具体代码P104)。
4.2.2多台电梯模型5、电梯内部任务的获取电梯内部任务列表以电梯中的target属性来表示,在单台电梯中要获取内部任务也是通过读取target属性。同时设置target属性可以确定电梯的可到达层,比如:在其中设置为1、3、5、7、9则表明此电梯服务单层,而如果设置为1、2、4、6、8则表明电梯为双层,甚至对于高低层电梯也只需在此改变服务楼层就可以了。target表中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年体育经纪人考试关键数据与统计试题及答案
- 2024年农作物种子繁育员技能要求试题及答案
- 模具设计中的热处理工艺试题及答案
- 生物实验室管理与安全措施计划
- 2024年体育经纪人资格考试试题及答案全景解读
- 成本效益分析报告的编写与总结计划
- 2024年农作物种子实施方案试题及答案
- 游泳救生员资格考试的常识复习及试题及答案
- 景区消防安全管理工作的回顾与展望计划
- 2025山东德州市德城区招聘省属公费师范毕业生13人笔试备考题库及答案解析
- 2024年中小学“书香校园”读书节活动方案
- 核安全基础课件
- 杜绝形式主义-从我做起
- 麻醉三基培训课件
- 学生牛奶、糕点配送服务承诺及售后服务
- 垃圾分类引领绿色生活新潮流
- 排水箱涵研究报告
- 地域的永恒魅力教案
- 体制内年度工作总结
- 卡通风幼儿园餐前播报
- 2024-2025年上海中考英语真题及答案解析
评论
0/150
提交评论