siemens x
嵌入式系統(tǒng)

嵌入式系統(tǒng)在微機(jī)繼電保護(hù)中的應(yīng)用

2025China.cn   2014年07月09日

  引言

  隨著電力系統(tǒng)的日趨復(fù)雜,繼電保護(hù)裝置對(duì)軟、硬件提出了更高的要求。目前,微機(jī)保護(hù)系統(tǒng)的處理器一般采用高性能單片機(jī)、數(shù)字信號(hào)處理器DSP和可編程邏輯器件PLD等來(lái)提高處理器性能。但是,隨著繼電保護(hù)系統(tǒng)向多功能、智能化、可視化及網(wǎng)絡(luò)化方向的發(fā)展,這些芯片已經(jīng)不能完全滿足需求。因此,在設(shè)計(jì)新的微機(jī)保護(hù)裝置時(shí),有必要選用高性能、低成本的新型處理器。近年來(lái),ARM處理器憑借高性價(jià)比、低功耗等特點(diǎn),在嵌入式領(lǐng)域獲得了廣泛應(yīng)用。而此μC/OS-Ⅱ作為一種免費(fèi)的、性能卓越的嵌入式操作系統(tǒng),為微機(jī)保護(hù)軟件提供了統(tǒng)一的開(kāi)發(fā)平臺(tái)。本文結(jié)合工程實(shí)踐,對(duì)上述二者在微機(jī)繼電保護(hù)中的應(yīng)用作些討論。

  1 微處理器與實(shí)時(shí)嵌入式操作系統(tǒng)的選取

  1.1 微處理器

  微處理器選擇AT91RM9200,它是基于ARM920T內(nèi)核、ARM/Thumb指令集的完整片上系統(tǒng),工作在180MHz頻率下其運(yùn)算速度可高達(dá)200 MIPS,集成了豐富的應(yīng)用外設(shè)及標(biāo)準(zhǔn)接口。該處理器包括一個(gè)高速的片上SRAM工作區(qū)和一個(gè)低延遲的外部總線接口(EBI),其內(nèi)置控制器可用于控制同步DRAM、突發(fā)訪問(wèn)模式FLAsH存儲(chǔ)器和靜態(tài)存儲(chǔ)器;提供與SmartMedia、Compact Flash和NAND F1ash的接口,集成了USB2.0接口和媒體訪問(wèn)控制器(MAC),擴(kuò)展了外部器件應(yīng)用的種類,使開(kāi)發(fā)出來(lái)的產(chǎn)品可以工作在網(wǎng)絡(luò)層,JTAG—ICE接口、UART通道(DBGU)和內(nèi)嵌實(shí)時(shí)跟蹤器提供的功能使受實(shí)時(shí)性限制的應(yīng)用成為可能,適合作為繼電保護(hù)裝置單片機(jī)解決方案的硬件平臺(tái)。

  1.2 嵌入式操作系統(tǒng)

  嵌入式操作系統(tǒng)選擇此μC/OS-Ⅱ。早期這個(gè)系統(tǒng)叫做μC/OS-Ⅱ,是1992年編寫(xiě)的嵌入式多任務(wù)實(shí)時(shí)操作系統(tǒng),后經(jīng)過(guò)修改,1999才推出了μC/OS-Ⅱ,它符合RTCA DO-178B標(biāo)準(zhǔn)的認(rèn)證,有足夠的穩(wěn)定性和安全性。μC/OS-Ⅱ是用C語(yǔ)言和匯編語(yǔ)言編寫(xiě)的。其中絕大部分代碼都是用C語(yǔ)言編寫(xiě)的,只有極少部分與處理器相關(guān)的代碼是用匯編語(yǔ)言編寫(xiě)的,只要稍加修改就可以把它移植到各類的嵌入式處理器上,因此可選擇作為繼電保護(hù)裝置的軟件開(kāi)發(fā)平臺(tái)。

  2 保護(hù)裝置的硬件系統(tǒng)設(shè)計(jì)

  微機(jī)保護(hù)裝置將待保護(hù)系統(tǒng)送來(lái)的電流、電壓信號(hào),經(jīng)電流、電壓互感器變換后產(chǎn)生低電壓信號(hào)送入主模板。主模板內(nèi)的AT91RM9200運(yùn)行片內(nèi)的保護(hù)軟件,進(jìn)行信號(hào)采樣,完成各種數(shù)值運(yùn)算、分析及處理,從而確定待保護(hù)系統(tǒng)的運(yùn)行狀態(tài)。如有故障,則由處理器經(jīng)模板發(fā)出跳閘動(dòng)作信號(hào),以保護(hù)系統(tǒng)。同時(shí)通過(guò)各種通信方式將保護(hù)動(dòng)作信息送入管理模板和上位機(jī),記錄和保存數(shù)據(jù)并報(bào)警。硬件系統(tǒng)采用模塊化設(shè)計(jì),可分為電流互感器/電壓互感器模塊、A/D轉(zhuǎn)換單元、開(kāi)入/開(kāi)出單元、人機(jī)交互單元、存儲(chǔ)器單元、對(duì)外通信單元及電源模塊等,硬件主體結(jié)構(gòu)如圖1所示。

圖1硬件主體結(jié)構(gòu)圖

  2.1 A/D轉(zhuǎn)換單元

  A/D轉(zhuǎn)換是微機(jī)保護(hù)的關(guān)鍵功能,采樣芯片選用AD7329。該芯片是一款真正雙極性、8通道、低功耗、帶符號(hào)位的12 bit、1 MSPS轉(zhuǎn)換速率ADC,輸入電壓范圍達(dá)±10 V,因此可以將輸入噪聲的影響降到最低,同時(shí)提供很高的直流和交流阻抗。

  2.2 存儲(chǔ)器單元

  由于移植實(shí)時(shí)操作系統(tǒng)的需要,本系統(tǒng)采用兩片容量較大的SDRAM(IS42S16160B),每片32船,構(gòu)成32位的高速數(shù)據(jù)總線,用于存放程序代碼和各種數(shù)據(jù)。采用一片32肥的NOR FLASH(TE28F256J3C),用于固化操作系統(tǒng)、應(yīng)用程序代碼、操作過(guò)程中的事件信息和錄波數(shù)據(jù)。另外,采用一片32 KB的E2PROM用于存放需要經(jīng)常讀寫(xiě)的保護(hù)定值。

  2.3 通信單元

  考慮到電力系統(tǒng)中大數(shù)據(jù)量和實(shí)時(shí)數(shù)據(jù)傳輸?shù)男枰?,根?jù)AT91RM9200微處理器的特點(diǎn),本系統(tǒng)設(shè)計(jì)了CAN、以太網(wǎng)、RS232/485、光纖、USB。CAN控制器采用完全支持CAN總線V2.0A和V2.0B技術(shù)規(guī)范,通信速率為1 Mb/s、SPI接口的MCP2510??紤]到光纖傳輸距離遠(yuǎn)、頻帶寬、發(fā)射天線小、保密性好及抗電磁干擾等優(yōu)點(diǎn),將光纖和以太網(wǎng)通信結(jié)合起來(lái),充分發(fā)揮二者的優(yōu)越性,可大大提高系統(tǒng)的應(yīng)用范圍和可靠性。系統(tǒng)采用IPll3A作為以太網(wǎng)至光纖收發(fā)器,IPll3A是二端口(包括TP端口和FX端口)10/100Mbps以太網(wǎng)集成交換器,由一個(gè)二端口控制器和一個(gè)以太網(wǎng)快速收發(fā)器組成;遵守IEEE802.3x規(guī)則。

  2.4 其它相關(guān)單元

  開(kāi)入回路和開(kāi)出回路均由快速光電隔離芯片和邏輯編碼電路組成,增加了電路的抗干擾性能。用于人機(jī)交互的LcD,采用128×64的點(diǎn)陣液晶顯示屏,直接使用PIO口進(jìn)行控制,鍵盤(pán)采用3×3的鍵盤(pán)電路,通過(guò)鍵盤(pán)查看系統(tǒng)參數(shù)和修改各種定值參數(shù)。系統(tǒng)各裝置的保護(hù)、監(jiān)控、事件順序記錄(SOE)、故障錄波等功能對(duì)時(shí)間精度和同步性有較高要求,GPS可以提供一個(gè)精確的時(shí)間坐標(biāo)H1,本系統(tǒng)采用GPS的B碼授時(shí),GPS系統(tǒng)接受衛(wèi)星時(shí)間信號(hào),輸出IRIG—B時(shí)間碼系列,設(shè)備通過(guò)總線對(duì)時(shí)間進(jìn)行同步。

  3 軟件系統(tǒng)設(shè)計(jì)

  3.1 傳統(tǒng)的前后臺(tái)系統(tǒng)和實(shí)時(shí)多任務(wù)系統(tǒng)的比較

  3.1.1 前后臺(tái)系統(tǒng)

  在前后臺(tái)系統(tǒng)中,應(yīng)用程序由后臺(tái)運(yùn)行,一般是一個(gè)無(wú)限循環(huán),循環(huán)中調(diào)用相應(yīng)的函數(shù)(子程序)完成相應(yīng)的操作(稱為后臺(tái)行為或任務(wù)級(jí));用中斷來(lái)處理隨機(jī)事件(稱為前臺(tái)行為或中斷級(jí)),如圖2所示。

圖2傳統(tǒng)微機(jī)保護(hù)程序機(jī)制

  這種程序規(guī)模較小、功能單一、智能化程度低,而且多是采用匯編語(yǔ)言編寫(xiě)的線性程序。它雖然具有代碼精煉,某些關(guān)鍵操作執(zhí)行效率高的優(yōu)點(diǎn),但是延長(zhǎng)了編程時(shí)間,難以保證系統(tǒng)所有任務(wù)對(duì)實(shí)時(shí)性的要求。某個(gè)任務(wù)的響應(yīng)時(shí)間取決于后臺(tái)循環(huán)執(zhí)行的時(shí)間。循環(huán)過(guò)程中,程序需要根據(jù)不同的狀態(tài)和方式(中斷服務(wù)子程序或用戶的設(shè)置可能改變這些狀態(tài)和運(yùn)行方式),決定程序的走向,所以每次循環(huán)的執(zhí)行時(shí)間不同。某一任務(wù)的真正響應(yīng)要等到循環(huán)順序執(zhí)行完前面所有的任務(wù)之后,既不及時(shí),時(shí)間也不確定。同時(shí),程序的可讀性很差,調(diào)試?yán)щy,維護(hù)也比較困難。

  3.1.2 實(shí)時(shí)多任務(wù)系統(tǒng)

  對(duì)于一個(gè)復(fù)雜的嵌入式實(shí)時(shí)系統(tǒng)而言,當(dāng)采用中斷處理程序和一個(gè)后臺(tái)主程序軟件結(jié)構(gòu)難以實(shí)時(shí)、準(zhǔn)確、可靠地完成任務(wù)時(shí),或存在一些互不相關(guān)的過(guò)程需要在一個(gè)計(jì)算機(jī)中同時(shí)處理時(shí),就需要采用實(shí)時(shí)多任務(wù)系統(tǒng)。隨著應(yīng)用的復(fù)雜化,一個(gè)嵌入式控制系統(tǒng)可能要同時(shí)控制或監(jiān)視很多外設(shè),有嚴(yán)格的實(shí)時(shí)響應(yīng)要求,需要處理任務(wù)比較多,各個(gè)任務(wù)之間有多種信息需要實(shí)時(shí)傳遞,如果仍采用原來(lái)的程序設(shè)計(jì)方法將存在兩個(gè)問(wèn)題:一是中斷可能得不到及時(shí)響應(yīng),處理時(shí)間過(guò)長(zhǎng),這對(duì)實(shí)時(shí)控制場(chǎng)合是不允許的,對(duì)于網(wǎng)絡(luò)通信而言則會(huì)降低系統(tǒng)整體的信息流量;二是系統(tǒng)任務(wù)多要考慮各種可能出現(xiàn)的情況(尤其在任務(wù)使用共享資源時(shí),如果任務(wù)調(diào)度不當(dāng)就可能導(dǎo)致系統(tǒng)死鎖,從而降低軟件可靠性,導(dǎo)致程序編寫(xiě)任務(wù)量成倍增加)。為降低系統(tǒng)的復(fù)雜性,保證系統(tǒng)的實(shí)時(shí)性,可維護(hù)性是必不可少的。

  實(shí)時(shí)多任務(wù)系統(tǒng)的實(shí)現(xiàn)必須有實(shí)時(shí)多任務(wù)操作系統(tǒng)的支持。操作系統(tǒng)主要完成任務(wù)切換、任務(wù)調(diào)度、任務(wù)間的通信、同步、互斥、實(shí)時(shí)時(shí)鐘管理以及中斷管理。實(shí)時(shí)多任務(wù)系統(tǒng)實(shí)際上是由多個(gè)任務(wù)、多個(gè)中斷處理過(guò)程和實(shí)時(shí)操作系統(tǒng)組成的有機(jī)整體。每個(gè)任務(wù)是順序執(zhí)行的,并以并行性的方式通過(guò)操作系統(tǒng)完成,任務(wù)間的相互通信和同步需要操作系統(tǒng)的支持。使用實(shí)時(shí)多任務(wù)系統(tǒng)的微機(jī)保護(hù)程序機(jī)制如圖3所示。

圖3使用RTOS的微機(jī)保護(hù)程序機(jī)制

  繼電保護(hù)對(duì)實(shí)時(shí)性要求較高,任務(wù)較多,故本文提出基于ARM9和μC/OS-Ⅱ的微機(jī)保護(hù)核心平臺(tái)。

  3.2 μC/OS-Ⅱ性能分析及其在AT91 RM9200中的移植

  3.2.1 μC/OS-Ⅱ性能分析

  實(shí)時(shí)系統(tǒng)主要通過(guò)三個(gè)性能指標(biāo)來(lái)衡量系統(tǒng)的實(shí)時(shí)性,即響應(yīng)時(shí)間(Response Time)、生存時(shí)間(Survival Time)和吞吐量(Throughput):響應(yīng)時(shí)間:是實(shí)時(shí)系統(tǒng)從識(shí)別出一個(gè)外部事件到做出響應(yīng)的時(shí)間;

  生存時(shí)間:是數(shù)據(jù)的有效等待時(shí)間,數(shù)據(jù)只有在這段時(shí)間內(nèi)才是有效的;

  吞吐量:是在給定的時(shí)間內(nèi)系統(tǒng)能夠處理的事件總數(shù),吞吐量通常比平均響應(yīng)時(shí)間的倒數(shù)要小一點(diǎn)。

  其中響應(yīng)時(shí)間是系統(tǒng)實(shí)時(shí)性最直觀、最重要的指標(biāo)。而系統(tǒng)響應(yīng)時(shí)間與任務(wù)切換時(shí)間、中斷延遲和調(diào)度延遲都有關(guān)系。μC/OS-Ⅱ的中斷處理程序中不需要關(guān)中斷,它的關(guān)中斷主要發(fā)生在一些原子操作和代碼臨界區(qū)保護(hù)的時(shí)候,并且都非常短,因此μC/OS-Ⅱ的中斷延遲很短。

  μC/OS-Ⅱ是基于優(yōu)先級(jí)的“可剝奪”式內(nèi)核,而且內(nèi)核的調(diào)度算法非常簡(jiǎn)單,因此μC/OS-Ⅱ調(diào)度延遲比較短且可以預(yù)測(cè)適應(yīng)實(shí)時(shí)應(yīng)用的要求。

  關(guān)于上下文切換時(shí)間,由于μC/OS-Ⅱ的任務(wù)都有單獨(dú)的堆棧,因而任務(wù)的切換操作非常簡(jiǎn)單,由10多條CPU指令就可完成,因此μC/OS-Ⅱ任務(wù)切換產(chǎn)生的延遲很小且是可以預(yù)測(cè)的。

  3.2.2 μC/OS-Ⅱ在AT91RM9200中的移植實(shí)現(xiàn)

  μC/OS-Ⅱ的移植條件是:該處理器有堆棧,有CPU內(nèi)部寄存器入棧、出棧指令;使用的C編譯器支持內(nèi)嵌匯編(inline asseInbly)或者該C語(yǔ)言可擴(kuò)展,可連接匯編模塊,使得關(guān)中斷、開(kāi)中斷能在C語(yǔ)言程序中實(shí)現(xiàn)。

  AT91 RM9200符合其移植條件。μC/OS-Ⅱ的移植集中在3個(gè)文件,頭文件os_cpu.h,匯編文件os_cup_a.s,C代碼文件os_cpu_c.c。其中os_cpu.h主要包含編譯器相關(guān)的數(shù)據(jù)類型的定義、堆棧類型的定義以及幾個(gè)宏定義和函數(shù)說(shuō)明。而os_cpu_c.c中則包含與移植有關(guān)的c函數(shù),包括堆棧的初始化函數(shù)和一些鉤子(hook)函數(shù)的實(shí)現(xiàn)。os_cpu-a.s中則包含與移植有關(guān)的匯編語(yǔ)言函數(shù),包括開(kāi)/關(guān)中斷、上下文切換、時(shí)鐘中斷服務(wù)程序等。移植中關(guān)鍵的功能模塊實(shí)現(xiàn)如以下所述。

  移植工作包括以下幾個(gè)內(nèi)容:①用繃efine設(shè)置一個(gè)常量的值(OS-CPU.H);②聲明數(shù)據(jù)類型(OS-CPU.H);③用#define聲明三個(gè)宏(.H);④用c語(yǔ)言編寫(xiě)六個(gè)簡(jiǎn)單的函數(shù)(OS—CPIJ-C.C);⑤編寫(xiě)四個(gè)匯編語(yǔ)言函數(shù)(OS-CPU_ASM)。

  3.3 軟件結(jié)構(gòu)設(shè)計(jì)

  在軟件設(shè)計(jì)時(shí),盡量使軟件和硬件脫離,改變傳統(tǒng)的嵌入式軟件過(guò)多依賴硬件的模式。針對(duì)保護(hù)裝置的實(shí)際情況,把整個(gè)系統(tǒng)分成保護(hù)、A/D采樣、自檢、顯示、通信等幾個(gè)任務(wù),劃分原則是在考慮系統(tǒng)實(shí)時(shí)性和軟件效率的前提下盡量減少任務(wù)間的耦合,使功能清晰。任務(wù)確定以后,賦予每個(gè)任務(wù)唯一的ID號(hào),并按照實(shí)時(shí)性要求對(duì)各個(gè)任務(wù)指定i其優(yōu)先級(jí),本設(shè)計(jì)中把保護(hù)任務(wù)設(shè)置成較高優(yōu)先級(jí)。進(jìn)入運(yùn)行狀態(tài)后,在主任務(wù)中啟動(dòng)其他任務(wù),例如顯示、A/D采樣、通信等。在這些任務(wù)中又可啟動(dòng)另外的任務(wù)。設(shè)計(jì)中的任務(wù)調(diào)度機(jī)制采用優(yōu)先級(jí)調(diào)度模式:CPU被分配給最高優(yōu)先級(jí)任務(wù),如果幾個(gè)任務(wù)優(yōu)先級(jí)相同,CPU就被分配給最先進(jìn)入就緒隊(duì)列的任務(wù)。如果一個(gè)任務(wù)在執(zhí)行過(guò)程中,另外一個(gè)優(yōu)先級(jí)更高的任務(wù)進(jìn)入就緒狀態(tài),則原來(lái)正在進(jìn)行的任務(wù)進(jìn)入就緒狀態(tài),新任務(wù)進(jìn)入運(yùn)行狀態(tài)。

  μC/OS-Ⅱ最多可支持56個(gè)任務(wù)。實(shí)現(xiàn)各種功能的保護(hù)程序按照功能劃分成了一個(gè)個(gè)的任務(wù),每一種任務(wù)實(shí)現(xiàn)一種功能,任務(wù)之間相互獨(dú)立,只通過(guò)實(shí)時(shí)操作系統(tǒng)R1DS(Real—Time Operating System)機(jī)制交換信息。這從根本上保證了軟件的可靠性和實(shí)時(shí)性。

  4 結(jié)束語(yǔ)

  隨著ARM處理器技術(shù)的不斷發(fā)展和應(yīng)用的不斷推廣,ARM處理器在電力系統(tǒng)中必將得到更廣泛的應(yīng)用。而嵌入式實(shí)時(shí)操作系統(tǒng)RTOS在微機(jī)保護(hù)的應(yīng)用,為實(shí)現(xiàn)復(fù)雜的保護(hù)功能提供了可能。文中討論的基于嵌入式AT9lRM9200微處理器的微機(jī)保護(hù)裝置已完成現(xiàn)場(chǎng)調(diào)試,初步試運(yùn)行效果表明,該設(shè)計(jì)是成功的,受到用戶方的認(rèn)可,有望得到大力推廣。

(轉(zhuǎn)載)

標(biāo)簽:嵌入式系統(tǒng) 運(yùn)動(dòng)控制 電機(jī) 我要反饋 
2024世界人工智能大會(huì)專題
即刻點(diǎn)擊并下載ABB資料,好禮贏不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專題報(bào)道