1基本思路
电阻炉在国民经济的各部分有着广泛的应用,小功率的电阻式的高温炉是矿物及金属分析、食品、药物和商品检验等各种实验室必不可少的设备。为了进步产品的质量和产量,都需要对炉温进行监测和控制。
在本系统中采用8位的89C52作为控制核心,当传感器热电偶将温度信号采集进来后经过模拟多路开关CD4066后经放大器,成为V级电压信号进进AD574。转换结束后,89C52读取转换结果,将结果滤波查表后送进显示区。由4位LED显示测出温度,在调节温度时,由4个按键输进所需要控制的温度并显示,然后由单片机经PID运算结果来控制可控硅的通断,以调节温度。人机对话功能的强大是现代控制的一个追求方面。
采用单片机来对它们进行控制不仅具有控制方便简单和灵活性大的特点,而且可以大幅度进步被控温度的技术指标,从而能大大进步产品的质量和数目。
2硬件设计部分
2.1硬件设计核心部分
在一个控制系统中,硬件选择的优良与否直接影响着控制的精度,对硬件的深进了解也是编制程序的必要条件。
在整个测控系统中是以8位的单片机89C52为核心的,89C52是INTER公司生产的带有8KROM的单片机,8K的ROM可以完全容纳的下一个控温的程序和表格。选择它就不需要在外扩RAM和ROM,也就不需要外加锁存器,这可以充分的减小制版的面积,减小制版的面积从另一方面来说也就是减少干扰,进步精度。
2.2模拟输进
模拟信号是由传感器传给多路开关的,这里传感器选用的是热电偶,热电偶是温度丈量中使用最广的传感器之一,其丈量温区宽一般在-180℃~+2800℃的温度范围内均可使用,丈量的正确度和灵敏度都较高,尤其是在高温范围内,有较高的精度。选用的热电偶为镍铬—镍硅,它是K型偶,其特点是使用温度范围宽,高温下性能稳定,热电势与温度关系近似线性,价格便宜,它是最常用的—种热电偶,短期使用温度为1300℃,长期使用温度为1000℃。
将热电偶采集来的信号送进多路开关。多路开关的作用主要是用于信号切换,这里我们选择的是模拟开关CD4066,它是4选1开关,在这里它的四路通道都有使用,将它的第一、第二通路连接,第三、第四通路连接。由于热电偶采集信号是正负信号,先使用第一通路,将输进信号接地来丈量零漂,然后选通第二通路来输进丈量信号。由CD4066的内部结构可知,CD4066的控制电压应满足Vss<vr<vcc,否则会导致电影损坏。
经传感器转化后的丈量量从非电物理量转换成电信号,但往往信号幅度小,难以直接进行模数转换,因此需要对这些模拟信号进行放大处理。最初采用的放大器是传统的晶体管放大器,随着半导体微电子技术的迅速发展,集成放大器以其精度高、体积小、重量轻、互换性好等优越的性能已逐渐取代了传统的晶体管放大器。从运算放大器的角度来看,集成运算放大器是一种具有高放大倍数代深度负反馈的直接耦合放大器,其输进网络和反馈网络由线性或非线性元件组成,可对输进信号进行多种数学运算和处理。在这里我们选用的运算放大器是INA128,它的放大倍数为:G=1+,这里将电压信号放大100倍,得出RG为500。采样保持器的作用是在采样期间,其输出能跟随输进的变化而变化;而在保持状态,能使其输出值保持不变。但在本系统中,温度变化缓慢,采样速度较快,所以无需加采样保持器。
2.3A/D转换
在本系统中选用的是AD574。它是美国模拟器件公司生产的12位逐次逼近型快速的A/D转换器。转换速度最大为35μs,转换精度≤0.05%,是目前我国市场上应用最广泛、价格适中的A/D转换器。AD574片内配有三态输出缓冲电路,因而可直接与各种类型的8位或16位微处理器连接,而无需附加逻辑接口电路,且能与CMOS及TTL电平兼容。由于AD574片内包含高精度的参考电压源和时钟电路,这使它在不需要任何外部电路和时钟信号的情况下完成一切A/D转换功能,应用非常方便。
2.4人机接口
键盘输进是人工干预计算机的主要手段,键盘实质上是一组按键开关集合。通常按键开关为机械弹性开关,均利用了机械触点的合断作用。由于机械触点的弹性作用,一个按键开关在闭合是不会马上的接通,在断开是也不会马上断开,因而在闭合及断开瞬间均伴有一连串的抖动,抖动时间一般为5~10ms。为了确保CPU对一次按键动作只确认一次按键,必须进行消抖,消抖可分为硬件往抖和软件往抖,在此我们选择软件往抖。在本系统中由于按键较少,所以没有选用编码键盘和矩阵式键盘,而是采用独立式按键接口设计,将4个按键经74LS245接在P0口上,并将其中两个按键通过与非门接在INT0上。
显示也是系统重要组成部分之—,本系统显示用来显示丈量温度和调节温度。LED数码管采用硬件译码驱动,选用的器件为74LS49,它可将4位的BCD码译成7段十六进制码。4位LED的位选信号由89C52的P1.4—P1.7经反相器提供。通常某时刻只有一个LED的位选信号有效,4位LED的段选信号端同时由74LS49得到相同的端选信号。若P1.4—P1.7送出第一位的位选有效信号,这时P1.0—P1.3将第一位LED应显示的数字或字符的BCD码送至74LS49,此刻4位LED均得到来自74LS49的字形码,但此刻只有第一位选通,所以也只有第一位LED显示字形,由于是动态连续显示眼睛分辨不出转换的时间。
3软件设计
3.1软件设计的总体思想
本课题的要求是能够实时的测温并显示所测得温度以及根据要调节的温度使用一定的算法使测出的温度和所调节的相符。系统的方框图如下:
图1
在设计软件时根据控制系统工作由实时丈量、实时决策和实时控制组成和PL/M语言的将程序分解成模块来处理的特点将程序分为几个大的模块,其中有主程序块和几个中断模块。主模块主要完成89C52的初始化,INT0中断使用来设置调节温度的,即实时决策,T0中断是用来定期测温的,即事实丈量,T1中断是用来控制调节的,即实时控制。在中断模块中又嵌套了一些小的过程块,由它们来分别完成键盘扫描,键码识别,温度显示,炉温采样,数字滤波和控制算法等。在这里我们主要给出了主模块、INT0、T0的设计思路。
3.2主模块设计思路
主模块只需进行一些89C52的初始化,然后等待中断产生。初始化包括对中断答应寄存器IE的设置,将其设置为83即:EA=1,开CPU中断,ET0和EX0为1,开T0和INT0中断;对中断源优先级IP的设定,将其设为03,即:设置INT0和T0为高优先级中断;对定时器的工作寄存器TMOD设置,TMOD=55H,即:设置T0和T1均为工作方式一,均为计数方式且用软件启动T0和T1工作;T0初始化,然后就是等待中断。
图2
3.3NT0设计思路
INT0中断主要是完成实时决策,根据课题的要求,测温的范围在0℃-1000℃之间,在想调节温度的时候先切换到初始的温度值,设初始温度为500℃,这样适合上下调节,在硬件方面就需要添加一个切换键。在设为500℃后要根据要求得温度上下调节,这样上升键和下降键就必不可少了。在设定完温度后就需要确定所设定的温度并切换到实际温度以便观察其变化。还需要—个键作为启动停止键来控制可控硅的通断。为了缩小电路板的面积,可设定—个标志位用一个键来完成两种功能。为了完成以上功能在硬件部分设计了四个键,分别完成启动(或停止)-1号键,切换(或确定)-2号键,下降-3号键,上升-4号键。其中1号键相2号键接INT0口,在单独按下3号键和4号键是系统并不产生反映,只有在2号键为切换功能时才能上下调节温度。
在INT0中贯串嵌套了两个主要的小程序块,它们分别是送数和显示,由此就要考虑硬件的显示部分,由前面的硬件部分介绍可知显示部分是由4个LED和一个硬件译码器组成,。送数部分的过程有三个,分别是实际温度,设定温度和设定初始值。显示部分有二个共同的程序。送数的工作原理基本上相同,但由于它们是把不同地址空间的数送进显示地址,所以又有略微的差别,在送进设定初始值时,只需将500的个位、十位、百位变成8位的BCD码,为选通相应的位,再分别与上10H、20H、40H、80H,也就是可以直接将10H、20H、45H送进显示区。而在送进实测温度或调节温度时情形就不大相同了。测出的温度是以16进制存取的,假如直接将其变成BCD码就是错误的,所以应先将其除以1000,余数再除以100,依此类推。再启动他们的控制位,然后送进显示区。在送数的基础上显示就轻易多了,只需将显示单元的数送进到P1口即可。为了实现连续显示,可在显示部分加上一个D0WHILE语句。在无按键按下时一直显示丈量或调节温度,而不是一闪而过。
以上的过程能较好的完成调温功能,并将调节量存进特定的RAM区,流程图如下。
3.4T0设计思路
INT0中断部分是用来完成实时丈量和一部分控制的,可以说它是本系统的核心部分。在该部分中要求采样、滤波、A/D转换、查表、显示和算法控制等任务。该中断程序十分简单,但在其中调用了很多重要的大的过程块。为了丈量的正确性将采样周期定为1.5S,T0中断设为外部计数方式2,当外部脉冲达到100个馒头波,定时器溢生产生中断,可以此设定时器初值,中断流程如下
图3INT0中断流程图
图4T0中断流程图
结束语
在生产过程中采用MCS—51来进行温度的测控,一方面可以进步自动化程度、测控速度;另一方面也可以大大进步测控的精度有效杜尽以往由人为因素而造成的误差及事故,可以大大进步生产的质量和产量。