内容发布更新时间 : 2024/11/18 10:47:46星期一 下面是文章的全部内容请认真阅读。
2)开机或复位之后启动A/D转换,对环境温度进行采样,并在显示器上显示当前环境温度。
3)保持环境温度显示的同时,对覆盖热释电探测器视场的物体表面的红外辐射进行转换和采样,并比较各采样值,直到采样值为热释电探测器响应的峰值电压为止。
27
开始 外部中断0初始化 显示子程序 复位 N 启动键打开 Y 读取数据 计数器加1 满三次 N Y 数据正确 N Y 写入EEPROM(超过37.0度) 计数器清零 结束 图4-1 主程序流程图
4.2 子程序设计
如图4-2是软件设计部分的中断子程序流程图,主要实现以下功能:
1)A/D采样子程序完成对热释电传感器放大电路输出信号的采样。要实现准确测温就必须得到输出信号的峰值,但在实际电路中,由于探测器响应延时不尽相同,且电路的延时也很难准确计算,所以要准确采集到峰值是十分困难的。为此,我们只有对输出信号不断地进行采样,并比较各样值,取其中的最大者作为峰值的近似值
2)数据处理子程序完成对采样值的计算处理。中间又经过了ADC0804数模转换器将结果转换为可供LED显示的代码。
3)读取温度时超过预警温度,蜂鸣器报警,没超过直接显示所测温度。 4)显示子程序完成最后的温度显示。
发送数据 N 读取EEPROM(超过37度) Y 报警 读取指令
外部中断入口 LED显示 中断返回 28
图4-2 中断子程序流程图
5 系统调试
在硬件焊接与软件编程完成后,需要对其进行调试,以保证硬件与软件连接成系统后能够达到设计要求。系统调试是系统开发最重要的环节之一,系统成型后能否正常工作,主要取决于系统调试是否成功。
5.1 系统硬件调试
绘制完成原理图之后,根据原理图焊接电路板。焊接完成后,首先目测焊点是有虚焊或漏焊现象,再用万用表测量各个芯片间连接和电源与地间的连接是否正确,由于本次设计需要用排线将主板和副版连接起来,这就涉及到引脚连接的问题,所以要把主板芯片引脚与副版芯片引脚直接用万用表测量,观察是否接通,然后上电测量,要十分注意芯片是否发热。系统硬件调试方法如下:
1)对印刷电路板质量检查、测试,是否同印刷制电路板图一致。对所用的 元器件质量检查。两者无误后进行下一步。
2)按照印刷电路板上的器件名称、表识焊接好各个元器件。
3)采用万用表、示波器、信号发生器等一般调试工具和测试软件对硬件电 路电气性能测试,看是否能正常工作。
5.2 系统软件调试
软件调试采用模块化调试方法,每一模块逐一调试,然后再将所有模块组合一起,进行整体调试。软件的调试主要有语法错误和逻辑错误两类。语法错误可直接修改,逻辑错误则需进行单步调试,看程序是否按逻辑顺序进行,然后写入到芯片内,查看程序运行效果,反复调试。系统软件调试方法如下:
29
1)软件在各个子程序模块调试都正确后,再将相互有关系的模块逐块组合 起来加以调试,以解决在程序模块连接中可能出现的逻辑错误。
2)对所有程序模块的整体组合调试是在与系统联机后进行的。
5.3 调试中出现的问题
硬件调试过程中发现,无论输入为多少,数码管显示数据均不变。经多次测量各芯片管脚的输入值发现,A/D采集并未实现,即有输入电压但并没输出,经测量研究发现供电电源没有采用稳压电源供电,将LM336连入其中,测试即正确。
由于本系统的编译采用汇编语言,故要注意文件的扩展名为.ASM,错误的使用了.C以致无法运行;注意自定义符号不要与伪指令重复,程序调试中发现HD7279的串行数据输入/输出的符号与伪指令DATA重复了,将其改为DAT即正确;还有一些逻辑错误,经仔细研究分析,修改后无误。
5.4 调试结果分析
经过硬件调试和软件调试无误后,将两者结合进行最终调试,经过多次修改后,成功显示温度值,其测量数据如下表5-1所示。
从调试结果中可以看出,测量温度值与理论温度值并不是完全吻合,即存在一定的误差,误差的存在有时是不可避免的,而有时却是可以通过一些方法来减少误差的存在,要使测量准确可靠,必须减少误差。此设计采取了小数点后第二位四舍五入的方法来减小一定的误差,但并没有完全消除,此系统误差主要来源于以下几个方面:
1)由于实验理论在计算上存在着近似性,方法上难以完善,因此理论温度 值并不是真实温度值,而只是非常接近于真实温度的值,故存在一定的误差。
2)实验仪器灵敏度和分辨能力有局限性,而且芯片本身存在非线性化 误差。
3)驱动电源为220±10%V,基准电源不稳,造成输入输出的误差。 4)周围环境不稳定,每次测量时限不统一都会造成测量误差。
30
表5-1 测量数据
电位器给定电压(V) 显示温度值(℃)
2.103 2.401 2.502 2.605 2.702 2.800 2.901 3.000 3.099 3.203 3.302 3.403 3.504 3.604 3.801 4.000 4.200 4.400 4.500
35.2 36.1 36.5 36.7 36.9 37.2 37.5 37.8 38.1 38.4 38.7 39.0 39.3 39.6 40.2 40.8 41.4 42.0 42.2
理论温度值(℃) 误差(℃)
35.1 35.9 36.3 36.5 36.8 37.1 37.3 37.6 37.9 38.2 38.5 38.8 39.1 39.4 40.0 40.5 41.2 41.7 42.0
0.1 0.2 0.2 0.2 0.1 0.1 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.3 0.2 0.3 0.2
5.5 改进方案及推广应用
由于普通红外测温仪只限于测量物体外部温度,不方便测量物体内部和存在障碍物时的温度,所以可以在其检测头部加一段光导纤维,并在其前端装一个小视角的透
31