依据STC89C51来设计的一款基于单片机的热电偶冷端补偿温度采集系统。通过对温度使用过程中,将温度转换成电势,通过对于电信号的放大处理,来反映温度的变化,通过使用新的测量环境电信号和实际电信号方法,来精确的反应温度值。所以本文中提到了新的冷端补偿温度采集的硬件设计方法。大大的简化了传统的冷端补偿,通过大量的实验得出较为精准的试验数据,通过最小二乘法进行线性回归公式作为测量的根本依据。本文将从三个大方面来阐述冷端补偿的设计理念和过程。第一更具公式推导得出控制器系统需要进行的工作,以及需要对那些系统进行数据采集并进行线性拟合推导方案。第二通过硬件采集放大电信号处理。第三通过软件设计计算当前的实际温度。本文所使用的热电偶均为K型热电偶,并且通过仿真时试验数据得出该控制器采集系统能够有效的采集温度温差在4摄氏度以内。
完整版 电路图和程序代码 下载地址
https://pan.baidu.com/s/1Qi_otVsuN0MW6vPv_rSUBA?pwd=8888
部分代码展示
#include<reg52.h>
#include<intrins.h>
#include"define.h"
#include"delay.h"
#include"LCD1602.h"
#include"ADC0832.h"
void main()
{
int E1,E2,VAL,T,E;
LCD_init();
while(1)
{
VAL=ADC_read_data(1);
E2=8*VAL/25-1;
VAL=ADC_read_data(0);
E1=VAL/40-3;
E=E2+E1;
T=24*E+E/2-4;
// for(j=0;j<2;j++)
// {
// if(j==0)
add=0x00;
// else
// add=0x40;
// ADC_change(j);
LCD_buffer[0][5]=T/1000+'0';
LCD_buffer[0][6]=T/100%100+'0';
LCD_buffer[0][7]=T/10%10+'0';
LCD_buffer[0][8]=T%10+'0';
LCD_display(add,LCD_buffer[0]);
delay(1);
// }
}
}