基于RTOS與DSPs的微機保護裝置
我國電力系統的微機型保護得到迅速發展,已在電力系統得到了廣泛應用。從早期的8位機,到現在16/32位機,性能得到了提高,運算能力也大大加強了。
微機保護的性能及其可靠性取決于軟、硬件,因此軟件的編寫和硬件的選擇是一項關鍵性的工作。我們在編寫軟件時,通常先畫好流程圖,然后按著流程圖來編程,一般是一個無限循環,循環中調用相應的函數(子程序)完成相應的操作(稱為后臺行為或任務級);用中斷來處理隨機事件(稱為前臺行為或中斷級)。程序流程如圖1所示。任務的響應時間取決于后臺循環執行的時間(在不同的狀態或運行方式下,執行時間不同),程序經過某一點的時間不能確定,程序修改了,循環時序就受到影響。這種編程方法,使得程序開發周期長,修改困難,任何一處受到破壞,就會死機。在8位機時代,還不算明顯,隨著16/32位機的使用及系統復雜性的增加,表現的越來越明顯了。這種傳統的前臺/后臺程序開發機制已不能滿足日益復雜和多樣化的微機保護的應用需求,采用RTOS來開發微機保護應用程序,現已成為開發人員的發展方向。
目前運行的微機保護裝置大多數為16位單片機,對于常規的保護其性能基本能滿足。但16位單片機往往受到運算速度等因素的影響,不易實現更復雜的算法和更高采樣速率。隨著微電子和半導體技術的發展,DSPs已運用在了眾多領域。由于DSPs的強大數字信號處理能力,越來越受到開發人員的青睞。
2 關于RTOS(Real Time Operating System)實時操作系統
實時操作系統是一段在系統啟動后,首先執行的背景程序。用戶的應用程序是運行于RTOS之上的各個任務,RTOS根據各個任務的要求,進行資源管理、消息管理、任務調度,異常處理等工作。實時多任務內核是RTOS的關鍵部分,基本功能包括任務管理、定時器管理、存儲管理、資源管理、事件管理、系統管理、消息管理等。RTOS與其它OS相比主要特征是規模小、可裁剪、微內核。
在RTOS機制下開發多任務程序,CPU的運行時間被劃分為許多小的時間片,RTOS按照某種調度算法分別分配給不同的任務,多個任務分別在自己的時間片內訪問CPU,達到微觀上輪流運行,宏觀上并發運行的多任務效果。程序流程如圖2所示。
任務是單線程序列指令形成的一個無限循環,它有五種狀態:休眠、就緒、運行、等待和中斷。實時內核是通過任務控制塊(TCB)來管理任務的。程序調用內核服務創建任務,并在任務中分配一個任務控制塊,進行初始化,使任務進入就緒狀態。實時內核以事件為基礎,根據任務執行的狀態,對任務進行切換,狀態也隨之變化。在實時任務中,內存中存在多個任務控制模塊,以及各個任務獨立的私有堆棧。
任務進行切換,首先要保存CPU寄存器內容到當前任務的任務控制塊中,然后從新任務的任務控制塊裝載堆棧指針,并將新任務的上下文裝載到CPU寄存器中,這樣就從一個任務切換到另一個任務運行。
我們將要開發的系統功能進行分解,構造成幾個不同的任務,每個任務負責完成系統應用要求的一部分功能,并根據其重要性,決定它的優先級,它們彼此獨立運行。
RTOS的使用,可以提高系統的可靠性。傳統的線性程序,在遇到強烈的干擾時,程序任何一處產生死循環或破壞,都會引起死機,只有靠硬件(看門狗),進行復位、重新啟動系統。在這種情況下,對于RTOS管理的系統,只會引起若干個進程中的一個破壞,并可用另外的進程對其進行修復。還可以提高產品的開發效率,縮短開發周期。一個復雜的應用程序,可以分解成若干個任務,每個任務的調試、修改幾乎不影響其它模塊。
使用RTOS,使得應用程序的設計、擴展變得容易,不需要大的改動,就可以增加新的功能;且能使系統資源能得到更好的管理。但需增加額外的ROM/RAM的開銷,增加2~5個百分點的CPU額外負荷,以及開發成本的增加(RTOS的價格)。
當今市場上有許多RTOS商家生產面向8位、16位、32位,甚至64位的CPU的RTOS產品。如:VRTX、QNX、VxWorks、Nucleus PLUS、OS—9、PSOSys-tem、LynxOS、WindowsCE及國內的Hopen等。RTOS除包含實時多任務內核外,還包括輸入輸出管理、視窗系統、文件系統、網絡語言接口庫、調試軟件,以及交叉編譯平臺等。RTOS已在各行各業應用,如:航空、軍事、電力、通信及工業控制等領域。
3 關于DSPs(DiginalSignalProcessors)數字信號處理芯片
傳統上,微控制器MCU和微處理器MPU是微機發展的兩大分支,而DSPs是MCU的一種特殊變形。它是一種具有哈佛結構,精簡指令(RISC)的CPU。
DSPs片內有多條地址、數據和控制總線,可進行流水線操作,提高了CPU的處理能力;有硬件乘法器,乘法計算可由一條指令來完成;有專門的指令,進行數據處理;有DMA傳輸通道。其外部硬件部分和MCU相同,由地址、數據和控制三總線組成。在軟件開發上,能更好地支持模塊化編程。
市場上有多種DSPs可供我們選擇。如:TI公司的TMS320系列、ADI公司的ADS系列、MOTOROLA公司的DSP系列等。
DSPs的使用,可極大地縮短數據處理的計算時間,不但可以完成數據采集、信號處理功能,還可完成運算、控制等功能。
4 RTOS與DSPs在微機保護裝置中的應用
我們采用美國ATI公司的Nucleus Plus實時操作系統,DSPs選用美國TI公司的TMS320C32,開發了一系列的中低壓保護裝置。
Nucleus Plus是實時、搶先、多任務的內核。大約95%的Nucleus Plus程序是用ANSIC編寫的,容易移值。我們以Nucleus Plus為開發平臺,采用C語言和匯編語言混合編程,進行軟件開發。
我們針對保護裝置的實際情況,把整個系統分成保護、自檢、顯示、通信等幾個任務,并把保護任務設置成較高優先級。各任務間彼此獨立運行,任務間的通信通過全局數據或發送消息來實現,任何一個任務出現運行異常,其它任務正常運行。任務程序的結構如下代碼所示:
TMS320C32是32位的芯片,可進行浮點數運算。圖3是以TMS320C32為核心構成的微機保護裝置硬件系統原理圖,在這個系統中,TMS320C32完成采樣、計算、保護邏輯判斷及控制等功能。
在保護裝置開發中,通過使用RTOS,可進行并行開發,縮短了開發周期;任務間彼此獨立,系統的可靠性得到了提高。DSPs的使用,提高了運算精度和速度。總之,保護裝置的整體性能上了一個臺階。
5 結束語
計算機化,保護、控制、測量、數據通信一體化和人工智能化是繼電保護技術發展的趨勢。RTOS和DSPs應用在繼電保護裝置中,會使保護性能更加完善、可靠,更有效地擔當起確保電網安全的重任。
相關閱讀:
- ...2012/06/27 15:25·基于RSPNN的制粉系統故障診斷
- ...2011/11/29 09:33·一種基于RFID的便攜式智能語音播放器設計
- ...2011/11/07 10:13·基于RFID識別技術的汽車智能稱重系統
- ...2011/09/28 16:34·基于RFID與WSN集成的物聯網的供應鏈監管平臺設計
- ...2011/09/16 09:02·基于RFID的地震遺址導覽與安全監控系統的設計
- ...2009/09/30 11:03·基于R8C的汽車OBD通用故障診斷儀設計
- ...· Efinix® 全力驅動AI邊緣計算,成功推出Trion™ T20 FPGA樣品, 同時將產品擴展到二十萬邏輯單元的T200 FPGA
- ...· 英飛凌亮相進博會,引領智慧新生活
- ...· 三電產品開發及測試研討會北汽新能源專場成功舉行
- ...· Manz亞智科技跨入半導體領域 為面板級扇出型封裝提供化學濕制程、涂布及激光應用等生產設備解決方案
- ...· 中電瑞華BITRODE動力電池測試系統順利交付北汽新能源
- ...· 中電瑞華FTF系列電池測試系統中標北京新能源汽車股份有限公司
- ...· 中電瑞華大功率高壓能源反饋式負載系統成功交付中電熊貓
- ...· 中電瑞華國際在電動汽車及關鍵部件測評研討會上演繹先進測評技術