海水营养盐微弱信号检测技术研究
2019-12-25刘杰刘岩曹煊马然张述伟郭翠莲
刘杰,刘岩,曹煊,马然,张述伟,郭翠莲
(齐鲁工业大学(山东省科学院)山东省科学院海洋仪器仪表研究所 山东省海洋环境监测技术重点实验室,山东 青岛 266001)
目前,海水营养盐传感器的工作原理主要是依据分光光度法,利用光电转换器件硅光电二极管,根据光电转换后的微弱电信号计算出海水的吸光度,进而根据线性关系求取营养盐5项参数的浓度[1]。由于海洋环境的复杂性,如何在高强度噪声信号中检测出有用的微弱信号已经成为影响营养盐传感器检测精度的关键所在。大部分营养盐信号检测电路一般采用分离的模拟器件对微弱信号进行前置放大和简单的RC滤波,软件算法主要在MCU中采用一阶低通滤波算法或简单滑动平均滤波算法进行进一步处理[2]。现有的营养盐信号检测电路的主控芯片一般不具备浮点运算和高速数字信号处理的功能,导致滤波算法的逼近速度较慢,误差变化较大,对系统信噪比改善程度十分有限,进而从根本上影响了营养盐传感器数据的准确度和精密度。为此,本文提出了一种新的海水营养盐微弱信号检测技术方案。主控芯片采用功能强大的高级单片机STM32F401,可以进行自适应实时加速和高速的数字信号处理。硬件采用模拟正交锁相放大电路对微弱电压信号做前置处理,软件算法采用变步长最小均方(least mean square, LMS)自适应滤波算法并在STM32F401平台中实现。长期的仿真和实验数据表明,本文提出的海水营养盐微弱信号检测技术方案可以有效提高被检测信号的信噪比。
1 模拟锁相放大电路设计
模拟锁相放大电路的主控芯片采用行业流行的32位微处理器STM32F401,其工作频率可达84 MHz。该处理器包含了DSP的IP core、浮点运算单元和自适应实时加速器,可以快速实现本文提出的变步长LMS自适应滤波算法。本文设计的模拟锁相放大电路主要包括三部分:前置可调增益放大电路、相敏检波电路及二阶低通滤波电路。电路原理如图1所示。光电二极管的输出电压信号通过可调增益放大电路对进行放大;相敏检波电路进行信号的乘法运算,提取有用的微弱信号,输出直流信号和倍频信号;二阶低通滤波电路则用于滤除高频信号,剩下直流信号输出给24位ADC芯片AD7791进行模数转换。
图1 模拟锁相放大电路原理图
可调增益放大电路主要对微弱信号进行可调增益放大,一是将信号放大到足够大,二是防止信号过大使得电路发生过载现象[5]。可增益放大电路核心运放采用ADI公司的AD797,该运放供电电压范围为±5 V到±15 V,其小信号带宽能够达到110 MHz,大信号带宽能够达到80 MHz[6]。
模拟相敏检波主要使用乘法电路完成两个信号的乘法运算,两个频率相同的信号经过乘法运算后,会输出直流信号和倍频信号。而其他不相同频率的信号经过乘法电路后得到的是高频信号,因此经过低通滤波后剩下的只是直流信号,有用的信号就包含在这个直流信号之中。乘法器芯片采用ADI公司的高速芯片AD835,该芯片的小信号带宽能够达到250 MHz,可以完成直流乘法、直流信号和交流信号的乘法以及交流信号和交流信号的乘法[7]。
二阶低通滤波电路主要是用来滤除高频信号,输出直流信号供ADC进行数据采集。本文选用AD8038搭建截止频率为50 Hz的二阶低通滤波器。该芯片是ADI公司的高带宽、低功耗的电压反馈性集成运放,供电电压范围为±3 V到±12 V[8]。
2 改进的变步长LMS自适应滤波算法
营养盐传感器进行光电检测后的微弱电压信号含有较多的高斯白噪声,且该微弱信号稳定无突变,所以采用LMS自适应滤波算法对该微弱信号做进一步处理并在STM32F401硬件平台中实现。LMS算法在自适应滤波算法领域应用广泛,是因为LMS算法复杂度较低、流程简单且易于在实时频谱分析仪上实现。但是传统的LMS算法也存在很大的弊端,就是收敛速度较低[9]。在有限的数据条件下,自适应滤波的速度越快,在最后的结果中收敛过程就越短,即噪声分量就越小,信号信噪比也就越高。但是要想提高收敛速度就必须提高步长μ,在信号处理领域内,越大的步长μ会导致更大的稳态误差,进而结果中包含更多的噪声。针对这一问题,本文采用变步长μ(n)替代固定步长μ。
变步长滤波的主要过程为:在保证收敛的前提下,以实时误差e(n)为依据对μ(n)进行实时调整,使μ(n)最符合当前条件的取值。即在实时误差e(n)比较大时,μ(n)也选取比较大以加快逼近速度;当实时误差e(n)比较小时,μ(n)就相应减小;当接近收敛时,为降低稳态误差,μ(n)也会随之选择比较小的值。对变步长μ(n)和误差e(n)的关系进行分析,本文提出了一种基于正弦函数的步长变换方式,其表达式如下:
(1)
在正弦函数的基础上,增加了两个变参数α(n),β(n),能够对e(n)的变化进行更好的适应,通过对α(n),β(n)进行合理的设计达到结果收敛。本文选择以e(n)与e(n-1)的比值作为α(n)的取值,即:
(2)
β(n)的取值会直接影响到自适应滤波的收敛稳定性,所以应减小β(n)的变化程度即降低e(n)对β(n)的影响程度,β(n)的迭代公式即:
β(n)=(1-λ)β(n-1)+λΔe(n),
(3)
其中,0<λ<1,当Δe(n)趋向于0时即误差趋向于稳定收敛时,β(n)=(1-λ)β(n-1)。另一方面为降低e(n)对β(n)的影响程度,λ最好取值接近于0,这样就保证了在Δe(n)变化较大时β(n)的幅度变化较小,既可以保证β(n)在收敛的取值范围内,又提高了稳定性。
在Matlab软件中,以y(t)=sin (2πt/100)为原始信号,滤波器阶数设定为10,采样点数为500,仿真波形图如图2所示。第一、二行波形图分别为原始信号和含噪信号,第三行波形图为变步长LMS自适应滤波算法的输出信号,λ取值0.03。第四行信号为传统定步长LMS自适应滤波算法的输出信号。结果表明,变步长LMS算法在除噪和信号平滑性等方面具有显著的优越性。
为更好地说明变步长LMS自适应滤波算法的优越性,将本文的变步长LMS算法和传统定步长LMS算法的误差变化进行对比,如图3所示。结果表明,变步长LMS自适应滤波算法在逼近速度、收敛时间和误差变化等方面相较于传统定步长LMS滤波算法有明显的改善,非常适用于微弱信号检测提取场合。
信噪比改善是衡量微弱信号检测系统的一项重要性能指标,本文提出的微弱信号检测技术方案输入输出信噪比关系曲线如图4所示。结果表明,该微弱信号检测系统可以有效提高被检测微弱信号的信噪比。
图2 变步长LMS自适应滤波算法仿真波形图
图3 算法误差变化对比波形图
图4 输入输出信噪比关系曲线
3 实验数据分析
采用本文提出的微弱信号检测方法将3种已知营养盐浓度的海水样品检测3次并取平均值,依据公式δ=Δ/L×100%计算相对误差以验证传感器数据的准确度,然后根据相对误差计算每项数据的相对标准偏差以验证仪器的精密度[10],结果见表1。由表1的数据分析可知,磷酸盐、铵盐和亚硝酸盐的相对误差小于±5%,硅酸盐和硝酸盐的相对误差小于±6%,硅酸盐、磷酸盐、铵盐和亚硝酸盐的相对标准偏差小于3%,硝酸盐的相对标准偏差小于5%。实验数据的准确度和精密度完全符合营养盐传感器实验室条件下的要求。
表1 实验数据准确度和精密度分析表
4 结论
本文对海水营养盐微弱信号检测技术在硬件电路和滤波算法方面提出了一种新的解决方案,能够快速、准确地检测营养盐传感器进行光电转换后的微弱电信号,有效克服了传统营养盐传感器测样数据准确度和精密度差等缺点。实验室仿真和分析结果表明,本文提出的技术方案适用于海水营养盐的实验室数据分析和浮标、台站等海上平台的长期原位监测,对于海洋生态环境要素的变化趋势可以做出更加精准的预测。但是,该方案也存在一些不足,比如模拟锁相放大电路中存在直流放大器,其工作特性随时间变化的不稳定性和由于温度变化引起的温度漂移带来的干扰较大。在今后的工作中,考虑采用基于现场可编程门阵列的频率可调数字锁相放大技术,以进一步提高营养盐微弱信号检测技术的准确性。