μC/OS-II在總線式數(shù)據采集系統(tǒng)中的應用
μC/OS-II是一個源代碼開放的實時操作系統(tǒng),可移植、可固化(嵌入到產品中成為產品的一部分)、可裁減,屬于占先式實時內核。執(zhí)行時間可確定(即函數(shù)調用與服務的時間是可知的,不依賴于應用程序的多少),支持現(xiàn)有大多數(shù)型號的8位、16位、32位MCU/MPU,已被廣泛應用于交換機、路由器、過程控制、汽車業(yè)、辦公自動化、計算機外設以及民用消費類產品等,具有穩(wěn)定的可靠性。把μC/OS-II應用在總線式數(shù)據采集系統(tǒng)中,可使該系統(tǒng)比以往的前后臺系統(tǒng)能夠更加穩(wěn)定地工作,而且在一定程度上滿足了監(jiān)控測量實時性的需求。
本文引用地址:http://www.ex-cimer.com/article/152575.htm隨著社會信息化程度的提高,人們對重要工業(yè)及生活設施智能化監(jiān)控的要求也越來越高。應這種需求,設計了這套總線式數(shù)據采集系統(tǒng)。該系統(tǒng)采用總線巡檢方式,對監(jiān)測對象進行數(shù)據采集與處理,系統(tǒng)硬件以模塊化結構,實現(xiàn)32/64/128路模擬或數(shù)字量的集中監(jiān)測,適用于各種標準現(xiàn)場一次儀表或二次儀表數(shù)據測量與控制。整機采用先進的微機處理技術和通信控制技術,并嵌入實時處理內核,智能化程度較高,工作性能更加穩(wěn)定,測量精度高,通用性強。
1.1 系統(tǒng)組成
該系統(tǒng)的硬件組成如圖1所示。
現(xiàn)場監(jiān)測通道狀態(tài)以總線方式,通過總線處理單元傳送到中央控制單元進行數(shù)據采集與處理,其中MCU采用具有10位A/D轉換器的80C196KB。
1.2 系統(tǒng)功能
該系統(tǒng)可以對各通道的工作參數(shù)、狀態(tài)進行即時修改設定,并可以通過面板LED實時顯示32/64/128路通道的工作狀態(tài),同時各通道的實時參數(shù)通過LCD進行逐屏顯示。對發(fā)生報警的信道可以通過打印處理單元進行打印輸出、聲光報警及顯示。該系統(tǒng)采用總線巡檢方式,對各信道工作狀態(tài)進行遠程數(shù)據采集并進行集中數(shù)據處理。為進一步滿足智能化管理的需要,具有和計算機通信的功能,可以實現(xiàn)監(jiān)測數(shù)據的共享。同時,也可以通過計算機對各信道的工作狀態(tài)進行設置,進一步增強了該系統(tǒng)的智能化管理能力。
2 μC/OS-II在系統(tǒng)中的應用
該系統(tǒng)若采用以往的前后臺式工作方式,即后臺為主應用程序,前臺為中斷處理程序;通常情況下執(zhí)行主程序,若有中斷發(fā)生時,則轉向前臺處理中斷服務程序。前臺需要處理定時顯示系統(tǒng)信息子程序,或按鍵中斷處理子程序,然后根據中斷程序中所置的狀態(tài)標志,由主程序判斷其狀態(tài)標志后再進入相應的子程序,也就是主程序采用狀態(tài)查詢方式進行工作。這樣在一定程度上不能保證整個系統(tǒng)測量的實時性。因為主程序在執(zhí)行其它程序時,不可能隨時去檢測這些狀態(tài)標志,尤其是處理多信道A/D采樣計算時,耗時較多。當工作的信道增加或減少時,這種現(xiàn)象則表現(xiàn)得尤為明顯,而且難以實現(xiàn)并行操作的相互通信。在主程序的各個子模塊中,有需要橫向通信聯(lián)系交換信息的,這在一般的前后臺系統(tǒng)中是很困難的,且存在系統(tǒng)不穩(wěn)定的隱患。實時內核兼具實時多任務性和穩(wěn)定性,因此考慮采用實時內核。μC/OS-II是一個源碼開放的實時內核,且又有許多成功的先例可供參考,可針對不同的MCU/MPU,通過條件編譯裁減其內核的大小,以滿足系統(tǒng)要求。μC/OS-II是占先式內核,總是運行就緒條件下優(yōu)先級最高的任務。最大可以管理64個任務,其中保留8個給系統(tǒng),故應用程序最多可以有56個任務。鑒于許多成功先例和系統(tǒng)成本,采用了80C196KB作為系統(tǒng)的MCU。通過實驗,基本滿足了系統(tǒng)所要求的實時性。
2.1 開發(fā)實時內核的流程
開發(fā)實時內核的流程如圖2所示。
評論