桥式起重机数字化设计系统的研究与开发
2020-10-21臧春田王宗彦李玉虎石瑞敏马旭
臧春田,王宗彦,李玉虎,石瑞敏,马旭
(中北大学 a. 机械工程学院; b. 山西省起重机数字化设计工程技术研究中心,山西 太原 030051)
0 引言
目前,桥式起重机作为车间生产的重要运输设备,应用广泛,其运行速度快,工作效率高,横架于车间、仓库等场所的上空,对目标货物进行起吊、搬运等操作。随着全球起重机市场需求的不断扩大,起重机正朝着大型化、轻型化的方向发展,起重机的设计朝着定制化、参数化的方向发展[1]。很多中小型企业当前对于起重机的设计依旧采用的是传统手工计算设计的方法,在设计过程中存在大量繁琐的工作[2]。
在此背景下,本文面向起重机行业,通过研究起重机设计共性关键技术,开发模块化、参数化、智能化的起重机快速设计系统[2],帮助设计工程师实现了起重机快速定制设计、优化设计以及零部件校核。该系统的成功开发降低企业生产成本,显著提升相关产品的生产效率,最终达到提高企业市场竞争力的目标。
1 桥式起重机智能设计系统构建
1.1 系统框架构建
以起重机为研究对象,结合客户实际生产需求,按照产品模块划分方法和原则,将起重机各级结构划分为不同层级的多个模块,并整合各模块之间的对接方式;确定设计对象的基本参数,引入参数化设计方法及标准,形成了一定的规范与标准的模块化设计方法;通过研究柔性化模块的形成机理,建立起重机的柔性化模块;最后根据参数化模型驱动的相关技术,进行柔性模块的参数化设计,形成满足客户需求的工程图样和产品设计的相关文档。
起重机设计系统技术路线如图1所示,其中包含总体功能框架制定、设计部件及参数确定、模型驱动机制、工程图优化调整及产品设计文档管理[3-5]。
图1 起重机设计系统技术路线
1.2 系统模块化设计
模块化设计是实现产品快速设计的重要策略,模块化设计的本质就是对整个系统功能进行分析,根据实现的功能的不同,对系统的功能进行模块划分,不同的模块实现不同的功能[6]。
根据企业的需求,本系统的开发主要包含3个大模块的开发,即系统管理模块、总体设计模块和数据库模块。本文主要研究的是起重机总体设计模块,其包含大车设计和小车设计,大车与小车的设计中又分别有机构设计和结构设计模块。
2 设计系统关键技术应用
2.1 二次开发技术
1) SolidWorks二次开发技术
桥式起重机三维模型是通过SolidWorks以草图建模的方式创建桥式起重机所有机构、结构的三维模型,再以草图装配的方式构建整机的三维装配图。本系统中SolidWorks二次开发是通过Visual Studio2010打开SolidWorks,读取XML文件获取各驱动尺寸,并进行尺寸驱动、模型装配和文件保存等。
启动SolidWorks并打开模型代码:
string Modelpath = @"D:大车主梁SLDASM";
SoliWorksTool.SoliWorksTool sw = new SoliWorksTool.SoliWorksTool(true);
sw.OpenSwDoc(Modelpath);
驱动草图尺寸代码:
sw.setDimensionValue("D1@草图",
double.Parse(Xe.Element("大车").Element("走台").Element("走台筋板间距").Value));
关闭并保存模型代码:
public void Close(string PartFullName, bool IsSave)
{
ModelDoc swModel = swApp.ActiveDoc;
if (IsSave)
{
swModel.EditRebuild3();
swModel.Save(true);
}
swApp.CloseDoc(PartFullName);
}
2) CAD二次开发技术
Visual Studio2010是通过AutoCAD ActiveX来和AutoCAD进行通信的[7]。AutoCAD的Acad Model Space数据库中有对图元对象进行操作的方法和属性,可以完成对样图中各类图元的创建和编辑。本文采用COM接口和.NET接口进行混合编程,使用COM控制AutoCAD的外部进程,并在进程中载入.NET组件。这样既可以实现进程间通信,又兼顾了.NET组件的广泛性。通过读取XML文件获取主梁的各参数尺寸,实现对图样中各尺寸标注及明细栏文本的驱动,并完成二维工程图的输出保存。列举主要代码如下:
if (ent is AcadDimension)
{
if (ent.TextOverride == "Y0")
{
ent .TextOverride = Y[0].ToString();
}
}//标注类图元驱动
if (ent is AcadText)
{
if (ent.TextString == "L")
{
ent .TextString = L.ToString();
}
}//文本类图元驱动
AcadBlockReference a= CAD.ActiveDocument.ModelSpace.InsertBlock(point01, Name, 1, 1, 1, 0, Password);
a.Explode();
a.Delete();//插入块
2.2 参数化建模技术
参数化设计实际上是一种基于拓扑学思想的计算机辅助设计技术,其本质是将研究对象的一些特征通过参数的方式进行表达,并通过参数对设计对象建立拓扑关系。本文主要是对模型进行参数化设计。
建立桥式起重机模型库是SolidWorks二次开发的基础支撑,任何一个零件模型都对整机的模型产生重要的影响。桥式起重机整机三维模型的建立首先需要对起重机的结构、机构的各个零件分别建立三维模型,然后将零件的模型进行装配,最终得到桥式起重机的整机三维模型,图2为三维模型库。
图2 三维模型库
三维模型库的建立需要将各个零件的所有尺寸都保存在提前定义好的SQL Server2008数据库中,当需要某个型号的零件时,只需要通过程序读取数据库中的数据,然后利用程序驱动模型库中对应的模型,就可以生成所需零件的三维模型。
3 设计实例验证
3.1 起重机选型及参数选择
进入数据库后,打开Visual Studio2010,生成解决方案,点击启动调试按钮,进入起重机设计系统主界面,如图3所示,选择文件下拉菜单中的新建桥式起重机设计。
图3 起重机设计系统主界面
新建起重机设计后,进入系统主参数输入界面,输入起重机型号,跨度起重量等基本参数和文件保存路径后,点击“保存并关闭”按钮进入到起重机的设计界面。
3.2 起重机模块化设计流程
主参数输入完成后,首先对桥式起重机小车进行设计,依次进入桥式起重机起升机构设计,小车运行机构选型,小车架结构设计。以起升机构设计为例,在起升机构的设计中,需要依次对钢丝绳、卷筒、电动机、减速器、制动器、浮动轴、制动联轴器、联轴器、吊钩组、上滑轮组进行设计选型,各个选型的参数都会在界面右侧显示。当起升机构选型设计完成之后点击“保存并关闭”按钮进入小车运行机构的设计选型。起升机构设计界面如图4所示。
图4 起升机构设计界面
其次对起重机大车进行设计,大车设计主要包括大车运行机构设计和桥架设计。以大车运行机构设计为例,如图5所示,在该界面的左侧是机构设计选型部分,中部是运行机构的示意图,右侧为结构选型的实时设计参数。该部分的机构设计主要是对车轮组、电动机、减速器、制动器、浮动轴、制动联轴器、高速联轴器、低速联轴器的设计。
图5 大车运行机构设计界面
最后对桥架主要承重部件进行强度、刚度以及稳定性校核,图6为桥架强度、刚度校核界面。
图6 桥架强度、刚度校核界面
完成以上设计后,输出的相关图样文件,起重机参数及计算书等自动保存在所设置的文件保存位置中。
4 结语
本文以Visual Studio2010为开发环境,运用参数化和模块化设计,开发的桥式起重机模块化设计系统,显著提高了桥式起重机的设计效率,能够完成桥式起重机整车以及大车、小车中各模块的设计出图,极大满足起重机企业的需求,提高了企业的竞争力。此外,随着对该设计系统的不断完善,该设计平台还可用于门式起重机、悬臂起重机等的设计,不断推进企业的信息化建设。