自动控制——过阻尼、欠阻尼、临界阻尼及无阻尼
自动控制——过阻尼、欠阻尼、临界阻尼及无阻尼
引言
在自动控制系统和振动分析中,系统的阻尼特性对于系统的动态响应至关重要。阻尼决定了系统在受到扰动或输入信号后,如何恢复到稳定状态。本文将详细介绍过阻尼(overdamped)、欠阻尼(underdamped)、临界阻尼(critically damped)和无阻尼(undamped)的定义、公式,并通过Python代码演示不同阻尼条件下系统的响应。
系统的阻尼特性
考虑一个典型的二阶线性系统,其传递函数可以表示为:
H ( s ) = ω n 2 s 2 + 2 ζ ω n s + ω n 2 H(s) = \frac{\omega_n^2}{s^2 + 2\zeta\omega_n s + \omega_n^2} H(s)=s2+2ζωns+ωn2ωn2
其中:
- ω n \omega_n ωn是系统的自然频率。
- ζ \zeta ζ是阻尼比,定义为 ζ = c 2 m k \zeta = \frac{c}{2\sqrt{mk}} ζ=2mkc,其中 c c c是阻尼系数, m m m是质量, k k k是弹簧常数。
根据阻尼比 ζ \zeta ζ的不同,系统的动态响应分为以下几种类型:
1. 无阻尼(Undamped)
当 ζ = 0 \zeta = 0 ζ=0时,系统没有阻尼力的影响,其响应为纯粹的正弦波动,永不衰减。无阻尼系统在自然频率 ω n \omega_n ωn下振荡。
x ( t ) = A cos ( ω n t ) + B sin ( ω n t ) x(t) = A \cos(\omega_n t) + B \sin(\omega_n t) x(t)=Acos(ωnt)+Bsin(ωnt)
2. 欠阻尼(Underdamped)
当 0 < ζ < 1 0 < \zeta < 1 0<ζ<1时,系统处于欠阻尼状态。系统响应在频率 ω d = ω n 1 − ζ 2 \omega_d = \omega_n \sqrt{1-\zeta^2} ωd=ωn1−ζ2下振荡,并随着时间指数衰减。
x ( t ) = e − ζ ω n t ( A cos ( ω d t ) + B sin ( ω d t ) ) x(t) = e^{-\zeta\omega_n t} \left( A \cos(\omega_d t) + B \sin(\omega_d t) \right) x(t)=e−ζωnt(Acos(ωdt)+Bsin(ωdt))
欠阻尼系统的特征是系统会振荡几次,然后逐渐趋于平衡。
3. 临界阻尼(Critically Damped)
当 ζ = 1 \zeta = 1 ζ=1时,系统处于临界阻尼状态。此时系统响应速度最快,不会出现振荡,但也不会像过阻尼那样慢慢回到平衡状态。
x ( t ) = ( A + B t ) e − ω n t x(t) = (A + Bt) e^{-\omega_n t} x(t)=(A+Bt)e−ωnt
临界阻尼是最理想的阻尼状态,它能确保系统迅速回到平衡而不出现振荡。
4. 过阻尼(Overdamped)
当 ζ > 1 \zeta > 1 ζ>1时,系统处于过阻尼状态。系统响应不再振荡,但相比于临界阻尼系统,它恢复到平衡所需的时间更长。
x ( t ) = A e ( λ 1 t ) + B e ( λ 2 t ) x(t) = A e^{(\lambda_1 t)} + B e^{(\lambda_2 t)} x(t)=Ae(λ1t)+Be(λ2t)
其中, λ 1 \lambda_1 λ1和 λ 2 \lambda_2 λ2是系统的特征根,且 λ 1 , λ 2 < 0 \lambda_1, \lambda_2 < 0 λ1,λ2<0。
Python代码实现
下面的Python代码演示了一个简单的二阶系统在不同阻尼条件下的时间响应。
import numpy as np
import matplotlib.pyplot as plt
from scipy.signal import lti, step# 定义系统的自然频率和时间范围
omega_n = 5.0 # 自然频率
t = np.linspace(0, 5, 500)# 定义不同阻尼比的系统
systems = {'Undamped (ζ=0)': lti([omega_n**2], [1, 0, omega_n**2]),'Underdamped (ζ=0.5)': lti([omega_n**2], [1, 2*0.5*omega_n, omega_n**2]),'Critically Damped (ζ=1)': lti([omega_n**2], [1, 2*1.0*omega_n, omega_n**2]),'Overdamped (ζ=2)': lti([omega_n**2], [1, 2*2.0*omega_n, omega_n**2])
}# 绘制每个系统的阶跃响应
plt.figure(figsize=(10, 6))
for label, system in systems.items():t, y = step(system, T=t)plt.plot(t, y, label=label)# 图表设置
plt.title('不同阻尼条件下的系统阶跃响应')
plt.xlabel('时间 [s]')
plt.ylabel('响应')
plt.grid(True)
plt.legend()
plt.show()
代码解释
lti:scipy.signal.lti函数用于定义线性时不变(LTI)系统。step:step函数用于计算系统的阶跃响应。systems: 定义了四种不同阻尼比 ζ \zeta ζ的系统:无阻尼、欠阻尼、临界阻尼和过阻尼。

结论
通过上述分析和代码演示,我们可以看到阻尼比 ζ \zeta ζ对系统动态响应的影响:
- 无阻尼系统( ζ = 0 \zeta = 0 ζ=0)会永远振荡,不会衰减。
- 欠阻尼系统( 0 < ζ < 1 0 < \zeta < 1 0<ζ<1)会振荡几次,随着时间的推移逐渐平稳。
- 临界阻尼系统( ζ = 1 \zeta = 1 ζ=1)是理想的,它在不振荡的情况下快速回到平衡。
- 过阻尼系统( ζ > 1 \zeta > 1 ζ>1)不会振荡,但比临界阻尼系统更慢地回到平衡状态。
理解和设计适当的阻尼对于工程应用至关重要,能够有效避免系统的过冲、延迟或持续振荡。在实际应用中,通常会设计系统使其接近临界阻尼状态,以确保快速而稳定的响应。
相关文章:
自动控制——过阻尼、欠阻尼、临界阻尼及无阻尼
自动控制——过阻尼、欠阻尼、临界阻尼及无阻尼 引言 在自动控制系统和振动分析中,系统的阻尼特性对于系统的动态响应至关重要。阻尼决定了系统在受到扰动或输入信号后,如何恢复到稳定状态。本文将详细介绍过阻尼(overdamped)、…...
从AlphaGo到AlphaPong:AI乒乓球机器人将如何改变乒乓球竞技?
在人工智能领域,谷歌DeepMind的AlphaGo曾以其超凡的围棋能力震惊了世界。而如今,DeepMind又将其技术延伸到了乒乓球领域,推出了乒乓球机器人,被网友戏称为“AlphaPong”。这一机器人使用ABB的IRB1100机械手臂,能够与普…...
荒原之梦:考研期间可以玩游戏吗?
有不少同学,特别是男同学,在考研之前,会有玩游戏的习惯,那么,对于考研的同学来说,就会产生这样一个疑问。在考研备考期间,我还可以玩游戏吗? 其实关于这个问题的答案是因人而异的&am…...
Hive SQL ——窗口函数源码阅读
前言 使用Starrocks引擎中的窗口函数 row_number() over( )对10亿的数据集进行去重操作,BE内存溢出问题频发(忘记当时指定的BE内存上限是多少了.....),此时才意识到,开窗操作,如果使用 不当,反而…...
用python的Manim 创建大括号
Brace 是 Manim 中用于创建大括号(curly braces)的一个对象类。它有几个子类,自定义了不同的功能。下面是每个类的简要解释: 1. ArcBrace 功能: 创建一个环绕弧线的括号。适用于需要围绕弧形线条的场景。用法: 通常用于图形中有…...
白骑士的Matlab教学附加篇 5.2 代码规范与最佳实践
系列目录 上一篇:白骑士的Matlab教学附加篇 5.1 MATLAB开发工具 在 MATLAB 编程中,遵循良好的代码规范和最佳实践有助于提高代码的可读性、可维护性和可重用性。无论是变量命名、注释风格,还是代码格式化,合理的规…...
Javaweb--SpringBoot
1.SpringBoot入门 简化Spring开发的一个框架,Spring Boot 旨在帮助开发者快速搭建 Spring 框架。 整个Spring的一个合集,可以简化配置 2.微服务 (1)微服务就是一种架构风格 (2)微服务就是把一个项目拆…...
【数据结构】算法的时间复杂度与空间复杂度
计算机考研408-数据结构笔记本之——第一章 绪论 1.2 算法和算法评价 1.2.2 算法效率的度量 算法效率的度量是通过时间复杂度和空间复杂度来描述的。 1.空间复杂度 算法的空间复杂度S(n)定义为该算法所需的存储空间,它是问题规模n的函数,记为 S(n) …...
PyCharm环境python开发上位机
目录 前言: 一、pycharm新建工程 1、打开 pycharm软件,新建工程 二、配置UI界面 1、新建UI界面 1)创建 Main Window 2)拖动控件到 MainWindow 中 3)设置信号与槽 4)ctrlS 保存ui文件 2、将ui文件转…...
ROS 2 参数使用
ROS 2 参数使用 介绍 ROS 2 (Robot Operating System 2) 是一个为机器人开发提供支持的开源框架。它继承了 ROS 1 的优点,并且在架构上做了许多改进以支持分布式系统、实时性、安全性等要求。ROS 2 中的参数是用于配置节点行为的关键部分,允许我们动态…...
QT的Model-View实现大批量数据展示
一、完整源代码 1.项目结构 2.各文件代码展示 define.h #pragma once #include <QVector>//学生信息 typedef struct _STUDENT {QString name; //姓名int score1; //语文成绩int score2; //数学成绩int score3; //外语成绩_STUDENT(){name ""…...
2024年8月7日(mysql主从 )
回顾 主服务器 [rootmaster_mysql ~]# yum -y install rsync [rootmaster_mysql ~]# tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar [rootmaster_mysql ~]# tar -xf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz [rootmaster_mysql ~]# cp -r mysql-8.0.33-linux-glibc2.…...
接口/自动化测试 面试集合
1. apache和nginx的区别? Nginx相对Apache的优点: 轻量级,同样起web服务,比apache占用更少的内存及资源; 抗并发,nginx处理请求是异步非阻塞的,支持更多的并发连接,而apache则是阻塞型的,在高 并发下ngi…...
菜鸡勇闯第136场双周赛
菜鸡鼓足了勇气报名了力扣双周赛(后来复盘才知道双周赛更难一点,我真是头铁。。) 没想到还拿了个竞赛名次哈哈哈哈哈还在前50%,小力它真的,我哭死 为什么我本科被高数老师忽悠,去打了两年数模o(≧口≦)o 每…...
趋动科技陈飞:从小模型到大模型,AI时代下的数据中心建设
自AI大模型横空出世,不断推动着AI从学术界到产业界向大众破圈,新的时代正在来临。11月15-16日,由CDCC主办的“2023第11届数据中心标准大会”在北京国家会议中心盛大开幕。 本届大会的主题围绕“AI时代 重塑未来”,聚焦数据中心领…...
yolo v8 + flask部署到云服务器,以及问题记录
环境安装 1、运行项目报错:no python application found, check your startup logs for errors 在云服务器pytorch版本安装错了,安装了GPU版本,需要安装CPU版本 # CPU only 使用下面这段代码避免出现第二个错误 pip install torch2.3.1 to…...
【科研必备插件】easyscholar如何使文章显示期刊影响因子与分区等级
简要介绍 EasyScholar 是一个微软 Edge 浏览器的扩展程序,可以显示会议、期刊等级。可支持在各大论文搜索网站,显示各种期刊、会议等级排名 要想你的知网页面如下图所示,快来获取安装,快速科研有方法 插件安装教程 ①打开浏览器…...
UE5 UrlEncode转换
调用接口时用到了 UFUNCTION(BlueprintPure, Category "FuncLib", meta (Keywords "URL1"))static FString StringToURLEncode(const FString& str1);FString UBasicFuncLib::StringToURLEncode(const FString& str1){return FGenericPlatformH…...
【QML】Qt.rgba()的正确使用方法
1. 问题 设置颜色 color: Qt.rgba(65,105,225,255) ,应该是蓝色,却显示白色。 2. 正确方法 //正确代码 color: Qt.rgba(65/255, 105/255, 225/255, 255/255)...
centos7.9 docker安装
1、不要通过yum直接安装 具体原因: CentOS 6 因内核太旧,即使支持安装 docker,但会有各种问题,不建议安装CentOS 7 的 extras 源虽然可以安装 docker,但包比较旧,建议从官方源或镜像源站点下载安装 docke…...
【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)
要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况,可以通过以下几种方式模拟或触发: 1. 增加CPU负载 运行大量计算密集型任务,例如: 使用多线程循环执行复杂计算(如数学运算、加密解密等)。运行图…...
python执行测试用例,allure报乱码且未成功生成报告
allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...
免费PDF转图片工具
免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
HubSpot推出与ChatGPT的深度集成引发兴奋与担忧
上周三,HubSpot宣布已构建与ChatGPT的深度集成,这一消息在HubSpot用户和营销技术观察者中引发了极大的兴奋,但同时也存在一些关于数据安全的担忧。 许多网络声音声称,这对SaaS应用程序和人工智能而言是一场范式转变。 但向任何技…...
云安全与网络安全:核心区别与协同作用解析
在数字化转型的浪潮中,云安全与网络安全作为信息安全的两大支柱,常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异,并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全:聚焦于保…...
6.9-QT模拟计算器
源码: 头文件: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QMouseEvent>QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widget(QWidget *parent nullptr);…...
Vue 3 + WebSocket 实战:公司通知实时推送功能详解
📢 Vue 3 WebSocket 实战:公司通知实时推送功能详解 📌 收藏 点赞 关注,项目中要用到推送功能时就不怕找不到了! 实时通知是企业系统中常见的功能,比如:管理员发布通知后,所有用户…...
EasyRTC音视频实时通话功能在WebRTC与智能硬件整合中的应用与优势
一、WebRTC与智能硬件整合趋势 随着物联网和实时通信需求的爆发式增长,WebRTC作为开源实时通信技术,为浏览器与移动应用提供免插件的音视频通信能力,在智能硬件领域的融合应用已成必然趋势。智能硬件不再局限于单一功能,对实时…...
中科院1区顶刊|IF14+:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点
中科院1区顶刊|IF14:多组学MR联合单细胞时空分析,锁定心血管代谢疾病的免疫治疗新靶点 当下,免疫与代谢性疾病的关联研究已成为生命科学领域的前沿热点。随着研究的深入,我们愈发清晰地认识到免疫系统与代谢系统之间存在着极为复…...
