随着经济的发展,人们的生活水平越来越高,汽车进入千家万户。从1886年卡尔•本茨发明第一辆现代汽车开始,至今,汽车已成为人们日常生活中的常用T具。因此,人们对汽车的要求不仅仅局限在功能的高低,车身外形成为选择汽车的另一个新的标准。汽车车身是由众多具有复杂空间曲面的薄板件焊接而成,是汽车的重要组成部分,汽车车体尺寸精度直接影响汽车的装配质量,而车体制造过程中的焊接装配工艺是车体成形的关键,也是保证车体精度的关键环节,是车身系统工程中的一个组成部分。
2 基于案例推理技术( CBR)
案例推理技术于1982年由耶鲁大学的Roger Schank教授在其dynamic Memorry一书中首次提出,经过30多年的发展,它己成为人工智能领域的一项重要的推理技术。基于案例推理是一种以相似度的提取和推理为核心,在以往的经验和知识的基础上,从源案例中获取目标案例从而求解问题案例的方法,它从模拟人的思维过程开始,采用类比推理的模式,在多目标、多准则、知识表达困难或因果关系不明确的复杂系统中得到广泛的应用。一个典型的CBR问题求解过程基本过程可以归纳为”R4理论”:案例检索(Retrieve)、案例重用(Reuse)、案例修改(Revise)和案例存储(Retain),其中基本流程和相应关系如图1所示:
图1 基于案例推理流程
3 汽车焊装夹具概述
夹具是将设计构思转变为实际产品的基本工艺装备之一。汽车焊装夹具是汽车车身焊装生产线上的关键工艺设备。在整个汽车焊接生产线上,焊装夹具除了完成本工序的零件组装、定位、夹紧外,还担任检验和校止上一共序的焊接质量、配合下道工序的焊接流程等任务,因而它的设计制造影响着整个焊接工艺水平、汽车生产能力及产品质量。现今社会,用于车身的焊接技术日益完善,焊装夹具定位迅速、质量控制手段逐步智能、自动化生产线立体布置、焊接机器人大量应用等随着汽车制造业的高速发展逐步实现。
车身壳体是一切车身部件的安装基础,通常指纵、横梁和立柱等主要承力元件与它们相连接的板件共同组成的空问结构,按照受力的不同分为非承载式车身、半承载式车身和承载式车身.典型的轿车车身是由400多个冲压件,50多个分总成,用70-90余套焊接夹具按照一定的组合工序装配而成。随着汽车改型周期的缩短,产品的不断增加,生产效率越来越高,汽车车身薄板件焊接方式也不断更新,由原来的手工焊接生产方式发展为流水线的焊接生产方式,焊装夹具也由传统的机械手工式夹具发展为集机械、液压、气动、电气及计算机控制为一体的自动化焊装夹具。
4 基于案例汽车焊装夹具智能设计系统构建
基于案例汽车焊装夹具智能设计系统是人工智能领域的典型代表范围内自动化生产系统及柔性与可重构生产制造系统的必然产物。不仅要求知识模块化、标准化、开放性,而且要求人机交互的智能性。
图2 AWJICAD系统架构
汽车焊装夹具智能设计系统AWJICAD由路径配置模块、信息管理模块、案例管理模块、推理设计模块等四个子模块组成,如图2所示,各个模块具有不同的功能,其中路径配置模块是系统运行的前提;信息管理模块作为系统信息的输入,是系统成功运行的关键;案例管理模块负责案例的添加、删除以及修正重用后的存储,是系统知识库必不可少的部分;推理设计模块以智能化的方法完成目标案例的匹配和选取。
4.1 数据配置模块及其构建过程
数据配置模块是指对信息管理模块、案例管理模块、案例推理设计模块所在路径的管理设置,并给出嵌入式规则推理的规则库路径。它是进行案例推理设计的基础,能够确保各模块的工作按照指定的路径进行,我们用*.dat文件进行信息存储和路径赋值。
数据配置模块的构建可分为如下步骤:
(1)进入VC++6.0,使用MFCAppWizard[dll]应用向导,创建以“Dbset”为工程名的工程。
(2)创建如图3所示对话框,添加4个EditBox编辑框和4个PushButton按钮,分别用来指定式样书、案例库、规则库和设计结果数据的默认存储路径和单击后面的Push Butt0n按钮时进行路径的修改。
图3 数据配置对话框
(3)创建DbsetDialog类,进入MFCClassWizard对话框,创建EditBox编辑框的成员变量和PushButton按钮的成员功能响应类型。
(4)创建完毕后进入DbsetDilog.cpp资源文件、DbsetDilog.h文件进行程序的编写,具体请参考附录程序代码。
4.2 信息管理模块及其构建过程
信息管理模块主要是指知识的获取归纳模块,能够将式样书巾的设计信息转化为知识信息,并进行存储。夹具设计式样书是根据客户要求制定的单工位的设计方案信息,包括基本信息、主控点信息和主控断面信息。在整个夹具设计过程中,设计式样书的信息是进行设计的前提和依据,因此,我们对此进行知识封装作为夹具设计的信息基准。信息管理模块的创建步骤如下所示:
(1)进入VC++6.0,使用MFCAppWizard[dll]应用向导,创建以“BMSys”为工程名的工程。
(2)创建TaskManageDlg对话框,添加2个PusButton按钮,并添添加2个PusButton按钮,并添加成员响应功能,分别命名为“新建任务和“打开己存在任务”,用来判断任务是新创建还是打开己经创建但未完成的任务继续操作。
(3)创建如图4所示的父对话框,添加3个PushButton按钮,分别命名为夹具基本信息、夹具控断面信息和夹具单元信息。
图4 信息管理模块对话框
①基本信息模块对话框
基本信息是指式样书中关于车身基本知识和焊接操作过程种所涉及知识的总和包括车型提取归纳、工位名称以及设计中上料顺序、工位节拍、焊枪类型等信息,我们采用面向对象的方法生成公有形式的基本信息类:
②断面信息模块对话框
断面信息主要包括车身零部件的主控断面位置和焊装夹具数量信息判断夹具的打开方向、夹具设计是否对称、夹具压紧点的坐标值等信息VC++6.0编程工具进行数据封装访问,如下所示:
5 汽车焊装夹具智能设计系统工作流程
图5 案例推理流程图
(1)进入汽车焊装夹具系统进行路径配置并保存、路径以文本的格式存储在*.dat文件内,各模块将按给定的路径进行信息交换和提取。
(2)从式样书中提取问题案例信息并输入系统,信息管理模块进行信息的编编译和储存。
(3)判断案例库是否完善,如果需要添加案例,则进入案例管理模块。
(4)用whileCcasefile.ReadString循环语句获得案例参数并运用层次分析法进行案例检索匹配。
(5)获取相似度最大案例并用CBRResult[l=JigCase.m_sJNum]函数语句储存在结果文件中。
(6)判断相似度值是否满足要求,若满足要求进入(5.7),否则进入(5.2)重新进行案例信息提取。
(7)获取目标案例及其对应的三维单元模型。
(8)将汽车焊装夹具单元调入NX8.0设计平台,用OF_ASSEM_Add_partioassemhly()parent_part, part_name,NULL.NULL,origin,csvys_matrix,layer,&insttag,&loadstatus)语句实现定位。
6 结论
总之,随着汽车制造业的发展,汽车更新换代较快,车身曲面变化多段,信息管理模块提取信息输入,在案例管理模块所存储的不同结构案例单元中,通过推理设计模块检索出满足要求的目标案例。汽车焊装夹具智能设计系统在NX8.0空问虚拟平台上,通过VC++6.0编程工具成功实现了系统的运行。我们需要构建更加完善的知识库来匹配问题案例,适应社会发展。