深圳市敏创电子有限公司

NTC热敏电阻生产厂家
专注NTC热敏电阻12年,可特殊定制

热门搜索: 热敏电阻厂家 |

您当前所在的位置:主页 > 技术文章 > 技术文章

如何分析自定义PCB传感器子系统的数据

时间:2019-03-23 ??来源:敏创电子??编辑:热敏电阻厂家??浏览:
最近设计了一种高精度测斜仪子系统,它对环境力非常敏感,因此需要在花岗岩板上定制外壳才能正常工作。 
在整个设计过程中,我已经列出了BOM,原理图,PCB布局,外壳设计和固件。我还经历了测试和测量阶段,以表征电路板产生的噪声。
我在这个过程中的最后一步是分析我可以从子系统收集的数据。本文着眼于从电路板上捕获的数据,并展示了我如何选择可视化数据。
 
数据分析
该集成数字滤波器时,  逐次逼近寄存器(SAR)  模拟数字转换器(ADC),我选择在我的设计中使用,集成了数据平均,很容易实现。转换结果保存在内部存储器中,并与之前的结果结合,直到发生SPI事务。
要平均两个结果,在读取数据之前将CNV引脚切换为逻辑高两次。要平均65,535个结果,在读取数据之前将CNV引脚切换65,535次。
 
传感器产生的数据长度为40位:24位用于传感器读数,16位用于指示平均多少样本(注意计数指数为0-即,值为0表示平均1个样本,a值为1表示平均2个样本,等等。如果查看本文档末尾附带的数据文件,您会注意到我在数据中添加了16位以跟踪测量编号(这些编号未在分析中使用)。
我将数据作为ASCII'0'和'1'的序列从PCB传输出来,并在Mathematica的计算机上进行处理。前24位转换为十进制表示法并乘以的比例因子。接下来的16位转换为十进制数,并显示在下面每个图形的页脚左侧的括号中,作为重复测量的次数。每个试验由1023个样品组成,每个样品由n个平均读数组成(1,2,4,8,......,32768)。15°223
所有试验在一次运行中连续进行,测量之间没有明显的暂停。
 
每个试验都使用相同的图形和计算集。计算原始数据的平均值和标准偏差,并用于创建概率密度函数。原始数据在箱中分组,也以直方图显示。散点图显示了通过n抽头移动平均(FIR)滤波器处理后的数据点。最后,彩色三角形用于表示三种不同尺度(100%,1%,0.01%)的最大值,平均值+标准偏差,平均值,平均值 - 标准偏差和最小数据点。
我们先来看看数据,然后讨论结果的重要性。





正如您将从统计类中回忆的那样,平均值是所有测量的简单平均值。标准差提供了传播的指示。出于我们的目的,我们希望标准偏差尽可能小。

您将看到平均值在整个处理过程中保持不变,任何变化都很容易归因于舍入误差(如预期的那样)。标准偏差(SD)表示数据的扩展,随着FIR抽头数量的增加而减少 - 这这是因为移动平均滤波器正在减轻外围数据点的影响。我还通过平均滤波器显示数据的标准偏差,以便感兴趣的读者将ADC(数字平均滤波器)内的平均效果与ADC外部的平均值(移动平均滤波器)进行比较。 

该数据集的平均值为0.6987°,没有平滑或数据处理,标准偏差为0.0025°。这提供了比平均值低3个数量级的标准偏差。标准误差甚至更。?.000078°。但是所有这些小数位真的重要吗?这是一个非常小的标准偏差。6标准偏差范围(6σ)为0.015° - 给出了我从设备读取的单个值在实际值的0.015°范围内的概率为99.999999%。该设备可能具有更高的分辨率,但我的实验设置或PCB设计引入了太多噪音。

现在 - 下一个问题。我可以做得更好吗?据统计,我可以收集更多的测量数据。但是,如果我不想坐在那里等待设备收集数千个数据点,并使用大量的处理器内存和处理器能力,那么可接受的设备配置是什么?为此,让我们看看另一个实验 - 由32768次平均读数的1023次试验组成。如果我在微控制器内部存储32768个32位测量值,我需要至少131 kB的内存,并且知道处理累积数据的时钟周期数。如果我想在ADC内部平均32768次测量,我只需将转换引脚切换32768次。

使用ADC内部的数字平均滤波器可以将存储和计算的负担从微控制器转移出去,从而将其释放出去做其他事情。

 

 

在这里,32768次试验在ADC内平均 - 平均为0.701°,标准偏差为0.000547°。6σ范围为0.003°,单次测量在0.688°和0.704°之间的可能性为99.999999%。

 

结论

也许我的测斜仪并不像我想要的那样精确,但事实是我创造了一个比我需要的更精确的子系统:我可以测量到百分之一度的倾角并知道测量值与实际值之间的差异可以忽略不计。在这一点上,我没有计划构建,调整或表征任何需要更精确的东西。

您是否有任何可以从高精度测斜仪设计中受益的项目或系统?是否有您希望添加到此子系统的功能或功能?请在下面的评论部分分享您的想法。

 所有数据集如下所示: