1、Software Engineering and Applications 软件工程与应用软件工程与应用,2023,12(4),629-638 Published Online August 2023 in Hans.https:/www.hanspub.org/journal/sea https:/doi.org/10.12677/sea.2023.124061 文章引用文章引用:樊域宁,仲梁维.基于 CATIA 二次开发的汽车夹具管理系统关键技术研究J.软件工程与应用,2023,12(4):629-638.DOI:10.12677/sea.2023.124061 基于基于CATIA二次开发
2、的汽车夹具管理系统关键二次开发的汽车夹具管理系统关键技术研究技术研究 樊域宁樊域宁,仲梁维仲梁维 上海理工大学机械工程学院,上海 收稿日期:2023年6月29日;录用日期:2023年8月16日;发布日期:2023年8月24日 摘摘 要要 焊装是汽车生产中的关键工艺,汽车焊接夹具的研发在汽车制造中占用重要地位,汽车夹具管理系统在焊装是汽车生产中的关键工艺,汽车焊接夹具的研发在汽车制造中占用重要地位,汽车夹具管理系统在夹具柔性化设计中保证了数据的规范统一。针对企业在当前敏捷制造流程中存在的周期长、效率低、智夹具柔性化设计中保证了数据的规范统一。针对企业在当前敏捷制造流程中存在的周期长、效率低、智能
3、化设计中工作量大等问题,本文借助二次开发能化设计中工作量大等问题,本文借助二次开发API工具,分析汽车夹具管理系统中的关键技术,主要工具,分析汽车夹具管理系统中的关键技术,主要对系统管理模块、夹具元件管理模块、工装辅助功能设计模块和设计对系统管理模块、夹具元件管理模块、工装辅助功能设计模块和设计/组装模块进行分析和开发,实现设组装模块进行分析和开发,实现设计过程的优化。通过夹具零件的功能开发和智能管理,提升了设计质量,减少了个体经验给设计质量带计过程的优化。通过夹具零件的功能开发和智能管理,提升了设计质量,减少了个体经验给设计质量带来的不稳定性。经检验,由参数化设计的汽车夹具实例可以满足工来的
4、不稳定性。经检验,由参数化设计的汽车夹具实例可以满足工程要求,工装辅助功能解决了手动修程要求,工装辅助功能解决了手动修改等一系列繁琐步骤,设计效率提高约改等一系列繁琐步骤,设计效率提高约40%,于设计的过程提供智能化重用的支持。为汽车产品的迭代,于设计的过程提供智能化重用的支持。为汽车产品的迭代升级提供了有力的工具。升级提供了有力的工具。关键词关键词 CATIA二次开发,汽车夹具,管理系统二次开发,汽车夹具,管理系统 Key Technology Research of Automotive Fixture Management System Based on CATIA Secondary
5、Development Yuning Fan,Liangwei Zhong School of Mechanical Engineering,University of Shanghai for Science and Technology,Shanghai Received:Jun.29th,2023;accepted:Aug.16th,2023;published:Aug.24th,2023 Abstract Welding is a key process in automobile production,the development of automobile welding fix
6、-樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 630 软件工程与应用 ture occupies an important position in automobile manufacturing,and the automobile fixture management system ensures the standardization and unification of data in the flexible design of fixture.The present article addresses the challenges faced by e
7、nterprises in the current agile manufacturing process,such as long cycle times,low efficiency,and heavy workload in intelligent design.Utilizing secondary development API tools,this study analyzes key technologies within the automotive fixture management system.It mainly focuses on the analysis and
8、development of the system management module,fixture component management module,tooling assistance function design module,and design/assembly module,aiming to achieve optimization in the design process.Through the development and intelligent management of fixture components,the design quality has be
9、en enhanced,reducing the instability caused by individual experiences.Experimental validation indicates that the parameterized design of automotive fixtures meets engineering requirements.The tooling assistance function resolves a series of tedious steps,such as manual modifications,re-sulting in a
10、design efficiency improvement of approximately 40%.It provides intelligent reuse sup-port throughout the design process and serves as a powerful tool for the iterative upgrade of auto-motive products.Keywords CATIA Secondary Development,Automotive Fixtures,Management System Copyright 2023 by author(
11、s)and Hans Publishers Inc.This work is licensed under the Creative Commons Attribution International License(CC BY 4.0).http:/creativecommons.org/licenses/by/4.0/1.引言引言 在当今汽车工业中,冲压、焊接、涂装、总装被认为是汽车制造过程中的四大工艺1。其中焊装是汽车生产中的关键工艺。典型的小型乘用车是由 400 多个冲压件,50 多个分总成,通过 7090 套焊接夹具按照特定的组合工序装配而成2。通过焊接,冲压成型得到钣金件可以形成白
12、车身。如果焊接质量出现问题则会导致钣金变形开裂而产生异响,影响到整个汽车加工质量,严重者可造成安全危害3。焊接夹具焊接生产线的核心,在实际汽车制造中可以 1)提升装配精度,确保产品质量;2)提升焊接效率,降低制造成本;3)焊接产品的模块化显著提升,便于互换;4)降低制造难度便于工人操作等,对于车身质量具有重要的影响4。目前,有关于白车身夹具二次开发的相关研究较多,但基于 CATIA 的夹具二次开发研究较少。如果通过人工方式在 CATIA 中进行夹具零件的适配操作以及标准件、企业件、数据库的建立,不仅工作量大、效率低、易出错,而且需要基于不同的客户指定不同的方案。本文通过综合应用 C#开发语言,
13、结合 CATIA Automation 二次开发技术,实现夹具零件的属性赋值、工装信息提取、装配体的参数化设计功能5。2.汽车夹具管理系统的体系结构汽车夹具管理系统的体系结构 依据系统的总体设计,对系统的各个功能模块进行了详细设计,其功能架构如图 1 所示。系统具备的内容为:1)系统管理模块。用于管理夹具管理系统站内用户。管理员可以对用户权限进行添加、删除以及更改操作;2)夹具元件管理模块。用于管理组合夹具原件,主要包括导入元件入库、元件出入库信息查询、元件信息更新等功能;3)工装智能辅助设计模块。系统提供了数个辅助工具帮助设计者提高工作效率,如夹具的参数化设计,工装结构信息提取等功能;4)设
14、计/组装模块。该模块提供Open AccessOpen Access樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 631 软件工程与应用 零件的三维图生成、导出以及插入装配体等功能。用户通过该模块根据工艺需求设计组合夹具,并进行组合夹具的进一步组装。Figure 1.System functional architecture 图图 1.系统功能架构 2.1.汽车车身焊装夹具的结构分析汽车车身焊装夹具的结构分析 车身夹具单元的种类和类型较为复杂,但是依据总的用途可以进行大致的分类6:支撑单元(Support Unit)作为焊装夹具的基本原件,对工件平面和表面粗糙度要
15、求较高,因为其精度直接决定了定位单元的精确性;定位销单元(RPS_PIN Unit)的主要作用是进行车身件的定位,由运动方式可具体分类为固定 RPS樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 632 软件工程与应用 销单元,伸缩 RPS 销单元和翻转 RPS 销单元,RPS(德语 Referenz Punkt Systematik)是应用于单件或总成件在产品设计、制造、检测及批量装车所有阶段中的基准点系统,可使零件设计基准点、工艺定位基准点、测量基准点相统一,实现零件精确定位;压紧单元(Clamp Unit)作用于焊装件的夹紧定位;空压单元(Hollow Clam
16、p Unit)与压紧单元相似,但没有压紧单元的支撑部分。对于以上任意一种结构的单元,可以依据调整的方式更深入地分类,具体可以分为 Z、ZX、ZY、ZYX 向调整单元。图 2 展示了汽车夹具的各个单元体及其在开发过程中的尺寸定义。根据规格的不同,主参数为 A1,假设变化量为,则与 A1具备约束关系的尺寸为 A3,则 A3 的变化量应为。由此可得 A1,A3 具备正向的尺寸关系,同理,A4、C2 和 H 也具备正向的尺寸关系。Figure 2.Example diagram of fixture unit 图图 2.夹具单元实例图 2.2.CATIA 二次开发技术二次开发技术 CATIA 是由法国
17、达索公司研发的 CAD/CAE/CAM 一体化软件,在全球范围内处于领先地位7。其作为强大的工程软件可以进行丰富功能定制,使其更好为用户所用,从而提高工作质量,其出色的开发性能使其成为整个车身焊接夹具行业中使用最广泛的软件。CATIA 为用户提供了两种编程接口,分别为自动化编程(V5 Automation)和开放的基于构件的应用编程接口(CAA)8。CAA 稳定性好,功能强大,更适用于专业深层次的二次开发需求。然而,由于 CAA 需要专业编程软件工具,对开发人员的要求较高。相对应的,基于 COM 技术的 V5 Automation 涵盖了 CATIA 二次开发编程对象架构,其帮助文档描述了各个
18、接口中不同对象的方法属性以及使用案例教程,在汽车夹具管理系统开发中,需求和代码开发功能对应,可借此优化多种工装辅助设计功能,实现系统与 CATIA 的充分连结。开发周期短且稳定易用,能够满足大多数工程应用开发需求。本文在 V5 Automation 建立的开发环境中调试编译,调用其中的相关接口,针对重复劳动效率低的樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 633 软件工程与应用 问题,综合运用 CATIA 多个模块,实现了交互选择、属性赋值、工装结构信息提取、参数化设计等功能。CATIA API 与开发对象与开发对象 CATIA API(Application
19、Programming Interface)属于接口函数,即面向对象编程语言中特有的,仅指定函数成员而不实现成员的函数。所有的数据通过继承、聚合的方法形成树状结构,并用 API 封装成对象。通过 CATIAAPI 的使用,可使开发者通过编写代码的方式,生成可重复利用的代码模块,达到在程序内部调用 CATIA 内部功能的目的。Application为整个结构的根对象,系统中CATIA进程内部的所有对象都凭该对象的对应方法返回。以 CATIA 进程已经启动为前提,使用参数含“CATIA.Application”字符串的函数 Get Active Object 以获得 Application 对象的
20、运行实例,将其赋给一个 INFITF.Application 类型变量 CATIA=(INFITF.Ap-plication)System.Runtime.InteropServices.Marshal.GetActiveObject(“CATIA.Application”)。若程序运行时 CATIA 尚未启动,则使用参数含“CATIA.Application”字符串的函数 Get Type From Prog ID 获取程序标识符后,将获得的程序标识符代入函数 Create Instance,并把其赋给变量 CATIA=(INFITF.Application)Activator.Create
21、Instance(oType)。最终,通过属性 Visible=true,即可实现 CATIA 程序的显示9。Application 派生出 Collection(集合)和 Object 类型。其中 Collection 含 Printers、Documents、Windows,Object 含 System Service、File System。其中多种对象可能对应着同一种方法或属性,例如控制几何元素的方法 Add()、Item(),获取 Document 的路径属性如 Path。3.汽车夹具管理系统关键技术实现与测试汽车夹具管理系统关键技术实现与测试 3.1.基于交互选择的属性赋值技术基
22、于交互选择的属性赋值技术 在汽车夹具的设计过程中,装配体和零件内有许多需要人工额外编辑的自定义属性。由于零件类型和数量庞大,人工添加的效率和质量都较低。通过 CATIA 中宏的录制获取属性赋值的接口和方法,以便后续 BOM 表的导出。3.1.1.人机交互选择夹具部件人机交互选择夹具部件 CATIA 的系统交互功能是二次开发中重要的一环。开发者通过 V5 Automation 自带的 Document Object-Selection 对象,完成用户在屏幕上零件或装配体的选择,而不是通过代码选择结构树集合元素,避免用户直接接触代码,提高了选择的效率和安全性。Select Element2 或 S
23、elect Element3 函数分别代表选择一个物体或选择一个或多个物体。为了过滤掉不必要的元素,使选择更加便捷,以上的交互选择命令都包含一个过滤器参数 CAT Selection Filter,该参数为下限为 0 的字符串数组,通过添加相应的字符串元素实现功能。例如输入过滤器 Input Object Type(0)=“TriDim”,即可完成三维元素的过滤,用户在当前函数运行过程中只能在屏幕内选择三维元素,如凸台(Pad)。3.1.2.零件属性赋值功能零件属性赋值功能 该功能主要实现自定义属性参数 Parameters 获取和赋值功能。上文提到通过 Selection 对象选择的Prod
24、uct 对象,此处可利用其属性 User Ref Properties 来得到该产品参数的集合,以实现对零件属性的增、删、改、查功能。开发过程中在 Form 中添加 SelectElement2 方法,实现在文件中通过人工交互选择零件,再给零件“Type”属性赋予文本控件字符串内容的功能。以夹具支撑单元为例,功能实现流程图如图 3所示。樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 634 软件工程与应用 Figure 3.Diagram of property assignment check implementation 图图 3.属性赋值检查实现流程图 3.2.
25、工装结构信息提取技术工装结构信息提取技术 工装结构信息是指在机械加工过程中机加设备的类型、名称、以及相互之间的关系。工装信息结构的提取有利于在实际生产中了解并管理整个工装结构,在夹具的智能化设计过程中完成对工装结构的总览和零件继承关系的概括。本功能主要实现的是装配体文件中的结构树遍历。相关的零件文件在建立之初就已经添加了自定义属性,引入到装配体文件中。通常会在根装配体节点下方建立若干子装配体节点,将零件文件通过装配过程分类到各子装配体节点中。更进一步,子装配体节点下方可继续建立子装配体节点,对其中的零件进行装配分类。3.2.1.终端节点的判断方法终端节点的判断方法 零件的属性都在终端节点中被定
26、义。终端节点是对零件内部元素的包装,该节点内部不包含子节点。本文中构造了判断装配体集合内部是否具有装配体子节点的 IsLeaf 函数。通过使用装配体集合 Products内部的 Count 属性,确定交互选择的装配体内装配体集合内部元件的数量。如果元素数量大于 0,则该函数返回布尔值 true,否则返回 false。该函数将在下文中的显示工装信息的方法中发挥作用。3.2.2.基于递归访问策略的结构树信息提取技术基于递归访问策略的结构树信息提取技术 该技术构造了一个 Show Structure Information 函数。当遍历到某一层级的节点时,先用 IsLeaf 函数判断其是否为终端节点
27、。若是终端节点,则该子节点内为零件,将 product.get_PartNumber()获取到的零件名称在其父装配体下部显示。若是中间节点,则获取其名称后,利用 Show Structure Information 方法进行深度递归循环遍历,从而判断整个工装的结构树信息,直到循环至终端节点。通过递归访问结构树方法,工装信息的提取得以实现,并使用树视图(TreeView)实现信息的展示。树视图是一种可通过节点的折叠和展开以实现层次结构信息展示的窗口控件,它内部的节点集合(Nodes)属性可进行节点(TreeNode)的编辑操作。樊域宁,仲梁维 DOI:10.12677/sea.2023.1240
28、61 635 软件工程与应用 以下代码实现了在树视图控件内部添加了一个节点,该节点 Text 属性为当前遍历元素名称。Tree Node tmpNd=new TreeNode();Tmp Nd.Text=product.get_PartNumber();Tree View1.Nodes.Add(tmpNd);实现流程图如下所示,图 4 展示了该方法提取工装信息运行结果,图 5 展示了在实际操作中的效果。Figure 4.Diagram of the extraction process of the workwear information structure 图图 4.工装信息结构提取流程图
29、 Figure 5.Diagram of the extraction of the workwear information structure 图图 5.工装信息结构提取效果图 樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 636 软件工程与应用 3.3.汽车夹具的参数化设计汽车夹具的参数化设计 参数化设计是智能化、集成化的 CAD 系统的核心技术,通过修改参数,以实现模型的修改和联动。可以减少软件模块的重复利用,简化数据库冗余零件。一般作用于形状和结构比较确定的零件,通过一组参数约定尺寸关系,以达到参数与设计元件的控制尺寸相对应10。在以往的参数化设计中,夹具
30、设计往往采用尺寸驱动法,在 CATIA 内部人工定义对应的参数,操作效率低,重复率高。本文中使用程序驱动法的参数设计,通过代码选择结构树中的约束及其对应参数,达到同一模板批量生成不同尺寸夹具单元的目的。3.3.1.参数化设计的方法参数化设计的方法 在 CATIA 内部进行参数化设计有两种方法:尺寸驱动法和程序驱动法。在实际使用过程中可以根据两者利弊进行取舍或混合使用。尺寸驱动法是指,通过创建 Parameters(参数集)内部的单个 Parameter(参数),并与零件结构树的特定尺寸或约束进行绑定的方法。当需要不同尺寸的同类型零件时,设计人员可根据给定的约束修改相应参数值,使其几何元素或特征
31、的几何拓扑信息发生变化,就能实现在模板零件基本结构不变的前提下,生成一组结构相同但尺寸不同的零件系列。该方法主要通过用户在屏幕内进行点击操作,适用于个别产品的修改和调用。当需求零件数量过大时,就会暴露出操作繁琐、易出错等问题。程序驱动法利用 CATIA API 接口函数,在代码编写阶段控制参数和几何表达式的生成,完成相应的建模设计。通过 Winform 中的控件,设计者仅需要在窗口输入所需的参数名和参数值即可直接修改原模板零件。程序驱动法运行高效、快速,适用于大批量生成零件文档。但由于代码量较多,前期编写的难度较大,时间较长。3.3.2.参数化建模流程和界面设计参数化建模流程和界面设计 Fig
32、ure 6.Parameter value modification process 图图 6.参数值修改流程图 樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 637 软件工程与应用 在以往的夹具数据库管理系统中,夹具单元作为其中的重要一部分,不需要针对单个零件进行参数化设计,而是在完整的单元装配体模式下进行参数定义。在开发生产的设计、工艺、生产、制造、财务、采购等各个业务系统中,基础数据比较薄弱,存在着元件数据协同不一致,数据利用率低等问题11。为了解决数据冗余、减少夹具数据库的占用空间,在此处以夹具单元为例。在开发过程中需要找出各个关联尺寸,建立尺寸链管理,形成
33、基于尺寸的约束模型12。调用 API 函数修改结构树中 Parameters 项中的变量值,将源文件的参数通过公式赋予自定义参数,即可实现通过控制自定义参数修改模板零件约束的效果。图 6 展示了汽车夹具系统中支撑件参数集内的参数值各个修改过程,以此创建的三维模型的参数变量在结构树中的结果如图 7 所示。Figure 7.Parametric design results for automotive fixture supports 图图 7.汽车夹具支撑件参数化设计结果 4.结束语结束语 本文介绍了在 C#环境下基于 CATIA 二次开发进行汽车夹具管理系统的研究。针对设计过程中建模复杂、耗
34、时长、设计效率低的问题,综合开发了系统管理模块、夹具元件管理模块、工装智能辅助设计模块、设计/组装成模块,针对属性赋值,工装结构信息提取以及参数化设计的功能进行关键技术研究,缩短了夹具设计周期。这样设计者可以在结构设计方面投放更多精力,以提高产品质量,同时为汽车夹具管理系统优化提供了一种思路。樊域宁,仲梁维 DOI:10.12677/sea.2023.124061 638 软件工程与应用 参考文献参考文献 1 屠攀.汽车零件柔性焊接夹具设计与研究D:硕士学位论文.上海:东华大学,2016:1.2 禹化宝.基于案例汽车焊装夹具智能设计系统的研究与开发D:硕士学位论文.烟台:烟台大学,2014.3
35、 周方明,陈丽丽,颜益,黄曼.基于UG的三维汽车后桥焊接零件库系统的设计J.焊接技术,2016,45(3):56-59.https:/doi.org/10.13846/12-1070/tg.2016.03.019 4 杨鸿强.汽车车身焊装夹具的设计对策J.新型工业化,2020,10(11):30-32.https:/doi.org/10.19335/ki.2095-6649.2020.11.013 5 朱立达.基于 CATIA 二次开发的焊装夹具 BOM 自动提取J.机械工程师,2017(7):109-110.6 熊晓萍.汽车车身焊接夹具运动机构浅析J.现代制造工程,2005(1):80-82
36、.https:/doi.org/10.16731/ki.1671-3133.2005.01.034 7 胡挺,吴立军.CATIA 二次开发技术基础M.北京:电子工业出版社,2006.8 彭欢.基于 V5 Automation 的 CATIA 二次开发技术研究J.电子机械工程,2012,28(2):61-64.9 刘圣,郝泳涛.基于 CATIA 二次开发的产品 BOM 属性自动提取J.电脑知识与技术,2012,8(7):1550-1552.10 刘薇娜,贾帅帅.基于 CATIA 二次开发的非标准件参数化设计J.自动化技术与应用,2017,36(7):43-46.11 潘盟.基于 CATIA 统一数据标准件库管理系统的二次开发D:硕士学位论文.西安:西安工业大学,2021.https:/doi.org/10.27391/ki.gxagu.2021.000239 12 成大先.机械设计手册(第六版)M.北京:化学工业出版社,2017.