王亞洲,婁小平,劉 超
(光電測試技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京信息科技大學(xué),北京 100192)
流式細(xì)胞儀是通過對細(xì)胞懸濁液中單細(xì)胞進(jìn)行光學(xué)參數(shù)分析實(shí)現(xiàn)大量細(xì)胞分類及分選的科研及臨床檢測儀器[1-3]。
系統(tǒng)流動室的單層細(xì)胞流逐個被激光照射所產(chǎn)生的散射光和熒光信號經(jīng)光電轉(zhuǎn)換后表現(xiàn)為高斯型的脈沖信號,經(jīng)過濾波、放大,然后對脈沖信號的脈寬、峰值、面積3個特征值進(jìn)行提取并對其分析實(shí)現(xiàn)整個儀器功能[4-6]。由于采集的光信號強(qiáng)度很小,在信號傳輸過程中需對信號進(jìn)行放大來增大后級ADC的采樣動態(tài)范圍。而放大器存在輸入失調(diào)電壓和輸入失調(diào)電流,放大過程中會產(chǎn)生等效失調(diào)電壓,導(dǎo)致不同增益下的信號產(chǎn)生不同基線電壓,基線電壓的存在會影響后級ADC采樣的動態(tài)范圍,進(jìn)而會導(dǎo)致流式細(xì)胞儀的分析精度下降。
針對這一問題,傳統(tǒng)的解決方法是在A/D采樣芯片之前加入一級模擬基線恢復(fù)電路,如R.L.Chase等人設(shè)計(jì)的CDD電路以及S.Ohkawa與K.Husimi設(shè)計(jì)的增益可變的負(fù)反饋電路等[7-10]。這些方法利用電容及二極管的配合基本實(shí)現(xiàn)了基線信號的快速復(fù)位,但是器件的非理想性使其對信號產(chǎn)生的畸變不易分析,因此提出一種簡單容易分析的電路設(shè)計(jì)方案非常有必要。
本文提出一種模擬與數(shù)字結(jié)合的方法,以STM32為核心控制器,利用內(nèi)部ADC與DAC的轉(zhuǎn)換,可實(shí)現(xiàn)流式細(xì)胞儀要求的時間寬度4 μs,帶寬為1.3 MHz高斯信號的快速基線復(fù)位[11]。解決了傳統(tǒng)程控放大電路失調(diào)電壓難以控制的問題,可應(yīng)用于直接采樣型的脈沖采樣系統(tǒng),提高流式細(xì)胞儀檢測精度。
流式細(xì)胞儀信號產(chǎn)生基線電壓的主要原因是運(yùn)放閉環(huán)接入時,運(yùn)放本身的失調(diào)電壓、失調(diào)電流對信號產(chǎn)生影響,如果直接將經(jīng)運(yùn)放的信號采集會引入基線電壓,它的存在會減小后繼ADC芯片采樣動態(tài)范圍,降低儀器的分析精度。系統(tǒng)的放大電路圖如圖1所示。
圖1 原始放大電路
當(dāng)電路輸入端均接地時,運(yùn)放正負(fù)端電壓為U+、U-流入運(yùn)放正負(fù)端的電流為IB1、IB2,輸入失調(diào)電壓為VOS,將所有由輸入失調(diào)電壓和偏置電流誤差導(dǎo)致的總失調(diào)電壓折算至運(yùn)放的輸出端可得:
(1)
總失調(diào)電壓UN即為輸出端出現(xiàn)的基線電壓,其中系統(tǒng)增益GN=1+RF/R2,基線電壓大小與系統(tǒng)增益大小有密切關(guān)系,增益倍數(shù)越大所引起的總失調(diào)電壓越大,當(dāng)放大一個幅值為VO大小的電壓信號時系統(tǒng)信噪比如下:
(2)
由于總失調(diào)電壓的存在,系統(tǒng)的信噪比會受到影響,并且可由公式得出增益倍數(shù)越大,系統(tǒng)信噪比越低。
本系統(tǒng)的主要目的是消除總失調(diào)電壓對有效信號的影響,利用STM32內(nèi)部ADC和DAC相互配合工作,結(jié)合模擬電路將由總失調(diào)電壓引起的基線去除。系統(tǒng)框圖如圖2所示。
圖2 系統(tǒng)框圖
首先設(shè)定系統(tǒng)需要的增益,STM32通過I/O口控制數(shù)字開關(guān)1選擇輸入端接地通道,數(shù)字開關(guān)2打開STM32的ADC通道,采集此時系統(tǒng)在該增益下的基線電壓。采集完畢后將光電轉(zhuǎn)換的信號接入輸入端,信號經(jīng)程控放大電路完成放大后再經(jīng)后級程控衰減電路完成信號濾波和衰減,接著在差分運(yùn)放電路處,利用STM32的DAC輸出之前ADC采集的基線電壓,并與放大后的信號作差,最終輸出去除基線電壓后的高信噪比信號。
程控放大是本設(shè)計(jì)的關(guān)鍵部分,目前市場上已有集成的程控放大芯片,但是它們大多價格昂貴并且增益不可隨意調(diào)節(jié),本系統(tǒng)利用多路復(fù)用器結(jié)合各組不同大小的電阻來完成程控放大,成本較低并且可以自行選取電阻實(shí)現(xiàn)任意放大倍數(shù),設(shè)計(jì)的電路圖如圖3所示。
圖3 程控放大電路圖
程控放大主要完成對目標(biāo)信號的放大,失調(diào)電壓主要來源也是這個部分,本設(shè)計(jì)選用運(yùn)放芯片ADA4899來完成對信號的放大,該芯片具有低噪聲、低失真的特點(diǎn),單位增益帶寬為600 Mbit/s,可滿足本設(shè)計(jì)要求的帶寬。運(yùn)放電路為同相放大電路,電阻可自行搭配選取合適的放大倍數(shù),運(yùn)放前端通過多路選擇器ADG1408來實(shí)現(xiàn)4檔放大倍數(shù)的選擇,通過STM32控制按鍵使多路復(fù)用器實(shí)現(xiàn)不同通道的選通,進(jìn)而實(shí)現(xiàn)系統(tǒng)的程控放大。
利用多路復(fù)用器設(shè)計(jì)的程控放大僅能夠?qū)崿F(xiàn)有限檔位的增益放大,因此這里設(shè)計(jì)了程控乘法衰減電路與程控放大結(jié)合可實(shí)現(xiàn)增益±40 dB以內(nèi)任意倍數(shù)的放大或衰減,電路圖如圖4所示。
圖4 乘法器衰減電路圖
乘法衰減電路主要實(shí)現(xiàn)本設(shè)計(jì)中信號的衰減以及濾波,選用DAC芯片為AD5452,此款芯片線性度好,可支持12位D/A輸出,本設(shè)計(jì)采用SPI輸入,利用STM32向芯片3、4、5端口寫信號對其控制,將其接為乘法衰減器,即參考電壓端為信號的輸入端,此時信號輸入輸出關(guān)系表達(dá)式為
(3)
式中:D為DAC寫入的數(shù)字量,使用DAC輸出為12位;Vref作為輸入,以此實(shí)現(xiàn)乘法衰減的功能,衰減系數(shù)為0~1間的任意值。
此模塊與前端運(yùn)放結(jié)合可以程控實(shí)現(xiàn)±40 dB范圍內(nèi)的任意增益倍數(shù)。經(jīng)衰減后的信號通過數(shù)字單刀雙擲開關(guān)ADG1419接入后續(xù)電路,當(dāng)采集失調(diào)電壓時信號從B端接入STM32的ADC端口,采集完畢后信號從A端接入后續(xù)電路。
基線消除電路是本設(shè)計(jì)的核心部分,主要在此完成放大后帶有基線信號的處理,設(shè)計(jì)差分運(yùn)放電路實(shí)現(xiàn),2個輸入端輸入目標(biāo)信號和基線電壓信號,然后2個信號作差分運(yùn)算,消除基線電壓實(shí)現(xiàn)基線復(fù)位,電路圖如圖5所示。
圖5 基線恢復(fù)電路圖
前端STM32的ADC采集的系統(tǒng)失調(diào)電壓利用其自身的DAC通道輸出,配合運(yùn)放差分減法電路將失調(diào)電壓消除。STM32103RCT內(nèi)部自帶12位DAC,輸出范圍為0~3.3 V,按位精度可達(dá)0.8 mV,能夠顯著減小失調(diào)電壓值。
這里輸入與輸出關(guān)系式如下:
(4)
(5)
由于STM32內(nèi)部DAC輸出范圍在0~3.3 V,而基線電壓基本都為mV級信號,直接輸出可能會出現(xiàn)誤差,為了使DAC工作在較穩(wěn)定的輸出范圍內(nèi),將ADC采集的信號放大20倍以后再輸出,因此這里VDA_out取20倍衰減再作運(yùn)算。
本設(shè)計(jì)的核心控制器是STM32F103芯片,對芯片內(nèi)部進(jìn)行編程來實(shí)現(xiàn)對整個系統(tǒng)中各個數(shù)字芯片的控制,具體的軟件程序如圖6所示。
圖6 軟件流程圖
程序開始工作后進(jìn)入初始化等待,此時初始化按鍵、SPI、ADC、DAC等配置信息,然后檢測按鍵KEY1是否按下,若按下首先控制模擬開關(guān)打開基線電壓采集通道并打開SPI以及ADC使能端口,然后發(fā)送SPI數(shù)據(jù)并在ADC端口采集基線電壓存入寄存器,接著DAC調(diào)用該寄存器內(nèi)容輸出此時基線電壓,操作完成以后控制I/O口關(guān)閉基線電壓采集通道、打開數(shù)據(jù)通道,對此次按鍵計(jì)數(shù)完成該增益下的基線恢復(fù),之后初始化等待下次按鍵控制不同增益循環(huán)整個過程。
通過以上分析,設(shè)計(jì)原理圖并畫好PCB板,加工完畢后焊接器件進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)電路板如圖7所示。
圖7 實(shí)驗(yàn)電路板
在不同增益下所測量的基線電壓與信噪比及經(jīng)過電路恢復(fù)后的值如表1所示。隨著增益倍數(shù)的不斷增大,基線電壓恢復(fù)前的信噪比不斷減小,恢復(fù)后可發(fā)現(xiàn)當(dāng)系統(tǒng)增益較高時,信噪比不斷提高,系統(tǒng)可保證在增益為40 dB時基線浮動范圍在1.2 mV以內(nèi),此時信噪比可達(dá)70 dB以上。
表1 基線電壓恢復(fù)前后對比表
利用信號發(fā)生器模擬流式細(xì)胞儀信號,設(shè)定頻率為50 kHz,峰峰值為50 mV的高斯信號,增益系數(shù)定為50,流式細(xì)胞儀的高斯脈沖信號在未經(jīng)過基線復(fù)位前的信號如圖8所示。經(jīng)過基線復(fù)位后的圖形如圖9所示。
圖8 基線復(fù)位前信號圖
圖9 基線復(fù)位后信號圖
通過實(shí)驗(yàn)對比可明顯發(fā)現(xiàn),未進(jìn)行基線復(fù)位時信號會整體下移,這樣ADC采集信號時僅能采集到信號的部分信息,對信號的脈寬、峰值、面積均會造成一定損失,進(jìn)而會導(dǎo)致儀器分析精度下降,進(jìn)行基線復(fù)位后可明顯改進(jìn)這一問題。相較于傳統(tǒng)模擬基線恢復(fù)電路,由于未使用電容、二極管等器件,減少了器件非理想性引起的信號畸變,降低了難度,提高了信號精度。
本文設(shè)計(jì)了一種基于STM32的流式細(xì)胞儀基線自恢復(fù)控制系統(tǒng),利用STM32內(nèi)部的ADC與DAC結(jié)合模擬電路完成信號放大的失調(diào)自控制,與傳統(tǒng)方法相比,采用數(shù)字化的方法降低了模擬電路中基線去除及分析的難度。經(jīng)實(shí)驗(yàn)驗(yàn)證表明:高增益時系統(tǒng)信噪比優(yōu)秀,當(dāng)增益為40 dB時本系統(tǒng)的信噪比為72 dB,并可實(shí)現(xiàn)基線電壓在1.2 mV以內(nèi)的調(diào)控,有效減少了后繼信號處理的復(fù)雜程度。