空调换热器组件的仿真与图形生成一体化平台开发
2019-11-01王康硕任滔杨怀毅丁国良董洪洲宋晓李刚
王康硕,任滔,杨怀毅,丁国良*,董洪洲,宋晓,李刚
(1-上海交通大学制冷与低温工程研究所,上海 200240;2-浙江盾安人工环境股份有限公司,浙江杭州 311835)
0 引言
随着市场竞争激烈、时间成本越来越高,空调换热器生产企业需要快速设计换热器,及时参与投标竞价。换热器的快速设计包括:快速、准确设计出满足要求的换热器结构以及换热器的快速绘制。
对于换热器结构的快速设计,换热器仿真提供了必要的方法[1-2]。国内外的相关软件已经比较成熟,如国外马里兰大学和上海交通大学开发的换热器仿真软件[2-4],可以实现换热器快速建模,模拟换热器性能精度高,可以满足实际工程需求[2],但是只能通过OpenGL等技术在软件中显示换热器三维图形,没有开发或调用三维绘图软件的接口,因此没有直接生成三维换热器图形的功能。
对于三维换热器的快速出图,目前应用最广的三维绘图软件是SolidWorks软件,具有功能强大、易学易用等特点,但是需要从绘制草图到构建特征的方法逐一实现换热器的各个特征,因此无法实现换热器的快速绘制功能。
为了实现换热器快速设计,需要将换热器仿真软件和绘图软件结合起来。目前的结合方法需要人工识别仿真软件中大量的结构参数,人工将这些参数转化为SolidWorks绘图所需的信息。然后,换热器种类繁多,结构(换热器芯体、包括钣金件在内的配件)复杂,且SolidWorks绘图需要详细的坐标参数,导致绘制一款大型换热器往往需要一天甚至更长时间,限制了换热器设计的效率。因此,快速绘图需要一个集成换热器结构快速设计和图形快速生成的一体化平台将换热器设计到换热器绘图的过程有效关联起来。
本文研究了翅片管换热器仿真软件中换热器结构参数与三维绘图软件所需的绘图参数坐标之间的映射关系,开发了基于换热器仿真软件的图形生成的一体化平台。
1 仿真与图形生成一体化平台搭建
集成换热器结构的快速设计和图形的快速生成需要读取设计软件的结构信息,并转化为图形绘制所需的空间结构参数。如图1所示,空调换热器组件的仿真与图形生成一体化平台的作用是:用程序自动读取仿真软件中换热器结构的数据,利用这些数据编写 SolidWorks可识别的绘图代码,即对SolidWorks进行二次开发,自动生成对应的换热器及组件的图纸。具体的平台开发思路如图2所示。
第一步,通过换热器仿真软件设计出性能满足要求的换热器结构,通过流文件序列化(XmlSerializer)方法将仿真软件中存储换热器结构信息的类序列化,生成包括换热器结构参数的Xml流文件,便于后续对绘图软件(SolidWorks)二次开发时调用。
第二步,调用 SolidWorks的 COM 接口,对SolidWorks进行二次开发,分别编写换热器芯体以及钣金件的 API的绘图函数[5-6]。将编译好的程序生成解决方案即可生成换热器芯体绘图插件和钣金件绘图插件。
第三步,启动程序会自动打开SolidWorks,在工具下面找到对应的插件,点击即可启动程序主函数。对于换热器芯体插件读入流文件后即可生成换热器芯体。对于钣金件绘制插件除了读入换热器结构参数外,还需通过界面读入其它钣金件结构参数数据,生成钣金件图形。
图1 换热器自动绘图平台作用
图2 换热器自动绘图平台开发思路
2 换热器芯体图形生成
2.1 难点分析
换热器芯体中最核心、复杂的部分是连接管,并且每款换热器的管路连接方式各不相同,图3所示为任意管路连接方式的一种。
连接方式的信息以某种特定形式(有向图)存储在仿真软件中[4],程序中存储连接方式的信息是任意的,存储的结构信息无法直接用于绘图软件,而绘制连接管需要确定的空间结构参数。因此,换热器芯体插件的难点是将任意的连接方式的存储信息反编码为编写 SolidWorks绘图函数时所需的特定参数坐标。
图3 换热器芯体自动绘制难点
2.2 解决思路
将存储换热管路信息的有向图转化成用于SolidWorks绘图的位置坐标的思路是,通过数学描述的方法将有向图中换热器连接管的信息表达出来,再通过公式反编码成对应的绘图坐标[8-10]。
确定换热器芯体空间结构参数后,平台通过对绘图软件(SolidWorks)进行二次开发,通过程序将图形自动绘制出来。SolidWorks二次开发方法主要有两种,尺寸驱动法和模型驱动法。尺寸驱动法是通过改变模型零件的尺寸,获得一系列总体结构相同而尺寸不同的方法。该方法无需反复构建模型,只需通过尺寸变量驱动,生成的零件源于同一个零件模板;模型驱动方法[5-7]是通过程序代码将绘图的整个过程(选择平面、创建草图、拉伸特征等)进行逐一描述。该方法所需代码量与模型的复杂程度直接相关,通常需要大量代码才能完成。由于换热器尚无模型,故采用模型驱动法进行二次开发[9-20]。
2.3 解决方法
在仿真软件中,换热器的管路信息用有向图表示[8]。有向图的点集和边集分别采用公式(1)和公式(2)表达,并用二维矩阵Mij存储[5]。
反编码矩阵Mij,如图4所示,将每根管路的起始管编号(i)、终止管编号(j)存储在数据列表中。
图4 换热器芯体自动绘制思路与方法
编写绘图代码时,先访问连接管位置记录数组,得到连接管位置,再利用换热器的行列距信息(如图5)通过解码代码计算出在三维空间内,每一个管路的起始管圆心的位置坐标,然后将坐标作为绘制连接管函数的参数,则可以绘制出每一个连接管。具体的解码方法分为5步。
1)计算连接管的起始管(终止管)的行数Nrow。
式中:N——每列的管数。
2)计算连接管的起始管(终止管)x坐标,xi。
式中,R(m)为第m行的行距。
3)计算连接管的起始管(终止管)的列数Ncol。
4)计算连接管的起始管(终止管)y坐标,yi。
式中,C(Nrow,n)为第Nrow行第n列列距。
5)计算连接管的起始管(终止管)z坐标,zi。
式中,L为换热器管长,m。
图5 换热器管相关参数
可以将矩阵内每一个管路的起始、终止管路的信息转化为绘图时所需的坐标,这两个坐标即是该管路两个端点的坐标,但是只有这两个端点的坐标还不能在SolidWorks中绘制出连接管,因为绘制半圆弧的API函数需要三点的坐标,所以,根据式(8)计算出圆弧中点的坐标(x,y,z)。
图6 换热器U管参数
以图6中任意一U型管(换热器管圆i、j之间)为例,将参数带入,对应的参数方程为式(10)~式(12):
其中,xi、xj、yi、yj、zi、zj,见式(3)~式(7)。
由此绘制出二维U管后,还需要一个将二维线条转化为三维换热器管的命令。在SolidWorks中,大多使用扫描命令。扫描形成换热器连接管时,对于不同连接管需选择相应的草图,扫描时只能选择对应的起始或终止换热器管圆。说明每一个圆管面都需作为一个单独的草图存在。
3 换热器芯体配件图形生成
3.1 难点分析
在换热器芯体配件中,钣金件数量最多,结构最复杂。钣金件的作用是与换热器芯体装配,便于安装、固定,保护换热器管束,钣金件的自动绘制需要解决两个难点。
由于钣金件数量庞大、结构复杂,无法对每一种钣金件类型单独开发,因此对钣金件类型的结构特征进行总结、提取,开发几个通用的钣金件模型是钣金件二次开发的第一个难点。将这些结构特征进行组合即可绘制任意类型的钣金件。
将钣金件的特征总结归纳后,如何存储钣金件各个特征的参数,并且将这些特征参数转化绘图时所需的参数是第二个难点。例如,对中心板进行打孔使钣金件与换热器管束能够配合是装配的关键。然而,每款换热器管束的管排数、管列数、行间距、列间距等参数各不相同,说明管束的位置千变万化,所以,需要将记录每根换热器管参数的列表转换为绘制换热器管束所需的参数。
3.2 解决思路
对于第一个难点,解决的思路是根据先整体后局部、先重要特征后次要特征、优先考虑出现频率高的特征等原则提取换热器配件的特征。依次提出的特征为:整体造型、中心板开孔(平孔或翻边孔)、切角、铆螺母、平孔、四方孔等,这些特征具有通用性。
对于第二个难点,解决的思路是先理清各个特征数据的来源,并将所有参数统一调取,统一存储。
3.3 解决方法
对换热器配件的特征进行组略提取后,将每个特征可能出现的不同情况进一步细分,具体如表1所示。
整体造型可以为U型、L型、矩形、斜型、翻边型5大类。其中翻边型钣金件的四周翻边高度(可以为0)、方向均可选择,故整体造型共有10种以上的方式;中心板开孔方式可以全部开平孔,或平孔与翻边孔结合;切角方式可以四角都切,或只切一角、两角,典型的钣金件可有3种切角方式;铆螺母的数量在2~3之间不等,常用的3类结构见表1;平孔的数量未定,通常左右侧各开1~2个;常规的四方孔只有表1所示的1种类型。因此,按照排列组合共可提供300种以上的钣金件类型。
对于第二个难点,将所有特征结构的参数都存储在钣金件插件的一个数据存储类里面,该类参数有的通过换热器芯体结构得到,有的需要用户通过界面输入,如图7所示。
表1 钣金件特征
图7 钣金件数据存储
以中心板的开孔为例,从最小编号1开始遍历换热器管的数据存储列表中的每一根换热器管,根据里面的管列距、管间距确定该管的圆心坐标。具体的公式与绘制换热器连接管时确定起始(终止)管圆的圆心坐标完全相同,这里不再重复。
确定中心板孔的位置坐标后,还需确定开孔的方式才能绘制,而开翻边孔的位置随机,将每个孔的开孔信息记录在数据存储类的一个布尔型的二维数组里(1为翻边孔,0为平孔),通过用户交互界面,让用户点击选择翻边孔的位置,如图8所示,翻边孔记录在数组 Str[,]对应的位置。绘制中心板孔时,先判断Str中对应位置的值,确定该位置是否为翻边孔,先绘制出所有平孔,再绘制出剩下的翻边孔。
图8 中心板开孔方式
在绘制出每种特征以后,只需根据不同钣金件的特征需求,对这些特征进行组合。该钣金件插件可绘制上百种常用类型的钣金件。
4 一体化平台应用
一体化平台由换热器芯体插件、换热器配件(钣金件)插件组成。
换热器芯体插件的开发过程为:1)设计Opendialog对话框,以便打开、读入流文件;2)根据反序列化流文件得到的管长、管径、管排数、管列数、管子的连接方式、翅片尺寸等参数依次编写绘制换热器管、连接管、翅片的API函数代码;3)生成解决方案,即可生成SolidWorks插件。
换热器芯体插件可绘制直型、一次弯折两大类换热器芯体,其中一次弯折换热器的弯折角度、方向可在仿真软件中指定。图9所示为换热器芯体插件运行结果。
钣金件插件开发过程如下:1)读入换热器芯体的整体参数及换热管位置;2)绘制钣金件所需参数设计用户交互界面以及相应对话框,并设计好数据存储类,以便后续调用;3)调用数据存储类的参数以及换热器芯体参数依次编写各个特征的API函数代码;4)生成解决方案,即可生成钣金件自动绘制的插件。
根据换热器在现场的实际安装、固定等需求,合理选择钣金件特征,如图10所示。
以图9和图10所示的换热器芯体及配件为例,与传统绘制方法进行比较,见表2。传统方法需要手动绘制换热器管、翅片、逐一装配连接管,绘制大型换热器至少需要3 h;绘制换热器配件(上下左右边板)的所有特征至少需要2 h,而平台可以实现换热器芯体及配件一键生成,总体效率提高5倍以上。
图9 换热器芯体插件运行结果
图10 版金件特征组合实例
表2 平台与传统出图方式比较
5 结论
本文研究了翅片管换热器仿真软件中换热器结构参数与三维绘图软件所需的绘图参数坐标之间的映射关系,开发了基于换热器仿真软件的图形生成的一体化平台,得到如下结论:
1)利用数学方法可以将仿真软件中的换热器结构信息用三维绘图软件描述出来。通过解码将仿真软件中换热器连接管位置、连接方式和换热器管参数等存储信息转化为绘图软件中的绘图坐标参数,并且对绘图软件二次开发,实现换热器芯体的一键生成,避免了传统的人工绘图方法的手动装配、耗时费力和出错几率较大的问题;
2)利用归纳的方法将绘制换热器配件所需的特征提炼,即可通过特征组合的方式生成配件的三维图形。利用数学描述的方法将结构特征转换为绘图所需的坐标参数,实现钣金件的自动绘制,避免了传统的人工绘图方法需要做大量重复性工作和绘图效率低的问题;
3)该仿真与图形生成一体化平台可提高换热器开发效率。根据实际应用,换热器芯体插件的使用可以将绘图效率提高10倍以上,且随着换热器芯体的管路连接越复杂,效率提升越显著;换热器配件(钣金件)插件可以提高5倍以上的出图效率,对于机柜钣金件,可实现全特征自动绘制,且钣金件非标结构越少,提升效率越显著。因此总的绘图效率至少提高5倍以上。