预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2004年2月汕头大学学报(自然科学版)第19卷第1期 Feb.2004JournalofShantouUniversity(NaturalScience)Vol.19No.1 高速柔性转子动平衡中VC++与MATLAB 混合编程的应用 肖敏1,丁康2 (1.汕头大学机械电子工程系,汕头515063;2.西安交通大学机械工程学院,西安710049) 摘要:文章介绍了利用VC++与MATALB对高速柔性转子动平衡进行混合编程计算的方 法,与以往应用的老程序相比较,该程序在数据结构、数据处理和面向对象的应用上存在较 大的优越性.应用结果表明:用VC++与MATLAB的混合编程能够满足高速柔性转子动平 衡计算的各种要求. 关键词:柔性转子;动平衡;VC++;MATLAB 中图分类号:TP391文献标识码:A文章编号:1001-4217(2004)01-0075-06 0引言 转子不平衡是旋转机械的主要激振源,它将给机械带来振动、噪声和部件破坏等恶 劣影响[1,2],有可能造成巨大的经济损失及安全事故.为解决这些问题,人们经过长期不 懈的努力,研究出一整套平衡理论及多种平衡方法. 自影响系数法及最小二乘影响系数平衡法[3,4]被引入柔性转子动平衡实践以来,因其 易于应用,很快在实际中得到广泛的采用,而且成为发展的主流.尤其是计算机的发展, 更促进了该方法的普及.而以往的“高速柔性转子动平衡”软件多数是以BASIC语言或 C语言为主体开发的,其软件本身具有以下的缺点:由BASIC语言编译的程序结构较差, 不利于后续的改进;代码移植性差,产生大量重复性代码,不利于系统维护和系统运行 速度的提高;执行程序的运行速度和算术运算速度慢,对浮点数的精度处理能力差.而由 C语言编译的程序虽然弥补了以上的一些缺点,但其面向对象的程序设计能力较差.本 文利用了VC++与MATLAB的混合编程来解决上述问题. 1理论依据 1.1影响系数法 假设转子—轴承系统是线性弹性系统,在进行平衡时已选定N个平衡转速,K个平 衡面和M个测振点.如果各平衡面上都未加试重,设原始不平衡转子在第n个平衡转速 (n) 转动时,测得第m个点的初始振动为vm0;当在第k个平衡面上加试重Qk后,在第n个 (n)(n) 平衡转速测得第m个点的振动为vmk.于是影响系数Amk作为施加在各平衡面上的单位 收稿日期:2003-09-26 作者简介:肖敏(1978~),女,湖北孝感人,硕士研究生. 汕头大学学报(自然科学版)第19卷 76 试重对测振点所引起的振动变化可由下式求得: (n)(n) (n)vmk-vAm0 Amk=(1) Qk (n) 求出的所有Amk构成了影响系数矩阵A,将矩阵A按照列组成向量: A=(A1,A2,⋯,AK)(2) 则Ak(k=1,2,⋯,K)为第k个平衡面的影响系数向量. 根据振动理论可知,用影响系数法对转子进行动平衡时,其平衡方程为: V=V0+AP(3) 式中,V—残余振动矢量,V0—原始振动矢量,A—影响系数矩阵,P—平衡质量分布 矢量. 1.2最小二乘影响系数平衡法 在对转子平衡操作时,当平衡面数k等于测点数m和所选取的平衡转速n的乘积即 k=m×n时,A为方阵,由式(3)可以得到理论上使残余振动为零的平衡质量分布.当时 k<m×n,方程(1)变成矛盾方程组,Goodman[3]提出最小二乘法来求解: *T-1*T P=-(AA)AV0(4) 其中A*T是的共轭转置矩阵. 由式(4)可以寻求一组校正质量使得各测振点在各平衡转速下的残余振动值的平方 和为最小. 2VC++与MATLAB混合编程的应用 VC++不仅保持了C语言的功能强、目标代码效率高、可移植性好的特点,而且还提 供了面向对象的程序设计能力,功能非常强大,但对于一些比较复杂的工程计算程序,编 写起来比较困难,增大了劳动量,甚至影响执行效率与程序运行的速度.MATLAB语言 是一种高级矩阵语言,它在工程计算方面具有无可比拟的优异性能,对于一些复杂的运 算有直接的函数可以调用,提高了编程的效率.综合上述2种语言的优点,高速柔性转 子动平衡计算的程序主体框图如图1. 图1程序总体框架 第1期肖敏等:高速柔性转子动平衡中++与混合编程的应用 VCMATLAB77 2.1混合编程中的参数设置 本软件系统使用的操作系统为Windows2000,开发工具为MicrosoftVC++6.0和 MATLAB6.5.利用VC++6.0的集成环境,通过调用MATLABC++数学函数库来进 行本应用程序的开发. 2.1.1环境参数设置 在VC++集成环境中,打开已经编译好的VC++项目,选取菜单Tools→Options→ Directories属性页,在其中的Showdire