余搏立
摘 要:文章以STM32F103VET6單片機為核心控制器設計一種簡易水情檢測系統,該系統能夠實現液位和溶液pH值檢測,并實時顯示狀態數據,測量精度高,功耗低,性能穩定。
關鍵詞:STM32F103VET6單片機;玻璃電極;遞推平均濾波算法
中圖分類號:TP274 文獻標志碼:A 文章編號:2095-2945(2018)20-0035-03
Abstract: In this paper, a simple water regime detection system is designed with STM32F103VET6 single chip microcomputer as the core controller. The system can detect the liquid level and pH value of solution, and display the state data in real time. The measurement accuracy is high, the power consumption is low, and the performance is stable.
Keywords: STM32F103VET6 microcontroller; glass electrode; recursive average filter algorithm
1 概述
隨著科技水平的進步與創新,簡易水情檢測系統中溶液pH值測量和液位測量邁向智能化。檢測系統對測量精度的要求愈加細致與嚴格。本文提出的設計方法對溶液pH值和液位高度能夠實現精確測量與顯示。整個系統僅由3.7V電池組供電,采用TFT液晶屏顯示實時數據。
2 方案設計
2.1 總體設計
本文選用玻璃電極pH值傳感器對溶液pH值檢測,設計信號調理電路將輸出信號轉化成模擬量電壓信號,經過控制器AD轉換成數字量信號進行處理;選用超聲波液位傳感器進行液位測量,經串口通信傳輸控制器參與運算;測量數據經遞推平均濾波算法處理后采用TFT液晶屏實時顯示水位測量高度、pH測量值、電池輸出電壓等狀態監控數據,構成簡易水情檢測系統[1]。
本文設計的檢測系統分STM32單片機最小系統、傳感器檢測電路、A/D采樣電路、液晶顯示電路、電源模塊電路構成。系統方框圖如圖1所示。
2.2 pH測量的基本原理
水溶液中氫離子的占比通過PH予以表示。根據能斯特方程,測量電極和被測量液體之間的電位差對應于液體中氫離子的濃度[2]。能斯特方程簡化后的數學表達式如下:
公式(1)中K為理論斜率;E為指定H+濃度下電極電勢;E0為標準電極電位,溫度一定時為一常數。上式說明電極的電位變化與被測溶液的pH值成線性關系。
2.3 液位測量原理與計算
超聲波傳感器安裝位置相對于液面的高度和超聲波發出經液面反射接收的時間差具有一一對應關系,故可將單片機系統測得時間差換算成液面高度。安裝時注意將超聲波傳感器發射端正對液面。記超聲波傳感器相對液面的高度為L,單位為毫米;超聲波的傳播時間差為T,單位為秒;聲音在空氣中的傳播速度V;數學關系式如下:
3 電路設計
3.1 pH值傳感器信號調理電路
根據pH值傳感器電極輸出的電壓為信號電極與參考電極的電位差,當pH值每變化1個單位時,傳感器電極輸出為幾十毫伏,如要將毫伏數量級信號放大到伏特數量級供AD轉換,需放大幾百倍。玻璃電極的感應端電阻很高,產生的干擾也被放大,進一步加大誤差。若用pH-電位平移,只需較小的電壓放大倍數,即可實現pH值與輸出電壓之間的線性關系[3]。單電源運放能實現線性放大的運放有LM358,LM324,TLC4502等,由于玻璃復合電極的內阻極高,電路測量的關鍵是選擇高輸入阻抗的運放,TLC4502具有輸入阻抗高,具有高精密低溫飄特點,故采用TLC4502。電路原理如圖2所示。
圖2(a),通過調整RW給參比電極(PH-端)賦予了一個1.1V的基準電壓值,用來保證信號電極(PH+端)電壓恒為正值,運放單電源供電也滿足要求。對于輸入1V以上的測量信號,只需放大2~3倍即可滿足單片機測量要求,如圖2(b)所示,只要合理地調整RX實現電極輸出電壓與pH值之間的線性關系。
設計的電極在不同pH值(標準pH計進行測量)下得到的輸出電壓如表1所示。
以當前數據為基準進行數據分析,通過圖形法導出PH線性方程:
3.2 電源電路
電源模塊采用3.7V電池組,使用XL6009升壓電路,輸出電壓經7805穩壓后,用于運放電路和傳感器供電。電路圖如圖3所示。
4 程序設計
系統的程序設計采用C語言編程。相對于匯編語言,C語言編程較簡單,包含各種頭文件,功能強大,易于理解,可讀性強,單片機進行編程實現各項功能,更利于操作。系統程序流程圖如圖4所示。
在實際A/D轉換測量中,發現每次采樣轉換的波動都很大,但實際用萬用表測量時電壓無波動。可知在軟件A/D轉換測量的結果不能直接用于計算,需進行有效的軟件濾波以排除A/D測量的誤差,經過多種方法的調試,最終采用如下方法軟件濾波(遞推平均濾波法):確定一個采樣數據的隊列數組,可參考數組長度4~12個;將單片機A/D采樣數據存放在數組中,保持采樣數據的連續性;根據先進先出特點將下一個采樣結果置于數組末端,并刪減隊列首數據,保持采樣數據隊列整體長度不變;對數組中的采樣結果經算數平均求解,作為最終測量值。
5 測試結果與數據
在自來水加入白醋,使用本設計進行測量,溶液pH值測量結果如表2所示,液位測量如表3所示。
通過以上測量結果可知:設計的pH和液位測量儀滿足設計要求的誤差范圍(pH誤差±0.1,液位誤差±0.1mm)。
參考文獻:
[1]胡繼勝.電子技術基礎及應用[M].北京:電子工業出版社,2014.
[2]李恒達.電極電勢與金屬-溶液界面電位差[J].松遼學刊(自然科學版),1999,04.
[3]張莉,夏紅,徐善軍,等.工業pH計在生產中的應用[J].中國氯堿,2009,05.
[4]唐曉波.淺談水情測報系統設計中應考慮的問題[J].科技創新與應用,2016(33):236.
[5]張云鵬.水情測報系統在水庫防汛中的運用分析[J].科技創新與應用,2017(28):149-150.