一种面向船舶智能制造的工艺数据库优化设计方法
2022-03-23王明钊戎文娟王佳琳王永威撒莹莹
王明钊,戎文娟,王佳琳,王永威,撒莹莹
(1.先进成形技术与装备国家重点实验室,北京100083;2.北京机科国创轻量化科学研究院有限公司,北京 100083)
0 引言
数据库是一门研究数据存储、数据检索和数据处理等内容的学科,是计算机科学的重要组成部分,是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。数据库与计算机系统共同组成数据库系统,主要由数据库及其管理系统、应用系统、开发工具、数据库用户和管理员等组成。1960年国际商业机器(International Business Machines,IBM)公司推出数据库管理系统,标志着数据库技术诞生。此后,数据库技术在各行各业得到迅猛发展,在信息管理、科学研究、企业管理、办公自动化和计算机辅助设计等领域已发展成为不可或缺的重要组成部分。在机械加工、化工生产和电力能源等传统产业中,工艺数据库系统的应用促使其原有的生产方式发生了巨大变化,产品价值得到了进一步提升。近年来,与数据库相关的信息技术在船舶制造领域也得到了大量应用,例如切割工艺数据、成形工艺数据库和涂装工艺数据库等。此外,由工艺数据库衍生出的专家系统和数据挖掘等技术对传统产业的生产、安全和管理产生了深远的影响。
传统的数据库设计流程见图1,虽然工艺数据库技术在传统产业信息化发展中发挥了重要作用,但其在实际的工艺数据库设计中还存在一些问题和缺陷。在需求分析中,由于不同工艺的复杂性不同,设计者需耗费大量的时间和精力,且因工艺过程的特殊性和多样性,不同工艺数据库之间的需求分析方面的资料通常无法共享。在进行概念结构设计过程中,传统的概念结构设计方法提供了E-R(Entity Relationship)图的基本作图方法,但并未提供E-R图整体框架和结构布局等设计方法。在逻辑结构设计中,规定了E-R 图转换成逻辑结构的基本原则,但并没有针对工艺自身的特点对工艺过程提出具体的优化方法。
图1 传统的数据库设计流程
本文针对工艺数据库设计中存在的问题,在进行需求分析过程中提出9 要素分析法,为设计者提供清晰明确的需求分析范围和方向。在进行概念结构设计过程中,基于9 要素分析法设计了通用的E-R图,整体框架和结构布局。在设计逻辑结构过程中提出2 种逻辑结构的优化方法,解决数据库存在的结构复杂、数据冗余和读写频繁等问题。最后,为验证该方法在工艺数据库设计中的通用性和可行性,针对船舶制造领域中的装配工艺,设计了装配工艺数据库接口系统,在船企进行了推广和应用。
1 工艺数据库设计和优化
1.1 需求分析:9 要素分析法
由于不同领域、不同环节的工艺过程具有特殊性和多样性,需求分析的资料通常无法共享,因此工艺数据库设计的需求分析往往需耗费大量的时间和精力。本文针对智能化的工艺过程提出一种9 要素分析法,为工艺数据库的需求分析提供清晰明确的范围和方向,减少需求分析的工作量并降低工作难度。
9 要素分析法将工艺过程中影响工艺的要素分为原料、产品、规范、环境、人员、设备、方法、时间和其他等9 个类别,见图2。
图2 9要素分析法
1)原料包括对象和属性,其中:对象是指参与该工艺过程的输入资源;属性是指原料自身具有的能影响该工艺过程的特征。
2)产品包括对象和检测,其中:对象是指该工艺工程最终输出的结果或产品,产品是整个工艺过程的直接“动力”来源;检测既是衡量产品质量的直接指标,又是评价工艺过程的直接指标。
3)规范是指执行该工艺过程遵循的规范和标准。若不同企业在执行相同的工艺时遵循的工艺标准或企业规范不同,最终会导致工艺过程和产品的质量不同。
4)环境是指工艺过程中可能对工艺产生影响的环境因素。
5)人员包括参与该工艺过程的设计人员和操作人员(或人员集合)。
6)设备是指该工艺过程中的相关执行设备(或设备集合),包括设备编号、控制参数和实时状态等3部分。
7)方法是指与工艺过程设计相关的因素,包括方法类型、设计参数(非设备控制参数)和操作顺序。方法类型标识采用何种方式实现该工艺过程;设计参数是指设备控制参数以外的一些与设计相关的参数;操作顺序是指该工艺过程中特定的先后顺序。
8)时间是指工艺过程执行的开始时间和结束时间,从时间维度记录工艺过程的特征。
除了以上8 个特定要素以外,不同领域的工艺过程可能还包含一些其他特有因素,且随着科学技术的不断发展,新技术、新革命可能促使现有的工艺过程发生变化,产生新的工艺要素,这些要素均可归为其他要素。
1.2 概念结构设计:通用E-R图模型
概念结构设计的目标是产生反映需求信息的数据库概念结构,实现从现实世界到概念模型的转换,其通常采用E-R图表示。虽然E-R图提供了基本的设计方法,但并没有关于整体框架的通用模型和设计方法。本文设计通用的E-R图模型,为工艺数据库的设计提供参考。
基于9 要素分析法的E-R图通用模型见图3,其中:
图3 概念结构设计图(E-R图)通用模型
1)实体集是指具有相同属性的同一类实体的集合,如原料和产品等,用矩形框表示;
2)属性是指实体所具有的特征和性质,如开始时间和结束时间等,用椭圆形框表示;
3)联系和联系集是指2个或2 个以上的实体集之间的关联关系,如参与和包括等,用菱形框表示;
4)实体集之间的联系表示实体集之间的数量关系,分为一对一(1 ∶1)、一对多(1 ∶N)和多对多(M∶N),用平行四边形框表示。
根据9 要素分析法,通用E-R模型以“工艺”为核心构造,关联原料、产品、规范、环境、设计人员、操作人员、设备、控制参数、方法类型、设计参数和操作顺序;其中与工艺相关的关键属性为开始时间、结束时间和其他。
在实际设计工艺数据库时,设计者根据工艺数据库需求调研结果,对图3 所示通用模型中的实体和属性进行增加或删除,即可初步构造出工艺数据库E-R图的整体架构。
1.3 逻辑结构设计优化
逻辑结构设计是将E-R图转换为关系型数据库支持的数据模型的逻辑结构的过程。逻辑结构设计主要根据实体集之间的关系类型(1∶1、1∶N、M∶N)将E-R图转换成具体的逻辑结构,遵循3 范式法则。虽然3范式法则提供有将E-R图转换成逻辑结构的标准方法,但在实际应用过程中,根据标准方法设计的数据库系统会存在一些问题。如图3 所示,通用E-R模型中含有多个M∶N 关系类型,根据3 范式法则,每个M∶N 关系类型在进行逻辑结构设计时都要额外产生一个关系表。在实际的数据库系统中,关系表过多会导致数据库结构复杂、数据冗余和多次读写数据库,既不利于应用程序的开发,又不利于后续的数据库维护。本文通过对逻辑结构进行设计优化,解决概念结构设计中存在的某些问题。
1.3.1 M∶N关系类型的逻辑实现
E-R图通用模型中原料与工艺实体集的关系类型为M∶N 类型,如图4 所示。按照3 范式法则,在逻辑结构设计过程中,为了能表示工艺与原料之间的关系,除了设计工艺表和原料表以外,还需要设计原料与工艺的关系表,3 个表的结构见表1。
表1 M∶N关系类型表格结构
图4 M∶N关系类型的逻辑结构设计
上述设计方法可在数据结构上建立工艺与原料的关系,但存在2 个缺陷:
1)除了工艺表和原料表以外,增加了关系表,数据库的结构更加复杂;
2)在原料表数据已存在的情况下,若执行1 次工艺数据的写操作,需进行1 次(工艺表)+X 次(关系表)数据库的操作。
1.3.2 M∶N关系类型的优化1
虽然关系表可实现M∶N 关系类型的数据关联,但系统录入1 次工艺数据,就需向关系表中插入多条工艺与原料的关系数据。若这种数据库操作次数较多,会影响整个数据库的运行效率。在某些实际的工艺过程中,参与工艺过程的原料数量一般是固定不变的,即使某些工艺过程中原料数量不固定,参与单次工艺过程的原料数量也有上限(设上限值为Q)。因此,通过在工艺实体中增加固定数量的属性,用于表征工艺与原料之间的关系,即可实现逻辑结构设计的优化。优化后的逻辑结构见图5,工艺表结构见表2。
表2 优化后的工艺表结构
图5 M∶N关系类型优化1
在优化后的工艺表中增加Q 个原料属性(materials_id_1、materials_id_2、…、materials_id_Q),能实现工艺与原料的数据关联,省略工艺与原料的关系表,简化数据库整体结构,更直观地反映工艺与原料的关系。同时,在程序实际运行过程中,系统执行1 次数据库的操作指令即可完成对工艺数据的读写操作,能减少数据库的读写次数,提高系统运行的效率和稳定性。
1.3.3 M∶N关系类型的优化2
在图3 中,设计参数与工艺、控制参数与工艺之间的关系为M∶N关系类型。单次工艺过程中的设计参数(或控制参数)的数量极有可能会随着新技术发展而发生变化,且在设计开发数据库时无法确定设计参数数量的上限。因此,第1.3.2 节中的设计方法并不适用于这种情况,需按第1.3.1 节中的方法设计工艺与设计参数的关系,设单次工艺中有K个设计参数,其中工艺与设计参数关系表中的数据见表3。
表3 工艺与设计参数关系表中的数据
在某些工艺过程中,1 种设计参数的集合(或控制参数的集合)可能适用于多次甚至大多数同类工艺过程,但每个工艺过程都需向工艺与设计参数关系表中添加多次数据,因此这些设计数据是重复的。如表4 所示,工艺过程1(process_id=1)和工艺过程M(process_id=M)使用了同样的设计参数(design_id =1,2,3,…,K),在关系表中记录了重复的设计参数信息。若大量的工艺过程使用同一套设计参数集(或控制参数集),会导致数据库数据冗余和数据量过大,后期也会影响数据库的运行效率。
表4 优化后的表结构
在数据库中增加设计方案表,避免设计参数表与工艺表直接关联;在工艺表中增加方案属性,将方案表作为参数设计与工艺表之间的中介,间接实现与工艺参数表的关联,其中方案表与设计参数表为M∶N关系,采用第1.3.1 节的设计方法进行设计;方案表与工艺表为1∶N关系,优化后的逻辑结构见图6。在优化后的表中,设计参数集相同的多次工艺过程,只需增加工艺表中的scheme_id字段数据即可。这种优化方法在设计参数不变的情况下,几乎不增加数据库的数据量和读写次数,以微量增加数据库结构的复杂性为代价,避免数据冗余,减少数据库的读写操作次数,提高了数据库运行的效率和稳定性。
图6 M∶N关系类型优化2
在逻辑结构设计中:对于1∶1 和1∶N的关系类型,使用3 范式法则提供的设计方法设计;对于M∶N的关系类型,需根据工艺过程的实际情况,选择第1.3.1 ~1.3.3节中相对应的设计方法设计。
2 应 用
2.1 装配工艺数据库的设计
近年来,我国船舶制造业的部分工艺流程实现了数字化、自动化和智能化,但整体上仍处于数字化制造的初级阶段,船舶制造流程中许多工艺过程的工艺数据库系统并未建立。本文针对船舶制造中的装配工艺过程,结合工艺数据库设计流程和本文提出的优化设计方法,设计一套装配工艺数据库接口系统。
根据9 要素分析法和通用E-R图模型,船舶制造装配工艺数据库的E-R 图见图7。E-R 图中包含原料(零件)、产品(零件)、规范、人员、设计、设备和时间等7 种工艺因素,由于正常环境对装配工艺因素的影响较小,因此暂不考虑该因素。
图7 船舶制造装配工艺数据库的E-R图
其中,装配工艺数据库单条装配工艺数据是指针对一条焊缝(对应2 个零件)装配过程所生成的工艺数据。对于复杂组件(部件或分段)的装配结构,采用多条装配工艺数据即可代表整个组件(部件或分段)的完整工艺过程。根据这种定义,装配工艺的原料固定为2 个零件,产品固定为1 个组件(部件或分段);而在装配工艺数据库中,根据等级划分的不同,将零件、组件、部件和分段统一归纳至“零件”实体中。因此,原料和产品的数量在单次工艺过程中是确定的,满足第3.2 节中的优化条件。同理,操作人员和设计人员均采用第3.2 节中的设计方法。设计参数和控制参数采用第3.3 节中的设计方法。装配工艺表的逻辑结构见表5,其余表单限于篇幅,暂不列出。
表5 装配工艺表
2.2 装配工艺数据库接口系统
本文设计的装配工艺数据库既面向智能化的装配工艺过程,又兼容现有传统的装配工艺过程,工艺数据系统在实际运行过程中可根据实际情况决定录入哪些工艺数据。由于采用了本文所述数据库优化方法,装配工艺数据库系统具有向后兼容性,即使工艺过程或设备升级改造导致设计参数和控制参数发生改变,也无需对工艺数据库的整体结构进行重新设计。
本文设计的装配工艺数据库接口系统已在广州某船企进行推广与应用,除了针对装配工艺设计的装配工艺数据库接口系统以外,还针对加工、焊接和涂装等工艺流程设计了相应的工艺数据库系统。目前该系统已涵盖加工、装配、焊接和涂装等工艺流程,实现了对这些工艺流程中的工艺数据的收集、存储、统计和查询等功能,以及与船企内部原有的生产制造执行系统(Manufacturing Execution System, MES)和企业资源计划系统(Enterprise Resource Planning, ERP)的数据共享,见图8。利用本文提出的数据库改进设计方法,快速搭建了装配工艺数据,涵盖了较为完善的装配工艺数据,同时优化了数据库的整体机构、数据存储量和数据库的读写效率。
图8 工艺数据库接口系统及部分装配工艺数据接口
3 结语
本文面向船舶智能化过程中传统工艺数据库设计方法存在的问题,根据工艺数据库的设计流程提出了9要素分析法,明确了需求分析中调研分析的方向和范围,极大地降低了设计者的工作量;基于9 要素分析法设计了通用E-R图,为工艺数据库的设计者提供了概念结构设计的整体框架,实现了概念结构的快速开发;根据工艺过程的实际特点提出了2 种逻辑设计的优化方法,降低了工艺数据的系统复杂度,提高了工艺数据库系统的运行效率和系统稳定性。最后,基于本文提出的工艺数据库优化方法,为船舶制造过程中的装配过程设计了装配工艺数据库系统,并在广州某船企进行了推广与应用。