基于CAN總線的井下多參數(shù)監(jiān)控系統(tǒng)的設計
此系統(tǒng)的軟件設計主要由專家系統(tǒng)、上位人機交互和監(jiān)控分機子系統(tǒng)組成。其中專家系統(tǒng)以Microsoft Access 2003為開發(fā)軟件,大量收集井下需要監(jiān)測的模擬量參數(shù)信息,以供監(jiān)控主機查詢參考。上位人機交互選用了NI公司的LabWindows/CVI,其界面友好,利用較少的儀器硬件和計算機資源代替了多種高檔數(shù)據(jù)記錄分析儀器。計算機可以自動分析數(shù)據(jù)和輸出報表等,大大提高了系統(tǒng)的智能化和測試效率,減少了人為操作誤差對檢測結果的影響,友好的人機交互界面為用戶提供了豐富的功能。
為了使單片機系統(tǒng)具有更好的實時性和代碼的最優(yōu)化,監(jiān)控分機系統(tǒng)的軟件設計采用匯編語言編寫。限于篇幅,這里只簡要介紹上位人機交互和監(jiān)控分機子系統(tǒng)的軟件設計。
4.1 監(jiān)控分機子系統(tǒng)
程序流程圖如圖4所示。從圖4中可以看出,監(jiān)控系統(tǒng)能夠實現(xiàn)多種功能,包括多路模擬量A/D采集、數(shù)據(jù)暫存、液晶顯示、與上位人機交互通信以及開關量輸出等。設計時,采用模塊化思想,簡化了設計,提高了效率。
4.2 監(jiān)控分機子系統(tǒng)
為了便于代碼復用,虛擬儀器軟件開發(fā)采用分層設計,分為主程序控制層、人機交互層、數(shù)據(jù)處理層和儀器驅動層。
儀器驅動層是針對不同的硬件編制的驅動程序函數(shù)庫,完成I/O硬件接口與處理層的連接,是實現(xiàn)高層軟件與硬件無關的重要保證;數(shù)據(jù)處理層在后臺對用戶的操作進行解析計算,將控制字送給硬件驅動層;同時實現(xiàn)數(shù)據(jù)的采集控制、信號的分析與處理、數(shù)據(jù)的管理、標定程序、測試報告生成等;人機交互層完成人機界面交互,響應用戶的操作,實現(xiàn)數(shù)據(jù)的顯示、與專家系統(tǒng)通信互換信息及報表的打印等功能。主程序控制層用于組織各部分協(xié)調工作,共同完成測試任務。該測試軟件中運用了Windows多線程技術,實現(xiàn)了數(shù)據(jù)采集及處理、數(shù)據(jù)顯示同時進行。
5 結束語
目前該井下監(jiān)控系統(tǒng)已經(jīng)通過驗證。實驗證明其具有特點如下:與同類產(chǎn)品相比,具有精度高、可靠性強、工作性能穩(wěn)定、成本低廉的特點;采用單片機控制,簡化了測試設備結構,減少了故障環(huán)節(jié),提高了工作效率和智能化;測試系統(tǒng)采用10位高精度A/D轉換器和自動數(shù)據(jù)報表,提高了系統(tǒng)的測控精度,減小了人為隨機誤差;采用虛擬儀器作為人機交互界面,融合了傳統(tǒng)的測試手段和現(xiàn)代計算機技術,提高了測試系統(tǒng)的直觀性和可操作性;系統(tǒng)內部集成了專家系統(tǒng)可通過故障解決方案的實時查詢功能解決問題,在提高效率的基礎上,降低了事故率。
評論