廖 平,鲁晓亮
(中南大学高性能复杂制造国家重点实验室,湖南长沙 410083)
重金属及其化合物造成的环境污染已经危害到了人体健康,并导致环境质量严重恶化。目前检测重金属的方法有紫外可分光光度法、原子吸收法、原子荧光法、电感耦合等离子体法、X荧光光谱、电化学分析法等,电化学分析以其操作方便、仪器简单、易于自动化、分析速度快、选择性好、灵敏度高等优点已经成为国内外研究的热点[1]。
电化学分析检测重金属的方法主要包括极谱法、伏安法和离子选择性电极法。其中伏安法是基于研究电解过程中电流和电位变化为基础的分析方法。通过设计电压扫描及恒电位模块、I/V模块、差动放大滤波模块和高精度A/D转换等,采用STM32较强的信号处理能力在同一硬件上用不同算法实现循环伏安法(CV)、方波伏安法(SWV)、电流时间曲线、微分脉冲伏安法等4种检测方法。测试表明,该电化学传感器满足设计要求,具有良好检测效果。
E=Ei-vt
(1)
式中:t为时间;E为t时的电势;Ei为初始电势;v为电压扫描速率。
初始电势Ei选择在相对于形式电势E′足够正的电势下,在Ei下没有电化学反应发生。对于可逆电极体系,传荷过程的平衡基本未受到破坏,Nernst方程仍然适用。
(2)
将式(1)代入(2)后,可改写为
(3)
式中:CO(0,t)、CR(0,t)为反应物、产物粒子表面浓度;E′为形式电势;n为得失电子数;F为法拉第常数;T为绝对温度,K;R为气体常数,8.314 3 J/(K·mol)。
式(3)中解扩散方程的第二个边界条件。令
则式(3)进一步改写为
(4)
根据简单电极反应中反应物、产物粒子表面浓度函数的象函数的通式(5)和式(6):
(5)
(6)
应用卷积定理,对式(5)和式(6)进行Laplace逆变换,得到
(7)
(8)
将式(7)、式(8)代入式(4)中,整理后可得到
(9)
式(9)是一个积分方程,其解就是电流函数i(t),即电流-时间关系曲线;由于电势与时间成线性关系,故可转化成电流-电势关系曲线。但不能解出精确的解析解,而必须采用数值方法,解出其数值解,即在许多电势下计算出其相应的电流值,然后将数值列成表或绘制成曲线[3]。
经典三电极体系由工作电极(WE)、对电极(CE)、参比电极(RE)组成,在电化学测试中始终以工作电极(WE)为研究电极。本设计中的三电极体系元件采用SPEnsor丝网印刷电极CL10,结构如图1所示。基底为标准的PET,工作电极WE(圆形区域,直径3 mm)和对电极CE材料为碳,参比电极为Ag/AgCl,导电层为Ag。
图1 丝网印刷电极CL10结构图
该电极的优势是:可抛弃式,可任意修饰,可大量使用,测试样品量少,低价位,三电极(W.C.R)整合。
该电化学传感器的总体结构主要有电压扫描模块、恒电位模块、I/V转换模块、差动放大和滤波模块、高精度A/D转换模块和电源及通讯模块等组成,如图2所示。
图2 系统总体结构图
恒电位电路原理示意图如图3所示,利用反馈原理,由运算放大器(OP07C)构成。恒电位电路是用来控制WE上所加的电势,同时测量电极上通过的电流。由图3得到:U(t)=φw-φref,式中φw和φref分别是WE和RE上的电势。
图3 恒电位电路原理示意图
恒电位模块输入信号为电压量,所以将电化学传感器的反应电流转换为电压进行测量。采用电流反馈法实现I/V转换的电路设计,I/V转换原理如图3所示。运算放大器采用OP07C,理想情况下
UO=iRi
式中:i为输入电流;UO为转换电压。
恒电位模块的输入电压范围有限,不同实验环境及检测方法会使反应电流发生变化,不同反馈电阻对应电流的测量范围也有所不同[4]。通过采用多通道数字控制模拟电子开关,使电化学传感器具有不同的量程。该电路采用了单8通道数字控制模拟电子开关CD4051,设置4种不同增益电阻档,分别为3、5、50、100 kΩ。
为了实现恒电位电路控制电极电位为指定值,以达到恒电位极化的目的,且使得给定电压低速扫描时电压高精度、线性好及降低设计成本,设计了一种简单的电压扫描电路,如图4所示。
图4 电压扫描模块
该电压扫描模块以STM32位主控芯片,通过单片机I/O口模拟SPI通信接口来控制16位数模转换芯片DAC8831,DAC8831根据预先输入的D/A控制字将数字信号转换成模拟电压,借助外部运放实现双极性电压输出。输出电压范围为-2.5~+2.5 V,DAC数字输入量与模拟输出值的关系为
DATA16=32768×(1+V/Vref)
(10)
式中:DATA16为数字输入量;V为模拟输出电压;Vref为参考电压,2.5 V。
双极性输出编码表如表1所示。
表1 双极性输出编码表
采用完整的微功耗仪表放大器AD627设计差动放大模块,如图5所示。与微功耗模块分立设计方案相比,AD627具有更好的交流与直流性能,工作时的最大功耗仅为85 μA,仅需一个外部电阻RG即可设置增益。由图5可得:
(11)
式中:RG=100 kΩ,VREF=1.25 V,代入可得:
(12)
故,该方案的增益为7。
图5 差动放大与滤波模块
滤波模块采用有源低通滤波器,为了使滤波效果更好,采用二阶低通滤波器,由图5可知,滤波模块是目前使用较多的二阶压控电压源LPF电路。经推导,该滤波电路的频率特性为
(13)
当f>>fo时,幅频特性曲线比一阶低通滤波器的衰减斜率大1倍。说明,这种二阶低通滤波器的滤波效果比一阶低通滤波器好得多[5]。
工作电极(WE)采集的反应信号通过I/V转换、差动放大和滤波后,对采集的模拟电压信号进行A/D转换。采用高精度芯片ADS1246组成外接高精度A/D电路。
ADS1246是一款24位单通道A/D转换器件,最高采样频率可达2 kHz。ADS1246采用SPI通讯,其所有通讯引脚(SCK/DIN/DOUT)都在CS脚为低电平的时候有效。
为了使电化学传感器与便携式移动终端的配合使用,从而达到广范围使用和携带方便的设计效果,本次设计采用STM32芯片自带的USB功能,实现上位机和电化学传感器的数据通讯。USB只要由USB_D-和USB_D+两根线差分传输,USB_EN低电平使能选通USB虚拟串口通讯。
STM32F103的MCU自带USB从控制器,符合USB规范的通信连接;上位机和电化学传感器的微控制器之间的数据传输是通过共享专用的数据缓冲区来完成的,该数据缓冲区能被USB外设直接访问。USB模块同上位机主机通信,根据USB规范实现令牌分组的检测、数据发送/接收的处理及握手分组的处理[6]。
本系统软件采用模块化的设计方法。主要包括主程序设计、扫描电压生成程序设计、4种不同检测方法算法设计、A/D转换程序及串口通讯数据处理程序设计等。
系统上电后,电化学传感器的微处理器进行初始化配置工作。在系统初始化后,等上位机下达开始指令,通过编辑不同电化学检测方法的通讯协议,可以在指令中设置相应的电化学检测方法、扫描电压的初始电位、扫描速度、增益等参数,开始电化学传感器工作。主程序工作流程如图6所示。
图6 主程序流程图
上位机输入指令后,通过调用usbd_cdc_if.c文件中的Main_loop()函数检查FIFI缓冲区是否有数据。如果数据更新,函数返回1,即标志位flagtx=1,通过判定指令的第4个字节(命令字)USB_data[3]的值选择电化学检测方法,如表2所示。
循环伏安法(CV)、方波伏安法(SWV)、电流时间曲线、微分脉冲伏安法这4种检测方法均是在同一硬件电路上实现,4种方法的主要区别在于施加于三电极体系的扫描电压不同。本章节将对循环伏安法的实现进行详细的描述,其他检测方法不再一一列举说明。
循环伏安法即控制研究电极的电势以速率v从初始电位Ei开始向电势负方向扫描,到时间t=λ(相应电位为低电位Eλ)时电势改变扫描方向,以相同的速率回扫至高电位Eh,然后电势再次换向,反复扫描,即采用的电势控制信号为连续三角波信号。记录的i-E曲线,即为循环伏安曲线[7]。
表2 命令字所对应的检测方法及函数
通信协议以数据包的方式进行组包、传输与解析[8]。循环伏安法的通讯协议如表3、表4所示。
表3 上位机发送给电化学传感器的通信协议
表4 电化学传感器向上位机发送的通信协议
其中增益为I/V转换模块中,CD4051控制的4种不同增益电阻档,如表5所示。
表5 增益电阻档
数据校验为1个字节,校验方式为累加和校验,即将整个数据包,除了校验字节本身外的所有字节相加,取最低8位作为校验数据。令初始电位Ei=600 mV、高电位Eh=1 000 mV、低电位Eλ= -500 mV、扫描速度v=100 mV/s、扫描段数为2、扫描步长为20 mV、增益为1,由式(10)计算,则上位机发送的数据共18字节如下:
AA 55 10 01 9E B8 B3 33 66 66 05 1E 00 02 01 06 00 01 36。
由上位机发送的数据可得理论扫描电压E(t),如图7所示。
图7 循环伏安法扫描电压E(t)
循环伏安法实现的程序流程图如图8所示。
通过2个循环体分别完成正向和反向扫描2个过程。USB虚拟串口回传的数据为11字节数据,各个字节定义如表4所示。
图8 循环伏安法程序流程图
A/D转换中采用数据单次读取指令,将转换后的数据存储于数组Cmd[5],则发送至上位机的3字节数据DATA24= ((uint32) Cmd[0])<<16)+ ((uint32) Cmd[1])<<8)+((uint32)Cmd[2]);检测的输出电压为:V_out=2.5·DATA24/(0x1000000);反应电流的值为:I_in=a·V_out/k(a为标定值,k为增益电阻值)。根据反应电流I_in与扫描电压E(t)即可得循环伏安曲线。
通过对电化学电解池实验环境的有效模拟,进一步对该设计的硬件电路进行实验验证,同时对循环伏安法的算法设计进行理论验证。
将电化学电解池看成一个阻抗网络如图9所示,其中Z1为包括部分溶液的电阻以及CE的界面阻抗,Z2为另一部分溶液电阻以及WE界面阻抗,使用运算放大器控制电流流经电极,使WE和CE之间的电位差等于指令信号电压Ui=UCE-UWE。对于恒电位模块,要求其能在短时间内对大量被测物电解过程执行其功能。
图9 电解池阻抗网络模拟
上位机通过串口助手发送数据AA 55 10 01 9E B8 B3 33 66 66 05 1E 00 02 01 06 00 01 36,通过对USB虚拟串口回传数据的扫描电压分析作图如图10所示,通过与理论曲线比较可知扫描电压具有非常好的线性度,扫描电压模块具有较高的D/A转换精度。
图10 正反向扫描电压散列图
通过分析USB虚拟串口回传数据中的反应电压部分,作出V_out-V_scan散列图如图11所示,由图11可知在阻抗网络模拟电解池的情况下,电极反应电压V_out和扫描电压V_scan之间保持着良好的线性关系,所以符合阻抗网络模拟电解池的实验情况。
图11 V_out-V_scan电压散列图
采用CHI760C Electrochemical Workstation模拟电化学电解池实验条件,验证循环伏安法见图12。其中电极化学反应为O+ne-↔R,设置电化学电子转移动力学参数,标准非均相速率常数ko=0.5,标准氧化还原电位Eo=0.5,电荷转移系数a=0.5;溶液中O的初始浓度为1,R的初始浓度为0,扩散系数均为1.0×10-5,温度为25 ℃。
由图12可得到循环伏安曲线的峰电位Ep=0.47 V、峰电流ip=230.3 mA。电解池中不同重金属离子的浓度与电化学传感器电流响应成正比,对应不同的峰电位及峰电流,所以根据样品液和标准液的电流值,可通过标准液浓度算出样品液的浓度。
图12 循环伏安法模拟仿真图像
通过模拟实验环境,分别对该设计的硬件电路和循环伏安法进行实验及理论验证,基本验证该设计具有一定的可行性。
本文提出了一种基于STM32的重金属检测的电化学传感器的设计方案,利用模块化设计思路对不同模块进行合理设计,着重详细阐述了循环伏安法的算法设计与实验验证。经过理论分析与仿真实验测试,证明该设计能够满足重金属的检测目的与效果,具有一定的实用性价值。