离散型企业智能作业控制方法技术

技术编号:8323960 阅读:180 留言:0更新日期:2013-02-14 03:30
本发明专利技术公开了一种离散型企业智能作业控制方法,首先对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树,并计算生产能力初定各工序单元工位数;在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素自动寻找部件装配的最佳路径,该最佳路径以甘特图方式实时显示控制现场作业,作业开工勾选调用作业指导书进行作业和作业进程返馈,从而实现离散型企业智能的作业控制。本发明专利技术能够提升企业快速响应能力,提高产品质量和生产率,确保履约率。

【技术实现步骤摘要】

本专利技术属于智能作业控制技术,特别是一种。
技术介绍
现代企业必须提升生产控制水平,才能提高生产率,确保履约率。提升企业的生产效率有四种方式引进先进的生产设备、改进加工方法、提高作业人员的生产水平和提升生产控制水平。我国很多企业引入ERP系统,还有一些企业自行研发企业生产管理系统。它们都是采用自上而下的管理方式。在制定生产计划,组织生产以及产成品、半成品入库方面,实现了管理流程信息化。 在离散型企业内部,面对多种具有不固定级级数的从属关系的产品和具有一定先后顺序的装配部件,多采用把产品作为一种项目,把产品里的部件,子部件,最终器件、零件、部件同级化处理,人工拆分为项目的子项目平等对待的方法。人工拆分需要化大量时间,拆分的结果专门针对特定的模型,不具备通用性。单品种大批大量生产方式经常采用流水线方式来达到均衡的生产目的。其特点是事先设计好生产节拍和生产线。对多品种小批量的生产方式,采用传统的流水线生产方式,生产能力不能有效控制,生产节拍经常变化,生产线频繁搬迁需要化大量的人力物力。目前许多企业生产现场大多处于非完全控制状态。生产现场的盲目性,随意性非常大,生产控制手段匮乏,目视管理缺失,信息不能很好地公开,与生产准时化要求相距甚远,质量过程控制不能很好地保证,生产潜在的问题不能及时发现,工作效率不能有效地提闻。我国的一些企业对生产管理多采用现场安排、手工记,录方式。重复劳动多,生产数据没有积累。生产计划滞后,生产安排随意性大,生产进度不确定性因素多,信息断层。发达国家和世界级企业,特别注重基于时间研究基础上的科学管理,注意到作业时间的研究。对多品种小批量的生产方式,随着产品技术含量不断增加,作业改进永无止境,通常采用的理想化的测量数据需要大量的人力和物力的投入。作业过程中偶然因素时有发生,测量结果会相差很大。对以盈利和履约为目的的离散型企业,专门的时间测量在生产控制中更具有示范性,可操作性不强。
技术实现思路
本专利技术的目的提供一种,能够提升企业快速响应能力,提高产品质量和生产率,确保履约率。实现本专利技术目的的技术方案为一种,其特征在于对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树;按相似性分成钳装、装擦、电装、电调、总校、联调、装箱、装外八个生产单元,每个单元又安排可控制数量的工位,半天按210分钟,计算生产能力初定各工序单元工位数;在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素,控制具有从属关系产品的每一个部件在每一个工位上装配的最佳时间点,自动寻找部件装配的最佳路径;该最佳路径以甘特图方式实时显示控制现场作业;作业开工勾选调用作业指导书进行作业和作业进程返馈,从而实现离散型企业智能的作业控制。本专利技术与现有技术相比,其显著优点为(I)构建产品结构树。产品的从属关系级数不固定,子部件零部件的数量也不固定。针对产品不固定级数从属关系的内在规律作专门研究,找出具备这类不固定级数从属关系特性的产品的通用规律,采用不固定嵌套循环层数和数组的方法进行多种具有不固定子部件级数的产品结构树显示,以便快速读懂产品结构和产品框架,实现产品同步化。(2)计算生产能力,并调配正常上班时间各工序单元工位数和加班时间各工序单元工位数。针对多品种小批量生产方式节奏快,批量小,路线存在区别的特点,将装配工艺根据相似性进行分类,分为钳装、装擦、电装、电调、总校、联调、装箱、装外八个工序单元,计 算各工序单元的生产能力,调配正常上班时间各工序单元工位数和加班时间各工序单元工位数。作业指导书根据八种装配工序单元分为钳装、装擦、电装、电调、总校、联调、装箱、装外八类,通过改变多能工密码类型的方式同步自动控制该多能工显馈终端的作业指导书的类型。用技术手段保证了削峰填谷,消除生产瓶颈,达到均衡生产的目的,实现生产均衡化。(3)在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种实战因素情况下,自动寻找具有不固定级数从属关系的产品的部件装配最佳路径。生产中最大的浪费是等待的浪费。通过自动寻找部件装配的最佳路径,能最大程度消除过量生产、等待时间、运输、库存、过程、动作、产品缺陷等浪费,缩短产品制造周期,提高生产效率,适应现代企业多品种小批量的生产需求,提升离散型企业的快速响应能力,提高全员生产率,实现响应快速化。(4)以甘特图方式实时显示最佳路径。以甘特图方式显示最佳路径是有技术支撑的一种目视管理方式,是看板和网络的完美接合。它以视觉信号显示为手段,以信息公开为原则,是实现生产自动化、准时化的有力保证,能切实提高质量过程控制,发挥激励和协调作用,产生良好的心理和生理效应,直观地显示生产潜在的问题。还能充分发挥网络信息传输快速、及时和协同作战的优势。有利于工作效率的提高,实现信息目视化。(5)作业开工勾选调用作业指导书进行作业和作业进程返馈。在作业开工勾选后,作业人员显馈终端出现作业指导书。作业进程返馈确认作业完成。用作业指导代替纸质装配工艺和随意操作;用科学的数据积累代替理想化的时间测量和随意估算。将作业的时间数据实时积累,同时与自动寻找到的部件装配的最佳路径相关连,可以将生产率的提高落到实处,实现数据实战化。下面结合附图对本专利技术作进一步详细描述。附图说明图I是本专利技术的结构图。图中实线表示正向产生,虚线表示反向产生;实框线表示采集的信息或生成的最终信息,虚框线表示生成的中间信肩、O图2是实现的硬件配置图。本专利技术的方法采用C/S结构,通过组建局域网运行;数据存放在服务器端,客户端根据作用分为采集终端、控制终端、显馈终端。采集终端的作用是采集实现本专利技术方法所需的数据,控制终端的作用是调整和控制本专利技术方法的数据,显馈终端的作用是显示最佳路径和反馈作业进程。采集终端、控制终端、显馈终端均通过网线和服务器进行数 据交换,并将数据存放在服务器中。具体实施例方式结合图I和图2,本专利技术,首先对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树;并按相似性分成钳装、装擦、电装、电调、总校、联调、装箱、装外八个生产单元,每个单元又安排可控制数量的工位,半天按210分钟,计算生产能力初定各工序单元工位数;在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素,控制具有从属关系产品的每一个部件在每一个工位上装配的最佳时间点,自动寻找部件装配的最佳路径;该最佳路径以甘特图方式实时显示控制现场作业;作业开工勾选调用作业指导书进行作业和作业进程返馈,从而实现离散型企业智能的作业控制。具体内容如下。一、构建产品结构树⑴注释I)本专利技术中,如果产品的A部件从属于B部件,称B部件和A部件之间就存在一级从属关系,A部件为B部件的一级子部件,B部件为A部件的父部件;如果A部件属于B部件的一级子部件,那么B部件和A部件之间就存在二级从属本文档来自技高网
...

【技术保护点】
一种离散型企业智能作业控制方法,其特征在于对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树;按相似性分成八个生产单元,每个单元又安排可控制数量的工位,半天按210分钟,计算生产能力初定各工序单元工位数;在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素,控制具有从属关系产品的每一个部件在每一个工位上装配的最佳时间点,自动寻找部件装配的最佳路径;该最佳路径以甘特图方式实时显示控制现场作业;作业开工勾选调用作业指导书进行作业和作业进程返馈,从而实现离散型企业智能的作业控制。

【技术特征摘要】
1.一种离散型企业智能作业控制方法,其特征在于对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树;按相似性分成八个生产单元,每个单元又安排可控制数量的工位,半天按210分钟,计算生产能力初定各工序单元工位数;在考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素,控制具有从属关系产品的每一个部件在每一个工位上装配的最佳时间点,自动寻找部件装配的最佳路径;该最佳路径以甘特图方式实时显示控制现场作业;作业开工勾选调用作业指导书进行作业和作业进程返馈,从而实现离散型企业智能的作业控制。2.根据权利要求I所述的离散型企业智能作业控制方法,其特征在于对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组构建产品结构树的过程如下 1)将产品明细表按产品代号cpdh、部件代号ljdh、所属产品zee、所属部件zcb字段升序排序; 2)测试产品明细表的记录数,记作变量li_row; 3)判断产品明细表有没有记录,如果li_row=0,表示产品明细表没有记录,退出本步骤,如果li_row>0,表示产品明细表有记录;读取第一条记录的产品代号cpdh,部件代号ljdh,所属产品zee,所属部件zcb,树形视图列表项子项显示文本赋值; 4)设置变量内层循环层数int i,数组 string zee[20], zcb[20], li_row[20]; 5)将产品明细表按zee,zcb字段过滤,得到所有子部件; 6)赋值i=l,测试所有子部件的记录数,记作li_row[i]; 7)判断子部件有没有记录,如果li_row[i]=0,表示没有子部件,那么添加树形视图列表项,此列表项前没有子项不加“ + ”号;恢复父项过滤条件,光标指向其下一条记录,读取下一条记录部件的产品代号cpdh,部件代号ljdh,所属产品zee,所属部件zcb,树形视图列表项显示文本赋值;重复步骤5)、6)、7); 如果li_row[i]>0,表示第一条记录部件有子部件,那么添加树形视图列表项;此列表项前有子项加“ + ”号;读取子部件的第一条记录的产品代号cpdh,部件代号ljdh,所属产品ZCC [i],所属部件zcb [i],树形视图列表项子项显示文本赋值; 8)将产品明细表按ZCC[i],ZCb[i]字段过滤,得到所有子部件; 9)测试所有子部件的记录数,记作li_row[i+l]; 10)判断所有子部件有没有记录,如果li_row[i+l]=0,表示其没有子部件,那么添加树形视图列表项;此列表项前没有子项不加“ + ”号;恢复父项过滤条件,光标指向其下一条记录,读取下一条记录的产品代号cpdh,部件代号ljdh,所属产品zee [i],所属部件zcb [i];树形视图列表项显示文本赋值,重复步骤8)、9)、10); 如果li_row[i+l]>0,表示有子部件,那么添加树形视图列表项;此列表项前有子项加“ + ”号;赋值i=i+l ;读取其子部件的第一条记录的产品代号cpdh,部件代号I jdh,所属产品ZCC [i],所属部件zcb [i],树形视图列表项子项显示文本赋值; 11)重复步骤8)、9)、10); 12)当光标指向i级子部件的结尾时,回到父项,设置i=i- I ;判断光标回到是父项的从第I条到第li_row[i]条记录之间的一条记录还是父项的结尾记录;如果是回到父项从第I条到第li_row[i]条记录之间的一条记录时,则恢复父项的过滤条件,进行下一条记录的测试和判断;如果是回到父项的结尾记录,则进入上一层循环,再次设置i=i - I ; 13)直到i=l,用这种方法就构建了产品目录树。3.根据权利要求I所述的离散型企业智能作业控制方法,其特征在于计算生产能力初定各工序单元工位数对不固定子部件级数的产品采用不固定嵌套循环层数和数组的方法寻找到产品所有的装配部件,根据产品所有的装配部件的作业时长计算产品的生产能力;确定各工序单元工位数量的过程如下 1)选择需要计算生产能力的截止时间,过滤这段时间内生产计划表的产品计划,测试过滤后生产计划表有没有记录,如果没有记录,计算结束;如果有记录,记录数记作ii_row,进行生产能力计算,生成生产能力计算表; 2)生产计划表按产品代号、部件代号、批次号字段升序排序;将产品的装配工序按相似性进行分类,定义各工序单元的工序名称,本发明中根据产品装配工艺相似性的特点,将装配工序定义为钳装、装擦、电装、电调、总校、联调、装箱、装外八个工序单元; 3)依次读入已过滤的生产计划表的不同的产品代号,作为生产能力计算表的各记录项,记录读完后,增加计划工时、达额工时、能力工时、各工序单元工位数四个记录汇总项; 4)设置表示循环层数变量int i,数组 string zee[20] ,zcb[20], long lii_row[20];读取生产计划表第一条记录的产品代号、部件代号、计划数量Ijsll ; 5)查找对应于装配流程表各工序单元的作业时长,如果读不到数据或读的数据为空,那么作业时长值为0,将计划数量Ijsll与对应部件对应工序单元的作业时长相乘的数据与生产能力计算表对应生产计划表中产品代号的原数据相加,将结果设置给生产能力计算表中对应生产计划表中产品代号的记录的相应字段;如果生产能力计算表中对应生产计划表中产品代号的原数据为空,则将计划数量Ijsll与对应部件对应工序单元的作业时长相乘的数据设置给生产能力计算表中对应生产计划表中产品代号的记录的相应字段; 6)将产品明细表按产品代号、部件代号字段过滤,得到所有子部件; 7)赋值i=l,测试子部件的记录数,记作lii_row[i]; 8)判断有没有子部件,如果lii_row[i]=0,表示没有子部件,那么生产计划表中的光标指向下一条记录,读取下一条记录的产品代号、部件代号、计划数量I jsll,重复步骤5)、6)、7)、8); 如果lii_row[i]>0,表示有子部件,读取其子部件的第一条记录的产品代号cpdh、部件代号ljdh、部件名称ljmc、所属产品zcc[i]、所属部件zcb[i]、所属数量(Ijsl),ljsll=ljsll*ljsl ; 9)以产品代号、部件代号为条件查找装配流程表对应部件各工序单元的作业时长,如果读不到数据或读的数据为空,那么作业时长值为0,将计划数量Ijsll与对应部件对应工序单元的作业时长相乘的数据与生产能力计算表中对应生产计划表中产品代号的原数据相加,将结果设置给生产能力计算表中对应生产计划表中产品代号的记录的相应字段;如果生产能力计算表中对应生产计划表中产品代号的原数据为空,则将计划数量Ijsll与对应部件对应工序单元的作业时长相乘的数据设置给生产能力计算表中对应生产计划表中产品代号的记录的相应字段;10)将产品明细表按ZCC[i],zcb[i]字段过滤,得到所有子部件; 11)测试子部件的记录数,记作lii_row[i+l]; 12)判断有没有子部件,如果lii_row[i+l]=0,表示没有子部件,那么恢复父项过滤条件;光标指向下一条记录,读取下一条记录的产品代号cpdh、部件代号ljdh、部件名称ljmc、所属产品zcc[i]、所属部件zcb[i]、所属数量(Ijsl) , ljsll=ljsll*ljsl ;重复步骤 9)、10)、11)、12); 如果lii_row[i+l]>0,表示有子部件;赋值i=i+l ;读取子部件的第一条记录的产品代号cpdh、部件代号I jdh、部件名称ljmc、所属产品zcc[i]、所属部件zcb[i]、所属数量(Ijsl),ljsll=ljsll*ljsl ; 13)重复步骤9)、10)、11)、12); 14)当光标指向i级子部件级的结尾时,回到父项,设置i=i- I ;判断光标是回到父项的从第I条到第li_row[i]条记录之间的一条记录还是父项的结尾记录;如果是回到父项的从第I条到第li_row[i]条记录之间的一条记录,则恢复父项的过滤条件,进行下一条记录的测试和判断;如果是回到父项的结尾记录,则进入上一层循环,再次设置i=i - 1,直到 i=l ; 15)将生产能力计算表中计算得到的各条产品记录中的各个工序单元横向汇总求和,设置给该记录的产品工时字段; 16)将生产能力计算表中计算得到的各条产品记录中的各个工序单元及产品工时进行纵向汇总求和,得到的数据设置给计划工时记录相对应的各字段; 17)将生产能力计算表中计划工时各工序单元的数值除以作业天数,再除以每天作业的分钟数,就到得生产能力计算表中工位数量安排的近似值; 18)将生产能力计算表中各工序单元的计划工时和产品工时与达额率相乘,得到的数据设置给达额工时记录相对应的各字段; 19)将工作时长与各工序单元工位数相乘得到能力工时,得到的数据设置给达额工时记录相对应的各字段。4.根据权利要求I所述的离散型企业智能作业控制方法,其特征在于考虑产品从属关系、产品装配流程、生产计划时间、产品配套时间、缺件补齐时间、异常推迟时间、实际完成时间、产品优先级、正常上班时间各工序单元工位数和加班时间各工序单元工位数十种因素的表,寻找控制具有从属关系产品的每一个部件在每一个工位上装配的最佳时间点,自动寻找具有不固定级数从属关系的产品的部件装配最佳路径,过程如下 (I)由加班表和工序单元工位表运用显示区间天数的确定,周末的判断,循环中日期和时间的表达等方法生成工序时间表,步骤如下 1)清除工序时间表原来的数据; 2)用户输入截止日期em_2,今天的第二天与截止日期之间的日期称为显示区间,记作变量XX ; 3)如果截止日期的年份等于今天todayO的年份,显示区间的天数XX为截止日期的号数,减去今天todayO的号数,加上从今天today O的月份到截止日期月份的前一个月期间每个月最后一天的号数的累加和; 4)如果截止日期的年份等于今天todayO的年份加1,显示区间的天数XX为截止日期的号数,减去今天today O的号数,加上从今天today O的月份到今天today O当年十二月期间每个月最后一天的号数,加上截止日期当年一月到截止日期月份前一个月期间每个月最后一天的号数的累加和; 5)如果截止日期的年份大于今天todayO的年份加1,显示区间的天数XX为截止日期的号数,减去今天today O的号数,加上从今天today O的月份到今天today O当年十二月期间每个月最后一天的号数,加上截止日期当年一月到截止日期月份前一个月期间每个月最后一天的号数,加上从今天today O的次年一月到截止日期前一年十二月期间每个月最后一天的号数的累加和; 6)取每个月最后一天的方法为月份设为变量li_month,如果li_month=12,那么最后一天的号数为31 ;如果li_month〈12,那么下个月月份为本月加I,即li_month+l,每个月的最后一天就是下个月I号的前一天; 7)以显示区间的天数为第一层循环的次数,以工序单元工位表的工序名称字段为第二层循环的次数,以工序单元工位表的工位数字段为第三层循环次数进入循环,依次读数、赋值、设置直至完成三层循环,工序时间表完成设置; 8)在步骤7)的循环中,依次读数、赋值、设置直至完成三层循环的方法如下 读取工序单元工位表中每条记录的工序名称,设置给工序时间表的工序名称字段; 读取工序单元工位表中每条记录的工位数,设置给工序时间表的顺序号字段; 工序时间表的次序号用两位数n-m表示,η表示今天today O后第几天数,η从I到χχ ;m表示时间段,用1、2、3表示;1表示上午班8:00-11:30,1表示下午班12 :30_16:00, 3表示晚班17:00-20:30 ;每班次上班时间分别为上午班时间08:00 ;下午班时间12:30 ;晚班时间 17:00 ; 工序时间表的起始时间为日期时间型数据,含日期和时间; 取今天today O后的第η天日期,判断第η天是不是星期天或星期六;如果是,那么工序单元工位表中的工位数不参与循环; 工序时间表的有效性均设为O ; 读取加班表中的记录;将工序时间表按顺序号字段降序排列;查找工序时间表中对应同时段并且同工序名称的记录的顺序号;如果查找到,则插入新的相应记录,记录的顺序号从查找到的顺序号以后排;如果查找不到,则插入新的相应记录,记录的顺序号从I开始排,直到循环结束; 9)工序时间表生成后,按工序名称、起始时间、次序号字段升序,顺序号字段降序排序。(2)保留部件进度表表示已开工的、异常的、完工的记录,清除其他记录,并绑定部件进度表的保留记录与工序时间表对应的顺序号,步骤如下 1)有效性O表示项目确定;有效性I表示开始时间确定;有效性2表示结束时间确定;有效性3表示已作开工“作业勾选” ;4表示已填报作业异常;有效性5表示已作完成“作业勾选”; 2)保留有效性为3,或有效性为4或有效性为5的记录,清除部件进度表的其它数据; 3)整理保留的有效性为3、或4、或5的记录,将部件进度表中按批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号字段升序排序,设置批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号相同的记录序号从I开始重新设置;将部件进度表中批次号、所属产品、所属部件、产品代号、部件代号、工序号相同,列号不相同的记录列号从I开始重新设置。(3)对多种具有不固定子部件级数和多道装配工序的产品采用不固定嵌套循环层数和数组的方法,根据产品从属关系、产品装配流程、生产计划、正常上班时间各单元工位数和加班时间各单元工位数五种因素,生成部件进度表所有记录项,生成所有记录项时赋值批次号、所属产品、所属部件、产品代号、部件代号、部件名称、工序号、工序名称、列号、序号、优先级、作业时长、非作业时长、有效性字段,步骤如下 1)生产计划表按批次号、产品代号、部件代号、开始时间字段升序排序; 2)生产计划表按完成情况不等于‘完成’条件进行过滤; 3)测试生产计划表记录数,记作li_row,如果li_row=0,退出本步骤;如果li_row>0,表示生产计划表有记录; 4)读取生产计划表第一条记录的产品代号cpdh、部件代号ljdh、部件名称ljmc、批次号cpph、数量ljsll、优先级yxji字段的数值; 5)以产品代号为cpdh、部件代号为Ijdh过滤条件对装配流程表过滤,测试部件对应于装配流程表的记录数,记作g_rownumber ;如果g_rownumber=0,表示装配流程表没有记录,转到下一节的内容;如果g_rownumber>0,表示装配流程表有记录,以g_rownumber为二层循环次数,以Ijsll为三层循环次数;读取装配流程表第一条记录的工序号gxh和工序名称gxmc,在部件进度表中查找有没有批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号都相同的记录,如果有,记作χχ ;那么插入Ijsll条记录,记录的列号从χχ到(xx+1 jsll),记录的序号和有效性的值为O,记录的批次号cpph、所属产品zccp、所属部件zcbj、产品代号cpdh、部件代号Ijdh、部件名称Ljmc、工序号gxh、工序名称gxmc、列号、序号、优先级yxji、有效性字段赋值;如果没有,插入Ijsll条记录,记录的列号从I到ljsll、记录的序号和有效性的值为O,记录的批次号cpph、所属产品zccp、所属部件zcbj、产品代号cpdh、部件代号Ijdh、部件名称Ljmc、工序号gxh、工序名称gxmc、列号、序号、优先级yxji、有效性字段赋值;然后光标指向装配流程表下一条记录……直到二层循环结束,这样就将对应的所有工序的信息设置给部件进度表中的批次号、所属产品、所属部件、产品代号、部件代号、部件名称、工序号、工序名称、列号、序号、优先级、有效性相应字段; 6)将产品明细表 按产品代号cpdh,部件代号Ijdh字段过滤,得到产品明细表中的所有子部件; 7)设置变量循环层数i,数组 string zee [20], zcb [20] ,long lii_row[20],赋值i=l ; 8)测试其记录数,记作lii_row[i],判断有没有子部件如果lii_rOW[i]=0,表示没有子部件,那么生产计划表中的光标指向下一条记录,读取下一条记录的产品代号cpdh、部件代号I jdh、部件名称ljmc、批次号cpph、数量I jsll、优先级yxji、完成日期wcrq ;重复步骤5)、6)、7)、8); 如果lii_row[i]>0,表示有子部件,读取子部件的第一条记录的产品代号cpdh、部件代号ljdh、部件名称ljmc、所属产品zcc[i]、所属部件zcb[i]、所属数量Ijsl,赋值ljsll=ljsl*ljsll ; 9)以产品代号cpdh、部件代号Ijdh为过滤条件对装配流程表过滤,测试装配流程表记录数,记作g_rownumber ;如果g_rownumber=0,表示装配流程表没有记录,转到下一节;如果g_rownumber>0,表示装配流程表有记录,表示装配流程表有记录,以g_rownumber为二层循环次数,以Ijsll为三层循环次数;读取装配流程表第一条记录的工序号gxh和工序名称gxmc,在部件进度表中查找有没有批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号相同的记录;如果有,记作XX,插入Ijsll条记录,记录的列号从XX到xx+ljsll,记录的序号和有效性的值为O,记录的批次号cpph、所属产品、所属部件、产品代号cpdh、部件代号I j dh、部件名称I jmc、工序号gxh、工序名称gxmc、列号、序号、优先级yx j i、有效性字段赋值;如果没有,插入Ijsll条记录,记录的列号从I到ljsll,记录的序号和有效性的值为O,记录的批次号cpph、所属产品、所属部件、产品代号cpdh、部件代号I jdh、部件名称I jmc、工序号gxh、工序名称gxmc、列号、序号、优先级yxji、有效性字段赋值;然后光标指向装配流程表下一条记录……直到二层循环结束;这样就将对应的所有工序的信息设置给部件进度表中的批次号、所属产品、所属部件、产品代号、部件代号、部件名称、工序号、工序名称、列号、优先级、有效性相应字段; 10)将产品明细表按zcc[i],zcb[i]字段过滤,得到所有子部件; 11)测试子部件的记录数,记作lii_row[i+l]; 12)判断有没有子部件,如果lii_row[i+l]=0,表示没有子部件,那么恢复父项过滤条件;光标指向下一条记录;读取下一条记录的产品代号cpdh、部件代号ljdh、部件名称ljmc、所属产品zcc[i]、所属部件zcb[i]、所属数量Ijsl,赋值Ijsll=Ijsl*ljsll ;重复步骤9)、10)、11)、12);如果lii_row[i+l]>0,表示有子部件;赋值i=i+l ;读取子部件每一条记录的产品代号cpdh、部件代号I jdh、部件名称ljmc,所属产品zee [i],所属部件zcb [i],所属数量 ljsl,赋值 ljsll=ljsl*ljsll ; 13)重复步骤9)、10)、11)、12); 14)当光标指向i级的结尾时,回到父项,设置i=i- I ;判断光标是回到父项的从第I条到第li_row[i]条记录之间的一条记录还是父项的结尾记录;如果是回到父项的从第I条到第li_row[i]条记录之间的一条记录,则恢复父项的过滤条件,进行下一条记录的测试和判断;如果是回到父项的结尾记录,则进入上一层循环,再次设置i=i - 1,直至i=l ; 15)部件进度表按批次号、所属产品、所属部件、产品代号、部件代号、部件名称、工序号、列号字段升序排序,删除批次号、所属产品、所属部件、产品代号、部件代号、部件名称、工序号、列号都相同的记录中有效性为O的记录。(4)运用一个子部件对应多个父部件,一个父部件对应多个子部件的多对多关系的对应方法,确定部件进度表保留记录的转向单元的工序号、转向工序名、转向顺序的步骤如下 优先确定有效性为3、4或5的记录的下道工序,由部件进度表有效性为3、4或5的记录的非作业时长zysc与结束时间wcrq,用连续时间相加的方法确定部件进度表下道工序或父部件第一道装配工序的开始时间的方法如下 1)测试部件进度表有效性为3、4或5的记录数,如果记录数为0,退出本步骤;如果记 录数不为0,作以下处理; 2)将部件进度表中按批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号、序号字段升序排序,读取部件进度表中批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号字段;如果读取的部件进度表中批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号与上一条记录相同,则跳过;如果读取的部件进度表中批次号、所属产品、所属部件、产品代号、部件代号、工序号、列号不相同,则将上一条记录作如下处理; 3)赋值wcrq的分钟记为mw;小时数记为hw,非作业时长记为zysc ; 4)设置记录的本班次上班时间,如果m=l,那么hsl=8,ms I =O ;如果m=2,那么hsl=12,msl=30 ;如果 m=3,那么 hsl=17, msl=0,设置 nl=n ; 5)如果设置部件进度表下道工序或父部件第一道装配工序的开始时间为ksrq,ksrq与当班次上班时间的时长为tysc,那么tysc=(hw-hsl)*60+(mw-msl)+zysc ; 6)如果tysc〈=210且(mw+ zysc)〈60,那么ksrq的分钟数为mw+zysc,小时数为hw ;7)如果tysc〈=210 且(mw+ zysc) >=60,那么 ksrq 的小时数为 hw +int ((mw + zysc)/60),分钟数为 mw=mod ((mw + zysc), 60); 8)m=m+l,读取记录的下班次数据;如果m=4,那么m=l,n=n+l ;读取工序时间表工序名称为gxmc、有效性为O、次序号为n-m的记录;如果读到记录,设工序时间表的起始时间为的小时数和分钟数分别为hs2和ms2 ;记录下班次的上班时间的小时数和分钟数分别为hs和ms ;如果 m=l,赋值 hs=8, ms=0 ;如果 m=2,赋值 hs=12, ms=30 ;如果 m=3,赋值 hs=17,ms=0 ;如果读不到工序时间表的记录,那么回到本步骤8)开始处循环,直到读到记录,χχ= (n-nl)*1440+ (hs2_hsl) *60+ (ms2_msl),yy= (n-nl) *1440+ (hs-hsl) *60+ (ms-msl) +210 ; 9)如果tysc>210且tysc〈=xx,那么ksrq的小时数为hs2,分钟数为ms2; 如果 tysc>xx 且 tysc<=yy,那么非作业时长 zysc=zysc- ((n-nl) *1440+ (hs2_hw) *60+ (ms2-mw)) ;ksrq 的小时数为 hs2 +int ((ms2 + zysc ) /60),分钟数为 mod((ms2 +zysc),60); 如果tysc>yy,那么设置hsl=hs, msl=ms, hw=hs2, mw=ms2,回到本步骤9)开始处循环,直到tysc>xx不成立; 10)判断部件进度表记录工序有没有下道工序,如果部件进度表本条记录的工序有下道工序,设置它的开始时间为ksrq,同时设置本条记录的下道工序的有效性字段为1,同时读取本条记录的下道工序的工序号、工序名称,写入本条记录转向工序号、转向工序名字段,做为工件完工勾选后的流转方向; 11)如果部件进度表本条记录的工序没有下道工序,则到产品明细表中查找产品代号、部件代号、所属产品、所属部件均对应的记录的单台数记为I jsl,说明子部件与父部件的关系为Ijsl条子部件对应I条父部件;读取工序号为1,序号为O的同批次号的父部件的所有子部件,其记录数记作xxl,再读取工序号为1,序号为O的同批次号的父部件,其记录数记作xx2,两者相除的结果记作xx3,表明父部件被查找xx3次其有效性就可以改为1,这样就建立了对于多个父部件对应多个子部件的多对多关系的对应的唯一性; 12)如果该部件的工序号为I的父部件的记录的开始时...

【专利技术属性】
技术研发人员:陈友春许清王龙莹陈国胜胡文花唐晓冬聂永海张云龙吴庆曹磊郭晓丹马宁程晓敏付羽翀赵晓宝季冬孙士亮
申请(专利权)人:北方信息控制集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1