1目录摘要…………………………………………………………………第1章任务要求和方案设计……………………………………1.1任务要求………………………………………………………2.1总体方案确定及元件选择……………………………………..2.1.1总体设计框图………………………………………………2.1.2控制方案确定………………………………...……………2.1.3系统组成………………………………………………2.1.4单片机系统………………………………………..2.1.15D/A转换...........................................................................2.1.5晶闸管控制………………………………………...2.1.6传感器………………………………………………2.1.7信号放大电路……………………………………….2.1.8A/D转换…………………………………………….2.1.9设定温度及显示…………………………………….第2章系统硬件设计……………………….…………………2.1系统硬件框图……………………………………………2.2系统组成部分之间接线分析……………………………第3章系统软件设计………………………………………….3.1程序流程图..…………………………………..……………第4章参数计算……………………………..………………...4.1系统各模块设计及参数计算4.1.1、温度采集部分及转换部分24.1.2、传感器输出信号放大电路部分:...........................4.1.3、模数转换电路部分:............................4.1.4、ADC0804芯片外围电路的设计:.......................4.1.5、数值处理部分及显示部分:.............................4.1.6、PID算法的介绍....................................:4.1.7、A/D转换模块..........................................4.1.7、A/D转换模块...................................4.1.8单片机基本系统调试...............................4.1.9注意事项:................................................................第5章测试方法和测试结果5.1系统测试仪器及设备5.2测试方法5.3测试结果结束语...........................................参考文献.…………………………………….……….……………3摘要随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和控制。采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。本系统以AT89C51,AT89C2051单片机为核心,主要包括传感器温度采集,A/D模/数转换,单片机控制,数码管数字显示等部分。本系统采用PID算法实现温度控制功能,通过串行通信完成两片单片机信息的交互而实现温度设定、控制和显示。为了实现高精度的水温控制,本单片机系统采用PID算法控制和PWM脉宽调制相结合的技术,通过控制双向可控硅改变电炉和电源的接通、断开,从而改变水温加热时间的方法来实现对水温的控制。本系统由键盘显示和温度控制两个模块组成,通过模块间的通信完成温度设定、实温显示、水温升降等功能。具有电路结构简单、程序简短、系统可靠性高、操作简便等特点。4第1章任务要求及设计方案1.1基本要求1.1.1基本要求:一升净水由1kw的电炉加热,要求水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调整,以保持设定的温度基本不变。1.1.2.指标:本课题是设计一个控制一升净水,加热器用一千瓦的电炉温度设定范围在40-90℃,最小区分度为1℃,温度控制的静态误差小于等于1℃。(2)环境温度降低时温度控制的静态误差≤1℃。用十进制数码管显示水的实际温度。当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量。2.1设计方案2.1.1总体方案的确定本课题的总体方案设计框图如下:32..1.2控制方法选择一般来说可以采用以下几种控制方案:(1)输出开关量控制:这种方法通过比较给定值与被控参数的偏差来控制输出的状态:开关或者通断,因此控制过程十分简单,也容易实现。但由于输出控制量只有两种状态,使被控参数在两个方向上变化的速率均为最大,因此容易硬气反馈回路产生振荡,单片机控制控制电路被控对象采样电路输入量5对自动控制系统会产生十分不利的影响,甚至会因为输出开关的频繁动作而不能满足系统对控制精度的要求。因此,这种控制方案一般在大惯性系统对控制精度和动态特性要求不高的情况下采用。(2)比例积分加微分控制(PID控制)比例积分加微分控制的特点是微分的作用使控制器的输出与偏差变化的速度成正比例,它对克服对象的容量滞后有显著的效果。在比例基础上加上微分作用,使稳定性提高,再加上积分作用,可以消除余差。因此,PID控制适用于负荷变化大、容量滞后较大、控制品质要求又很高的控制系统。结合本例题设计任务与要求,由于水温系统的传递函数事先难以精确获得,因而很难判断哪一种控制方法能够满足系统对控制品质的要求。但从以上对控制方法的分析来看,PID控制方法最适合本例采用。另一方面,由于可以采用单片机实现控制过程,无论采用上述哪一种控制方法都不会增加系统硬件成本,而只需对软件作相应改变即可实现不同的控制方案。因此本系统可以采用PID的控制方式,以最大限度地满足系统对诸如控制精度、最小区分度、静态误差、等控制要求。2..1.3系统组成由于本课题是一个典型的检测、控制型应用系统,它要求系统完成从水温检测、信号处理、输入、运算到输出控制电炉加热功率以实现水温控制的全过程。因此,应以单片微型计算机为核心组成一个专用计算机应用系统,以满足检测、控制应用类型的功能要求。另外,单片机的使用也为实现水温的智能化控制以及提供完善的人机交互界面及多机通讯接口提供了可能,而这些功能在常规数字逻辑道路中往往是难以实现或无法实现的。所以,本例采用以单片机为核心的DDC(直接数字控制系统)。在本课题中,控制部分主要是单片机控制和控制电路。单片机控制是用单片机芯片来实现;控制电路部分是晶闸管电路来实现,执行部分的1KW的电炉,反馈部分是采用传感器技术。2.1.4单片机的选择AT89C2051、AT89C51单片机是最常用的单片机,是一种低损耗、高性能、CMOS八位微处理器。AT89C2051与MCS-51系列的单片机在指令系统和引脚上完全兼容,而且能使系统具有许多MCS-51系列产品没有的功能,功能强、灵活性高而且价格低廉。AT89S51可构成真正的单片机最小应用系统,缩小系统体积,增加系统的可靠性,降低了系统成本。只要程序长度小于4K,四个I/O口全部提供给拥护。系统运行中需要存放的中间变量较少,可不必再扩充外部RAM。2.1.6功率放大62.1.7传感器部分在本课题中,才用的传感器是AD590传感器。传感器可将温度量转换成电量进行检测,对温度的测量、控制以及对温度信号放大、变换等很方便。温度传感器种类较多。热电偶由于热电势较小,因而灵敏度较低;热敏电阻由于非线性而影响精度;铂电阻温度传感器由于成本高,在一般小系统中很少使用。AD590是美国AnalogDevices公司生产的二端式集成温度传感器,具有体积小、重量轻、线性度好、性能稳定等一系列优点。它的测温范围为-50~+155C,满刻度误差为0.3C,当电源电压在5~10V之间,稳定度为1%,误差只有0.01C,完全适用于本设计对水温测量的要求。另外AD590是温度——电流传感器,对于提高系统抗干扰能力也有很大帮助,因此本设计选用AD590作为温度传感器。综合上述及本课题的测温要求考虑,故选择选择热电偶传感器作为测温元件。2.1.8信号放大部分放大电路部分是利用具有放大特性的电子元件,如晶体三极管,三极管加上工作电压后,输入端的微小电流变化可以引起输出端较大电流的变化,输出端的变化要比输入端的变化大几倍到几百倍,这就是放大电路的基本原理2.1.9A/D转换ADC0809的IN0和放大电路输出端相连,故IN0上输入的0V-+5V范围的模拟电压经A/D转换后可由8031通过程序从P0口输入到它的内部RAM单元。首先输入地址选择信号,在ALE信号作用下,地址信号被锁存,产生译码信号,选中一路模拟量输入。然后输入启动转换控制信号START启动转换。转换结束,数据送三态缓冲锁存器,同时发出EOC信号。在允许输入信号OE的控制下,再将转换结果输入到外部数据总线。2.1.10设定温度及显示部分7第3章系统硬件设计2.1系统硬件框图此系统是一个典型的闭环控制系统,控制的目的的电炉的功率,通过单片机技术来控制晶闸管的特性,从而控制电压的大小,最终达到控制电炉的功率。此外,该系统还有反馈装置,通过传感器检测技术随时净水的温度,经过处理反馈到单片机控制部分并有显示部分显示。传感器电炉单片机基本系统信号放大A/D显示及设定功率放大82.2系统组成部分接线分析2.2.1反馈部分反馈部分是由;传感器到放大电路到A/D再到单片机,其接线图如下:以AT89C51单片机为控制核心,采集到温度,经放大,AD转换后送单片机处理,再通过串行口发送到显示模块因为考虑到PID运算时需要调用浮点数运算程序库,程序需要占用很大的存储空间,8051内部的能满足此要求,所以不需要扩展外部ROM,系统中运行中需要存放的中间变量只有给定温度和实测,PID运算中间结果及输出结果等十几个变量.因而8051片内的RAM能够满足要求,可不必再扩展。2.2.2显示部分显示部分是单片机与键盘及显示之间的接口线路,分为数字显示和报警两部分,其接线图如下:9键盘显示电路102.2.3控制部分11将前述各单元电路连接起来,可构成完整的系统硬件电路图。在这控制过程中,控制电路中的功率放大是用可控硅来实现。双向可控硅管和加热丝串联接在交流220V,50Hz交流试点回路。在给定的周期T内,8031只要改变可控硅管的接通时间便可改变加热丝功率,以达到调节温度的目的。可控硅管在给定周期T内具有不同接通时间的情况。显然,可控硅在给定周期T的100%时间内接通的功率最大。如下图所示:可控硅接通时间可以通过可控硅控制板上控制脉冲控制。该触发脉冲由8031用软件在P1.3引脚上产生,受过零同步脉冲后经光偶管和驱动器输送到可控硅的控制极上。通常,电阻炉炉温控制采用偏差控制法。偏差控制的原理是先求出史册炉温对所需炉温的偏差值,然后对偏差值处理而获得控制信号去调节电阻炉的假热功率,以实现对电阻炉的炉温控制。12第3章系统软件设计系统软件由主程序、键盘扫描、LED显示、串行口中断组成。由于本模块就进行键盘与显示任务,且键盘扫描与LED扫描是用同个74LS138来完成,可以将程序精简,即把键盘和显示的程序合在一起放在主程序里。(1)初始化。设定可编程芯片的工作方式,对内存中的工作参数区进行初始化,显示系统初始状态。(2)读温度程序.通过DS18B20的侧温.(3)调用PID算法子程序通过键盘模块发送过来的数据,即给定值,和测量值进行计算,输出PWM波.对电炉的水温度进行控制.(4)返回初始化NYYNYNNY开始初始化P3.3、P3.4、P3.5=000消抖31H‘0’’P130H延时Flaga=1等待按键放开P3.2=0?P3.7=0?消抖等待按键放开Flaga=1?P3.3、P3.4、P3.5=001P131H延时Flagb=1?Flagb1’32H‘0’’Flagb0’…