1. 轴承转子动力学仿真实战
1.1 转子系统建模基础
转子动力学仿真的核心在于建立准确的运动方程。对于单盘转子系统,我们通常采用Jeffcott转子模型。这个模型将复杂的转子简化为一个刚性圆盘安装在无质量的弹性轴上,考虑转子的横向振动。其运动方程可以表示为:
Mẍ + Cẋ + Kx = F(t)
其中M是质量矩阵,C是阻尼矩阵(包括结构阻尼和旋转阻尼),K是刚度矩阵,F(t)是外部激励力(如不平衡力)。
在实际MATLAB实现中,我们通常使用状态空间法来求解这个二阶微分方程。下面是一个典型的实现代码:
matlab复制function dx = rotor_system(t, x, M, C, K, F)
% 状态空间方程转换
A = [zeros(size(M)), eye(size(M));
-M\K, -M\C];
B = [zeros(size(M)); M\eye(size(M))];
dx = A * x + B * F(t);
end
重要提示:在定义质量矩阵M时,要特别注意单位一致性。常见错误是将kg和N混用,导致计算结果出现数量级错误。
1.2 临界转速计算技巧
临界转速是转子动力学中的关键参数,计算时需要考虑陀螺效应。对于多盘转子系统,临界转速计算可以分为以下步骤:
- 建立有限元模型,离散化转子系统
- 组装全局质量矩阵和刚度矩阵
- 求解特征值问题:(K - ω²M)Φ = 0
MATLAB实现示例:
matlab复制% 计算临界转速
[V,D] = eig(K,M); % 求解广义特征值问题
wn = sqrt(diag(D)); % 固有频率(rad/s)
critical_speed = wn/(2*pi)*60; % 转换为rpm
在实际工程中,我们还需要考虑轴承刚度的影响。滚动轴承的刚度通常是非线性的,可以采用Hertz接触理论来计算:
matlab复制% 滚动轴承刚度计算
Q = 5000; % 轴承载荷(N)
delta = (Q/(1.0e7))^(2/3); % 接触变形(m)
K_bearing = 1.5e10 * delta^(1/2); % 轴承刚度(N/m)
