Python 齿轮动力学建模及信号分析(纽马克算法)
文章目录
- 前言
- 一、齿轮动力学建模理论基础
- 二、齿轮动力学建模
- 1.主要代码
- 2. 算法输出
- 总结
前言
齿轮作为工业界常用的传动机构,其结构复杂、类型繁多,在分析振动特性前需要了解相应的机理特征,因此本文主要介绍齿轮的动力建模原理和振动特点,可作为齿轮分析入门参考。
一、齿轮动力学建模理论基础
振动,本质上是力对物体刚度激励的结果,齿轮振动源于齿轮啮合力的激励。为什么会产生啮合力?因为齿轮在运动过程中,参与啮合的轮齿数是交替变换的,比如一秒是1对齿啮合,后一秒是2对齿啮合,这导致齿轮啮合过程中的力交替变化。无论怎么变,齿轮动力学建模时,可根据牛顿第二定律将这一过程看成弹簧,如下图。其中,q为振动位移,K为刚度,C为阻尼,M为质量,T为外部激励源,动力方程为:Mq’’ + Cq’ +Kq = T
二、齿轮动力学建模
1.主要代码
这里齿轮箱建模根据上述动力学方程构建,并采用纽马克算法进行求解,其他的算法或可采用龙格库塔求解。
本文基于matlab源码,可根据源码重构成相应的python代码,因此这里提供matlab代码供参考,如有疑问,请留言。
function [x,v,a]=newmarkb(M,K,C,N,P,x0,v0,a0,dt,RecordLength)
m1=1.8;I11=0.0043;I12=2.7*10^(-4);m2=2.5;I21=0.0027;I22=0.0045;
M=diag([m1,m1,I11,I12,m2,m2,I21,I22]);
kx1=10^8;kx2=kx1;ky1=kx1;ky2=kx1;
ko1=10^5;ko2=ko1;
K_=[kx1 0 0 0 0 0 0 00 ky1 0 0 0 0 0 00 0 ko1 -ko1 0 0 0 00 0 -ko1 ko1 0 0 0 00 0 0 0 kx2 0 0 00 0 0 0 0 ky2 0 00 0 0 0 0 0 -ko2 -ko20 0 0 0 0 0 -ko2 ko2];
afa=pi/9;rb12=28.19/1000;rb21=56.38/1000;
s1=sin(afa);s2=cos(afa);s3=(sin(afa))^2;s4=(cos(afa))^2;s5=sin(afa)*cos(afa);s6=rb12*cos(afa);
s7=rb12*sin(afa);s8=rb21*cos(afa);s9=rb21*sin(afa);s10=rb12^2;s11=rb21^2;s12=rb12*rb21;
C=0.05*M+10^(-6)*K_ ;
kgt=10^8;%*square(2*pi*20*tt,60)+1.8*10^8;
kt=kgt*[s3 s5 0 s7 -s3 -s5 0 s9;s5 s4 0 s6 -s5 -s4 0 s8;0 0 0 0 0 0 0 0;s7 s6 0 s10 -s7 -s6 0 s12;-s3 -s5 0 -s7 s3 s5 0 -s9;-s5 -s4 0 -s6 s5 s4 0 s8;0 0 0 0 0 0 0 0;s9 s8 0 s12 -s9 s8 0 s11] ;
Kt=K_+kt;
K=kt;
N=8;
P=[0;0;10;0;0;0;0;20];
x0=[0;0;0;0;0;0;0;0];
v0=[0;0;0;0;0;0;0;0];
a0=M\(P-Kt*x0-C*v0);
dt=1/1000;
RecordLength=5000;
[x,v,a]=newmarkb(M,K,C,N,P,x0,v0,a0,dt,RecordLength);
"""
2. 算法输出
纽马克算法因此鲁棒性高,因此被选用此次齿轮动力学求解的算法。程序输出主要是各个自由度振动位移,振动速度和振动加速度,举个例子:你假设齿轮只沿着垂直方向上下振动,则模型输出的是一对啮合齿轮箱在垂直方向的振动位移、振动速度和振动加速度。
健康状况下的齿轮振动加速度是一段正弦信号的叠加,信号的特征频率为齿轮的啮合频率及其倍频。
总结
这里的动力学建模只能作为齿轮振动特征的定性分析,实际中的振动情况远比这里复杂,至于怎么个复杂程度,下一篇写写齿轮振动的信号模型,让大家有个更直观的了解。
PS:欢迎各位交流,后续有啥想实现的信号处理功能,请在下方评论区留言,或者关注公众号:不说话上代码
Python 齿轮动力学建模及信号分析(纽马克算法)相关推荐
- 2023年美国大学生数学建模时间、分析及算法代码
美国大学生数学建模--干货 2023年美赛比赛日期和时间 赛题类型 算法代码 美赛常见数模问题 分类问题 判别分析: 聚类分析: 神经网络分类: 优化问题 线性规划: 非线性规划: 整数规划: 动态规 ...
- 人体肌肉力量分析系统设计:基于MATLAB的肌肉力量分析和仿真,包括肌肉动力学建模、肌肉极限力量评估和运动控制
以下是基于MATLAB的人体肌肉力量分析系统设计的详细内容,包括肌肉动力学建模.肌肉极限力量评估和运动控制等原理详解,以及相应的代码实现和运行结果. 肌肉动力学建模 肌肉动力学建模是肌肉力量分析系统的 ...
- Python 齿轮振动信号模型构建
文章目录 前言 一.齿轮振动信号模型 二.仿真代码 1.Demo 2.模型输出 总结 前言 前面的文章已从齿轮动力学机理上揭示了齿轮振动特性,为更直观的表述齿轮振动信号特征,现从齿轮振动信号模型角度来 ...
- python主题建模_在PYTHON中进行主题模型LDA分析
原文链接:在PYTHON中进行主题模型LDA分析tecdat.cn 主题建模是一种在大量文档中查找抽象主题的艺术方法.一种作为监督无的机器学习方法,主题模型不容易评估,因为没有标记的"基础 ...
- 基于python的数据建模与分析案例_基于案例详解Python数据分析与机器学习
课程概述: 使用数据领域最主流语言Python及其分析与建模库作为核心武器.对于机器学习经典算法给出完整的原理推导并基于实例进行讲解,基于案例演示如何应用机器学习算法解决实际问题. 课程特色: 通俗易 ...
- 计算机算法音乐专业,音乐信号分析算法的乐理简说(非音乐专业的乐理)
前言 这篇文章不是讲乐理知识的,那是音乐制作人,编曲人员所需要钻研的学问,不过你要有兴趣也可以看看专业的乐理知识. 这里仅仅是说在音乐信号分析的项目中,我们需要知道的一些参数的意义. 在诸多信号处理, ...
- 系统动力学建模工具_多体动力学:ANSYS Motion 2020R2
ANSYS Motion:基于先进的多体动力学求解器的第三代工程解决方案.该解决方案使人们能够通过对整个机械系统进行分析来快速准确分析刚性体和柔性体及准确评估物理事件.ANSYS Motion使用四个 ...
- 《Python机器学习——预测分析核心算法》——2.2 分类问题:用声纳发现未爆炸的水雷...
本节书摘来异步社区<Python机器学习--预测分析核心算法>一书中的第2章,第2.2节,作者:[美]Michael Bowles(鲍尔斯),更多章节内容可以访问云栖社区"异步社 ...
- 【八步拿捏】Aaqus有限元分析及减震复材建模计算/力学分析等多个SCI案例复现(附源码解析)...
研究背景 复合材料由于其性能优于普通材料,所以复合材料的应用日益广泛,而有限元仿真是研究材料力学性能的重要手段. ABAQUS作为现阶段应用最广泛的有限元仿真模拟软件,在模拟材料建模和分析复杂的材料力 ...
- P1_M4_L4 Longitudinal Vehicle Model(车辆纵向动力学建模)
Content 1. Longitudinal Vehicle Model(车辆纵向动力学建模) 1.1 纵向动力学模型受力分析 1.2 纵向动力学模型简化 2. 纵向主动力建模 2.1 纵向主动力模 ...
最新文章
- 信息系统项目管理师算职称吗
- python——面向对象篇之异常和反射
- windows2003服务器版不能播放声音
- qt布局嵌套_QDockWidget嵌套布局详解-实现Visual Studio布局
- javascript 模块化机制
- 理解First-Class Functions
- 详解apply的用处
- dae怎么用草图大师打开,教你su模型导入lumion的方法
- QEMU,Dynamips,IOL区别
- 【Arduino】VC0706(中星微串口摄像头)
- 对有序表进行折半查找的非递归算法
- oracle查看视图属于哪个用户,oracle查询视图归属于哪个用户
- 深度测评:RAKsmart美国站群服务器怎么样
- postman测试Excel文件导入导出功能
- 从0到1Python数据科学之旅
- 电口以太网物理层一致性测试原理与过程
- Hibernate方言
- 阿里2013年双十一准备中的技术突破与亮点
- 10. 大数据:人工智能的基石
- 【flink 报错】Heartbeat of TaskManager is timed out