首页 新闻 企业 产品 商务 文库 学院 人才 视频 展会 组织 论坛 专题 搜索 帮助
logo

技术文库中心

频道首页
当前位置物联网世界 >> 技术文库 >> 解决方案 >> 正文

动物温度传感器单片机的应用方案


作者:不详 来源:物联网世界收录 2012-05-17 14:06:58
摘要:本系统采用了高精度传感器AD22100。要准确测量动物病患体温,首先应全面了解动物的正常体温。

一、设计指标

据有关资料报道.美国科学家用口腔电子体温计对 几十种动物测试得到了一系列数据,可将这些数据存储于上位机之中。考虑到整个监控系统的成本,A/D转换采用价廉的8位芯片.设计时量程范围确定为 36.00-41.10℃。将36.0℃时.输入到A/D芯片的电压处理.调整为0V.温度41.10℃时.输入到A/D芯片的电压处理、调整为5V。温 度每升高0.02℃,.电压升高5V/255=0.0196V.保证系统分辨力为0.02c.0.02℃×255—5.10℃.温度上下限为36.0℃- 41.10℃。报警温度为36.5℃。

二、方案比较与选择

本课题的核心问题在于模拟量到数字量的转换以及数字量的显示,笔者对两种比较理想的方案进行讨论。

1.硬件实现:在温度传感器AD22100将温度信号转换成电压信号后,通过A/D转换器将电压模拟量转化成八位二进制精度的数字信号,再把该八位二进制精度的数字通过译码转化成十进制数,并最终用数码管显示。

2.基于单片机的软件实现:在温度传感器AD22100将温度信号转换成电压信号后,通过A/D转换器将电压模拟量转化成八位二进制精度的数字信号,改用51单片机,通过编写程序,按照中国测控网规定的算法来将八位二进制精度的数字转化成十进制数,并通过数码管显示出来。

实践表明:A/D转化器转化出来的是八位二进制精度的数字,这个二进制数的大小并不代表真实的温度,需要一种算法来实现而不是单纯的译码就可以实现的。而单片机软件实现分辨率高,高可靠性且具有一定的智能功能。

所以综合考虑,确立方案:用单片机程序将该八位二进制精度的数字转化成十进制数字,再利用单片机驱动显示器显示,可以从显示器上精确的读出温度的数值。

三、硬件设计

1.传感器、放大模块。测量温度的时候,我们选用具有信号调理的电压输出温度传感器AD22100。其有以下特点:工作温度范围为—50~150 度;温度系数22.5mV/℃;输出电压正比于温度与V+的乘积;线性优于满量程的±1%。;反向电压保护;高电压、低阻抗输出。

温度传感器AD22100将温度信号通过温敏电阻R的变化转换成电压信号,从运放输出端输出电压,对应的电压信号传输函数为:

当图中电源电压为+5V,—50~150度对应的输出电压为0.25~4.75V。温度与输出电压呈线性关系,当温度变化有变化,则会对应有一个电压输出,通过温度传感器AD22100将温度转化成电压。

2.A/D转换模块。运用A/D转换器ADC0809将模拟量的电压信号转化成八位二进制精度的数字量ADC0809芯片介绍可参看有关文献。

3.单片机的显示数码转换模块

(1)原理与算法。在很多运用单片机进行测量的系统中,通过传感器或A/D转换后的数据只是测量数据,并非显示数据,将这些测量数据转换为二进制的 显示数据,才能通过查表的方式正确显示直观数据。8位二进制有0-255共256个值,但是电压值却只有0-5V,8位二进制的0和电压的0V对应,而8 位二进制的255和电压值的5V对应,把0-255分成5分,即255/5=51,,1/51=0.0196V,即一个8位二进制值所代表的电压值近似为 0.0196伏。再按照这个关系去除以51,得到十位电压值;再将余数与26比较,小于26直接乘以10再除以51,所得商就是个位电压值;如大于26则 先减去26,再乘以10,然后除以51,所得商再加上5,即得个位电压值;将第二次除以51所得余数,按第二次除以51的方法进行计算,所得结果为十分位 电压值。(2)单片机与LED数码管动态显示接口电路。具体电路可查阅相关文献。由于动态显示情况下,CPU要定时扫描刷新显示,数码管的信号在不停的通 断变化,为了保证显示效果,一般会在数据端口接一个缓冲驱动芯片(如74HC244、74LS244等),而在位选通端接一个PNP三极管作驱动(如 9012、8550等)。

4.超温异常报警模块。利用AD22100传感器取得电压模拟量后,根据其传输函数公式

可算得当温度TA达到36.5时,电压模拟量V0的值为2.196V。所以,在V0后面加一个比较器,当V0大于恒压源设定值时,就会在比较器输出端输出一智能报警信号,从而引发智能报警装置。

四、软件设计

1.显示程序的实现。在程序设计时一般将具体的显示部分单独分出来组成一个显示子程序,这样编程方便、思路清晰,也便于检查。显示时,从主程序调用 显示子程序,根据显示数据通过查表程序读取显示代码,将显示代码从P0口传给数码管,同时P2选中1个数码管,每个数码管亮1MS,显示完接着显示第二位 数据,当所有数码管第一轮全部显示完后返回主程序。

2.程序设计。设计者可按个人习惯及擅长具体设计。

五、问题及展望

此类温度检测器只能有一种报警温度值,理论上只适用于平均温度接近的一类动物的检测,存在局限性,可在此问题上进行深入的研究,制造出集成的有各种温度设定值得模块,设计更加通用型的温度检测仪。

相关文章

    最新评论