当前位置:文档之家› 计算机控制系统课程设计

计算机控制系统课程设计

《计算机控制》课程设计报告题目: 超前滞后矫正控制器设计姓名:学号: 10级自动化2013年12月2日《计算机控制》课程设计任务书指导教师签字: 系(教研室)主任签字:2013年 11 月 25 日1.控制系统分析和设计实验要求设单位反馈系统的开环传递函数为)101.0)(11.0(100)(++=s s s s G ,采用模拟设计法设计数字控制器,使校正后的系统满足:速度误差系数不小于100,相角裕度不小于40度,截止角频率不小于20。

系统分析(1)使系统满足速度误差系数的要求:()()s 0s 0100lim ()lim 1000.1s 10.011V K s G s s →→=•==++(2)用MATLAB 画出100()(0.11)(0.011)G s s s s =++的Bode 图为: 由图可以得到未校正系统的性能参数为:相角裕度0 1.58γ=︒, 幅值裕度00.828g K dB dB =,剪切频率为:030.1/c rad s ω=, 截止频率为031.6/g rad s ω=(3)未校正系统的阶跃响应曲线可以看出系统产生衰减震荡。

(4)性能分析及方法选择系统的幅值裕度和相角裕度都很小,很容易不稳定。

在剪切频率处对数幅值特性以-40dB/dec 穿过0dB 线。

如果只加入一个超前校正网络来校正其相角,超前量不足以满足相位裕度的要求,可以先缴入滞后,使中频段衰减,再用超前校正发挥作用,则有可能满足要求。

故使用超前滞后校正。

模拟控制器设计(1)确定剪切频率c ωc ω过大会增加超前校正的负担,过小会使带宽过窄,影响响应的快速性。

首先求出幅值裕度为零时对应的频率,约为30/g rad s ω=,令30/c g rad s ωω==。

(2)确定滞后校正的参数22113/10c rad s T ωω===, 20.33T s =,并且取得10β=112110.33/rad s T T ωβ===, 13T s = 则滞后校正的控制器为10.331()31c s G s s +=+ 此时系统的响应曲线为:滞后校正后的性能参数为: 相角裕度 026.9γ=︒, 幅值裕度 016.9g K dB dB =,剪切频率为:08.73/c rad s ω=, 截止频率为026.5/g rad s ω=系统仍需要进行超前校正(3)确定超前校正的参数在图中过(c ω,0dB )作-20dB/dec 线,与原先的Bode 相交,交点的角频率为:3313/rad s T ω==, 30.3T s = 443130/rad s T T βω===,40.03T s = 超前矫正控制器的传递函数为:20.31()0.031c s G s s +=+ (4)超前滞后校正同时作用时系统的Bode 图:相角裕度 048.4γ=︒, 幅值裕度 013.5g K dB dB =,剪切频率为:024.4/c rad s ω=, 截止频率为062.1/g rad s ω=校正后的系统性能已经满足了性能指标要求。

(5)画出校正后系统的阶跃响应曲线(6)设计好的控制器传递函数为:(0.331)(0.31)()(31)(0.031)c s s G s s s ++=++用模拟法设计数字控制器(1)模拟控制器离散化采用双线性变换法。

(2)采样周期选择取采样周期T=,因为考虑到A/D ,D/A 转换的时间以及单片机计算的时间,采样时间不能选的太小,但是为了保证离散控制器的控制仍能满足性能指标的要求,采样时间不能取得太大。

取采样周期为10ms,给程序运行留下了足够的时间,而且由后面可见控制效果仍满足性能指标要求,所以取采样周期为10ms 。

(3)将模拟控制器离散化 离散化后得脉冲函数为:220.9715 1.8820.9116() 1.7110.7119c z z G z z z -+=-+ (4)被控对象离散化 离散化的被控对象为:2320.012870.039840.007441() 2.273 1.6060.3329p z z G z z z z ++=-+- (5)绘制出离散系统的Bode 图相角裕度 041.3γ=︒, 幅值裕度 09.11g K dB dB =,剪切频率为:024.4/c rad s ω=, 截止频率为041.3/g rad s ω=离散化的控制器仍旧满足性能指标的要求,设计合理。

(6)离散系统的阶跃响应曲线:(6)数字控制器的脉冲传递函数:220.9715 1.8820.9116() 1.7110.7119c z z G z z z -+=-+ 控制系统的编排结构(1)编排结构的选择如果使用直接型编排结构,如果控制器中任一系数存在误差,则将使控制器所有的零极点产生响应的变化,严重影响系统的性能。

在控制器设计时采用了超前滞后校正,所以采用串联型结构比较简单,而且任何一系数有误差,不会使控制器所有的零极点产生相应的变化。

因为()c G z 有复数零点,故可以写成12121 1.9370.9383()0.9715*1 1.7110.7119c z z G z z z-----+=-+ (2)转换为差分方程的形式:可以通过一个比例环节实现,可以不用考虑。

只需在设计好的控制器上加个比例因子即可。

u()() 1.937(1)0.9383(2) 1.711(1)0.7119(2)k e k e k e k u k u k =--+-+---2.硬件电路设计2.1元器件选择(1)控制器选择选择8051单片机,外接晶振为2MHz.(2)A/D 选择选择ADC0809,该AD 有8路输入通道,8位A/D 转换器,分辨率为8位,转换时间为100s μ,(时钟为640KHz 时),130s μ(时钟为500KHz 时);单个+5V 供电,模拟输入电压范围为0到5V,不需要零点和满课度校准;内部没有时钟,所以需要外接时钟,时钟从单片机的ALE 引脚引出。

在经过两个D 触发器分频,从而达到500KHz 的时钟信号。

D 触发器选择74LS174。

A/D 转换时间为130s μ,应该能满足设计的要求。

(3)D/A 选择选择DAC0832,分辨率为8位;可单缓冲,双缓冲或者直接数字输入;只需要在满量程下调整线性度;单一电源供电+5V 到+15V;可以满足设计的要求。

输出电压值为:82refout D V U *=-电路的设计(1)A/D转换电路的设计将AD转换的ADDA,ADDB,ADDC接地,选择IN0锁存器。

EOC接,转换结束则输出1,否则输出为0;OE接,选择是否输出数据。

OE=0,输出高阻态,OE=1输出数字量;ST接,转化开始信号。

由1变零转换开始;IN0接输入的模拟数据e(t);IN1-IN7悬空;Clock接分频器SUN7474的输出端,输入500HZ时钟信号;Vref(+)接+5V,Vreft(-)接地,VCC接电源,GND接地;ALE地址所存,上跳沿所存,可以接在口。

D0-D7接单片机的转换电路设计D0-D7接单片机的,数字量输入;将CS,WR1,WR2,XFER,引脚接地;ILE引脚接+5V,Vref选择+5V,GND接地;此时DAC0832处于直通工作方式,一旦有数字量输入,就直接进入DAC寄存器,进行D/A转换。

(3)8051单片机的电路设计:接D/A转换数字输入端;接A/D转化数字输出端;接A/D转换ST端;接A/D转换OE端;接A/D转换EOC端;外接2MHZ的时钟电路输入到时钟端XTAL1,XTAL2;外接复位电路到RET;硬件电路图3.用单片机实现控制算法流程图(2)程序编写#include<>#define uchar unsigned char#define uint unsigned intsbit ST=P2^0;sbit OE=P2^1;sbit EOC=P2^2; 系统的阶跃响应程序num1=[100];den1=conv([1 0],conv([ 1],[ 1]))G=tf(num1,den1);T=feedback(G,1);step(T);2.校正后系统的bode图程序:num1=conv([33 100],[ 1]);den1=conv([ 1],conv([3 1],conv([1 0],conv([ 1],[ 1])))) margin(num1,den1);3.校正后系统的阶跃响应曲线程序:num1=conv([33 100],[ 1]);den1=conv([ 1],conv([3 1],conv([1 0],conv([ 1],[ 1])))) G=tf(num1,den1);T=feedback(G,1);step(T)4.校正后离散系统的bode图程序num1=conv([ 1],[ 1]);den1=conv([3 1],[ 1]);GC1=tf(num1,den1);GC1GZ1=c2d(GC1,,'tustin');GZ1num0=[100];den0=conv([1 0],conv([ 1],[ 1]));Gp=tf(num0,den0);GZ2=c2d(Gp,,'ZOH')GZ2GZ=GZ1*GZ2;margin(GZ);5.校正后离散系统的阶跃响应曲线GC1=tf(num1,den1);GC1GZ1=c2d(GC1,,'tustin');GZ1num0=[100];den0=conv([1 0],conv([ 1],[ 1])); Gp=tf(num0,den0);GZ2=c2d(Gp,,'ZOH')GZ2GZ=GZ1*GZ2;margin(GZ);T=feedback(GZ,1);step(T);。

相关主题