夏雪 刘博
摘 要:为进一步减少产品设计的不确定性,解决公差信息在异构系统之间难以有效共享和顺畅传递的问题,提出基于本体的装配公差值的自动分配方法。通过提取装配公差分配过程中涉及的概念、关系、约束条件及分配经验,采用七步法构建装配公差分配元本体。在此基础上,采用网络本体语言定义提取出的概念和关系,并采用语义网规则语言定义提取出的约束条件和分配经验。通过将基于网络本体语言的结构化知识转换成Jess事实,及将基于语义网规则语言的约束化知识转换成Jess规则,在Jess推理引擎的基础上构建装配公差分配知识库系统。基于构建的知识库系统,开发装配公差值的自动分配原型系统,并设计装配公差值的自动分配方法。
关键词:装配公差值;自动分配;本体;知识库系统
引言
为进一步减少产品设计的不确定性,解决装配公差信息在异构系统之间难以有效共享和顺畅传递的问题。本课题组已在装配公差信息表示模型、基于本体的装配公差类型的自动生成及尺寸公差与形位公差的混合优化分配等方面开展了研究工作。在前期工作的基础上,文章将本体技术引入到对装配公差值的自动分配的研究中,构建装配公差分配元本体及知识库系统,开发装配公差分配原型系统,并设计装配公差值的自动分配方法。
1 装配公差分配概述
在机器装配或零件加工过程中,由相互连接的尺寸形成的封闭尺寸组,称为尺寸链。列入尺寸链中的每一个尺寸都称为环,尺寸链中主要有以下几类环:(1)封闭环;(2)组成环。全部组成环为不同零件设计尺寸时所形成的尺寸链称为装配尺寸链,其特点是尺寸链中的各个尺寸来自不同零件,它能表现出零件与零件之间的相互关系。
当前常用的公差分配方法主要有六种:(1)等公差法;(2)等精度法;(3)相等影响法;(4)成比例影响法;(5)等工序能力法;(6)优化分配法。在满足封闭环精度要求的情况下分配的公差值使制造成本为最低的公差分配方法。
2 装配公差分配元本体
元本体是特定概念(类)和这些概念之间的关系(属性)的有限集合。装配公差分配元本体模型即采用基于本体的方法定义装配公差分配所需的概念和关系的元模型。文章采用七步法来构建装配公差分配元本体,构建步骤如下:(1)确定本体的应用领域;(2)考虑重用现有的本体;(3)列出本体中的重要术语;(4)定义类与类之间的层次关系;(5)定义属性;(6)定义属性的限制;(7)创建类的实例。至此,装配公差分配元本体在理论上已构建完毕,所构建的元本体模型如图1所示。
图1 装配公差分配元本体模型
3 装配公差值的自动分配
3.1 装配公差分配知识库系统
为了构建装配公差分配知识库系统,首先应在计算机中实现装配公差分配元本体,采用当前最为常用的本体编辑工具Protégé来实现构建的元本体。在Protégé-OWL所构建的OWL类和OWL属性的基础上,装配公差分配过程中涉及的约束条件及分配经验均可用SWRL来表示。
由于SWRL是一种独立于所有推理引擎的规则描述语言,故若要在计算机中真正使用定义的SWRL规则进行推理,则需要将基于OWL的结构化知识及基于SWRL的约束化知识转换为某种推理引擎所能识别和处理的规则。为此,Jess推理引擎被应用于装配公差值的自动分配过程中的推理。基于Jess推理引擎,可设计出装配公差分配知识库系统的底层框架(见图2)。在设计的知识库系统中,装配公差分配专家知识生成引擎由以下三大模块组成:OWL2JESS转换器、SWRL2JESS转换器及Jess推理引擎。通过事实库中的事实与规则库中相应规则的前件的匹配,Jess推理机完成推理并生成相应的专家知识。为了采用Jess推理引擎推理生成装配公差分配专家知识,基于OWL的结构化知识和基于SWRL的约束化知识必须分别转换成相应的Jess事实和Jess规则,这些转换工作分别由图2中的OWL2JESS转换器和SWRL2JESS转换器来完成。
图2 装配公差分配知识库系统
3.2 装配公差分配原型系统
装配公差分配原型系统主要由装配公差分配知识库系统、数据库、数学库及Java应用程序四个模块组成,其中Java应用程序模块是系统的核心模块,它是其余三个模块与用户交互的枢纽。知识库系统主要有两个作用:一是基于产品本体与用户要求,以SWRL规则库中包含的经验知识为依据,推理出用于该产品的公差分配专家知识;二是判断公差分配的结果是否符合约束条件,如果不满足知识库中的SWRL约束条件,将会被视为无效结果且不写入本体库中。Java应用程序通过OWL API读取和写入知识库中的知识。数据库主要用于存储标准公差、基本偏差、公差带及配合等数据,Java应用程序通过JDBC API访问数据库。数学库是装配公差分配方法的集合,基中包含了所有常用的公差分配方法。
3.3 装配公差值的自动分配方法
基于开发的装配公差分配原型系统,可设计装配公差值的自动分配方法,方法主要包含如下步骤:
Step1构建产品的3D装配模型。根据产品的功能要求及各零件的理想尺寸,使用SolidWorks构建出产品的3D装配模型。
Step2提取产品的装配尺寸链。应用Java应用程序的装配尺寸链提取模块提取装配体的装配尺寸链。
Step3建立实例断言。利用OWL API分别为装配尺寸链信息与产品设计要求建立实例断言。
Step4构建装配公差分配规则。根据第1章中的约束条件和分配经验,构建SWRL约束规则。
Step5确定装配公差分配专家知识。在Java应用程序中建立Jess推理机实例,将用户对产品的设计要求及装配尺寸链信息读入推理机进行推理,生成公差分配专家知识。
Step6确定各组成环公差。基于step5所生成的装配公差分配专家知识,采用数学库中适合的公差分配方法进行公差分配。在分配过程中对加工难度较大的尺寸给予更宽裕的公差,最终将分配结果写入本体库。
基于以上步骤,可实现装配公差值的自动分配,其流程如图3所示。
4 结束语
提出了基于本体的装配公差值的自动分配方法,与常规的装配公差分配方法相比,提出的方法中的所有步骤都是由计算机自动完成,从而减少了产品设计的不确定性;此外,采用本体表示装配公差分配过程中涉及的知识,使得这些知识都能存储在同一个OWL文件中,所有异构系统访问时只需支持访问OWL文件的接口,从而有助于公差信息在异构系统之间有效地共享和顺畅地传递。基于本体研究装配公差设计,并开发相应的装配公差设计软件,是进一步需要开展的研究工作。
参考文献
[1]ZHANG Y, LI Z, GAO J et al. New reasoning algorithm for assembly tolerance specifications and corresponding tolerance zone types[J].Computer-Aided Design, 2011, 43(12): 1606-1628.
[2]BARBAU R, KRIMA S, RACHURI S et al. OntoSTEP: Enriching product model data using ontologies[J].Computer-Aided Design, 2012, 44(6): 575-590.