|
本帖最后由 nust_奔跑 于 2013-5-13 13:59 编辑
1、热电偶工作原理
两种不同成份的导体两端接合成回路,当两个接合点的温度不同时,在回路中就会产生电动势,这种现象称为热电效应,而这种电动势称为热电势。
热电偶就是利用热点效应原理进行温度测量的,其中,直接用作测量介质温度的一端叫做工作端(也称为测量端),另一端叫做冷端(也称为补偿端);冷端与显示仪表或配套仪表连接,显示仪表会指出热电偶所产生的热电势。
热电偶实际上是一种能量转换器,它将热能转换为电能,用所产生的热电势测量温度,对于热电偶的热电势,应注意如下几个问题:
1、热电偶的热电势是热电偶工作端的两端温度函数的差,而不是热电偶冷端与工作端,两端温度差的函数;
2、热电偶所产生的热电势的大小,当热电偶的材料是均匀时,与热电偶的长度和直径无关,只与热电偶材料的成份和两端的温差有关;
3、当热电偶的两个热电偶丝材料成份确定后,热电偶热电势的大小,只与热电偶的温度差有关;若热电偶冷端的温度保持一定,这时候的热电偶热电势仅是工作端温度的单值函数。
将两种不同材料的导体或半导体A和B焊接起来,构成一个闭合回路。当导体A和B的两个执着点1和2之间存在温差时,两者之间便产生电动势,因而在回路中形成一个大小的电流。
根据热电偶测温原理,热电偶的输出热电势不仅与测量端的温度有关,而且与冷端的温度有关,需要测量出冷端温度,从而才能准确地测量出真实的温度。下面将介绍集成冷端补偿的芯片MAX6675。
2、MAX6675工作原理
MAX6675是MAXIM公司的K型热电偶串行模数转换器,它能独立完成信号放大、冷端补偿、线性化、A/D转换及SPI串口数字化输出功能。
MAX6675内部集成有冷端补偿电路;带有简单的3位串行SPI接口;可将温度信号转换成12位数字量,温度分辨率达0.25℃;内含热电偶断线检测电路。冷端补偿的温度范围-20℃~80℃,可以测量0℃~1023.75℃的温度。
MAX6675为SO-8脚封装,工作电压为+5V直流电压,功耗为47.1mW,电流为50mA,适用于体积不大,不利散热的装置条件下使用,其引脚图如图1所示。其中SO为SPI串行输出端口引脚; CS为片选信号;SCK为串行时钟输入;T+、T-分别接热电偶的测量端和冷端。
3、Arduino程序
MAX6675的库文件自带的串口输出示例,将采样间隔改为2S。
- #include "Max6675.h"
- Max6675 ts(8, 9, 10);
- // Max6675 module: SO on pin #8, SS on pin #9, CSK on pin #10 of Arduino UNO
- // Other pins are capable to run this library, as long as digitalRead works on SO,
- // and digitalWrite works on SS and CSK
- void setup()
- {
- ts.setOffset(0);
- // set offset for temperature measurement.
- // 1 stannds for 0.25 Celsius
- Serial.begin(9600);
- }
- void loop()
- {
- Serial.print(ts.getCelsius(), 2);
- Serial.print(" C / ");
- Serial.print(ts.getFahrenheit(), 2);
- Serial.print(" F / ");
- Serial.print(ts.getKelvin(), 2);
- Serial.print(" K\n");
- delay(2000);
- }
复制代码
4、实物实验演示
MAX6675模块实物图
MEGA+MAX6675的实物图
采用用串口助手接收温度数据,数据如下:
1、 放置在空气中,常温环境下
可以看出,温度还是很稳定的,还说明南京很热,都30℃了。
2、放置于一杯热水中,高温环境
水温稳定在57℃左右,看起来温度不是很高,但是我端水杯还是感觉很烫的。
附上MAX6675的库文件 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|