计算机控制技术课程设计

  • 格式:pdf
  • 大小:562.69 KB
  • 文档页数:10

一.课程设计目的

设计制作和调试一个由工业控制机控制的时滞对象输出端具有干扰

信号的计算机控制系统。通过这个过程学习电压的采样方法,A/D和D/A

变换方法和接口的使用方法,以及数字滤波的方法。通过实践过程掌握

常规及改进PID控制方法,熟悉利用计算机进行自动控制的系统结构。

本课程设计是本门课程课堂教学的延伸和发展,是理论知识与工程

实践之间的衔接。通过本课程设计,使学生进一步学习与理解计算机控

制系统的构成原理、接口电路与应用程序,进一步巩固与综合专业基础

知识和相关专业课程知识,提高学生运用理论知识解决实际问题的实践

技能;培养学生独立自主、综合分析的思维与创新能力,最终使学生初

步具有设计小型计算机控制系统的硬件及软件的能力。同时,通过资料

搜集、方案分析、系统设计与报告撰写的一系列过程,使学生得到一次

科学研究工作的初步训练。从而,在专业知识与研究方法方面为日后的

毕业设计乃至毕业后的工作奠定良好的基础。二. 课程设计内容

某系统的被控对象含有纯滞后环节,它的传递函数为:

该系统的输入信号为带有干扰的方波信号(方波幅值2V,频率4Hz,干扰

自行设计硬件电路产生),采样周期1s。请完成以下任务:

1. 分别采用普通PID算法和微分先行PID算法进行控制,并在两种

方法中均采用抗积分饱和的方法。给出两种方法下的系统响应曲线,以

及控制量u的变化曲线图,详细地比较和分析所得结果。

2. 在1中采用微分先行PID算法的基础上,在对象的输出端施加一组

噪声信号(自行设计电路产生),在系统中设计低通滤波器,请分别给

出有无滤波器时的系统响应曲

线图,并详细地比较和分析所得结果。

说明:上述任务中的微分增益系数和滤波时间常数,以及、、的取

值需通过实验调试得到。

三.实验(设计)仪器设备和材料清单

THBDC-1型控制理论·计算机控制技术实验平台,硬件部分包括直

流稳压电源、低频信号发生器、实验通用单元电路、USB数据采集卡及

接口单元,上位机软件包括虚拟示波器、 。

四.设计步骤

(1)总体方案设计:构建系统的结构框图,确定系统各组成模块的功能和相互关系。

(2)详细设计:

硬件部分:选用THBDC-1型控制理论·计算机控制技术实验平台

1). 尖脉冲干扰信号产生的模拟电路图

图1 尖脉冲产生电路

试验电路参考单元U2

通过改变方波信号的频率,即可改变尖脉冲的频率。其中方波信号

可由上位机软件“THBDC-1”中函数信号发生器产生,信号频率与幅值由

需要而定.本试验中方波频率为50Hz

幅值为1v,以得到理想干扰信号

2) 带干扰方波信号模拟电路

图2 带干扰方波输入产生电路图

实验电路参考单元:U6

3) 被控对象G(s)的模拟电路图

图中:R1=R2=510k . C=10uF. R0=200k

4) 给出系统各个组成部分的接口电路。

软件部分:依据采用的控制算法及计算机控制系统的构成特点,绘制

程序流程图,并编写相应的程序代码。程序的各个关键环节应给出文字

注释。

:

+ -

+ +

+

c(t)

u(t)

e(t)

r(t)

比例

积分

微分

被控对象

图2-1模拟PID控制系统结构图

dim pv,sv,ei,k,ti,td,q0,q1,q2,mx,pvx,op,Ts ‘变量定义

sub inputdata ()

pv=myobject.inputdata1 ‘AD1通道输入

sv= myobject.inputdata2 ‘AD2通道输入

end sub

sub main()

k=12

ti=4

td=0.005

Ts=0.01 '采样时间0.01s

ei=sv-pv '控制偏差

myobject.timedelay=10 ‘滞后时间0.01s

if k=0 and ti=0 and td=0 then

q0=0 '比例项

q1=0 '积分项

q2=0 '微分项

end if

if k<>0 and ti<>0 then

q0=k*ei

mx=k*Ts*ei/ti '积分增量 q2=k*td*(pvx-pv)/Ts

end if

if ti=0 then

q0=K*ei

q1=0

mx=0

q2=k*td*(pvx-pv)/Ts

end if

if mx>3.5 then ‘积分增量限幅

mx=3.5

end if

if mx<-3.5 then

mx=-3.5

end if

q1=q1+mx

pvx=pv

op= q0+q1+q2 ‘PID控制器的输出

if op>=3.5 then

op=3.5

end if

if op<=-3.5 then

op=-3.5 ‘输出限幅

end if

end sub

sub outputdata()

myobject.outputdata1=op ‘输出值给DA1通道

end sub

带有抗积分饱和的微分先行PID算法:

dim pv,sv,ei,k,ti,td,q0,q1,q2,mx,pvx,op,Ts,svx,tf,eix

sub inputdata ()

pv=myobject.inputdata1

sv= myobject.inputdata2

end sub

sub main()

k=1.2

ti=4

td=0.1

tf=0.04

Ts=1 '采样时间1s

ei=sv-(tf*svx*td+Ts*pv+td*pv-td*pvx-tf*td*eix)/(Ts+tf*td)

if k=0 and ti=0 then

q0=0

q1=0

end if

if k<>0 and ti<>0 then

q0=k*ei

mx=k*Ts*ei/ti

end if

if ti=0 then

q0=K*ei

q1=0

mx=0

end if

if mx>3.5 then

mx=3.5

end if

if mx<-3.5 then mx=-3.5

end if

q1=q1+mx

pvx=pv

svx=sv

eix=ei

op=q0+q1

if op>=3.5 then

op=3.5

end if

if op<=-3.5 then

op=-3.5

end if

end sub

sub outputdata()

myobject.outputdata1=op

end sub

2.一阶数字滤波器及其数字化

一阶数字滤波器的传递函数为

利用一阶差分法离散化,可以得到一阶数字滤波器的算法:

其中TS为采样周期,为滤波器的时间常数。TS和应根据信号的频谱

来选择。

dim pv,op1,Ts, opx,x,Ti ‘变量定义

sub inputdata() ‘输入接口程序

pv=myobject.inputdata1 ‘采集卡通道1的测量值

end sub

sub main() ‘主程序

x=x+0.05 ‘正弦信号的产生

Ti=0.008

Ts=0.001 ‘采样时间1ms

op1=Ts/Ti*pv+(1-Ts/Ti)*opx ‘一阶数字滤波器的输出

opx=op1if op1>=5 then

op1=5

end if

if op1<=-5 then

op1=-5

end if ‘输出限幅

end sub

sub outputdata() ‘输出接口程序

myobject.outputdata1=op1 ‘op1为滤波后的输出信号

end sub

五 试验结果

(3)调试:首先在Matlab软件中对系统进行仿真分析(选做,

simulink仿真环境或纯M文件编程均可);编译软件,在实验室进行系

统的软硬件联调,通过观测系统的响应曲线,整定PID控制器参数和滤

波器参数,获得满意的控制效果。

带有抗积分饱和的PID算法

4结语本文首先从PID控制器及控制技术的研究目的和意义,引出

我们对这种控制算法的理解和仿真具有重大意义,分析了传统

的模拟和数字PID控制算法,并对传统的PID控制算法进行微

分项和积分项的改进,学习了几种比较普遍运用的方法,如微

分先行PID 控制算法、积分限幅法、在这里用到的MATLAB语

言以及所属的Simulink仿真控件。

在整个设计过程中,使我对所学知识进行了一个比较大的

综合巩固,让我学会了各种查阅资料以及整理所需材料的能

力,通过这次的课题设计,也让我学习到了不少新知识,在几

个星期的学习实践中学到的东西比以往学到的都要丰富,因为

我不仅学到了一些新的专业知识还锻炼了自己解决问题的能

力,这是不可多得的。但是,在设计过程中我也遇到了不少困

难,感觉自己对所学专业知识的欠缺,让自己增加了紧迫感,

要抓紧弥补自己的欠缺,学无止境,这也让我体会到了不管以

后走上什么样的工作岗位,都不要抛弃自己的学习,不进则

退,别人的进步自己的停滞不前终将导致自己的被淘汰,这是

我在整个课题设计过程中最大的体会。