计算机控制技术课程设计基于某PID-电阻炉温度控制系统.doc
《计算机控制技术课程设计基于某PID-电阻炉温度控制系统.doc》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计基于某PID-电阻炉温度控制系统.doc(15页珍藏版)》请在课桌文档上搜索。
1、word基于Smith-PID电阻炉温度控制系统一、课程设计(综合实验)的目的与要求设计目的用SMITH-PID控制器控制电阻炉。避免因为延时过大造成的控制误差过大设计要求设计一个基于闭环直接数字控制算法的电阻炉温度控制系统具体化技术指标如下:1.电阻炉温度控制在0500;2. 加热过程中恒温控制,误差为2;3. LED实时显示系统温度,用键盘输入温度,精度为1;4. 采用Smith-PID数字控制算法,要求误差小,平稳性好;5. 温度超出预置温度5时发出报警。2方案设计本系统是一个典型的温度闭环控制系统,需要完成的功能是温度设定、检测与显示以及温度控制、报警等。温度的设定和显示功能可以通过键
2、盘和显示电路部分完成;温度检测可以通过热电阻、热电偶或集成温度传感器等器件完成;温度超限报警可以利用蜂鸣器等实现;温度控制可以采用可控硅电路实现。系统采用89C51作为系统的微处理器来完成对炉温的控制和键盘显示功能。8051片除了128KB的RAM外,片又集成了4KB的ROM作为程序存储器,是一个程序不超过4K字节的小系统。系统程序较多时,只需要外扩一个容量较小的程序存储器,占用的I/O口减少,同时也为键盘、显示等功能的设计提供了硬件资源,简化了设计,降低了成本。因此89C51可以完成设计要求。系统建模和数字控制器的设计PID调节是连续系统术最成熟的、应用最广泛的一种控制算方法。它结构灵活,不
3、仅可以用常规的PID调节,而且可以根据系统的要求,采用各种PID的变型,如PI、PD控制及改进的PID控制等。它具有许多特点,如不需要求出数学模型、控制效果好等,特别是在微机控制系统中,对于时间常数比较大的被控制对象来说,数字PID完全可以代替模拟PID调节器,应用更加灵活,使用性更强。所以该系统采用PID控制算法。系统的结构框图如图3-1所示:3.2数字控制器的设计具有一阶惯性纯滞后特性的电阻炉系统,其数学模型可表示为:采用离散Smith预估控制系统。该系统框图如下设包括零阶保持器在的广义被控对象传递函数为式中:T为采样周期,并设m=(取整数)。纯滞后补偿器的传递函数为采用由传递函数直接求差
4、分方程式的方法进行计算,其步骤如下。(1) 计算外反馈回路偏差e1(n),即式中:y(n)为被控量第n次采样时的数值;R(n)为给定值,在定值控制系统中为常数。(2) 计算纯滞后补偿器的输出y1(n),即化为微分方程式,则可写成:用差分代替微分,则有在计算第n次采样的z(n)值时,p(n)尚未计算,因而用p(n-1)和p(n-2)代替p(n)和p(n-1)。经移项整理后得其中;纯滞后补偿器的输出为(3) 计算反馈回路偏差e2(n),即(4) 计算数字控制器输出p(n),控制器采用PID控制规律,则式中:为控制器的比例系数;为积分系数,;为微分系数,。P(n)即为计算机的控制输出,用以控制执行机
5、构的信号。若有需要还可用此p(n)重新计算z(n),作为下一个采样周期的z(n-1)值。返回 z(n)z(n-m)z(n-1)z(n-m-1)P(n)P(n-1)P(n-1)P(n-2) P1(n)P1(n-1) 重算z(n)计算p(n)数字滤波输出P1(n)Pmp1(n)P1(n)Pm计算p1(n)计算e2(n)计算y1(n)计算z(n)计算e1(n)有效性检查读入y1(n)Smith预估补偿控制程序流程框图如下3、 硬件设计 系统的硬件电路包括微控制器部分(主机)、温度检测、温度控制、人机对话(键盘/显示/报警)4个主要部分温度检测部分1. 本次设计采用的是89C51单片机人机对话部分89
6、C51热电阻变送器A/D转换器温度显示键盘温度控制部分电炉可控硅调功器驱动器光耦声音报警 电热阻控制系统结构框图 2.温度检测电路。温度检测电路包括温度传感器、变送器和A/D转换器三部分。温度传感器和变送器的类型选择与被控温度的围及精度等级有关。型号为WZB-003的铂热电阻适合于0500的温度测量围,可以满足本系统的要求。变送器将电阻信号转换成与温度成正比的电压,当温度在0500时变送器输出04.9V左右的电压。 A/D转换器件的选择主要取决于温度的控制精度。本系统要求温度控制误差,采用8位A/D转换器,其最大量化误差为,能够满足精度要求。因此,本系统采用ADC0809作为A/D转换器。电路
7、设计好后,调整变送器的输出,使的温度变化能对应于04.9V的输出,则A/D转换对应的数字量为00HFAH,即0250,转换结果乘以2正好是温度值。用这种方法一方面可以减少标度变换的工作量,另一方面还可以避免标度变换带来的计算误差, 3.温度控制电路。控制电路采用可控硅来实现,双向可控硅SCR和电炉电阻丝串接在交流220V的电回路中,单片机P1.7口的信号通过光电隔离器和驱动电路送到可控硅的控制端,由P1.7口的高低电平来控制可控硅的导通与断开,从而控制电阻丝的通电加热时间。 4.人机对话电路。这部分包括键盘、显示和报警三部分电路。本系统设有3位LED数码显示器,用于显示电阻炉的设定温度和实际温
8、度。采用串行口扩展的静态显示电路作为显示接口电路。为使系统简单紧凑,键盘只设置3个功能键,分别是“百位”、“十位”和“个位”键,由P1口低3位作为键盘接口。利用数字键可以分别对预置温度的百位、十位和个位进行的温度设置,并在LED上显示当前设置值。另外,还设置了系统复位键。5. 报警功能由蜂鸣器实现。当由于意外因素导致电阻炉温度高于设置温度时,P1.6口送出低电平经反相器驱动蜂鸣器鸣叫报警。4、 软件设计系统的操作过程和工作过程在程序的设计过程中起着很重要的指导作用,因此在软件设计之前应首先分析电阻炉的工作原理。1. 工作流程 电阻炉在上电复位后先处于停止加热状态,这时可以用数字键设定预置温度并
9、显示出来;温度设定后,就可以按启动键启动系统工作。温度检测系统不断定时检测当前温度,并送往显示器显示,达到预定值后停止加热并显示当前温度;当温度下降到下限时再启动加热。这样不断重复上述过程,使温度保持在预定温度围之。启动后可以修改预置温度。2.功能模块根据对工作流程的分析,系统软件可以分为以下几个功能模块:(1) 键盘管理。实现键盘扫描与处理功能,接收温度预置,启动系统工作。(2) 显示。显示设置温度及当前温度。(3) 温度检测及温度值变换。实现A/D转换及数字滤波功能。(4) 温度控制。根据检测到的温度控制电炉的工作状态。(5) 报警。当预置温度或当前检测的炉温越限时,输出报警信号。3.资源
10、分配在编程前,首先要对89C51的资源进行分配。它包括显示单元(6位)、预置温度单元(2位)、当前检测温度(2位)、BCD码显示缓冲区(3位)、二进制码显示缓冲区(3位)、报警允许标志、堆栈区等。然后,还需要对键盘输入和报警、控制电路的端口地址进行分配。地址功能名称初始化值50H51H当前检测温度,高位在前TEMP1TEMP000H52H53H预置温度,高位在前ST1ST000H54H56H温度BCD码显示缓冲区(百位、十位、个位)T100,T10,T00H57H58H二进制显示缓冲区,高位在前BT1,BT000H59H7FH堆栈区PSW.5报警允许标志F0=0时禁止报警;F0=1时允许报警F
11、OO单片机89C51存的资源分配可以利用伪指令进行定义。数据存储器的分配与定义如下表。P1.0P1.3为键盘输入接口,P1.6和P1.7分别为报警控制和电路控制接口。ADC0809输入通道INOIN7的地址为7FF8H7FFFH,本系统使用IN0通道。4. 程序总体结构设计 系统程序设计采用模块化设计方法,程序由主程序、中断服务子程序和各功能模块程序等组成,各功能模块可直接调用。主程序完成系统的初始化、温度预置及其合法性检测、预置温度的显示及定时器T0的初始化设置等。T0中断服务程序是温度控制体系的主体,用于温度检测、控制和报警(包括启动A/D转换、读入采样数据、数字滤波、越限温度报警和越限处
12、理、输出可控硅的控制脉冲等)。中断由T0产生,根据需要每隔15S中断一次,即每15S采样控制一次。由于系统采用6MHZ晶振,最大定时为130ms,为实现15S定时,另行设计了一个软件计数器。主程序和中断服务子程序如下。TEMP1 EQU 50H ;当前检测温度(高位)TEMP2 EQU 51H ;当前检测温度(低位)ST1 EQU 52H ;预置温度(高位)ST1 EQU 53H ;预置温度(低位)T100 EQU 54H ;温度BCD码显示缓冲区(百位)T10 EQU 55H ;温度BCD码显示缓冲区(十位)T1 EQU 56H ;温度BCD码显示缓冲区(个位)BT1 EQU 57H ;温度
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 课程设计 基于 PID 电阻炉 温度 控制系统
链接地址:https://www.desk33.com/p-8335.html