计控实验五-达林算法仿真

合集下载

达林算法实验报告

达林算法实验报告

课程名称计算及控制技术 指导教师 实验时间 姓名: 班级: 学号: 成绩:实验五 基于达林算法的控制系统设计一、实验目的:1掌握达林算法数字控制器的设计方法。

2掌握达林算法设计的控制器产生振铃现象的原因。

3 掌握消除振铃现象的方法。

二、实验内容:已知某过程对象的传递函数为:期望的闭环系统时间常数 ,采样周期 。

要求:1采用达林算法设计数字控制器;2 在simulink 环境下,搭建控制系统模型,进行实验仿真; 3判断有无振铃现象,若有则修改控制器消除之,仿真并分析系统在单位阶跃响应下的输出结果; 三、 实验结果与分析1 达林算法设计数字控制器16.03)(5.0+=-s es G ss T 25.00=s T 5.0=被控对象为一阶惯性环节,则广义对象脉冲传递函数,闭环系统脉冲函数和数字调节器脉冲传递函数分别如下:()111111111TT Ts s N TT e Ke e G z Z Kz s T s e z τ-------⎡⎤--==⎢⎥+⎣⎦-()()()111111T T TssNT T e z Y z ee z Z z R z sT s ez ττττφ-------⎛⎫- ⎪⎡⎤-⎝⎭===⎢⎥+⎣⎦-()1111111z 111T T T T T T TT T T N e e D z K e e z ez τττ---------⎛⎫⎛⎫--⎪ ⎪⎝⎭⎝⎭⎡⎤⎛⎫⎛⎫---- ⎪ ⎪⎢⎥⎝⎭⎝⎭⎣⎦=由题意可得:0.5τ= 3K = 10.6T = 00.25T T τ== 0.5T = 1N =带入上述()D z 可得:()()()()()0.50.510.250.60.50.50.51110.60.250.25113111e e z D z ee z e z-----------=⎡⎤----⎢⎥⎣⎦化简得:()220.86z 0.381.690.23 1.46zD z z z -=--2 基于达林算法的控制系统模型3 Matlab 仿真结果:4 判断有无振铃现象,若有则修改控制器消除之,仿真并分析系统在单位阶跃响应下的输出结果;由 ()()11111111T T T T u T TT T e e z z G z K e e z ττφφ------⎛⎫⎛⎫-- ⎪ ⎪⎝⎭⎝⎭==⎛⎫⎛⎫-- ⎪⎪⎝⎭⎝⎭求得极点T T z eτ-=恒大于零.所以该带纯滞后的一阶惯性系统环节组成的系统中,不存在振铃现象。

实验4 达林算法仿真

实验4 达林算法仿真

实验四达林算法仿真一、实验目的1.设计达林算法的Simulink仿真模型;2.用S函数实现达林算法;3.观察达林算法中的滞后时间常数和采样周期的选取对系统输出的影响。

二、实验内容被控对象:G( S )=2 4S+11.达林算法仿真模型达林算法的SIMULINK仿真模型如图4.1所示。

达林算法适用于一、二阶惯性加纯滞后环节对象,仿真模型仅对工业控制中常见的一阶惯性加纯滞后环节对象作仿真。

图 4.1达林算法仿真模型3.达林算法的S函数实现达林算法控制器的S函数程序darlincon.m清单如下:function[sys,x0,str,ts]=darlincon(t,x,u,flag,Ttao,T1,K,Tao,T)global umax k1 k2 k3 uk ek_1 Nswitch flag case0,sizes=simsizes;sizes.NumContStates=0;sizes.NumDiscStates=0;sizes.NumOutputs=1;sizes.NumInputs=1;sizes.DirFeedthrough=1;sizes.NumSampleTimes=1;sys=simsizes(sizes);str=[];ts=[T 0];umax=50;N=floor(Tao/T);uk=zeros(N+2,1);ek_1=0;k1=exp(-T/Ttao);k2=exp(-T/T1);k3=(1-k1)/K/(1-k2);case 3,ek=u; uk(1)=k3*(ek-k2*ek_1)+k1*uk(2)+(1-k1)*uk(N+2); if uk(1)>umaxuk(1)=umax;end1if uk(1)<-umax uk(1)=-umax; endek_1=ek;uk(2:N+2)=uk(1:N+1);sys=[uk(1)];case{1,2,4,9}sys=[];otherwiseerror(['Unhandledflag',num2str(flag)]); end3.参数设置及系统输出曲线程序中的斜体部分就是有关的达林算法实现所用的变量和语句。

达林算法实验报告

达林算法实验报告

一、实验目的1. 理解达林算法的基本原理和设计过程。

2. 掌握如何利用达林算法解决具有纯滞后特性的控制系统问题。

3. 分析达林算法在不同纯滞后时间下的控制效果,并验证理论分析的正确性。

二、实验原理在工业生产中,许多过程对象含有纯滞后特性,这会对自动控制系统的稳定性、动态性能和适应性产生不利影响。

当纯滞后时间与对象的惯性时间常数之比超过0.5时,常规的PID控制往往难以获得良好的控制性能。

达林算法(大林算法)是一种针对具有纯滞后特性的控制系统提出的特殊控制方法,可以有效解决这一问题。

达林算法的基本思想是:在控制器的设计中,采用一个相当于连续一阶惯性环节的传递函数来代替最少拍多项式,如果对象有纯滞后,则传递函数应包含有同样的纯滞后环节。

通过调整达林算法中的参数,可以实现对具有纯滞后特性的控制系统的有效控制。

三、实验仪器1. MATLAB 6.5软件一套2. 个人PC机一台四、实验步骤1. 建模与仿真(1)根据实验要求,构建具有纯滞后特性的被控对象模型。

(2)在MATLAB中编写代码,实现达林算法的控制器设计。

(3)设置不同的纯滞后时间,进行仿真实验。

2. 参数调整与优化(1)根据仿真结果,分析达林算法在不同纯滞后时间下的控制效果。

(2)调整达林算法中的参数,优化控制效果。

(3)记录参数调整过程及结果。

3. 结果分析与讨论(1)对比分析不同纯滞后时间下,达林算法的控制效果。

(2)分析参数调整对控制效果的影响。

(3)总结达林算法在解决具有纯滞后特性的控制系统问题中的应用。

五、实验结果与分析1. 仿真结果通过仿真实验,得到了不同纯滞后时间下,达林算法的控制效果。

结果表明,随着纯滞后时间的增加,系统的稳定性逐渐降低,动态性能变差,超调和持续振荡现象加剧。

2. 参数调整在实验过程中,对达林算法中的参数进行了调整。

通过调整参数,可以改善控制效果,降低超调,缩短调节时间,提高系统的稳定性。

3. 结果讨论实验结果表明,达林算法在解决具有纯滞后特性的控制系统问题中具有较好的应用效果。

《计算机控制技术》课程中控制算法仿真平台设计

《计算机控制技术》课程中控制算法仿真平台设计

《计算机控制技术》课程中控制算法仿真平台设计【摘要】本文基于MATLAB建立了《计算机控制技术》课程控制算法仿真平台,通过友好的人机交互界面,实现控制算法的选择、参数的设置、动态仿真以及算法改进前后的控制效果对比等。

将抽象的理论知识变成直观的感性认识,使学生能更直观、高效地理解和掌握所学内容,培养学习兴趣和能力,取得了良好的教学效果。

【关键词】控制;算法;仿真0 引言《计算机控制技术》是工业电气自动化、自动控制、计算机应用等专业的主要专业课程之一[1]。

具有实践性和综合性强、课程抽象、学习难度大等特点。

尤其是其中的控制算法,既是计算机控制系统的核心,也是整个计算机控制系统设计中的难点,并且由于控制算法数量多,理论性强,采用常规的讲授方法,学生不易理解,教学效果不是很理想。

基于此,本文以MATLAB为工具,通过编写M文件、构建SIMULINK框图对主要算法进行仿真实现,并通过GUI (图形用户界面)设计友好的人机交互界面,实现控制算法的选择、参数的设置、动态仿真以及不同算法的控制效果对比等。

在建模仿真的过程中将抽象的理论知识变成直观的感性认识,使学生可以更直观、高效地理解和掌握所学知识,培养学生的学习兴趣和能力,提高教学质量。

1 仿真平台规划MATLAB是目前应用最广泛的科学工程运算软件,内嵌的SIMULINK是MATLAB的重要组件之一,无需大量的程序代码,只需建立仿真框图即可实现对复杂系统的交互式动态建模、仿真以及综合分析,令繁琐的仿真实现过程变得清晰可见。

MATLAB的M文件工作方式,可以将MATLAB的语言代码全部写在一个文本文件——M文件中运行,用户还可以根据需要自编一些函数,方便程序的修改与维护,提高代码的可重用性。

MATLAB GUI是MATLAB的图形用户界面开发环境[2],使用它,用户无需了解图形实现的细节内容,便可以绘制复杂的图形以及设计出美观、方便的菜单化和控件式的人机交互界面。

计控实验3 大林算法

计控实验3 大林算法
TH
T
2、用MATLAB和Simulink仿真并检查输出结果是否符 合控制系统设计要求。
二、实验内容 2 S e 1、已知被控对象的传递函数 G ( s) s( s 1) ,若采样期 T=1s,用大林算法设计数字控制器D(Z),并用MATLAB 检验系统的性能。
HG(Z)
r(t) T R(Z) E(Z) × ○ D(Z) T H0(S) G(S)
实验三:大林算法
一、实验目的:
1、对应纯滞后的被控对象,应采用大林算法。 (1)大林算法的设计准则:对于一阶或二阶滞后系 统,设计数字控制器D(z),使整个闭环系统的滞后与 被控对象的滞后相同,消除滞后环节对系统稳定性的 s Ke 影响。 G( s ) 1 T 1s 一阶滞后系统可表示为: e s Gc (s) 1 THS 闭环系统的传递函数:
(二)Simulink的模块库
通用模块
连续模块 非连续模块 离散模块 接收模块
输入信号源
数学运算 端口与子系统
1.输入信号源模 块库(Sources)
主要有: Constant(常数) Step(阶跃信号) Ramp(线性信号) Sine Wave(正弦信号) Signal Generator(信 号发生器) From File(文件获取) From Workspace(矩阵 读数据) Clock(仿真时钟) In(输入模块)
1、启动MATLAB
下载软件或用光盘进行MATLAB的安装。
点击 图标 ,启动MATLAB,出现操作窗口:
操作界面分为以下几部分: (1)菜单 (2)工具栏 (3)工作空间窗口
(4)命令窗口 (5)历史命令窗口口
命令 窗口
历史 命令 窗口 开始按钮

大林算法实验报告

大林算法实验报告

实验4 大林算法工业设计和调试实验目的:1.认识和理解大林控制算法控制大时延系统的机理和效果。

2掌握实际控制系统的大林控制算法的设计、实现和调试方法及技术。

实验内容:1.测试系统开环阶跃响应求得被控对象的近似传递函数。

2.对被控对象近似传递函数进行等效离散化。

3.基于被控对象等效离散化模型设计大林控制算法,编写出实现程序,将其嵌入到实验软件中。

4.将设计的大林算法投入运行,并经过调试获得预期控制性能。

5.记下大林控制算法的控制效果。

实验原理及说明:大林算法是针对工业生产过程中含有纯滞后的被控对象所研究的控制算法,即在调节时间允许的情况下,要求系统没有超调量或只有在允许范围中的很小的超调量。

大林算法的设计目标是设计一个数字调节器,使整个闭环系统所期望的传递函数相当于一个延迟环节和一个惯性环节的串联,并期望整个闭环系统的纯滞后时间和被控对象的滞后时间相同,并且,纯滞后时间与采样周期是整数倍关系。

实验中采样周期为1秒,k=0.15,t=22秒,t1=55秒。

.大林算法中涉及的被调对象的参数:对象是一阶惯性滞后环节,<1>对象的放大倍数Kp:Kp=△PV/△OP 阶跃比,这是开环的静态参数,与PID的放大倍数K不是一回事;<2>对象的时间常数T:干扰阶跃引起PV变化,从变化起到稳定值约2/3处的时间值,不包括滞后时间;<3>滞后时间T2:干扰阶跃开始到PV开始变化这一段滞后时间,包括:纯滞后时间及容量过渡滞后时间;2. 整个系统的闭环传递函数相当于是一阶惯性环节, 这是大林算法的期望环节:<1> 输入R(t)是回路的设定值SP;输出Y(t)是回路的PV值;<2> 此一阶惯性环节的放大倍数为1,即稳定时PV=SP; 最终偏差接近零;<3>此期望环节的纯滞后时间应等于被调节对象的纯滞后时间;<4>此期望环节的闭环时间常数:这是待定的期望参数,为不引起回路的小幅振荡,这个时间值应选用大于等于被调对象的时间常数,3. 这些参数如果不精确,将引起大林算法的不稳定性,导致调节质量变坏;。

算法仿真实验报告

算法仿真实验报告

一、实验目的本次实验旨在通过仿真实验,验证某算法在实际应用中的性能和效果,并对算法的优化进行初步探讨。

通过实验,深入了解算法的原理,分析其优缺点,为实际工程应用提供参考。

二、实验环境1. 操作系统:Windows 102. 编程语言:Python3.83. 仿真软件:MATLAB 2019b4. 硬件环境:****************************,16GB RAM三、实验内容1. 算法原理及描述2. 仿真实验设计3. 实验结果分析4. 算法优化及讨论四、实验原理及描述本次实验采用的算法为某种优化算法,该算法基于某种迭代优化策略,通过迭代计算,逐步逼近最优解。

算法原理如下:(1)初始化:随机生成一组初始解;(2)迭代计算:根据某种迭代规则,对当前解进行更新;(3)判断:判断是否满足终止条件,若满足,则输出最优解;否则,继续迭代计算;(4)更新:将新解作为当前解,返回步骤(2)。

五、仿真实验设计1. 实验数据:选取一组具有代表性的测试数据,包括输入数据和期望输出数据;2. 实验步骤:(1)导入实验数据;(2)调用算法进行仿真实验;(3)记录实验结果;(4)分析实验结果。

六、实验结果分析1. 实验结果展示(1)输入数据:[1, 2, 3, 4, 5](2)期望输出:[1, 2, 3, 4, 5](3)算法输出:[1, 2, 3, 4, 5](4)误差分析:误差为0,说明算法输出与期望输出一致。

2. 性能分析(1)算法运行时间:0.001s(2)迭代次数:100次(3)算法收敛速度:较快3. 优缺点分析(1)优点:算法简单易实现,收敛速度快;(2)缺点:对初始解敏感,容易陷入局部最优。

七、算法优化及讨论1. 优化策略(1)改进初始解:采用某种方法生成更好的初始解,提高算法的鲁棒性;(2)调整迭代规则:优化迭代规则,使算法在迭代过程中更加稳定;(3)引入多种优化算法:结合多种优化算法,提高算法的适应性和全局搜索能力。

DALIN 算法用于温度控制实验

DALIN 算法用于温度控制实验

实验四 复杂规律数字控制器的设计----DALIN 算法用于温度控制实验预习报告一、实验目的:1.理解具有纯滞后的温度控制系统的数学模型和工作特点;2.理解DALIN (大林)算法工作原理并掌握控制器参数对系统性能的影响;3.能够运用MA TLAB/Simulink 软件对控制系统进行正确建模并对模块进行正确的参数设置; 4.掌握计算机控制仿真结果的分析方法。

二、实验工具:MA TLAB 软件(6.1以上版本)。

三、实验内容:1.实验原理图1 单回路温度控制系统图1中:D (z )为数字调节器传递函数;A/D 环节近似为一采样开关;0()H s 为D/A 环节传递函数,采用零阶保持器;0()G s 为温度被控对象函数,此环节可近似认为是一个纯滞后一阶惯性环节,所以系统是一个具有零阶保持器的单变量调节系统。

根据大林算法的控制原理,将期望的闭环响应设计成一阶惯性加纯迟延,然后反过来得到能满足这种闭环响应的控制器。

设图1所示单回路温度控制系统中,0()G s 为被控对象,()D z 为大林控制器,闭环控制系统传递函数为00()()()()()1()()D z G z Y z W z R z D z G z ⋅==+⋅,则有0()1()()()()1()U z W z D z E z G z W z ==⋅−,由此我们可知,如果能事先设定系统的闭环响应()W z ,则可得控制器()D z 。

2.实验设计假定被控对象为:0.760()0.41se G s s −=+,采样时间为0.5s ,期望的系统闭环传递函数为:0.76()0.151se W s s −=+,其中0.15s 为校正后闭环系统的时间常数。

为便于比较,可取M=1时采用大林控制算法;M=2时采用普通PID 控制算法( 1.0,P K = 0.50,I K = 0.10D K =)。

运用MA TLAB 软件使用大林算法及PID 算法分别对一阶惯性纯滞后温度系统进行控制,并分析两种算法的优缺点。

大林控制算法及其软件实现

大林控制算法及其软件实现

本文由昭君在意贡献 doc1。

大林(Dahlin) 3.4 大林(Dahlin)算法 前面介绍的最少拍无纹波系统的数字控制器的设计方法只适合 于某些随动系统, 对系统输出的超调量有严格限制的控制系统它并不 理想。

在一些实际工程中 在一些实际工程中,经常遇到纯滞后调节系统,它们的滞后时 它们的滞后时 间比较长。

对于这样的系统 往往允许系统存在适当的超调量,以尽 对于这样的系统,往往允许系统存在适当的超调量 可能地缩短调节时间。

 可能地缩短调节时间 人们更感兴趣的是要求系统没有超调量或只有 很小超调量, 而调节时间则允许在较多的采样周期内结束。

 而调节时间则允许在较多的采样周期内结束 也就是说, 超调是主要设计指标。

对于这样的系统,用一般的随动系统设计方法 超调是主要设计指标 用一般的随动系统设计方法 是不行的,用 PID 算法效果也欠佳 算法效果也欠佳。

 针对这一要求, ,IBM 公司的大林(Dahlin)在 1968 年提出了一种 针对工业生产过程中含有纯滞后对象的控制算法。

 针对工业生产过程中含有纯滞后对象的控制算法 其目标就是使整个 闭环系统的传递函数 相当于一个带有纯滞后的一阶惯性环节 相当于一个带有纯滞后的一阶惯性环节。

该算 法具有良好的控制效果。

 法具有良好的控制效果 D(z)的基本形式 3.4.1 大林算法中 D(z)的基本形式 设被控对象为带有纯滞后的一阶惯性环节或二阶惯性环节, 设被控对象为带有纯滞后的一阶惯性环节或二阶惯性环节 其传 递函数分别为: (3-4-1) (3-4-2) 其中 为被控对象的时间常数, 为被控对象的时间常数 为被控对象的纯延迟时 间,为了简化,设其为采样周期的整数倍 设其为采样周期的整数倍,即 N 为正整数 为正整数。

 由于大林算法的设计目标是使整个闭环系统的传递函数相当于 一个带有纯滞后的一阶惯性环节,即 一个带有纯滞后的一阶惯性环节 ,其中 其中 由于一般控制对象均与一个零阶保持器相串联, 由于一般控制对象均与一个零阶保持器相串联 所以相应的整个 闭环系统的脉冲传递函数是 (3-4-3) ) 于是数字控制器的脉冲传递函数为 (3-4-4) ( D(z)可由计算机程序实现 可由计算机程序实现。

计控实验五-达林算法仿真

计控实验五-达林算法仿真

实验报告||实验名称大林算法仿真实验课程名称计算机控制技术与系统|实验五达林算法仿真实验1、实验目的:在离散系统直接数字控制算法学习基础上,通过Matlabl 软件仿真实验,加深掌握达林算法设计离散控制器的基本思想和方法,进一步理解最少拍与非最少有限拍控制器设计中存在的局限性。

2、实验内容及要求:已知对象模型为1.460()1 3.34Se G s s -=+设期望的闭环响应M(z)为时间常数τ=2s 的一阶惯性环节,并带有l=1个采样周期的纯滞后,即1211(1)0.3935()110.6065lz z M z z z z σσ------==--要求:1) 经采样(T=1S )保持后,求出其广义对象z 传递函数;2) 基于达林算法给定的M(z),设计控制器D(z),对单位阶跃输入绘制U(k)和系统输出y(k)响应曲线;3) 设计消除振铃后的等效控制算法D(z),对单位阶跃输入绘制U(k)和系统输出y(k)响应曲线;4) 分析比较上述两种情况下,对应U(k)和y(k)的响应特性有哪些变化。

3、实验过程3.1求取广义对象的z 传递函数利用matlab 求取广义对象的z 传函并将其转化成零极点的形式,用到的程序如下 T1=3.34; tao=1.46;G0=tf([1],[T1 1],'inputdelay',tao) sysd=c2d(G0,T,'zoh'); zsysd=zpk(sysd)得到的广义对象的z 传递函数为20.14928(z 0.7332)(z 0.7413)z+-3.2基于大林算法设计D(z)期望的闭环响应函数为M(z),广义对象的传递函数为G(z),则根据大林算法设计的控制器D(z)表达式为21(z) 2.636(z 0.7413)(z)(z)1(z)(z 1)(z 0.7332)(z 0.3935)M z D G M -==--++在simulink 中仿真改系统,建立的框图为得到的控制量的曲线为可见出现了控制量的输出出现振铃现象。

大林算法控制系统设计完整版

大林算法控制系统设计完整版

大林算法控制系统设计 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】扬州大学能源与动力工程学院课程设计报告题目:大林算法控制系统设计课程:计算机控制技术课程设计专业:电气工程及其自动化班级:姓名:学号:第一部分任务书《计算机控制技术》课程设计任务书一、课题名称大林算法控制系统设计二、课程设计目的课程设计是课程教学中的一项重要内容,是达到教学目标的重要环节,是综合性较强的实践教学环节,它对帮助学生全面牢固地掌握课堂教学内容、培养学生的实践和实际动手能力、提高学生全面素质具有很重要的意义。

《计算机控制技术》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。

计算机控制技术的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。

通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。

三、课程设计内容设计以89C51单片机和ADC、DAC等电路、由运放电路实现的被控对象构成的计算机单闭环反馈控制系统。

1. 硬件电路设计:89C51最小系统加上模入电路(用ADC0809等)和模出电路(用TLC7528和运放等);由运放实现的被控对象。

2. 控制算法:大林控制算法。

3. 软件设计:主程序、中断程序、A/D转换程序、滤波程序、大林算法控制程序、D/A输出程序等。

四、课程设计要求1. 模入电路能接受双极性电压输入(-5V~+5V),模出电路能输出双极性电压(-5V~+5V)。

2. 模入电路用两个通道分别采集被控对象的输出和给定信号。

3. 每个同学选择不同的被控对象:4. 对象的纯延迟环节seτ-用软件通过数组单元移位实现。

5. 定时中断间隔选取50ms,采样周期T要求既是采样中断间隔的整数倍,又满足(0.21)Tτ=-。

天津大学计算机控制系统——第8.8课 (掌握)纯滞后控制系统设计—达林算法

天津大学计算机控制系统——第8.8课 (掌握)纯滞后控制系统设计—达林算法



(2)求控制器的z传递函数
1 z N 1 (1 eT /T ) D( z) 求控制器: G( z) 1 eT /T z 1 (1 eT /T ) z N 1
达林算法标准脉冲控制器形式
8.4 纯滞后系统的设计—达林算法
4 达林算法的设计 设计思路: 针对不同被控对象,根据标准达林算法公式设计控制器。 (1)被控对象为:一阶惯性+纯滞后环节






8.4 纯滞后系统的设计—达林算法
5. 举例——基本达林算法设计
输出 控制量
1 0.393z 3 Y z Rz z 1 z 1 1 0.607z 1 0.393z 3 0.632z 4 0.775z 5 0.865z 6 0.918z 7 0.950z 8
8.4 纯滞后系统的设计—达林算法
2 达林算法的对象特性
(1)被控对象特性 一阶惯性+纯滞后环节: 或二阶惯性+纯滞后环节:
Gp s K e s 1 T1s K Gp s e s 1 T1s 1 T2 s
(2)闭环z传递函数特性——设计目标
(s)
1 1 2 Q( z ) 1 ( b a 1) z ( b a a ) z 1 1 2 2 1 1 1 z
RA 振铃幅度定义:
1 ( b 1 a 1 1) a 1 b 1
8.4 纯滞后系统的设计—达林算法
(a) 单位阶跃下的振铃幅度:
1 (s) e s T s 1
离散化:
1 e Ts e NTs z N 1 1 e T T Y z z R z s T s 1 1 e T T z 1

Dahlin算法控制设计

Dahlin算法控制设计

《计算机控制》课程设计报告题目: Dahlin算法控制设计姓名: 王明华学号: 1207301032016年1月4日《计算机控制》课程设计任务书指导教师签字:系(教研室)主任签字:2015年12 月28 日1. 设计题目名称29、Dahlin 算法控制设计被控对象为)120)(1(4)(G 12p ++=-s s e s s,T=1s, 8=τT , 采用Dahlin 算法设计消除振铃的数字控制器。

2. 课程设计的目的课程设计是一门将课堂知识应用到软硬件设计中的课程,是大学课程里不可或缺的,学习和利用好这门课程是很有必要的。

《计算机控制系统》是一门理论性、实用性和实践性都很强的课程,课程设计环节应占有更加重要的地位。

计算机控制系统的课程设计是一个综合运用知识的过程,它需要控制理论、程序设计、硬件电路设计等方面的知识融合。

通过课程设计,加深对学生控制算法设计的认识,学会控制算法的实际应用,使学生从整体上了解计算机控制系统的实际组成,掌握计算机控制系统的整体设计方法和设计步骤,编程调试,为从事计算机控制系统的理论设计和系统的调试工作打下基础。

3. 课程设计的实验条件(1)软件:MA TLAB 、keil 、proteus (2)硬件:计算机、单片机4. 课程设计的原理许多实际工程中(如化工及热工过程)经常遇到一些纯滞后调节系统,往往滞后时间比较长。

对于这样的系统,人们较为感兴趣的是要求系统没有超调量或者超调量很小,超调成为主要的设计目标。

尤其是具有滞后的控制系统,用一般的随动系统设计方法是不行的,而且往往PID 算法的效果也欠佳。

因此,在含有滞后的温度控制中引入大林算法,对解决滞后问题具有很好的效果。

以下是大林算法的简单介绍和应用到题目的解题思路。

被控对象含有纯滞后环节s e τ-的一阶或者二阶惯性环节,它的传递函数为:1()1sp KG s e T s τ-=+ (1)12()(1)(1)sp KG s e T s T s τ-=++ (2)式中,12,ττ为对象的时间常数;τ为对象的延迟时间。

大林算法控制器设计

大林算法控制器设计

采样周期T=,试用达林算法设计数字控制器D(z)。

写出设计过程,对比输出与给定的效果波形,并显示控制器输出波形。

解:广义对象的脉冲传递函数:
根据达林算法,构成的惯性环节与滞后时间的纯滞后环节串联而成的理想闭环系统。

它所对应的理想闭环脉冲传递函数:
所求数字控制器为:
在中可以看到有一个零点靠近,所以如果不对达林算法进行修正必会产生振铃现象,令因子
中的即
修正后的数字控制器为:
仿真图如下:
3.已知某过程对象的传递函数为:
期望的闭环系统时间常数 ,采样周期。

试用大林算法设计数字控制器;
解:被控对象为一阶惯性环节,则广义对象脉冲传递函数,闭环系统脉冲函数和数字调节器脉冲传递函数分别如下:
根据已知可得:
所以:
仿真图如下:。

控制系统计算机仿真(matlab)实验五实验报告

控制系统计算机仿真(matlab)实验五实验报告

实验五 控制系统计算机辅助设计一、实验目的学习借助MATLAB 软件进行控制系统计算机辅助设计的基本方法,具体包括超前校正器的设计,滞后校正器的设计、滞后-超前校正器的设计方法。

二、实验学时:4 学时 三、实验原理1、PID 控制器的设计PID 控制器的数学模型如公式(5-1)、(5-2)所示,它的三个特征参数是比例系数、积分时间常数(或积分系数)、微分时间常数(或微分系数),因此PID 控制器的设计就是确定PID 控制器的三个参数:比例系数、积分时间常数、微分时间常数。

Ziegler (齐格勒)和Nichols (尼克尔斯)于1942提出了PID 参数的经验整定公式。

其适用对象为带纯延迟的一节惯性环节,即:s e Ts Ks G τ-+=1)( 5-1式中,K 为比例系数、T 为惯性时间常数、τ为纯延迟时间常数。

在实际的工业过程中,大多数被控对象数学模型可近似为式(5-1)所示的带纯延迟的一阶惯性环节。

在获得被控对象的近似数学模型后,可通过时域或频域数据,根据表5-1所示的Ziegler-Nichols 经验整定公式计算PID 参数。

表控制器的参数。

假定某被控对象的单位阶跃响应如图5-4所示。

如果单位阶跃响应曲线看起来近似一条S 形曲线,则可用Ziegler-Nichols 经验整定公式,否则,该公式不适用。

由S 形曲线可获取被控对象数学模型(如公式5-1所示)的比例系数K 、时间常数T 、纯延迟时间τ。

通过表5-1所示的Ziegler-Nichols 经验整定公式进行整定。

如果被控对象不含有纯延迟环节,就不能够通过Ziegler-Nichols 时域整定公式进行PID 参数的整定,此时可求取被控对象的频域响应数据,通过表5-1 所示的Ziegler-Nichols 频域整定公式设计PID 参数。

如果被控对象含有纯延迟环节,可通过pade 命令将纯延迟环节近似为一个四阶传递函数模型,然后求取被控对象的频域响应数据,应用表5-1求取PID 控制器的参数。

计算机控制系统仿真实验-LIN

计算机控制系统仿真实验-LIN

正弦信号 正弦信号在 MATLAB 中用 sin 函数表示。 调用格式为 ft=A*sin(w*t+phi) A=1; w=2*pi; phi=pi/6; t=0:0.01:8; %定义时间点 ft=A*sin(w*t+phi); %计算这些点的函数值 plot(t,ft); %画图命令 grid on; %在图上画方格 抽样信号 抽样信号 Sa(t)=sin(t)/t 在 MATLAB 中用 sinc 函数表示。
共 32 页
计算机控制统 仿真实验
实验一
一、实验目的
基本信号在 MATLAB 中的表示和运算
1. 学会用 MATLAB 表示常用连续信号的方法; 2. 学会用 MATLAB 进行信号基本运算的方法; 二、实验原理 1. 连续信号的 MATLAB 表示 MATLAB 提供了大量的生成基本信号的函数,例如指数信号、正余弦信号。 表示连续时间信号有两种方法,一是数值法,二是符号法。数值法是定义某一时间范围和取样 时间间隔,然后调用该函数计算这些点的函数值,得到两组数值矢量,可用绘图语句画出其波形; 符号法是利用 MATLAB 的符号运算功能,需定义符号变量和符号函数,运算结果是符号表达的解 析式,也可用绘图语句画出其波形图。 例 1-1 指数信号 指数信号在 MATLAB 中用 exp 函数表示。
例 1-7 矩形脉冲信号 矩形脉冲信号可用 rectpuls 函数产生, 调用格式为 y=rectpuls(t,width),幅度是 1,宽度是 width,以 t=0 为对称中心。 t=-2:0.01:2; width=1; ft=2*rectpuls(t,width); plot(t,ft) grid on; 例 1-8 单位阶跃信号 单位阶跃信号 u(t)用“t>=0”产生,调用格式为 ft=(t>=0) t=-1:0.01:5; ft=(t>=0); plot(t,ft); grid on; axis([-1,5,-0.5,1.5]); 例 1-9 正弦信号符号算法

达林算法在z域和δ域的仿真

达林算法在z域和δ域的仿真

图 H! 控制系统结构图 ( 5 K H!1 : ? L B : L ? 3; < B ; 7 : ? ; > 4 4 : 3 C 6 G
在 Y 域的振铃 现 象 & 消 除 振 铃 的 算 法 用 B73 a 7 6进 行了仿 真 % 又 对 达 林 算 法 进 行- 变 换 " 也 进 行 了 仿 真" 并对两种情况下控制器的输出波形和系统最终输出波 形予以比较 #
图 J! * 域系统输出波形 ( 5 K J! M 8 A 3 < ; ? C; < 4 4 : 3 C< ; ? *9 ; C 8 5 7 6 G
法# 由 Y 变换特性可知 $ 采 样 周 期 很 小 时$ 采 用Y 变 换 会使离散模型的零 ( 极点 密 集 于 Y 平 面 上YY# 附 近 $ 极易产生建模误差 ) 在有限字长的计算机上实现时会 带来更大的量化误差和非 线 性 效 应 # - 变 换 的 特 点 是$ 在小采样周期下 $ 克服 - 离散模 型 近 似 于 原 连 续 模 型 $ 了 Y 变换的上述不足 ) 在数字计算机上实现时有更好 的数值特性 # 特别是 很 多 为 人 熟 知 的 连 续 域 设 计 概 念 和设计方法 $ 都可以近似直接用于- 离散域设计 $ 不必
如热工 & 化工 # 控制中 " 由于物料或能 !! 在工业过程 ! 量的传输延迟 " 许多被控对象具有纯滞后性质 " 这种纯
#( 滞后性质常引起 系 统 产 生 超 调 或 者 振 荡 ’ 对于带有 )
设采样周期为 ! # 秒" 期望闭环传递函数为 .! # :T# . Y
T . , " 采用达林算 法 确 定 数 字 控 制 器 " 控制系统结构 " . Z# "( 如图 # 所示 ’ #

基于大林算法的炉温控制仿真

基于大林算法的炉温控制仿真

电气工程及自动化学院课程设计报告(控制基础实践)题目:基于大林算法的炉温控制仿真专业班级:自动化101班姓名:周强学号:33号指导老师:杨国亮2012年12月22日电阻炉在化工、冶金等行业应用广泛,因此温度控制在工业生产和科学研究中具有重要意义。

其控制系统属于一阶纯滞后环节,具有大惯性、纯滞后、非线性等特点,导致传统控制方式超调大、调节时间长、控制精度低。

采用单片机进行炉温控制,具有电路设计简单、精度高、控制效果好等优点,对提高生产效率、促进科技进步等方面具有重要的现实意义。

常规的温度控制方法以设定温度为临界点,超出设定允许范围即进行温度调控:低于设定值就加热,反之就停止或降温。

这种方法实现简单、成本低,但控制效果不理想,控制温度精度不高、容易引起震荡,达到稳定点的时间也长,因此,只能用在精度要求不高的场合。

电加热炉是典型的工业过程控制对象,在我国应用广泛。

电加热炉的温度控制具有升温单向性,大惯性,大滞后,时变性等特点。

其升温、保温是依靠电阻丝加热,降温则是依靠环境自然冷却。

当其温度一旦超调就无法用控制手段使其降温,因而很难用数学方法建立精确的模型和确定参数,应用传统的控制理论和方法难以达到理想的控制。

在温度控制技术领域中,普通采用PID控制算法。

但是在一些具有纯滞后环节的系统中,PID控制很难兼顾动、静两方面的性能,而且多参数整定也很难实现最佳控制。

若采用大林算法,可做到无或者小超调,无或小稳态误差。

大林算法是运用于自动控制领域中的一种算法,是一种先设计好闭环系统的响应再反过来综合调节器的方法。

设计的数字控制器(算法)使闭环系统的特性为具有时间滞后的一阶惯性环节,且滞后时间与被控对象的滞后时间相同。

此算法具有消除余差、对纯滞后有补偿作用等特点。

本设计主要采用大林算法来实现炉温控制,并与PID算法进行比较。

关键词:PID控制;大林算法;控制算法;MATLAB第一章系统方案 (1)1.1设计任务和要求 (1)1.2大林算法 (1)1.3 PID算法 (3)第二章设计流程 (5)2.1大林算法软件设计流程图 (5)2.2 PID算法程序设计流程图 (5)第三章设计过程及结果 (7)3.1 GUI界面设计 (7)3.1.1 GUI界面的建立 (7)3.1.2 制作GUI界面 (9)3.2 Simulink设计 (10)3.2.1 大林算法Simulink (10)3.2.2 PID控制算法Simulink (11)3.3 程序设计 (12)3.3.1 大林算法编程 (12)3.3.2 PID控制算法编程 (14)3.4 两种算法的比较 (16)第四章总结 (17)致谢 (18)参考文献 (19)附录 (20)1、大林算法程序 (20)2、PID控制器算法程序 (20)第一章 系统方案1.1设计任务和要求已知电阻炉对象数学模型为1)(+=-Ts ke s G sτ 其中,k=12, T=400, 60=τ,电阻炉的温度设定为1000℃.要求:(1)设计大林控制算法;(2)设计PID 控制器,并与PID 算法进行比较;(3)改变模型参数,考察模型扰动下系统性能变化情况。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计控实验五-达林算法仿真
实验报告|
|
实验名称大林算法仿真实验
课程名称计算机控制技术与系统
|
实验五 达林算法仿真实验
1、实验目的:
在离散系统直接数字控制算法学习基础上,通过Matlabl 软件仿真实验,加深掌握达林算法设计离散控制器的基本思想和方法,进一步理解最少拍与非最少有限拍控制器设计中存在的局限性。

2、实验内容及要求:
已知对象模型为
1.460()1 3.34S
e G s s -=
+
设期望的闭环响应M(z)为时间常数τ=2s 的一阶惯性环节,并带有l=1个采样周期的纯滞后,即
12
1
1(1)0.3935()110.6065l
z z M z z z z σσ------==--
要求:
1) 经采样(T=1S )保持后,求出其广义对象z 传递函数;
2) 基于达林算法给定的M(z),设计控制器D(z),对单位阶跃输入绘制U(k)
和系统输出y(k)响应曲线;
3) 设计消除振铃后的等效控制算法D(z),对单位阶跃输入绘制U(k)和系统
输出y(k)响应曲线;
4) 分析比较上述两种情况下,对应U(k)和y(k)的响应特性有哪些变化。

3、实验过程
3.1求取广义对象的z 传递函数
利用matlab 求取广义对象的z 传函并将其转化成零极点的形式,用到的程
序如下 T1=3.34; tao=1.46;
G0=tf([1],[T1 1],'inputdelay',tao) sysd=c2d(G0,T,'zoh'); zsysd=zpk(sysd)
得到的广义对象的z 传递函数为
2
0.14928(z 0.7332)
(z 0.7413)z
+-
3.2基于大林算法设计D(z)
期望的闭环响应函数为M(z),广义对象的传递函数为G(z),则根据大林算法设计的控制器D(z)表达式为
21(z) 2.636(z 0.7413)
(z)(z)1(z)(z 1)(z 0.7332)(z 0.3935)
M z D G M -==--++
在simulink 中仿真改系统,建立的框图为
得到的控制量的曲线为
可见出现了控制量的输出出现振铃现象。

得到的系统输出曲线为
从曲线可以发现系统输出最终稳定下来,没有超调,稳定时间约12拍。

3.3设计消除振铃后的等效控制算法D(z)
广义对象的z 传递函数为
2
0.14928(z 0.7332)
(z 0.7413)z +-
由理论可得,振林因子来自广义对象在z 平面上单位圆左半平面内的零点。

即零点z=-0.7332是振铃现象产生的原因。

由大林算法设计的控制器D(z)
22.636(z 0.7413)
(z)(z 1)(z 0.7332)(z 0.3935)
z D -=-++
消除振铃现象的方法,即将D(z)中找到振铃因子,并将z=1代入。

因此只需将z=1代入D(z)分母中的(z+0.7332),即可得到所需要的控制器D1(z)
111
1.5209(10.7413z ) 1.5209(z 0.7413)z
D1(z)=(10.3935z )(1z )(z 0.3935)(z 1)
-----=+-+- 在simulink 中仿真改系统,建立的框图为
得到的控制量的曲线为
得到的系统输出曲线为
系统最终能够稳定下来,有轻微的超调,稳定时间大约为12拍。

3.4普通大林算法和消除振铃后的对比
(1)控制量输出曲线对比
观察控制量的器输出虚线可以发现,消除振铃后,控制量的幅值以及变化幅度明显小了很多。

这说明就控制量而言,消除振铃的大林算法控制系统明显优于消除振铃之前。

(2)系统输出曲线对比
观察系统的输出可以发现消除振铃之后系统的响应速度有些许的增加,但曲线出现了超调,系统稳定性出现一定幅度的下降。

相关文档
最新文档