页数:109页文件大小:4.33 MB来源: 物流系统仿真案例ppt课件
本课件围绕离散制造系统的两个案例展开:办公桌组装线案例演示层式结构、二维动画与Trigger时段控制等用法;柔性生产线案例面向5台加工中心与AGV小车,讲解传感器定位与任务队列调度,并比较投产与小车数量优化方案。
本页为第二章离散制造系统仿真案例封面,标示课程名称与本章主题。
离散制造业的生产特点是产品品种多、制造流程复杂,每一道工序都需在物料、加工工具、人员、生产任务、技术条件等齐备的前提下才可进行,而且在加工过程中存在不确定性,并可能会出现次品和返修,而这种不确定性又会进一步影响生产流程和生产效率。
因此,除新建车间等特定环境有三维仿真可视化需求外,离散制造系统更多采用流程仿真技术模拟制造流程,并通过仿真掌握制造系统的特点和规律。
本案例重点研究典型的办公桌制造组装线,即一张桌面和四条桌腿的办公桌案例。图2-1办公桌生产线仿真流程描绘了桌面制造组装线系统建模仿真的整体思路。
确定办公桌组装生产线工艺流程的第一步:绘制实际系统的简化工艺流程图,即图2-2办公桌组装生产线简化的工艺流程。
确定办公桌组装生产线工艺流程的第二步:绘制体现实际系统车间模块功能的详细工艺流程图,即图2-3办公桌组装生产线详细的工艺流程。
详细设备参数设置见教材P15-16。
层式设计技术类似于模块化设计技术,主要思想是将某些要素组合在一起,构成一个实现特定功能的子系统,并将这个子系统作为通用性模块与子系统或其他要素按一定流程组合,以构成新系统,从而实现主系统综合的功能。
Em-plant特色之一是提供层式结构设计技术,即主Frame对象包含多级Frame对象的设计技术,如图2-4层式结构示意图所示。
二维动画设计技术的基本思想是在模块化设计的基础上,针对每个子模型实现二维界面下的动画展示和动态演示。
本页为表2-1基础物流对象与系统实体的对应关系,下表列出相关数据。
原文仅给出表题,具体对应数据未在源文本中提取,需对照原图补充。
本页建立系统详细模型,即图2-10办公桌组装生产线系统详细仿真模型,按车间模块逐级展开。
当勾选Blocking复选框时,FlowControl会按照设置的比例执行,即后端节点按照27/73固定比例配送;当没有勾选Blocking复选框时,FlowControl会在两个机台上同时为空的情况下,才依此比例进行配送。
本页对比层式结构分流与普通分流方式(图2-13),并给出milling磨削车间模块动画设计的实现(图2-14)。
本页重点介绍层式结构建模过程,动画设计部分见教材P25。
examine检验区请求人工服务,Broker开始调度,Exporter提供人工操作。
本页为assembling组装车间模块化建模,此车间层式结构模型物流对象的布局和实现的功能如图所示,动画设计参见教材P29。
本页给出Assembling1车间的详细物流对象布局及实现的功能描述,如图2-25所示。
托盘和桌腿的图标置换方法与桌面图标置换类似,另外需进行图标编辑;以托盘为例,设置operational和waiting两种状态图标,效果如图2-26所示。
程序部分见教材P27-28。
loadingstation装载站和unloadingstation卸载站请求人工操作,方法类似桌面人工检验工序;Broker命令WorkerPool工人池进行调度,工人沿FootPath路径到达WorkerPlace工作站提供装载和拆卸操作。
packing自动捆扎设备在24小时中只有6时至22时的时段工作,其余时段设备处于pause状态,需使用Trigger对象控制packing设备不同时段的状态。
Trigger周期参数设置为相对时间下生效周期一天(1:00:00:00),循环按时间表作业;自动打包设备作业时间控制如图2-31所示。
使打包设备按照Trigger安排的时间表工作生效,可以使用属性控制,亦可使用方法控制,两种设置如图2-32所示。
仿真运行一天后统计相关资料。在EventController的Settings中设置结束时间为1:00:00:00,勾选Delete MUs on reset,可实现每次仿真实验后模型中移动的桌面、桌腿、托盘对象自动删除,从而实现重置。
统计packing车间模块PlaceBuffer中的办公桌数:使用Gauge对象以String方式和Pie方式动态显示,应用Plotter对象以线型图动态显示。
本页为图2-40柔性制造系统工件物流过程示意图,展示工件在系统内的流动顺序。
本页为图2-41柔性制造系统三维布局示意图,呈现各加工中心与轨道的三维空间关系。
本页为图2-42柔性制造系统布局示意图,标注各加工中心与物流通道的平面位置。
三类工件的工艺路线与额定工时:下表列出相关数据。
| 工件 | 工艺路线(加工中心[额定工时,s]) | 工序数 |
|---|---|---|
| part1 | CNC3[60] → CNC4[80] → CNC3[120] | 3 |
| part2 | CNC1[50] → CNC4[70] → CNC1[40] → CNC3[80] | 4 |
| part3 | CNC1[30] → CNC2[60] → CNC5[50] | 3 |
工件在设备上的加工时间服从正态分布,正态分布中心为额定工时,分布方差统一为10,数字单位为秒。
现在接到一批紧急加工订单,该订单对三类工件的批量要求如下表。
| 工件 | 批量(件) | 说明 |
|---|---|---|
| part1 | 60 | 与part2、part3合计180件 |
| part2 | 40 | 与part1、part3合计180件 |
| part3 | 80 | 与part1、part2合计180件 |
要求针对以上信息建立仿真模型,通过模拟该制造系统的物流状况,找到最好地满足要求的系统控制方法。
仿真是在四维(x,y,z,t)的虚拟空间环境中进行的,确定每个导引车的当前位置是难题。由于导引车始终在固定物流通道上运行,只需确定小车在物流通道上的位置即可。
采用Em-plant提供的传感器技术可达到这个目的:运行仿真时,AGV小车通过提取任务队列中的任务并参照设备位置关系确定下一步行走方向,每当导引车触发传感器后修改其位置属性,并以此确定当前所在位置和应触发的控制方法。
采用任务队列的方法控制AGV小车响应工件的运送请求:任务队列接受等待运送的工件发出的运送请求,运送请求可按假设的运送规则排列,系统中的空闲AGV小车按队列顺序依次提取运送请求并完成运送;仿真过程中任务队列不断删除已被提取的请求,并不断接受新的运送请求。
本页为图2-43任务队列的控制结构,展示运送请求的排列、提取与删除过程。
仿真中靠AGV小车搬运工件,AGV又通过任务队列选择工件,所以小车代替设备完成了对工件的选择,工件对设备的争夺冲突则依靠任务队列的排序规则化解。
本页为图2-44基本模型布局示意图,展示柔性制造系统仿真模型的总体布置。
本页给出Sensors布局情况(图2-45)与Sensors位置关系对应表(图2-46)。设置方法为:双击Track选择Controls,单击右下角Sensors,点击New新增ID,再根据案例要求设计距离。
工件与AGV小车的属性设置:下表列出相关数据。
| 对象 | 属性 | 数据类型 | 初始值 | 说明 |
|---|---|---|---|---|
| Entity(工件) | step | integer | 1 | 说明工件的加工流程 |
| Transporter(AGV小车) | length | — | 1.5m | 小车长度 |
| Transporter(AGV小车) | speed | — | 1m/s | 小车运行速度,并选择backwards |
| Transporter(AGV小车) | curpos | integer | 7 | 小车在Track上的当前位置 |
| Transporter(AGV小车) | des | integer | 0 | 小车的目的地 |
在Explorer窗口MUs目录中双击Entity,选择CustomAttributes,单击new添加自定义属性step;复制3次Entity并分别命名为part1、part2、part3。
在Em-plant中,所有部件都由Source生成,最终由Drain接受消灭。双击Source,在Attributes的Amount中填写180,表示一共产生180个工件;把表sourceproduct拖到Table框中并单击apply完成设置。
把Drain重命名为n61,单击Controls在Entrance中填写statis,表示每当有一个工件进入Drain时就触发statis方法。
另添加4个Variable,分别命名为n1、n2、n3和n,用于统计工件part1、part2、part3和总工件数目。
工件加工流程及时间由图2-47中的3个表决定,主要是把这3个表与加工设备联系起来。
setparttime在工件进入加工中心时触发,用于控制每个工件在加工中心的加工时间;由于各加工中心加工的工件不同,甚至同一工件的加工步数不同都会导致加工时间差异,所以加工时间是一个随工件变化的变量,具体代码参考教材P43。
小车运行就是不断读取task表:task表中没有数据则小车返回Source;不为空则根据第1行决定目的地。
当有工件在某个加工中心加工完成后,在进入出口缓冲时触发inserttask,其作用是将工件进入缓冲区的时间和缓冲区名称插入task表,task表按时间顺序自上到下排列。核心语句为:task.insert(EventController.simtime, ?.name)。
触发传感器的运送车控制流程如图2-50所示,具体代码参见教材P45-P47。
本页为图2-50触发传感器的运送车的控制流程,展示小车经过各传感器时的判断与动作。
在小车控制方法确定以后,主要还有source处的控制方法、加工工件统计方法、初始化以及重置的方法。
本案例设计的关键之处在于清楚小车的各种运行规则,再根据运行规则设计各元素的自定义变量和各种表;所有表和自定义变量都是为小车运行和工件加工时间设置服务的。
设备利用率设置表如图2-51所示,其余详细设置参考教材P50。
本页为图2-51设备利用率设置表,给出chart控件中各加工中心利用率数据的配置方式。
从图2-52可以看出,每个加工设备的工作时间都非常低,最高的CNC3都不到20%,最少的CNC5只有5%。可以看出这个模型在设备利用率方面并不是最优的。
轨道利用率分析方法和设备利用率类似,添加一个Chart到模型中并命名为Charttrack。大部分设置相同,只是在添加表时有差异。轨道利用率设置表如图2-53所示,运行结果如图2-54。
本页给出按图2-51所示设置表运行后得出的轨道利用率结果,用于判断轨道资源是否成为瓶颈。
运行上面模型得出的总时间大约为1:02:27:37.5000。由于设备加工时间服从正态分布,结果可能有一定差异,但相差应不超过15min。
加工180个零件的加工时间并不长,但最后却要1天多时间。加工周期是最重要的衡量指标,很明显这个基本模型需要改进;柔性生产的最大优点在于可以改变加工策略,分析各加工设备利用率可找出制约加工周期的障碍,从而优化模型。
在实际建模过程中可以觉察到,如果一类零件出得太集中,很容易出现死锁现象,因此在订单上有很大的提升空间。
两种方案将与未优化的顺序投产方案进行两两对比,从而得出最优化方案。
在小车数量不变的情况下,订单投入由顺序投入改变为时间分批投入,只需重新设置控制Source产生工件的sourceproduct表。
双击Source并在Attribute属性的Time of creation中选择DeliveryTable,然后在Table中填写sourceproduct并单击Apply,最后设置如图2-56所示;得到的设备利用率、轨道利用率和加工总时间如图2-57所示。
本页为图2-56按时间顺序投产设置表,按时间分批安排三类工件的投入。
本页为图2-57顺序投产结果,给出按时间顺序投产后的设备利用率、轨道利用率和加工总时间。
将订单拆分成2个part1、4个part3、1个part1、2个part2,依次循环出货180个工件。
双击Source,在Attributes中的Time of creation下拉选项选择NumberAdjustable,Amount填写180,MU selection选择sequence cyclical,Table填写sourceproduct,单击Apply即可。
本页为循环生产设置表,Source按该表顺序循环生产180个工件。
本页给出按次序循环投产后得到的设备利用率、轨道利用率和加工总时间,可与顺序投产方案对比。
小车的优化最主要的就是增加小车数量。在模型中复制轨道5次并分别命名为track1至track6,具体实现方法见教材P53,最终结果如图2-60(参见教材P54)。
结果可以看出:随着小车增加,设备利用率不断上升,轨道利用率却没什么变化,一直维持在88%附近;加工总时间在1辆到4辆之间增加明显,但从4辆到5、6辆增加并不多。小车增加到一定程度时CNC3有可能达到100%,但加工总时间的增量逐渐减少,最终可能达到恒定时间,此时制约模型的主要因素将是加工设备。
本章对离散制造系统的两个案例,在案例分析、模型搭建、仿真、分析优化等方面进行了详细说明,两个案例都采用仿真软件Em-plant实现。
读者可在本案例直线轨道建模的基础上,进一步考虑环形轨道的建模方法。
本页为第三章连续制造系统仿真案例封面,标示课程名称与本章主题。
因此,连续制造系统更需要采用流程仿真方法把握生产过程的规律,并进行科学的分析和管理。
该区域主要在出坯区因某种原因不能出坯或板坯有特殊要求需分开存放时使用。
NP跨上料由天车直接吊板坯至NP跨中部轨道(上料点),或由天车吊至距离上料点很近的备料点,再吊至上料点。该区域共有4部天车。
本页为表3-1 NP跨1区上料仿真结果与表3-2 NP跨2区上料仿真结果,下表列出相关数据。
结论:目前NP跨上料的方式,NP跨2区单独上料远远不能满足热轧需求,建议不实行NP跨单独上料的方式。
原文仅给出表题,具体数据未在源文本中提取,需对照原图补充。
若NP跨单独上料,改进后的示意图在距离轨道20m附近区域,于轨道不同的方向放置两个备料区,如图3-6所示。
MN跨上料由天车直接吊板坯至MN跨中部卸板台,再由卸板台推至轨道;在卸板台推板过程中,天车可以去执行其他的任务。该区域共有4部天车。
对热轧线达产时的MN跨作业进行仿真假设(见教材P64),并根据现场调研设置MN跨上料所有仿真参数(见教材P64)。
本页为图3-10板坯库MN跨上料仿真模型,建立的模型如图所示。
本页为表3-3板坯库MN跨1区上料仿真结果与表3-4板坯库MN跨2区上料仿真结果,下表列出相关数据。
结论:目前MN跨上料的方式,1区供坯能力要远大于2区,且天车干涉和加热炉的节奏对MN跨上料影响很大。
原文仅给出表题,具体数据未在源文本中提取,需对照原图补充。
MN跨分区连续供坯能力(天车干涉概率50%):下表列出相关数据。
| 区域 | 加热炉节奏 | 连续供坯能力(块) | 结论 |
|---|---|---|---|
| MN跨1区 | 1.5min | 约190 | 可满足1~2个计划的热轧需求,特殊情况下需MN跨单独上料应安排在1区 |
| MN跨2区 | 1.5min | 约20 | 单独上料能力有限 |
| MN跨2区 | 2min | 约150 | 为保险起见,2区上料应尽可能和其他区域搭配上料 |
图3-11板坯库MN跨单独上料区域给出了各区的空间位置关系。
按MN跨和NP跨的分区,多点上料可分为4种情况:MN跨1区和NP跨1区、MN跨1区和NP跨2区、MN跨2区和NP跨1区、MN跨2区和NP跨2区。
NP跨1区与MN跨1区的仿真:初始两跨天车按由近至远的原则选择垛位送坯,加热炉车间等至加热炉前缓冲满至4块时开始向加热炉送坯,采取两区插花供坯策略,结果见下表。
NP跨2区与MN跨2区的仿真同样采取两区插花供坯策略。
原文仅给出表题,具体数据未在源文本中提取,需对照原图补充。
NP跨1区与MN跨2区的仿真采取两区分供10块板坯的策略;NP跨2区与MN跨1区的仿真也采取两区分供10块板坯的策略,结果见下表。
原文仅给出表题,具体数据未在源文本中提取,需对照原图补充。
多点连续上料能力范围图如图3-14所示。
多点批次上料能力范围图如图3-15所示。
设某钢铁企业炼钢—连铸生产车间有3台转炉(CF1、CF2、CF3)、两台精炼炉(RF1、RF2)和两台连铸机(CC1、CC2),车间设备布置图如图3-16所示。
炼钢—连铸车间设备能力与钢种约束:下表列出相关数据。
| 设备 | 设备构成 | 可冶炼钢种 / 约束 | 作业时间 |
|---|---|---|---|
| 转炉 | CF1、CF2、CF3 | CF1:g1、g4、g7、g8;CF2:g2、g5;CF3:g3、g6 | 40min |
| 精炼炉 | RF1、RF2 | 能力与技术成本相同 | 35min |
| 连铸机 | CC1、CC2 | 每台最多只能进行一个浇次的生产 | 45min |
该炼钢—连铸车间只能炼8个钢种的产品,分别为g1至g8,各转炉所能冶炼的钢种有限;8个钢种的生产计划见教材。
天车调度问题是典型的多机、多任务、多约束、随机性复杂问题。
直轨道模型可以由多条轨道组成,为了避免天车冲突,每条轨道上只能有一辆天车,如图3-17所示。
为防止物流冲突,建模时设置天车和钢包一一对应,这样当钢包在精炼时空闲天车原地等待钢包完成加工。
核心语句:waituntil obj.nummu > 0 and obj.cont.currentproc = 2 prio 3; obj.cont.move(@);其中 obj 是台车工位,obj.cont 是钢包,@ 是天车。
在连铸机的控制方法Continuerestrict里面设置了如果连铸机里的钢包在出连铸机时还没有新钢包进来,就弹出报警窗口显示“断浇”,如图3-19所示。
分段轨道模型的特点是轨道分为两段,每段轨道上有一辆天车,每辆天车负责各自的任务,互相不干涉,如图3-20所示。
两个轨道分别通过不同的Method,由设备位置表读出需要放或者取得钢包的位置,写入相应的天车队列表。不同于直轨道模型,分段轨道的天车不再与钢包一一对应,而是通过规则排列天车队列表实现调度控制,设备位置表如图3-21所示。
分段轨道模型和直轨道模型类似,在发生断浇的时候也会弹出断浇窗口,界面如图3-22所示。
根据案例分析中8个钢种的计划绘制计划甘特图,8种钢种能在CC1和CC2铸机上连铸,计划甘特图如图3-23所示。
加入天车约束的影响后,在很多情况下天车等待时间很长,使整个工序完成时间后移,实际运行甘特图如图3-24所示。
下载地址:{{downurl}}
{{{a}}}
{{#b}}{{{b}}}
{{/b}} {{/title}} {{#nolog}}登陆注册
{{/nolog}} {{#djsx}}点我刷新
{{/djsx}} {{#gocz}} {{/gocz}} {{#ffqr}} {{/ffqr}}