摘要:MAX1452高性能模拟信号调理器通过片内闪存查找表或者OTC和FSOTC DAC实现线性补偿。对于MAX1452温度和传感器温度不同的应用(例如,传感器位于距离MAX1452较远的位置),应采用OTC和FSOTC DAC来补偿传感器输出。本应用笔记详细介绍实现这类远端传感器补偿的过程。在本文中,假设读者熟悉MAX1452及其基本操作。
引言
MAX1452是高性能、低成本信号调理器,它具有片内闪存、片内温度传感器和全模拟信号通路。各种工业和汽车传感器领域都采用了信号调理器,包括只限于对两个温度点进行补偿的应用。这种限制是出于成本、生产的考虑,并且无法将传感器和信号调理器保持在同一温度下。
MAX1452信号调理器支持两种补偿方法:
-
第一种方法在两个温度点之间进行线性外推处理(针对FSO和OFF DAC值),以相应的温度系数装入OFF和FSO查找表的每一单元,以纠正输入信号的TC偏差。在这种方法中,OTC和FSOTC DAC被设置为任一固定值(和补偿过程使用的数值一样)。在工作期间,随MAX1452温度的变化,以相应的系数来更新OFF和FSO DAC,从而补偿输入信号。
-
在第二种方法中,把OFF和FSO查找表当做一个DAC。利用随温度变化的电桥激励电压(VB)作为温度参数,该电压是OTC和FSOTC DAC的基准电压。根据补偿期间的测量结果,计算OFF、FSO、OTC和FSOTC DAC的值。当MAX1452和传感器无法保持同一温度时,必须采用这一方法。它也可以用于MAX1452和传感器温度相同的情况。
这两种方法应该产生相似的结果。如果正确实施,这些方法能够完全消除输入信号TC误差的线性分量,降低输出误差,只剩下输入信号TC误差的非线性分量。
MAX1452用户手册详细介绍了第一种方法,本应用笔记不再介绍。下面介绍通常被称为远端传感器补偿的第二种方法。
远端传感器补偿过程
下面介绍怎样补偿压力变送器,它采用了MAX1452和100KPaG PRT压力传感器。表1和图1至图3列出了补偿结果。变送器通过补偿来产生所需的0.5V失调电压[VOUT(PMIN)]和4.0V FSO电压[VOUT (PMAX) - VOUT (PMIN)]。因此,满量程压力检测输出电压[VOUT(PMAX)]应该是4.5V。补偿过程至少需要两个压力点(零和满量程)以及两个任意温度点(T1和T2,其中T2 > T1)。选择的T1和T2应该使数据点达到最佳线性拟和,以降低整个工作温度范围内的误差。
下面列出了补偿过程的主要步骤:
-
系数初始化
-
FSO校准
-
FSO和FSOTC补偿
-
OTC补偿
-
OFF补偿
系数初始化
在开始之前,必须设置PGA增益、IRO索引和DAC,以防止PGA输出在补偿过程中过载。这些数值取决于传感器特性,可以参考传感器数据资料,获得传感器特性。
选择PGA增益设置
对于典型的2.5V电桥激励电压(VB),以测得的传感器步长(VSOUT)来划分变送器的满量程输出电压(VFSODESIRED),计算所需的信号增益。然后,从MAX1452数据资料的PGA表中选择给出更大的PGAGAIN的PGAINDEX。
例如,2.5V激励0.0364V输出和4.0V VFSODESIRED的传感器需要110V/V的信号增益。根据数据资料的PGA表,选择PGA[3:0] = 0110,它对应于117V/V增益。
选择IRO索引
计算典型2.5V电桥激励电压时的传感器失调。然后,从MAX1452数据资料IRO表中,选择最接近IRO DAC输出的IROINDEX,但是它应该和传感器的失调反向。
例子:对于+30mV失调的传感器,选择IRO[2:0] = 011,符号位 = 0,对应于-27mV失调校准。
选择初始OTC DAC值
通常情况下,因为在以后补偿OTC,因此一开始可以把OTC DAC值设置为零。但是,具有较大失调TC误差的传感器可能需要先进行粗略的OTC调整,以防止输出在补偿期间出现饱和。对于失调TC误差大于满量程输出10%的传感器,建议采用不为零的OTC初始值。可以按下面的公式来计算初始OTC值:
其中,VB(T1) = 2.5V,利用传感器数据资料提供的传感器参数计算VSOUT(T1)、VSOUT(T2)和VB(T2)。
必须将OTC值写入到OTC DAC中,并相应地设置配置寄存器的OTC符号位。
FSO校准
按照以下步骤确定初始FSO DAC值:
-
将FSOTC DAC设置为任意值,例如0。
-
传感器加载PMIN。PMIN代表最小压力。
-
调整FSO DAC,直到电桥激励电压接近2.5V。
-
测量电桥激励电压(VB)。
-
调整OFF DAC,将PGAOUT电压设置为0.5V。
-
测量PGAOUT,VOUT(PMIN)。
-
传感器加载PMAX。PMAX代表最大压力。
-
测量PGAOUT,VOUT(PMAX)。
-
按照下面的公式计算VBIDEAL:
如果VBIDEAL超出允许范围[1.5V至(VDD - 0.5V)],重新调整PGAGAIN设置。如果VBIDEAL过低,在第一步中减小PGAGAIN,然后返回第二步。如果VBIDEAL过高,在第一步中增大PGAGAIN,然后返回第二步。注意,在整个操作范围内,须满足1.5V < VB < (VDD - 0.5V)的范围限制。因此,必须为VB随温度变化留有足够的裕量。
-
通过调整FSO DAC设置VBIDEAL。
-
重新调整OFF DAC,直到PGAOUT达到0.5V。
FSO和FSOTC补偿
可以通过四个步骤来确定FSO和FSOTC系数。在第一步中,确定在T1产生VBIDEAL的两对FSO和FSOTC值。在第二步中,确定在T2产生VBIDEAL的两对FSO和FSOTC值。在第三步,把在T1和T2测得的FSO和FSOTC值代入相应的公式中,计算补偿FSO和FSOTC,理论上,这些值将产生适用于任意温度的VBIDEAL。在第四步中,调整FSO DAC,以微调满量程输出。
-
T1的理想电桥电压,VBIDEAL(T1)
A. 把温度设置为T1,使电桥电压有足够的吸收时间,稳定在0.1mV/min以内。
B. 传感器加载PMIN。
C. 测量电桥激励电压(VB)。
D. 测量PGAOUT,VOUT(PMIN)。
E. 传感器加载PMAX。
F. 测量PGAOUT,VOUT(PMAX)。
G. 利用公式2计算VBIDEAL(T1)。
H. 通过调整FSO DAC设置VBIDEAL。
I. 重新测量VOUT(PMAX)和VOUT(PMIN),验证已经达到了合适的VFSODESIRED电平。如果没有,从B开始,重新进行所有步骤。
J. 把当前的FSO和FSOTC值分别记为FSO1(T1)和FSOTC1(T1)。
K. FSO DAC数值增加(或减小) 5000个计数值。
L. 调整FSOTC DAC值,直到VB = VBIDEAL(T1)。
M. 把当前的FSO和FSOTC值分别记为FSO2(T1)和FSOTC2(T1)。
N. 传感器加载PMIN。
O. 读取输出电压,并记录为VOUT(T1)。后面的OTC补偿将用到该数值。
P. 读取VB,并记录为VB(T1)。该数值应该和VBIDEAL(T1)相同,后面的OTC补偿需要。
-
T2的理想电桥电压,VBIDEAL(T2)
A. 把温度设置为T2,使电桥电压有足够的吸收时间,稳定在0.1mV/min以内。
B. 传感器加载PMIN。
C. 读取输出电压,并记录为VOUT(T2)。后面的OTC补偿将用到该数值。
D. 读取VB,并记录为VB(T2)。
E. 通过和上面相同的步骤确定VBIDEAL(T2)值。
F. 通过和上面相同的步骤确定FSO1(T2)和FSOTC1(T2)值。
G. 通过和上面相同的步骤确定FSO2(T1)和FSOTC2(T2)值。
H. 传感器加载PMIN。
-
计算FSO和FSOTC系数。
A. T1处的FSO和FSOTC曲线/函数:
B. T2处的FSO和FSOTC曲线/函数:
C. 最终的FSO系数:
D. 最终的FSOTC系数:
-
将计算的FSO和FSOTC值装载到FSO和FSOTC DAC中,如果需要,调整FSO DAC,直到电桥激励电压等于VBIDEAL(T2)。
这就完成了FSO和FSOTC补偿。在这一点,变送器的FSO输出必须等于VFSODESIRED电平。
OTC补偿
由于已经收集到了计算最终OTC值所需的全部信息,可使用下式计算:
其中:
NewOTC是最终OTC系数;
CurrentOTC是OTC DAC中的当前值;
VOUT(T1)和VB(T1)是T1的最后一次测量值;
VOUT(T2)和VB(T2)是T2吸收后的第一次测量值。
把NewOTC值写入OTC DAC,并相应的在配置寄存器中设置OTC DAC符号位。
OFF补偿
在这一点,传感器还应该保持在温度T2和压力PMIN。通过调整OFF DAC,完成T2或者T1的最终失调调整,如果需要,调整OFF DAC符号位,直到VOUT等于所需要的失调电压(在这一例子中是0.5V)。
现在完成了传感器补偿!
验证传感器补偿
把变送器置于各种温度和压力点下,来验证补偿效果,校验PGAOUT。
实例
下面的数据展示了上面详细阐述的过程的效果。采用了100KpaG测量传感器(序列号:NPH-8-100GH),其输出补偿为PMIN = 0,PMAX = 100KpaG,T1 = -40°C和T2 = +125°C。目标输出电压为PGAOUT(PMIN) = 0.5V,PGAOUT(PMAX) = 4.5V。在补偿过程完成时,补偿后的变送器为T = -40°C,0°C,+25°C,+75°C和+125°C。两点温度补偿完全消除了传感器误差的线性部分。补偿后变送器的总误差和未补偿传感器误差的非线性分量大致相当。
表1列出了未补偿和补偿后变送器的测量输出和计算误差。未补偿传感器的误差有两种形式:总误差(TE)和非线性误差(NE)。TE由TC误差的线性和非线性组成(以25°C间隔为参考)。NE是总误差减去所计算误差的线性分量,误差是指和通过数据两个端点的直线的偏差(端点直线拟和)。表1中的数据在图1至图3中以曲线的形式表示。图1所示是未补偿传感器的总误差;图2是未补偿传感器误差的非线性分量;图3是变送器补偿后的总误差。数据表明两点补偿过程完全消除了传感器的线性分量,变送器补偿后的TE和未补偿传感器的非线性分量大致相当。
表1. 未补偿传感器和补偿后的变送器数据
Temp
(°C) |
Uncompensated Sensor
(PMIN = 0; PMAX = 100KPaG; VB = 5V) |
Compensated Transducer
(PMIN = 0; PMAX = 100KPaG; VDD = 5V) |
Offset (mV) |
FSO (mV) |
Total Error
(% FSO, Referenced at +25°C) |
Nonlinear Error
(% FSO, End-Point Fit) |
Offset (V) |
FSO (V) |
Total Error
(% FSO, End-Point Fit) |
Offset |
FSO |
Offset |
FSO |
Offset |
FSO |
-40 |
-4.2 |
97.7 |
-5.3 |
9.9 |
0.0 |
0.0 |
0.496 |
4.006 |
-0.1 |
0.2 |
0 |
-1.0 |
89.3 |
-1.5 |
3.8 |
1.5 |
-1.8 |
0.553 |
3.933 |
1.3 |
-1.7 |
+25 |
0.3 |
84.8 |
0.0 |
0.0 |
1.6 |
-2.0 |
0.565 |
3.930 |
1.6 |
-1.8 |
+75 |
2.5 |
76.6 |
2.6 |
-7.1 |
1.3 |
-1.5 |
0.552 |
3.957 |
1.3 |
-1.1 |
+125 |
3.8 |
69.2 |
4.1 |
-14.3 |
0.0 |
0.0 |
0.500 |
4.001 |
0.0 |
0.0 |
在这个例子中,对极端温度点进行了补偿,对测量的数据进行了端点直线拟和,以便清楚地演示两点温度补偿的效果。极端温度点并不是传感器补偿最佳点,因为误差会偏向一侧(理论上,幅度加倍)。在应用中,需要凭经验选择最佳温度补偿点,这样,变送器误差均匀分布在0%误差线附近。一般情况下,满量程的25%和75% (中点)温度点将给出最佳误差分布。如果在这个例子中选择了最佳补偿温度点,那么,误差分布大约在表1所示误差一侧的±½ (以0%误差线为中心)。
图1. 未补偿传感器总误差—结合了一阶和二阶误差
图2. 未补偿传感器的二阶误差,是图1中数据端点直线的偏差。
图3. 变送器补偿后的误差。这是系数补偿后的总误差。两点温度补偿只能纠正误差的线性部分。
结论
-
本应用笔记旨在作为一个实例来演示远端传感器补偿过程,介绍手动操作实现补偿的方法。MAX1452用户手册介绍了更适合自动补偿的其他方法,该手册包含在评估板软件工具中,可以从Maxim网站下载。
-
为充分发挥MAX1452的功能,需要进行两次补偿。第一次是确定OTC和FSOTC系数,以有效地校正TC误差的线性分量,如本文档所述。第二次是多点温度补偿,以正确的系数填充OFF和FSO查找表,抵消剩余的非线性TC误差。MAX1452用户手册介绍了多点温度补偿过程。
-
在生产环境中,能够以标称值装载OTC和FSOTC DAC,只进行一次多点温度补偿,以充分利用MAX1452的功能。之所以这样,是因为类似传感器的TC特性(例如,灵敏度和失调等)非常相似。在代表性的样片上进行两点补偿就可以确定标称OTC和FSOTC (以及PGAGAIN和IRO)值。
-
在本应用笔记中,MAX1452可以作为一种产品选择。但是,该过程也适用于MAX1455,因为这两种产品只有很小的差别。