摘要:論述用超低功耗單片機實現低功耗智能流量計量調節儀的實現方法,重點介紹了該儀表的硬件模塊電路設計。儀表以超低功耗單片機MSP430F147為主處理器,集壓力測量、流量計量控制、無線傳輸于一體,在電池供電時具有極低功耗。該系統已在青海油田使用,運行狀態表明參數設置方便,工作穩定可靠,測量控制精度高。
1 系統組成及總體設計
系統設計目的是實現流量的計量、壓力的測量、閥門的自動控制、數據的無線和有線傳輸。考慮到流量計量不能間斷,系統采用220V交流和電池兩種方式供電,電池供電時,對系統功耗嚴格進行控制。整個系統構成框圖如圖1所示。
單片機MSP430FE425主要完成壓力的測量和電池電壓的檢測,并通過串口將壓力數據和電池電壓傳送給MSP430F147單片機。MSP430F147主要完成電機的控制、流量的計量、壓力數據的處理、壓力的校準、壓力流量的顯示、參數的設置和數據傳輸。
2 系統硬件電路設計
2.1 流量計量單元電路
流量計量單元電路主要由超低功耗運算放大器TLV27L2構成,如圖2所示。SIGNAL-IN為渦輪傳感器輸出的脈動信號。
當流體沿管道軸線方向流動并沖擊渦輪葉片時,便推動渦輪旋轉。在渦輪旋轉的同時,葉片周期地切割電磁鐵產生的磁力線線改變線圈的磁通量,從而在線圈內感應出脈動的電動勢信號,此脈動信號的頻率與被測流體的流量成正比。隨著渦輪轉速的變化,輸出的脈動信號強度從幾毫伏到幾百毫伏變化。通過測量脈動信號的頻率大小便能計算出對應的流量大小。對應計算公式為:瞬時流量累計流量Q1=其中,F為脈動信號的頻率,K為儀表常數,n為脈沖數。
考慮到在渦輪轉速較慢時,脈動信號幅度較小,干擾信號較大,單元電路采用內部集成2路超低功耗運算放大器TLV27L2完成信號的調理。前一級運算放大器主要將小信號放大后一級運放將放大信號進行遲滯比較,輸出方波信號。為了增強抗干擾能力,在比較輸出后再加一級與非門,使輸出的方波信號更加完整,便于單片機測量。
2.2 壓力測量單元電路
壓力測量單元主要由MSP430FE425單片機和內部集成4路超低功耗運算放大器TLV2254構成,如圖3所示。
VB_DRV為單片機給測量電路供電信號。當需要測量壓力時,MSP430FE425將VB_DRV置為高電平,74HC573便輸出驅動電流可高達80mA的3.3V電壓給測量電路提供電源;測量完成后,MSP430FE425將VB_DRV置為低電平,切斷測量電路的電源,從而保證測量電路處于零功耗狀態。穩壓源LM385-1.2產生的高穩定度1.2V電壓信號經由TLV2254的一路運算放大器跟隨后,給單片機內部16位AD提供參考電壓。TLV2254的另一路運算放大器配合幾只電阻構成恒流源,其恒定電流為:
恒流源產生的電流流過壓力傳感器的電阻橋臂,便產生與壓力成正比的電壓信號。壓力傳感器選用麥克公司的高穩定隔離壓阻式OEM壓力敏感元件MPM281。壓力傳感器輸出的電壓信號經由TLV2254的另兩路運算放大器構成的差分放大器放大倍,最后進入MSP430FE425的一路16位AD通道轉換為數字信號。經過實際測試,最后系統選用以下參數:RB1=10kΩ、RA1=43kΩ、RC1=560Ω,RFA=10kΩ,RG=3.6kΩ。因此,產生的恒定電流I≈400μA,差分放大器放大倍數G≈6.56倍。
2.3 通信單元電路
系統具備無線通信和485有線通信功能,無線通信功能采用達泰公司生產的無線數傳模塊DTA465A完成, 485通信由美信公司的MAX485實現。DTA465A支持3.3~5.5V供電,發送電流小于40mA,接收電流小于35mA,休眠電流小于20μA,傳輸距離大于200m。經實際調試,供電電壓在2.8V時,DTA465A仍能正常工作,但休眠功能必須在3.0V供電才有效,因此系統在電池供電時,電壓低電門限設置為3.0V。
2.4 LCD顯示單元
系統選用北京青云公司的低功耗14位8段液晶LCM141C顯示測量結果。LCM141C分兩行顯示,上行顯示6位數據,下行顯示8數據。考慮到系統顯示數據較多,實際在工作狀態下,液晶上行分時顯示壓力和瞬時流量,液晶下行顯示累計流量;在菜單設置下,液晶上行顯示菜單提示符,液晶下行顯示當前參數設置值。
3 系統軟件設計
系統軟件采用模塊化設計思想,主要由壓力測量模塊、流量計量模塊、流量控制模塊、數據通信模塊和液晶顯示模塊構成。整個系統軟件流程圖如圖4所示。
3.1 壓力測量
在沒有測量任務時,MSP430FE425休眠在低功耗模式3下,收到測量壓力命令后,首先從低功耗模式3回到活動模式,然后開啟測量電路的供電電壓和AD模塊SD16,待轉換完成后,立即關閉測量電路的供電電壓和SD16,接著通過串口向MS0430F147發送采集到的數據,待發送完成后繼續休眠,等待下一次測量任務到來。在設定的壓力測量時間到達時,MSP430F147單片機通過串口向MSP430FE425發送測量壓力命令;MS0430F147接收到采樣數據后進行計算處理和顯示。
3.2 流量計量
考慮到實際中渦輪傳感器輸出的脈動信號的頻率一般在10~2000Hz內,變化范圍較大,因此采用等精度法測量信號的頻率,測頻范圍為0.5~3000Hz,測頻精度1‰。限于篇幅,此處不再給出軟件流程圖。
3.3 流量控制
結合PID技術,采用PD思想控制流量。本算法的思想是利用兩次控制的差值預測出下一次控制所需要的時間。設DesFlow為控制的目標流量,Flow為當前流量,Erro0為當前瞬時流量與目標流量的差值,Erro1為上一次控制時瞬時流量與目標流量的差值,T0為當前控制所需時間,T1為上次控制的時間,利用線性關系可得出當前控制所需時間T1。流量控制軟件流程圖如圖5所示。
3.4 數據通信
系統使用兩套數據傳輸協議,很好的解決了在電池供電時無線模塊功耗過大的問題。在220V供電時,無線模塊工作于活動模式,采用標準MODBUS協議傳輸數據;電池供電時,無線模塊工作于省電模式,發送數據時間到達時喚醒無線模塊發送數據,發送完成后無線模塊繼續休眠。為了解決數據擁塞問題,儀表在設定的數據發送時間內隨機產生發送時間,發送時間到達時偵聽網絡,待網絡空閑發送數據。協議間切換方面,在由電池供電轉為220V交流供電時,儀表主動發送一次數據,告知轉發器目前為交流供電,下一次使用MODBUS協議傳輸數據。在由220V交流供電轉為電池供電時,儀表主動發送一次數據,告知轉發器目前為電池供電,下一次使用主動傳輸協議傳輸數據。
4 系統性能測試
經測試,系統在電池供電時工作電流僅為400μA。表1為在20MPa壓力校驗臺上得到的壓力實測數據。
表2為在西安閻良試飛院內燃機部滿量程為6m3/h的標定臺上測得的數據,儀表設置的控制誤差為1%。
由以上兩表數據可看出,此系統壓力測量精度均達到1‰,流量測量均達到5‰,流量控制精度達到1%。該系統已經在青海油田使用,目前運行穩定,效果良好。