【硬件电路设计】关于荧光扩大遇到的问题总结

摘要:快诊去年提出了一个需求:公司目前的POCT仪器量程只有6W,试剂优化工艺后,反应更加充分,在一些项目上出现了平头峰;未来规划的一些检测项目也需要更高的量程。希望把仪器量程提高到25W(100W更好),同时要保证低量程测值数据和旧机器保持一致。先在1600上验证

快诊去年提出了一个需求:公司目前的POCT仪器量程只有6W,试剂优化工艺后,反应更加充分,在一些项目上出现了平头峰;未来规划的一些检测项目也需要更高的量程。希望把仪器量程提高到25W(100W更好),同时要保证低量程测值数据和旧机器保持一致。先在1600上验证,验证通过后再考虑推广到所有POCT仪器。

测试原理:将待测样本加在样品垫上,样本通过层析作用向前移动,溶解结合垫上固化的标记试剂后与之反应。当复合物移动至抗原的检测带时,待测样本和标记试剂的复合物与之发生特异性结合并被截留,结合物在检测线上富集,样本中待测物越多,检测线上的结合物就越多,附着的结合物含量与样本中待测物含量成线性关系,而游离的标记试剂则会越过检测线富集在质控线处。层析结束后,用特定光源对检测区扫描,检测线和质控线上荧光纳米微球发出高强度的荧光,分别成为检测峰和质控峰。

图 1测试原理

传感器是滨松的PD,信号采集电路也是最常规的跨阻放大电路,将PD输出的电流转化为电压,输出公式为V = I * R

图 2信号采集电路

ADC是一颗24bit的δ-Σ型ADC,理论上最大量程应该是1677W,询问才知道,最初基于某些原因,只用了16bit数据,低位都省去了。仪器测值显示的是AD code值。

图 3信号采集电路

仪器情况了解到这里,后续的改进方案基本已经明了:1. 将跨阻调小(提高硬件量程,相同浓度样本的电压值变低)2.ADC数据多取几位(软件量程提高,code值放大);如果取值比较巧妙,硬件的“缩小”和软件的“放大”甚至可以抵消。

理论上只需要调整BOM,软件配合修改APP程序即可,改动比较小,实现起来应该非常容易。但随着调试的深入,才发现这坑又大又深。

问题1. 台间差

1600取了16bit数据计算使用,最大值应该是65535,如果提升到25W,只需要“放大”4倍即可。硬件上将跨阻由2MΩ缩小到500KΩ,软件上取18bit数据。这样最大量程就满足25W了。但快诊同事说,仪器有台间差,需要保证0.3系数的仪器也要达到25W量程。因此重新调整参数,跨阻调整为125K(缩小16倍),软件上取20bit数据(放大16倍)。修改后的最大量程应该是 32W。

图 4台间差系数分布

问题2. 跨阻电路带宽

我们验证采用的方法是对比法,找了一台机器改造,用标准机对比测试数据。快诊提供了一种“电压卡”。传统的试剂条是湿式的,滴样品后的第15-25分钟间测值才是准确的。“电压卡”是干式的,用荧光素直接在试剂条上画线,不存在衍变性,可长时间使用,也是未来计划推广的校准手段。

实测就发现了异常,在新改造的机器上,电压卡不出值,查看图谱发现,电压卡是有双峰的,在标准机上正常。

分析可知,带宽可以简单认为是f=1 /(2πRC),我们将电阻调小16倍,补偿电容没变,因此带宽也提高了16倍。所以双峰是电压卡划线工艺导致边沿有毛刺,老机器带宽小,将毛刺都平滑掉了,新机器带宽高,能够检测出这个边沿毛刺。

此外,如果是2M的电阻,补偿电容一般也就取几十pF,老机器是10nF的补偿电容,这个容值非常大,咨询了多位老员工,似乎是因为实测发现电容取大后,CV会非常好,因此选了个比较大的电容。

图 5双峰问题

为了保证带宽一致,电阻缩小了16倍,对应的,电容就需要放大16倍,由于160nF不是标称电容,就取了100nF,实测波形接近,但仍有一些差异(带宽没有完全一致)。

问题3. 线性度不一致

由于电压卡暂未推广,所以后续的测试还是采用传统的滴试剂条,和标准机对比,并严格控制测试时间,基本上排除了试剂的衍变性对测值的影响。

测试结果见下表,实测发现线性度较差,即使采用y=Kx+B的方式也没法校准回去。

图 7测试数据

尝试调整了电容值、PD传感器、更换了一颗参数更优的运放(AD8605比AD8601参数更优)等手段,都搞不定。

既然实测没法解决,那就先理论分析下。

电路输出V =(I有效-I暗-Ib)*R + Vos; 使用LTspice仿真,反推可得 Ib=1.8 pA,Vos = 213.5 uV;和规格书也符合

图 8AD8601参数

光源和PD固定,试剂条运动,因此采集到的是一个峰。算法上是使用峰顶减去峰底,得到测量有效值。即V顶-V底= I有效 * R。这种减法也能够去掉底噪,理论上很完美。

由于电机是匀速运动,所以峰的宽度是固定的(实测约为100ms)。荧光强度对应峰的高度。猜测峰顶越高,边沿就越陡峭,频率就越高。这样低浓度试剂条和高浓度试剂条的衰减就是不一样的,一旦改变电阻,就没法保证一致。但该猜测是错误的,用仿真软件对波形进行FFT分析,频率分量是一样的,因此衰减也应该是一样的。

图9 测试数据

低值20code,对应PD电流约为0.5nA。设置仿真电流为0.5-1000nA,分别对以下5组参数仿真,测试结果见如下表。均可通过乘一个系数校准回去。

图 10仿真波形

图 11仿真数据

最终还是怀疑运放自身线性度有问题:以测值50的试剂条为例,在原机器上1LSB=38.15uV,对应的实际电压值为50*38.15uV=1907uV;新改造的机器1LSB=2.39uV,电压值为50*2.39uV= 119.5uV。可以发现,跨阻调小后,输出电压特别低,接近GND。虽然AD8601是一颗“rail to rail”运放,查阅资料可知,这类运放具备输出接近电源轨的能力,但不保证线性度。网上许多分享文章都提醒,建议输入输出远离电源轨。而我们这个方案就是需要保证运放输出低值和高值的线性度是一致的。

下表是AD8601单电源5V供电下的输出参数,写明最低输出是15mV,是否也就意味着15mV以下的线性度是得不到保障的?标准机对低值的测量本来就是不准确的?

图 12AD8601输出特征参数

可以使用一台标准皮安电流源,输出不同大小的微弱电流信号,就可以直接证明这个问题,还可以避免光源、光路、传感器等误差影响,但可惜没有,因此需要换个方式。检查电路发现,运放供电是5V的,ADC的基准电压是2.5V,就说明运放输出2.5V-5V这个区间并未使用,查阅手册可知运放供电是2.7-5.5V,所以尝试改为±2.5V供电。同时,为了保证带宽一致,参数选择200K+100nF

测试数据如下表,使用y=Kx+B可以校准回来,但仔细分析数据可以发现,线性度还是轻微扭曲的,部分误差已接近极限

图 13测试数据

按照0.3的台间差目前最大量程约为20W,距离25W还缺一点。下一个标称电容是220nF,为了保证带宽一致,对应是91K的电阻,但考虑到200K电阻下测试已经有些失真,因此就不再修改了。信号电路部分已经到极限,建议优化光路,保证台间差大于0.4即可。

另外,实测发现试剂条的底噪可能也是影响低值差的因素之一,比如,层析后白底有残留,导致本底不平,可能造成寻峰算法误判(电压卡和湿式卡的本底有差异)。

如果试剂条支持测试两次,也可以考虑用模拟开关切换跨阻,但目前似乎不支持,只有一次扫描机会。

来源:有趣的科技君

相关推荐