APP下载

钴-60γ辐照装置生产排程算法设计及应用研究

2016-06-12周菁龚频

新型工业化 2016年4期
关键词:计算机应用算法

周菁,龚频

(1. 江苏省南京工程高等职业学校信息工程系,南京 211135;2. 南京航空航天大学核科学与工程系,南京 210016)



钴-60γ辐照装置生产排程算法设计及应用研究

周菁1,龚频2

(1. 江苏省南京工程高等职业学校信息工程系,南京 211135;2. 南京航空航天大学核科学与工程系,南京 210016)

摘要:当辐照生产计划中订单数量较多且产品剂量要求多样时,通过传统的人工计算方式进行生产排程变得十分困难。本文针对钴-60γ辐照装置的生产过程特点,设计了一种新的生产排程算法,并且用电子表格软件Excel实现了该算法的基本功能。该程序理论上可以同时计算8千多个订单的进出货时间,计算结果可以精确到“秒”。以20个订单和100个订单数量进行测试的结果表明该程序基本没有计算延时。该程序可同时处理的订单数量、计算精度以及计算速度远远超过人工计算的水平。实际生产测试结果表明,吊箱内产品信息与计算结果完全一致,实际进出货时间与计算结果偏差在5%以内。工作人员使用该程序可以更加便捷、准确地对辐照产品订单进行生产计划安排和调整。同时可以迅速、准确地预计出产品的交付时间,提高客户满意度。

关键词:计算机应用;算法;理论研究与设计;辐照装置;生产排程

0 引言

钴-60γ辐照装置是利用钴-60放射源产生的γ射线对产品进行辐射加工的大型专业设备,主要用于食品、保健品、中成药、包装材料、医疗器械、化妆品等产品的辐照灭菌以及材料的辐照改性。截至2010年,我国有设计规模30万居里以上的γ辐照装置140余座[1-2]。近年来随着辐照装置数量的不断增加,辐射加工行业竞争日趋激烈。在激烈的市场竞争环境下,拥有辐照装置的各单位均致力于提高自身的生产效率和销售水平。在辐照装置正常生产的过程中,一个新的订单或现有订单的变更必然引起生产计划的重新调整。当生产计划中订单数量较多且产品剂量要求多样时,通过传统的人工计算方式进行生产排程非常困难,计算效率低且准确性难以保证[3-5]。如果计算错误可能提供给客户错误的生产信息,造成严重后果。例如某个订单预计交货时间过于悲观,可能因无法满足客户提货要求而损失订单;如果预计交货时间过于乐观,则会因客户无法按时提货而损失大量信誉。因此研究适用于钴-60γ辐照装置的生产排程算法,用计算机程序代替人工进行生产计划的安排和计算,对于提升相关工作效率和提高客户满意度具有十分重要的意义。

1 生产排程算法的设计原理

钴-60γ辐照装置的生产过程简而言之就是将产品装入环形生产线上的一个个空吊箱,然后通过机械传输系统将吊箱送入源室(钴-60放射源工作的房间)接受一定剂量的射线照射,吊箱出源室后将产品卸下再装入新的产品,如此循环[6]。产品所接受的辐照剂量与吊箱在源室内停留的总时间成正比。辐照总时间在生产中通过两个加工参数来控制,一是“发车时间”或“链速”,二是“轮数”。“发车时间”或“链速”用来控制吊箱的行进速度,其中“发车时间”对应气缸推动式过源机械的辐照装置,“链速”对应悬挂链式过源机械的辐照装置。“轮数”用来控制吊箱进出源室的次数即产品辐照的圈数。本文算法的程序设计基于 “发车时间”控制的辐照装置。当应用于“链速”控制的辐照装置时需要将“链速”转换为“发车时间”。

图1 辐照装置生产排程算法流程图Fig. 1 Flow chart of algorithm about production scheduling of Co-60 gamma irradiation facility

假设在辐照装置的环形生产线上有n个吊箱,每个吊箱可以单独设定“发车时间”和“轮数”。辐照生产计划的执行,就是将生产计划中所有订单内的产品按顺序分配给每个吊箱,并根据订单的剂量要求设定每个吊箱的“发车时间”和“轮数”,n个吊箱在生产线上不断循环,依次执行装卸货的动作,直至所有订单出货完毕。在此概念基础上可以建立辐照装置的生产排程算法,其流程如图1所示。该算法由3个条件判断(用J1-J3表示)和6个操作程序(用P1-P6表示)组成。算法流程为:开始生产(START),执行程序P1;P1)将首个订单内的产品装入当前吊箱,设定该吊箱的“发车时间”和“轮数”,执行程序P2;P2)装货后的吊箱进入源室接受辐照处理,执行程序P3;P3)从源室内出来一个新的吊箱,吊箱剩余“轮数”减1(最低为0),进入判断J1;J1)判断新吊箱是否达到出货条件,“否”则执行程序P2重新进入源室,“是”则执行程序P4;P4)吊箱进入卸货区,执行程序P5;P5)将吊箱内产品卸下,进入判断J2;J2)判断生产计划中所有订单是否出货完毕,“是”则生产计划执行结束(END),“否”执行程序P6;P6)吊箱进入装货区,进入判断J3;J3)判断生产计划中所有订单是否进货完毕,“是”则执行程序P2让吊箱放空进入源室,“否”则执行程序P1,继续将当前订单内的产品装入吊箱。

根据上述算法流程,利用计算机程序可以实现钴-60γ辐照装置的生产排程。将吊箱作为判断和操作的基本对象,赋予每个吊箱编号、装货订单号、装货数量、发车时间、设定轮数、剩余轮数、进出货时间等属性。将辐照产品的生产计划(订单内容和生产顺序)作为计算程序的输入项,从图1中的“START”开始,每一个吊箱的判断和操作过程对应一条记录,依次执行算法流程直至“END”结束,计算生成一系列记录,对应整个生产计划的执行过程。程序执行完毕后,从生成的记录里提取出订单的出货时间等重要生产信息。将计算出的生产信息如产品交付时间与预期目标进行比较,根据需要对生产计划中的订单内容和顺序进行调整并重新计算,直至生产计划满足要求,完成辐照装置的生产排程。相关计算机程序可以结合数据库软件进行开发[7-8]。考虑到通用性、低成本、易维护等因素,本文提供了一种利用电子表格软件Excel实现上述算法的解决方案。用Excel的1“行”表示一个吊箱的判断和操作过程,每40“行”代表40个吊箱走完1“轮”。以40“行”为周期进行重复,模拟辐照装置循环生产的过程。由于进出货操作是在每两个吊箱行进的间隔时间内完成,当吊箱有进出货动作时,我们认为此时既是吊箱内原有产品的出货时间,也是新装入产品的进货时间,统一用该吊箱的“进出货时间”来表示。在每1“行”里记录吊箱的“进出货时间”,将生产过程中每个订单首箱产品进货和尾箱产品出货时所在吊箱的“进出货时间”分别提取出来,就可以得到所有订单的进货时间和出货时间[9-11]。下文对程序设计进行详细说明。

2 界面及代码设计

2.1界面设计

基于Excel的钴-60γ辐照装置生产排程程序分为三个模块,分别是“初始化”模块、“计算”模块和“生产计划安排”模块。“初始化”模块用于记录辐照装置生产线上所有吊箱在程序计算时的状态信息。因为吊箱在计算开始时很可能还装有未辐照完的产品,此时吊箱的“发车时间”和“剩余轮数”即计算时吊箱的初始值。“计算”模块用于模拟辐照装置的生产过程,并计算出每个吊箱进出货过程的各项变量,包括其装卸的订单信息及进出货时间。“生产计划安排”模块用于输入订单信息并显示订单的进出货时间计算结果。此三个模块分别对应Excel文件中的三个“工作表”,如表1、表2和表3所示,各表中第1行均为Excel表的列号,第1列均为Excel表的行号。以下文中所有与“行”有关的描述都是指工作表中的行号。例如“第X行”表示工作表中行号为“X”的那行数据。

表1中第1行为项目名称;2至41行对应1至40号吊箱的初始化信息;43至45行为初始化时处于卸货区的即将减少剩余“轮数”的最近一个吊箱信息,该吊箱的“进货时刻”即为整个程序计算的开始时刻。表1中深灰色区域为输入区域,程序使用者只能在此区域内输入数据;浅灰色区域为自动计算区域,计算并显示其他单元格需要引用的变量。

表2中第1行为项目名称。从A列到U列的项目名称分别为:A/生产总轮数;B/吊箱号;C/箱内订单号;D/箱内数量;E/剩余轮数;F/是否出货;G/本次出货数量;H/出货订单累计卸货数量;I/出货订单已出完;J/(空白);K/进货订单号;L/订单累计进货数量;M/订单剩余进货数量;N/本次进货数量;O/订单开始进货;P/进货订单已进完;Q/进出货后箱内订单号;R/进出货后箱内数量;S/进出货后剩余轮数;T/发车时间;U/进出货时间。表中“J”列左右两边分别为吊箱出货和进货信息,为了两边数据在视觉上易于区分将“J”列内容留为空白。

表1 “初始化”工作表界面Tab. 1 Interface of the “initial” sheet

表2 “计算”工作表界面Tab. 2 Interface of the “calculate” sheet

表2中第2至41行对应“生产总轮数”中第1轮进货的1至40号吊箱;42至81行对应“生产总轮数”中第2轮进货的1至40号吊箱;82至121行对应“生产总轮数”中第3轮进货的1至40号吊箱,依此类推。表中共包含8041行相当于“生产总轮数”为200轮的生产信息,该信息量大概相当于跨度为一个月的生产计划。如果需要扩充生产计划的容量,只需增加生产总轮数即可。表2中没有需要使用者输入的项目,其中浅灰色区域为自动计算区域,可显示出每个步骤的计算结果。

表3中第1行为项目名称。从A列到L列的项目名称分别为:A/订单号;B/客户名称;C/产品名称;D/产品批号;E/发车时间(秒);F/轮数;G/总数量;H/每吊箱装货量;I/总需要吊箱数;J/开始时间;K/结束时间;L/发车时间(mm:ss格式)。2至101行对应1至100号订单信息。深灰色区域为输入区域,

使用者只能在此区域内输入数据;浅灰色区域为自动计算区域,计算并显示其他单元格需要引用的变量。

表3 “生产计划安排”工作表界面Tab. 3 Interface of the “production plan” sheet

2.2代码设计

2.2.1“初始化”工作表的代码设计

激活“初始化”工作表,对照表4中的“单元格位置”输入相应的“代码内容”,所有单元格输完后,对F2的单元格内容进行复制,选择F3至F41单元格进行粘贴操作。至此“初始化”工作表的代码全部输入完成。

表4 “初始化”工作表内代码Tab. 4 Code in the “initial” sheet

对应表4中各个序号对应代码的含义如下。1)将发车时间格式从“秒”转换为MM:SS格式。2)得到40个吊箱中有“进货时刻”数据的吊箱所在的行号(该时刻为选定的程序计算开始时刻)。3)得到D43对应的进货时刻。4)得到D43对应的发车时间。

2.2.2“计算”工作表的代码设计

激活“计算”工作表,对照表5中的“单元格位置”输入相应的“代码内容”,代码的含义和功能见“代码说明”中的描述。所有单元格输完后,对C2至E2的单元格内容进行复制,选择C3至E41单元格进行粘贴操作,则第1轮的C至E列的代码输入完成。对C42至E42的单元格内容进行复制,选择C43至E8041单元格进行粘贴操作,则第2至200轮的C至E列代码输入完成。对F2至U2的单元格内容进行复制,选择F3至U8041单元格进行粘贴操作,则第1至200轮的F至U列代码输入完成。

由于“计算”工作表中第1轮进货时存在初始化的问题,即开始进货的吊箱基本上不会是第1个,“C”、“D”、“E”三列的数据需要引用“初始化”工作表的数据,而从第2轮开始,这三列只需要引用本工作表内的上一轮数据,因此从第2轮的记录(42行)开始这三列的代码将略有变化,设计者在输入代码时需要特别注意。

表5 “计算”工作表内代码Tab. 5 Code in the “calculate” sheet

对应表5中各个序号对应代码的含义如下。1)将箱内订单号初始化为“0”。2)本轮进出货前“箱内订单号”等于上一轮“进出货后箱内订单号”。3)得到初始化中相应吊箱号的箱内数量。4)本轮进出货前“箱内数量”等于上一轮“进出货后箱内数量”。5)如果该吊箱号〈开始进货的首个吊箱号,则保留其初始化的剩余轮数不变;如果该吊箱号≥开始进货的首个吊箱号,初始化相应的剩余轮数为0则仍为0,大于0则减1。6)如果上一轮“进出货后剩余轮数”为0则为0,否则剩余轮数减1。7)如果该吊箱号〈开始进货的首个吊箱号,则不出货(0);如果该吊箱号≥开始进货的首个吊箱号,剩余轮数〉0则不出货(0),否则出货(1)。8)如果出货则本次出货数量=箱内数量,否则为0。9)将所有相同订单号的每次出货相加,得到该订单号的累计卸货数量。10)在“生产计划安排”表中查询相应订单号对应的总数量,如果等于累计卸货数量,则用该订单号做标识,表明该订单已出完。11)如果当前吊箱不出货(F2=0)或当前需要进货订单号对应的总数量为0则为“空”,否则进货订单号为(SUM (P$1:P1)+1)。12)将之前所有与当前订单号相同的进货数量(N列)进行累计。13)将当前订单号对应的总数量减去累计进货数量,得到剩余数量。14)如果当前订单剩余进货数量大于“每吊箱装货量”,则“本次进货数量”为“每吊箱装货量”,否则“本次进货数量”为剩余数量。15)如果当前订单“累计进货数量”为0且“本次进货数量”大于0,则用订单号作为该订单开始进货的标记。16)如果“本次进货数量”等于“剩余数量”,则标记为1,表示该订单已进完。17)如果当前吊箱不出货,则为原“箱内订单号”,否则为“进货订单号”。18)如果当前吊箱不出货,则为原“箱内数量”,否则为“进货数量”。19)如果当前吊箱不出货则为原“剩余轮数”,如果出货并且有需要进货的订单则为进货订单号对应的“轮数”。20)如果当前吊箱号小于“初始化”开始进货的吊箱号则为空;大于等于“初始化”开始进货的吊箱号时,所有货全部出完则为空,没出完的情况下如果有订单进货则为订单对应的发车时间,无订单进货时,如果是第一个进货吊箱则为其对应的发车时间,否则延续上一个吊箱的发车时间。21)用“初始化”开始进货时刻加上累计的所有发车时间得到当前吊箱的进出货时刻。

2.2.3“生产计划安排”工作表的代码设计

激活“生产计划安排”工作表,对照表6中的“单元格位置”输入相应的“代码内容”,代码的含义和功能见“代码说明”中的描述。所有单元格输完后,对I2至L2的单元格内容进行复制,选择I3 至L101单元格进行粘贴操作,则“生产计划安排”工作表的代码全部输入完成。

表6 “生产计划安排”工作表内代码Tab. 6 Code in the “production plan” sheet

对应表6中各个序号对应代码的含义如下。1)计算该订单总共需要装多少个吊箱。2)在“计算”工作表中查找该订单号对应的开始进货标记,得到其对应的进出货时间。3)在“计算”工作表中查找该订单号对应的出货结束标记,得到其对应的进出货时间。4)将发车时间格式从“秒”转换为MM:SS格式。

3 使用方法与测试结果

钴-60γ辐照装置生产排程程序的使用分为两个步骤。首先是“初始化”,找出计算时处于卸货区的即将减少剩余“轮数”的最近一个吊箱,将其经过卸货区条码系统扫描的时刻输入“初始化”界面中该吊箱号对应的“进货时刻”栏,并输入“发车时间”和“剩余轮数”。需要特别注意的是,此吊箱的“剩余轮数”必须输入其经过扫描前的剩余轮数,即没有“减一”的剩余轮数。其他所有吊箱按当时的状态将“箱内数量”、“剩余轮数”和“发车时间”信息输入对应的单元格。然后进入“生产计划安排”界面,按生产计划顺序输入订单信息,包括“客户名称”、“产品名称”、“产品批号”、“发车时间”、“轮数”、“总数量”以及“每吊箱装货量”。每个订单输入完成后会自动显示出该订单的“开始时间”和“结束时间”,分别对应该订单的进货出货时间。每个订单的“开始时间”为该订单第一箱产品装入吊箱的时刻,“结束时间”为最后一箱产品从吊箱中卸下的时刻。最终显示的进出货时间可以精确到“秒”。

Excel2007每个工作表理论上的行数可以达到1048576行,则“计算”工作表可以模拟的最大生产“轮数”为26214轮。假设平均每个订单装满60个吊箱(总体积约1个集装箱),产品平均辐照2轮,则该程序可以同时计算8738个订单。如果按照4小时/轮计算,相当于4369天即将近12年的生产计划安排。可以认为在实际使用时不需要考虑所计算的订单数量上限的问题。以上述的20个订单为例进行测试,无论是逐个手工输入或用粘贴方式一次性输入,计算结果的等待时间均小于1秒,基本没有延时。以上述的100个订单为例进行测试,逐个手工输入时计算延时小于5秒,一次性粘贴输入时计算延时小于10秒。此时订单的时间跨度已达40余天。日常工作中的生产计划安排一般不会超过1个月,因此更多的订单数量不需要进一步测试。以上测试计算结果显示后,检查“计算”工作表内每个吊箱的进出货过程,发现各项参数的分步计算结果与设计的功能要求完全一致,并且符合实际生产规律。用人工方式对部分订单进行抽查计算,发现程序计算结果与人工计算结果亦完全一致。使用该程序对一个包含12个不同产品订单的实际辐照生产计划进行排程,然后用钴-60γ辐照装置执行排好的生产计划。结果发现每一个吊箱的实际进出货产品批号和数量与计算结果完全一致,实际进出货时间与计算结果偏差在5%以内。测试结果证实该生产排程算法可用于钴-60γ辐照装置的生产排程。

4 结论

本文设计了一种新的钴-60γ辐照装置生产排程算法,并使用电子表格软件Excel开发出基于该算法的应用程序。程序测试结果表明,此程序可同时处理的订单数量、计算精度以及计算速度都远远超过传统人工生产排程的水平。利用钴-60γ辐照装置对该程序的计算结果进行验证,结果表明实际生产情况与计算结果保持一致,证实该算法用于辐照装置生产排程的有效性。工作人员使用该程序可以更加便捷、准确地对辐照产品订单进行生产计划安排和调整,同时可以迅速、准确地预计出产品的交付时间,提高客户满意度。

参考文献

[1]中国同位素与辐射行业协会辐射加工专业委员会.辐射加工产业“十二五” 发展规划及建议[J].中国核工业,2011,(1):34-39. CHINA Isotope & radiation association.Radiation processing industry "Twelfth Five Year" development plan and suggestion[J].China Nuclear Industry,2011,(1): 34-39. (in Chinese)

[2]王传祯,彭伟.蓬勃发展中的国际辐照食品加工技术与产业[A].北京食品学会.2011年第四届国际食品安全高峰论坛论文集[C].北京:北京食品学会,2011:129-134. WANG Chuanzhen,PENG Wei. Flourishing Development of International Food Technology and Industry[A]. Beijing Food Association. Papers Of The Fourth International Food Safety Peak Forum Year 2011[C].Beijing: Beijing Food Association,2011:129-134. (in Chinese)

[3]陈勋,黄成,肖华丽,等.γ辐射加工中剂量控制技术研究[J].辐射研究与辐射工艺学报,2012,30(3):183-186. CHEN Xun,HUANG Chen,XIAO Huali,et al. The research of dose control in the γ-irradiation process[J]. Journal of Radiation Research and Radiation Processing,2012,30(3):183-186. (in Chinese)

[4]郭仕源,李阳,汤清松.辐射加工过程中错步辐照的判别及影响程度估算[J].辐射研究与辐射工艺学报,2009,27(1):43-47. GUO Shiyuan,LI Yang,TANG Qingsong. Identification of misstep irradiation and evaluation of effect on doses in the irradiation process[J]. Journal of Radiation Research and Radiation Processing,2009,27(1):43-47. (in Chinese)

[5]王众.辐照行业的高级生产计划自动调度系统[D].天津:天津大学,2010. WANG Zhong. The Advanced Production Planning of Automated Scheduling System in Irradiation Industry[D]. Tianjin: Tianjin University,2010. (in Chinese)

[6]Technical committee ISO/TC 34,ISO 14470-2011. Food irradiation—Requirements for the development,validation and routine control of the process of irradiation using ionizing radiation for the treatment of food[S]. Switzerland: ISO,2011.

[7]周建彬,宋豫川,雷琦,等.基于工艺特征局部优化的绿色工艺优化方法研究[J]. 新型工业化,2013,3(4):18-30. ZHOU Jianbin,SONG Yuchuan,LEI Qi,et al. Research on Green Process Optimization Method based on Local Optimization of Process Feature[J]. The Journal of New Industrialization,2013,3(4): 18-30. (in Chinese)

[8]杨海鹏,戴波.数据采集与监控系统在石油化工企业中的应用[J].新型工业化,2014,4(3):44-51. Yang Haipeng,Dai Bo. Applications of the System of Supervisory Control and Data Acquisition in Petrochemical Enterprise[J]. The Journal of New Industrialization,2014,4(3):44-51. (in Chinese)

[9]孙文广.EXCEL2007公式、函数与图表范例应用[M].北京:北京大学出版社,2010. SUN Wenguang. EXCEL2007 formula,function and chart application examples[M]. Beijing: Peking university press,2010. (in Chinese)

[10]ElizandroD,TahaH. Simulation of industrial systems: Discrete event simulation using Excel/VBA[M]. Boston:Auerbach Publications,2007.

[11]David J. Greensmith. Ca analysis: An Excel based program for the analysis of intracellular calcium transients including multiple,simultaneous regression analysis[J]. Computer Methods and Programs in Biomedicine,2014,113(1): 241-250.

本文引用格式:周菁,龚频.钴-60γ辐照装置生产排程算法设计及应用研究[J]. 新型工业化,2016,6(4):40-48.

Citation: ZHOU Jing, GONG Pin. Research on Design and Application of Algorithm about Production Scheduling of Co-60 Gamma Irradiation Facility[J]. The Journal of New Industrialization,2016,6(4): 40-48.

Research on Design and Application of Algorithm about Production Scheduling of Co-60 Gamma Irradiation Facility

ZHOU Jing1, GONG Pin2
(1. Department of Information Engineering, Jiangsu Province Nanjing Engineering Vocational College, Nanjing 211135, China; 2. Department of Nuclear Science and Engineering, Nanjing University of Aeronautics & Astronautics, Nanjing 210016, China)

Abstract:It is very difficult for production scheduling by traditional manual calculation when the quantity of orders composed of products with different dosage requirements is huge. A novel production scheduling algorithm is designed in this paper according to the production characteristics of Co-60 gamma irradiation facility, and the basic functions of the algorithm is implemented using the Excel software. The followed program could calculate the loading and unloading time of more than 8000 orders theoretically and the calculation result is accurate to "seconds". The test results with 20 orders and 100 orders show that the program has no time delay. The number of orders, the calculation accuracy and the calculation speed of the program are far more than the level of manual calculation. The actual production test results show that the product information and the calculation results are in complete agreement, and the deviation between the actual loading and unloading time and the calculation results are less than 5%.Staff in the use of the program can arrange or adjust the production plan of orders of irradiation products more convenient and accurate. At the same time it can predict the product delivery time rapidly and accurately, and improve the satisfaction of customers.

Keywords:Computer application; Algorithm; Theoretical research and design; Irradiation facility; Production scheduling

DOI:10.19335/j.cnki.2095-6649.2016.04.007

基金项目:江苏省产学研联合创新资金项目(BY2014003-04)

作者简介:周菁(1980-),女,讲师,主要研究方向:算法理论、计算机程序设计;龚频(1980-),男,实验师,主要研究方向:辐射加工、核辐射探测

猜你喜欢

计算机应用算法
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
基于增强随机搜索的OECI-ELM算法
网络信息安全技术管理背景下计算机应用研讨
高职计算机应用教学改革研究与实践
诠释CFC精髓的大数据时代医学案例
关于应用计算机辅助艺术设计有关问题研究
计算机应用的发展现状和发展趋势探讨
中职计算机应用课程教学改革与反思