Preliminary study on intelligent analysis system for serial manipulator based on KBE
孙 宙,王君英,杨向东,陈 恳
SUN Zhou, WANG Jun-ying, YANG Xiang-dong, CHEN Ken
(清华大学 机械工程系,北京 100084)
基于KBE的串联机器人智能分析系统初探
Preliminary study on intelligent analysis system for serial manipulator based on KBE
孙宙,王君英,杨向东,陈恳
SUN Zhou, WANG Jun-ying, YANG Xiang-dong, CHEN Ken
(清华大学 机械工程系,北京 100084)
摘 要:知识工程(KBE)是研究产品全生命周期中工程知识的技术和方法论,通过知识的获取、表示和推理等过程来实现产品设计过程的自动化。以串联机器人为例,探究基于KBE的智能分析系统,并在CAD平台PRO/E中进行了系统搭建。该系统引导工程师在产品设计过程中补充和完善设计知识,辅助工程师对装配体中的零件进行自动受力分析。介绍了系统基于用户交互和几何信息再提取的知识获取途径,以分析类CProAnalysis为例说明了知识表示方法,给出了系统中运动学方程的知识推理实现过程。该系统能减轻工程师的工作量,降低产品结构分析的难度,从而缩短产品的开发周期。
关键词:知识获取;知识表示;知识推理;智能分析系统
计算机辅助设计系统(CAD系统)具有强大的数值计算能力和图形绘制能力[1],极大的便利了工程师的设计工作,在现代机械设计领域已经得到了广泛应用。然而,对于国内大部分工程师,当前的CAD系统仅仅是绘图和建模工具,主要用于辅助设计产品几何外形,而较少涉猎到产品设计过程中的物理特性分析。
工程师使用CAD软件进行设计,在准确表示几何信息的同时,往往忽略了大量的设计信息,例如在设计过程中,螺栓的预紧力、摩擦系数,电机的最大转速、最大转矩等是工程师重点关注的参数,而在CAD系统中螺栓和电机都是由点、线、面构成的零件(part)文件,保留了几何结构参数,却丢失了预紧力等设计参数。区别于零件的几何参数,我们将预紧力等参数定义为设计知识。由于这些设计知识的丢失,在完成设计工作进行校核分析时,大部分工程师需要重新添加设计知识,为得到准确的分析结果增加了难度,同时这一过程也十分依赖工程师的经验和能力。
为降低工程师的分析难度、减少重复劳动量,提高产品设计分析的效率,项目引入了知识工程的概念。机械设计手册已经规范了大部分零部件(常用件、标准件等)的校核分析流程,工程师进行分析时需要进行大量的重复劳动,其工作负担大大增加。
知识工程(Knowledge-Based Engineering,KBE)的概念是斯坦福大学计算机科学家B. A. Feigenbaum教授在第五届国际人工智能会议上提出的。时至今日,知识工程仍然没有明确而固定的定义,但知识工程涵盖的内涵基本一致。文献[2]中按照时间顺序罗列了知识工程在不同环境下的不同的定义,总体归纳起来,知识工程是涵盖了计算机辅助设计(CAD)、人工智能(AI)等技术在内的,研究产品全生命周期中工程知识的技术和方法论。KBE通过对设计知识的获取、分析、推理和重用等过程来实现产品设计中重复工作的自动化,从而能够有效减少产品设计阶段的时间和经济成本。
知识工程(KBE)中,通常包含5个活动,分别是知识获取、知识验证、知识表示、知识推理和知识阐述,而知识获取、知识表示和知识推理则是其中的关键。
知识获取,是将设计知识转化为可用的知识库的过程,该过程为设计提供支持,是知识工程的基础和前提。在机械设计领域,知识主要来源于标准规范和机械设计手册等书籍、专家的设计经验和对成熟产品中知识的再挖掘等三个方面。知识表示则是知识获取的延续,这一过程将已经获取的设计知识以一定的形式有效的组织起来,即将设计知识在计算机系统中进行组织,方便设计知识的存储、读取、查询和使用。
知识推理,是知识的应用和知识的再生过程,是知识工程的核心和难点。这一过程将已有的设计知识按照规则进行合理的推理演绎,得到相应的结果反馈给用户或者作为新的知识存储在知识库中。知识推理主要有四种形式,分别是规则推理(RBR),案例推理(CBR),演绎推理和归纳推理[3]。其中规则推理通过系统设定的规则来实现,案例推理则通过成熟产品等模板来实现。
知识工程KBE和CAD技术相比较,CAD技术侧重于建立几何模型并实现动态显示,而KBE技术更加关注设计过程中,对于设计知识的综合分析和应用。从整个项目的角度考虑(如图1[4]所示),单纯使用CAD技术时,项目耗时的80%用于常规性设计,仅有20%的时间进行创新设计,而采用KBE技术能够将常规性设计的时间成本最小化,为创新型设计提供充裕的时间,同时还能更好地控制项目整体的耗时和成本。
图1 项目中CAD与KBE比较[4]
目前基于KBE的应用主要集中在几何建模方向,文献[5]中提出了高等CAD模板(HLCt)概念,该方法同样基于KBE,从几何层面力求实现飞行器等设计过程的自动化;文献[6]中则详细介绍了在Pro/E中快速添加标准件的方法;他们都是从几何尺寸中关键参数的角度,对符合国标或者行业标准的零件(螺钉、销、键、轴承等)进行快速建模,减少大量的重复工作。
本文提出了基于KBE的串联机器人智能分析系统,主要从设计知识的角度进行研究与应用,利用设计知识辅助设计过程中的物理计算,降低产品设计的难度,缩短产品设计周期。系统在CAD平台Pro/E的基础上进行搭建,实现了辅助工程师完成关键零件的自动化受力分析的功能,为下游有限元分析等提供必要、准确的前处理数据。
本文研究的串联机器人智能分析平台需要的设计知识可以分为两类:通用知识和案例知识。对于前者,例如各类型零件受力分析规则、运动学方程计算方法等,系统直接将这类通用知识程序化,方便系统在不同案例中进行使用。对于案例知识,该串联机器人智能分析系统主要采用如下两种方式:用户交互和几何数据重用。
1.1 用户交互
使用图形用户界面和工程师进行交互,来获取知识,是最直接的案例知识获取方式。该系统在后台预存了不同功能类型的零件属性,供用户选择后添加,部分零件的属性如表1所示。
表1 各类零件的属性
用户在进行零件装配时,点击“添加组件”按钮后弹出如图2所示对话框,在按照提示设置零件属性值后,再选择需添加的具体零件,定义约束并完成装配。
图2 用户定义属性值界面
1.2 几何数据重用
几何数据重用,即充分利用产品模型中的几何信息,将其按照特定的规则以一定的形式进行再组织,形成可被系统使用的新有效知识。装配信息的再利用就是一个典型案例。
对于CAD系统,机械产品的装配就是不断将零件或组件(子装配体)添加到组件中,并定义约束完成装配的过程。这一过程中着重考虑的是两个相关零部件之间的关系,而很少考虑零件和整体之间的关系。下图,显示的就是Pro/E中焊接机器人的装配树。
图3 串联机器人装配树
而对于上图中的焊接机器人(属于该系统研究的对象,串联机器人),机器人学已经建立了完善的“关节-连杆”模型,即从基座开始,经过一系列的关节和连杆连接,最后作用在执行端的近似线性串联系统。基于该模型,可以十分方便的建立其运动学方程及动力学方程。该系统通过对零件约束关系的识别,以非刚性约束为分界点[7],准确地将图中的无序装配树构建出如图所示的各连杆信息,可以看到基座、滑轨和丝杠零件都被划分为连杆0,这和焊接机器人实际情况保持一致。此外,系统还充分利用机器人装配树新定义了零件负载模型,用以记录串联机器人中零件之间的先后顺序。
图4 连杆模型
此外,我们新定义关键约束(key constraint)概念,将原有模型中的几何约束信息转化为分析知识。零件进行装配时,通常定义1个约束集,约束集中包含若干个约束。如图5所示,高亮零件通过mate-insert-insert三个约束构成的约束集锁定位置,其中mate类型表示了两个零件实际接触的表面,而两个insert类型则起到辅助定位的作用。我们就将约束集中和实际零件接触面对应的约束定义为关键约束,并且要求工程师设置约束集时,始终首先定义关键约束。
图5 关键约束定义
对于已经获取的知识,我们需要在系统中将其有效的组织,方便存储、访问和使用。此处以用于受力分析的设计知识的组织结构为例进行说明。
该串联机器人智能分析系统定义了分析类CProAnalysis,其UML图如图6所示。
图6 CProAnalysis分析类UML图
其中,anal_part用于记录用户指定的待分析零件在装配体中的路径,anal_part是该分析类的主关键字(用来唯一标示分析对象)。属性anal_parent_part则记录分析零件的父零件路径。属性list_mass_prop通过链表的形式,完整记录待分析零件负载的所有零件的质量信息,质量信息包括质量、质心坐标、惯性张量等。同时,为了更加便利地访问约束(减少遍历次数),此处用anal_constrArray记录下该零件的装配约束集。属性anal_comp_contour_edge_data和anal_asm_contour_edge_data则分别记录组件和装配件的接触面的轮廓和边界数据,该数据包含了零件接触面的轮廓信息,以及该轮廓所有边界构成的链表,通过该数据可以十分方便的获得接触面的数学模型。center_point则记录该接触面的面心,方便后续的受力分析环节。
以图7为例,若用户指定图中固定板为待分析零件,则CProAnalysis分析类中记录的信息有:父零件连接块,图中固定板右侧所有零件的质量信息(即固定板所有负载的质量信息),固定板和连接块之间的约束集(如图5所示),固定板接触面轮廓和轮廓中所有的边界(共9个)和连接块接触面轮廓和轮廓中所有的边界(共17个)。以上这些知识为固定板的受力分析提供了必要的支持。
图7 分析类CProAnalysis实例
知识推理是整个设计系统的重点和难点,它体现在系统的各个方面。知识推理是对已有知识的充分应用,同时由知识推理得到的结果也可以作为新的设计知识继续运用在后续的推理中。此处简要介绍零件的运动学方程的推理过程。
图4中已经给出了零件所属连杆的信息,同时在已获取的知识“关节-连杆”中还能得到如图8所示的关节轴线信息。图8中每一轴线Axis均有3个属性:其中的Type代表轴线类型,Type属性值为1表示转动关节,属性值为2表示移动关节;Point是轴线上点的世界坐标;Vector表示轴线的方向向量;这3个属性值完全确定关节。
依据机器人学的D-H参数法建模,以世界坐标系作为连杆0(基座)的坐标系,依次获得相邻连杆之间的D-H参数,并按照如下公式计算相邻连杆之间的变换矩阵。
图8 关节轴线信息
连杆n上的零件的变换矩阵为:
对于任意零件,将其自身坐标系转化为世界坐标系下表示,再乘以其所属连杆的变换矩阵即可得到该零件的运动学方程。
该串联机器人智能分析系统搭建在常用的CAD软件Pro/E当中,这一方面大大减轻了开发人员在几何计算和图形显示上耗费的精力,开发人员可以将工作重心放在自动化受力分析上;另一方面工程师使用熟悉的界面和操作,回避了重新学习软件的过程。工程师完成了串联机器人的初步设计后,该智能分析系统辅助其完成零部件的受力分析,这一结果可以使得后续的零件强度刚度校核更为准确。
该串联机器人智能分析系统以知识工程为基础,完成设计知识的获取、验证、表示、推理和阐述等多个过程,实现对串联机器人中任一零件进行自动化受力分析的功能。该智能分析系统的流程图如图9所示。
用户首先按照预先定义的规则进行模型和知识的输入,完成输入后系统自动完成模型知识的获取和表示。此时,用户可以进入动力学模块,用户提供电机的运动参数,可以得到模型中任一零件的运动学和动力学方程,同时可以为零件受力模块提供惯性力知识。若进入受力分析模块,用户首先选择待分析的零件和零件所属类型。此后,系统依次显示零件的前后负载关系和接触面信息,由用户交互修改并最终确认。用户明确接触关系后,进入受力分析计算,得到对应结果进行显示和输出。图10就是系统对串联机器人中一固定板完成的受力分析最终结果。
图9 智能分析系统流程图
图10 零件受力分析结果
本文提出了基于KBE的串联机器人智能分析原型系统,初步实现了其系统功能。系统以工程师的设计知识为基础,一方面通过交互界面由工程师补充设计知识,另一方面按照一定规则充分挖掘和利用已有的设计知识,再对知识进行合理的表示和演绎推理,得到目标结果。系统旨在实现对设计产品中任一零件进行自动化受力分析的功能,为进一步的结构校核提供更确切的边界条件,这从很大程度上降低了对工程师进行产品设计的能力需求,适应了当前市场对于设计分析一体化的要求,缩短了产品设计开发周期。
目前,该串联机器人智能分析系统提供标准件和悬臂梁等典型零件的自动化受力分析模块,后续会进一步研究一般零部件的受力情况分析方法,不断拓展并完善系统。
参考文献:
[1] 肖人彬,周济,查建中.智能设计——先进设计技术的核心[J].机械设计,1997,4:3-5.
[2] Verhagen W J C,Bermell-Garcia P, van Dijk R E C, et al. A critical review of Knowledge-Based Engineering: An identifi cation of research challenges[J].Advanced Engineering Informatics, 2012,26(1):5-15.
[3] 邓小龙.船舶智能总布置设计若干关键技术研究[D].上海交通大学,2012.
[4] Skarka W.Application of MOKA methodology in generative model creation using CATIA[J].Engineering Applications of Artifi cial Intelligence,2007,20(5):677-690.
[5] Amadori K,Tarkian M, Ölvander J, et al. Flexible and robust CAD models for design automation[J].Advanced Engineering Informatics,2012,26(2):180-195.
[6] 卜庆珍,姜雄飞,张瑞亮,等.Pro/E二次开发在机械标准件设计中的应用[J].煤矿机械,2014,1:089.
[7] 郑登科,杨向东,孙宙,等.基于Pro/E的串联机器人仿真平台设计[J].制造业自动化,2014,36(14):137-141.
作者简介:孙宙(1991 -),男,江苏丹阳人,硕士研究生,研究方向为数字化设计与制造。
收稿日期:2015-10-16
中图分类号:TP391,TH122
文献标识码:A
文章编号:1009-0134(2016)01-0128-05