马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛
您需要 登录 才可以下载或查看,没有账号?注册会员
×
K型热电偶是工业生产中最常用的温度传感器,具有结构简单、制造容易、使用方便、测温范围宽等特点。目前,在以K型热电偶为测温元件的工业测温系统中,热电偶输出的热电势信号必须经过中间转换环节,才能输入基于单片机的嵌入式系统。中间转换环节包括信号放大、冷端补偿、线性化及数字化等几个部分,实际应用中,由于中间环节较多,调试较为困难,系统的抗干扰性能往往也不理想。在铝水平温度测量仪的研制中,我们采用了MAXIM公司新近推出的MAX6675,它是一个集成了热电偶放大器、冷端补偿、A/D转换器及SPI串口的热电偶放大器与数字转换器,可以直接与单片机接口,大大简化系统的设计,保证了温度测量的快速、准确。
, ~7 q! K p0 b7 ]5 f. } 1 MAX6675特性
1 Z7 E1 d5 N$ _8 E* r0 q2 ~+ ^ 1.1 特性 3 {5 m0 p9 J, {& [& w
MAX6675是具有冷端补偿和A/D转换功能的单片集成K型热电偶变换器,测温范围0℃~1024℃,主要功能特点如下:
, x! \3 t t. q3 n2 o- w: {2 M- J n 直接将热电偶信号转换为数字信号
8 ~; C$ x9 k- I" }4 Y4 r1 }8 b n 具有冷端补偿功能 " @9 q. w" m0 s; q& w& X9 S- G' B
n 简单的SPI串行接口与单片机通讯
9 k& O6 R. t1 U' T n 12位A/D转换器、0.25℃分辨率 * t2 P1 w) Y8 U
n 单一+5V的电源电压
$ A' _2 F& ?8 A8 m6 r) \ n 热电偶断线检测
$ }8 R3 x) e8 M' e7 g/ K- d$ ?1 Y n 工作温度范围-20℃~+85℃
8 S* D0 g4 `2 P8 Y4 W! E: w. X& x 1.2 引脚功能
+ Q/ P/ @' R1 P# l' D6 l2 G! L3 ?7 X MAX6675采用SO-8封装形式,有8个引脚,脚1(GND)接地,脚2(T-)接热电偶负极,脚3(T+)接热电偶正极,脚4(VCC)电源端,脚5(SCK)串行时钟输入端,脚6(CS)片选端,使能启动串行数据通讯,脚7(SO)串行数据输出端,脚8(NC)未用。在VCC和GND之间接0.1μF电容。
6 i; c2 J! _) |3 L& I/ P2 {2 b( ]+ {1 M6 g
MAX6675的引脚如图1所示。
; [' x; n# b, ?3 B1 v P
' j1 H6 `& J5 i( I# w+ R" V 1.3 工作原理
- N) I7 k- E; Q MAX6675是一复杂的单片热电偶数字转换器,其内部结构如图2所示。主要包括:低噪声电压放大器A1、电压跟随器A2、冷端温度补偿二极管、基准电压源、12位AD转换器、SPI串行接口、模拟开关及数字控制器。 9 a: g6 M* [& y0 u. Q6 u
其工作原理如下:K型热电偶产生的热电势,经过低噪声电压放大器A1和电压跟随器A2放大、缓冲后,得到热电势信号U1,再经过S4送至ADC。。对于K型热电偶,电压变化率为(41μV/℃),电压可由如下公式来近似热电偶的特性。 9 S' d1 H* a/ C- V
U1=(41μV/℃)×(T-T0) ; U# G0 U1 y; Q0 W! M- ?
上式中,U1为热电偶输出电压(mV),T是测量点温度;T0是周围温度。 9 W( Z/ C9 w- [4 ~) ?! a& L
在将温度电压值转换为相应的温度值之前,对热电偶的冷端温度进行补偿,冷端温度即是MAX6675周围温度与0℃实际参考值之间的差值。通过冷端温度补偿二极管,产生补偿电压U2经S4输入ADC转换器。
4 V8 W9 l9 p7 x" u6 G9 N U2=(41μV/℃)×T0
5 ~% p( B& C# E6 d& ` 在数字控制器的控制下,ADC首先将U1、U2转换成数字量,即获得输出电压U0的数据,该数据就代表测量点的实际温度值T。这就是MAX6675进行冷端温度补偿和测量温度的原理。 ' J# q, n0 d, s# y

- F8 }' a0 V9 g) o X 1.4 与单片机的通讯
, F% j5 E' _) j& g; I8 T6 r% u% n MAX6675采用标准的SPI串行外设总线与单片机接口。MAX6675从SPI串行接口输出数据的过程如下:单片机使CS置为低电平,并提供时钟信号给SCK,由SO读取测量结果。CS变低将停止任何转换过程,CS变高将启动一个新的转换过程。将CS变低在SO端输出第一个数据,一个完整串行接口读操作需16个时钟周期,在时钟的下降沿读16个输出位,第1个输出位是D15,是一伪标志位,并总为0;D14位到D3位为以MSB到LSB顺序排列的转换温度值;D2位平时为低,当热电偶输入开放时为高,开放热电偶检测电路完全由MAX6675实现,为开放热电偶检测器操作,T-必须接地,并使接地点尽可能接近GND脚;D1位为低以提供MAX6675器件身份码,D0位为三态标志位。
+ ]( V) M* k5 S0 O0 ~( i) j8 b# ~ MAX6675 SO端输出温度数据的格式如图3所示。 4 r- m: B5 C; D& v' r; z" I; }

* O2 J6 ~- ] N; G' l, `# V 2 在铝水平温度测量仪中的应用
: X8 e W7 _, \8 v, I# ^5 W 本文所述铝水平温度测量仪是一工作于铝电解现场的测量装置,其控制部分采用单片机控制,对温度部分的要求是:在得到测量要求信号后,实时测量出当前热电偶探头的温度并保存,可检测K型热电偶探头断线状况并报警。
% z+ ~: @1 k8 l 2.1 硬件实现 2 [% b( N. @) k$ n% V& n
该铝水平温度测量仪的K型热电偶温度采集电路如图所示。其微控制器采用ATMEL公司的FLASH单片机AT89C51,该微控制器具有4K内部可擦写程序存储器和32个输入/输出端口,满足本系统中液位测量、数据显示、温度测量、数据通讯、看门狗电路的需要。作为一款廉价的通用型单片机,AT89C51没有SPI接口。因此采用I/O口线模拟SPI串行口来对MAX6675读取数据。MAX6675的CS端接单片机的P1.0脚,CS低电平停止转换,MAX6675准备将数据输出;SCK引脚接单片机的P1.1脚,为传输数据提供时钟。无数据传输时,SCK应置为低电平;SO引脚接单片机的P1.2脚,用于传输数据。单片机的P1.3脚作为K型热电偶探头断线报警口,报警时输出低电平,驱动故障指示LED显示。 2 j/ T7 I. V+ c
在单片机的上述4个引脚各接一个10K的上拉电阻,保证数据的可靠传送。由于MAX6675的测量精度对电源耦合噪声较敏感,为降低电源噪声影响,在MAX6675的电源引脚附近接入1只0.1μF陶瓷旁路电容。在印刷电路板的设计中,采用大面积接地技术来降低芯片自热引起的测量误差,提高温度测量精度。
B) q5 j6 g1 Z" S1 K& U4 r- u. J
$ y+ ^9 _* `- u# T 本系统主要测量铝电解槽中的温度,其正常工作温度范围为920℃—1000℃,为了准确的测量这一区段的温度值,系统利用X25045芯片内部的4096位串行E2PROM(非易失存储器),保存温度补偿参数,掉电不丢失,保证系统可应用于各种环境条件。
3 v% a0 `& j& L& x# Z 2.2 软件实现 ' ?3 f3 ~( f4 Z" o
温度测量是铝水平温度测量过程的最后一个环节,在系统测量完铝水平后,开始进行温度测量,这一部分程序作为一个独立的程序段,定时调用,主要包括MAX6675数据读取、开路判断、数据处理和码制转换等几个部分。程序流程如下:
, T' s9 d* ~4 Q d1 k7 Q d
H: W0 ^) e- u9 ]* k 下面给出MAX6675温度值读取程序设计: # }. a% J5 e& H# E: M
;温度值读取程序 " q' g% y2 z2 @/ `3 q/ R
;位定义
' W8 b! f3 x/ S/ \8 k, |+ G CS BIT P1.0 ;数据输入 + G& E5 X* F: ^2 y
SCK BIT P1.1 ;片选
& G+ b; j7 Y% \+ K6 I( P- v4 H SO BIT P1.2 ;时钟 , F; Y$ h$ z: e6 W9 C2 F( |/ F( `
;数据字节定义
: |2 P0 P7 l6 U: A; q$ m DATAH DATA 40H ;读取数据高位
- l# M4 y5 D9 d; T5 N. s" y DATAL DATA 41H ;读取数据低位 ; ?$ |# R5 c4 L* I6 C! \
TDATAH DATA 42H ;温度高位 - _) J0 k& j2 j, \8 o, f
TDATAL DATA 43H ;温度低位
' G! j) d! `# i5 {# J CLR CS ;CS低电平,停止数据转换,输出数据D15
7 B1 U7 O; M0 b; I CLR CLK ;时钟置为低电平 , ~( A' e0 {& h! i; `& ]
MOV R7, #08H . L% \) K: G9 [4 a Z+ e
RD_DATAH: ;读数据高位字节D15-D8 2 h2 S1 z& I/ N1 l X2 B
MOV C,SO ;读SO端数据 ; F4 B: \1 q2 r0 s% I$ p Z
RLC A ;累加器左移一位
' i# h: h1 z/ ^0 X; O2 f SETB SCK
; M5 I a$ W- R0 e8 D NOP 9 I9 N& E1 R: U9 O+ n( p- j' `
CLR SCK
) i3 V1 W4 n& ~( Z: G6 Z DJNZ R7,RD_DATA 1 p; }5 Q0 _; f% V
MOV DATAH,A ;将数据高位移入缓冲区 : `' k2 l0 M, K5 p
MOV R7,#08H
+ j* W$ U ^6 {+ m+ K, o$ G9 V RD_DATAL: ;读数据低位字节D7-D0 / V! ~* Q" M$ _' h* t s J
MOV C,SO ;读SO端数据
& C8 ^9 `& P& E: _- Q RLC A ;累加器左移一位
* c4 Z7 Z* M$ Z \5 r SETB SCK ; j' k! }& w7 ^
NOP , m. g; o% }; H0 n2 j% b! e6 @( i3 x* e
CLR SCK * M4 D9 C: |* q3 `8 f
DJNZ R7,RD_DATAL ; F+ [9 U0 E; `, q" ^
MOV DATAL,A ;将数据低位移入缓冲区
7 U1 e7 T. `- D) c& A SETB CS ;CS高电平,停止数据输出,启动新的数据转换;数据转换子程序,将读得的16位数据转换为12位温度值,去掉无用的位
3 Q$ H e( H7 q! p5 b/ y$ N/ N3 i MOV A,DATAL
9 {' y$ y$ u% }' V RLC A ) ~4 c9 N1 Y3 x, Y+ }- x: t
MOV DATAL,A 7 Z3 x6 K7 `! v
MOV A,DATAH
3 V. p/ P8 W/ h, c+ } RLC A ;整个数据位左移一位,去掉D15位 + S2 U$ i6 w9 k9 v& g
SWAP A ;将DATAH中的高低4位数据互换
9 ^4 d3 Q2 U$ U3 E2 j' Q: ] MOV B,A ;数据暂存于B中
2 Q8 q+ m4 m6 g1 Y3 i ANL A,#0FH ;得到温度数据高位字节部分D14 ~D11
2 j. a6 h i; d6 }8 B, |" Y, F MOV TDATAH,A ;将温度值高位字节保存 0 k. Q% U& |% Y7 r# K# b
MOV A,B $ W; _+ p" F! t/ M, X9 Y/ j
ANL A,#0F0H ;得到温度数据低位字节部分D10 ~D7 L; x6 w% c3 W. v% F8 _
MOV B,A B$ q: C7 Q& x5 c; M: [
MOV A,DATAL ; 6 @& e7 u% I$ D4 B- [
ANL A,#0FH ;得到温度数据低位字节部分D6 ~D3 # J" Q& V, R! Y/ x3 q& z: N2 k' k
ORL A,B ;合并的温度低位字节 / |# _4 V1 ?. Z$ I, [- F- B1 E* K* s
MOV TDATAL,A ;将温度值低位字节保存 2 ]/ K, |) f1 O" h
3 应用中注意的几个问题 1 W/ G2 Z% f! L. |9 o" Y
在铝水平温度测量仪的设计和调试过程中遇到诸多问题,现将与MAX6675相关的几个问题和使用心得摘录如下,以供参考。 $ n5 J- T; n! K# F8 R) v
1)MAX6675芯片对电源噪声较为敏感,尽量将MAX6675布置在远离其他I/O芯片的地方。 & I+ D' N# Z& S6 \" L
2)MAX6675芯片T-必须接地,并使接地点尽可能接近GND脚,否则读出数据为无规律的乱码。
8 L; X' _4 g1 g 3)MAX6675是通过冷端补偿来校正周围温度变化的。该器件将周围温度通过内部的温度检测二极管转换为温度补偿电压,该器件内部电路将二极管电压和热电偶电压送到ADC中转换,以计算热电偶的热端温度。当热电偶的冷端与芯片温度相等时,MAX6675可获得最佳的测量精度。因此在实际测温应用时,应尽量避免在MAX6675附近放置发热器件或元件,例如7805等带散热片的稳压器件。 7 C9 j/ j- K6 ]
4)尽量采用大截面积的热电偶导线,长距离传输时,可采用双绞线作为信号传输线。
6 m- ?2 ]( `3 x5 o0 |* v# v 5)根据应用场合的不同,可通过相应的数字滤波器进行数据处理,以提高所需要某一段测量数据的准确性。 ! h4 f6 T0 A9 e* g
4 结束语
& X3 j. L8 F7 `6 N8 r MAX6675将热电偶测温应用时复杂的线性化、冷端补偿及数字化输出等集中在一个芯片上解决,简化了铝水平温度测量仪中热电偶测温电路的设计,实际运行结果表明,该测温系统抗干扰能力强、结构简单、可靠性高,测量精度满足要求。因此,在基于微处理器的单片机嵌入式工业测温系统中,由MAX6675构成的单片热电偶测温解决方案,具有良好的实用价值。 " \% D+ O' `/ V( z; S
|