劉曉利,譚華,王猛
(1.河北科技工程職業技術大學,河北邢臺,054035;2.河南牧業經濟學院,河南鄭州,450046)
熱脫附儀是一種樣品前端處理設備,其通過將吸附有待測物體的樣品加熱,提取樣品里面的揮發性和半揮發性組分[1]。熱脫附儀工作時樣品準確定位和溫度精確控制對于樣品檢測具有重要意義。
在熱脫附儀控制系統中,樣品加熱熱源具有慣性作用,樣品加熱溫度難以精確控制。文獻[1]提出了一種將傳統 PID 控制算法與 Smith 預估補償器結合,用于解決土壤熱脫附系統中溫度滯后環節影響系統穩定性的問題[2]。為熱脫附儀控制系統設計提供借鑒。文獻[2]設計了一種可用于現場分析的熱脫附儀,但僅適用于少量樣品的檢驗,樣品處理自動化程度較低[3]。 綜上所述,利用熱脫附儀對檢測樣品前處理,方法可行有效。土壤熱脫附系統中溫度有效控制可以提高系統的穩定性。
本文設計的熱脫附儀控制系統基于STM32單片機,采用PID算法,確保溫度控制可靠性。樣品位置采用步進電機驅動,但由于步進電機容易出現丟步和越步,從而造成樣品不能準確定位。控制系統采用閉環控制對轉盤定位系統干擾進行補償,實現檢測樣品的準確對位,提升檢測效率。
熱脫附儀主要應用于樣品前端處理,其可將吸附有待測物體的樣品加熱,樣品受熱后里面的揮發性和半揮發性組分會揮發,然后通過載氣(一般為氮氣)加壓,將加熱后揮發出來的待測物體吹出。
基于STM32單片機的熱脫附儀控制系統主要包括轉盤定位系統、上下扎針控制系統和推桿加熱控制系統。轉盤定位系統利用步進電機驅動均勻等距分布樣品位置的轉盤,步進電機定位決定當前處理樣品,因為需要準確定位。上下扎針控制系統控制空心針扎入樣品,吹入氮氣,將揮發性檢測物體取出,其通過步進電機和絲桿導軌控制扎針的上下移動。推桿加熱控制系統所控制的推桿上裝有加熱源,其控制步進電機將推桿送到指定樣品位置對樣品進行加熱。電機的控制和溫度控制是本控制系統研究的重點。
熱脫附儀控制系統總體框圖如圖1所示,系統控制芯片采用 STM32系列單片機。控制系統工作時,設置轉盤的位置,通過編碼器讀取當前位置,若當前位置與實際位置有偏差時,對位置進行脈沖補償,驅動電機運轉至正確的位置。溫度傳感器采集加熱的溫度值,送至控制芯片進行數據處理,系統計算采集的溫度與設置的溫度值之間的偏差,采用 PID 算法中,輸出 PWM 值控制加熱管的功率,實現溫度的控制。

圖1 熱脫附儀控制系統總體框圖
硬件電路由單片機電路、電源電路、通信電路、溫度采集電路、限位信號采集電路、電機驅動電路、編碼器電路等組成。
熱脫附儀控制系統核心功能在微處理器中實現,是控制系統中的重要部分。微處理器采用 STM32F103RCT6芯片,其GPIO 配置串口豐富,可實現多種外設,如:DMA、PWM、傳感器、電機控制等外圍設置。STM32 芯片及外圍電路圖如圖2所示,由于芯片內部振蕩器精確度較低,需要外接 8MHz的外部晶振作為系統時鐘源。

圖2 STM32 芯片及外圍電路圖
熱脫附儀控制系統需要為微處理器提供3.3V電壓以及為控制電路的其他外圍電路提供5V電壓兩種供電電源。電源電路通過LM259提供5V穩定電壓,穩壓芯片ASM1117-3.3 產生 3.3V 穩定電壓。5V電源電路如圖3所示,3.3V電源電路如圖4所示。

圖3 5V電源電路

圖4 3.3V電源電路
本設計選用PT100溫度傳感器采集溫度信號,通過電壓跟隨器隔離前后級電路,送至單片機內部集成的ADC。由于單片機ADC 工作時,需要高頻時鐘來驅動,可能會對電路產生一定的干擾,因此需要在 ADC 芯片前添加電壓跟隨器。
電壓跟隨器在電路能起到隔離前后級電路,匹配電路阻抗的作用。本文采用LM358構成電壓跟隨器。電壓跟隨器電路如圖5所示。

圖5 電壓跟隨器電路
本設計選用步進電機驅動樣品轉盤等運動。由于單片機接口端的信號不足以直接驅動步進電機,選用ULN2003作為電機驅動芯片,電機驅動電路如圖6所示。

圖6 電機驅動電路
使用MDK軟件作為系統軟件設計的開發環境,對STM32單片機進行一系列的編譯與調試。系統的程序主要包括電機控制模塊程序、加熱控制模塊程序。
加熱控制模塊完成熱脫附儀控制系統加熱控制的動作流程控制及各個功能組件狀態的監測。本文使用STM32單片機內置的通用定時器TIM1、TIM8產生高精度的PWM輸出波形。
熱脫附儀加熱控制啟動后,STM32 單片機將初始化系統中的各個功能函數,包括系統各參數設置、系統定時器初始化、定時器初始化、ADC初始化等,待各功能函數初始化后,讀取溫度值并濾波,讀取設定溫度值,在加熱控制模塊中收到加熱命令執行加熱操作時,控制器將讀取溫度值并進行PID控制,同時發送實時溫度,執行溫控操作。加熱控制利用系統的定時器中斷功能在固定周期內采樣,并對所采集的溫度數據進行濾波處理,獲取當前時刻加熱的溫度值。加熱控制程序流程圖如圖7所示。

圖7 加熱控制程序流程圖
主程序采用輪詢的方式,主函數掃描處于程序運行還是復位狀態,在程序運行狀態中,判斷當前按鈕狀態處于運行、手動還是復位。轉盤電機確定位置,當轉至指定位置,啟動扎針電機,開啟吹掃并定時,定時時間到,關閉吹掃,開啟檢漏,開啟加熱采樣操作。在復位狀態中,轉盤電機、扎針電機、推桿電機找尋原點。電機控制程序流程圖如圖8所示。

圖8 電機控制程序流程圖
3.3.1 數據處理算法
本系統設計的熱脫附儀溫度控制系統采用PT100溫度傳感器感知加熱溫度,通過電路轉換將信號轉化為電壓值通過ADC轉為數字信號通過控制系統處理。在此過程中,采樣信號可能會受到各種干擾,采集的溫度信號不夠準確,需要對采集的溫度數據進行處理,消除信號中的噪聲。數字濾波是處理隨機性噪音干擾常用的方法。結合實際情況,本文選用算術平均濾波法對采集的數據進行處理。
3.3.2 PID控制模塊
在溫度控制系統中,將設定的目標溫度值與采集到的溫度值作比較,計算出此刻溫度的偏差值,當采集到的溫度值小于設定目標溫度值,且偏差比較大時,大功率加熱接近目標。當采集到的溫度值接近目標值時,計算積分項,并將偏差值和積分項的值輸入控制算法子程序中,將其作用于PID 控制器,最后將得到的控制量輸出以PWM波的形式輸出。
本文針對熱脫附儀取樣操作時,樣品不能準確定位的問題,樣品預加熱時,加熱溫度控制問題等,設計了基于 STM32 單片機的熱脫附儀控制系統,主要對系統的軟硬件進行設計,還對溫度數據和溫度控制算法進行研究并在軟件中實現。從功能上所設計的熱脫附控制系統能夠實現樣品準確定位,加熱溫度可靠控制,提高熱脫儀檢測效率,保證樣品溫度控制的可靠性。