基于CATIA V6知识工程的智能化阀件设计
2021-11-06王艳真徐思豪
王艳真, 徐思豪, 陈 勇, 王 瀚
(中国船舶及海洋工程设计研究院, 上海 200011)
0 引 言
知识工程的核心是将学科知识、设计规范及标准、设计参数和设计历史资料等融入设计软件中,通过判断和推理实现产品的智能设计。目前,基于知识工程的产品设计已逐渐成为CAD技术的发展方向,各设计单位和学者已在工程设计领域开展一系列研究。徐新明等基于CATIA V5对知识工程在凸轮建模和机床尾架设计中的应用进行了研究,发现该方法能在提高产品设计效率和质量的同时,降低设计成本。孔慧敏等研究了CATIA V5知识工程在甲板支柱设计中的应用,对基于知识工程的设计流程和设计方法进行了梳理。肖贺等基于CATIA V6研究了知识工程规则设计方法在汽车零部件设计中的应用,通过创建参数、公式和设计表等驱动模型,提升了设计的准确性。赵广伟等基于参数化和知识工程技术研究了CATIA V5在海洋平台结构设计中的应用,该方法能大大提升海洋平台设计的速度和效率。李研宇等采用自顶向下的参数化思想,基于CATIA平台对汽车装配过程中涉及到的知识进行集成,有效提升了设计的智能化程度。吴栋臣基于CATIA平台的二次开发,研究了汽车雨刮器的参数化设计流程,有效缩短了项目周期,降低了项目成本。
随着CATIA V6在三维设计中的应用和推广,国内科研单位和学者对其在船舶设计领域的应用进行了初步探索。总体来说,目前有关知识工程在船舶智能化设计和协同设计领域的应用的研究还较少,其具体应用场景还十分局限。在船舶轮机管路系统的初步设计和详细设计阶段,需通过布置阀件体现系统设计,并预留操作空间与其他专业协定空间布局。基于传统的设计方法,设计人员首先需查阅手册选型,然后进行设备建模,最后单独放置,该方法难以满足随系统设计更新而快速协同更新的场景需求。当设计方案变更时,现有的三维软件基本上采取在库中选取新的模型调入替换的方式,而阀的种类繁多,采用该方法对库进行管理和使用的要求很高,操作繁琐且效率较低。随着设计主体复杂性的提升和设计过程的迭代,迫切需要采用更为高效、直观的设计方法提升设计的便捷性和智能化。
综上,本文基于CATIA知识工程工具,以上海某公司的蝶阀系列产品为研究对象,建立智能化阀件设计工具,实现不同场景下的蝶阀选型。本文提出的方法能规避查阅设计手册,避免在修改过程中反复进行人工核查,使设计过程更加方便快捷。
1 实现智能化阀件的技术路径
按照类型、驱动方式、阀体材料、结构形式和公称压力等因素的不同,阀门可分为多种类型,如蝶阀、球阀、节流阀、柱塞阀、旋塞阀、止回阀和减压阀等。以某设备公司的蝶阀系列产品为例,其阀体有11种型号,驱动头有4种型号,而按照公称压力与公称直径的不同,每种型号阀体又可分为2~3种结构形式。总之,阀件的种类、型号和规格繁多,这对库的管理和使用提出了更高的要求。
本文基于CATIA的各项知识工程组件开展阀件的智能化设计。首先,利用工程模板实例化的机制实现快速布置,省去用户调用设备小样和定义装配的工序。其次,使用UDF(User Defined Feature)封装每型阀件的几何,建立Resource-Table UDF库。通过在工程模板中定义Knowledge Pattern语句初始化阀件和驱动头构成蝶阀模型。最后,配合使用Rule语句,提供控制参数,使用户能在限制条件内人工进行选型调整。阀件参数化设计技术路径见图1。
图1 阀件参数化设计技术路径
2 实现智能化阀件的方法
2.1 工程模板骨架的建立
工程模板是CATIA中基于输入几何创建一个特定产品节点的知识工程工具。在本文所述案例中,蝶阀的输入条件是管路或法兰的外径和蝶阀安装的方向。因此,工程模板的输入条件为圆(Circle1)和平面(Plane1),见图2a。此外,阀体的规格D和驱动头的规格d也作为输入参数,用于人工调整尺寸。根据工程模板的输入条件初始化整体模型的骨架,并根据工程模板的输入条件Circle1和Plane1确定后续驱动头UDF和阀体UDF的输入条件。阀体UDF的输入条件为1个平面(Support面)、2个点(Top-PT点和MidPT点),而驱动头UDF的输入条件为2个平面(Support面和Plane1面)、1个点(MidPT点),见图2b。
图2 蝶阀工程模板的输入条件与骨架初始化
2.2 阀体及驱动头UDF的建立
UDF是CATIA中将一组建模过程封装为一个(组)特征的知识工程组件,是将复杂的建模过程模块化的主要实现途径。在使用UDF时,仅需若干几何或参数输入即可得到封装之后的复杂建模结果。
2.2.1 阀体UDF
阀体UDF的建模过程主要包括输入条件、建立参数化草图和发布UDF模型等步骤。
2.2.1.1 输入条件
阀体UDF的输入条件即是2.1节中定义的骨架模型中的Support面、Top-PT点和MidPT点,确保工程模板生成之后的几何能顺利应用于UDF的生成中。
2.2.1.2 建立参数化草图
该步骤中的核心要素有2项:
1) 使用规格表工具创建参数系列,当切换参数表中的行数时,各参数会按该组合关系进行切换;
2) 在绘制几何草图时,草图的support应基于UDF的输入条件生成,同时草图中的各项约束应与规格表中的参数组成合理约束。
建立的参数表和参数化草图分别见图3和图4。
图3 建立的参数表
图4 建立的参数化草图
对于同一型号的蝶阀,可设置一个控制参数,通过Rule语句将其与规格表建立联系,实现同一型号不同规格蝶阀的切换。
2.2.1.3 发布阀体UDF模型
由于阀体结构会随通径的不同而发生变化,例如通径越大,阀芯加强筋就越多,而UDF的Output只能输出1个对象,因此利用几何变量的机制,采用Rule语句驱动规格表控制UDF最终输出的对象。建立几何变量Surface.1(当规格表行数小于9时,Surface.1的值为Extract1;当规格表行数大于等于9且小于20时,Surface.1的值为Extract2;当规格表行数大于20时,Surface.1的值为Extract3),由此确保UDF的单一输出对象,具体实现方法见图5。
图5 使用Rule驱动规格切换几何
需注意,阀体UDF的生成结果不仅仅是阀体本身的几何,还应包含一些用于后续生成驱动头的输入条件的几何元素。本文所述案例选取阀体顶平面(Surface-Top)和该平面上法兰的圆心点(Origin-Proj)作为次要的发布对象,供驱动头组件定位使用。输出UDF的关键步骤见图6。
图6 输出UDF的关键步骤
2.2.2 驱动头UDF
驱动头的建模过程与阀体相似。驱动头UDF的输入条件即是2.1节中定义的骨架模型中的Support面、Plane1面和MidPT点。需注意的是,相比阀体,驱动头的几何还会受安装位置的影响,需要用户人工进行额外调整。此外,同样需导入驱动头规格表和创建参数,并创建参数化的草图。通过Rule语句实现驱动规格切换。由此定义完成驱动头UDF。
2.3 基于Knowledge pattern的UDF调用
2.3.1 Resource Table UDF库
Resource Table是CATIA中将1个模型与若干资源产生关联的知识工程组件,本文即基于该工具构成一个局部资源库,将2.2节中创建的若干类型的UDF分别存储在其中。由于每项资源都可以是另外一个模型中的对象,因此组建该资源库的工作可由多人协同完成。图7为Resource Table的调用,将不同设计人员建立的各型号阀体(S460、S570、S600、S610、S640、S930、S940、S950、S960、S970和S980)和驱动头(S48-M、S980-M、GearBox和HandLever)导入Resource Table中。
图7 Resource Table的调用
2.3.2 Knowledge pattern调用UDF例程
Knowledge pattern是CATIA中需使用EKL编辑的一种特殊的执行代码,通过Knowledge pattern生成的对象能有效地与1个或若干个集合形成对应关系,并能有效解决模型生成之后的更新问题。采用Knowledge pattern调用UDF的EKL语句见图8。
图8 阀体输入条件获取和类型切换
由图8可知,Knowledge pattern主要通过CreateOrModifyTemplate语句,根据当前节点中的控制参数(图8中的”Valve type”)访问Resource table中的UDF库进行选型。此外,通过SetAttributeObject和SetAttributeDimension语句为生成UDF提供自动化的输入定义。在本文所述案例中,共需2段Knowledge pattern语句分别生成阀体和驱动头。在第二段Knowledge pattern语句中,需使用find语句,基于生成的阀体检索到Surface-Top和Origin-Proj对象,以此赋予驱动头UDF的输入。
2.4 封装工程模板
将上述Resource table和Knowledge pattern等知识工程组件与骨架模型几何一同封装,实现完整的蝶阀工程模板定义(见图9)。
图9 将各项知识工程组件组合并一同定义为工程模板
3 实现效果
建立的11种阀体和4种驱动头UDF模型见图10。通过工程模板实例化的参数化阀件见图11。通过该方法可实现阀件的快速生成,且阀体与驱动头类型可两两随意组合,用户仅通过确定阀件定位圆和定位平面即可进行阀件的初始化布置。当输入几何参数发生变化时,能使实例化的UDF对象一同得到修改,进行规格调整。用户也可直接采用手动修改UDF的方法,通过参数选择(见图11)实现阀件切换,实现阀件的快速变形设计。
图10 建立的11种阀体和4种驱动头UDF模型
图11 通过工程模板实例化的参数化阀件
若所有阀件都是按该方案实现的,则每个零件都具备相同的数据结构,这使得批量布置和修改成为了可能。
限于篇幅,本文仅讨论1类蝶阀产品的智能化设计。本文所述机制可推广应用至所有类型的阀、泵、电机和风机等产品的智能化设计中。同时,用户可通过增加输入条件进一步添加选型的EKL语句,形成智能选型的推荐方案。
4 结 语
本文组合运用工程模板、UDF、Resource table和Knowledge-pattern等多项知识工程工具建立智能化阀件模型。虽然该阀件模型在使用时仅是单一独立的零件,但其包含了所有的设计可能性,支持用户后续不断进行修改。该方法在设计过程中只需使用单一模板,能极大地降低用户在设计过程中反复核查设备资料的认知负载,提高设计系统的可修改性和响应速度。基于本文的架构思路,可有效分解小样模型的准备工作,简化其管理。对于船舶系统,可利用CATIA知识工程将设计知识融合到设计过程中,极大地提高设计效率。基于本文对CATIA知识工程工具的应用,主要得到以下结论:
1) 利用工程模板生成骨架+Knowledge pattern+UDF的机制,可自动创建任意一种装配体,实现模型复现,使设计过程更加方便快捷;
2) 利用Resource table+UDF的机制,可由多人协同完成一个产品簇的特殊小样库,多人协同的模式能有效提升设计效率;
3) 该方法的重要基础是合理分解各环节的输入条件和控制参数;
4) 知识工程有多种组件可自由组合,可尝试采用更多的方法实现智能化设计。