纯滞后系统的大林控制算法

news2024/12/25 22:20:49

大林控制算法原理

早在1968年,美国IBM公司的大林(Dahlin)就提出了一种不同于常规PID控制规律的新型算法,即大林算法。该算法的最大特点是将期望的闭环响应设计成一阶惯性加纯延迟,然后反过来得到能满足这种闭环响应的控制器。

对于图1所示的单回路控制系统,Gc(z)为数字控制器,Gp(z)为被控对象,则闭环系统传递函数为:

图1 单回路控制系统框图

如果能事先设定系统的闭环响应,则可得控制器。大林指出,通常的期望闭环响应是一阶惯性加纯延迟形式,其延迟时间等于对象的纯延迟时间

式中,为闭环系统的时间常数,由此而得到的控制律称为大林算法。

仿真实例

被控对象为:

采样时间为0.5s,期望的闭环响应设计为:

位置指令为yd=1.0,M =1时为采用大林控制算法,M=2时为采用普通PID控制算法。可见,采用大林算法可取得很好的控制效果,其阶跃响应结果如图2和图3所示。

图2 大林算法阶跃响应(M=1)

图3 普通PID算法阶跃响应(M=2)

仿真程序:

%Delay Control with Dalin Algorithm

clear all;

close all;

ts=0.5;

%Plant

sys1=tf([1],[0.4,1],inputdelay',0.76);

dsys1=c2d(sys1,ts,'zoh');

[num1,den1]=tfdata(dsys1,'v);

%ldeal closed loop

sys2=tf([1],[0.15,1],'inputdelay',0.76);

dsys2=c2d(sys2,ts,'zoh');

%Design Dalin controller

dsys=1/dsys1*dsys2/(1-dsys2);

[num,den]=tfdata(dsys,'v');

u_1=0.0;u_2=0.0;u_3=0.0;u_4=0.0;u_5=0.0;y_1=0.0;

error_1=0.0;error_2=0.0;error_3=0.0;ei=0;

for k=1:1:50

time(k)=k*ts;

yd(k)=1.0; %Tracing Step Signal

y(k)=-den1(2)*y_1+num1(2)*u_2+num1(3)*u_3;

error(k)-yd(k)-y(k);

M=2;

if M==1 %Using Dalin Method

u(k)=(num(1)*error(k)+num(2)*error_1+num(3)*error_2+num(4)*error_3...

-den(3)*u_1-den(4)*u_2-den(5)*u_3-den(6)*u_4-den(7)*u_5)/den(2);

elseif M==2 %Using PID Method

ei=eiterror(k)*ts;

u(k)=1.0*error(k)+0.10*(error(k)-error_1)Y/ts+0.50*ei;

end

%----------Return of dalin parameters------------

u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k);y_1=y(k);

error_3=error_2;error_2=error_1;error_1=error(k);

end

figure(1);

plot(time,yd,'r',time,y,'k:'linewidth',2);xlabel('tim(s)');ylabel('yd,y');

legend('ideal position signal','position tracking');

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

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

相关文章

Linux服务器之间设置共享目录

前言有时候我们需要在两台linux服务器之间共享资源,例如在服务器A上面部署了一个大文件上传程序,但是需要将文件上传到服务器B的某个目录下面,因为上传大文件,需要先将文件所有分块单独上传到服务器B,然后在服务器B上面…

数字文档管理解决财务部门哪些常见问题?

如今,会计部门实施文档管理和自动化工作流程系统至关重要。这些组织要么缺乏数字系统,要么没有充分利用其文档管理解决方案的潜力。 数字文档管理解决财务部门哪些常见问题? 1.错过提前付款折扣:供应商经常为提前付款提供折扣&am…

虹科教您 | 浅谈现代GNSS模拟中的软件定义架构

随着技术的迭代更新,GPS/GNSS模拟技术也在不断发展进步。在过去,想要进行GNSS仿真基本上只有一种选择:使用固定式或分配式的硬件进行模拟。而如今,带来颠覆性创新的新型软件定义架构正在迅速取代传统的定制架构,这种独…

EvilnoVNC:一款针对组织安全与安全意识培训的网络钓鱼平台

关于EvilnoVNC EvilnoVNC是一款针对组织安全与安全意识培训的网络钓鱼平台,该工具开箱即用,可以帮助各大企业组织对内部员工进行安全意识培训,而且也可以帮助广大研究人员测试和研究网络钓鱼防御技术。 和其他网络钓鱼技术不同的不同之处在…

高并发秒杀的 常见的7种方案

高并发场景在现场的日常工作中很常见,特别是在互联网公司中,这篇文章就来通过秒杀商品来模拟高并发的场景。 本文环境: SpringBoot 2.5.7 MySQL 8.0 X MybatisPlus Swagger2.9.2 模拟工具: Jmeter 模拟场景: 减库…

2.5G网卡调试记录

2.5G网卡调试记录 下载驱动 去https://www.realtek.com/zh-tw/downloads这个网站下载2.5G USB网卡对应的驱动 编译驱动 Makefile中需要进入到内核目录/lib/modules/4.19.232/build中进行内核编译,但是我们的build文件链接已经失效了,并且源文件也删除…

力扣sql简单篇练习(八)

力扣sql简单篇练习(八) 1 修复表中的名字 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 考察的是字符串函数的用法 SELECT user_id,concat(upper(left(name,1)),lower(substr(name,2))) name FROM Users ORDER BY user_id asc1.3 运行截图 2 订单…

Qt TCP (小型聊天窗口)

实现的具体功能为: 服务器端需要主动监听,可以主动断开连接,可以发送信息给客户端客户端需要输入主机,端口号,需要主动连接,可以主动断开连接,可以发送信息给服务器端服务器端和客户端都能看到聊…

【C++算法图解专栏】一篇文章带你掌握差分算法

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📣专栏定位:为 0 基础刚入门数据结构与算法的小伙伴提供详细的讲解,也欢迎大佬们一起交流~ 📚专栏地址:https://blog.csdn.net/Newin…

hadoop.fs.FileSystem.get导致OOM的原因和解决方案

问题描述 在调用HDFS获取文件系统的get接口时,指定用户可能会导致OOM问题,示例代码如下: FileSystem fileSystem FileSystem.get(uri, conf, "hadoopuser");问题溯源 该方法源码: 在有缓存的情况下将从Cache中取&a…

Android 11 SystemUI(状态/导航栏)-状态栏下拉时图标的隐藏与通知面板的半透黑色背景

概述 本文续自:Android 11 的状态栏的隐藏 PS 本文虽然同属于SystemUI, 但目前并 没有 打算整理成专橍或撰写一个系列的想法. 仅仅为了记录一些过程, 留下那些容易被遗忘的点滴. 开始下拉时状态栏图标被隐藏 状态橍的图标在用户开始触摸(ACTION_DOWN)后, 会开始展开, 显示扩展…

答题小程序题目批量导入模板以及题库文本格式规范

近期又接到了一个知识竞赛的需求,在开发答题小程序的过程中,遇到了不少难题,但是都一一克服了。凭借多年的答题小程序开发经验,我总结了一下题目批量导入题库文本格式规范。一、答题小程序题目批量导入模板小程序【答题小博士】二…

《数字经济全景白皮书》后疫情时代数字化驱动增长洞察之赛道篇

易观分析:《数字经济全景白皮书》浓缩了易观分析对于数字经济各行业经验和数据的积累,并结合数字时代企业的实际业务和未来面临的挑战,以及数字技术的创新突破等因素,最终从数字经济发展大势以及各领域案例入手,帮助企…

面试之 Python 框架 Flask、Django、DRF

Django、flask、tornado 框架的比较 ★★★★★ Django:大而全的框架。它的内部组件比较多,如 ORM、Admin、中间件、Form、ModelForm、Session、缓存、信号、CSRF等,功能也都很完善。 flask:微型框架,内部组件就比较少…

JavaScript中的事件对象、事件对象的属性

一、什么是事件对象​ 1)、 事件对象 就是保存着事件相关信息的对象。当事件发生时,会自动产生事件对象(不需要new),事件对象中包含着:事件源(发生事件的dom元素),点击是…

全网最详细的mybatis plus 条件构造器queryWrapper学习,比如and(),eq(),or(),like()等方法以及分页操作

文章目录1. 引言2. 结构关系3. 环境配置3.1 引入jar包3.2 创建数据源3.2 创建User实体类3.4 创建UserMapper类3.5 创建UserService类4. 操作演示5. 注意事项1. 引言 mybatis大家都有使用过,既面向对象又灵活可配。不友好的地方是,会随着使用出现大量xml…

一篇文章带你读懂AVL树

目录 AVL树节点的定义 AVL树的插入 AVL树的旋转 1. 新节点插入较高左子树的左侧---左左:右单旋 2.新节点插入较高右子树的右侧---右右:左单旋 3. 新节点插入较高左子树的右侧---左右:先左单旋再右单旋 4. 新节点插入较高右子树的左侧-…

人工智能自然语言处理—PageRank算法和TextRank算法详解

人工智能自然语言处理—PageRank算法和TextRank算法详解 一、PageRank算法 PageRank算法最初被用作互联网页面重要性的计算方法。它由佩奇和布林于1996年提出,并被用于谷歌搜索引擎的页面排名。事实上,PageRank可以在任何有向图上定义,然后…

公司企业如何设计微信小程序?

​很多公司企业在制作小程序的时候都会考虑一个事情,就是如何设计微信小程序。有些公司企业希望把小程序设计得非常炫酷、抓人眼球。那么问题是:公司企业微信小程序的设计是否做得越酷炫、越抓人眼球就越好呢? 答案:非也&#xf…

基于SIFT的图像Matlab拼接教程

前言图像拼接技术,将普通图像或视频图像进行无缝拼接,得到超宽视角甚至360度的全景图,这样就可以用普通数码相机实现场面宏大的景物拍摄。利用计算机进行匹配,将多幅具有重叠关系的图像拼合成为一幅具有更大视野范围的图像&#x…