《单片机原理及应用》
课程设计报告书
机电与控制工程学院
年 月 日
任务书
课程题目 热敏电阻温度计
热敏电阻是近年来发展起来的一种新型半导体感温元件,由于它具有灵敏度高,体积小,重量轻,热惯性小,寿命长,以及价格便宜等优点,因此应用非常广泛。热敏电阻具有负的温度特性,当温度升高时,电阻值减小。热敏电阻的阻值――温度特性曲线是一条指数曲线,非线性度较大,因此在使用时要进行线性化处理。
设计目的
1. 通过课程设计实践,树立正确的设计思想,培养综合运用专业课程和其他选修课程的理论与生产实际知识来分析和解决电子设计问题的能力。
2.学习电子设计的一般方法、步骤,掌握电子设计的一般规律。
3.进行电子设计基本技能的训练,培养查阅资料的技能、掌握Protel 2004的工作流程和调试方法。
4.学习掌握单片机设计原理和设计思路。
设计要求(1)测量温度为10~150℃;
(2)温度误差不大于0.5%;
(3)温度用4位数码管显示;
(4)以热敏电阻作为温度检测元件;
目录
绪论……………………………………………1
1.实验原理………………………………………2
2.电路实现………………………………………4
2.1热敏电阻温度转换原理…………………4
2.2原理图……………………………………5
3.程序设计………………………………………6
3.1温度计算程序……………………………6
3.2温度转换十进制程序……………………7
3.3显示子程序………………………………9
4.总结…………………………………………12
5.参考文献……………………………………14
绪论
温度作为一个重要的物理量,是工业生产过程中最普遍、最重要的工艺参数之一,所以温度测量技术和测量仪器的研究是一个重要的课题。随着时代的进步和发展,单片机技术已经伸入到各个领域,基于单片机数字温度计与传统的温度计相比,具有读数方便,测温范围广,其输出温度采用数字显示。 该课程设计仔细研究了有关公司开发的相关产品。首先详细介绍了铂热电阻PT100,运算放大器LM324, AD0804芯片及单片机工作原理,在此基础上,设计了相应的硬件原理图及软件程序,实现了温度检测与显示环节。
一.实验原理
测量部分可以采用热敏电阻,热电偶及温度传感器。由于精度要求不高,故我们通过热敏电阻实现温度的测量功能。
信号放大部分为使信号不失真,就得保证电路的对称性,所以我们采用单端输入双端输出的差动放大电路进行信号的变换,同时用高精度,低漂移的运放来代替晶体三极管。
A/D转换部分CPU8051通过P0口P0.0-P0.2向A/D发送模拟的地址编码信息,并通过地址线P2.0和写控制线控制地址编码信号的锁存。选通相应的模拟输入通道,然后启动A/D转换。当转换结束后,A/D经过EOC发出标志信号,经反相后送入8051的向8051发出中断请求,当8051响应请求后,通过P2.0的读控制端使A/D的OE端变为高电平,从而控制转换器的三态数据输出,锁存器通过P0口P0.0-P0.7向8051输出。
数码显示部分用74LS164驱动显示,另外我们用一个PNP型的三极管来控制数码管的电源,是因为164没有数据锁存端,数据在传送过程中,对输出端来说是透明的,这样,数据在传送过程中,数码管上有闪动现象,驱动的位数越多,闪动现象越明显。为了消除这种现象,在数据传送过程中,关闭三极管使数码管没电不显示,数据传送完后立刻使三极管导通,这样就实现锁存功能。
二. 电路实现
1.热敏电阻温度转换原理
热敏电阻是近年来发展起来的一种新型半导体感温元件,由于它具有灵敏度高,体积小,重量轻,热惯性小,寿命长,以及价格便宜等优点,因此应用非常广泛。热敏电阻具有负的温度特性,当温度升高时,电阻值减小。热敏电阻的阻值――温度特性曲线是一条指数曲线,非线性度较大,因此在使用时要进行线性化处理。
热敏电阻的温度特性曲线
热敏电阻的使用是为了感知温度,为此给热敏电阻通以恒定的电流,测量电阻两端就得到一个电压,然后即可通过下列公式求得温度值:
其中的参数如下:
T:被测温度
T0:与热敏电阻特性有关的温度参数
K:与热敏电阻特性有关的系数
:热敏电阻两端的电压
根据这一公式,如果能测得热敏电阻两端的电压并知道参数T0和K,则可以计算出热敏电阻的环境温度,即:被测温度,这样就把电阻随温度的变化关系转化为电压随温度变化的关系。数字式热敏电阻温度计设计工作的主要内容就是把热敏电阻两端电压值经A/D转换为数字量,通过软件方法计算得到温度值,然后进行显示处理。
2.原理图
三.程序设计
(1)温度计算程序
在温度计算公式中系数值K是一个很小的数,为了计算方便,取放大256倍后的K值与VT执行乘法运算,即256*K*VT。相乘后如果只取高8位,则可以抵消K的256倍放大,得到正确的结果。还有从热敏电阻的阻值――温度特性可以看出,在-10-150温度范围内阻值与温度的关系线性度较好,通常把这个温度范围作为有效温度范围。当温度超出此范围时,以数码管全部显示“F”作为标志。假定6位数码管显示缓冲区的存储单元为内部RAM27H-2CH(对应LED0-LED5).输入的A/D转换电压在累积器A中,扩大256倍后的K值为0XXH,T0值为0YYH。
温度程序如下:
COMP: MOV B, #0XXH
MUL AB
MOV A, #0YYH
CLR C
SUBB A, B
CJNE A, #0AH, COMP1
COMP1: JNC COMP4
CJNE A, #97H, COMP2
COMP2: JC COMP3
COMP4: MOV 27H, #0FH
MOV 28H, #0FH
MOV 29H, #0FH
MOV 2AH, #0FH
MOV 2BH, #0FH
MOV 2CH, #0FH
ACALL DISP
COMP3: RET
(2)温度值转换为十进制的程序
计算得到的温度值在A中,以十六进制的形式存在。LED显示应转换为十进制数,由于有效温度值不超过150,所以显示用3位数码管,其显示格式如下:
AD XXX
转换程序如下:
MOV R1, #00H
MOV R2, #00H
CLR C
CHAN: SUBB A, #64H
JC CHAN1
JNC R
AJMP CHAN2
CHAN1: ADD A, #64H
CHAN2: SUBB A, #0AH
JC CHAN3
JNC R2
AJMP CHAN2
CHAN3: ADD A, #0AH
MOV 27H, #0AH
MOV 28H, #0DH
MOV 29H, #10H
MOV 2AH, A
MOV 2BH, R2
MOV 2CH, R1
RET
(3)显示子程序
假定段控口地址位88H,位控口地址位为8CH。
DISP: MOV R6, #27H
MOV R7, #20H
MOV R0, #88H
MOV R1, #8CH
DISP1: MOV A, #00H
MOVX @R0, A
MOV A, R7
MOV @R1, A
RRC A
JC DISP2
MOV R7, A
AJMP DISP1
DISP2: MOV R7, #20H
DISP3: MOV A, R7
MOVX @R0, A
MOV A, @R6
ADD A, #0EH
MOVC A, @A+PC
MOVX @R0, A
ACALL DELAY
INC R6
MOV A, R7
JB ACC.0, DISP4
RR A
MOV R7, A
AJMP DISP3
DISP4: RET
DSEG: DB 3FH,06H,5BH,4FH,66H
DB 6DH,7DH,07H,7FH,6FH
DB 77H,7CH,39H,5EH,79H
DB 71H,00H
总结
数字温度计是为了测温而设计开发的。在单片机技术与热敏电阻的巧妙结合下,可以有效测出温度,并实时数字显示,当温度超过限定值时会及时发出报警,提高了操作的安全性,同时为测量人员提供了方便。
本文设计应用中,主要进行了以下几方面的工作:
(1) 本文在前半部分详细叙述了利用热敏电阻,组成测温电桥的测温的原理及为何选用PT100,使我更加了解本设计的设计目的及要求。
(2) 在了解热阻效应和PT100的工作原理的基础上研究和分析了系统设计方案,并对系统中遇到的不同的场景进行了分析;
(3) 完成了数字温度计系统的硬件选型和电路设计;
(4) 完成了系统的软件流程图设计;
本文通过对数字温度计系统的设计过程及计算得出如下结论:
本系统对有限温度范围内的温度测量具有较高的精度,实现了测量温度显示和超出限定温度报警功能,其主要技术指标达到了系统设计要求;
本文关于数字温度计的设计,虽然可以满足广大普通客户的需求,也做了一些尝试性的探索工作,但是还存在很多不完善的地方,仍有许多方面有待进一步深入研究:
(1) 需要对热敏电阻的线性度和系统电路设计的可靠性进行进一步的研究;
(2) 本文在系统的精度方面研究非常局限,并没有做到非常精确,这就要求以后在这方面还有更近一步研究。
(3) 本次课程设计的数字温度计的测量范围具有很大的局限性,只是在理论上通过了,在实际电路中必将遇到很多问题,在硬件电路中如电源的稳定输出,滤波等方面有待很大的改善。
三.参考文献
1.《单片机基础实用教程》 尹念东 中国地质大学出版社 2005
2.《数字电路与数字电子技术》 岳怡 西北工业大学出版社 2004
3.《电子设计实战攻略》 刘征宇 福建科学技术出版社 2006
第二篇:热敏电阻温度计
實驗28 熱敏電阻溫度計
一、電路圖
二、材料表
三、熱敏電阻介紹
熱敏電阻是一種固態元件。本電路採用者為負溫度係數之熱敏電阻,當溫度升高時,電阻會降低。”熱敏電阻 ”之各是由”熱”和”電阻”演變而來的。在電路中,電阻減少也意味著電流增大。
熱敏電阻非常靈敏,最靈敏的約溫度每上升一度時,電阻値即下降5%,熱敏電阻是利用燒結程序以金屬氧化物結晶所製成。 如本電路圖所示,0°到50°C溫度範圍對應的輸出為0到1V。利用VR1可執行偏移調整,利用執行全幅調整。若選用偏移電壓較小的OP放大器,則VR1可利用固定電阻代替。 其輸出特性分別列示於表1內。
零點、中心點及最大值三點的溫度電阻關係,係成非線性的特性曲線。若所欲量測之溫度範圍狹窄,可採用線性放大再檢出的方法。但若量測範圍甚大時,如欲得較精確的量値,最好是採用微處理的系統,將上述特性關係建表於ROM內,中間點則以內插計算產生
。
四、電路說明
在電路圖中,由第一個(在電路圖的最左側)OP(741)產生1伏特的電壓,這是為了避免電流流通熱敏電阻時產生熱度而發生誤差,所以將電壓限定為1伏特,此電壓作為供給電橋之電壓。 由熱敏電阻與電阻組成的電橋中,因熱敏電阻對溫度的變化,而致電橋發生不平衡。利用差動放大器將此電壓差放大後輸入由7107及7段LED所組成的顯示器部份,將數值顯示在七段顯示器上。
7107是一
位元顯示器,其所能顯示的溫度範圍可從-199.9至+199.9。
使用7107來做顯示是因它具有下列優點:
1. 低消耗功率。
2. 內附基準電源。
3. 含自動調整零位準的雙重積分電路。
4. 內含時脈振盪器(外加RC可調整頻率)。
5. 可直接驅動七段顯示器。
6. 提供差動輸入(本電路並未使用,僅採用單端輸入)。
五、實驗步驟
1. 將電源線接頭接到電路上。
2. 觸摸熱敏電阻,即可從顯示器上看到溫度的昇降。
3. 利用VR1(500Ω)可執行零調整,利用VR2(1KΩ)即可執行全幅調整。
4. 若選用偏移電壓較小的OP(本模板係選用OP741) ,則VR1可利用固定電阻代替。
5. 若要調整七段顯示器的比率可調整電路圖上的VR3(1KΩ)即可。
六、結果與討論
經過溫度的校正以及將顯示器的輸出値調整到正確的溫度數字時,即可得到正確輸出結果。
本電路用的熱敏電阻是屬於”負溫度係數熱敏電阻”,負溫度係數熱敏電阻,顧名思義,即當溫度增加時,電阻亦隨之變小;若為” 正溫度係數的熱敏電阻”則是當溫度上升時,電阻亦隨之增加。故選用熱敏電阻時應注意。
7107是一位元顯示器,其所能顯示的溫度範圍可從-199.9至+199.9。本電路使用7107來做顯示主要考慮以下二個因素:
1. 內附時脈振盪器(外加RC調整方波頻率) ,無需另行製作方波產生器。
2. 可直接驅動七段顯示器,減少許多界面電路。 本實習電路作成之實習教學電路模板之照片如下
七、附錄
741接腳圖、內部電路圖及規格
741規格表