多平台产品快速设计方法及应用技术研究
2016-03-15刘子建徐晓亮艾彦迪张坤鹏
刘子建 徐晓亮 艾彦迪 张坤鹏
摘要:针对复杂机械产品快速设计过程中流程无驱动、数据无载体等问题,提出了基于一致性产品信息模型和全设计流程理论的多平台产品快速设计新方法.基于骨架模型的Top-Down参数化建模原理,详细阐述包括规范计算、分析优化、参数化模型驱动及设计数据存储在内的多平台软件无缝集成技术以及数据模型规划方法.构建了产品快速设计平台软件架构.最后运用该方法构建了塔式起重机快速优化设计平台,完成了某塔机设计实例.实例表明,该塔机的研发周期大幅缩短,轻量化效果明显,验证了本文提出的多平台产品快速设计方法和技术的先进性和实用性.
关键词:快速设计方法;参数化模型;优化设计;软件集成技术;塔式起重机
中图分类号:TH122 文献标识码:A
文章编号:1674-2974(2016)02-0048-08
21世纪市场需求多样化、个性化和快速变化的特点使得产品投放市场的时间及质量日益成为赢得客户的关键因素,有力地促进了以缩短开发周期、提高设计质量为特色的产品快速设计技术发展[1].因此,适应市场需求,采用有效的快速设计方法,构建集成化的产品快速设计平台,对于提升企业市场竞争力具有重要意义.
近年来,产品快速设计方法和软件技术的研究取得了明显进展.如陈永亮等[2]提出了模块化的机械产品快速设计体系结构,侧重于设计过程分析,对设计数据的完备性及数据共享问题则较少讨论;Liu等[3]研究用建立信息本体模型(Ontology Model)的方法解决机械产品设计过程中复杂的数据表述和存储问题,理论意义明显,实用技术需要进一步完善;Penoyer等[4]提出了一种基于知识工程(KBE)的产品快速设计理论,在对产品研发提供良好设计规则支持的同时,构建知识库的要求也就更高;刘子建等[5-6]提出用多层多体方式构建产品统一信息模型,并用包含语义、数据、时序和行为四元素的全设计流程理论驱动设计流程.然而,上述研究较少涉及与产品快速设计密切相关的流程驱动方法、以产品模型为载体的数据快速处理技术的具体实现方法,致使用于产品研发实际的CAx多软件平台快速集成方法仍然没有形成完善的方案,企业中信息化单元技术和设计人才相对丰富,却无法形成高效实用的快速设计能力的现象依旧十分普遍,制约了企业核心竞争力的提升.
本文基于文献[5-6]提出的产品全设计流程理论,针对全设计流程的语义、数据、时序、行为四大要素,以及一致性产品信息建模的原理,结合机械产品设计的基本流程(规范计算→结构设计→优化分析→三维建模→工程图设计) [7],讨论了CAx多平台环境下一致性产品参数化快速建模方法、模型规划和数据传递技术、软件架构和平台集成技术,并以塔式起重机快速优化设计平台为实例,验证了基于统一信息建模和全设计流程原理构建产品多平台快速设计方法的可行性.
1基于多平台的产品快速设计方法
基于多平台的产品快速设计方法是借助于现代设计方法、CAx和数据库等先进信息技术,以产品一致性结构参数化模型为信息载体,以全设计流程为驱动机制,以缩短产品开发周期为目的的新型多平台集成设计方法.
1.1参数化建模与结构设计
基于商用CAD/CAM软件系统的参数化设计技术主要有3种实现途径,其一是通过编程语言建立设计对象的数学模型;其二是利用系统提供的特征设计表达式驱动结构建模;其三是使用骨架模型(Pro/E)等技术实现产品的Top-Down参数化设计建模.骨架模型可较好地支持设计流程和传递设计数据,便于维持结构信息模型的一致性.
基于骨架模型的Top-Down参数化建模的关键在于设计对象的模块化分解及设计参数的层次化定义,即由产品到部件到零件再到特征逐层分解设计对象,分级建立骨架模型,再从顶部骨架模型传递数据给底部零件模型,从而保证设计数据的一致性.用Pro/E等软件系统实现上述过程的主要步骤包括:定义产品各层级的骨架参数—建立描述产品整体性能和部件性能的约束条件—构建部件、零件的各类基准—确定零部件结构定形和定位尺寸的关系—选择Sweep或CSG等方法生成三维模型.上述每一步骤均可根据需要设置参数,并通过骨架关系和几何发布等功能在各层级模型间传递和共享数据.
遵循Top-Down思想的参数化建模最终生成的是具备柔性特征的一族模型,用户可以通过变更参数来修改设计意图.参数化模型使得产品在设计初期(此时,零部件的形状尺寸均具有一定模糊性)即可规划零部件之间的位置关系及形状特征,根据设计流程的推进,通过控制参数快速有效地完成尺寸、基准等设计要素的修改,以几乎是全自动的形式完成三维模型的生成,与此同时还能够保持设计数据的一致性.显然,Top-Down参数化设计建模方法具有传统设计方法无法比拟的灵活性、高效率,以及设计数据和模型修改的一致性.
1.2多平台软件无缝集成
Top-Down参数化设计建模的意义在于提供了结构设计快速表达方法,形成了设计信息的载体.复杂机械产品要求的性能设计优化、复杂数据计算和管理等,则需要利用模型载体,集成多个软件平台共同完成,因而产品快速设计实现的关键在于多平台软件的高效集成.下面针对图1所示的流程驱动需求,讨论围绕产品研发目标,使用Matlab, Ansys, Pro/E及Access等常用软件系统完成产品规范计算、分析优化、结构建模、数据存储和管理等功能的多平台集成原理,以及接口实现等关键技术,从而将快速设计不可或缺的快速流程驱动、自动计算、参数化优化分析、Top-Down快速建模、设计数据规范管理融为一体,构建高效实用的多平台快速设计方法和软件系统.
1.2.1规范计算
规范计算的主要任务是获取初步正确的产品设计参数,满足工程理论和规范意义上的基本设计要求.不同产品的规范计算必须严格按照对应的技术标准和计算规范进行,如GB/T 3811—2008(《塔式起重机设计规范》)就是工程机械中塔机规范计算的依据之一.
规范计算通常使用的Matlab以工具箱形式提供功能丰富的计算函数库,使得产品开发人员无需研究具体的算法结构以及求解机理,通过简单的程序语句就可以调用函数,完成指定的工程计算[8],或借助于API(应用程序接口)与其他应用程序建立客户/服务器(C/S)关系.
VC++与Matlab混合编程主要有如下几种方式:1)通过Matlab Engine方式;2)调用Matlab的C/C++函数库;3)用Matlab自带的Compiler编译器;4)使用Matlab的Combuilder工具;5)使用Matcom工具等[9].下面以Compiler工具为例讨论C/S结构的实现方法,如图2所示.
如图2所示,以Matlab或MCRInstaller作为服务端, 由VC++开发的应用程序作为客户端,通过Matlab提供的Compiler工具将规范计算函数编译为.dll,.lib,.h等文件(使用mcc命令),供客户端程序调用.通常是先依据产品技术要求将规范计算分为若干模块,定义模块的接口参数作为规范计算函数的调用参数,形成满足产品规范计算要求的专业计算函数库,供客户端程序根据快速设计要求随时调用.
1.2.2分析优化
在规范计算基础之上进一步进行产品关键参数的分析优化,是提高产品设计质量、降低成本的关键途径,已经成为现代机械产品研发必不可少的步骤.基于数值计算发展起来的分析优化方法和软件技术是机械产品快速优化设计的基础.
ANSYS提供的二次开发途径有参数化设计语言APDL(Ansys Parametric Design Language)、用户图形界面设计语言UIDL(User Interface Design Language)、用户可编程特征UPFS(User Programmable Features)等[10].其中,APDL是一种通用性强、功能强大的参数化有限元建模和分析语言,APDL模型可以读取规范计算的结果生成参数化有限元模型,并完成有限元分析和参数优化,还可以向骨架模型传递数据,驱动结构模型自动生成,是特别适用于产品快速设计的产品一致性建模、分析和流程驱动的工具.
依据产品规范计算所得结构参数快速建立参数化有限元模型的第一步是实现两者之间的数据传递.鉴于ANSYS没有提供C++程序接口和API函数,图3给出了基于VC++开发的Win32应用程序与ANSYS集成通信的解决方案.具体做法, 其一是建立以规范计算结果为输入,以关键结构参数为分析对象的APDL参数化有限元优化模型;其二是在VC++中创建进程,后台运行ANSYS系统,实现内存共享;其三是以APDL模型文件及.opt优化结果文件等为操作对象,将进程创建、文件读写等操作以类成员函数的形式进行封装,实现优化参数的传递和设计数据的交换.
1.2.3参数化模型驱动
利用分析优化所得结果快速生成设计对象三维模型的关键在于结构优化参数对CAD/CAM参数化模型的直接驱动,如果后者是一致性Top-Down参数化模型,将获得最佳的建模效率和质量.
Pro/E异步模式下的二次开发技术无需前台运行系统即可以参数驱动骨架模型的重建,从而大大提高设计效率[11-12].下面以Pro/Toolkit开发技术为例讲述参数化结构模型驱动过程.基于.NET和VS2010平台的Pro/E异步开发模式的基本流程如图4所示.
1.2.4设计数据存储
设计数据存储面向全设计流程的设计语义及设计数据,是数据流在设计过程中产生中间数据文件或结果数据文件的过程.数据流代表系统中流动的数据,数据存储则反映系统中相对静止的数据.数据存储机制的选择与数据的读写效率、数据与工程语义的一致性、数据可重用性等密切相关,是产品快速设计必须解决的关键问题之一.
大型机械产品结构复杂,设计参数众多且相互关联,采用数据库尤其是关系型数据库存储数据是较好的选择.以Access数据库为例讨论相关技术.
常用的数据库接口技术有ODBC(Open Database Connectivity,开放数据库互联)、DAO(Data Access Object,数据访问对象)、RDO(Remote Data Objects,远程数据对象)、OLE DB(Object Linking and Embedding, Database,对象连接嵌入数据库)、ADO(ActiveX Data Object,活动数据对象)等.其中ADO是基于OLE DB数据访问模式的高层接口,是ODBC, DAO, RDO三种方式的扩展,因其简单易用、运行效率高、可扩展性好等优势而备受青睐.
ADO是Microsoft提供的面向对象的数据访问接口,主要由3个对象成员Connection,Command,Recordset,以及Properties,Errors,Fields,Parameters等集合对象组成.图5描述了VC++利用ADO模型对象的智能指针访问Access数据库的基本方法,具体包含如下步骤:
1)初始化COM环境,导入ADO库;
2)创建ADO对象并连接数据库;
3)利用ADO对象执行SQL命令;
4)关闭连接并释放对象.
在实际应用中,可根据产品具体的数据类型、数据表、数据视图等对ADO对象的底层操作进行封装,屏蔽实现细节,精简代码,以方便快速调用.
1.3数据模型规划
所谓数据模型规划是通过对现实世界的事与物主要特征的分析、抽象,为信息系统的实施提供数据存取的数据结构以及相应的操作[13].数据模型规划的合理与否,关系到数据冗余度大小、一致性高低及传递效率等,是快速设计技术的重要环节.
数据模型的规划方法如下:
1) 将对象抽象为实体,确定实体属性及关系,建立概念模型;
2) 依据范式理论等标准化数据,将概念模型转化为逻辑模型;
3)将逻辑模型转化为物理模型.
设计过程中产生的数据大致可分为3类,即标准数据、过程数据、结果数据.型材数据属于标准数据,如规划方钢的型材数据模型可以首先将方钢抽象为一个材料实体,根据机械设计手册,方钢包含边长、壁厚、理论重量、截面面积、惯性矩、惯性半径等属性,其概念模型可采用图6所示的E-R图描述.
由于材料与设计过程相对独立,材料实体与其他实体间不存在“关系”,所以方钢的实体属性即为逻辑模型属性:
方钢(边长,壁厚,惯性矩,惯性半径,理论重量,截面面积),下划线表示方钢逻辑模型的主键.
最后确定数据库存储的记录结构,将逻辑模型转化为物理模型:
1.4快速设计平台软件架构
以规范计算、分析优化、参数化模型驱动、数据存储四大模块为服务端,以VC++应用程序模块为客户端构成的产品快速设计平台Client/Server软件架构如图7所示.
设计数据、设计语义存储于服务端,设计行为由人机用户界面、各类接口配合数据存储方法控制.
产品快速设计的基础在于构建规范计算、分析优化、参数化结构设计等模型,核心在于规划一致性产品数据模型和数据处理方法,关键在于多平台集成技术.通过合理的数据模型规划、面向对象的接口设计以及高效可靠的软件平台集成,使各个部分统一协调运行,有效驱动快速设计流程,高质量、高效率地完成产品研发.
2塔式起重机快速优化设计
塔式起重机(简称塔机)是一种应用广泛的大型建筑施工机械.塔机工作空域广,运行环境和工况复杂,对安全性、稳定性和可靠性要求都很高,是一种结构复杂的大型机电一体化产品.设计过程复杂、开发周期长、难以获得技术性和经济性均佳的产品设计方案是塔机研发面临的主要问题,因此,特别需要一种专业化的塔机快速设计方法和软件平台.本文遵照塔机设计规范要求,以降低成本为目标,以安全性、稳定性和可靠性为约束条件,以塔机关键结构参数为设计变量,以一致性产品信息模型和全设计流程原理和前述快速设计方法为基础,开发了如图8所示集规范计算、分析优化、一致性骨架模型驱动三维建模及二维图纸生成于一体的塔机快速设计平台,并成功应用于企业产品设计实际.
2.1塔机规范计算
塔机快速设计的初始参数是用户的QR曲线、起重臂和平衡臂长度、臂尖吊重、最大吊重、吨米级等基本参数,通过如图9所示界面输入.图中按钮1~5对应于起重臂、平衡臂、塔帽(包括回转塔身、回转总成)、爬升套架、塔身的规范计算.
如起重臂重量规范计算步骤如下:
1)根据GB/T 3811—2008编写起重臂重量计算的Matlab函数BoomWeight.m,输入参数为各臂节长度及型材规格,如图10所示;
2)编译,运行mcc-W cpplib: libBoomWeight-T link:libBoomWeight.m命令,生成对应的libBoomWeight.h, libBoomWeight.lib和libBoomWeight.dll等文件,保存在产品工程目录下;
3)对BoomWeight原函数进行封装.需注意,调用DLL中的封装函数之前需先调用libBoomWeight Initialize进行初始化,封装完成后要调用libBoom WeightTerminate终止进程.
塔机规范计算模块的输出包含初始设计参数及计算结果.如由图9和图10等界面输入的设计参数,以及如表1所示的各类设计数据,均以规定的格式写入塔机规范计算说明书,并传递给接口类中定义的数据模型变量,作为下一步分析优化的输入.
2.2塔机分析优化
以规范计算模块的输出数据作为塔机APDL参数化有限元模型的输入参数,进一步进行塔机的优化设计.如塔机的轻量化设计步骤如下:
其一是确定最危险的3种工况:臂尖承受额定吊重、跨中承受额定吊重、最大额定吊重的最大幅度处的最大吊重,以及自重、起升载荷、回转起动惯性载荷以及风载荷等.其二是用APDL命令流建立塔机参数化有限元分析模型:钢结构采用BEAM188梁单元模拟;拉杆采用LINK8杆单元模拟;平衡臂、回转机构、起升机构、变幅机构等集中质量,通过在相应位置处施加MASS21质量单元进行模拟,并与梁单元进行耦合;塔身基础节与混凝土基础连接的4个约束点处采用固定约束[14].整机APDL模型总共生成节点577个,单元1 273个,建立的塔机参数化有限元模型如图11所示.
然后针对3种危险工况下的载荷、约束及边界条件分别构建APDL分析优化程序(如以等强度设计为目标,调用ANSYS提供的XXXX优化算法,求取型材的最佳横截面等),并对设计变量进行合理分组以保证计算结果收敛 [15].最后根据参数分组及规范计算的输出自动修改分析文件,并以ANSYS安装目录下的Ansys121.exe(ANSYS 12.1版本)为参数调用函数CreateProcess,创建Ansys进程,运行对应的APDL文件,最终将结果数据传递给接口类中对应的数据模型变量.
2.3塔机参数化骨架建模及二维图纸生成
塔机快速设计平台采用一致性参数化建模技术建立了塔机各部分的骨架模型,并测试了这些模型的准确性、设计数据可传递性和模型可再生性等性能,确保可以实现塔机的Top-Down参数化建模.进一步以ANSYS优化所得结构参数作为输入,调用Pro/E命令驱动塔机骨架模型自动生成三维模型及二维图纸.实现步骤如下(以起重臂拉杆为例):
1)OpenSkeletonModelFile(“E:\\\\Model \\\\QZB_LG.prt”);//将此模型(含路径)载入内存.
2)ModifyParameter( d, "QZB_LG_ D");//修改模型对应参数(d为尺寸值,QZB_LG_D为对应参数化模型变量).
3)RefreshParameter(“E:\\\\Model\\\\ QZB_LG.prt”);//驱动模型再生.
4)SaveSkeletonModelFile();//保存再生后模型.
此处,为方便用户调用,已将Pro/E底层函数进行封装,使得用户在不了解函数细节的情况下也可完成模型更改和再生.
二维工程图生成模块采用批量转换技术,解决塔机零部件数量多、转换工作量大的问题.调用ProDrawingFromTmpltCreate等函数,将参数化骨架模型生成对应的二维图模板,得到优化数据驱动的与三维模型一一对应的二维工程图,设置模板还可以完成对工程图的标注.
2.4快速设计结果分析
以市场公认成功设计的某款60吨米级在用塔机产品作为测试验证对象,运用上述快速设计平台完成同款塔机的设计,采用测试和理论分析相结合的方法对技术指标逐项进行对比分析.结果表明,采用快速设计方法大幅缩短了设计时间,塔机结构尺寸和材料分布得到了全面优化,总重量降低了7%左右,在保证安全性、稳定性、可靠性的前提下,实现了产品的轻量化设计,见表2.
上述测试分析结果表明,快速设计方法大幅缩短了塔机的设计周期,提高了设计质量,与传统设计方法相比具有明显的优越性,受到塔机生产企业的好评.
3结论
本文针对机械产品设计的主要环节,提出了以一致性产品信息模型和全设计流程原理为基础,以参数化结构设计模型和有限元分析模型为数据载体,以集成化软件平台和接口技术为途径的产品多平台快速设计的新方法.该方法包括产品规范计算、APDL参数化有限元分析优化、Top-Down参数化快速建模等步骤,以及数据模型规划与存储、设计数据传递和共享、软件架构和接口技术等,构成了完整的多平台快速设计软件集成技术.最后,将本文研究的方法应用于塔式起重机的研发中,研制了塔机快速优化设计平台,并通过设计实例验证了本文提出的多平台产品快速设计方法的优越性.
参考文献
[1]汪洋.适应市场条件的机械产品快速设计技术探讨[J].中国市场, 2007(1): 81-82.
WANG Yang. Study on rapid design technology of mechanical products to adapt to market conditions[J]. China Market, 2007(1): 81-82.(In Chinese)
[2]陈永亮,徐燕申,齐尔麦.机械产品快速设计平台的研究与开发[J].天津大学学报:自然科学版,2002,35(6):680-684.
CHEN Yong-liang, XU Yan-shen, QI Er-mai. Research and development of rapid design platform for mechanical products[J]. Journal of Tianjin University: Science and Technology, 2002, 35(6):680-684. (In Chinese)
[3]LIU Wei-wei, SHAO Wen-da. Research on the knowledge acquirement of rapid design for mechanical products[J]. IERI Procedia, 2014, 7:96-101.
[4]PENOYER J A, BURNETT G, FAWCETT D J, et al. Knowledge based product life cycle systems: principles of integration of KBE and C3P[J]. Computer Aided Design, 2000, 32(S5/6):311-320.
[5]刘子建,王平,艾彦迪.面向过程的产品信息虚拟装配建模技术研究[J].中国机械工程,2011,22(1):60-64.
LIU Zi-jian, WANG Ping, AI Yan-di. Research on process-oriented virtual assembly modeling technology for product information[J]. China Mechanical Engineering, 2011, 22(1):60-64. (In Chinese)
[6]刘子建,董思科,王平,等.设计行为意义上的数字化设计系统特性评价[J].湖南大学学报:自然科学版, 2011, 38(11): 47-53.
LIU Zi-jian, DONG Si-ke, WANG Ping, et al. Characteristic evaluation of the sense of design behavior for digital design system[J]. Journal of Hunan University: Natural Sciences, 2011, 38(11):47-53. (In Chinese)
[7]陈祝权,梁晓合,林粤科,等.六自由度串联机器人结构设计及有限元分析优化[J].机床与液压,2013(23):97-101.
CHEN Zhu-quan, LIANG Xiao-he, LIN Yue-ke, et al. Structural design and optimization of 6 axes serial robot[J]. Machine Tool & Hydraulics, 2013(23):97-101. (In Chinese)
[8]牟彧清,王汝霖,李国新.MATLAB与VC接口技术的研究[J].微计算机信息,2006,22(21):275-277.
MU Yu-qing, WANG Ru-lin, LI Guo-xin. The research of the interface technology between MATLAB and VC[J]. Control & Automation, 2006, 22(21):275-277. (In Chinese)
[9]杨文臣,张轮,何兆成,等.Matlab与VC++混合编程及其在交通信号两级模糊控制中的应用[J].公路交通科技,2012,29(9):123-128.
YANG Wen-chen, ZHANG Lun, HE Zhao-cheng, et al. Matlab & VC++ hybrid programming and its application in two-stage fuzzy control for urban traffic signals[J]. Journal of Highway and Transportation Research and Development, 2012, 29(9):123-128. (In Chinese)
[10]林能辉,彭凌云,刘杰. ANSYS二次开发技术及其在土木工程中的应用[J].计算机应用与软件,2012,29(8):34-37.
LIN Neng-hui, PENG Ling-yun, LIU Jie. The secondary-development of ANSYS and its application in civil engineering[J]. Computer Applications and Software, 2012, 29(8):34-37. (In Chinese)
[11]沈斌,陈骁,姚秀卿.产品参数化在Pro/E二次开发中的应用[J].机电一体化,2012,18(6):73-76.
SHEN Bin, CHEN Xiao, YAO Xiu-qing. The application of product parameterization in Pro/E secondary development[J]. Mechatronics, 2012, 18(6):73-76. (In Chinese)
[12]缪燕平, 何柏林. Pro/TOOLKIT对Pro/E二次开发参数化设计系统研究[J]. 机械设计与制造, 2008(9): 185-187.
MIAO Yan-ping, HE Bo-lin. Study on parametric design system based on secondary development of Pro/Toolkit[J]. Machinery Design & Manufacture, 2008(9):185-187. (In Chinese)
[13]苗德成,奚建清,苏锦钿.一种数据模型的范畴论建模方法[J].计算机应用研究,2013,30(9):2744-2747.
MIAO De-cheng, XI Jian-qing, SU Jin-dian. Categorical approach for making model of data model[J]. Application Research of Computers, 2013, 30(9):2744-2747. (In Chinese)
[14]苗明,高原.起重机伸缩臂的ANSYS二次开发[J].起重运输机械, 2011(3):53-55.
MIAO Ming, GAO Yuan. ANSYS secondary development of crane telescopic boom[J]. Hoisting and Conveying Machinery, 2011(3):53-55. (In Chinese)
[15]ZHAO W T, GUO F, LI X, et al. Reliability analysis of composite structure using ANSYS software[J]. Advanced Materials Research, 2014, 945/949:1155-1158.