一种五金钳混合生产调度方法与流程

文档序号:11153417阅读:318来源:国知局
一种五金钳混合生产调度方法与制造工艺
本发明涉及金属钳具生产领域,具体涉及一种五金钳混合生产调度方法。。
背景技术
:欧美国家因为文化差异、生活习惯以及社会性服务成本等原因,对各类五金工具的数量和质量的需求不断的增加;金砖四国等新兴高速发展中国家,特别是中国的长期高速发展,使得五金工具的需求呈现持续高速增长的态势。在人口红利消耗殆尽的今天,五金工具的加工工艺还是非常的落后,大量依赖人工,加工工艺还是传统手工和部分工艺半自动化的生产相结合的方式,这种生产方式和工艺,对作业人员要求高,培训周期长,作业效率较低,加工环境对工人健康危害较大,而且磨削产生的粉尘,在一定条件下,容易产生爆炸等灾难性安全事故,尤其是这与中国制造业2025和工业4.0标准的要求相距甚远。现有的五金钳磨削工艺大部分还是通过一线产线工人手工磨削,少部分有远见的企业已经开始着手进行机器换人策略,不过还是停留在一整套设备完成一把五金钳抛光磨削的层面。五金钳具根据用途的不同可以分为数十种类别,但对于大部分钳具而言他们的抛光磨削并不需要完成上述设备的整套流程,这就造成了产能的浪费。同时整套设备同时完成数个钳具的不同磨削工艺,但是由于不同工艺所需的磨削时间不一致的原因,就必然会出现所有工位完成后等待最慢的工位工艺完成后才能实现设备的流转,也造成了产能和能耗的浪费。技术实现要素:本发明所要解决的技术问题是针对
背景技术
中所涉及到的缺陷,提供一种五金钳混合生产的调度方法,根据车间现有各工艺的设备数量以及需要完成的磨削任务,给出切实可行的调度方案,提高设备利用效率的同时降低了能耗。本发明为解决上述技术问题采用以下技术方案:一种五金钳混合生产调度方法,包括如下步骤:步骤1),读取车间每一种工序机器的数目、读取本次待加工的工件的种类和数目、每一种待加工工件要完成的工序及耗时;步骤2),针对每一种工序建立存放其空闲机器的集合、针对每一种工序建立其待加工工件的集合、针对每一台工序机器建立其累计耗时;步骤3),随机选择一台空闲的工序机器,判断该工序机器对应工序的待加工工件的集合是否为空,若是,执行步骤10),否则执行步骤4);步骤4),从该工序机器对应工序的待加工工件的集合中选择耗时最小的工件作为该工序机器的任务,并将该耗时最小的工件从该待加工工件的集合中移除;步骤5),将该耗时最小的工件的耗时累加到该工序机器的累计耗时;步骤6),将该工序机器从其对应工序的空闲机器的集合中屏蔽;步骤7),对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽;步骤8),在该工序机器完成对该耗时最小的工件的加工后;步骤8.1),将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2),对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9),跳转执行步骤3);步骤10),将该工序机器放回其对应工序的空闲机器的集合;步骤11),针对每一种工序判断其待加工工件的集合是否为空,若每一种工序的待加工工件的集合均为空,则执行步骤12);否则执行步骤3);步骤12),所有加工任务已全部分配完成,取每一台工序机器累计耗时中的最大值为最高耗时;步骤13),输出机器集中的最高耗时以及各台机器的累计耗时。本发明还公开了另外一种五金钳混合生产调度方法,包括如下步骤:步骤1),读取车间每一种工序机器的数目、读取本次待加工的工件的种类和数目、每一种待加工工件要完成的工序及耗时;步骤2),针对每一种工序建立存放其空闲机器的集合、针对每一种工序建立其待加工工件的集合、针对每一台工序机器建立其累计耗时;步骤3),随机选择一台空闲的工序机器,判断该工序机器对应工序的待加工工件的集合是否为空,若是,执行步骤10),否则执行步骤4);步骤4),从该工序机器对应工序的待加工工件的集合中选择耗时最大的工件作为该工序机器的任务,并将该耗时最大的工件从该待加工工件的集合中移除;步骤5),将该耗时最大的工件的耗时累加到该工序机器的累计耗时;步骤6),将该工序机器从其对应工序的空闲机器的集合中屏蔽;步骤7),对于该工序机器对应工序以外的每一种工序,将该耗时最大的工件在其待加工工件的集合中屏蔽;步骤8),在该工序机器完成对该耗时最大的工件的加工后;步骤8.1),将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2),对于该工序机器对应工序以外的每一种工序,将该耗时最大的工件在其该待加工工件的集合中取消屏蔽;步骤9),跳转执行步骤3);步骤10),将该工序机器放回其对应工序的空闲机器的集合;步骤11),针对每一种工序判断其待加工工件的集合是否为空,若每一种工序的待加工工件的集合均为空,则执行步骤12);否则执行步骤3);步骤12),所有加工任务已全部分配完成,取每一台工序机器累计耗时中的最大值为最高耗时;步骤13),输出机器集中的最高耗时以及各台机器的累计耗时。本发明采用以上技术方案与现有技术相比,具有以下技术效果:本发明提出了一种五金钳混合生产调度方法,从机器选择工序的角度出发,既能保证所有机器的负债平衡,又尽可能的降低了机器空转的时间,同时又为所有待加工的工序分配了合适的机器,提高金属钳具打磨的自动化水平、降低成本、提升效率,具有一定的应用价值。附图说明图1是本发明的流程示意图;图2是本发明中一个优先选择耗时最小的工件的实施例的分配结果;图3是本发明中一个优先选择耗时最大的工件的实施例的分配结果。具体实施方式下面结合附图对本发明的技术方案做进一步的详细说明:如图1所示,本发明公开了一种五金钳混合生产调度方法,包括如下步骤:步骤1),读取车间每一种工序机器的数目、读取本次待加工的工件的种类和数目、每一种待加工工件要完成的工序及耗时;步骤2),针对每一种工序建立存放其空闲机器的集合、针对每一种工序建立其待加工工件的集合、针对每一台工序机器建立其累计耗时;步骤3),随机选择一台空闲的工序机器,判断该工序机器对应工序的待加工工件的集合是否为空,若是,执行步骤10),否则执行步骤4);步骤4),从该工序机器对应工序的待加工工件的集合中选择耗时最小的工件作为该工序机器的任务,并将该耗时最小的工件从该待加工工件的集合中移除;步骤5),将该耗时最小的工件的耗时累加到该工序机器的累计耗时;步骤6),将该工序机器从其对应工序的空闲机器的集合中屏蔽;步骤7),对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽;步骤8),在该工序机器完成对该耗时最小的工件的加工后;步骤8.1),将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2),对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9),跳转执行步骤3);步骤10),将该工序机器放回其对应工序的空闲机器的集合;步骤11),针对每一种工序判断其待加工工件的集合是否为空,若每一种工序的待加工工件的集合均为空,则执行步骤12);否则执行步骤3);步骤12),所有加工任务已全部分配完成,取每一台工序机器累计耗时中的最大值为最高耗时;步骤13),输出机器集中的最高耗时以及各台机器的累计耗时。图1中还包含了另外一种五金钳混合生产调度方法,包括如下步骤:步骤1),读取车间每一种工序机器的数目、读取本次待加工的工件的种类和数目、每一种待加工工件要完成的工序及耗时;步骤2),针对每一种工序建立存放其空闲机器的集合、针对每一种工序建立其待加工工件的集合、针对每一台工序机器建立其累计耗时;步骤3),随机选择一台空闲的工序机器,判断该工序机器对应工序的待加工工件的集合是否为空,若是,执行步骤10),否则执行步骤4);步骤4),从该工序机器对应工序的待加工工件的集合中选择耗时最大的工件作为该工序机器的任务,并将该耗时最大的工件从该待加工工件的集合中移除;步骤5),将该耗时最大的工件的耗时累加到该工序机器的累计耗时;步骤6),将该工序机器从其对应工序的空闲机器的集合中屏蔽;步骤7),对于该工序机器对应工序以外的每一种工序,将该耗时最大的工件在其待加工工件的集合中屏蔽;步骤8),在该工序机器完成对该耗时最大的工件的加工后;步骤8.1),将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2),对于该工序机器对应工序以外的每一种工序,将该耗时最大的工件在其该待加工工件的集合中取消屏蔽;步骤9),跳转执行步骤3);步骤10),将该工序机器放回其对应工序的空闲机器的集合;步骤11),针对每一种工序判断其待加工工件的集合是否为空,若每一种工序的待加工工件的集合均为空,则执行步骤12);否则执行步骤3);步骤12),所有加工任务已全部分配完成,取每一台工序机器累计耗时中的最大值为最高耗时;步骤13),输出机器集中的最高耗时以及各台机器的累计耗时。这两种方法的不同之处在于,进行加工时,优先选择耗时最小的工件还是优先选择耗时最大的工件。下面结合具体实例对本发明作详细说明。本实例包含一台小面磨削机、两台弧面磨削机、一台倒角磨削机、两台大面磨削机,待加工磨削任务为:一把尖嘴钳、三把钢丝钳、两把斜嘴钳、一把水口钳。首先优先选择耗时最小的工件,即采用耗时最小的原则:步骤1:读取上述的车间各工序机器数目、以及本次待加工的工件种类和数目,下表为各类五金钳要完成的工序及耗时:五金钳各工艺打磨耗时小面磨削时间/min弧面磨削时间/min倒角磨削时间/min大面磨削时间/min尖嘴钳\8\8钢丝钳2358斜嘴钳25\4水口钳38\5步骤2:针对每一种工序建立存放其空闲机器的集合即建立各工序空闲机器集Machine{}:小面:Machine1{M1};弧面:Machine2{M1,M2};倒角:Machine3{M1};大面:Machine4{M1,M2};针对每一种工序建立其待加工工件的集合即各工序待加工工件集Process{}:小面Process1{P2,P3,P4,P5,P6,P7};弧面Process2{P1,P2,P3,P4,P5,P6,P7};倒角Process3{P2,P3,P4};大面Process4{P1,P2,P3,P4,P5,P6,P7};针对每一台工序机器的建立其累计耗时即各机器的累计耗时集合Totaltime{0,0,0,0,0,0};步骤3:随机选择一台机器,选择的结果为弧面磨削机M2,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P2,P3,P4},都为3min,选择P2为弧面磨削机M2的加工任务,在Process2中移除工序P2,即弧面待加工工序集为Process2{P1,P3,P4,P5,P6,P7};步骤5:各机器的累计耗时集合为Totaltime{0,0,3,0,0,0};步骤6:屏蔽Machine2{M1,M2}中的M2,即Machine2{M1};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P3,P4,P5,P6,P7},Process3{P3,P4},Process4{P1,P3,P4,P5,P6,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选择的结果是倒角磨削机M1,该机器对应工序待加工工序集Process3不为空,执行步骤4;步骤4:按照耗时最小的原则,Process3中耗时最短的是{P3,P4},都为5min,选择P3为倒角磨削机M1的加工任务,在Process3中移除工序P3,即倒角待加工工序集为Process3{P4};步骤5:各机器的累计耗时集合为Totaltime{0,0,3,5,0,0};步骤6:屏蔽Machine3{M1}中的M1,即Machine3{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P4,P5,P6,P7},Process2{P1,P4,P5,P6,P7},Process4{P1,P4,P5,P6,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选择的结果是小面磨削机M1,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P4,P5,P6},都为2min,选择P4为小面磨削机M1的加工任务,在Process1中移除工序P4,即倒小面待加工工序集为Process1{P5,P6,P7};步骤5:各机器的累计耗时集合为Totaltime{2,0,3,5,0,0};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P1,P5,P6,P7},Process4{P1,P5,P6,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选择的结果是大面磨削机M1,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤4:按照耗时最小的原则,Process4中耗时最短的是{P5,P6},都为4min,选择P5为大面磨削机M1的加工任务,在Process4中移除工序P5,即大面待加工工序集为Process4{P1,P6,P7};步骤5:各机器的累计耗时集合为Totaltime{2,0,3,5,4,0};步骤6:屏蔽Machine4{M1,M2}中的M1,即Machine4{M2};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P6,P7},Process2{P1,P6,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选择的结果是大面磨削机M2,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤4:按照耗时最小的原则,Process4中耗时最短的是{P6},为4min,选择P6为大面磨削机M2的加工任务,在Process4中移除工序P6,即大面待加工工序集为Process4{P1,P7};步骤5:各机器的累计耗时集合为Totaltime{2,0,3,5,4,4};步骤6:屏蔽Machine4{M2}中的M2,即Machine4{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P7},Process2{P1,P7},Process4{P1,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选择的结果是弧面磨削机M1,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P1,P7},都为8min,选择P1为弧面磨削机M1的加工任务,在Process2中移除工序P1,即弧面待加工工序集为Process2{P7};步骤5:各机器的累计耗时集合为Totaltime{2,8,3,5,4,4};步骤6:屏蔽Machine2{M1}中的M1,即Machine2{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P7},Process2{P7},Process4{P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到2min时,小面磨削机M1的磨削任务已完成,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P7},为3min,选择P7为小面磨削机M1的加工任务,在Process1中移除工序P7,即小面待加工工序集为Process1{};步骤5:各机器的累计耗时集合为Totaltime{5,8,3,5,4,4};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P4},Process3{P4},Process4{P4};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到3min时,弧面磨削机M2的磨削任务已完成,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P4},为3min,选择P4为弧面面磨削机M2的加工任务,在Process2中移除工序P4,即弧面待加工工序集为Process2{};步骤5:各机器的累计耗时集合为Totaltime{5,8,6,5,4,4};步骤6:屏蔽Machine2{M2}中的M2,即Machine2{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P2},Process3{P2},Process4{P2};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到4min时,大面磨削机M1和M2的磨削任务已完成,随机选取的结果为大面磨削机M1,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤4:按照耗时最小的原则,Process4中耗时最短的是{P2},为8min,选择P2为大面磨削机M1的加工任务,在Process4中移除工序P2,即大面待加工工序集为Process4{};步骤5:各机器的累计耗时集合为Totaltime{5,8,6,5,12,4};步骤6:屏蔽Machine4{M1,M2}中的M1,即Machine4{M2};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P5,P6},Process3{P5,P6};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为大面磨削机M2,该机器对应工序待加工工序集Process4为空,执行步骤10;步骤10:将该工序机器放回其对应工序的空闲机器的集合;步骤11:针对每一种工序判断其待加工工件集判断是否为空,还有待加工工序集不为空,执行步骤3;步骤3:当耗时累计到5min时,小面磨削机M1和倒角磨削机M1的磨削任务已完成,随机选取的结果为小面磨削机M1,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P3,P5,P6},为2min,选择P3为小面磨削机M1的加工任务,在Process1中移除工序P3,即小面待加工工序集为Process1{P5,P6};步骤5:各机器的累计耗时集合为Totaltime{7,8,6,5,12,4};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P5,P6,P7},Process4{P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为大面磨削机M2,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤4:按照耗时最小的原则,Process4中耗时最短的是{P7},为5min,选择P7为大面磨削机M2的加工任务,在Process4中移除工序P7,即大面待加工工序集为Process4{};步骤5:各机器的累计耗时集合为Totaltime{7,8,6,5,12,9};步骤6:屏蔽Machine4{M2}中的M2,即Machine4{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P5,P6},Process2{P5,P6};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到6min时,弧面磨削机M2的磨削任务已完成,随机选取的结果为弧面磨削机M2,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P5,P6},为5min,选择P5为弧面磨削机M2的加工任务,在Process2中移除工序P5,即弧面待加工工序集为Process2{P6};步骤5:各机器的累计耗时集合为Totaltime{7,8,11,5,12,9};步骤6:屏蔽Machine2{M2}中的M2,即Machine2{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P6},Process3{P4},Process4{P4};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为倒角磨削机M1,该机器对应工序待加工工序集Process3不为空,执行步骤4;步骤4:按照耗时最小的原则,Process3中耗时最短的是{P4},为5min,选择P4为倒角磨削机M1的加工任务,在Process3中移除工序P4,即倒角待加工工序集为Process3{};步骤5:各机器的累计耗时集合为Totaltime{7,8,11,10,12,9};步骤6:屏蔽Machine3{M1}中的M1,即Machine3{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P6},Process2{P6};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到7min时,小面磨削机M1的磨削任务已完成,随机选取的结果为小面磨削机M1,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P6},为2min,选择P6为小面磨削机M1的加工任务,在Process1中移除工序P6,即小面待加工工序集为Process1{};步骤5:各机器的累计耗时集合为Totaltime{9,8,11,10,12,9};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P3},Process4{P3};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到8min时,弧面磨削机M1的磨削任务已完成,随机选取的结果为弧面磨削机M1,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P3},为3min,选择P3为弧面磨削机M1的加工任务,在Process2中移除工序P3,即弧面待加工工序集为Process2{};步骤5:各机器的累计耗时集合为Totaltime{9,11,11,10,12,9};步骤6:屏蔽Machine2{M1}中的M1,即Machine2{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process4{P1};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到9min时,小面磨削机M1的磨削任务已完成,随机选取的结果为小面磨削机M1,该机器对应工序待加工工序集Process1为空,执行步骤10;步骤10:将该工序机器放回其对应工序的空闲机器的集合;步骤11:针对每一种工序判断其待加工工件的集合判断是否为空,还有待加工工序集不为空,执行步骤3;步骤3:当耗时累计到10min时,大面磨削机M2的磨削任务已完成,随机选取的结果为大面磨削机M2,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤:4:按照耗时最小的原则,Process4中耗时最短的是{P1},为8min,选择P1为大面磨削机M2的加工任务,在Process4中移除工序P1,即大面待加工工序集为Process4{};步骤5:各机器的累计耗时集合为Totaltime{9,11,11,10,12,17};步骤6:屏蔽Machine4{M2}中的M2,即Machine4{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P6,P7};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到11min时,倒角磨削机M1以及弧面磨削机M1和M2的磨削任务已完成,随机选取的结果为弧面磨削机M1,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P6},为5min,选择P6为弧面磨削机M1的加工任务,在Process2中移除工序P6,即弧面待加工工序集为Process2{P7};步骤5:各机器的累计耗时集合为Totaltime{9,16,11,10,12,17};步骤6:屏蔽Machine2{M1,M2}中的M1,即Machine2{M2};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process2{P7},Process4{P3,P4};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为弧面磨削机M2,该机器对应工序待加工工序集Process2不为空,执行步骤4;步骤4:按照耗时最小的原则,Process2中耗时最短的是{P7},为8min,选择P7为弧面磨削机M2的加工任务,在Process2中移除工序P7,即弧面待加工工序集为Process2{};步骤5:各机器的累计耗时集合为Totaltime{9,16,19,10,12,17};步骤6:屏蔽Machine2{M2}中的M2,即Machine2{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{},Process4{P3,P4};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为小面磨削机M1,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P5},为2min,选择P5为小面磨削机M1的加工任务,在Process1中移除工序P5,即小面待加工工序集为Process1{};步骤5:各机器的累计耗时集合为Totaltime{11,16,19,10,12,17};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process4{P3,P4};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为倒角磨削机M1,该机器对应工序待加工工序集Process2为空,执行步骤10;步骤10:将该工序机器放回其对应工序的空闲机器的集合;步骤11:针对每一种工序判断其待加工工件的集合判断是否为空,还有待加工工序集不为空,执行步骤3;步骤3:当耗时累计到12min时,大面磨削机M1磨削任务已完成,随机选取的结果为大面磨削机M1,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤:4:按照耗时最小的原则,Process4中耗时最短的是{P3,P4},为8min,选择P4为大面磨削机M1的加工任务,在Process4中移除工序P4,即大面待加工工序集为Process4{P3};步骤5:,各机器的累计耗时集合为Totaltime{11,16,19,10,20,17};步骤6:屏蔽Machine4{M1}中的M1,即Machine4{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process1{P2},Process3{P2},Process4{P3};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到13min时,小面磨削机M1磨削任务已完成,随机选取的结果为小面磨削机M1,该机器对应工序待加工工序集Process1不为空,执行步骤4;步骤4:按照耗时最小的原则,Process1中耗时最短的是{P2},为2min,选择P2为小面磨削机M1的加工任务,在Process1中移除工序P2,即小面待加工工序集为Process1{};步骤5:各机器的累计耗时集合为Totaltime{13,16,19,10,20,17};步骤6:屏蔽Machine1{M1}中的M1,即Machine1{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process4{P3};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为倒角磨削机M1,该机器对应工序待加工工序集Process3为空,执行步骤10;步骤10:将该工序机器放回其对应工序的空闲机器的集合;步骤11:针对每一种工序判断其待加工工件的集合判断是否为空,还有待加工工序集不为空,执行步骤3;步骤3:当耗时累计到15min时,小面磨削机M1的磨削任务已完成,随机选取的结果为倒角磨削机M1,该机器对应工序待加工工序集Process3不为空,执行步骤4;步骤4:按照耗时最小的原则,Process3中耗时最短的是{P2},为5min,选择P2为倒角磨削机M1的加工任务,在Process3中移除工序P2,即倒角待加工工序集为Process3{};步骤5:各机器的累计耗时集合为Totaltime{13,16,19,15,20,17};步骤6:屏蔽Machine3{M1}中的M1,即Machine3{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process4{P3};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:当耗时累计到18min时,大面磨削机M2的磨削任务已完成,该机器对应工序待加工工序集Process4不为空,执行步骤4;步骤4:按照耗时最小的原则,Process4中耗时最短的是{P3},为8min,选择P3为大面磨削机M2的加工任务,在Process4中移除工序P3,即倒角待加工工序集为Process4{};步骤5:各机器的累计耗时集合为Totaltime{13,16,19,15,20,25};步骤6:屏蔽Machine4{M2}中的M2,即Machine4{};步骤7:屏蔽该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其待加工工件的集合中屏蔽,即Process4{};步骤8:在该工序机器完成对该耗时最小的工件的加工后:步骤8.1:将该工序机器从其对应工序的空闲机器的集合中取消屏蔽;步骤8.2:对于该工序机器对应工序以外的每一种工序,将该耗时最小的工件在其该待加工工件的集合中取消屏蔽;步骤9:跳转执行步骤3;步骤3:随机选取的结果为弧面磨削机M1,该机器对应工序待加工工序集Process2为空,执行步骤10;步骤10:将该工序机器放回其对应工序的空闲机器的集合;步骤11:针对每一种工序判断其待加工工件的集合判断是否为空,每一种工序的待加工工件的集合均为空,执行步骤12;步骤12:所有加工任务已全部分配完成,最高耗时为:25min,各台机器的累积耗时如图2所示;步骤13:本方案做设计的调度加工方法最高耗时为25min,各机器的累计耗时为{13,16,19,15,20,25},本次设计的生产调度方案如下:小面磨削机M1P4→P7→P3→P6→P5→P2弧面磨削机M1P1→P3→P6弧面磨削机M2P2→P4→P5→P7倒角磨削机M1P3→P4→P2大面磨削机M1P5→P2→P4大面磨削机M2P6→P7→P1→P3优先选择耗时最大的工件时,即采用耗时最大的原则时,流程与以上类似,这里不再赘述,仅仅给出采用耗时最大原则时的生产调度方案:小面磨削机M1P7→P3→P5→P6→P4→P2弧面磨削机M1P5→P2→P1→P4弧面磨削机M2P6→P7→P3倒角磨削机M1P2→P3→P4大面磨削机M1P1→P2→P3大面磨削机M2P4→P5→P6→P7采用耗时最大的原则时各台机器的累积耗时如图3所示。本
技术领域
技术人员可以理解的是,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1