逼近非线性关系:S型热电偶

此示例示出了如何以近似S型热电偶的非线性关系。

热电偶建模和信号转换

热电偶是流行的模拟换能器中的一个的今天,与其他设备,例如位置传感器,应变计,压力传感器,以及电阻温度设备(RTD的)沿。的塞贝克效应(也称为热电效应)的原理下操作,热电偶具有被大大超过每结型的有用工作范围已知的根据经验确定的非线性行为。如果您运行的模式,你就能看到动态测量精度每个组件的累积效应。这个例子将集中在模型的每个在一个S型动态温度测量系统中的这些组分(铂10%铑(+)对铂( - )):热电偶设备和探针组件,信号调节方法,一个模拟到数字转换器(ADC),以及用于ADC输出转换成温度值的软件规范。的附加部分显示了如何获得和使用标准NIST ITS-90热电偶数据与Simulink®模型。万博1manbetx查找表和多项式块在此设计用于捕捉热电偶的非线性行为。需要注意的是多项式块是一个可行的选择对于某些应用查找表,在一些附加的计算为全面多项式表示成本最小化ROM的使用。

打开模型

open_system('sldemo_tc'

图1:温度测量系统:成分的链从物理现象软件值

模拟热电偶信号

热电偶模型的两个主要特征是探针和珠子动力学和热电偶的转化温度的成毫伏信号。探针+珠动力学建模为30毫秒的一阶系统,和非线性热电偶行为使用来自NIST标准数据库60,用于从-50 S型热电偶的段1的多项式的数据1063摄氏度建模。对于数值稳定性,系数按比例从多项式块返回微伏。然后将1 S型热电偶模型子系统的输出被转换为与单位转换块伏。需要注意的是单位对子系统的输入和输出端口指定和子系统图标显示。要了解更多关于在Simulink看单位万博1manbetx万博1manbetxSimulink的单位

另一种实现使用多项式插值查表。表数据可以在查表块到位多项式块的使用。采样数据是由NIST标准数据库60构造成用于在文件中的S型热电偶sldemo_create_tc_tabledata.m访问该数据库在名为“热电偶参考数据下载和导入过程”的部分描述如下。

抗混叠滤波器和模拟数字转换器(ADC)模型

在该模型中ADC需要一个0至5伏信号,所以原始热电偶感测电压被偏置并放大对应于要18.661毫伏(-50摄氏度到1765摄氏度)的范围-0.235毫伏。第三阶Butterworth抗混叠滤波器被设计用于使用所述信号处理工具箱™Wn的= 15赫兹:

[NUM,DEN] =黄油(3,15 * 2 * PI, '低', 'S')

抗混叠滤波器的输出馈送一个采样和保持装置,其驱动器的量化模型。由于采样周期是在这个例子中为20毫秒,因为它通常是2个数量级为当前可用的装置更小的转换时间会被忽略。(注:如果转换时间是采样周期的可观部分,它不能被忽略,因为它会显著影响系统的动力学)

该模型中的量化算法采用在0至5伏信号,并在一个16位有符号整数,输出一个12位的数字字。的0对应于0伏特和4096的值的值将对应于5伏。在至少显著位的变化(LSB)为约1.2毫伏。作为12个比特只能达到4095的值,能够由该装置读取的最高电压是约4.9988伏特。为了具有在操作范围内不超过1/2 LSB误差,量化器改变每个电压点之间中途的值,导致在0伏特1/2宽度间隔和3/2宽间隔刚好低于5伏。最后间隔具有1个整体LSB由于其3/2-宽度尺寸。

了解数据转换器

sldemo_adc_quantize模型可以让你更详细地探讨了A / d转换器组件:

open_system('sldemo_adc_quantize'

图2:ADC量化模型(零转换时间)的详细信息

SIM('sldemo_adc_quantize')设置(GCF,'颜色',[1,1,1]);

图3:ADC的量化特性。

AX = GET(GCF,“孩子们”);设置(AX(1),'XLIM'[4085,4100]);

图4:ADC的量化特性:在到的范围内顶部缩放以显示在高端1种LSB错误行为(休息的范围仅具有1/2 LSB最大误差)。

软件规范ADC输出转换为温度值

输入转换子系统需要来自其全刻度范围是0到4095计数ADC,对应于-0.235 mV与18.6564毫伏热电偶环电压的16位无符号整数输入。最佳的精度和速度最快的算法输入转换是直接查表。由于输入是从0到4095的整数,一个表可以被构造给出对应于每个可能的输入值的热电偶的温度,所以在转换过程可以减少到分度到一个表。然而,这需要每个ADC输出值的一个数,对于12位的ADC,这可以是在存储器中受限的环境的负担。对于双精度数据,这是一个16 KB的ROM的要求。查看文件sldemo_create_tc_tabledata.m该方法用于从S型热电偶的基准数据构造的直接查找表。运行时查找过程没有引入附加的误差 - 因为存在与每一个可能的输入值相关联的输出值与该方法相关联的错误完全隔离于表构造方法。

一个插表也被放入模型中,仅使用664字节。这是在ROM中的大幅减少所需相比,直接查表,但它需要多一点的时间来计算比间接内存访问,并引入误差进入测量,其下降的点的表数量的增加。

open_system(sprintf的(“sldemo_tc / 3软件规范\ n有关转换\ NADC值温度”))

热电偶参考数据下载和导入过程

使用NIST ITS-90热电偶数据库(标准参考从NIST专论175数据库60),就可以访问描述用于八个标准热电偶类型的行为的标准参考的数据。该数据库涉及热电偶输出至1990年按照国际温标这些步骤获取并在需要充分行使包括在这个例子中,支持文件读取数据:万博1manbetx

1。访问NIST标准数据库60网站在互联网上和文件all.tab下载到本地目录。此文件是下一个所有热电偶类型超链接。下载完成后,返回到该页面。

2。cd到你下载的热电偶all.tab数据库目录

3。解析数据库,并将其使用所述转换工具转换为MATLAB结构阵列readstdtcdata.m:

tcdata = readstdtcdata( 'all.tab');保存thermocouple_its90.mat tcdata;

(提示:突出显示上述MATLAB代码,并使用鼠标右键菜单项“评估选择”来执行它)

您现在有一个完整的设定温度的(T,摄氏度)对电压(E,毫伏)的数据,近似多项式的系数,以及逆为标准热电偶类型乙多项式系数,E,J,K,N,R,S,和T在文件thermocouple_its90.mat的tcdata变量。在MATLAB脚本sldemo_create_tc_tabledata.m使用此数据来准备查找在实施例模型中使用表块参数。

用在查找表调理参考数据

如果您查看在tcdata结构或all.tab热电偶数据表,你就可能会注意到几件事情:

  • 在数据重复0摄氏度的温度点

  • 在数据由于3位输出格式重复电压点

  • 与具有相同的输出,例如,对于B型热电偶的两个温度非单调行为,T(E)不会工作,但E(T)不工作

所述readstdtcdata()例程就会从数据中去除重复0摄氏度的温度点,但反复的电压由于一些曲线端部的数据格式和非单调行为必须以单独的基础上进行处理。命名参考模型sldemo_tc_blocks使用sldemo_tc_blocks_data.mat构建。它包含有从在all.tab八个标准热电偶插值多项式填充数据的查找表:

open_system('sldemo_tc_blocks'

图5:从ITS-90插值多项式创建全音域2摄氏度内插热电偶表

参考

1。NIST ITS-90热电偶数据库网址:https://srdata.nist.gov/its90/main

2。“温度电动势引用函数和表对于基于ITS-90信表示热电偶类型”。标准和技术专着175研究所;1993年,630页。

3。1990年国际温标(ITS-90),谘询委员会,国际度量衡委员会的测温(CCT)(CIPM)

4。在金属热电效应:热电偶,1997 S. O. Kasap

注:确定复杂系统,如发动机的经验关系和拟合模型测得的数据,MathWorks®提供基于模型的标定工具箱其采用实验设计的方法优化表数据库创建,加上值提取和自动表填充组件。