基于matlab的控制系统串联校正—相位超前校正问题实例

news2025/1/11 19:42:09

1.问题

        为了改进闭环系统性能,可以采用串联校正,这里用相位超前校正,即
Gc(S)=\frac{\tau s+1}{\alpha \tau s+1}
α 常取 0.07~0.2 ,选择适当的 α τ , 要使
\frac{1}{\tau }< \omega _{c}< \frac{1}{\alpha \tau }
针对新的开环传递函数 G ’ K (S)=Gc(S) × G(S) × H(S) ,画出开环 Bode 图,
观察不同的 α τ BODE 图的影响,使相位裕度 γ >40 ° ,以使闭环系统性能
大大提高,确定合适的 α τ

2.代码

% 定义G(s)和H(s)  
numG = 160;  
denG = [1, 1, 0.01]; % 转换为标准形式s^3 + 0s^2 + 0.01s  
G = tf(numG, denG);  
H = 0.1;  
s=tf("s")  ;
% 初始化alpha和tau的搜索范围  
alpha_range = 0.07:0.01:0.2; % 
tau_range = 0.01:0.01:1; 
  
% 初始化存储相位裕度的数组  
pm_alpha = zeros(size(alpha_range));  
pm_tau = zeros(size(tau_range));  
pm_matrix = zeros(length(alpha_range), length(tau_range));  
  
% 迭代搜索  
for i = 1:length(alpha_range)  
    for j = 1:length(tau_range)  
        % 假设相位超前校正为 (tau*s + 1) / (alpha*tau*s + 1)  
        comp = (tau_range(j)*s + 1) / (alpha_range(i)*tau_range(j)*s + 1);  
        GH = G * H * comp; % 闭环传递函数  
        [~, pm] = margin(GH); % 计算相位裕度  
        pm_matrix(i, j) = pm;  
    end  
    pm_alpha(i) = max(pm_matrix(i, :)); % 每个alpha下的最大相位裕度  
    [~, idx] = max(pm_matrix(i, :));  
    pm_tau(idx) = pm_matrix(i, idx); % 对应的tau下的相位裕度  
end  

%% 
% 绘制相位裕度随alpha变化的图  
figure; 
subplot(1,2,1)
plot(alpha_range, pm_alpha, 'b-o');  
xlabel('\alpha');  
ylabel('Phase Margin (deg)');  
title('相位裕度随alpha变化的图');  
grid on; 
  
% 绘制相位裕度随tau变化的图 
subplot(1,2,2) 
plot(tau_range, pm_tau, 'r-o');  
xlabel('\tau');  
ylabel('Phase Margin (deg) for Optimal \alpha');  
title('相位裕度随tau变化的图');  
grid on;  
  
%% 

  
% 确定最优值  
[max_pm_alpha, idx_alpha] = max(pm_alpha);  
optimal_alpha = alpha_range(idx_alpha);  
optimal_tau_idx = find(pm_matrix(idx_alpha, :) == max_pm_alpha); % 可能有多个tau对应相同的最大相位裕度  
optimal_tau = tau_range(optimal_tau_idx(1)); % 选择第一个tau值  
  
% 绘制最优alpha和tau下的Bode图  
comp_optimal = (optimal_tau*s + 1) / (optimal_alpha*optimal_tau*s + 1);  
GH_optimal = G * H * comp_optimal;  
figure;  
bode(GH_optimal, '-k');  
title(['最优alpha和tau下的Bode图 (\alpha = ', num2str(optimal_alpha), ', \tau = ', num2str(optimal_tau), ')']);  
grid on;  

[gm3, pm3, wcg3, wcp3] = margin(GH_optimal);   
% 幅值裕度(以分贝为单位)  
am_dB3 = 20*log10(1/gm3);  

3.运行结果

图1

图2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1886721.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

停车场车牌识别计费系统,用Python如何实现?

关注星标&#xff0c;每天学习Python新技能 前段时间练习过的一个小项目&#xff0c;今天再看看&#xff0c;记录一下~ 项目结构 说明&#xff1a; datefile文件夹&#xff1a;保存车辆信息表的xlsx文件 file文件夹&#xff1a;保存图片文件夹。ic_launcher.jpg是窗体的右上角…

Laravel swagger接口文档生成和管理

Laravel swagger接口文档生成和管理 接口开发随着时间推移接口会越来越多&#xff0c;随着多部门之间的协作越来越频繁, 维护成本越来越高, 文档的可维护性越来越差, 需要一个工具来管理这些接口的文档, 并能够充当mock server给调用方使用 这里推荐swagger生成和管理接口文档&…

Python入门 2024/7/2 While

目录 while循环的基础应用 循环输出十次&#xff1a;键盘敲烂&#xff0c;月入过万 计算1~100的和 用while循环练习猜数字 while循环的嵌套应用 打印九九乘法表 输出不换行的功能 while循环的基础应用 格式&#xff1a; while 条件&#xff1a; 条件满足时&#xff0c…

昇思25天学习打卡营第1天|yulang

今天主要了解了深度学习框架之昇思MindSpore的初学入门&#xff0c;没想到 ai学习入门如此简单&#xff0c;不愧是华为大手笔&#xff0c;提供的学习环境配置如此之高。这个平台有点类似百度飞桨&#xff0c;大大降低了AI开发门槛&#xff0c;使用户能够快速实现想要的模型&…

从零开始:如何设计一个现代化聊天系统

写在前面: 此博客内容已经同步到我的博客网站,如需要获得更优的阅读体验请前往https://mainjaylai.github.io/Blog/blog/system/chat-system 在当今数字化时代,聊天系统已成为我们日常生活和工作中不可或缺的一部分。从个人交流到团队协作,从客户服务到社交网络,聊天应用…

科技与水利的深度融合实践:揭秘智慧水利技术如何助力水利行业解决传统难题,推动水资源管理向精细化、智能化方向发展

本文关键词&#xff1a;智慧水利、智慧水利工程、智慧水利发展前景、智慧水利技术、智慧水利信息化系统、智慧水利解决方案、数字水利和智慧水利、数字水利工程、数字水利建设、数字水利概念、人水和协、智慧水库、智慧水库管理平台、智慧水库建设方案、智慧水库解决方案、智慧…

HR 如何用好人才测评系统?

HR 如何用好人才测评系统&#xff1f; 人才测评已经广泛应用在企业招聘、人才选拔&#xff0c;人才盘点&#xff0c;岗位晋升&#xff0c;绩效考评等领域&#xff0c;帮助HR提升人力资源管理效率&#xff0c;更好的发掘人才优势&#xff0c;在教育培训方面&#xff0c;人才测评…

我做了个C++算法学习网站,从语法到算法再到数据结构,全方位为算法竞赛小伙伴护航

哈喽&#xff0c;各位小伙伴大家好&#xff0c;我是大李。 最近半个月&#xff0c;我做了个《C算法宝典》并更新了40多篇教程&#xff0c;目前还在更新中&#xff0c;内容从语法到算法和数据结构&#xff0c;全方位为算法竞赛小伙伴护航。 温馨提示&#xff1a;如果你或你的朋…

prescan软件中导入路径文件txt/lpx

由于博主收到的是lpx格式的路径文件&#xff0c;因此&#xff0c;第一步 1.记事本打开 ctrla 全选 ctrlc 复制 2.新建一个excel 鼠标定位到第一行第一列的格子 ctrlv 复制 3.数据栏“分列”功能 4. (0.1递增的数列&#xff0c;纬度&#xff0c;经度&#xff0c;高程) 导入…

解决obsidian加粗字体显示不突出的问题

加粗字体显示不突出的原因&#xff1a;默认字体的加粗版本本来就不突出 解决方法&#xff1a;改成显示突出的类型Microsoft YaHei UI 【效果】 修改前&#xff1a;修改后&#xff1a; 其他方法&#xff1a; 修改css&#xff08;很麻烦&#xff0c;改半天也不一定奏效&#…

中国民间网络外交组织(CCND)

中国民间网络外交组织Chinese Civil Network Diplomacy简称(CCDN) 是由中国网民建立起来的一个网络外交组织&#xff0c;深度贯彻党的主张和网民意志的统一&#xff0c;为保护中国中华优秀传统文化&#xff0c;民族自信&#xff0c;国家安全&#xff0c;民族利益&#xff0c;社…

pandas数据分析(4)

修改DataFrame数据的最简单的方法是通过loc和iloc属性为某些元素赋值。 首先构造一组数据 通过标签或位置设置值 也可以一次修改多个值&#xff1a; 通过布尔索引设置数据 将所有来自China&#xff0c;或者年龄20以下的人名字设置为匿名&#xff1a; 通过替换值设置数据 如果…

【讨论C++继承】

讨论C继承 继承定义继承方式和访问限定符 基类和派生类的赋值转换继承中的作用域派生类的默认成员函数继承和友元继承和静态成员菱形继承虚拟继承 继承是面向对象程序设计中&#xff0c;使代码可以复用的重要手段&#xff0c;它允许程序员在保持原有类特性的基础上进行扩展。 继…

CVPR 最佳学生论文,一键启动「BioCLIP 生物分类的层次预测 Demo」,帮你快速识别生物种类

很多生物由于外形的相似程度较高&#xff0c;难以使用肉眼进行区分。美国俄亥俄州立大学、微软研究院、加州大学欧文分校、伦斯勒理工学院共同发布了「BioCLlP: A Vision Foundation Model for the Tree of Life」&#xff0c; 基于 TREEOFLIFE-10M 这样的大规模标记数据集&…

海参海胆数据集:探索现实世界水下图像增强的创新之旅(目标检测)

亲爱的读者们&#xff0c;您是否在寻找某个特定的数据集&#xff0c;用于研究或项目实践&#xff1f;欢迎您在评论区留言&#xff0c;或者通过公众号私信告诉我&#xff0c;您想要的数据集的类型主题。小编会竭尽全力为您寻找&#xff0c;并在找到后第一时间与您分享。 在当今…

【触想智能】工业平板电脑在新能源领域上的应用分析

工业平板电脑是一种具有高性能和稳定性的计算机设备&#xff0c;适用于在恶劣环境下进行数据采集、运营管理和现场操作。 随着新能源技术的快速发展&#xff0c;工业平板电脑不断地得到应用&#xff0c;并且已成为新能源领域中的重要工具之一。本文将从四个方面探讨工业平板电脑…

springboot项目jar包修改数据库配置运行时异常

一、背景 我将软件成功打好jar包了&#xff0c;到部署的时候发现jar包中数据库配置写的有问题&#xff0c;不想再重新打包了&#xff0c;打算直接修改配置文件&#xff0c;结果修改配置后&#xff0c;再通过java -jar运行时就报错了。 二、问题描述 本地项目是springBoot项目…

短视频预算表:成都柏煜文化传媒有限公司

短视频预算表&#xff1a;精打细算&#xff0c;打造高质量视觉盛宴 在数字时代&#xff0c;短视频以其独特的魅力迅速占领了互联网内容的半壁江山&#xff0c;成为品牌宣传、文化传播乃至个人表达的重要载体。然而&#xff0c;每一个成功的短视频背后&#xff0c;都离不开一份…

试用笔记之-汇通来电显示软件

首先汇通来电显示软件下载 http://www.htsoft.com.cn/download/httelephone.rar

武汉星起航:引领跨境电商风潮,铸就繁荣新篇章

在风起云涌的跨境电商领域&#xff0c;武汉星起航凭借其深厚的行业经验和创新的运营模式&#xff0c;自2017年起便开始在亚马逊平台上崭露头角。这家拥有多家亚马逊自营店铺的企业&#xff0c;不仅积累了大量的实战经验&#xff0c;更为合作伙伴提供了宝贵的市场洞察和运营指导…