当前位置:首页 > 基于单片机温度控制系统的设计本科毕设论文
XXXX科技学院毕业设计(论文)
3.2.1 数码显示环节软件设计
在本环节由于选用的数码显示是动态数码显示,CWR为8155控制口位元址,POC为C口地址。DIS0~DIS3是片外显示缓冲区,共4个单元对应4个数码管。程序中,先取DIS3中的数,对应选中第一个数码管,其余类推。程序流程图如下:
开始 保护现场 TL0、TH0预置值 计数器加一 调显示子程序 恢复现场 中断返回
开始 建立显示缓冲区首址 送位控码初值 送位控口地址 输出位控码 取段控口地址、显示查表取字形代码 输出段控码 调用延时子程序、维持点亮 向显示高位移位 转向下一单元 N 是否最高位 Y 返回
图3-3 显示环节流程图
-29-
基于单片机温度控制系统的设计
3.2.2 A/D转换环节软件设计
在A/D转换环节中,要考虑到随机的干扰信号的存在,也许单片机在某一时刻采样到的信号恰巧是干扰信号,那么将影响系统的正常工作。基于考虑这种考虑,在软件设计中,设置了三次采样,如果三次采样的值不变,或者变化很小,单片机才将此信号当成正常待转换信号,如果三次采样的信号出现很大的偏差,对于温度这样的大惯性参数,不会在很短的时间内出现大的变化,单片机会取消此大偏差信号,进行下一次采样。
开始 置采样缓冲区首址 送模/数转换器地址 启动A/D 延时 读取转换结果 3次是否采样完? N RETI RETI 图3-4 A/D转换环节流程图
工程实践表明,许多物理量的变化都需要一定的时间,温度尤其如此。相邻两次采
样值之间的变化有一定的限度。程序判断滤波就是根据实践经验确定出相邻两次采样信号之间可能出现的最大偏差ΔY,若超出此偏差值,则表明该输入信号是干扰信号,应该去掉;若小于此偏差值,可将信号作为本次采样值。
当采样信号由于随机干扰,如大功率用电设备的启动或停止,造成电流的尖峰干扰或误检测,以及变送器不稳定而引起的严重失真等,可采用程序判断法进行滤波。 程序判断滤波根据滤波方法的不同,可分为限幅滤波和限速滤波2种。
限幅滤波把两次相邻的采样值相减,求出其增量(以绝对值表示),然后与两次采样允许的最大差值(由被控对象的实际情况决定)ΔY进行比较,若小于或等于ΔY,则取本次采样值;若大于ΔY,则仍取上次采样值作为本次采样值。
-30-
XXXX科技学院毕业设计(论文)
限幅滤波主要用于变化比较缓慢的参数,如温度、物理位置等测量系统。具体应用时,关键的问题是最大允差ΔY的选取,ΔY太大,各种干扰信号将“乘虚而入”,使系统误差增大;ΔY太小,又会使某些有用信号被“拒之门外”,使计算机采样效率变低。因此,门限值ΔY的选取是非常重要的。通常可根据经验数据获得,必要时也可由实验得出。
限速滤波最多可用3次采样值来决定采样结果
限速滤波较为折中,既照顾了采样的实时性,又顾及了采样值变化的连续性。但这种方法也有明显的缺点: (1)△Y
(2)不能反映采样点数N>3时各采样值受干扰的情况,因而其应用受到一定的限制。具体应用时,可用(|Y(1)-Y(2)|+|Y(2)-Y(3)|)/2作为ΔY,这样也可基本保持限速滤波的特性,虽增加计算量,但灵活性提高了。 软件流程图如图3-5所示。
-31-
基于单片机温度控制系统的设计
开始
采样值送A
将本次采样值与上次采样值比较
Y 两次采样
值相等?
N
Y 前次采样值 大于本次? N
两次采样值交换
Y
第三次<
第一次?
N
第三次采样值送A
采样值送入2AH单元
返回
图3-5滤波模块流程图
-32-
大的采样值送A Y A中值=第三次采样值? N N A中值<第三次采样值? Y 第三次采样值送A Y 第三次与第一次采样值相等? N
共分享92篇相关文档