李俊林 秦襄培 王洪嬌 陳林 袁小龍



摘要:本文提出了一種用于全自動核酸提取的步進電機驅動系統。不同于一般的步進電機驅動系統,本步進電機驅動系統在硬件方面通過步進電機控制模塊控制步進電機帶動移液泵上下移動,通過移液泵控制閥開關模塊控制閥門的開關并通過壓力檢測模塊監測移液泵里面液體的壓力;在軟件方面,以位置要求為導向的步進電機增量式PID控制算法優化了步進電機帶動移液泵上下移動的位置精度,并且該算法控制精度高,超調小,調節時間短。步進電機的加減速過程采用逼近于s形運動曲線的梯形運動曲線作為加減速運動曲線。通過軟硬件設計,步進電機帶動移液泵上下精確地移動,移液泵控制閥得到了比較好的開關,移液泵里面液體的壓力得到了良好的監測。
關鍵詞:步進電機驅動系統;增量式PID;移液泵
0 引言
全自動核酸提取工作站可完全替代手工操作,隨著生命科學領域的發展,有極大市場前景。全自動核酸提取工作站當前主要被國外廠商壟斷,諸如美國、瑞士、德國等國家在當前領域發展迅速,并在檢測自動化流水線方面有大的發展。反觀國內在這一領域發展遲緩,整體自動化程度偏低,裝備的落后,嚴重制約了國內生命科學領域的發展。國內核酸檢測相關儀器設備,基本只能完成核酸提取、擴增到檢測的部分過程,實現全自動的核酸檢測難度在于技術積累少。因此,全自動核酸提取工作站的開發具有必要性、迫切性。
全自動核酸提取工作站中的移液管需要進行往復運動。步進電機是用于全自動核酸提取移液管移動執行機構的重要驅動元件,通過預設步進電機的步長和步數來控制步進電機,使得移液管移動執行機構被步進電機驅動到達預設位置,但由于移液管移動執行機構和步進電機在長時間使用后,會出現一定的機械移位或形變,因此現有的核酸提取工作站存在高頻率使用后,步進電機無法準確驅動移液管移動執行機構到達預設位置。針對現有核酸提取工作站存在的不足,本文設計了一種用于全自動核酸提取的步進電機驅動系統。
1 總體設計
本系統不同于一般的步進電機驅動系統。集原創硬件設計與軟件設計于一身,結合全自動核酸提取實際應用需求并且采用了以位置要求為導向的增量式PID控制算法,優化控制步進電機的轉動。系統總體框圖如圖1所示。由STM32、光電耦合器、THB6128、步進電機、位置檢測光耦、電源、移液泵控制閥、液體壓力檢測模塊等部分組成。STM32通過輸出PWM波脈沖信號,控制步進電機驅動芯片THB6128驅動步進電機。并由位置檢測光耦反饋控制步進電機的位置:STM32通過控制MOS管的開關,進而控制移液泵控制閥的開關,液體壓力檢測模塊通過傳感器檢測液體壓力,進而由ADC芯片轉換為電壓值。
2 硬件設計
步進電機驅動系統硬件電路包括STM32控制模塊、電源電路模塊、步進電機控制模塊、移液泵控制閥開關模塊、液體壓力檢測模塊。
2.1 STM32控制模塊
步進電機驅動系統采用STM32作為下位機的微控制器,STM32的型號選用STM32F103C8T6.通過STM32控制模塊控制電源電路模塊、步進電機控制、移液泵控制閥開關、液體壓力檢測模塊。
2.2 電源電路模塊
步進電機驅動系統電源電路模塊采用TPS54331芯片,用于電源管理/DC-DC轉換電路:同時采用了SPX1117芯片,它是一個低功耗正向電壓調節器。電源電路接人24V直流電源,最后輸出3.3V的直流電壓。
2.3 步進電機控制模塊
微控制器輸出PWM波脈沖信號,經過光耦離合器PC817、TLP2631直接控制步進電機驅動芯片THB6128,進而驅動步進電機。2路電機極限位置檢測接口,分別與步進電機兩個轉動極限位置各對應的移液泵移動執行機構的上移極限位置(圓點)檢測光耦1、下移極限位置檢測光耦2連接。光耦離合器PC817分別用于細分驅動設置的光耦離合器電路如圖2所示:光耦離合器TLP2631所在電路用于步進電機脈沖信號的控制,如圖3所示;步進電機驅動芯片電路原理圖為圖4所示。
2.4 移液泵控制閥開關模塊
當位置檢測光耦檢測到步進電機帶動移液泵向下移動到極限位置時。通過MOS管控制電路和軟件程序來控制移液泵控制閥的開關。移液泵控制閥開關電路原理圖如圖5所示。
2.5 液體壓力檢測模塊
液體壓力檢測模塊利用液體壓力傳感器,檢測移液泵里液體的壓力并通過ADC芯片ADS8328IBPWR轉換為電壓值。液體壓力檢測電路如圖6所示。ADC芯片所在電路原理圖如圖7所示。
3 軟件設計
3.1 步進電機控制算法設計
步進電機驅動系統軟件設計。采用了以位置要求為導向的增量式PID控制算法,即:△u(k)=Kp(E(k)-E(k-1))+KIE(k)+KD(E(k)-2E(k-1)+E(k-2))。其中KP為比例系數,KI為積分系數,KD為微分系數,E(k)為第k次采樣時刻輸入的偏差值,E(k-1)為第(k-1)次采樣時刻輸入的偏差值,E(k-2)為第(k-2)次采樣時刻輸入的偏差值。增量式PID的計算量相對絕對式PID的較小,因為計算的是增量,所以對執行部件的擾動較小,一般采用帶死區的控制。步進電機的控制需求是以位置要求為導向的。相應增量式PID控制算法流程圖如圖8所示。
3.2 步進電機轉速控制程序設計
控制步進電機轉速源程序的設計:首先定義步進電機參數結構體srd,然后編寫步進電機參數設置的函數,分別設置步進電機的步數、加速階段的加速度、減速階段的加速度、轉速,定義了達到最大速度時的步數和如果加速沒有達到最大速度但是必須要開始減速的步數。通過對步進電機的步數進行討論來確定步進電機的轉速及加減速相關情況,步進電機的極限步數是5000.步進電機的加減速過程采用梯形曲線作為加減速運動曲線,所采用的梯形加減速運動曲線逼近于S形加減速運動曲線,實現這一加減速運動過程的主要程序如下:
4 系統安裝調試及分析
完成系統軟硬件之后,開始將步進電機驅動板、步進電機、移液泵、液體壓力檢測傳感器、位置檢測光耦、電源、通信總線等部分連接起來。然后調試軟件程序,下載軟件程序到硬件電路。
經過上述操作后。硬件電路可以實現調試的功能。軟件程序通過以位置要求為導向的步進電機增量式PID控制算法,控制了步進電機的轉動從而帶動移液泵上下移動,位移曲線的仿真結果如圖9所示。
電機剛開始做加速運動。然后進行一段時間勻速運動,最后做減速運動,轉速平穩,仿真結果表明所采用的步進電機控制算法符合設計要求。對步進電機采用的梯形加減速曲線進行仿真,結果如圖10所示。仿真結果曲線近似于梯形加減速曲線,符合要求。在步進電機帶動移液泵向下移動到極限位置時,通過MOS管控制電路和軟件程序,使移液泵控制閥得到了較好的開關。液體壓力檢測模塊通過液體壓力檢測傳感器檢測了移液泵里液體的壓力,并由ADC芯片轉換為電壓值,最后換算為壓力值,通過監測這個電壓值后發現移液泵里液體的壓力值沒有超限。
5 結束語
本文提出的一種用于全自動核酸提取的步進電機驅動系統不同于一般的步進電機驅動系統,設計的步進電機驅動系統結合了全自動核酸提取實際應用需求,在硬件上設計有移液泵控制閥開關模塊、液體壓力檢測模塊,在軟件上設計了以位置要求為導向的步進電機增量式PID控制算法,優化了步進電機的轉動以帶動移液泵上下移動。步進電機的加減速過程采用梯形曲線作為加減速運動曲線,轉速調節平穩。移液泵控制閥得到了較好的開關,移液泵里面液體的壓力得到了良好的監測。本系統步進電機的位置控制精度還有改善的空間,后期準備進行幾組不同PID算法系數的實驗。