计算机控制技术基础课程设计.docx
- 文档编号:8847894
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:23
- 大小:158.52KB
计算机控制技术基础课程设计.docx
《计算机控制技术基础课程设计.docx》由会员分享,可在线阅读,更多相关《计算机控制技术基础课程设计.docx(23页珍藏版)》请在冰豆网上搜索。
计算机控制技术基础课程设计
计算机控制技术基础课程设计
专业过程装备与控制工程
班级过控1301班
学生姓名王
学生学号2013
指导教师张
太原理工大学化学化工学院
2016年12月
计算机控制系统是在自动控制技术和计算机技术发展的基础上产生的。
计算机控制系统就是利用计算机来实现生产过程自动控制的技术。
计算机控制技术在生活中和国民生产中有着广泛的应用,生活中随处可见的智能灯具设计和控制、照明色彩合理搭配、智能电子广告的设计和应用等,计算机控制技术体现着越来越重要的作用,在生活中随处可见。
其在工业生产中的应用更为重要,体统的控制,工业过程的控制,计算机软件通过计算机硬件的接口对加工刀具进行控制,发展趋势就是全面的自动控制。
计算机控制系统主要由计算机和生产过程两大部分组成。
工业控制机试之按生产过程控制的特点和要求而设计的计算机,它包括硬件和软件两个部分。
生产过程包括被控对象和测量便送、执行机构、电气开关等装置。
计算机引入控制领域是60年代。
这种系统的
调节器主要是采用模拟调节器。
系统中既有计算机又有调节器,系统复杂,投资又大,这种系统称为计算机监控系统。
在60年代末期出现了用一台计算机直接控制一个机组或一个车间的控制系统,简称集中控制系统,集中控制系统在计算机控制系统的发展过程中起到了积极作用。
在这种控制系统中,计算机不但完成操作处理,还可直接根据给定值、过程变量和过程中其它的测量值,通过PID运算,实现对执行机构的控制。
这种控制系统是直接数字控制系统,简称DDC(统。
DDC控制的基本思想是使用一台计算机代替若干个调节控制回路功能。
最初发展时希望能够至少可以控制50个回路以上,这在当时对小规
模、自动化程度不高的系统,特别是对具有大量顺序控制和逻辑判断操作的控制系统来说收到了良好的效果。
《计算机控制技术基础》课程设计任务书
一、课程设计目的
通过对一个实用计算机控制系统的设计,培养学生综合运用所学理论知识,理论联系实际、分析解决实际问题的初步应用能力。
提高学生的工程认知和初步实践能力,获得控制技术工程的基本训练。
通过课程设计,加深学生对计算机控制技术的认识和实际应用,使学生从整体上了解计算机控制系统的工作原理、设计原则,掌握计算机控制系统的结构、
组成和整体设计方法和步骤,编程调试,为将来将计算机控制技术应用到生产过程打下基础。
二、课程设计任务
以常用计算机如工业控制计算机、PLC或单片机为主控制器进行设计,进行系统总体方案的设计、论证和选择;系统硬件设计和软件设计,字数不少于3000字。
1、根据选做题目自行确定控制要求和控制精度,如:
若选定温度控制系统设计需确定温度控制范围和控制精度等。
2、软件设计方案及要求
分析被控参数特性、数学模型,确定控制规律及方法(控制规律和方法包括:
PID算
法、最小拍、达林算法等。
要求利用MATLAB进行仿真研究,分析并给出被控变量,偏差和控制器输出波形图,详细说明PID控制算法参数整定过程);
3、硬件设计方案及主要器件详细选型,完成选型分析和计算,指明供货厂商、产品具体型号、技术参数等。
绘制计算机控制系统硬件框图,并根据以上器件选型,画出模拟量输入、输出通道电路接口线路原理接线图或系统结构图。
主要器件包括:
工业计算机主机、输入通道(传感器、变送器、A/D模块等)输出通
道(D/A模块或模板、执行机构等)等器件。
提示:
硬件选型可在相应产品商家网站上或技术论坛搜索获取资料进行器件或模板选型。
三、设计题目和内容
设计一个针对大纯时延一阶惯性对象(G(s)=——-)的计算机控制系统Ts1
具体内容:
1)自己设定系统性能指标,对象传函,以及系统的闭环传递函数的表达式。
(比如:
加热
120eq0062s
炉温度控制系统,广义对象传递函数为G(s)=9e,要求测量范围-50C〜
0.0124s1
、……八、…—Ke-s
200C,测量精度0.5%,分辨率02C);或电阻加热炉温度控制对象模型:
G(s)=,
Ts1
K=50,T=30s,乎10s,电阻加热炉功率800w,220v交流供电。
控温范围:
50c〜350C;
保温阶段控制精度:
土1C)
2)选择一种控制算法,设计出D(z)。
建议先用PID进行调节,设计出的控制算法进行比较。
(由于控制对象的纯时延特性常导致控制系统的稳定性降低,过渡过程特性变坏。
有资料指出,当对象的纯延迟时间与对象惯性时间常数Tm之比大于等于0.5时,采用常
规PID算法难以获得良好的系统性能,因此考虑采用达林算法。
)
3)硬件设计方案及主要器件详细选型:
绘制计算机控制系统硬件框图,主要器件包括:
工业计算机主机、输入通道(传感器、变送器、A/D模块等)输出通道(D/A模块或模
板、执行机构等)等器件,并根据以上器件选型,指明供货厂商、产品具体型号、技术参数等。
提示:
硬件选型可在相应产品商家网站上或技术论坛搜索获取资料进行器件或模板选型。
4)软件设计方案及要求:
分析被控参数特性、数学模型,确定控制规律及方法(控制规律和方法包括:
PID算法、最小拍、达林算法等。
要求利用MATLAB进行仿真研究,分析并给出被控变量,偏差和控制器在单位阶跃和单位速度输入下的输出波形图,详细说明PID控制算法参数整定过程);
摘要6
第一章电阻炉温度控制系统的控制要求和总体控制方案7
1.1系统的描述与分析7
1.2方案的比较和确定8
第二章系统硬件设计8
2.1总体设计8
2.2温度检测电路11
2.3温度控制电路12
2.4人机对话电路13
第三章电阻炉温度系统软件设计16
3.1控制算法的确定16
3.2数学模型的建立16
3.3基MATLA防真被控对象18
第四章总结20
参考文献21
设计说明书
摘要
随着科学技术的迅猛发展,各个领域对温度控制系统的精度、稳定性等要求越来越高,控制系统也千变万化。
电阻炉广泛应用于各行各业,其温度控制通常采用模拟或数字调
节仪表进行调节,但存在着某些固有的缺点。
而采用单片机进行炉温控制,可大大地提高控制质量和自动化水平,具有良好的经济效益和推广价值。
本设计以89C51单片机为核心控制器件,以ADC0809作为A/D转换器件,采用闭环直接数字控制算法,通过控制可控硅来控制热电阻,进而控制电炉温度,最终设计了一个满足要求的电阻炉微型计算机温度控制系统。
设计对象:
电阻炉温度控制系统
关键字:
电阻炉89C51单片机温度控制A/D转换
电阻炉温度控制系统
第一章电阻炉温度控制系统的控制要求和总体控制方案
1.1系统的描述与分析
1.1.1系统的介绍
该系统的被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。
可控硅控制器输入为0~5伏时对应电炉温度0~500C,温度传感器测量值对应也为0~5伏,对象的特性为带有纯滞后环节的一阶惯性系统,这里惯性时间常数取「=30秒,滞后时间常数取l10
秒。
该系统利用单片机可以方便地实现对PID参数的选择与设定,实现工业过程中PID控制。
它采用温度传感器热电偶将检测到的实际炉温进行A/D转换,再送入计算机中,与设定值进行比较,得出偏差。
对此偏差按PID规律进行调整,得出对应的控制量来控制驱动电路,调节电炉的加热功率,从而实现对炉温的控制。
利用单片机实现温度智能控制,能自动完成数据采集、处理、转换、并进行PID控制和键盘终端处理(各参数数值的修正)及显示。
在设计中应该注意,采样周期不能太短,否则会使调节过程过于频繁,这样,不但执行机构不能反应,而且计算机的利用率也大为降低;采样周期不能太长,否则会使
干扰无法及时消除,使调节品质下降。
1.1.2技术指标
设计一个基于闭环直接数字控制算法的电阻炉温度控制系统具体化技术指标如下:
1.电阻炉温度控制在0~500C;
2.加热过程中恒温控制,误差为±2C;
3.LED实时显示系统温度,用键盘输入温度,精度为1C;
4.采用直接数字控制算法,要求误差小,平稳性好;
5.温度超出预置温度士5c时发出报警。
1.2方案的比较和确定
系统采用8031作为系统的微处理器。
温度信号由热电偶检测后转换为电信号经过预
处理(放大)送到A/D转换器,转换后的数字信号再送到8031内部进行判断或计算。
从而输出的控制信号来控制锅炉是否加热。
但对于8031来说,其内部只有128个字节的RAM,没有程序存储器,并且系统的程序很多,要完成键盘、显示等功能就必须对8031进行存
储器扩展和I/O口扩展,并且需要容量较大的程序存储器,外扩时占用的I/O口较多,使系统的设计复杂化。
系统采用89C51作为系统的微处理器来完成对炉温的控制和键盘显示功能。
8051片内
除了128KB的RAM外,片内又集成了4KB的ROM作为程序存储器,是一个程序不超过4K字节的小系统。
系统程序较多时,只需要外扩一个容量较小的程序存储器,占用的I/O口减少,同时也为键盘、显示等功能的设计提供了硬件资源,简化了设计,降低了成本。
因此89C51可以完成设计要求。
综上所述的二种方案,该设计选用方案二比较合适。
第二章系统硬件设计
2.1总体设计
系统的硬件包括微控制器部分(主机)、温度检测、温度控制、人机对话(键盘/显示/报警)4个主要部分,系统的结构框图如图4-1所示。
系统程序采用模块化设计方法,程序有主程序、中断服务子程序和各功能模块程序组
成,各功能模块可直接调用。
图4-1系统结构框图
该部分电路主要包括89C51主程序的工作情况,主程序完成系统的初始化,温度预置及其合法性检测。
预置温度的显示及定时器T0的初始化设置等。
T0中断服务程序是温度控制体系的主体,用于温度检测、控制和报警。
主程序和中断服务子程序的流程图如图4-2所示。
主程序如下:
TEMP1EQU50H
TEMP2EQUTEMQ1+1
ST1EQU52H
ST2EQU53H
T100EQU54H
T10EQUT100+1
TEQUT100+2
BT1EQU57H
BT2EQUBT1+1
ADIN0EQU7FF8H
F0BITPSW.5
;当前检测温度(高位)
;当前检测温度(低位)
;预置温度(高位)
;预置温度(低位)
;温度BCD码显示缓冲区(百位);温度BCD码显示缓冲区(十位);温度BCD码显示缓冲区(个位);温度二进制码显示缓冲区(高位);温度二进制码显示缓冲区(低位)
;ADC0809通道IN0的端口地址
;报警允许标志
TEMP1DB00H,00H,00H,00H,00H,00H,00H,
00H;50H~58H单元初始化G青零)
ORG0000H
AJMPMAIN
ORG00BH
AJMPPT0
;转T0中断服务子程序
ORG0030H
MAIN:
MOVSP,#59H
CLRF0
MOVTMOD,#01H
MOVTL0,#0B0H
MOVTH0,#3CH
MOVR7,#150
SETBET0
SETBEA
SETBTRO
MAIN1:
ACALLKIN
ACALLDISP
SJMPMAIN1
定时器0中断服务子程序PT0:
PT0:
MOVTL0,#0BOH
MOVTH0,#3CH
DJNZR7,BACK
MOVR7,#150
ACALLTIN
MOVBT1,TEMP1
MOVBT0,TEMP0
ACALLDISP
ACALLCONT
ACALLALARM
BACK:
RETI
;设堆栈标志
;报警标志清零
;定时器0初始化(方式1)
;定时器100ms定时常数
;置15s软计数器初值
;允许定时器0中断
;开中断
;启动定时器0
;调键盘管理子程序
;调用显示子程序
;重置定时器0初值
;15s到否,不到返回
;重置软计数器初值
;温度检测
;当前温度送到显示缓冲区
;显示当前温度
;温度控制
;温度越限报警
开始
俣护现场
开始
重置定时器。
初值
定义堆栈区
软定时器减1
1见到?
开定时器中断。
重置软定时器口初值
调用键盘管理子程序
调用温度检测子程序
当前温度送显示蝮冲区
调用显示子程序
调用显示子程序
调用温度控制子程序
调用报警子程序
中断返回
11
2.2温度检测电路
定时器以软定时器各数据畿冲区各标志位初始化
计算机控制技术课程设计-过控1301班-段颉顽-2013003019
WZB-003的铝热电阻,可满足本系统0〜500c测量范围的要求。
变送器将电阻信号转换成与温度成正比的电压,当温度在0〜500c时变送器输出0〜4.9v左右的电压。
A/D转换可采用ADC0809进行,亦可采用单片机内部A/D功能进行。
电路设计好后调整变送器的输出,使0〜500c的温度变化对应于0〜4.9v的输出,则A/D转换对应的数字量位00H〜FAH,即0〜250,转换结果乘以2正好是温度值。
用这种方法一方面可以减少标度变换的工作量,另一方面还可以避免标度变换带来的计算误差。
本设计A/D转换采用查询方式(由P1.4查询ADC0809的ECO转换结束信号)。
为提高采样的可靠性,对采样温度进行数字滤波。
数字滤波的方法很多,这里采用4次采样取
平均值的方法。
因此,4次采样的数字量之和除以2就是检测的当前温度。
温度检测子程序流程图如图4-3所示。
图4-3温度检测子程序流程图
2.3温度控制电路
控制电路采用可控硅来实现,双向可控硅SCR和电路电阻丝串接在交流220V市电回路中,单片机信号通过光电隔离器和驱动电路送到可控硅的控制端,由端口的高低电平来控制可控硅的导通与断开,从而控制电阻丝的通电加热时间。
将当前温度与预置温度比较,当前温度小于预置温度时,继电器闭合,接通电阻丝加热;当前温度大于预置温度时,继电器断开,停止加热;当二者相等时电路保持原来状态;当温度降低到比预置温度低2c时,再重新启动加热;当前温度超出报警上下限时将启动报警,并停止加热。
由于电炉加热时,当前温度有可能低于报警下限,为防止误报,在未达到预置温度时,不允许报警,为此设置了报警允许标志位F0。
温度控制模块流程图见图
4-4。
图4-4温度控制模块流程图
2.4人机对话电路
2.4.1键盘管理
为使系统简单紧凑,键盘只设置四个功能键,分别是“启动键”、“百位”、“十位”和
“个位”。
由P1口低四位作为键盘接口。
利用数字键可以分别对预置温度的百位、十位和
个位进行0~500c的温度设置。
程序设有预置温度合法检测报警,当预置温度超过500c
时会报警并且将温度设为500Co键盘管理子程序流程图如图4-5所示。
图4-5键盘管理子程序流程图
2.4.2数码显示
本系统设有3位LED数码显示器,用于显示电阻炉的设定温度和实际温度。
采用串行
口扩展的静态显示电路作为显示接口电路。
显示子程序DISP如下:
DISP:
ACALLHTB
MOVSCON,#00H
MOVR2,#03H
MOVR0,#T100
LD:
MOVDPTR,#TAB
MOVA,@R0
MOVCA,@A+DPTR
;调用将显示数据转换成BCM的子程序HTB
;置用行口为方式0
;显示位数送R2
;显示缓冲区首地址送R0
;指向字符码表首地址
;取出显示数据
;查表
MOVSBUF,A
WAITJBCTI,NEXT
SJMPWAIT
NEXTINCR0
DJNZR2,LD
RET
;字符码送审行口
;发送结束转下一个数据并清除中断标志
;发送未完等待
;修改显示缓冲区指针
;判断3位显不完否,未完继续
TAB
2.4.3报警
报警功能由蜂鸣器实现,当由于意外因素导致电阻炉温度高于设置温度时,单片机驱动蜂鸣器鸣叫报警。
报警上限温度值为预置温度+5C,即当前温度上升到高于预置温度+5C时报警,并停止加热;报警下限温度值设为预置温度-5C,即当前温度下降到低于预
图4-6报警子程序流程图
置温度-5C,且报警允许时报警,这是为了防止开始从较低温度加温时误报警。
报警的同时也关闭电电炉。
图4-6为报警子程序流程图。
第三章电阻炉温度系统软件设计
3.1控制算法的确定
3.2数学模型的建立
具有一阶惯性纯滞后特性的电阻炉系统,其数学模型可表示为:
(2-1)
_Ke
G(s)二
T〔s1
在PID调节中,比例控制能迅速反应误差,从而减小误差,但比例控制不能消除稳态误差,Kp的加大,会引起系统的不稳定;积分控制的作用是:
只要系统存在误差,积分控制作用就不断地积累,输出控制量以消除误差,因而,只要有足够的时间,积分控制将能完全消除误差,积分作用太强会使系统超调加大,甚至使系统出现振荡;微分控制可以使减小超调量,克服振荡,提高系统的稳定性,同时加快系统的动态响应速度,减小调整时问,从而改善系统的动态性能。
将P、I、D三种调节规律结合在一起,可以使系统既快速敏捷,又平稳准确,只要三者强度配合适当,便可获得满意的调节效果。
模拟PID控制规律为:
1tde(t)
u(t)=Kp[e(t)+—fe(t)dt+Td+](2-2)
TI0dt
式中:
e(t)=r(t)—y(t)称为偏差值,可作为温度调节器的输入信号,其中r(t)为给定值,y(t)为被测变量值;Kp为比例系数;T为积分时间常数;Td为微分时间常数;u⑴为调节器的输出控制电压信号。
因为计算机只能处理数字信号,故上述数字方程式必须加以变换。
设采样周期为T,第k次采样得到的输入偏差为e(k),调节器的输出为u(k),作如下近似:
誓走Wk")(用差分代替微分)t2E—
J0e(t)dt总£Te(i)(用求和代替积分)
这样,式(2-2)便可改写为:
u(k)=Kp[e(k)+?
!
kTeO+TD-k)-;"1)](2-3)
Tid:
t
其中,u(k)为调节器第k次输出值;e(k)、e(k-1)分别为第k次和第k-1次采样时刻的偏差值。
由式可知:
u(k)是全量值输出,每次的输出值都与执行机构的位置一一对应,所以称之为位置型PID算法。
在这种位置型控制算法中,由于算式中存在累加项,而且输出的控制量不仅与本次偏差有关,还与过去历次采样偏差有关,使得产生大幅度变化,
这样会引起系统冲击,甚至造成事故。
所以在实际中当执行机构需要的不是控制量的绝对值,而是其增量时,可采用增量型PID算法。
当控制系统中的执行器为步进电机、电动调节阀、多圈电位器等具有保持历史位置的功能的这类装置时,一般均采用增量型PID控制
算法。
与位置算法相比,增量型PID算法有如下优点:
(1)位置型算式每次输出与整个过程状态享有关,计算式中要用到过去偏差的累加值,容易产生较大的累积计算误差;而在增量型算式中由于消去了积分项,从而可消除调节器的积分饱和,在精度不足时,计算误差对控制量的影响较小,容易取得较好的控制效果。
(2)为实现手动一自动无忧切换,在切换瞬时,计算机的输出值应设置为原始阀门
开度,若采用增量型算法,其输出对应与阀门位置的变化部分,即算式中不出现项,所
以易于实现从手动到自动得的无忧动切换。
(3)采用增量型算法时所用的执行器本身都具有寄存作用,所以即使计算机发生故障,执行器仍能保持在原位,不会对生产造成恶劣影响。
正因为具有上述优点,在实际控制中,增量型算法要比位置算法应用更加广泛。
利用位置型PID控制算法,可得到增量型PID控制算法的递推形式为:
△u(k)=K[e(k)-e(k1)?
Ke(kbK[e(k)2ek+1)ek(2-4)式中,Kp为比例增益;Ki=KpT”为积分系数;Kd=KpTd/T为微分系数。
为了编程方便,可将式(2-4)整理成如下形式:
△u(k)=q0e(k)+q1e(k-1)+q2e(k-2)(2-5)
式中:
q0=Kp(1+T+争
TIT
q=-Kp(1+2专)
q2=Kp,
3.3基MATLA昉真被控对象
采用matlab仿真,通过matlab模块实现积分分离PID控制算示。
设采样时间Ts=10s,被控对象为:
G(s)=
」0s
e
130s
matlab仿真图如图5-1所示。
图5-1matlab仿真图
选择合适的Kp,Ki,Kd是系统的仿真效果趋于理想状态。
MATLAB编写程序如下:
clearall;
closeall;
ts=4;
sys=tf([1],[30,1],'inputdelay',10);
dsys=c2d(sys,ts,'zoh');
[num,den]=tfdata(dsys,'v');
kp=13;
ki=0.4;
kd=0.2;
MATLAB仿真波形如图5-2所示。
课程设计是对我们在这学期学到的微型计算机控制技术这门课的理论知识的一个综合测评,是对我们将理论结合时间的综合能力的考查,是培养我们发现问题、解决问题的能力,是激发我们内在创新意识的途径。
在此次课程设计中,我们学到了许多平时课堂上学不到的东西,比如:
单片机系统的开发与可行性分析、电炉的设计与制作、器件的选型、程序的设计与调试、系统的调试以及平时没有接触到的在线编程与相关软件等等。
在设计过程中我遇到了许多难以解决的问题,通过去图书馆看书、上网查资料以及请教同学,努力最终一步一步得以解决。
通过这次课程设计,不仅锻炼了我的动手能力,更培养了我发现问题、解决问题的能力,巩固了我以前学过的专业知识,促进了我的自学能力。
通过本次设计,我还了解了微机控制中DDCM法的基本概念及其对系统设计的相关应用。
什么样的课程设计都离不开理论与实际相结合的真理,设计过程中的方案选择和参数设定使我进一步深刻认识到算法的控制对整个系统的重要作用。
一个细小的参数设定出现偏差,可能导致最后的性能指标不和标准。
所以选择一个优良的方案对于实验至关重要。
参考文献
[1]吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用.北京1青华大学出版社,2000.
[2]李建忠.单片机原理及应用.西安:
西安电子科技大学出版社,2001.
[3]潘新民,王燕芳.微型计算机控制技术.北京:
高等教育出版社,2001.
[4]何立民.单片机应用系统设计.北京:
北京航空航天大学出版社,2000.
[5]韩志军,沈晋源,王振波.单片机应用系统设计.北京:
机械工业出版社,2005.
[6]宋书中.自动化技术工程设计实践.武汉:
武汉理工大学出版社,2004.
□周航慈.单片机程序设计基础.北京:
北京航空航天大学出版社,2000.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 基础 课程设计