基于MSC1210的多路高精度温度采集系统模块
发布时间:2007/4/23 0:00:00 访问次数:547
在被测温度变化缓慢的情况下,可以使用多路扫描开关配以一个高精度测温表进行多路温度测量以及数据采集。但在温度测量点数目较多、被测温度变化较快的场合,如大量热电阻、热电偶的自动计量检定系统以及高温灭菌箱自动验证系统中,传统的扫描式多路温度测量系统不无法满足要求了。近年来,随着高精度A/D转换器件价格的不断下降以及A/D转换器件功能的不断完善,研制廉价的多路、快速、高精度温度采集系统成为可能。
美国德州仪器公司(TEXAS INSTRUMENTS)新近推出了一种功能很强的带24位A/D转换器的微处理器MSC1210。MSC1210具有一些增强特性,特别适合测量高精度温度、压力传感器等输出的微弱信号。
本文介绍以MSC1210作为测量、信号处理以及通讯核心的多路高精度温度采集系统模块。该系统测量通道易于扩充,温度测量精度高,可以快速地进行多路高精度温度测量。
单片机,这里选用ATMEL公司的ATmega128。该款CPU采用Harvard流水线结构以及RISC指令,并具有较大程序容量(128KB)的FLASH,在16MHz主频下可以达到16MIPS的处理速度。
2 MSC1210的增强功能及使用注意事项
作为智能高精度测温模块的核心,MSC1210完成了微弱信号的多路切换、信号缓冲、PGA编程放大、24位∑-ΔA/D转换、数字滤波、数据处理、信号校准以及SPI通讯等功能。
MSC1210集成了一个8通道24位∑-ΔA/D转换器,采用8051兼容内核。与笔者之前使用的ADuC824相比,其有如下增强的功能:
(1)CPU工作频率可达33MHz,每条指令只需4个时钟周期,运算速度较快。
(2)采用非常灵活的FLASH与SRAM存储器配置,,可以对片上FLASH进行分区,根据需要设定程序FLASH与数据SRAM所占的比例。该写次数可达一百万次,数据可保存100年。
(3)片上RAM为1280B,有34个高电流驱动I/O,可以设外部存储器的存取时间,使用双数据指针提高存取速度,具有完善的节电功能,还用双数据指针提高存取速度,具有完善的节电功能,还有电压监视器、21个中断源、3个16位定时器计数器以及内部时间间隔计数器(TIC)。
(4)自带BOOT ROM,可以调试使用或在程序中调用内置固化程序,完成在线调试、数据采集、UART通讯以及读写FLASH等工作,方便了编程以及调试。
电源以及信号接口采用统一的两边插针形式,便于直接插入主机母板。这里将比较有特色的标准热电阻测量以及信号调理电路绘出,如图3所示。
在图3中,分压电阻R12与R13为运算放大器U2提供一个参考电压,在R10上产生一个恒定的电流,经Q1输出。为了减少高精度低温漂电阻的使用数量,R10、R12、R13均采用普通电阻。使用高精度低温漂电阻Rr作为电流检测电阻,将输出电压信号经R2、R3送往MSC1210的一组差分输入端,恒定电流通过四线标准铂电阻Rs,将产生电压经R4、R5送入MSC1210的另一组差分输入端,经MSC1210进行四线法测量电阻的计算,以消除铂电阻温度计引线的影响。R2、R3、R4、R5是限流电阻,防止输入电压过高损坏MSC1210;D1、R6、C12提供一个参考电压,使MSC1210有合适的差分电压输入。由于使用MSC1210的内置电压标准输出,电容C9、C10、C11是不可缺少的。MSC1210具有内置PGA(1~128),因此无需放大电路即可直接测量微弱信号。
4 高精度测温模块软件的描述
在多路高精度测温系统中,测温模块能独立进行数据采集、拟合修正、分度转换、与下位机的数据通讯,并通过SPI接口向上位机(主机)发送测量到的温度数据,接收上位机发来控制指令,进行参数设置及校准操作。与上位机通讯的指令采用不定长的ASC代码指令,用不同的信令头(SOT)代表不同的控制,并有CRC纠错以保证数据正确传输,信令有统一的结束码(EOT)。
在测温模块的MSC1210的程序功能中,分度转换是重要的组成部分,也是耗时较多的计算过程,这里简要说明一下。
对于高精度温度测量,需要考虑的一个重要问题是温度传感器的选择。对于热电阻与热电偶,有标准传感器与工业传感器之分,这
在被测温度变化缓慢的情况下,可以使用多路扫描开关配以一个高精度测温表进行多路温度测量以及数据采集。但在温度测量点数目较多、被测温度变化较快的场合,如大量热电阻、热电偶的自动计量检定系统以及高温灭菌箱自动验证系统中,传统的扫描式多路温度测量系统不无法满足要求了。近年来,随着高精度A/D转换器件价格的不断下降以及A/D转换器件功能的不断完善,研制廉价的多路、快速、高精度温度采集系统成为可能。
美国德州仪器公司(TEXAS INSTRUMENTS)新近推出了一种功能很强的带24位A/D转换器的微处理器MSC1210。MSC1210具有一些增强特性,特别适合测量高精度温度、压力传感器等输出的微弱信号。
本文介绍以MSC1210作为测量、信号处理以及通讯核心的多路高精度温度采集系统模块。该系统测量通道易于扩充,温度测量精度高,可以快速地进行多路高精度温度测量。
单片机,这里选用ATMEL公司的ATmega128。该款CPU采用Harvard流水线结构以及RISC指令,并具有较大程序容量(128KB)的FLASH,在16MHz主频下可以达到16MIPS的处理速度。
2 MSC1210的增强功能及使用注意事项
作为智能高精度测温模块的核心,MSC1210完成了微弱信号的多路切换、信号缓冲、PGA编程放大、24位∑-ΔA/D转换、数字滤波、数据处理、信号校准以及SPI通讯等功能。
MSC1210集成了一个8通道24位∑-ΔA/D转换器,采用8051兼容内核。与笔者之前使用的ADuC824相比,其有如下增强的功能:
(1)CPU工作频率可达33MHz,每条指令只需4个时钟周期,运算速度较快。
(2)采用非常灵活的FLASH与SRAM存储器配置,,可以对片上FLASH进行分区,根据需要设定程序FLASH与数据SRAM所占的比例。该写次数可达一百万次,数据可保存100年。
(3)片上RAM为1280B,有34个高电流驱动I/O,可以设外部存储器的存取时间,使用双数据指针提高存取速度,具有完善的节电功能,还用双数据指针提高存取速度,具有完善的节电功能,还有电压监视器、21个中断源、3个16位定时器计数器以及内部时间间隔计数器(TIC)。
(4)自带BOOT ROM,可以调试使用或在程序中调用内置固化程序,完成在线调试、数据采集、UART通讯以及读写FLASH等工作,方便了编程以及调试。
电源以及信号接口采用统一的两边插针形式,便于直接插入主机母板。这里将比较有特色的标准热电阻测量以及信号调理电路绘出,如图3所示。
在图3中,分压电阻R12与R13为运算放大器U2提供一个参考电压,在R10上产生一个恒定的电流,经Q1输出。为了减少高精度低温漂电阻的使用数量,R10、R12、R13均采用普通电阻。使用高精度低温漂电阻Rr作为电流检测电阻,将输出电压信号经R2、R3送往MSC1210的一组差分输入端,恒定电流通过四线标准铂电阻Rs,将产生电压经R4、R5送入MSC1210的另一组差分输入端,经MSC1210进行四线法测量电阻的计算,以消除铂电阻温度计引线的影响。R2、R3、R4、R5是限流电阻,防止输入电压过高损坏MSC1210;D1、R6、C12提供一个参考电压,使MSC1210有合适的差分电压输入。由于使用MSC1210的内置电压标准输出,电容C9、C10、C11是不可缺少的。MSC1210具有内置PGA(1~128),因此无需放大电路即可直接测量微弱信号。
4 高精度测温模块软件的描述
在多路高精度测温系统中,测温模块能独立进行数据采集、拟合修正、分度转换、与下位机的数据通讯,并通过SPI接口向上位机(主机)发送测量到的温度数据,接收上位机发来控制指令,进行参数设置及校准操作。与上位机通讯的指令采用不定长的ASC代码指令,用不同的信令头(SOT)代表不同的控制,并有CRC纠错以保证数据正确传输,信令有统一的结束码(EOT)。
在测温模块的MSC1210的程序功能中,分度转换是重要的组成部分,也是耗时较多的计算过程,这里简要说明一下。
对于高精度温度测量,需要考虑的一个重要问题是温度传感器的选择。对于热电阻与热电偶,有标准传感器与工业传感器之分,这