使用单片机和ADC芯片采集热电偶测温原理详解

标题

对于热电偶采集,有专门的芯片比如max31856等等,直接读取内部寄存器就能出来温度,但是有局限性不利于产品升级,只能是固定的一种分度号采集,又比如Wre325型的热电偶不支持,那么只能通过单片机驱动ADC芯片来采集热电偶的电压计算出温度,可以把所有热电偶的分度号以数组的形式保存在单片机里,能支持所有类型的热电偶。

热端和冷端

关于热电偶原理,具体的请问度娘,热电偶是一段由不同导体(通常为合金)制成的一端焊接在一起的两根导线,由于塞贝克效应,在热端和冷端之间将产生一个电动势,看个图:

塞贝克效应

这里热端可理解为热电偶,冷端可理解为连接热电偶的接线端子或者PCB。

热电偶类型

热电偶类型及测温范围,看图:

热电偶类型

ADC芯片选择

比如ADS1232, ADS1118,ADS1220,AD7793等,我选择的是ADS1118,性价比高,而且内部自带电压基准和温度传感器,电路也很简单,我在AIN2接了一个NTC电阻用于冷端温度测量,使用内部温度传感器可以不要:

ADS1118电路图

测温原理流程

热电偶输出的是电压信号,使用ADC采集到的模拟量转换成电压,此时是热端的电压,还需要对冷端电压进行测量补偿,就是连接热电偶的端子或者PCB焊盘那个地方的温度,可以用ADC内部温度传感器进行测量,也可以用NTC电阻。得到冷端的温度后,需要把这个温度通过查热电偶分度表转换成对应的电压,比如,冷端温度为30度,通过查热电偶分度表得到30度的电压是多少,最后热电偶输出的电压加上冷端补偿的电压就是实际电压,实际电压再通过查热电偶分度表就能得到实际温度。看个图,T代表温度,V为电压:

冷端电压补偿

举个栗子:
ADC 冷端报告 26.2°C,经 ADC 测量的 K 类型热电偶电压 6.62mV。要将这个值转换为最终温度,首先将测得的片载温度转换为相应的所使用的热电偶类型的电压。 根据制造
商热电偶分度查询表,26.2°C 对应于 1.049mV。 于是 𝑉= 1.049mV + 6.62mV = 7.669mV 。
下一步,从热电偶查询表中,将新计算得出的电压V转换回一个温度。 在这个示例中,制造商热电偶查询表指示 7.669mV 与 188.05°C 等效。

就这样,这就是热电偶测量的软件流程。

热电偶分度表

热电偶S,B,W,R,K,J等不同类型的分度表,网上都能找得到,都是统一的,写程序的时候按照标准的分度表来,实际还需校准,因为每个厂家的制造工艺导致有误差。格式是这样的,请看图:

分度表1

上图,800度时热电偶输出33.275毫伏,把这些毫伏表乘以1000写到单片机数组里,可以隔5度10度50度记录一个数就可以,用二分查表法查,然后计算两个点的线性比得到温度。ADS1118驱动和二分查表法我已经写过了。具体请点击:ADS1118驱动   二分查表法  K型热电偶分度表

版权声明:
作者:wawooo
链接:http://www.wawooo.com/300.html
来源:挖窝网
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录