APP下载

L4-1800M3八杆压力机参数化设计可视化系统研究

2018-01-24陈启升别永森徐友珍祁全新

锻压装备与制造技术 2017年6期
关键词:压力机控件对话框

陈启升,别永森,徐友珍,祁全新

(山东恒宇重工机械有限公司,山东 高密 261500)

针对传统设计方法的弊端,本文利用Visua1C++编程工具开发出一套能够实现八杆压力机参数化设计的软件,利用编程语言编写可视化界面程序,使设计者在修改时只需修改可视化界面中的相关参数的值即可,其他部分由计算机按照编程给定的设计要求快速准确地得到计算结果,自动完成产品的设计,使用户操作起来更加直观便捷,增强了八杆压力机参数化设计的可操作性。

1 系统基本模块结构

本文关于八杆压力机的参数化设计软件是基于Visual C++6.0编程工具进行开发的。它相比于传统设计方法更加直观,更加简单实用,并且能够根据需要随时修改机构参数的值[1]。利用该软件对八杆压力机进行设计时只需要按照要求将已知的数据在相应的编辑框中输入,点击未知杆的计算按钮,即可得到相应参数的值。该软件还附上了八杆压力机机构的简化模型,使用户能够直观了解各参数与八杆压力机机构的对应关系。最后可以通过机构的运动仿真,观察压力机的运动过程。如图1所示为八杆机械式压力机参数化设计可视化系统的功能示意图。

该软件采用的是模块式结构,主要分为参数输入模块、参数计算模块、模型检验模块和运动仿真模块。各模块的具体功能介绍如下:

图1 八杆机构参数化设计可视化系统功能示意图

(1)参数输入模块:从产品设计方面考虑,可将机构的参数分为已知参数和未知参数。已知参数是根据产品需求及设计经验预先确定的,在该软件参数输入模块输入的即是产品设计中的已知参数,这些参数可以根据现有压力机的尺寸参数作为参考来预先确定。在此模块可以实现曲柄长度、连杆夹角及部分连杆长度等参数的修改和输入。

(2)参数计算模块:该模块输出的是产品设计中的未知参数,它是依据已知参数与未知参数之间添加的方程式或尺寸关系表达式计算得来的。输入已知的杆长及角度后,依据杆长之间的数学关系表达式可以计算出剩下的杆的长度。

(3)模型检验模块:当机构的所有参数均确定了以后,将所有参数的数据在界面中显示出来,方便设计者检验现有参数的机构是否满足曲柄存在条件、机构的动力学性能条件及机构的其他约束条件等。

(4)运动仿真模块:根据前面对八杆机构的运动学分析以及各参数之间的数学关系分析的基础上,对机构进行了位置分析,当结构中的参数均已确定的情况下,根据其机构中各部件之间的几何关系,可以将机构中各铰接点在任意时刻的位置变化规律表示出来,在该界面中,将各点的位置变化用动画的形式显示出来,实现机构的运动仿真,使机构的运动过程直观展现出来。

2 可视化界面设计

可视化界面是实现人机交流的媒介[2,3]。在可视化界面的开发中一定要注意软件界面的易用性,界面设计要尽量简单化,即使计算机操作能力不强的用户也能够很快学会使用,并要具有明确的导向性。在界面中应该添加“上一步”、“下一步”、“退出”等按钮作为提示信息给用户起到导向作用,使用户能够根据这些提示信息在各页面之间进行任意跳转。

2.1 可视化界面设计过程

该软件采用对话框形式作为人机交互界面,控件则是用户界面的主要组成部分[4],在对话框上添加一些方便用户输入、修改以及完成其他操作的控件,用户直接点击这些控件即可完成相应的操作。本文开发的可视化界面由三个界面组成:参数输入与参数计算界面,数据展示界面,运动仿真界面。

如图2所示为八杆压力机传动机构计算系统参数输入与计算模块的用户界面。在参数输入界面中输入已知参数的值,在计算界面选择要计算的杆,即可完成计算过程,得到正确的计算结果。由于该界面设计把计算各个杆长的不同情况下需要输入的参数都放在了一起,因此也出现了一个弊端,就是参数输入界面内列出的各参数必须全部输入一个值,不能有空,否则就不能正常计算,因此即使是要计算的参数也要在参数输入界面输入一个任意的值,这个值对参数计算结果没有影响,可以任意输入但是不能为空。

图2 八杆可视化计算系统主界面

下面先简单介绍创建图2所示的用户界面的操作方法。

(1)创建对话框模板如果想在程序中创建一个新的对话框,要通过插入一个对话框资源来完成。在VC++开发环境中选择“插入”菜单下的“资源”菜单命令,在此时弹出的对话框中选择Dialog资源类型,然后单击“新建”按钮即可创建一个只包含“确定”按钮和“取消”按钮的对话框模板[5],如图3所示,这两个按钮可以移动、修改或删除,由于本设计界面中不需要这两个按钮,因此直接删除。

图3 对话框模板

(2)添加控件

在VC++的开发环境中还提供了设计界面所需要的基本控件工具栏,在创建完对话框模板后,根据需要在提供的基本控件工具栏中选择所需要添加的控件,再将此控件拖动至对话框模板中的相应位置上,松开鼠标按键即可完成控件的添加。相同类型的控件的添加可通过复制、粘贴的方式来完成。控件添加完成后,利用菜单栏中的“布局”菜单合理布置控件,使各控件位置对齐、大小统一。

(3)给界面对象连接变量

控件添加完成后要设置控件的属性,在属性对话框中设置控件的ID并更改控件的标题。每一个控件都有一个ID标志值,它是控件的对象,每一个对象连接一个变量,对控件的操作在源程序中是通过对与之相连接的变量的操作来完成的[6]。

(4)添加代码

没有添加代码的对话框完全不能执行任何操作,添加代码就是给每个控件按钮映射一个消息处理函数,应用程序通过按钮接收到信息后就执行相应的消息处理函数。在各个计算按钮的消息处理函数中编写各个参数的计算程序代码,按下计算按钮后就会开始执行其与之对应的计算程序来完成参数计算。如图4所示为计算杆长L3的部分程序代码。

(5)测试并保存对话框

对话框创建完成后,在运行程序对话框之前,要在开发环境中对设计的软件功能进行测试,通过“布局”菜单中的“测试”命令可以在设计阶段检测对话框的运行效果,输入相应的已知参数后检查计算结果,检测对话框满足设计要求后即可对该对话框界面进行保存,然后才能在应用程序中运行所创建的对话框。

按照上述操作即可完成参数输入和计算界面的设计,在图2所示界面中还加入了八杆机构图形示例,展示了八杆机构结构简图。在界面右下角设置了“下一步”“退出”按钮,用户可以选择在该界面直接退出,也可以点击“下一步”进入数据展示界面,如图5所示。该界面展示了八杆机构的所有参数数据,包括曲柄长度、各杆长度及行程,使设计人员对这些参数的数值能够一目了然,方便设计人员去检验现有模型是否满足机构所有的约束条件及用户设计要求。

图4 计算杆长L3的部分程序代码

图5 数据展示界面

图6 运动仿真界面

点击图5所示界面的“下一步”即可进入到八杆压力机的运动仿真界面,如图6所示。在该界面中实现了在曲柄活动范围内八杆压力机整个工作过程的动态显示,可以更加直观地观察八杆压力机各个机构在每个时刻的运动状态。点击运动仿真界面中的“显示”按钮即可显示八杆机构运动简图,点击“旋转”按钮,八杆压力机的整个运动循环过程就动态地显示出来,实现机构的运动仿真。“旋转”按钮旁边还设有“反向”选择按钮,选择“反向”按钮机构就会向相反的方向旋转运动。若想观察机构某个特定位置的运动情况,可以点击“停止”按钮,这时机构的运动就会暂停,通过机构运动的动画展示还可观察到滑块在上死点和下死点两个极限位置的运动情况。在界面中还设有“实际行程”按钮,在机构的运动过程中可以通过该按钮来实时显示滑块在每个时刻的位移,最终得到所设计的八杆压力机的实际最大行程。

2.2 可视化计算系统应用实例

本文开发出八杆压力机的参数化设计界面后,就可以利用该界面对八杆压力机进行参数化设计,设计出不同行程、不同尺寸规格的八杆压力机。由于压力机的结构形式相同,为了方便厂家生产,减少制造成本,新的压力机只是在原有压力机的基础上改变部分构件的尺寸来满足其设计要求,因此对八杆压力机进行设计时,只需要根据设计要求对个别尺寸进行设计计算,其他参数值可参考已有压力机的相应参数的值作为已知常量在界面中输入。

本文在L4-1800M3型18000kN闭式四点八杆压力机的基础上设计一个行程为900mm的八杆压力机。假定通过改变l2的杆长,来满足八杆压力机的行程要求,所以在设计过程中杆l2的长度为待设计的参数值,其他尺寸参数均参考L4-1800M3型八杆压力机的原始尺寸来确定,通过八杆压力机参数化计算系统,计算出要想得到行程为900mm的压力机所需要的杆l2的尺寸值。

L4-1800M3型18000kN闭式四点八杆机械式压力机的原始数据为l1=840mm,l2=900mm,l3=861mm,l4=941.13mm,l5=635.5mm,l6=500mm,l7=1150mm,R=200mm,X=1150mm,Y=332mm,摇杆角度∠BAC=151°,三角架顶角∠EDF=45°,上死点角度 θ=30°,压力机行程S=750mm。

依据已有八杆压力机的原始数据在参数输入界面中输入各参数的值:l1=840mm,l3=861mm,l4=941.13mm,l5=635.5mm,l6=500mm,l7=1150mm,l8=200mm,X=1150mm,Y=332mm,∠BAC=151°,∠EDF=45°,θ=30°,然后输入压力机所要满足的设计行程S=900mm,虽然杆 为待计算的杆,但由于在参数输入界面中,各参数后面的编辑框不能为空,否则会出现错误提示,因此在l2的输入框中输入任意一个数即可,不会对计算结果产生影响,在此输入0。

参数输入完成后,在计算界面中点击“计算L2”按钮,计算结果就会显示在界面中,如图7所示。利用该系统计算出的l2的数值为548.55mm,点击“下一步”进入数据展示界面,点击“显示”可以看到所设计的压力机的所有构件的尺寸参数,继续点击“下一步”进入压力机的运动仿真界面,在该界面中点击“显示”“旋转”,压力机模型在曲柄的带动下开始运动,点击“反向”,压力机模型会向相反的方向旋转,在机构的运动过程中还可以通过“实际行程”观察滑块在每个时刻的位移,最终得到所设计的压力机的实际仿真行程S=900.08mm,与设计目标S=900mm基本一致,因此验证了该八杆压力机参数化计算系统的正确性与实用性,为八杆压力机的设计提供了一个有力的工具。

图7 可视化计算系统应用实例

3 结束语

基于Visual C++编程工具开发了八杆压力机参数化设计及运动仿真可视化系统,完成了可视化界面的设计,在界面中既可实现参数的输入、修改与计算,又实现了八杆压力机机构的运动仿真,使用户能够方便进行操作并可直观地观察八杆机构模型的运动情况,大大方便了压力机设计。

[1]刘彩霞.基于面向对象技术的起重机参数化设计系统研究[D].大连:大连理工大学,2003.

[2]徐 晔.浅析软件界面的人机交互设计[J].计算机与信息技术,2009,11:72-73.

[3]S.A.Al-Hamed,A.A.Al-Janobi.A program for predicting tractor performance in Visual C++[J].Computers and Electronics in A-griculture,2001:312.

[4]Anonymous.Research and Markets:This Book Is The Latest Edition Of One Of The Bestselling Of All Books On The C++Language And Visual C++[J].M2 Presswire,2008.

[5]张兰芳.基于Visual C++开发的并联六自由度平台测控系统[D].杭州:浙江大学,2002.

[6]黄维通.Visual C++面向对象与可视化程序设计[M].北京:清华大学出版社,2003:63-65.

猜你喜欢

压力机控件对话框
基于.net的用户定义验证控件的应用分析
压力机多连杆机构优化设计的PressMachineX软件
正常恢复虚拟机
Bootlace Worms’Secret etc.
What Is Beauty?
关于.net控件数组的探讨
一种小型精密伺服电子压力机设计研究
基于隐式串联流体传动缸的高效节能压力机
八杆压力机机构的动力学研究
浅谈VB的通用对话框《CommonDialog》控件的使用