毕设论文 便携式红外线人体测温仪设计 - 图文
更新时间:2023-11-09 15:12:01 阅读量: 教育文库 文档下载
- 毕设论文推荐度:
- 相关推荐
本科毕业设计(论文)说明书
便携式红外线人体测温仪设计
学 院 电子与信息学院 专 业 信息工程 学生姓名 XXX 指导教师 XXX
提交日期 2011年 06月 01日
华 南 理 工 大 学
毕 业 设 计 (论文) 任 务 书
兹发给 07信息工程(3)班学生 陈华辉 毕业设计(论文)任务书,内容如下:
1.毕业设计(论文)题目: 便携式红外线人体测温仪设计 2.应完成的项目: (1)完成对便携式红外线人体测温仪系统方案的确定及器件的选择 (2)完成系统的硬件和软件设计 (3)完成对系统的整体调试以及毕业设计的论文 3.参考资料以及说明: (1)张军,宋涛. AVR单片机C语言程序设计实例精粹. 电子工业出版社,2009. (2)由富恩,张存芳,付乐勇. 辐射测温仪原理及其检定. 中国计量出版社,1990. (3)沙占友. 集成传感器应用. 中国地理出版社,2005. (4)周继明,江世明. 传感技术与应用. 中南大学出版社, 2005. (5)裒继俊,董培芝. 中国红外产品与应用.长城出版杜,2004. (6)高魁明,谢植. 红外理论与技术. 沈阳:东北工学院出版社,1989. (7)曾强,舒芳誉,李清华. 红外测温仪—工作原理及误差分析. 传感器世界,2007(2). (8)曹欣荣,戴景民. 环境温度对红外辐射式体温计读数的影响. 计量学报,2002(1). (9)沈国彦,宋平.红外温度计测量体温方法探讨. 仪表技术,2003年第3期. 4.本毕业设计(论文)任务书于2010年01月20日发出,应于2011年06月01日前完成,然后提交毕业考试委员会进行答辩。
专业教研组(系)、研究所负责人 审核 年 月 日
指导教师 签发 年 月 日
毕业设计(论文)评语:
(应包括平时表现、论文质量、答辩表现等内容)
毕业设计(论文)总评成绩:
毕业设计(论文)答辩负责人签字:
年
日
月
摘 要
在临床医学中,体温是一个重要的人体生理参数。它是人体生命活动的基本特征,也是观测人体机能是否正常的重要指标之一。所以体温计无论是在日常保健和还是临床诊断中,都是必不可少的医用计量器具。传统的水银体温计是根据液体热胀冷缩的性质来测量人体的温度,虽然它价格便宜、性能稳定,但是也存在许多弊端。
随着科学技术的发展和现代医疗技术的需求,体温测量技术也在不断地改进和提高,随后人们研究出了红外线人体测温仪。它是利用人体发出特定波段的红外线来测量出人体的温度。由于采用了高精度红外传感器和新型微处理器技术,因此它能够快速、准确、方便地测出体温,解决了传统水银式温度计的容易破碎、水银染环境与不易读数等问题。
本人根据红外辐射测温的原理设计并制作了一个红外体温测量系统,其中红外温度传感器采用了Melexis公司设计生产的非接触测量红外温度传感器—MLX90615(DAA型号)。它是一个数字传感器,片上已经集成了温度测量的传感器和相关处理电路,可以通过SMBus协议把测量得到的温度数据直接传送给AVR单片机(ATmega32A)进行处理,然后通过LCD模块显示相应的体温值。此系统最高的测量精度可达到±0.2°C左右,而且具备方便快捷的测量功能和清晰易懂的数字化显示方式。这都使得它无论在大规模的疫检,还是在日常保健中发挥重要的作用。
关键词: 红外温度测量,MLX90615,SMBus,AVR单片机
I
Abstract
In clinical medicine, the body temperature is an important physiological parameters. It is the basic characteristic of human life activities, but also observed a normal human body is an important indicator. So, whether the thermometer is still in daily health care and clinical diagnosis, medical measuring instruments are indispensable. According to the traditional mercury thermometers to measure properties of the liquid thermal expansion and contraction of the body's temperature, although it is cheap but there are many drawbacks.
As science and technology development and the needs of modern medical technology, temperature measurement technology is continually improving and improving, and then people come up with an infrared body thermometer. It is issued by the body to measure a specific band of infrared temperature of the human body. As a result of newhigh-precision infrared sensor
and microprocessor technology, so it can quickly, accurately and easily measure the temperature, to solve the traditional easily brokenmercury thermometer, the mercury thermometer is not easy reading and pollution of the environment.
I according to the principle of infrared radiation thermometer designed and producedan infrared temperature measurement system, including infrared temperature sensor designed and manufactured by Melexis company using non-contact infrared temperature sensor measurement - MLX90615 (DAA model). It is a digital sensor chip has integrated temperature measurement sensor and associated processing circuit, through SMBus protocol the measured temperature data directly to the AVR microcontroller (ATmega32A) for processing, and then through the LCD module displays the corresponding temperature values. This system can achieve the highest measurement accuracy ±0.2℃, and measured with functional and convenientdigital display clear and understandable way. All this makes it a large-scale epidemicin terms of inspection, or in the daily health care play an important role.
Keyword: IR temperature measurement, MLX90615, SMBus, AVR microcontroller
II
目 录
摘要 I Abstract II
第一章 绪论 1 1.1 课题研究的目的和意义 1 1.2 红外测温技术的发展概况 1
第二章 红外温度传感器测温原理 3 2.1 红外测温的基础理论 3 2.2 红外测温传感器的一般结构及测温的特点 6 2.3 本章小结 7
第三章 总体方案设计和选择 8 3.1 设计任务分析 8 3.2 方案对比与选择 9 3.3 总体方案设计 11 3.4 本章小结 11
第四章 系统硬件设计 12 4.1 电源模块 12 4.1.1 PT1301简介 12 4.1.2 电源模块电路设计 14 4.2 红外测温模块 15 4.2.1 MLX90615简介 15 4.2.2 红外测温模块电路设计 18 4.3 MCU主控模块 19 4.4 LCD显示模块 22 4.5 系统其它外围电路模块 25 4.5.1 声音提示模块 25 4.5.2 按键输入模块 25 4.6 本章小结 26
第五章 系统软件设计 27 5.1 主控程序模块 27 5.2 红外测温程序模块 28 5.2.1 MLX90615的传输协议(SMBus) 28 5.2.2 红外测温程序设计 33 5.3 LCD显示程序模块 35 5.3.1 LCD模块指令和时序 35 5.3.2 LCD显示程序设计 36 5.4 本章小结 37
第六章 系统调试与分析 39 6.1 红外测温系统调试和分析 39 6.2 本章小结 41
第七章 总结与展望 42 参考文献 43 致谢 44 附录一 系统硬件电路图 45 附录二 系统程序 46
第一章 绪论
1.1 课题研究的目的和意义
在临床医学中,体温是一个重要的人体生理参数。它是人体生命活动的基本特征,也是观测人体机能是否正常的重要指标之一。所以体温计无论是在日常保健和还是临床诊断上,都是必不可少的医用计量器具。
传统的体温计主要是水银式体温计,水银储存在末端的水银球内。当水银被加热时,它会发生膨胀,沿着非常狭窄的玻璃管上升。所以,体温的小小变化就会导致玻璃管内水银的大幅度上升。量完体温后,得用力甩动体温计,使水银回到水银球内。它们主要是经口腔、腋窝和直肠等部位来测量人体的平均温度。
水银体温计虽然价格便宜,性能稳定,但也有许多弊端:其一,水银体温计遇热或放置不当,容易破裂使水银泄露,从而造成人体接触中毒、污染环境;其二,水银体温计是根据水银随温度升降的热胀冷缩的性质,通过读取刻度值来判断温度的高低,有时由于光线较暗或其它因素的影响,使观察者难以准确判断体温值;其三,采用水银体温计测量体温时,往往要等待较长的时间,使其能够充分受热。
随着科技的发展和现代医疗技术的需要,测温技术也在不断地改进和提高,然后人们研究出了红外线人体测温仪。它是利用人体发出特定波段的红外线来测量出人体的温度,由于采用了高精度的红外温度传感器,所以能够快速、准确、方便地测出体温数值,从而解决了传统水银式温度计的容易破碎、水银染环境与不易读数等问题。这无论是在大规模的疫检中,还是在日常保健中都发挥了重要的作用。
1.2 红外测温技术的发展概况
1800年,英国物理学家F· W·赫胥尔从热的观点来研究各种色光时,发现了红外线。他在研究各种色光的热量时,有意地把暗室的唯一的窗户用暗板堵住,并在板上开了一个矩形孔,孔内装一个分光棱镜。当太阳光通过棱镜时,便被分解为彩色光带,并用温度计去测量光带中不同颜色所含的热量。为了与环境温度进行比较,赫胥尔用在彩色光带附近放几支作为比较用的温度计来测定周围环境温度。试验中,他偶然发现一个奇怪的现象:放在光带红光外的一支温度计,比室内其他温度的批示数值高。经过反复试验,这个所谓热量最多的高温区,总是位于光带最边缘处红光的外面。于是他宣布太阳发出的辐射中除可见光线外,还有一种人眼看不见的“热线”,这种
1
看不见的“热线”位于红色光外侧,叫做红外线。红外线是一种电磁波,具有与无线电波及可见光一样的本质,红外线的发现是人类对自然认识的一次飞跃,对研究、利用和发展红外技术领域开辟了一条全新的广阔道路。
自从赫歇尔发现红外辐射至今,红外技术的发展经历了将近两个世纪。从那时开始,红外辐射和红外元件、部件的科学研究逐步发展,但发展比较缓慢,直到1940年前后才真正出现现代的红外技术。当时,德国研制成硫化铅和几种红外透射材料,利用这些元、部件制成一些军用红外系统,如高射炮用导向仪、海岸用船舶侦察仪、船舶探测和跟踪系统,机载轰炸机探测仪和火控系统等等。其中有些达到实验室试验阶段,有些已小批量生产,但都未来得及实际使用。此后,美国、英国和前苏联等国竞相发展。特别是美国,大力研究红外技术在军事方面的应用。目前,美国将红外技术应用于单兵装备、装甲车辆、航空和航天的侦察监视、预警、跟踪以及武器制导等各个领域。半个世纪以来随着光学技术和半导体技术的发展,红外检测技术也日趋完善,其中红外测温技术也形成了完整的理论并成功地应用于医学、农业和工业等领域。
在实现远距离温度监测与控制方面,红外温度传感器以其优异的性能,满足了多方面的要求。在产品加工行业,特别是需要对温度进行远距离监测的场合,都是温度传感器大显身手的地方。在食品行业红外温度可以在不被污染的的情况下实现食品温度记录,因此备受欢迎。
随着红外测温技术的普遍应用,一种新型的红外技术—智能数字红外传感技术正在悄然兴起。这种智能传感器内置微处理器,能够实现传感器与控制单元的双向通信,具有小型化、数字通信、维护简单等优点。当前,各传感器用户纷纷升级其控制系统,智能红外传感器的需求量将会继续增长,预计短期内市场还不会达到饱和。另外,随着便携式红外传感器的体积越来越小,价格逐渐降低,在食品、采暖空调和汽车等领域也有了新的应用。比如用在食品烘烤机、理发吹风机上,红外传感器检测温度是否过热,以便系统决定是否进行下一步操作,如停止加热,或是将食品从烤箱中自动取出,或是使吹风机冷却等。随着更多的用户对便携式红外温度传感器的了解,其潜在用户正在增加。
其中红外线人体测温仪是红外测温技术的一个重要应用,它是利用人体发出的红外线来测量出人体的温度。它采用高精度的红外传感器和微电子技术,能够快速、准确、方便地测出人体的温度,解决了传统水银式温度计的容易破碎、水银染环境与不易读数等问题。这可以说是医学测量的一个重大进步。
2
第二章 红外温度传感器测温原理
2.1 红外测温的基础理论
在自然界中,一切温度高于绝对零度(-273.15°C)的物体,由于分子的热运动,都在不停地向周围空间辐射包括红外波段在内的电磁波,其辐射能量密度与物体本身的温度关系符合辐射定律。物体的红外辐射能量的大小及其按波长的分布与它的表面温度有着十分密切的关系。因此,通过对物体自身辐射的红外能量的测量,便能准确地测定它的表面温度,这就是红外辐射测温所依据的客观基础。
红外线是电磁波谱的一部分,这一波段位于可见光和微波之间。根据普朗克辐射定律,凡是绝对温度大于零度的物体都会向外辐射电磁波,物体的辐射强度与温度及表面辐射能力有关,辐射的电磁波谱分布与物体温度密切相关。在电磁波谱中,我们把人眼可直接感知的0.4 ~ 0.76μm波段称为可见波段,而把波长从0.76 ~ 600μm的电磁波称为红外波段。而红外区通常又可分为近红外区(0.76 ~ 1.5μm)、中红外区(1.5 ~ 10μm)和远红外区(10μm
以上)。近年来,红外辐射技术已成为一门发展迅速的新兴学科。它已经广泛应用于生产、
科研、军事、医学等各个领域。
图2.1 电磁波波谱图
J·D哈里认为,人体辐射能量与皮肤表面温度及辐射率有关。一般活体皮肤光谱范围约为3 ~ 50μm,其中大部分能量集中在8~14μm波段内,峰值波长约为9.5μm。虽然人体生物波普分布范围比较宽,但在非能量集中区域的信号强度较低,尤其远端波段的数值极小。经科学检测,不管人体的肤色如何,干燥皮肤的红外辐射率均为0.98,近似为黑体。根据Planck定律,其波长主要分布在2.5 ~ 25μm红外波段范围内,根据Wien定律λm·T=2898(Kμm),人体皮肤辐射的峰值波长同样约为9.5μm。
其中黑体是一种理想化的辐射体,它吸收所有波长的辐射能量,没有能量的反射和透过,其表面的发射率为1。但是,自然界中存在的实际物体,几乎都不是黑体,为了弄清
3
和获得红外辐射分布规律,在理论研究中必须选择合适的模型,这就是普朗克提出的体腔辐射的量子化振子模型,从而导出了普朗克黑体辐射的定律,即以波长表示的黑体光谱辐射度,这是一切红外辐射理论的出发点,故称“黑体辐射定律”。
图2.2 黑体辐射曲线
(1)、辐射的光谱分布规律—普朗克辐射定律:
一个绝对温度为T(K)的黑体,单位表面积在波长λ附近单位波长间隔内向整个半球 空间发射的辐射功率(简称为光谱辐射度)Mλ,T与波长λ、温度T满足下列关系:
Mλ,T = C1(eC2/λT – 1)-1 (2-1)
式中C1、C2分别为第一、第二辐射常数。普朗克辐射定律是所有定量计算红外辐射的基础。
(2)、斯忒藩(德)— 波尔兹曼(奥)(Stefan—Boltzmann)定律:
物体的总辐射率,即单位面积发射总功率与黑体温度的四次方及材料表面的发射率成正比。其数学表示如下:
W =σεT (2-2)
其中:σ=5.67×10-8w/m2·K4,为Stefan—Boltzmann常数,ε为材料表面发射率。1879年斯忒藩从实验上总结得到该公式,1884年波尔兹曼从理论上证明了它。Stefan—Boltzmann定律表明,凡是温度高于开氏零度的物体都会自发地向外发射红外热辐射,同时黑体单位表面积发射的总辐射功率与开氏温度的四次方成正比。而且,只要当温度有较小变化时,
4
4
都会使物体发射的辐射功率发生很大的变化。因此只要能探测到黑体的单位表面积发射的总辐射功率,就可以确定黑体的温度了。Stefan—Boltzmann定律是所有红外测温的基础。 (3)、辐射的空间分布规律—朗伯余弦定律:
所谓的朗伯余弦定律,就是黑体在任意方向上的辐射强度与观测方向相对于辐射表面法线夹角的余弦成正比:
Iθ = Iocosθ (2-3)
此定律表明,黑体在辐射表面法线方向的辐射最强。因此,实际做红外检测时,应尽可能选择在被测表面法线方向最大值的cosθ倍。 (4)、基尔霍夫(Kirchhoff)辐射定律与发射率:
实验表明,实际物体的辐射度除了依赖于温度和波长外,还与够成该物体的材料性质及表面状态等因素有关。这里,我们引入一个随材料性质及表面状态变化的辐射系数,即可把黑体的基本定律应用于实际物体的红外温度测量。而这个辐射系数就是常说的发射率,或称之为比辐射率,其定义为实际物体与同温度黑体辐射性能之比。该系数表示实际物体的热辐射与黑体辐射的接近程度,其值在大于0和小于1的数值区间中。根据辐射定律,只要知道了材料的发射率,就知道了任何物体的红外辐射特性。影响发射率的主要因素有:材料种类、表面粗糙度、理化结构和材料厚度等。
因此利用在相同温度下实际物体与黑体的辐射出度之比来表示该物体的一种特性,可以称之为实际物体的发射率,也叫做全发射率,用ε表示。数学表示为:
ε = M / Mo (2-4)
式中:M为实际物体的辐射出度,Mo为相同条件下黑体的辐射出度。
基尔霍夫定律揭示了热平衡下物体的辐射与吸收的关系,指出了一个好的吸收体也是一个好的辐射体。可以用以下公式表达:
ε = α (2-5)
由此可以看出,任何处于热平衡下物体的吸收率等于发射率,即物体的辐射本领越大其吸收本领也越大。
而为了减少测量物体温度的误差,我们要去除环境温度因素的影响,所以修正的红外辐射定律如下:
E = σε(TO- TA) (2-6)
式中:E为辐射出射度数,单位W/m
-8
2
4
34
4
;σ
为斯蒂芬—波尔兹曼常数,5.67×
10W/(m·K);ε为物体的辐射率;TO为物体的温度,单位K;TA为物体周围的环境温度,单位K;只要测量出所发射的E的值,就可计算出对应的温度。
利用这个原理制成的温度测量仪器叫红外测温仪。这种测量不需要与被测对象接触,因此属于非接触式测温。在不同的温度范围,对象发出的电磁波能量的波长分布不同,在常温(0~100°C)范围,能量主要集中在中红外和远红外波长。用于不同温度范围和用于不
5
同测量对象的仪器,其具体的设计也不同。根据式(2-6)的原理,仪器所测得的红外辐射为:
E = Aσε1ε2(TO
4
–TA) (2-7)
4
式中:A为光学常数,与仪器的具体设计结构有关;ε1为被测对象的辐射率;ε2为红外温度计的辐射率;TO为被测对象的温度(K);TA为红外温度计的温度(K);它由一个内置的温度检测元件测出。所有的物体,包括人体各部位的表面,其ε值都是某个大于0并小于1.0的数值。
其中红外测温仪由光学系统、光电探测器、信号放大器及信号处理、显示输出等部分组成。光学系统汇聚其视场内的目标红外辐射能量,视场的大小由测温仪的光学零件及其位置确定。红外能量聚焦在光电探测器上并转变为相应的电信号。该信号经过放大器和信号处理电路,并按照仪器相关的算法和目标发射率校正后转变为被测目标的温度值。当用红外辐射测温仪测量目标的温度时首先要测量出目标在其波段范围内的红外辐射量,然后由测温仪计算出被测目标的温度。单色测温仪与波段内的辐射量成比例;双色测温仪与两个波段的辐射量之比成比例。
2.2 红外测温传感器的一般结构及测温的特点
某些晶体材料,当其受热时温度升高,在晶体两端产生数量相等符号相反的电荷;晶体冷却,产生的电荷符号则与温度升高时相反。这种由于热变化产生的电极化现象称作热释电效应。红外感应源通常采用热电堆元件,这种元件在接收到人体红外辐射时,由于自身温度变化,导致产生电荷或电势差,再利用一定的电路将该电信号进行处理放大并处理就可以得出要测量的温度值。
其中温差电堆由若干热电偶串联组成,热电偶传感器测定温度与输出电压的关系的测温点在接收到红外辐射能量后温度升高,因为“塞贝克效应”而产生热电动势,其输出电压和测定点的温度近似成正比例关系,这是红外温度传感器测量体温所依据的基础。
同时为减少太阳光等可见光对传感器的影响,在传感器的前面要加上滤光片,只让红外光通过。滤光片的波长可通过下式计算:λ=2898/T。式中:λ(μm)是波长,T(K)是绝对温度。人体的正常温度取为37°C,则T =310K;λ=9.35μm。通常选用波长为6 ~ 14 μm的光学滤光片,其带通特性有利于温度的测量。
(1)、远距离和非接触测量:红外测温不需要与被测物体接触,并可远距离测量,它特别适合于高速运动物体、旋转体、带电体和高温高压下物体的温度测量。同时也适合用于人体测温。
(2)、响应速度快:红外测温不像常规温度计那样,需要与被测量物体接触以达到热平衡状态才能得到正确的温度数据。它只要接收到目标的红外辐射即可测量,其响应速度在毫
6
秒甚至微秒数量级。
(3)、灵敏度高:因为物体温度的微小变化会引起辐射功率的较大变化,容易被红外测温传感器探测,所以红外测温的可测温差很小,可达零点零几摄氏度。
(4)、准确度高:红外测温是非接触测量,不破坏物体本身的温度分布,因此所测温度相对较为准确。
(5)、测温范围广:测温范围可从负几十摄氏度到正几千摄氏度。
2.3 本章小结
本章主要阐述了红外线测温的一些基础理论和红外测温传感器的结构以及特点。红外线测温可以说是人类发现红外线后的一个重要应用,其中红外线人体测温仪更是医学测量上的重要发明。现在随着科学技术的不断发展,红外线人体测温技术已经非常成熟了,市面上也有非常多的相关产品供人们选择。
7
第三章 总体方案设计和选择
3.1 设计任务分析
因为本课题是关于便携式红外人体测温仪的设计,所以要采用红外线测温的原理来测量人体的温度,并且要考虑系统的便携性。常见的红外人体测温仪主要有两种:一种是红外耳温计,另一种是红外额温计;这两种形式的红外体温计各有自己的优缺点。
其中红外耳温计是一种专门用于测量鼓膜温度的温度计,通过红外导波管将主要由鼓膜发射的红外辐射能传送到热电堆等热探测器,将红外辐射能量转换为电能后进行电信号处理得到人体温度信息。由于鼓膜的温度稳定,且可以直接体现人体内部核心温度,因此当使用方法正确时耳温计的示数可以作为医学确认。但缺点是由于对使用者提出较高的要求,且使用一次性的探头盖,增加了后期的使用成本。它常用于对卫生要求比较高的医院和家庭里。
而红外额温计主要是通过测量人体的体表(额头等)红外辐射,经过处理后从而得到人体的温度信息。其优点是完全无需与人体接触(真正意义上的无接触测量),这就意味着无需使用一次性的探头盖,从而节约使用成本和避免人群交叉感染。但由于人体的体表温度很容易受到各种因素(温度、湿度、人体体表的洁净度等)的影响,比如在寒冷的冬天人体的体表温度比核心温度要低得多,而在炎热的夏天则情况相反。这样测量得出的温度数据不能反映出人体温度的真实信息,而且这些因素的影响是不确定的,因此难以通过合适的温度补偿来消除误差。所以在现实应用中,通常红外额温计是用于体温的初步判断,而真正的诊断还是需要普通的水银体温计。
这两种红外体温计实际上应用的原理和内部结构是基本一致的,只是两者有一些细微的差别而已。但是红外耳温计的使用方式使得它具有较高的准确性。同时对于个人使用者来说,体温测量并不是每天都进行的,所以并不会增加太多的额外成本;而对于医院使用者来说,这些使用成本也是在可承受范围内的。综上所述,本设计采用测量鼓膜温度的方案,即设计一个红外耳温计。经过初步分析可以得知,整个系统可以划分为几个大模块,红外测温模块、单片机处理模块、外围电路(输入按键、LCD等)模块和电源模块。其中为了提高系统的便携性,电源模块采取电池供电的方式。所要设计的系统的几个基本要求和指标如下所示:
(1)、利用人体红外辐射的原理来测量体温,即采用红外温度传感器; (2)、体温测量的准确度要高;
(3)、系统采用电池供电,且功耗要低;
8
(4)、系统响应速度要快,要在1~2s内完成测温; (5)、要使用简单,有良好的人机界面;
(6)、总体成本(硬件成本、设计时间成本等)要低。
可以实现该设计的方案有很多种,但在这里主要考虑其中两种方案。其中一种方案是采用模拟红外温度传感器来实现设计,另一种方案是采用数字红外温度传感器来实现设计。以下章节内容便是这两种方案的对比和选择。
3.2 方案对比与选择
方案一:
在该方案里,系统可以分为模拟红外温度传感器(内含环境温度测量)模块、放大电路模块、AD转换电路模块、MCU主控模块、按键模块、蜂鸣器模块、LCD模块和电源模块(如图3.1所示)。所谓的模拟传感器就是传感器的输出量是模拟量,而不是可以直接进行数据处理的数字量,所以它需要通过信号放大和AD转换等处理后才能传输给单片机进行相关的处理。
图3.1 方案一的系统框图
首先模拟红外温度传感器接收人体发出的红外线,然后经过转换后输出对应的电压值,传感器同时通过片上温度传感器测量环境温度/传感器温度。这两个红外温度传感器的输出量通过放大电路和AD转换电路的处理后传输到MCU模块进行相关的处理(软件滤波、黑体校定等),然后通过LCD模块显示相应的人体温度。
9
方案二:
该方案与第一个方案的最大区别就是:在本方案中采用数字红外温度传感器来代替模拟红外温度传感器。由于数字红外温度传感器(例如MLX90615等)内部已经集成了运放电路、AD转换电路、滤波电路和数字信号处理器,所以只需通过传感器的数据接口就可以把传感器所测量的人体温度数据直接传输给MCU模块处理并显示。
图3.2 方案二的系统框图
方案对比和选择:
对于方案一,模拟传感器的成本相对要低,而且整个系统设计的自由度相对要高一些,但是也使得系统电路变得更为复杂。例如集成运放电路要用到双电源供电,这就使得电源模块的设计变得复杂、功耗变大和效率变得更低,这对于使用电池供电的便携式系统是不利的。同时在软件设计方面,要涉及到滤波处理、温度线性校准处理和黑体校定等,这使得设计工作量大大增加。而且对于开发者的开发环境要求较高,例如要具备黑体校定的设备等。
而虽然在方案二里采用的数字传感器的成本相对模拟传感器要高,但整个系统的设计相对简单,数字红外温度传感器可以与MCU直接相连接(需要接上拉电阻)。由于不需额外的集成运放电路,所以也不需要用到双电源供电,因而使得电源模块设计简化,电池的利用效能更高。由于该方案的电路简单且集成度高,所以功耗更低。而且相比第一个方案,无需黑体校正。所以开发时间也比方案一要少。这也意味着这个方案的总体成本(硬件成本、开发时间成本等)其实要比方案一要低。
综上所述,方案二是本系统最合适的设计。
10
3.3 总体方案设计
经过论证对比后,本人选择了方案二的设计。在该方案里,整个系统从硬件上可以分成六个子模块:分别是红外温度测量模块、MCU主控模块、按键输入模块、声音提示模块、LCD显示模块和电源模块(如图3.2所示)。
其中本系统的红外测温传感器采用迈利芯(Melexis)公司设计生产的低成本红外温度测量数字传感器 — MLX90615。MLX90615中的红外温度传感元件是工业级硅片,它带有的一个薄型微机械加工隔膜来过滤掉环境红外线的影响,环境温度由芯片内置的热电偶测得。定制的内置信号调节芯片放大微小的热电偶电压并将其数字化,通过使用芯片EEPROM存储器中储存的生产厂设定校准参数,计算出物体的温度。数字输出温度是完全线性化并对环境温度进行过补偿的。通过SMBus或连续的PWM信号,传感器将结果输送到使用者应用中。整个温度计系统封装在一个金属罐中。对于OEM制造商来说,这些特性提供如下的优点:不需要昂贵的外部组件,能够轻松将传感器整合到应用电路(PCB)上。这种自容式系统解决了微小电压信号、环境影响和电磁兼容性的设计难题,否则这些因素会导致红外线温度测量的很多困难和麻烦。同目前市场上的其它红外线解决方案相比,高度的集成化使得MLX90615更具价格优势。
本系统主要实现以下功能:系统设置(短摁表示背光开启/关闭,长摁表示声音开启/关闭);体温数据查询,并至少存储十组数据;超出量程提示(H/L);电源低压提示;体温快速测量;系统休眠功能(当测温仪长时间不使用的时候,系统进入休眠状态以减少功耗);等等。
3.4 本章小结
这一章主要分析了课题的设计要求和基本指标,初步决定红外耳温计这个设计方向。然后对两种不同的方案进行了对比和分析,最后决定使用第二个方案作为该课题的最终方案。在该方案里,整个系统从硬件上可以分成六个子模块:分别是IR温度测量模块、MCU主控模块、电源模块、LCD显示模块、按键输入模块和声音提示模块。从软件上可以分为三个程序子模块:主控程序模块(内含按键扫描等子程序)、LCD驱动程序模块和MLX90615程序模块。详细设计见第四章(系统硬件设计)和第五章(系统软件设计),在这里就不一一介绍了。
11
第四章 系统硬件设计
4.1 电源模块
4.1.1 PT1301简介
PT1301是一款最低启动电压可低于1V的小尺寸高效率升压DC/DC转换器,采用自适应电流模式PWM控制环路。PT1301内部包含误差放大器、斜坡产生器、比较器、功率开关和驱动器。PT1301能在较宽的负载电 流范围内稳定和高效的工作,并且不需要任何外部补偿电路。PT1301的启动电压可低于1V,因此可满足单节干电池的应用。PT1301内部含有2A功率开关,在使用锂电池供电时最大输出电流可达 300mA,同时 PT1301 还提供用于驱动外部功率器件(NMOS 或 NPN)的驱动端口,以便在应用需要更大负载电流时,扩展输出电流。同时500KHz的开关频率可缩小外部元件的尺寸。其输出电压由两个外部电阻设定。最小的低静态电流是14μA,再加上高效率,可使电池使用更长时间。其特点如下所示:
● 低静态(开关关断状态)工作电流:14μA ● 低启动输入电压:
0.8V(典型)
3.3V/100mA;一节锂电池提供5V/300mA
● 高供电能力:由一节碱性电池提供● 关断状态零工作电流 ● 高效率:90%
● 固定开关频率:500KHz ● 可选择内部或外部功率管开关
● 封装形式:SOT-26,SOT-89-5(在本设计中,采用SOT-26封装的PT1301)
图4.1 PT1301引脚排列示意图
12
表4.1 PT1301引脚说明
引脚序号(SOT-26) 1 2 3 4 5 6 符号 CE EXT GND LX VDD FB 说明 使能端,CE为低电平时,PT1301关断 外接功率开关驱动输出端 地 内部功率开关输出 电源管脚 反馈输入管脚 图4.2 PT1301电路框图(内部)
PT1301应用设计指导如下: 1、输出电压
参考典型应用电路图,输出电压Vout由电阻R1和R2按以下公式设定:
Vout=(1+ R1/R2)×1.25(单位:V) (4-1)
2、反馈环路设计
在典型应用参考电路图中,电阻R1和R2阻值的选择,除要符合上述Vout公式外,还须在系统的静态电流和抗干扰能力方面做权衡。
(1)、更高的电阻取值可降低系统的静态电流(I=1.25V/R2)。
(2)、较低的电阻取值则可获得较好的抗噪声和抗干扰能力,降低对PCB布图寄生参数的敏感度,提高系统稳定性。
因此,对于无待机状态或悬置状态的应用而言,R1和R2取值宜低些,而对于对待机或悬置电流要求很高的应用,R1和R2阻值需要取高,这时候由于反馈回路的阻抗很高,
13
第六章 系统调试与分析
6.1 红外测温系统调试和分析
本论文是关于便携式红外人体测温仪的设计。为了提高测温的准确性,本人采用了耳温计的设计方案。由于整个系统(软件和硬件)采取了模块化的设计思想,因此在很大程度上提高了调试系统的便易性。
首先把系统硬件的各个模块(电源模块、红外测温模块等)都焊接好,然后逐个地检测每个模块是否有元器件焊接错误,是否有虚焊、短路等情况出现。如果这些工作都完成了,就可以把已经编译好的软件程序通过AVR studio(JTAG模式)下载到本系统的主控芯片—ATmega32A里。虽然系统软件部分可以通过编译软件的编译,但这仅仅是语法上的检测,具体运行效果还是要取决于调试的结果。由于本系统的软件也是采用模块化的编程方式,所以它也可以像硬件那样进行分模块进行调试。例如,我们可以先把其它模块屏蔽,然后测试LCD模块是否能显示各种需要显示的内容,等等。
图6.1 红外人体测温仪的实物图
39
当系统的软件和硬件都基本通过了电路和基本功能调试后,就可以进入最后的人体温度测量调试了。因为缺少相应的测试和校准设备,所以本人无法对该系统的准确度进行系统地测试和评估。因此,在这里只能与水银体温计的测量结果进行对比和分析。但本系统(红外耳温计)是测量人体耳膜的温度,水银体温计主要是测量人体腋下的温度,而事实上人体不同部位的温度是不一致的,如表6.1所示:
表6.1 人体不同部位的正常体温对比表
身体部位 正常体温 耳温 35.9 ~ 37.6 肛温 36.6 ~ 38 口温 35.5 ~ 37.5 腋温 34.8 ~ 37.3 (注:以上数据仅为参考数据)
水银体温计自其发明以来,在医学界里就一直作为标准的人体测温工具,所以这次的毕业设计——便携式红外人体测温仪就以水银体温计的测量值作为温度调校基准。而只要本系统基本达到水银体温计的精度水平即可。但我们从表6.1中的数据可以得知:在测试条件相同的情况下,人体耳膜温度平均要比腋下温度高出0.5°C左右,因此两者的测量数据是有一定偏差的。所以,在两者进行数据对比时,有零点几摄氏度的差值是合理的。只要红外人体测温仪测量的体温数据减去一个差值(大约为0.5°C),得到的结果接近水银体温计测得的数据,我们就可以认为它所测的数据是准确的。人的体温随一天中不同的时间而变化,同时也受其它外部条件的影响,比如年龄、性别、温度以及湿度等。以下是人体正常耳温的参考数据:
表6.2 人体正常耳温的参考数据 年龄组别 0 ~ 2岁 3 ~ 10岁 11 ~ 65岁 65岁以上 正常耳温(摄氏度) 36.4 ~ 38.0 36.1 ~ 37.8 35.9 ~ 37.6 35.8 ~ 37.5 (注:人体正常温度会因年龄不同而有差异,本图表仅为参考数据)
在本次调试中,温度采集分两种形式进行,分别是用水银体温计和红外人体测温仪采集被测对象的体温数据。其中水银体温计是测量人体腋下的温度,红外人体测温仪是测量人体耳膜的温度。测量过程中,除测温的方式不同外,其它因素全部相同(环境温度、湿度、同一时间段、等等)。经过多次测量后,我们可以得到多组的体温数据,以下是其中一组数据的图表:
40
图6.2 人体温度数据曲线
由上述数据曲线我们可以得知:水银体温计所测量出的体温数据相对比较稳定,其误差在±0.1°C左右;而红外体温计由于其灵敏度高、容易受环境因素影响,所以测量误差会偏大一些,大约在±0.2 ~ 0.3°C左右。水银体温计所测得的温度值的平均值大约是36.8°C,红外体温计所测得的温度值的平均值大约是37.2°C,两者相差0.4°C。由于人体耳道的温度要比腋下的温度要高一些,因此两者的均值存在差值是正常的。上述测量数据说明本设计是可行的。
当上述测试完成后,就可以进入系统功能测试了。在本设计中,key1是功能设置键,其中长摁表示开启/关闭蜂鸣器,短摁表示开启/关闭背光;key2和key3是体温数据查询键(key2表示查询上一组数据,key3表示查询下一组数据),本系统总共可以记录十组温度数据以供使用者进行温度对比;而key4则是测温按键。当没有任何按键按下的时候,系统在几分钟后会进入休眠状态以节省电源。如果使用者想唤醒系统,只要摁下key4即可。经过本人的测试,系统均实现了设计方案所提出的功能。
6.2 本章小结
本章主要讲述了便携式红外人体测温仪的调试和测量结果分析。在此,本系统(便携式红外人体测温仪)实现了设计方案所提出的功能和要求,真正做到了与水银体温计的精度相当,而且拥有许多水银体温计所没有的优点:安全、快捷方便等。
41
第七章 总结与展望
众所周知,体温是人体生命活动的基本特征,也是观测人体机能是否正常的一个重要指标。所以体温计无论是在日常保健和还是临床诊断上,都是必不可少的医用计量器具。虽然传统的水银体温计价格低廉、精度高,但也有许多弊端:不易读数,水银对人体有害,等等。随着科技的发展和现代医疗技术的需要,测温技术也在不断地改进和提高,然后人们研究出了红外线人体测温仪,它是利用人体发出的红外线来测量出人体的温度。这无论在大规模的疫检,还是在日常保健中都发挥了重要的作用。
本文主要讲述了此课题(便携式红外人体测温仪)的背景和意义,以及讲述了红外线测量体温的原理。然后分析了课题的设计要求和基本指标,初步决定红外耳温计这个设计方向。然后对两种不同的方案进行了对比和分析,最后决定使用第二个方案作为该课题的最终方案。在该方案里,整个系统从硬件上可以分成六个子模块:分别是IR温度测量模块、MCU主控模块、电源模块、LCD显示模块、按键输入模块和声音提示模块。从软件上可以分为三个程序子模块:主控程序模块(内含按键扫描等子程序)、LCD驱动程序模块和MLX90615程序模块。当完成上述模块时,最后就进入到系统调试和分析的阶段。
由于本人的知识水平和能力有限,所完成的设计虽然达到了课题要求,但还有很多地方值得进一步改进。例如,进一步减少功耗,具备自动关机功能,等等。同时,由于缺少相应的测试和校准设备,本人也无法对该系统的精确度进行系统地测试和评估。因此,在这里只能与水银体温计的测量结果进行对比和分析。所以,此设计离实际生产和使用还有一定的差距。
红外线人体测温仪有着水银体温计不可比拟的优势,它能能够快速、准确、方便地测出人体的温度,解决了传统的水银式温度计的容易破碎、水银染环境与不易读数等问题。虽然如此,现在红外体温计还是无法完全取代水银体温计。很大的一个原因就是红外体温计的价格要比水银体温计的要高得多,市面上性能一般的红外体温计售价都要一百多元,性能良好的更是多达几百元,而水银体温计仅仅花费十几元即可。同时,由于它灵敏度高、容易受环境因素影响,所以测量值可能会有较大的浮动,目前的红外体温计的最高精度一般在±0.2°C,还难以达到水银体温计±0.1°C的偏差。
但随着科技的快速发展,红外线人体测温仪也在不断地改进中。相信在不久未来,红外线人体测温仪可以更稳定、更精准、更廉价,从而可以完全取代传统的水银温度计。
42
参考文献
[1]张军,宋涛. AVR单片机C语言程序设计实例精粹[M]. 北京:电子工业出版社,2009. [2]由富恩,张存芳,付乐勇. 辐射测温仪原理及其检定[M]. 北京:中国计量出版社,1990. [3]沙占友. 集成传感器应用[M]. 北京:中国地理出版社,2005. [4]周继明,江世明. 传感技术与应用[M].中南大学出版社, 2005. [5]裒继俊,董培芝. 中国红外产品与应用[M].长城出版杜,2004. [6]高魁明,谢植. 红外理论与技术[M]. 沈阳:东北工学院出版社,1989.
[7]庄春生,杨杰,刘宏伟. 新型智能电子体温计的研究[J]. 河南科学,2004年第22卷第6期. [8]曾强,舒芳誉,李清华. 红外测温仪—工作原理及误差分析[J]. 传感器世界,2007(2). [9]曹欣荣,戴景民. 环境温度对红外辐射式体温计读数的影响[J]. 计量学报,2002(1). [10]沈国彦,宋平.红外温度计测量体温方法探讨. 仪表技术,2003年第3期. [11]ATmega32A DataSheet[Z]. Atmel Corporation,2008. [12]MLX90615 DataSheet[Z]. Melexis Corporation,2007. [13]PT1301 DataSheet[Z]. Foxit Software Company,2004. [14]PCD8544 DataSheet[Z]. Philips Corporation,1999.
43
从而对干扰非常敏感,必须非常仔细地进行布图,并且避免任何对FB端的干扰。
为了提高系统的稳定性,可在FB端与Vout之间接一电容,该电容的经验取值是:当上述电阻为MΩ级时,取值约100pF,当上述电阻取值为几十至几百KΩ时,取值在10nF~0.1uF之间。 3、PCB布图指导
为提高系统稳定性,在 PCB 布图时可遵循下述指导: (1)、GND平面不要有缝隙;
(2)、5脚(VDD)与3脚(GND)之间的1μF MLCC 噪声旁路电容,连接要短而宽; (3)、如果Vin输入不是理想电压源,就在就近电感L1处加一个Vin到GND的旁路电容; (4)、FB结点的覆铜面积要尽可能小,并且要远离干扰源; (5)、减小LX和EXT结点的寄生电容可降低开关损耗。
4.1.2 电源模块电路设计
因为要考虑到系统的便携性,所以该系统采用电池供电。市面上电池的种类繁多,比如干电池、锂电池和纽扣电池等。其中干电池几乎在每个商店都有出售,这就在很大程度上方便了使用者更换电池。所以,本系统决定使用常见的5号干电池作为系统电源。整个系统各模块的工作电压都约等于3V,虽然意味着系统可以直接使用两节干电池(共3V),但事实上干电池在使用的过程中电压会不断地降低,这就很可能导致系统工作不稳定。其解决办法就是使用电压转换电路:一种是降压电路,即系统使用三个或以上的干电池供电,然后通过LDO(低压差线性稳压器)电路稳压后输出3V的电源电压;另一种是升压电路,即使用一个干电池作为供电源,然后通过DC/DC升压电路转换后输出3V的电源电压。
以上两种方法各有优缺点:虽然第一种方法简单可靠,但是也会使得系统得体积和重量有所增加,显然这不利于系统的便携性;而第二种方法只使用一个干电池作为供电源,这就使得系统更加紧凑和使用方便。但这种办法也是有缺点的:DC/DC升压转换电路的输出电压的波纹比LDO电路的要大,而且电路相对更复杂。鉴于整个系统并不属于高速高频电路,所以输出电压的波纹对整个系统影响不大。
综上所述,本人决定采取第二种电路设计方案,其中DC/DC升压转换芯片采用PT1301。由于PT1301的启动输入电压可低于0.8V以及实测效率高于80%,所以整个系统可以有效地利用干电池的电能(一般干电池的空载输出电压低于1.2V时就没多少电量了)。PT1301的DC/DC升压转换电路设计比较简单,只要参考相关的说明书里的典型应用电路图即可。根据式4-1,我们可得知系统电源模块的输出电压取决于R1和R2的比值。经过权衡系统的静态电流和抗干扰能力(R1的阻值越大,静态电流就越小,但抗干扰能力就越差),R1和R2的取值分别为33kΩ和22kΩ。即电源模块的输出电压为Vout=(1+ R1/R2)×1.25=3.125V,其电路设计图如下所示。
14
图4.3 电源模块电路图
4.2 红外测温模块
4.2.1 MLX90615简介
MLX90615是一款由Melexis公司设计生产的低成本红外温度测量数字传感器。它的输出数据和物体温度呈线性比例,有较高的精度和分辨率。用户可以对低发射率的物体在内部进行发射率校正。MLX90615采用TO-46封装,其低功耗和睡眠模式使其适合于手持移动应用。数字传感器接口可以为PWM或是加强的SMBus兼容协议,系统可以在两线上连接多达100多个器件。
其内部有2颗芯片,红外热电堆探测器和信号处理ASSP MLX90325,尤其是由Melexis设计的处理IR传感器输出的芯片。由于集成了低噪声放大器,16位ADC和强大的DSP的MLX90325单元,使得高度集成和高精度的温度计得以实现。计算所得的物体温度被存储在MLX90615的RAM单元,此数值可通过串行两线SMBus兼容协议获或是器件的10位PWM格式获得。MLX90615出厂校准的标准温度范围为:环境温度为-40到85°C,物体温度为-40到115 °C。作为标准,MLX90615出厂校准的物体发射率为1。发射率可以简单地定制为0.1到1之间,并且不需要用黑体来做重新校准。同时MLX90615可用电池供电,且封装中集成了可以滤除可见光和近红外辐射通量的光学滤波器(可通过长波)以提供日光免疫。其中MLX90615应用的波长范围为5.5~15μm。
15
1、MLX90615的特点如下:
● 小尺寸,易集成,低成本 ● 出厂校准设置宽温度范围:
- 40 to +85 °C传感器温度范围 - 40 to +115 °C物体温度范围
● 宽温度范围的高精度,精度为0.5°C(TA和TO都为0°C to +50°C) ● 高精度(医用)校准 ● 测量分辨率为0.02°C
● 其输入/输出端口为数字接口(SMBus模式和PWM模式),使用方便简单 ● 采用3V电源电压,且具备省电模式 ● 具备发射率补偿功能
2、MLX90615型号及器件简介:
表4.2 MLX90615型号说明
零件编号 MLX90615 温度编码 E(- 40°C ~ 85°C) 封装编码 SG(TO-46) 准确率级别 标准:BAA 医用:DAA
图4.4 MLX90615顶视图
表4.3 MLX90615引脚说明
引脚名称 VSS SCL SDA/PWM VDD 地,金属罐也连接到该引脚上。 两线通信协议的串行时钟信号。引脚应用弱上拉电阻(典型值300kΩ) 数字信号输入/输出开漏NMOS。在SMBus模式里(出厂默认)为串行数据I/O;在PWM模式里为PWM输出。引脚应用弱上拉电阻(典型值300kΩ) 外部电源电压(约为3V)。 功能
16
3、器件型号选择:
在本设计中,IR传感器选用的型号为:MLX90615ESG—DAA(如下图所示),即医用型号。因为此型号经过Melexis公司特别设计,使得它对人体体温的测量有较高的精度。其中在环境温度为20至30°C的条件下,目标温度的测量精度可达0.2°C(在32至42°C的人体温度范围内)。
图4.5 MLX90615ESG—DAA(TA,TO)的基本温度精度
4、MLX90615工作原理和内部结构:
图4.6 MLX90615内部电路图
IR传感器包括串联的热电偶,冷接头放置在厚的芯片衬底上,热接头放置在薄膜上。薄膜加热(或是冷却)从而吸收并辐射IR。热电堆的输出信号为:
Vir(TA,TO)= A·(TO4-TA4) (4-2)
其中TO是物体的绝对温度(K),TA是传感器片绝对温度,A是总体的敏感度。需要一个附加的传感器来测量芯片的温度。在测量完两个传感器输出后,对应的境温度和物体温
17
被计算出。计算是通过内部DSP产生数字输出并测量温度成线性比例。环境温度TA(传感器芯片温度)是通过PTAT元件测量。
所有传感器的状态和数据处理都是片上操作的,线性的传感器温度TA存于RAM中(地址为6h),其分辨率为0.02°C。传感器出厂的调校范围是- 40 to +85 °C。在RAM单元地址6h中2D89h代表- 40°C,而45F3h代表+85°C。将RAM内容转换为实际的TA比较简单:TA [K] = Tareg×0.02。同理,存在RAM(地址为7h)里的目标温度TO是:TO [K] = Toreg×0.02。
MLX90615是由内部状态机控制物体温度和环境温度的测量和计算,进行温度后处理,并将结果通过PWM或是SMBus模式输出(取决哪个是激活状态)。IR传感器的输出通过增益可编程的低噪声低失调电压放大器放大,经过Sigma Delta调制器转换为单一比特流并反馈给DSP做后续的处理。信号通过可编程的(用EEPROM实现)FIR和IIR低通滤波器以进一步减低输入信号的带宽从而达到所需的噪声特性和刷新率。IIR滤波器的输出为测量结果并存于内部RAM中。
基于以上测量结果,计算出对应的环境温度TA和物体温度TO可通过两种方式读取:通过两线接口读取RAM单元或者通过PWM数字模式输出。测量周期的最后一步为:测量所得TA和TO被重新调节为PWM所需的输出分辨率,并且该数据存在PWM状态机的寄存器中,状态机可以产生固定频率和一定占空比来表示测量的数据。
4.2.2 红外测温模块电路设计
红外测温模块的电路设计相对比较简单。根据红外传感器MLX90615的Datasheet,我们可以得知MLX90615的第1个管脚是SDA端口,第2个管脚是电源端(VDD),第3个管脚是SCL端口,第4个管脚是地端(GND)。其中SCL端口和SDA端口需要接上拉电阻(参考值300kΩ),而电源端和地端之间需要接一个大约为0.1μF的电容(如下图所示)。
图4.7 IR测温电路图
18
4.3 MCU主控模块
在本系统中,主控MCU则采用ATMEL公司研发的增强型内置flash的RISC(Reduced Instruction Set CPU)高速8位单片机——AVR单片机。AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。为了获得最高的性能以及并行性,AVR采用了Harvard结构,具有独立的数据和程序总线。程序存储器里的指令通过一级流水线运行。CPU在执行一条指令的同时读取下一条指令( 在本文称为预取)。这个概念实现了指令的单时钟周期运行。
图4.8 AVR的结构框图
AVR单片机内嵌高质量的flash程序存储器,擦写方便,支持ISP和IAP,便于产品的调试、开发、生产、更新。内嵌长寿命的EEPROM可长期保存关键数据,避免断电丢失。片内大容量的RAM不仅能满足一般场合的使用,同时也更有效的支持使用高级语言开发系统程序,并可像MCS-51单片机那样扩展外部 RAM。AVR单片机技术体现了单片机集多种器件(包括flash程序存储器、看门狗、EEPROM、同/异步串行口、TWI、SPI、A/D模数转换器、定时器/计数器等)和多种功能(增强可靠性的复位系统、降低功耗抗干扰的休眠模式、品种多门类全的中断系统、具输入捕获和比较匹配输出等多样化功能的定时器/计数器、具替换功能的I/O端口等)于一身,
19
充分体现了单片机技术向“SOC”的方向进行发展。
AVR单片机的具体型号非常多,在这里本人选择了性能和价格适中的ATmega32A作为这个系统的主控芯片。ATmega32A是ATMEL公司研发的改进型AVR单片机,它是一款低功耗和宽电压运行(2.7V ~ 5.5V均可正常运行)的芯片,可用于取代旧款的ATmega32和ATmega32L。ATmega32A的一些产品特点如下所示:
● 高性能、低功耗;
● 先进的RISC结构:131条指令(大多数指令执行时间为单个时钟周期),32个8位通
用工作寄存器,全静态工作,工作于16 MHz时性能高达16 MIPS,具有只需两个时钟周期的硬件乘法器;
● 非易失性程序和数据存储器:具有32K字节的系统内可编程Flash,具有独立锁定位的
可选Boot代码区(通过片上Boot程序实现系统内编程),具备真正的同时读写操作,具有 1024字节的EEPROM和2K字节的片内SRAM,可以对锁定位进行编程以实现用户程序的加密;
● 具有JTAG接口:符合JTAG标准的边界扫描功能,支持扩展的片内调试功能,通过
JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程;
● I/O和封装:具有32个可编程的I/O口,其中型号有40引脚PDIP封装, 44引脚TQFP封装,
和44引脚MLF 封装;
● 外设特点:两个具有独立预分频器和比较器功能的8位定时器/计数器,一个具有预分
频器、比较功能和捕捉功能的16位定时器/计数器,具有独立振荡器的实时计数器RTC,四通道PWM,8路10位ADC,可编程的串行USART,可工作于主机/从机模式的SPI串行接口,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器,等等;
● 特殊的处理器特点:上电复位以及可编程的掉电检测,片内经过标定的RC振荡器,
片内/片外中断源,6种睡眠模式;
● 工作电压:2.7 ~ 5.5V(ATmega32A); ● 速度等级:0 ~ 16MHz;
● ATmega32A在1 MHz、3V、25°C时的功耗:1.1mA(正常模式),0.35mA(空闲模
式),< 1μA(掉电模式)。
为了制作硬件时方便焊接,本人在此设计中采用了PDIP封装的Atmega32A,如下图所示。
20
图4.9 Atmega32A的引脚配置图(PDIP封装)
在本系统中,IR传感器(MLX90615)电路模块通过SMBus接口(SCL端口和SDA端口)与ATmega32A相连接,其中IR_SCL、IR_SDA分别对应ATmega32A的PB2端口和PB3端口。而PB0端口与蜂鸣器模块的控制端口相连接,PA5 ~ PA0端口与LCD模块相应的管脚连接,PD3 ~ PD0端口与按键输入模块相连接(详细情况可以参考其它模块的电路设计图)。
由于本系统是采用电池供电的便携式系统,所以有必要设计一个电池低压状态检测电路来测量系统是否处于供电电压不足的状态,以提示用户及时更换电池,以免影响测量体温的精度。因为这仅仅是一个简单的低压检测电路,所以对精度要求不高,即R16的压降可视作电池的电压。当PB1端口置低电平时,三极管8550开启,即射极和集电极连通,此时ADC(PA6)开始测量R16上的电压。当电压值低于某个设定值(1.2V)时,LCD模块便显示低压提示。而单片机最小系统的电路设计具体可以参考相关的数据手册,在这里就不一一赘述了。
MCU主控模块的电路设计图如下所示:
21
图4.10 MCU主控模块电路图
4.4 LCD显示模块
LPH7366(Nokia 5110 LCD)是Nokia公司生产的可用于其5110、6150、6100等系列移动电话的液晶显示模块,所以也常被称为LCD 5110模块。该产品除应用于移动电话外,也可广泛用于各类便携式设备的显示系统。该模块具有以下特点:
● 84×48
的点阵LCD,可以显示4行汉字。
MCU进行通信,接口信号线数量大幅减少。支持多种串行通信协议,
● 采用串行接口与
传输速率高达4Mbps,可全速写入显示数据,无等待时间。
● 可通过导电胶连接模块与印制板,而不用连接电缆,用模块上的金属钩便可将模块固
定到印制板上,因而非常便于安装和更换。
● LCD
控制器/驱动芯片已经绑定到LCD晶片上,模块体积很小。
200μA以下,且具有掉电模式。
● 采用低电压供电,正常显示时的工作电流在● 价格较同类产品要低廉。
22
以上这些特点使得LPH7366模块非常适用于电池供电的便携式设备中。
LPH7366液晶显示模块的控制/驱动芯片是PCD8544,其采取的通信协议是一个没有MISO只有MOSI的SPI协议。PCD8544是一块低功耗的CMOS LCD控制/驱动器,设计为驱动48×84的图形显示。所有必需的显示功能都集成在一块芯片上,包括LCD电压及偏置电压发生器,只须很少外部元件且功耗小。同时PCD8544与微控制器的接口使用串行总线的方式进行通信,减少了接口信号线的数量。
图4.11 LPH7366(LCD5110)模块示意图
表4.4 LCD模块管脚说明 序号 1 2 3 4 5 6 7 8 管脚名称 VCC GND SCE RST D/C DIN SCL BLC 说明 模块电源接口(2.7V ~ 3.3V) 接地端 使能端(低电平有效) 复位(低电平有效) 数据(高电平有效)/命令(低电平有效)选择端 串行数据线 串行时钟线 LCD模块背光控制端
由于此LCD模块已经集成了控制/驱动芯片,已经不需其它外围的控制/驱动电路,所以该模块可以与MCU主控模块直接相连。但为了保护LCD模块免受过高的电压或电流破坏,因此应该在LCD模块各端口串联一个几十欧姆的电阻(GND不用串接电阻)。此LCD模块总共有八个端口,其具体管脚说明见表4.4。其中,SCE端与Atmega32A的PA0端口
23
相连接;RST端与PA1端口相连接;D/C端与PA2端口相连接;DIN端与PA3端口相连接;SCL端与PA4端口相连接;而BLC端与PA5端口相连接(并不直接相连接,其具体设计如下)。
虽然AVR单片机的驱动能力比普通的单片机要强,可以直接驱动LCD模块的背光,但是当别的端口被拉低时(比如当有按键按下的时候)还是会影响到LCD模块的背光正常工作。例如:当LCD模块开启背光时,如果LCD模块的背光控制端与MCU直接相连且此时有按键按下,就会出现LCD模块闪烁一下的现象。
为了减少此现象的影响,LCD的背光直接使用系统电源供电。但为了节省电能,背光只在需要的时候才开启,此时就需要一个PNP型的三极管(8550)作为LCD模块背光的“开关”。当PNP型的三极管的基极处于低电平时,背光端口与电源相连接,即LCD模块的背光开启;当PNP型的三极管的基极处于高电平时,背光端口与电源断开连接,即LCD模块的背光关闭。LCD模块的电路图如下所示:
图4.12 LCD模块电路图
24
4.5 系统其它外围电路模块
4.5.1 声音提示模块(蜂鸣器模块)
此模块的主要作用是作为系统按键操作的声音提示,可以确保使用者确定自己已经按下某个按键,这就可以在某种程度上减少误操作。
蜂鸣器模块的控制端(BC)与MCU的PB0端口相连接。当PB0端口置高电平时,PNP型三极管不导通;当PB0端口置低电平时,PNP型三极管处于导通状态,此时有源蜂鸣器会一直响下去。但我们只需要当使用者按下按键时响“滴”的一声即可,所以在设计相关软件时只需使PNP型三极管开启一小段时间即可。
具体电路设计如图4.14所示,其中电容C5的作用是减少电源波纹的影响,电阻R13的作用是限流。
图4.13 蜂鸣器模块电路图
4.5.2 按键输入模块
该电路模块的作用就是控制整个系统。其中key1是系统设置按键(短摁表示背光开启/关闭,长摁表示声音开启/关闭);key2和key3是体温数据查询按键;key4是体温测量按键和系统唤醒按键。
25
图4.14 按键输入模块电路图
4.6 本章小结
这一章主要阐述了红外人体测温仪的硬件设计的具体内容和相关元器件的简介,该系统的硬件主要分为六个子模块,分别是:MCU主控模块、IR测温模块、电源模块、LCD显示模块、按键输入模块和声音提示模块。由于本系统的红外温度传感器MLX90615已经集成了各种处理电路,所以使得整个硬件系统变得简单且功耗低,这是传统红外温度传感器所无法比拟的。
26
第五章 系统软件设计
5.1 主控程序模块
根据程序结构化设计的要求,本人在编程时采用了模块化的编程方式。由这种编程思想以及系统功能的要求可以得知,其软件结构主要包含以下的程序模块:主控程序模块(相关的程序流程图如下所示)、红外测温程序模块和LCD显示程序模块等。
图5.1 主控程序流程图
主控程序模块首先对MCU的端口和LCD进行初始化,然后显示必要的信息和进行电池低压检测(如果电池的电压值过低,就在LCD上显示低压提示符号),之后系统就进入按键扫描阶段。当系统有按键被按下的时候,程序就关闭定时器(定时器溢出时,系统就进入休眠状态)和判断被按下的是哪个按键。如果是按键1,就判断到底是长摁还是短摁,其中短摁表示开启/关闭系统背光,而长摁表示开启/关闭系统声音提示。按键2和按键3的作用则是查看体温数据的历史记录。按键4就是体温的测量键。但如果没用按键按下,
27
系统就开启定时器。如果期间还是没有任何操作,当定时器溢出时系统就会开启外部中断(按键4)和进入休眠状态,此时只有按键4才能唤醒系统。
5.2 红外测温程序模块
5.2.1 MLX90615的传输协议(SMBus)
MLX90615支持SMBus通信协议,引脚分别为SDA和SCL。SDA引脚可以以SMBus格式或PWM格式输出,这就取决于EEPROM的设置。在本设计中,由于系统只应用到SMBus模式,所以在此就不详细介绍PWM模式了。
SMBus接口是2线协议的,允许主控器件(MD)和一个或一个以上的从动器件(SD)通信。在系统给定的时刻里只有一个主控器件是可以利用的。在本设计中,MLX90615只作为从动器件使用。
一般来说,MD通过从动地址(SA)选择从动器件开始数据的传输。MD可以对从动器件的RAM和EEPROM里的数据进行读取,并可对14个EEPROM单元进行写入操作(地址为0…Dh)。如果对MLX90615进行读取操作,器件会回馈以16位的数据和8位PEC,这是在器件内部EEPROM动地址和主动器件发送的编程的从SA相同条下实现的。SA特征允许在两线上连接多达127个器件。在器件连接到总线之前,为了访问器件或是给SD分配一个地址,通信必须以0h SA并跟随低RWB位开始。当MD发送此命令,MLX90615总是会反馈并忽视内部芯片编码信息。EEPROM地址中(4h…Dh)包含出厂校准数值,最好不要变动;同时注意不要在同一总线相同SD地址放两个MLX90615器件。
图5.2 SMBus请求、开始和结束状态
1、主从总线(SMBus)传输协议:
每当SD接收到每个8位数据后,都会回复ACK/NACK信息。MD在初始化通信时会首先发送受控地址,只有能识别该地址的SD才会确认,其它的会保持沉默。如果SD未确认其中的任意字节,MD应停止通信并重新发送信息。NACK也会在PEC接收后出现,这意味着在接收的信息有错误并且MD应重新发送信息。PEC的计算结果是基于除START,RESTART,STOP,ACK和NACK位外的所有位。PEC是CRC-8的多项式aX8+X2+X1+1。每个字节的最高有效位首先传送。
28
图5.3 SMBus包裹元素
2、读取数据(RAM / EEPROM)或写入数据(EEPROM):
图5.4 SMBus读取数据格式(RAM / EEPROM)
图5.5 SMBus写入数据格式(EEPROM)
(注:在对EEPROM进行写操作之前,相应的单元要清零。所谓的清零操作就是简单地在EEPROM地址里写入0000h,同时要注意不要随便更改出厂校准数据。)
29
在(MLX90615)SMBus应用模式里,RAM和EEPROM可以以16×16来读取。例如: RAM里(0x07h)的数值会随着物体温度由-40 °C ~ 85°C变化而从0x2D8Ah到0x4DB0h变化。
表5.1 MLX90615 & SMBus命令
操作码 0001_ XXXX* 0010_XXXX* 1100_0110 命令 EEPROM读取 RAM读取 进入SLEEP模式 (注*:XXXX代表要读取/写入的内存地址的4LSB位。)
EEPROM里只有限定数目的地址是允许客户改写的。整个EEPROM可通过SMBus接口读和写。EEPROM里在地址4h到Dh之间的数据必须保持不变,否则出厂校准值会丢失。
SMBus从动器地址:7 LSBs (6…0)包括了MLX90615会响应的SMBus从动器地址。注意所有MLX90615对会SA(00h)响应因此该数值在网络中是无效的。出厂默认值为5Bh。MLX90615会补偿被测物体的发射率。寄存器的公式为:
发射率 = dec2hex[round(16384× ε)] (5-1)
其中dec2hex[round(X)]发射率数值为代表十进制转换为十六进制。(包括近似值的舍入,无切断)该情况下,物理发射率数值为0…1。其出厂设置为3FFFh,代表发射率为1.0。
表5.2 MLX90615内部的EEPROM
EEPROM(16×16) 名字 SMBus从动器地址(SA)/PWM最小温度 PWM温度范围 配置 发射率 Melexis保留(出厂校准) … Melexis保留(出厂校准) ID编号 ID编号 地址 0h 1h 2h 3h 4h … Dh Eh Fh 可写 YES YES YES YES YES … YES NO NO
MLX90615的RAM可以通过SMBus接口读取,其大小为16×16。RAM寄存器的有限数目是客户感兴趣的,见下面表格里总结。其中目标温度TO存储在地址为07h的RAM里,可
30
以分为DataH(高8位)和DataL(低8位),而TA则是MLX90615封装(环境)温度。输出比例为0.02°K/LSB。将读出人体温度转换为摄氏温度的公式为:
To [°C] = RAM(07h)*0.02 – 273.15 (5-2)
表5.3 MLX90615内部的RAM
RAM(16×16) 名字 Melexis保留 … Melexis保留 TA TO Melexis保留 … Melexis保留 地址 0h … 5h 6h 7h 8h … Fh 可写 YES … YES YES YES YES … YES
3、SMBus的时序:
MLX90615满足除了电学规范部分给定的数值外的所有SMBus时序规范,其SMBus时钟的最大频率为100KHz,最小为10KHz。MLX90615的SMBus的特定时序(如下图所示)为:
(1)、SMBus Request (tREQ ) 定义了一段时间,在这段时间里SCL应该置为低电平以使
MLX90615从PWM模式转换为SMBus模式,至少1.44ms。
(2)、Timeout L是将SCL置为低电平允许的最长时间。这段时间后MLX90615会置通信模
块并准备重新通信,不多于45μs。
(3)、 Timeout H是将SCL置为高电平允许的最长时间。这段时间后会假定总线是空闲的
(根据SMBus规范)并重置通信模块,不多于27ms。
(4)、Tsuac(SD)定义了一段时间,此时间在SCL的第八个下降沿后,MLX90615会将SDA
置为低电平以确认接受的字节,不超过2.5μs。
(5)、Thdac(SD)定义了一段时间,此时间在SCL的第九个下降沿后,MLX90615释放
PWM/SDA (MD可以继续通信) ,不超过1.5μs。
(6)、Tsuac(MD)定义了一段时间,此时间在SCL的第八个下降沿后,MLX90615会释放
PWM/SDA(MD可以确认接收的字节),不超过0.5μs。
(7)、Thdac(MD)定义了一段时间,此时间在SCL的第九个下降沿后,MLX90615会控制
31
PWM/SDA (它可继续传送下个字节),不超过 1.5μs。 T在最新时序用到MD 和 SD 索引— MD 当主控器件在确认;SD当从动器件在确认。其他时序参考SMBus协议。
图5.6 SMBus时序
MLX90615可以通过由SMBus接口发送的“进入SLEEP模式”命令进入到睡眠模式,而且睡眠模式只在SMBus模式中存在。MLX90615可通过SCL引脚持续至少TDDq= 50 ms时间置为低电平来返回上电默认模式。从睡眠模式退出也是在SMBus模式。在器件唤醒之后的0.3s有效值是可以用的。(注意:IR温度计的先前版本—MLX90614是通过SDA线上的低脉冲唤醒,而不是SCL。)
SCL在睡眠模式是为高电平的。SDA可以同时静止为每个状态,但是建议为高状态。因为上拉是不需附加漏电流。在睡眠模式是为高电平的。SCL和SDA引脚上应有弱的上拉动作。
图5.7 进入和退出睡眠模式
32
5.2.2 红外测温程序设计
MLX90615发送和接收数据是以字节为单位进行的,系统数据操作程序流程如图5.9所示,每个字节的读写流程图如图5.10所示。每次发送一个字节(按位发送,发送8个位就是一个字节),然后判断对方是否有应答,如果有应答,就接着发送下一个字节;如果没有应答,多次重发该字节,直到有应答,再发送下一个字节,如果多次重发后,仍然没有应答,就结束。接收数据时,每次接收一个字节(按位接收,接收8个位就是一个字节),然后向对方发送一个应答信号,继续接收下一个字节。从MLX90615中读出的数据是16位的,由高8位(DataH)和低8位(DataL)两部分组成,其中RAM地址07H单元存储的是TO数据,数据范围从0x2D8Ah ~ 0x4DB0h,表示的温度范围是-40 °C ~ 85 °C。
图5.8 MLX90615读写数据
从MLX90615中读出的数据(DataH :DataL)换算为温度的数据单位为摄氏度(°C),相关的换算公式见(式5-2):To [°C] = RAM(DataH :DataL)*0.02 – 273.15。例如:DataH :DataL=0x4DB0h,代入公式中,得TO=85°C。
33
图5.9 MLX90615发送/接收一个字节
红外测温模块的程序结构相对比较简单。当主函数调用该函数模块时,该程序模块就开始顺序地执行相关的内容。首先程序对MLX90615进行初始化(读取传感器的地址、合成相应的指令等),然后MCU通过SMBus传输协议来读取存在MLX90615里的TO数据(地址为07h)。我们通过相关的计算可以得出对应的体温值(计算公式详见5-2)是多少,并且可以通过LCD来显示测量结果。
图5.10 红外测温程序流程图
34
5.3 LCD显示程序模块
5.3.1 LCD模块指令和时序
在本系统中,LCD模块的驱动芯片是PCD8544 。数据以字节为单位下载到PCD8544的48×84位显示数据RAM矩阵。其通过地址指针寻址,地址范围为:X为0 ~ 83(1010011),Y为0 ~ 5(101),地址不充许超出这个范围。在垂直寻址模式(V=1),Y地址在每个字节之后递增。经最后的Y地址(Y=5)之后,Y绕回0,X递增到下一列的地址。在水平寻址模式(V=0),X地址在每个字节之后递增,经最后的X地址(X=83)之后,X绕回0,Y递增到下一行的地址。经每一个最后地址之后(X=83,Y=5),地址指针绕回地址(X=0,Y=0)。
PCD8544指令格式分为两种模式:如果D/C(模式选择)置为低,当前字节解释为命令字节(见PCD8544指令集)。下图展示初始化芯片的串行数据流例子。如果D/C置为高,接下来的字节将存储到显示数据RAM。每一个数据字节存入之后,地址计数自动递增。在数据字节最后一位期间会读取D/C信号的电平。每一条指令可用任意次序发送到PCD8544,首先传送的是字节的MSB(高位),然后是LSB(低位)。详细的指令可以参考图5.11。
图5.11 PCD8544指令集
35
当SCE为高时,串行接口被初始化。在这个状态,SCLK时钟脉冲不起作用,串行接口不消耗电力。SCE上的负边缘使能串行接口并指示开始数据传输。当SCE 为高时,忽略 SCLK 时钟信号;在SCE为高期间,串行接口被初始化。SDIN在SCLK的正边缘取样。D/C 指出字节是一个命令 (D/C = 0)或是一个RAM数据(D/C = 1);它在第八个SCLK脉冲被读出。在命令/数据字节的最后一位之后,如果SCE为低,串行接口在下一个SCLK正边缘等待下一个字节的位7。RES端的复位脉冲中断传输。数据不会写进RAM。寄存器被清除。如果在RES正边缘之后SCE为低,串行接口准备接收命令/数据字节的位7。
图5.12 串行总线传输示意图
5.3.2 LCD显示程序设计 在系统中,LCD模块采取的通信协议是一个没有MISO而只有MOSI的SPI协议,即LCD
模块只能接收来自MCU的数据,而不能发送数据。在本系统里,其串行总线是以字节为传输单位。
图5.13 串行总线传输传输一个字节
36
在本系统中,LCD模块是属于点阵型液晶显示模块,因此无论系统显示汉字还是英文,无论大号字体还是小号字体,工作原理(或编程思想)都是大同小异的。首先把想要显示的内容通过软件转化为点阵数据并存在头文件里(front.h),然后MCU通过SPI协议把其传输到LCD模块里,其程序流程图如下图所示。
图5.14 显示一个汉字或字母
5.4 本章小结
因为本设计的主控MCU选用了AVR单片机,所以其软件的编译环境选用ICC AVR,而仿真和下载软件则选用AVR studio(JTAG模式)。此系统的软件部分主要分为三大部分,分别是主控程序模块、红外测温程序模块和LCD显示程序模块。其程序结构如图5.18所示,共包括8个文件:
● delay.c:延时函数 ● LCD.c:LCD
驱动程序
模式)
● MLX90615.c:红外温度传感器驱动函数(SMBus● temperature.c:主控程序
37
● front.h:自定义字库 ● delay.h:延时函数声明 ● LCD.h:LCD
驱动函数声明
● MLX90615.h:红外温度传感器驱动函数声明
图5.15 系统程序结构
在本设计中,该软件系统采取了程序结构化和模块化的设计方法。这样设计的好处是:使得系统程序结构分明,方便程序编写人员理解程序的内容,同时还利于以后进行修改和移植。
38
正在阅读:
难忘的朋友作文1000字06-30
标准内部控制流程手册05-07
北师大版小学数学二年级上册期末试卷07-23
2015-2016学年黑龙江省大庆四中高二(下)期末数学试卷(理科)11-18
李泉个人资料02-09
医学影像技术全套试题04-11
关于除夕日记500字【优秀6篇】03-22
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 测温仪
- 便携式
- 红外线
- 人体
- 图文
- 论文
- 设计
- 毕设