陈华伟 伍权 徐卫平 汤耿
摘 要:汽车座椅产品焊接点和焊接类型多,焊接要求质量高,商业CAD焊点工艺设计效率低,而且不满足客户化需求,亟需通过自定义开发实现自动化工艺设计。针对以上问题,基于对汽车座椅骨架电阻焊工艺参数和约束条件的分析,提出了以CATIA CAA用户界面设计、自定义对象、参数验证和实体创建为技术路线的焊点/缝建模框架,然后针对螺母边焊的焊点直径计算、焊点中心至边线距离计算展开了参数自动计算和验证问题研究,最后通过CAA二次开发实现了汽车座椅骨架电阻焊工艺中的平板凸焊和螺母焊的参数化建模。结果表明,通过CATIA高级开发功能能够实现电阻焊自定义对象创建和工艺参数化管理,满足高级客户需求。CATIA CAA具有完整的用户界面设计、对象扩展、几何拓扑对象编辑功能,因而具有强大的自定义对象能力,能够有效应用于成熟客户。
关键词:计算机辅助设计;CATIA CAA;电阻焊;自定义对象;参数化建模
中图分类号:TP391.7;TG441 文献标志码:A
文章编号:1008-1542(2019)04-0285-09
CATIA具有优秀的曲面造型和结构设计及优化功能,已广泛应用于汽车、飞机、轮船等产品的设计,在规模化和创新驱动下,企业要求在原有设计上开发更便利的功能,从而达到提升设计效率、提高设计创新能力的目的。因而,随着应用的深入,CATIA二次开发功能也在汽车[1-3]、飞机[4-8]、轮船[9-10]等行业得以优先实施。CATIA本身具有从低到高层次的二次开发模块[11-13],可以很好地满足不同层次用户的需求。其高级开发模块CAA(component application architecture,组件应用架构)需要付费购买,而且模块中的开发包非常庞大,具有自成体系的开发架构,普通开发者需要较长时间的训练才能掌握其开发技巧,这也限制了CAA在复杂功能开发上的应用。
汽车和飞机及其配套产品中,焊点建模是很重要的设计内容,焊点本身数量多,涉及的工艺参数和约束条件多,加之CATIA自带的焊点建模功能很难符合企业标准和高级管理需求。因此,急需通过二次开发实现自定义的焊点建模,为焊点设计优化和管理打下基础。从研究文献看,中国针对焊点的二次开发主要集中于焊接标注符号的自定义[14-17],开发层次较低,使用CAA进行高级焊点建模功能开发的研究很少。对此,将针对汽车座椅骨架的焊接工艺需求,通过对CATIA CAA界面开发、对象扩展等功能开发,实现电阻焊三维实体建模。
1 电阻焊的焊接工艺参数
为了保证驾乘人员的舒适性,以及在正常行驶过程中和碰撞情况下的安全性,在汽车座椅骨架生产过程中人们对焊接质量要求很高。在汽车座椅骨架焊接中使用电阻焊不仅可以有效提高焊接质量,还有助于实现焊接机械化和自动化,提高生成效率。汽车座椅骨架零部件的电阻焊主要包括平板凸焊和螺母焊两种,两者工艺参数有所不同,焊点实体形状不同。
1.1 平板凸焊
平板凸焊如图1所示,图中突起部位为圆柱形焊点实体,具有直径[WTBX]d和融深h两个参数,分别对应圆柱体的直径和高度。平板凸焊的工艺参数及其约束条件见表1。
针对汽车座椅配套产品的焊接要求,表中焊点/缝基本符号和尺寸符号参考了GB/T 324—1988,参数约束条件参考了企业标准。
1.2 螺母焊
螺母焊又分为边焊和环形焊,如图2所示。
2 程序设计
电阻焊参数化設计[18]程序涉及CATIA CAA的实体对象创建、对象扩展和交互式界面等开发技术。
2.1 实体对象创建
电阻焊焊点/缝对象的创建主要由创成式外形建模GSM(generative shape moduler,GSM)和几何建模器CGM(CATIA geometric modeler)完成。
GSM用于外形特征的创建和编辑,包括各种点线面体的创建和编辑命令,GSM编程实际是模拟了用户的“可见即可得”的界面操作,其操作结果作为可见特征直接反应在CATIA的特征结构树上。
一些更底层的操作则需要用到CGM接口,例如数学运算、拓扑和几何对象编辑等。CGM提供的几何对象包GeometricObjects涵盖了各种点Point(点、线上点、面上点等)、线Curve(直线、圆、样条曲线、参数曲线等)、面Surface(平面、NURBS曲面、球面、圆环面等)基础几何类型的操作接口。CGM还提供了拓扑运算包TopologicalOperators,用于对几何对象的拓扑操作,即对几何对象进行空间边界约束,约束后的几何对象变为顶点Vertex、边Edge、面Face、体Volume,即0~3等4个维度的拓扑对象。图4很好地说明了拓扑对象和几何对象之间的关系,图中Surface1,Surface2以及Curve1是几何对象,它们对应的拓扑对象是Face1,Face2和Edge12。
2.2 对象扩展
如果将CATIA文档(CATPart,CATProduct文件)视为根特征,则该特征又分解为各种Container(容器)特征。CATIA采用容器进行特征管理,容器提供相关各类工厂Factory的接口,用于特征的创建和扩展,例如MechanicalFeature容器提供了CATISketchFactory,CATIPrtFactory和CATICstFactory分别用于创建草图特征、结构特征和约束特征。
特征还可细分出子特征,从而形成特征结构树,各特征都有相应的编程接口,特征及其接口均遵循继承性设计原则[19]。例如MechanicalFeature特征下的子特征MechanicalPart,HybridBody,GSMTool,Sketch及其对应的特征操作接口。
CATIA固有功能及其在对象扩展方面充分发扬了面向对象技术,它采用接口-实现(Interface-Implementation,Ⅱ)模式进行对象扩展。CATIA的所有对象在工厂中创建,因此需要使用工厂对Ⅱ对象进行再封装。工厂中主要完成对象创建及返回对象接口指针的任务。
2.3 交互式界面
CATIA中集成了自定义的交互式应用开发工具[20],可进行Workshop(总菜单或工具条)、Workbench(设计平台)和Addin(插件)3个层面的界面开发,并最终落脚为Addin的功能开发。
一般情况下,Addin调用对话框Dialog资源,响应Dialog的命令Command,因而交互式界面开发的核心是Command。Command一般设计成基于状态的,旨在管理对话框中的交互式输入,基于状态的命令使用Agent获取用户操作的事件和选择的对象,使用状态机State Machine管理用户的输入过程。Command框架程序中已重载了BuildGraph方法,用于状态机的定义和操作。
此外,CATIA还使用CATNls和CATRsc两种文件对图标和文本资源进行预定义,并支持资源的多语言定义。
2.4 程序框架
遵循CAA的开发思路,针对电阻焊的工艺管理需求进行程序设计,设计流程如图5。
其设计要点如下:
1)电阻焊的焊点属性(参数)在Catalog中定义。
2)焊点对象和接口使用Ⅱ-Factory机制进行自定义。
3)用户界面使用Addin-Dialog-Command机制展开设计。
4)通过自定义函数对用户界面输入的焊点参数进行计算和验证。
该功能在Command响应对话框OK消息时调用。验证通过,则生成焊点对象,并创建焊点实体,否则,退出创建。
5)通过继承焊点对象的CATIBuild接口生成三维焊点实体。
该功能根据验证通过的焊点参数,调用CGM画图接口画出焊点实体。其中平板凸焊的焊点为圆柱体,螺母焊边焊的焊点为椭球体,螺母焊环形焊的焊缝为圆环体(见图1和图2)。
3 参数计算
为了减少用户交互次数,用户界面中应只提供必要的参数入口,可计算获取的参数应尽可能地由程序完成。
3.1 螺母焊边焊的焊点直径计算
螺母焊边焊生成椭球体焊点,焊点直径是根据用户选择的焊接参考边确定的,焊接参考边可为直线或者曲线,如图6所示。
针对焊接参考边为直线和曲线的情况,应分别制定焊点中心[WTBX]Pt和直径d的计算规则。当参考边为直线时,Pt为直线中点,d为直线长度;为圆和优弧时,Pt为圆心,d为直径;为劣弧或一般曲线时,Pt为曲线中点,d为曲线两端点的直线距离。
3.2 焊点中心至边线距离L1的计算
参数L1是焊点中心至Part1和Part2最近边线的距离,该参数有L1≥3+d/2的约束,旨在保证焊点不会过于靠近零件边缘。该参数计算中,应注意以下3种情况。
1)Case1:同心圆
如图7 a)中螺母与平板焊接,平板正对螺母内孔已开孔,平板孔直径与螺母内孔直径相等。该实例下焊点本应是正确的,但是显然因无法满足[WTBX]L1条件,而无法正确创建,为了规避该约束,则必须过滤掉平板上与螺母轴线同心的開孔圆。
首先通过垂直投影,获得焊点至平板立体表面的法向。由于误差或用户操作问题,用户选择的焊点有可能在平板的外部或内部,如图8所示。计算[WTBX]Pt0在Face1和Face2上的[WTBX]投影点PtProj1和PtProj2,计算法向n1=Pt0-PtProj1,n2=Pt0-PtProj2。显然投影法无法直接判断法向的朝向,CATIA提供了CATCreatePositionPtVolOperator拓扑运算函数计算点与立体的相对位置,进而对法向进行调整,保证法向朝向体外,图8中显示的n1,n2均为校正后的法向。
2)Case2:圆角
如图7 b)中,平板凸焊的焊点倒有圆角,如果按照Case1处理,则仍然报L1参数错误。一般焊点圆角半径小于0.5 mm,因此,对同心圆弧可以通过给定容差,以保证小半径圆角也能够正常通过参数验证。修改后的同心弧约束条件是:rc≤r0+0.5。
3)Case3:边线的拓扑约束
在焊点中心(轴线)与边线距离计算时,还应注意拓扑和几何对象的差异。图9 a)中使用的边线为拓扑对象,具有起点和终点约束,因此能正确计算出焊点中心轴线至边线终点为最近距离,距离值为10.951 mm;但是图9 b)中使用了边线的几何对象,即边线的无限延长线,因而计算的是焊点轴线至边线直线的空间距离,距离值为3.46 mm,是错误的计算。
4 开发与实现
在CATIA产品设计环境下,使用CAA二次开发实现了电阻焊参数化设计功能。电阻焊包含的平板凸焊和螺母凸焊输入参数基本相同,可以统一至一个界面,如图10所示。
电阻焊界面中,实体选项限制了用户只能选入两个焊接母体;电极直径是翻边距离参数L4的约束(见表1);环形勾选项用于控制是否创建螺母焊环形焊缝;圆/线是焊点/缝的位置线,平板凸焊中可选择线或者圆,螺母焊边焊时可选择直线或曲线(见图2 a)、图6),环形焊时可选择圆或圆弧(见图2 b)),而且当环形选项勾选时,程序限定此处只能选择圆或圆弧;内圆选项在螺母焊时启用,用于确定螺母轴线,并用于规避L1约束条件计算(见3.2节Case1);投影参考是焊点的附着面;翻边参考用于选择翻边面上的一条边线(直线或曲线),用于L4计算。
[10]周进, 徐传胜, 童明波, 等. 基于CATIA CAA的桨毂与自动倾斜器参数化骨架模型与运动分析[J]. 机械设计与制造工程, 2018, 47(5): 38-43.
ZHOU Jin, XU Chuansheng, TONG Mingbo, et al. The CATIA CAA based parameterized skeleton model and dynamics analysis of propeller hub and inclinator [J]. Machine Design and Manufacturing Engineering, 2018, 47(5): 38-43.
[11]胡挺, 吴立军. CATIA 二次开发技术基础[M]. 北京: 电子工业出版社, 2006.
[12]王欣. 基于CATIA二次开发的航空紧固件辅助设计研究[D]. 沈阳: 沈阳航空航天大学, 2018.
WANG Xin. Research on Aided Design of Aviation Fasteners Based on Secondary Development of CATIA [D]. Shenyang: Shenyang Aerospace University, 2018.
[13]黄兵锋,李莹,郑冬黎. CATIA V5二次开发技术在汽车上应用现状[J]. 机械设计与制造, 2012(11): 246-248.
HUANG Bingfeng, LI Ying, ZHENG Dongli. The application in secondary development of CATIA V5 in automotive industry [J]. Machinery Design & Manufacture, 2012(11): 246-248.
[14]赵留强, 王铁, 张瑞亮, 等. ProE二次开发在焊接符号标注中的应用[J]. 机械工程师, 2010(1): 36-37.
ZHAO Liuqiang, WANG Tie, ZHANG Ruiliang, et al. Application of the Pro/E secondary development in the welding symbol mark [J]. Mechanical Engineer, 2010(1): 36-37.
[15]孔建寿, 沈春龙, 张友良, 等. 焊缝代号的AutoCAD二次开发与应用[J]. 机械制造与自动化, 2001(5): 25-28.
KONG Jianshou, SHEN Chunlong, ZHANG Youliang, et al. The redevelopment and application of weld symbol based on AutoCAD [J]. Machine Building & Automation, 2001(5): 25-28.
[16]雒海鹏, 王云峰, 肖承翔. 基于CATIA的多层焊缝符号规范化与开发[J]. 机电产品开发与创新, 2015, 28(6): 31-33.
LUO Haipeng, WANG Yunfeng, XIAO Chengxiang. Standardization and development for welding symbols based on CATIA [J]. Development & Innovation of Machinery & Electrical Products, 2015, 28(6): 31-33.
[17]符青萍, 程小建. 基于CATIAV5 Knowledge Template汽车三维焊点建模[J]. 科技创新导报, 2012(5): 102-103.
FU Qingping, CHENG Xiaojian. Automotive 3D spot modeling based on CATIAV5 Knowledge Template [J]. Science and Technology Innovation Herald, 2012(5): 102-103.
[18]苏凯静. CATIA三维参数化系统的设计与实现[D]. 武汉:华中科技大学, 2016.
SU Kaijing. CATIA's Three-dimensional Parametric System's Design and Implementation [D]. Wuhan: Huazhong University of Science & Technology, 2016.
[19]张敏, 苏兰海, 王君英. 基于CAA的CATIA用户自定义特征创建[J]. 机械设计与制造, 2008(9): 87-89.
ZHANG Min, SU Lanhai, WANG Junying. The creation of user defined geometric feature based on CAA/CATIA [J]. Machinery Design & Manufacture, 2008(9): 87-89.
[20]劉滕, 郝博, 魏礼勇. 基于CAA技术的CATIA可视化技术二次开发[J]. 成组技术与生产现代化, 2015, 32(1) : 19-22.
LIU Teng, HAO Bo, WEI Liyong. The secondary development of CATIA visualization technology based on CATIA[J]. Group Techno-logy & Production Modernization, 2015, 32(1): 19-22.