如何用相分复用技术改善多传感器的读出

描述

不久前,我们的一位同事正在研究设计智能手表,健身可穿戴设备等时固有的一些挑战。主要挑战之一是如何获得更好的信号质量,以便获得更准确的血氧饱和度测量值。该解决方案基于我们先前在扩频技术方面的经验。我们意识到,我们可以使用这些相同的技术来改善多传感器数据环境(例如脉搏血氧仪应用)中的信噪比(SNR)。

让我们从谈论脉搏血氧饱和度测量开始,然后再介绍新技术。该演示应用程序的框图在图1中给出。在整篇文章中,我们将参考此图。

智能手表

图 1  反射式脉搏血氧仪(RPO)应用框图

您很可能对从医生办公室出行的脉搏血氧饱和度非常熟悉。护士进来,称重您的体重,然后在您的手指上放一个夹子,该夹子使用红色和红外LED来测量您的心率和血液中的氧饱和度。手术室中使用的更高级的监视器使用多达8个波长来测量心率,血氧饱和度,一氧化碳中毒以及与全身麻醉下患者相关的其他因素。

利用更多信号源(在脉搏血氧仪中为LED)的传感器所面临的一个问题与拥有许多用户的通信系统所面临的问题类似。每个LED必须共享相同的传感器(光电二极管)。通常,这是通过依次打开每个光源,然后依次进行每个测量来完成的。因此,每个源都有自己的时间片,传感器可以在其中获得其测量值。这称为时分复用(TDM)。主要缺点是,在保持其他所有传感器不变的情况下,增加更多的传感器需要更多的时间来从每个源获取测量值,从而降低了每个源的总体采样率。另外,由于您要测量的信号(动脉搏动)是变化的信号,因此测量值会因其采集顺序而有偏差(图2)。)。高采样率可以帮助减少这两个问题,但最后一个问题是当前技术要求从源测量值中减去背景测量值。

智能手表

图 2  采样偏差图示

许多无线应用到达的方法是使用码分多址(CDMA)。在该技术中,系统使用彼此之间具有非常低互相关的编码序列(例如,金码)。这允许频谱的多个用户同时共存,而代码之间的串扰很小。在数字系统中,可以很容易地丢弃最少量的串扰,但这足以在尝试进行精确的模拟测量时引起问题。如果您不熟悉此主题,那么现在可能是阅读CDMA,黄金代码和直接序列扩展频谱的好时机。

我们用于该脉搏血氧仪的技术使用了最大长度(ML)序列,该序列又用于生成黄金代码,但是我们不使用多个序列,而是仅使用一个序列并对每个信号源进行了相移。我们将其称为相分复用(PDM)。这是由于ML序列的某些属性而起作用的。

最大长度(ML)序列属性

ML序列之所以得名,是因为它表示可以由给定位数表示的(非零)状态的最大数量。因此,例如,给定四个位,该序列将在每15(2 n -1)个状态或“码片”之后重复。结果,输出序列具有几乎相等的1和0(“ 0”比“ 1”少1)。通常将ML序列的输出视为“ 1”和“ -1”(代替“ 0”)的序列。此表示创建了一些有用的属性。ML序列的自相关类似于脉冲,值为2 n -1的单个尖峰和所有其他相位偏移的平坦-1。如果输出信号以零发送,则尖峰变为2 n-1,并且非高峰相关性为0。这意味着,如果我们重复并移位了相同的序列,则可以使用相关性来分离组成信号。此属性在图3中说明。顶部的图显示了ML序列。顺序被移位以生成“红色”和“ IR”信号。模数转换器(ADC)看到组合后的信号,最终曲线图显示了参考信号与信号之间的圆形互相关。这两个峰值与红色和IR信号的相移一致。所有其他相位偏移的相关性为零。这意味着我们可以插入另外13个传感器源,而不会影响测量周期或其他源的结果。与传统的TDM方法相比,这代表了巨大的收益。

智能手表

 

图 3 PDM示例;X和Y轴是以任意单位表示的时间和幅度

生成ML序列

ML序列是使用线性反馈移位寄存器(LFSR)生成的。这些可以用硬件或软件来实现。图4 显示了LFSR的示例。LFSR可以使用三个或更多个触发器的任意长度的移位寄存器,并将一组触发器的输出与返回移位寄存器的输入进行XOR运算。表1提供了有效LFSR参数的选择。图4中的LFSR 为n = 4,抽头= 3。LFSR可以有多个抽头,对于任何给定的尺寸,总会有至少两个抽头选项。图4中所示的LFSR配置 也可以在图1中找到,它是使用可配置逻辑单元(CLC)构造的。

智能手表

 

图 4  线性反馈移位寄存器(LFSR),大小= 4,抽头= 3

表1  LFSR参数,《电子艺术》第3版,第1页。976

智能手表

相关性

最后一步是相关性,这是通过将传感器结果与LED的状态相乘(1表示打开,-1表示关闭)并积分/累加乘积来完成的。换句话说,当信号源打开时,我们将添加传感器结果,而当信号源关闭时,我们将减去传感器结果。该过程可以模拟或数字方式完成。在此处讨论的应用中,我们对ADC结果进行了相关。ADC转换在LFSR时钟源的负沿触发,然后在中断中关联每个转换结果。图5 显示了每个ADC中断调用的函数。该功能获取每个样本,并将样本与脉搏血氧仪应用程序中的三个传感器中的每个相关联。我们还将ADC结果与未使用的LFSR抽头相关,以进行背景测量,但是除了好奇心之外,它并没有太多用处。重复进行30次累加,然后停止关联,然后应用程序可以读取每个传感器的关联结果。

智能手表

 

图 5  相关代码示例

结果

下图显示了使用新的PDM技术(图7)和旧的TDM技术(图6)的脉搏血氧仪演示的结果。)。这些图显示了相关结果(PDM)和TDM结果,它们被抽取以匹配相关周期。总体而言,每个PDM样本代表30个ADC样本,每个TDM样本代表28个总样本((3个传感器+ 1个背景)×7)。PDM结果显示出峰峰值幅度大约是TDM结果的两倍。与TDM技术中每个源的七个样本相比,PDM技术为每个源提供了有效的16个样本。使用PDM方法添加更多光源不会影响有效样本的数量(使用大小为4的LFSR最多可限制15个光源),但是使用TDM技术时,每个其他光源都需要花费更多的时间。

智能手表

 

图 6  TDM相关结果:红色650nm,蓝色650nm,黑色940nm

智能手表

 

图 7  PDM相关结果:红色650nm,蓝色650nm,黑色940nm

分析

由于使用的唯一操作是TDM或PDM方法,因此可以很容易地应用统计错误传播技术来评估应用程序中的折衷。使用TDM还是PDM更好?如果使用PDM,是否最好使用较长的序列或在相等的时间内重复较短的序列?

如果传感器测量值的总和为:

智能手表

现在,通常,ML序列的相关结果为2 n -1,这也是序列(k)的长度。假定您可以传输1和-1(推挽),这是正确的。对于这种脉搏血氧仪,我们只有发光二极管,并且只能向系统添加光。使用长度为15的ML序列,LED点亮该序列的8个芯片,熄灭7个芯片。环境光一直存在,因此最终得到的是源振幅的八倍和环境光的一倍。公式5中显示了更通用的形式,公式6中显示了误差传播。

智能手表

C =相关结果
S t =所有信号源振幅的总和
B =背景
n = LFSR的长度

智能手表

σ c ^ =相关样本的误差
σ b =背景的误码测量
σ小号 =求和源测量值的误差(见等式2)
K = 2 Ñ -1 = ML序列长度
S =源数

在给定的源测量结果等于SB的情况下,TDM的分析要简单一些,其中S是源的测量,而B是背景的测量。将其乘以m(SB)的测量次数即可得出误差为智能手表

我们已经将这些等式放入电子表格[2]中,因此您可以估算TDM或PDM是否更适合您的应用。至少在纸上,我们发现一个或两个光源使用TDM可获得更好的结果(例如,只有一个红色LED和一个用于脉冲氧化的红外灯),三个或更多个光源使用PDM可获得更好的结果(例如,红色,IR和绿色LED在许多具有心率监测功能的可穿戴设备中很常见)。

相分复用应在许多传感器应用中找到应用,例如脉搏血氧饱和度,触摸等。我们已经演示了如何在硬件中生成信号,共享了一种将多路复用信号相关以分离出单个信号的方法,并提供了一套统计工具来比较PDM与TDM,从而使设计人员能够为他们的应用选择合适的方法。

编辑:hfy

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分