嵌入式采煤工作面安全集中監控系統
器件名稱 | 用途 | 數量 | 器件名稱 | 用途 | 數量 |
EVK1100板 | 處理中心 | 1 | 攝像頭 | 截取圖像 | 1 |
云臺 | 控制攝像頭轉動 | 1 | 電腦 | 存儲/顯示 | 1 |
電機 | 模擬通風機 | 1 | 報警器 | 發出警告信息 | 1 |
瓦斯傳感器 | 檢測瓦斯濃度 | 若干 | 水位傳感器 | 檢測水位高度 | 若干 |
壓力傳感器 | 檢測壓力變化 | 若干 | 粉塵傳感器 | 檢測粉塵濃度 | 若干 |
電源 | 提供電壓 | 1 | 網線 | 傳輸信號 | 若干 |
3.3系統軟件架構
系統的軟件總體架構如圖3.3所示:
如圖3.3所示,根據工作平臺的不同,我們可以將軟件的設計從總體上分為兩部分,第一部分主要是在下位機中嵌入了小型操作系統uC/OS-II的工作平臺,第二部分是運行WindowXP操作系統上位機的工臺中以在下位機平臺上的系統開發為主。
在下位機工作平臺上,與3.1中硬件系統總體結構相對應的,我們又可以將軟件系統細分為四部分。這四部分分別為信號采集模塊、信號處理模塊、控制模塊和網絡數據傳輸模塊。在信號采集模塊主要完成的功能為信號的選通,即在約定的時間周期內依次處理各個傳感器或圖像采集器傳遞過來的數據;如3.1中所述,這里的信號處理模塊也分為兩部分:圖像信號處理作為單獨的一部分;瓦斯濃度信號、頂板壓力信號、粉塵濃度信號和井下水位信號的處理方法類似,所以把它整體看作一部分;電機控制模塊主要包括通風電機控制模塊和攝像頭的云臺控制模塊;在網絡傳輸模塊主要完成數據的上下傳輸,實現遠程控制等功能。實現各個功能模塊的程序通過uC/OS-II進行統一的調度。通過給底層硬件開發驅動程序,對上層軟件屏蔽器件的差距,方便應用層各功能模塊程序的實現,和通過操作系統提供的接口對最底層硬件的控制。
在上位機工作平臺上,借用上位機的顯示設備和海量的存儲空間,可以在基于微軟的操作系統平臺WindowsXP上開發出許多優良的軟件并實現對從下位機傳來的數據的存儲。為了更好便于監控中心人員的查看,可以通過圖形界面程序的設計增強人機的交互性和可觀性。同時除了數據顯示、數據存儲和傳遞控制參數以外,還可以通過程序設計,調用存儲在數據庫中的數據對其進行分析,進一步挖掘潛藏在數據中的信息,從其中總結規律,為以后的安全工作產生工作提供重要數據,進一步提高井下工作的安全性和對周邊生態環境的保護。
在這里給出的僅是系統軟件的整體結構框圖,重要模塊的程序實現流程將在3.4中闡述。
3.4 系統軟件流程
根據3.3的分析,在軟件的設計方面,主要分為下位機和上位機兩個部分。嵌入式系統(下位機)與通用型計算機系統(上位機)相比具有很多不同點,首先嵌入式系統通常是面向特定用戶群而進行設計的,通常具有低功耗、體積小、集成度高等特點,再次嵌入式系統的硬件和軟件都必須高效率地設計,同時嵌入式系統本身一般不具備開發能力。因此嵌入式系統和通用計算機系統在軟件設計和實現方面存在許多差異。下面我們將分別闡述在下位機和上位機上運行的各主要功能模塊的設計流程,其中以下位機的講解為主。
3.4.1 uC/OS-II 系統控制模塊
在下位機上,為了充分利用系統的資源,嵌入了一個成熟、開源的嵌入式操作系統uC/OS-II 。在本次設計中,uC/OS-II 的主要功能如圖3.4.1所示:
uC/OS-II是有美國嵌入式系統專家Jean.J.Labrosse編寫的一款源代碼開放的實時嵌入式系統。與其他嵌入式操作系統系統相比,除具有源代碼開放的有點外,他的可移植性強、功能相對強大,而且其穩定性與可靠性很高,因此本次設計選用這一款操作系統。
系統上電以后先運行自檢程序,如果系統的功能模塊出現異常,則產生報警信號,為了避免因發出聲音警報可能造成的恐慌,本次設計通過EVK1100自帶的LED燈陣列來提示異常,工作人員可以通過LED燈陣列顯示的不同信號快速的查詢到問題的所在點,及時的排除問題。
待判斷系統各功能模塊運行正常以后啟動uC/OS-II。uC/OS-II可以大致分成核心、任務管理、時間處理、任務同步與通信和CPU移植等五個部分。在本次設計中,這五個部分都將涉及到。如圖3.4.1所示,uC/OS-II正常啟動以后,開始執行任務調度、任務同步、內存管理和時間管理等功能模塊。其中網絡通信功能在uC/OS-II中并沒有提供,需要自己移植相關網絡協議棧。在本次設計中,我們選擇在uC/OS-II中移植lwip來實現TCP/IP協議棧。
lwip是瑞典計算機科學院的一個開源的TCP/IP協議棧實現,lwip是一個輕型的IP協議,有無操作系統的支持都可以運行,其對內存的需求并不高,差不多幾百字節的RAM和40K左右的ROM就可以運行,這使lwip協議棧適合在低端的嵌入式系統中使用。因此lwip可以很好的滿足本次設計的對網絡功能的需求。
3.4.2信號處理模塊的軟件設計流程
根據信號的特征和信號處理的方式,這一模塊的實現主要可以分為兩大部分:第一部分為對傳感器傳來信號的處理,它們的信號處理流程相似,我們一瓦斯信號的處理流程做例進行詳解;第二部分為圖像信號處理模塊,不同于前面所提到的信號的處理方式,其設計到圖像采集和壓縮等問題,因此我們將其實現流程單獨講解。
3.4.2.1非圖像信號處理軟件設計
(1)PID算法介紹
為了將瓦斯濃度維持在一個正常的水平,要求系統能夠接受地面控制中心的控制參數對通風電機進行控制,同時為了體現靈活性,要求系統在平時能夠自我調控,減少人的工作量。本次設計選用PID控制器實現平時系統的自我調節。系統能夠根據瓦斯的濃度自動調節通風電機的轉速,同時又能保證在緊急時刻將控制權交給地面控制中心。PID算法控制原理如圖3.4.2.1-1所示:
評論