李 路,齊 同,郜晩蕾,王曉冬,賈春平,趙建龍
(1.中國科學院上海微系統與信息技術研究所傳感技術聯合國家重點實驗室,上海200050;2.中國科學院大學北京100049)
微流控芯片使用微機電加工技術在幾平方厘米的基片上集成微壩、微閥、微孔膜、微過濾管道等微結構,在藥物篩選、細胞檢測等方面有著廣泛的應用[1]。其中,微流控芯片中微流體驅動技術對實驗結果起著關鍵作用,而微流體的驅動主要采用精密氣壓控制系統。
目前氣壓控制系統分為定容積控制和變容積控制[2-5]。采用定容積氣壓控制系統需要同時采用正壓源和負壓源控制被控容腔內的壓力,使控制系統過于復雜,難以實際應用。而變容積系統具有結構簡單,適用性強等特點,并且在做定點壓力控制時能夠實現比較好的精度和穩定性。國內外學者基于變容積氣壓控制系統進行了一些研究。例如文獻[6]提出一種基于PID算法的變容積控制方案,但由于系統的非線性,采用普通的PID時系統超調大并且調節時間長。目前高精度的氣壓控制系統往往存在體積大、響應時間長等問題,而針對微流控芯片的進樣及檢測過程,市場上缺乏相應的自動檢測系統,因此本文提出一種新型的基于專家PID控制和卡爾曼濾波的恒壓控制系統,并搭建自動化平臺,實現微流控芯片的自動進樣。
本研究設計的恒壓進樣系統示意圖如圖1所示。系統主要由柱塞泵、步進電機、電磁閥、壓力檢測單元、清洗裝置、進樣針和微流控芯片等組成。步進電機轉動的角度與脈沖數呈正比、具有很好的定位精度,并且具有運動的可重復性高、沒有累計誤差等優點。本系統的工作原理為:首先進樣針和微流控芯片入口貼緊實現密封,柱塞泵迅速壓縮空氣使微流控芯片的進樣口和出樣口產生壓力差。此時應用專家PID控制和卡爾曼濾波算法對壓力差進行閉環控制,維持壓力差恒定,從而實現微流控芯片的恒壓進樣。在整個系統中,試劑從進樣針流入微流控芯片使氣缸內部壓力減小,活塞向前運動使氣缸內部壓力增大,當系統內部壓力恒定時,進樣針內部試劑減少的體積等于柱塞泵活塞向前移動的體積。因此在恒定壓力下,通過步進電機控制活塞的位置實現精確控制體積。

圖1 恒壓進樣系統原理示意圖
為了驗證方案的可行性,首先對整個系統進行建模和仿真。在微流控芯片中,一般認為由于流體的粘性作用力超過慣性作用力使得微流控芯片通道中流體的運動處于層流狀態,判斷流體是否處于層流狀態可以通過雷諾數判斷[7],雷諾數Re定義為:

其中,ρ表示液體的密度,v表示流體的速度,μ是流體的粘度,D表示管道的水力直徑,定義為4倍的浸潤面積除以浸潤周長。本實驗中使用的微流控芯片管道的水力直徑為18.46 um,去離子水的密度為1.0×103kg/m3,在22℃時水的粘度約為9.6×10-4Pa·s,根據實驗優化的流速為10 mL/h[8],計算得雷諾數為44.5,一般認為雷諾數小于2000時,流體呈層流狀態,此時微流控管道中流體的流動滿足Poiseuille定律,則流速與壓力差呈正比[9]。通過實際測量得到微流控芯片的流速與壓力差之間的關系,擬合數據得到微流控芯片的模型為:

其中,p表示微流控芯片進樣口和出樣口之間的壓力差,v表示試劑進入到微流控芯片的速度。
柱塞泵中的氣體可以認為基本符合理想氣體狀態方程:

式中,n表示物質的量,V表示密閉容器的體積,P表示密閉容器內的壓強,R表示理想氣體常數。T為密閉容器內的溫度。在恒定壓力進樣過程中,溫度可以認為是恒定的。因此密閉容器內部的壓力與體積成反比。則系統在t時刻的平衡方程為:

其中,P0為密閉容器內初始壓力,V0為初始體積,P(t)為t時刻密閉容器內的壓力,v1(t)為活塞移動的速度,v2(t)為試劑從微流控芯片流出的速度。
對式(4)整理得:

該式描述了密閉容器內壓力與活塞移動的速度、試劑從微流控芯片流出的速度之間的關系。由于整個系統是一個時滯系統,采用常規PID控制算法時,容易引起較大的超調量,使系統不穩定,因此本文采用基于專家PID控制和卡爾曼濾波算法實現密閉容器內的壓力恒定,并通過MATLAB建模仿真對算法的參數進行優化,然后通過實驗驗證并與常規PID控制算法的結果對比。
要實現恒壓過程首先必須獲得可靠的氣壓數據。由氣體壓力傳感器直接測量得到的數據伴隨有比較大的測量噪聲。因此,首先通過Kalman濾波算法獲得可靠的氣體壓力數據。
Kalman濾波算法的計算方式是采用時域上的遞推估計法,計算過程包含預測和更新兩個階段,預測階段根據前一時刻的預測值估算現在的狀態;更新階段是通過前一時刻的預測值和現在時刻的觀測值確定當前時刻的狀態估值[10-12]。
系統狀態方程為:

其中:A——狀態轉移矩陣,由于系統的氣體壓力不隨時間變化,取A=1
B——控制矩陣,系統處于恒壓狀態,可以認為沒有控制輸入,所以U=0
W——過程激勵噪聲,其協方差矩陣為Q:
系統的測量方程為:

其中:C——測量矩陣,包含噪聲的觀測值是狀態變量的直接體現,所以C=1。
V——利用氣體壓力傳感器測量氣壓時的測量噪聲,其協方差矩陣為R。
假設系統的初始氣壓為p0,估計值的方差為P0,則:
時間更新方程為:

其中,Xk-1為k-1時刻氣壓的預測值,為k時刻的氣壓估計值。Pk-1為k-1時刻氣壓的后驗估計的協方差。為k時刻氣壓的先驗估計。通過上述兩個公式,將氣壓的狀態估計和協方差估計從k-1時刻向前推算到k時刻。
狀態更新方程為:

其中,測量更新方程首先計算卡爾曼增益Kk,然后根據氣壓的測量值Zk計算氣壓的后驗估計。最后根據公式計算氣壓后驗估計的后驗協方差。
經過MATLAB整定后卡爾曼濾波器的參數q=0.001,r=0.05,p=3。為了驗證設計的卡爾曼濾波器的濾波效果,在搭建好的恒壓控制系統上通過壓力傳感器采集一組數據,并將濾波前后的數據進行對比。圖2為卡爾曼濾波前后對比圖,濾波前氣壓的標準差為2.15,濾波后標準差為1.52,濾波后氣壓值比濾波前更穩定。

圖2 卡爾曼濾波前后對比圖
在控制系統中,最常用的控制規律是PID控制。積分分離式PID控制算法如下:

其中,Kp為比例系數,Ki為積分系數,Kd為微分系數,T為采樣時間,β為積分項的開關系數,e(k)為設定值與實際值的差。
針對具有滯后性、被控對象參數不確定、非線性的系統,用常規的PID控制會有比較大的超調量或者調節時間長等問題。專家PID控制是在常規PID控制的基礎上根據專家及有經驗的操作人員的實際經驗,針對具有滯后性、時變、非線性系統等提出的控制方法[13-15]。專家PID控制利用專家系統知識庫中的規則推理在線調整PID的參數,既有Bang-Bang控制的快速性,又具有一定的穩定性和抗干擾能力。控制原理圖如圖3所示。

圖3 專家PID控制系統原理圖
專家控制器主要包括控制規則集、知識庫、推理機和特征識別等[16]。知識庫主要包括和壓力調節相關的各種數據和經驗。控制規則集是專家PID控制器的核心內容,里面主要包括根據專家經驗建立的控制氣壓的規則。推理機主要是根據實時壓力變化規律從知識庫和控制規則集中選擇匹配的規則推理出實際的輸出值。
根據現場控制壓力的經驗,對密閉容器內壓力的變化規律進行總結,得到最佳的專家控制規則集。其主要是根據氣壓變化的誤差和誤差變化乘積來調整PID的參數。令e(k)、e(k-1)和e(k-2)分別表示當前時刻、前一時刻和前兩個時刻的氣壓誤差值。表示當前時刻的誤差變化率表示前一時刻的誤差變化率。則控制規則為:
1)當|e(k)|>M1時,說明誤差很大,此時采用開環控制,按照最大或最小輸出,使誤差迅速減小。
2)當e(k)·?e(k)>0 且 |e(k)|>M2時,說明誤差較大,且實際氣壓變化偏離目標值,令β等于0,Kp增大,此時相當于PD控制,使誤差快速減小并防止積分飽和。
3)當e(k)·?e(k)>0 且 |e(k)|≤M2時,說明誤差較小,且實際氣壓變化朝向目標值,令β等于1,Kp不變,使氣壓逐步穩定到目標值。
4) 當e(k)·?e(k)<0 且 ?e(k)·?e(k-1)>0 或,說明實際氣壓向目標值變化或者沒有誤差。此時令β等于1,Kp不變。
5)當e(k)·?e(k)<0,?e(k)·?e(k-1)<0且|e(k)|>M2,說明誤差較大且處于極值狀態。此時令β等于0,Kp增大,應用較強的控制作用。
6)當e(k)·?e(k)<0,?e(k)·?e(k-1)<0且|e(k)|≤M2,說明誤差較小且處于極值狀態。此時令β等于1,Kp減小。
7)當|e(k)|≤M3時,說明誤差很小,此時應用普通的PID控制,使氣壓穩定在目標值。
以上各式中,M1、M2和M3為設置的誤差界限,M1>M2>M3>0。上述的控制規則集就是通過對誤差進行特征識別,然后通過專家系統優化PID控制器的參數,實現最優的輸出,使控制系統能夠針對時變、非線性、系統參數易發生變化的受控對象給出有效的控制策略。
為了驗證專家PID控制器和卡爾曼濾波算法實現恒壓的可行性,本文使用MATLAB的simulink仿真工具對其進行仿真。并根據仿真得到的階躍響應曲線來判斷系統的穩定性。實驗中,使微流控芯片的進樣口和出樣口的壓力差突然增加2000Pa,觀察系統的階躍響應。圖4為構建的simulink仿真圖。

圖4 simulink仿真原理圖
仿真結果如圖5所示,可以看到基于專家PID控制和卡爾曼濾波的控制方案無超調量,響應迅速,在10 s左右即完成調整。

圖5 simulink仿真結果

圖6 微流控芯片自動檢測系統

圖7 實際測量階躍響應曲線
根據恒壓進樣系統的原理,將柱塞泵、壓力傳感器、微流控芯片、電磁閥及其他連接部件組合起來,圖6為搭建好的微流控芯片自動檢測系統。硬件電路采用mega2560作為主控制器,壓力傳感器型號為帶有24位?-Σ型ADC的MS5803-05BA。主控制器采集到壓力數據后通過RS232串口將數據發送到上位機保存數據。通過MATLAB仿真和實測修正專家PID的初始值為kp=0.25,ki=0.05,kd=0.02。圖7為實際測量的階躍響應曲線。可以得出由于系統的非線性和遲滯,采用普通PID控制器的超調量為19.2%,響應時間大概為20 s。而專家PID系統無超調,響應時間大概為10 s,響應時間提高了50%。可見專家PID控制系統比普通的PID控制器具有更好的控制效果。穩定后的壓力精度為±30 Pa,文獻中[6]實現的壓力控制精度為±150 Pa,可見本實驗方案能夠實現更好的效果。專家PID系統通過辨識被控對象的動態特性,結合專家經驗,實時調整參數,使控制器始終工作在最佳值上。
為了驗證進樣系統控制進樣試劑體積的準確性,用精度為0.001 g的分析天平(MS105DU,METTLER TOLEDO)稱量從微流控芯片出樣口流出的水的質量,根據水的密度計算出體積。實驗結果如圖8所示,壓力條件為11400 Pa,溫度為室溫。在進樣體積從20 μL到400 μL范圍內,體積控制誤差在±10μL以內,決定系數為0.999,說明該系統能夠精確控制進樣試劑的體積。
為了解決微流控芯片進樣時的精確壓力控制和微小體積控制問題,實現微流控芯片的自動化進樣,本論文提出了一種基于專家PID控制和卡爾曼濾波的恒壓進樣系統,經過MATLAB仿真和實際測試表明,濾波后壓力精度控制在±30 Pa以內,響應時間為10 s左右,進樣體積精度為±10 μL,相對于普通的PID控制,專家PID控制具有更好的動態響應。本實驗方法便于在嵌入式微處理器中實現,具有易于集成、小型化等優點,為微流控芯片的自動化進樣提供了參考。

圖8 目標體積與實際測量體積關系圖