MAX6675是K型热电偶温度控制芯片,自带冷端补偿,SPI接口,测量范围0°C~1000°C,加上传感器整个方案非常低成本。下面演示用Python控制的测温装置:
先从某宝够买探头+控制芯片,20元价位:
与实验板连线:
- VCC - 3.3V
- GND
- SCK - PA2
- CS - PA3
- SO - PA1
接口实在太简单,直接运行脚本,开始测量:
import time
from mcush import *
s = Mcush.Mcush('/dev/ttyACM0')
s.spi_init(width=16)
while True:
v = s.spiRead([0])[0] # 读16比特值
t = ((v>>3)&0xFFF)*0.25 # 取出12位测量结果
print('Temperature: %.1f'% t)
time.sleep(1)
下面做了实验,记录一下用电热水壶烧一壶开水的整个温升过程(之前一直疑惑:温度是线性上升?还是指数型上升?还是对数型上升?这个实验下来一目了然):
结果完全线性,烧开时测到100度以上是由芯片误差造成(看了手册,误差还挺大的,毕竟这个传感器是0~1000度的工作范围)。