前言
最近在做一款热风枪需要测量温度,所以用到了MAX6675这款K型热电偶测量芯片,MAX6675执行冷端补偿,并数字化K型热电偶的信号。 数据以SPI™兼容的12位分辨率,只读格式输出。
该转换器分辨率为0.25°C,允许读数高达+ 1024°C,并且在0°C至+ 700°C的温度范围内具有8LSB的热电偶精度。
一、MAX6675框图
二、MAX6675详细介绍
MAX6675是一款精密的热电偶数字转换器,内置12位模数转换器(ADC)。 MAX6675还包括冷端补偿检测和校正,数字控制器,SPI兼容接口以及相关的控制逻辑。MAX6675设计用于在恒温,过程控制或监控应用中与外部微控制器或其他智能器件配合使用。
1.温度转换
MAX6675包括信号调节硬件,可将热电偶的信号转换为与ADC输入通道兼容的电压。T +和T-输入连接到内部电路,可减少热电偶导线引入的噪声误差。
在将热电电压转换为等效温度值之前,必须补偿热电偶冷端(MAX6675环境温度)与0°C虚拟基准之间的差异。对于K型热电偶,电压变化为41µV /°C,可通过以下线性方程式近似热电偶特性:
VOUT是热电偶输出电压(µV)。TR是远端热电偶结的温度(°C)。TAMB是环境温度(°C)。
2.冷端补偿
热电偶的功能是感应热电偶线两端之间的温度差。 热电偶的热端可以读取0°C至+ 1023.75°C的温度。冷端(安装MAX6675的电路板的环境温度)只能在-20°C至+ 85°C的范围内变化。当冷端温度波动时,MAX6675继续准确地感应另一端的温差。
MAX6675利用冷端补偿来检测并校正环境温度的变化。该设备使用温度感应二极管将环境温度读数转换为电压。为了进行实际的热电偶温度测量,MAX6675测量来自热电偶输出和检测二极管的电压。器件的内部电路将二极管的电压(感测环境温度)和热电偶电压(感测远端温度减去环境温度)传递到ADC中存储的转换函数,以计算热电偶的热端温度。当热电偶冷端和MAX6675处于相同温度时,可实现MAX6675的最佳性能。避免在MAX6675附近放置发热设备或元件,因为这可能会产生与冷端有关的错误。
3.数字化
ADC将冷端二极管的测量值与放大后的热电偶电压相加,并将12位结果读出到SO引脚上。全零序列表示热电偶读数为0°C。全部为1的顺序表示热电偶读数为+ 1023.75°C。
三、应用信息
1.串行接口
典型应用电路显示MAX6675与微控制器接口。在本例中,MAX6675处理热电偶的读数,并通过串行接口传输数据。强制CS为低电平,并在SCK处施加时钟信号以读取SO处的结果。 强制CS为低电平将立即停止任何转换过程。 通过强制CS高电平来启动新的转换过程。
强制CS为低电平以输出SO引脚上的第一位。 完整的串行接口读取需要16个时钟周期。在时钟的下降沿读取16个输出位。第一位D15是伪符号位,始终为0。D14–D3位包含从MSB到LSB的转换温度.当热电偶输入断开时,D2位通常为低电平,而变为高电平。 D1为低电平,为MAX6675提供器件ID,D0为三态。图1a是串行接口协议,图1b显示了串行接口时序。 图2是SO输出。
2.开放式热电偶
D2位通常为低,如果热电偶输入断开,则位为高。为了允许打开的热电偶检测器工作,T-必须接地。 接地应尽可能靠近GND引脚。
3.噪音考虑
MAX6675的精度容易受到电源耦合噪声的影响。 通过在器件的电源引脚附近放置一个0.1pF陶瓷旁路电容器,可以最大程度地减小电源噪声的影响。
4.散热考虑
在某些应用中,自热会降低MAX6675的温度测量精度。温度误差的大小取决于MAX6675封装的导热系数,安装技术以及气流的影响。 使用较大的接地层可提高MAX6675的温度测量精度。遵循以下预防措施也可以提高热电偶系统的精度:
- 使用尽可能大的电线,该电线不会使热量远离测量区域。
- 如果需要细线,则仅在测量区域内使用,对没有温度梯度的区域使用延长线。
- 避免机械应力和振动,以免拉紧电线。
- 使用长热电偶导线时,请使用双绞线延长线。
- 避免陡峭的温度梯度。
- 尽量在温度范围内使用热电偶线。
- 在恶劣的环境中使用合适的护套材料来保护热电偶线。
- 仅在低温且梯度小的区域内使用延长线。
- 保留事件日志并连续记录热电偶电阻。
5.降低噪声的影响
输入放大器(A1)是低噪声放大器,旨在实现高精度输入感测。 保持热电偶和连接线远离电气噪声源。
STM32 HAL库参考程序
1 |
|
Arduino 参考程序
需要用到max6675的库https://github.com/adafruit/MAX6675-library.git
1 |
|