红外测温.docx

上传人:b****8 文档编号:29067600 上传时间:2023-07-20 格式:DOCX 页数:47 大小:867.52KB
下载 相关 举报
红外测温.docx_第1页
第1页 / 共47页
红外测温.docx_第2页
第2页 / 共47页
红外测温.docx_第3页
第3页 / 共47页
红外测温.docx_第4页
第4页 / 共47页
红外测温.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

红外测温.docx

《红外测温.docx》由会员分享,可在线阅读,更多相关《红外测温.docx(47页珍藏版)》请在冰豆网上搜索。

红外测温.docx

红外测温

摘  要

传统的温度计多采用物理原理,根据水银等随温度升降的韧冷缩的性质,通过读取刻度值来判断温度值,这种方法不太方便,且测量需要的时间较长。

本项目提供一种新的温度测量方案,采用具有SPI(SerialPeripheralInterface串行外围接口)接口的TN系列红外温度传感器来测量温度信号,可同时测量目标温度和环境温度,并将测量的数据送给SPCE061A单片机处理,之后送数码管显示,同时利用SPCE061A单片机的语音功能播报温度值。

红外测温打破了传统的测温模式,它响应快、测量精度高、可靠性高、范围广,为非接触测量,因而不易损坏。

该温度计以其准确快捷的测量功能、清晰易懂的数字化显示方便人们常生活使用,语音播报功能使其更加智能化、人性化。

关键词:

红外测温,SPCE061A单片机,语音报警

Abstract

Mostofthetraditionalthermometersadoptsmercurycolumnwhichhasthephysicalprinciplethatitexpandswithheatandcontractswithcoldalongwiththechangeoftemperature,andwecanreadthetemperatureoutaccordingtotheinfinity.Thismethodisnotconvenient,andittakesalongtimetomeasure.ThispaperproposesanewthermometerprojecttomeasurethetemperaturesignalbyusingtheTNseriesinfraredtemperaturesensorwhichhastheSPI(SerialPeripheralInterface).Thesensorcanmeasureboththetargettemperatureandenvironmenttemperatureatthesametime,meanwhilethetemperaturedatawhichhavebeenmeasuredcanbetransferredtotheSPCE061Amicrocontrollertoprocess.Then,thedatawillbetransferredtodatadisplay,andwillbereportedbyusingtheSPCE061A’svoicereportfunctioninthemeanwhile.Infraredthermometerbreaksthroughtraditionaltemperaturemeasurementpattern.Itresponsesquickly,andhashighaccuracyandhighreliabilityandmeasuresinlargearea.Itisalsoawayofnon-contactmeasurement,soitisn’teasytobreak.Thisthermometercanmeasureaccuratelyandquickly,andhastheclearandeasydisplay.Alltheseofferconvenientconditiontoourdailylife.Furthermore,thevoicereportfunctionmakesitmoreintelligentandhuman.

Keywords:

infraredthermometry;SPCE061Amicrocontroller;voicereport

目  录

摘  要I

AbstractII

目  录III

第1章 绪论1

1.1 课题开发背景1

1.2 课题发展现状1

1.3 课题研究内容2

第2章 硬件设计3

2.1 硬件总体框图3

2.2 主控系统设计3

2.2.1 主控制器设计3

2.2.2 复位电路设计4

2.2.3 晶振电路设计错误!

未定义书签。

2.3电机模块设计7

2.3.1 电机驱动芯片介绍7

2.3.2 电机驱动回路设计错误!

未定义书签。

2.4 红外模块设计错误!

未定义书签。

2.5 门禁系统模块设计错误!

未定义书签。

2.5.1 门禁系统简介错误!

未定义书签。

2.5.2 门禁系统实现方法错误!

未定义书签。

2.6 本章小结9

第3章 软件设计12

3.1 软件总体设计12

3.1.1 软件设计原理12

3.1.2软件程序设计12

3.2 主程序设计12

3.3 红外感应程序设计14

3.4 电机子程序设计错误!

未定义书签。

3.5 键盘子程序设计错误!

未定义书签。

3.6 本章小结14

第4章 系统调试18

4.1 系统硬件调试20

4.1.1 硬件环境20

4.1.2 硬件调试20

4.2 软件程序调试20

4.2.1 软件环境20

4.2.2 软件调试主要方法25

4.3 红外感应程序调试25

4.4 电机模块程序调试26

4.5 键盘模块程序调试26

4.6 整体调试26

4.7 本章小结26

结论27

致谢28

参考文献29

附录129

附录232

附录335

附录436

第1章 绪论

1.1 课题开发背景

今年在我国局部地区流行的H1N1 前期症状是高烧38oC 以上(少数长期病患者除外),红外测温仪可为防止H1N1 的扩散和传播提供了快速、非接触测量手段,可广泛、有效地用于人群的体温排查。

可广泛、有效地用于密集人群的体温测量。

1.2 课题目的和意义

体温是人体生命活动的基本特征,也是观察人体机能是否正常的重要指标之一。

在目前的日常生活中,人们使用最广的水银体温计是根据水银等随温度升降的热胀冷缩的性质,通过读取刻度值来判断温度值,它有着诸多缺点:

传统温度计在使用时,要和被测量者接触,往往要等待较长时间,以期让其充分受热,当测量结束后还要将水银重新甩入水银泡中。

由于水银泡是由很薄的玻璃制成极易破碎,而且其中的水银蒸汽对人体有着极强的毒害作用,报纸上就曾多次刊登小孩因咬碎水银泡而误吞水银造成中毒的事件,可见普通的水银体温计有着非常严重的安全隐患。

红外测温为测量人体温度提供了快速、非接触测量手段,可广泛、有效地用于密集人群的体温测量。

非接触红外测温计针对特定人群,比如儿童或老人,极其方便。

且利用单片机技术开发的语音功能便可克服传统体温计的许多缺陷。

它不但可以以数字的方式显示出测量结果,使测量过程变得直观,而且可以根据需要以语音播报出当前的温度值,除此之外,语音体温计还具有较高的灵敏度,可以在几秒钟内测得结果,且寿命长,是较为理想的测温仪器。

智能红外测温计的设计,其内容涉及电子技术、检测技术、单片机技术等多方面内容。

红外测温为测量人体体温提供了快速、非接触测量手段,可广泛、有效地用于密集人群的体温排查,例如2003年“非典”期间,红外测温得到了广泛的应用。

非接触测量计对特定人群,比如儿童或老年人,有很好的效果。

红外测温技术也是一门很实用和前沿的技术,以此作为毕业设计,利于理论联系实际,形成个人在这一方面的知识体系,是对本科阶段学习内容的升华,特别是对单片机控制、传感器技术知识深入,它对学生自身综合素质与工程能力的培养也有重要意义。

1.3 系统设计思想

一种方便用户使用的体温测量工具,功能稳定,运行速度快,通过单片机的运算处理,完成数据的显示与语音播报功能。

1、实用性:

此设计以用户需求为目标,以方便用户为原则。

根据用户实际的需求情况,度身订造一套先进的体温测量工具,从用户角度出发尽可能的方便用户使用,满足基本的用户需要,成为人口密集地区的主要体温检测工具。

2、先进性:

本设计将充分应用现有成熟的硬件技术、软件开发技术。

以C语言为主要开发环境,其优秀的体制和编译器是此设计的强力支柱。

3、高可靠性:

一个实用的系统同时必须是可靠的,本设计通过合理而先进的传感感器设计以及软、硬件的优化选型,可保证系统测量的正确性。

4、高安全性:

在设计中,将充分利用传感器、SPCE061A单片机提供的各种安全措施,可以保证测量的准确性。

5、采用标准技术:

本系统的所有设计遵循国际上现行的标准进行,以提高系统的开放性。

可维护性:

系统的设计要求方便维护,包括硬件的维护,软件的维护(更改,升级等)。

6、可扩展性及灵活性:

系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。

第2章 硬件设计

▪2.1硬件总体框图

本系统主要是以凌阳科技推出的一款16位结构的微控制器SPCE061A单片机作为主控制器进行设计的。

系统硬件总体框图如图2-1所示。

图2-1系统硬件框图

本系统包括按键部分、音频输出部分和TN红外测温传感器接入等三部分。

 SPCE061A是台湾凌阳公司生产的性价比很高的一款十六位单片机,使用它可以非常方便的实现控制和语音播报的系统,该芯片拥有8路10位精度的AD,其中1路AD为音频转换通道,并且内置有自动增益电路。

这为实现语音录入提供了方便的硬件条件。

2路10位精度的DA,只需要外接2个功放(LM386)即可完成语音的播放。

另外,凌阳十六位单片机具有易学易用的效率较高的一套指令系统和集成开发环境。

在此环境中,支持标准C语言,可以实现C语言与凌阳汇编语言的互相调用,并且,提供了语音录放的库函数,只要了解库函数的使用,就会很容易完成语音播报,这些都为软件开发提供了方便的条件。

音频输出部分:

主要是将SPCE061A两路音频输出端通过LM386放大,经喇叭播放。

按键部分:

按键开始测温,一直按下,听到声音表示测温完毕。

     

TN红外测温传感器接入部分:

通过SPCE061A IO口的控制,将将所测得的温度返回到SPCE061A中来处理。

 

▪2.2主控系统设计

主控系统设计主要对单片机选型、复位电路、晶振电路设计。

▪2.2.1 主控制器设计

一般的非接触式红外体温检测都是采用全数字式智能化电脑作为核心。

该设备主要是用于流量大的车站、机场、火车站要方便、快敏。

考虑到本设计只需模拟自动门的运行过程,故决定选择SPCE061A单片机作为主控制器。

SPCE061A单片机的芯片图如图2-2所示。

 

图2-2 SPCE061A单片机的芯片图

SPCE061A单片机的结构图:

图2-3 SPCE061A单片机的结构图

16位µ’nSP™微处理器;

  工作电压(CPU)VDD为2.4~3.6V(I/O)VDDH为2.4~5.5V

  CPU时钟:

0.32MHz~49.152MHz;

  内置2K字SRAM;

  内置32KFLASH;

  可编程音频处理;

  晶体振荡器;

  系统处于备用状态下(时钟处于停止状态),耗电仅为2µA@3.6V;

  2个16位可编程定时器/计数器(可自动预置初始计数值);

  2个10位DAC(数-模转换)输出通道;

  32位通用可编程输入/输出端口;

  14个中断源可来自定时器A/B,时基,2个外部时钟源输入,键唤醒;

  具备触键唤醒的功能;

  使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据;

  锁相环PLL振荡器提供系统时钟信号;

  32768Hz实时时钟;

  7通道10位电压模-数转换器(ADC)和单通道声音模-数转换器;

  声音模-数转换器输入通道内置麦克风放大器和自动增益控制(AGC)功能;

  具备串行设备接口;

  具有低电压复位(LVR)功能和低电压监测(LVD)功能;

  内置在线仿真电路ICE(In-CircuitEmulator)接口;

  具有保密能力;

  具有WatchDog功能。

▪2.2.2 最小系统电路设计

SPCE061A芯片及其外围的基本模块,外围模块包括:

晶振输入模块(OSC)、锁相环外围电路(PLL)、复位电路(RESET)、指示灯(LED)等,如图2-3所示。

图2-4 最小系统电路原理图

在OSC0、OSC1端接上晶振及谐振电容,在锁相环压控振荡器的阻容输入VCP端接上相应的电容电阻后即可工作。

其它不用的电源端和地端接上0.1µF的去藕电容提高抗干扰能力。

单片机OSC320脚和OSC321脚分别构成片内振荡器和反相放大器的输入和输出端,外接石英晶体或陶瓷荡器以及补偿电容C25、C24构成并联谐振电路。

当外接石英晶体时,电容C25、C24选30pF±10pF;当外接陶瓷振荡器时,电容C25、C24选47pF±10pF。

SPCE061A系统中晶振可在1.2MHZ~12MHZ选择。

外接电容C25、C24的大小会影响振荡器频率的高低、振荡频率的稳定度、起振时间及温度稳定性。

在设计电路板时,晶振和电容应靠近单片机芯片,以便减少寄生电容,保证振荡器稳定可靠工作。

▪2.3传感器模块设计

被动式热释电红外探头的工作原理及特性:

一般人体都有恒定的体温,一般在37度,所以会发出特定波长10UM左右的红外线,被动式红外探头就是靠探测人体发射的10UM左右的红外线而进行工作的。

人体发射的10UM左右的红外线通过菲尼尔滤光片增强后聚集到红外感应源上。

红外感应源通常采用热释电元件,这种元件在接收到人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,电后续电路经检验处理后即可产生报警信号。

1)这种探头是以探测人体辐射为目标的。

所以热释电元件对波长为10UM左右的红外辐射必须非常敏感。

2)为了仅仅对人体的红外辐射敏感,在它的辐射照面通常覆盖有特殊的菲尼尔滤光片,使环境的干扰受到明显的控制作用。

3)被动红外探头,其传感器包含两个互相串联或并联的热释电元。

而且制成的两个电极化方向正好相反,环境背景辐射对两个热释元件几乎具有相同的作用,使其产生释电效应相互抵消,于是探测器无信号输出。

4)一旦人侵入探测区域内,人体红外辐射通过部分镜面聚焦,并被热释电元接收,但是两片热释电元接收到的热量不同,热释电也不同,不能抵消,经信号处理而报警。

5)菲尼尔滤光片根据性能要求不同,具有不同的焦距(感应距离),从而产生不同的监控视场,视场越多,控制越严密。

在电子防盗、人体探测器领域中,被动式热释电红外探测器的应用非常广泛,因其价格低廉、技术性能稳定而受到广大用户和专业人士的欢迎。

电路原理图如图2-4所示

图2-5 红外电路原理图

红外测温传感器如图 2-5所示。

图 2-6红外测温传感器

 红外测温模块与SPCE061A的接口如下:

   V-->3.3v 

    D-->IOA15 

   C-->IOB8

   G-->GND 

   A-->按键-->GND 

▪2.4I/O端口介绍

SPCE061A提供了位控制结构的I/O端口,每一位都可以单独用于数据输入或输出。

每个独立的位可通过以下3种控制向量来作设定:

   1.数据向量Data

   2.属性向量Attribution

   3.方向控制向量Direction

   每3个对应的控制向量组合在一起,形成一个控制字,用来定义相对应I/O端口位的输入输出状态和方式。

例如,假设需要IOA0是下拉输入引脚,则相对应的Data、Attribution和Direction的值均被设为“0”。

如果需要IOA1是带唤醒功能的悬浮式输入引脚,则Data、Attribution和Direction的值被设为“010”。

与其它的单片机相比,SPCE061A除了每个I/O口可以单独定义其状态外,每个对应状态下的I/O端口性质电路都是内置的,在实际的电路中不需要再外接。

例:

设A口为带下拉电阻的输入端口,在连接硬件时不用再外接下拉电路。

   A口和B口的Data、Attribution和Direction的设定值均在不同的寄存器里,用户在进行I/O端口设置时要特别注意这一点。

I/O端口的组合控制

设置如表2.1所示:

     注:

 

       *:

端口位预设为带下拉电阻的输入引脚;

     **:

只有当IOA[7~0]内位的控制字为000,001和010时,相对应位才具有唤醒的功能。

     ***:

悬浮输入作为ADCIOA[6~0]的输入

图 2-7I/O结构

A/D转换原理图:

图 2-8A/D转换原理图

音频输出的电路如图2-8所示:

图 2-9I/O音频输出电路图

▪2.5本章小结

本章主要介绍了各子系统的硬件设计,将I/O通信、电机驱动模块、红外检测模块以及键盘输入模块的设计思路及工作原理作了详细分析,并介绍了各部分所用到芯片,电机驱动芯片L298N、降压转换芯片7805等的特点以及主要引脚说明,并给出了芯片的引脚图,对感应自动门的门禁系统做了简要介绍。

通过阅读本章内容可对本系统的硬件设计全面了解。

第3章 软件设计

▪3.1软件总体设计

系统总体设计是指从系统高度考虑程序结构、数据形式、程序功能的实现手法和手段。

程序总体设计包括拟定总体方案、确定算法和绘制程序流程等。

在总体框图基础上,还应结合数学模型确定各子模块的具体算法和步骤,并演化成计算机能处理的形式,然后画出系统流程图。

▪3.1.1软件设计原理

系统软件运行总体设计流程包括:

系统初始化,系统等待感应信号,根据不断检测到的的红外信号来判断体温的度数。

当有人通过时,按键按下时,红外探测器感应到信号时,则立即通知系统及时做出反映。

对所通过的人的体温做出温度系数的显示,并进行语音通报。

如果超过人体的正常体温37度,则报警。

▪3.1.2软件程序设计

程序设计(Programming)是指设计、编制、调试程序的方法和过程。

它是目标明确的智力活动。

由于程序是软件的本体,软件的质量主要通过程序的质量来体现,在软件研究中,程序设计的工作非常重要,内容涉及到有关的基本概念、工具、方法以及方法学等。

程序设计语言的基本成分有:

①数据成分,用于描述程序所涉及的数据;②运算成分,用以描述程序中所包含的运算;③控制成分,用以描述程序中所包含的控制;④传输成分,用以表达程序中数据的传输。

而SPCE061A单片机支持C和汇编语言。

汇编语言适合用于实现很高的代码效率和实时性,具有灵活的寻址方式,底层控制灵活性好,但汇编指令集庞大,掌握困难,需要长期的实践积累流程控制不便,开发周期长;程序可读性差,修改升级困难。

C语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,并具有良好的程序结构,适用于各种应用的程序设计,是目前使用较广的单片机编程语言。

单片机的C语言采用C51编译器(简称C51)。

由C51产生的目标代码短,运行速度高,所需存存储空间小,符合C语言的ANSI标准,生成的代码遵循Intel目标文件格式,而且可与A51汇编语言或PL/M51语言目标代码混合使用。

所以本课题采用C语言编写。

通过在线调试器PROBE实现的。

它既是一个编程器(即程序烧写器),又是一个实时在线调试器。

▪3.2主程序设计

主程序主要负责系统整体软件设计:

包括SPCE061A本身的初始化、红外检测装置初始化系统检测判断、执行。

主程序流程图如图3-1所示。

图3-1 主程序流程图

▪3.3读取程序的设计

SPCE061A读取红外传感器的测量结果,是采用SPI接口进行读取,其中数据格式如下:

 

    SPI时序图:

 

图3-2 SPI实序图

   一帧数据包括5Byte,每个Byte代表含义如下:

 

    Item “L”(4CH):

 代表此帧为目标温度 

   “f”(66H):

 代表此帧为环境温度

   MSB 8 bit Data Msb

   LSB 8 bit Data Lsb 

   Sum Item+MSB+LSB=SUM

   CR 0DH,结束码

    读取数据流程图如图3-3:

 

图3-3 读取数据流程图

本软件系统设计简单。

主要是因为凌阳的十六位单片机开发环境使用方便,并支持C语言与汇编语言的互相调用,且提供丰富的凌阳语音函数库,只要我们了解这些函数的使用方法,我们就可以很容易的实现语音的播放。

本系统采用S480压缩格式,该压缩算法压缩比较大80:

3, 存储容量大,音质介于A2000和S240之间,适用于语音播放。

例如播放部分代码如下:

 

    其相关API函数如下所示:

 

int SACM_S480_Initial(int Init_Index) //初始化 

void SACM_ S480_ServiceLoop(void) //获取语音资料,填入译码队列

void SACM_ S480_Play(int Speech_Index, int Channel, int Ramp_Set) //播放 

void SACM_ S480_Stop(void) //停止播放 

void SACM_S480_Pause (void) //暂停播放 

void SACM_S480_Resume(void) //暂停后恢复 

void SACM_S480_Volume(Volume_Index) //音量的控制 

unsigned int SACM_S480_Status(void) //获取模块的状态

Call F_FIQ_Service_ SACM_S480 //中断服务函数 

各函数具体内容如下:

 

    1)【API格式】

    C:

int SACM_S480_Initial(int Init_Index) 

    ASM:

R1=[ Init_Index] 

     Call F_ SACM_ S480_Initial 

    【功能说明】SACM_S480语音播放之前的初始化。

 

    【参 数】Init_Index=0 表示手动方式;Init_Index=1 则表示自动方式。

 

    【返 回 值】

    0:

代表语音模块初始化失败 

    1:

代表初始化成功。

 

    【备 注】该函数用于对定时器、中断和DAC等的初始化。

    2) 【API格式】

    C:

void SACM_S480_ServiceLoop(void) 

    ASM:

Call F_ SACM_S480_ServiceLoop 

    【功能说明】从资源中获取SACM_S480语音资料,并将其填入解码队列中。

 

    【参 数】无。

 

    【返 回 值】无。

 

    【备 注】播放语音文件中数据,当出现FF FF FFH数据时便停止播放。

    3) 【API格式】

    C:

int SACM_S480_Play(int Speech_Index, int Channel, int Ramp_Set);

    ASM:

R1=[ Speech _Index] 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1