1、- -MCS51单片机温度控制系统 在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反响炉和锅炉中的温度进展检测和控制。采用MCS-51单片机来对温度进展控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。本文以它为例进展介绍,希望能收到举一反三和触类旁通的效果。1硬件电路设计 以热电偶为检测元件的单片机温度控制
2、系统电路原理图如图1所示。 1.1 温度检测和变送器 温度检测元件和变送器的类型选择与被控温度的围和精度等级有关。镍铬/镍铝热电偶适用于0-1000的温度检测围,相应输出电压为0mV-41.32mV。 变送器由毫伏变送器和电流/电压变送器组成:毫伏变送器用于把热电偶输出的0mV-41.32mV变换成4mA-20mA的电流;电流/电压变送器用于把毫伏变送器输出的4mA-20mA电流变换成0-5V的电压。 为了提高测量精度,变送器可以进展零点迁移。例如:假设温度测量围为500-1000,那么热电偶输出为20.6mV-41.32mV,毫伏变送器零点迁移后输出4mA-20mA围电流。这样,采用8位A/
3、D转换器就可使量化温度到达1.96以。 1.2接口电路 接口电路采用MCS-51系列单片机8031,外围扩展并行接口8155,程序存储器EPROM2764,模数转换器ADC0809等芯片。 由图1可见,在P2.0=0和P2.1=0时,8155选中它部的RAM工作;在P2.0=1和P2.1=0时,8155选中它部的三个I/O端口工作。相应的地址分配为:0000H - 00FFH 8155部RAM0100H 命令/状态口0101H A 口0102H B 口0103H C 口0104H 定时器低8位口0105H 定时器高8位口 8155用作键盘/LED显示器接口电路。图2中键盘有30个按键,分成六行
4、L0-L5五列R0-R4,只要某键被按下,相应的行线和列线才会接通。图中30个按键分三类:一是数字键0-9,共10个;二是功能键18个;三是剩余两个键,可定义或设置成复位键等。为了减少硬件开销,提高系统可靠性和降低本钱,采用动态扫描显示。A口和所有LED的八段引线相连,各LED的控制端G和8155C口相连,故A口为字形口,C口为字位口,8031可以通过C口控制LED是否点亮,通过A口显示字符。图1 单片机温度控制系统电路原理图图2 8155用作键盘/LED显示器接口电路 2764是8K EPROM型器件。8031的PSEN和2764的OE相连,P2.5和CE相连,所以2764的地址空间为:00
5、00H-1FFFH,ADC0809的0通道IN0 其他输入端可作备用和变送器的输出端相连,所以从通道0IN0上输入的0V-+5V围的模拟电压经A/D转换后可由8031通过程序从P0口输入到它的部RAM单元,在P2.2=0和WR=0时,8031可使ALE和START变为高电平而启动ADC0809工作;在P2.2=0和RD=0时,8031可以从ADC0809接收A/D转换后的数字量。也就是说ADC0809可以视为8031的一个外部RAM单元,地址为03F8H地址重复围很大,因此,8031执行如下程序可以启动ADC0809工作。MOVDPTR,#03F8HMOVXDPTR,A假设8031执行以下程序
6、:MOVDPTR,#03F8HMOVXA,DPTR那么可以从ADC0809输入A/D转换后的数字量。1.3温度控制电路 8031对温度的控制是通过双向可控硅实现的。如图一所示,双向可控硅管和加热丝串接在交流220V、50Hz市电回路。在给定周期T,8031只要改变可控硅管的接通时间即可改变加热丝的功率,以到达调节温度的目的。 可控硅接通时间可以通过可控硅控制极上触发脉冲控制。该触发脉冲由8031用软件在P1.3引脚上产生,在过零同步脉冲同步后经光电耦合管和驱动器输出送到可控硅的控制极上。3. 温度控制的算法和程序框图图3 主程序框图 3.1温度控制算法 通常,电阻炉炉温控制都采用偏差控制法。偏
7、差控制的原理是先求出实测炉温对所需炉温的偏差值,然后对偏差值处理获得控制信号去调节电阻炉的加热功率,以实现对炉温的控制。在工业上,偏差控制又称PID控制,这是工业控制过程中应用最广泛的一种控制形式,一般都能收到令人满意的效果。 3.2温度控制程序框图 温度控制程序的设计应考虑如下:1键盘扫描、键码识别和温度显示;2炉温采样、数字滤波;3数据处理;4越限报警和处理;5PID计算、温度标度转换3.2.1主程序框图 主程序包括8031本身的初始化、并行接口8155初始化等等。大体说来,本程序包括设置有关标志、暂存单元和显示缓冲区清零、T0初始化、CPU开中断、温度显示和键盘扫描等程序。3.2.2中断
8、效劳程序框图 T0中断效劳程序是温度控制系统的主体程序,用于启动数/模转换器、读入采样数据、数字滤波、越限温度报警和越限处理、PID计算和输出可控硅的触发脉冲等。P1.3引脚上输出的该同步触发脉冲宽度由T1计数器的溢出中断控制,8031利用等待T1溢出中断的空闲时间形成P1.3输出脉冲顶宽完成把本次采样值转换成显示值而放入显示单元缓冲区和调用温度显示程序。8031从T1中断效劳程序返回后即可恢复现场和返回主程序。3.2.3主要子效劳程序框图 主要效劳子程序包括温度检测采样及数字滤波子程序、带符号双字节乘法子程序和标度转换子程序目的是把实际采样取得的二进制值转换成BCD码形式的温度值,然后存放到显示缓冲区中,供显示子程序调用。图4中断效劳程序框图 对于一般线性仪表来说,标度转换公式为:Tx=A0 + (Am-A0) 其中,A0为一次测量仪表的下限; Am为一次测量仪表的上限;Vx 为实际测量值工程量;Vm为仪表上限对应的数字量; V0为仪表下限对应的数字量。4其它控制算法 不同的控制对象,所采用的算法有所不同。例如对于热惯性大、时间滞后明显、耦合强、难于建立准确数学模型的大型立式淬火炉,可以采用人工智能模糊控制算法,通过对淬火炉电热元件通断比的调节,实现对炉温的自动控制,也可以采用仿人智能控制SHIC算法和PID控制算法的联合控制方案,实际应用时应灵活运用。- word.zl