王娜娜 王守信 贾俊豪 高瑞红
(1.太原科技大学机械工程学院;2.太原重型机械集团有限公司)
基于SolidWorks的浓缩机驱动轴参数化设计*
王娜娜1王守信1贾俊豪2高瑞红1
(1.太原科技大学机械工程学院;2.太原重型机械集团有限公司)
以中心传动高效浓缩机驱动轴为研究对象,运用Visual Basic 6.0语言对SolidWorks进行二次开发,阐述了驱动轴二次开发流程及关键技术,实现了三维参数化设计。该设计通过输入相应的尺寸参数,可快速生成驱动轴的系列化模型,不仅缩短了设计周期,而且提高了浓缩机的设计效率。
浓缩机驱动轴 参数化设计 SolidWorks 二次开发
浓缩机是一种连续工作的浆流浓缩和澄清设备,主要由沉淀池和矿浆刮集机构组成,常用于湿式选矿作业中精矿浓缩和尾矿脱水,在煤炭、钢铁、化工、建材、水源和污水处理等领域也得到了广泛应用[1-2]。目前,中心传动高效浓缩机已有直径为35,38,40,45,48,53m等系列产品。根据客户的不同需求,通常都需要在原有成型产品的基础上,对浓缩机驱动轴尺寸进行重新设计,造成时间和精力的浪费。而运用参数化设计理念,通过VB编程调用SolidWorks自带的API函数,用户只需在VB程序界面中输入相应的尺寸参数,即可自动完成参数化建模,从而实现浓缩机驱动轴的二次开发[3]。
SolidWorks作为一种全参数化特征造型软件,本身含有大量的API函数,并且支持VB环境下创建的客户程序对函数的直接访问[4]。VB是一种面向对象的编程语言,可作为SolidWorks二次开发的工具。
VB编程是SolidWorks二次开发的关键部分,一方面能够方便用户开发出满足特定需求的人机交互界面,通过输入或选择不同的参数可以快速访问Access数据库;另一方面通过编写程序可直接调用SolidWorks的API函数,最终实现参数化建模[5]。用户只需在VB上进行操作,就可以驱动SolidWorks完成相应的指令。
2.1 结构分析
根据驱动轴上零件的安装、定位以及轴的制造加工工艺等方面的要求,确定合理的轴的结构形式和尺寸。驱动轴在机构中处于竖直状态,有三段工作部分,其上端与减速器联接,由减速器输出轴的尺寸可确定轴内孔尺寸,由推力调心滚子轴承可确定外径尺寸。轴中部通过键与小齿轮联接,根据所传递的转矩选择键的型号并进行校核,轴下端通过圆锥滚子轴承与端盖联接。
2.2 建模流程
通过计算校核确定驱动轴的具体尺寸(见表1),并建立Microsoft Access参数数据库。在面向对象的开发环境VB 6.0中,设计一个人机交互界面(见图1),完成设计参数的选择或者输入。以SolidWorks软件为支撑平台,通过在程序中调用SolidWorks API函数,最终实现驱动轴的参数化建模,整个建模步骤见图2。
表1φ35 m浓缩机驱动轴尺寸 mm
变量D1D2D3D4D5D6D7H1H2L8数值38030726724726724080190247337变量L1L2L3L4L5L6L7B1B2数值427100456480743204563
图1 人机交互界面
3.1 宏录制
SolidWorks的宏功能是一种简单的二次开发接口,宏录制和Visual Basic 6.0有着相同或相似的函数名,借助宏录制可以很方便地进行自主编程。在编程过程中,使用宏录制功能录制下所需要的API函数,了解函数中各个常数的变化对实体建模的影响,进而确定其中的关键常数,并将关键常数用变量代替,从而建立驱动轴的参数化模型,φ35 m浓缩机驱动轴参数化模型见图3。
图2 参数化建模步骤
图3 φ35 m浓缩机驱动轴参数化模型
3.2 特征程序代码
驱动轴的主要结构特征为轴和键槽。使用宏录制,首先生成轴和键槽的原始程序,然后找出其中的特征参数并用变量代替,最终生成它们的目标程序。
轴段部分程序代码如下:
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
' 插入草图
Part.CreateCircleByRadius2 0, 0, 0, D1 / 2
Part.ClearSelection
' 画直径为D1的圆
Set myFeature = Part.FeatureManager.FeatureExtrusion2(True, False, False, 0, 0, L1, 0.01, False, False, False, False, 0.017 453 292 519 94, 0.017 453 292 519 94, False, False, False, False, 1, 1, 1, 0, 0, False)
' 将直径为D1的圆拉伸成长度为L1的轴
boolstatus = Part.Extension.SelectByID2(“”, “FACE”, 0, 0, L1, False, 0, Nothing, 0)
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
Part.CreateCircleByRadius2 0, 0, 0, D2 / 2
' 以新拉伸出L1的端面为基准面,画直径为D2的圆
……
以此类推,生成驱动轴的各个轴段。
键槽是轴传递动力的关键部分,其程序代码如下:
Set SkLine = Part.SketchManager.CreateLine(B2 / 2, L1 + L2 + (L3 - L8) / 2, 0, B2 / 2, L1 + L2 + (L3 +L8) / 2, 0)
Part.ClearSelection2 True
Set SkArc = Part.SketchManager.CreateArc(0, L1 + L2 + (L3 - L8) / 2, 0, B2 / 2, L1 + L2 + (L3 - L8) / 2, 0, -B2 / 2, L1 + L2 + (L3 - L8) / 2, 0, -1)
Part.ClearSelection2 True
Set SkArc = Part.SketchManager.CreateArc(0, L1 + L2 + (L3 + L8) / 2, 0, B2 / 2, L1 + L2 + (L3 + L8) / 2, 0, -B2 / 2, L1 + L2 + (L3 + L8) / 2, 0, 1)
Part.ClearSelection2 True
Set SkLine = Part.SketchManager.CreateLine(-B2 / 2, L1 + L2 + (L3 - L8) / 2, 0, -B2 / 2, L1 + L2 + (L3 + L8) / 2, 0)
' 画键槽的二维图
Set myFeature = Part.FeatureManager.FeatureCut(True, False, False, 0, 0, D3 - H2, 0.02, False, False, False, False, 0.017 453 292 519 94, 0.017 453 292 519 94, False, False, False, False, 0, 1, 1)
' 将草图切除拉伸生成键槽
驱动轴是浓缩机传递动力的一个重要零件,通过Visual Basic 6.0对SolidWorks进行二次开发,可快速生成驱动轴的三维参数化模型。在中心传动高效浓缩机的设计中,不仅避免了对驱动轴的重复设计,而且缩短了设计周期,提高了设计效率。
[1] 王德才,王守信,高志鹏.我国高效浓缩机技术综述及展望[J].中国新技术新产品,2011(1):20.
[2] 陈庆来.我国中心传动浓缩机技术现状分析[J].煤炭工程,2007(12):107-109.
[3] 胡朝斌,夏 琳,黄 鹏.基于VB和SolidWorks的液压缸参数化设计[J].煤矿机械,2014(12):254-256.
[4] 王宗彦,吴淑芳,秦慧斌,等.SolidWorks机械产品高级开发技术[M].北京:北京理工大学出版社,2005.
[5] 龚沛曾,陆慰民,杨志强.Visual Basic程序设计教程:6.0版[M].北京:高等教育出版社,2004.
*山西省科技攻关项目(编号:20130313006-1)。
2015-02-16)
王娜娜(1986—),女,硕士研究生,030024 山西省太原市万柏林区窊流路66号。