技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于us/OS-II操作系統(tǒng)的斷路器控制器研制

基于us/OS-II操作系統(tǒng)的斷路器控制器研制

時(shí)間:2009-05-15 11:36:00來(lái)源:ronggang

導(dǎo)語(yǔ):?本文介紹了一種基于us/OS-II嵌入式操作系統(tǒng)和TMS320LF2407A DSP的低壓斷路器新型智能控制器的設(shè)計(jì)
摘 要:本文介紹了一種基于us/OS-II嵌入式操作系統(tǒng)和TMS320LF2407A DSP的低壓斷路器新型智能控制器的設(shè)計(jì),對(duì)us/OS-II嵌入式操作系統(tǒng)、嵌入式系統(tǒng)的硬件設(shè)計(jì)和軟件開發(fā)進(jìn)行了介紹,并對(duì)us/OS-II在TMS320LF2407A芯片上的移植進(jìn)行了重點(diǎn)介紹。樣機(jī)現(xiàn)場(chǎng)試驗(yàn)表明,該控制器可靠性高,試驗(yàn)結(jié)果達(dá)到預(yù)期的設(shè)計(jì)要求,具有廣闊的應(yīng)用前景。 關(guān)鍵詞:us/OS-II, 嵌入式,斷路器,智能控制器 Abstract: the design of a new intelligent controller for low voltage circuit breaker based on us/OS-II embedded operate system and TMS320LF2407A DSP is presented, the us/OS-II embedded operate system and the design of hardware and software of embedded system are introduced, especially, the design of transplant from us/OS-II to TMS320LF2407A is introduced in detail. The results of industrial tests show that this intelligent controller has high reliability, the results of experiment has achieve to anticipation request. It can be widely applicated. Keyword: us/os- II, Embedded, Circuit Breaker, Intelligent Controller 0. 引言   斷路器的智能操作是斷路器智能化發(fā)展過(guò)程中的一個(gè)全新的概念。智能控制器是實(shí)現(xiàn)智能操作的核心部件[1],其基本任務(wù)是通過(guò)對(duì)電網(wǎng)參數(shù)的采集和處理,給出相應(yīng)的控制信息。此外,智能控制器通過(guò)現(xiàn)場(chǎng)總線可以和計(jì)算機(jī)連接,進(jìn)行遠(yuǎn)程監(jiān)控管理。智能控制器的核心部分是軟件設(shè)計(jì)。目前,我國(guó)的大多數(shù)控制器的軟件設(shè)計(jì)都是采用主循環(huán)程序和中斷服務(wù)程序相配合的設(shè)計(jì)方法。而近年來(lái)嵌入式系統(tǒng)的使用越來(lái)越成熟,其中us/OS-II嵌入式操作系統(tǒng)由于源代碼公開化,內(nèi)核體積小,可移植性好等原因,受到廣泛的應(yīng)用。本文采用了TI公司的DSP芯片TMS320LF2407A作為嵌入式系統(tǒng)硬件,將us/OS-II嵌入式操作系統(tǒng)移植到DSP芯片中,提高了系統(tǒng)的運(yùn)行效率和可靠性。 1. us/OS-II嵌入式操作系統(tǒng)   嵌入式系統(tǒng)是執(zhí)行專用功能并被內(nèi)部計(jì)算機(jī)控制的設(shè)備或系統(tǒng),操作系統(tǒng)以及應(yīng)用軟件集成于計(jì)算機(jī)硬件系統(tǒng)之中,即系統(tǒng)的應(yīng)用軟件和系統(tǒng)的硬件一體化,嵌入式系統(tǒng)具有軟件代碼少,高度自動(dòng)化,響應(yīng)速度快等特點(diǎn),特別是適合于要求實(shí)時(shí)和多任務(wù)處理的情況。   us/OS-II嵌入式操作系統(tǒng)是一個(gè)完整的、源代碼公開的、可移植的、固化的、可裁剪的占先式實(shí)時(shí)多任務(wù)內(nèi)核,它是一種不可剝奪型內(nèi)核,所以在任務(wù)調(diào)度是必須先設(shè)定任務(wù)的優(yōu)先級(jí)。us/OS-II包括以下幾個(gè)部分:內(nèi)核管理、任務(wù)管理、時(shí)間管理、事件控制塊、信號(hào)量管理、郵箱管理等。   us/OS-II中創(chuàng)建的任務(wù)有5種狀態(tài)[2],分別是:睡眠態(tài)、等待態(tài)、就緒態(tài)、運(yùn)行態(tài)、中斷服務(wù)態(tài)。us/OS-II是占先式內(nèi)核,每個(gè)任務(wù)都要設(shè)置優(yōu)先級(jí),優(yōu)先級(jí)最高的任務(wù)可以先進(jìn)入CPU運(yùn)行,其它任務(wù)只能先在就緒狀態(tài)中等待。us/OS-II最多可以創(chuàng)建多達(dá)64個(gè)任務(wù)(實(shí)際可以使用的是56個(gè),因?yàn)榍?個(gè)和后4個(gè)任務(wù)優(yōu)先級(jí)被保留做系統(tǒng)升級(jí)用)。 2. 嵌入式系統(tǒng)的硬件設(shè)計(jì)   2.1 智能控制器總體結(jié)構(gòu)及工作原理   智能控制器硬件系統(tǒng)的總體結(jié)構(gòu)如圖1所示。該控制器的主要任務(wù)是采集電網(wǎng)上的電流和電壓信號(hào),經(jīng)過(guò)信號(hào)處理電路的調(diào)理后,使信號(hào)變換成DSP的輸入標(biāo)準(zhǔn)電壓0到3.3V,DSP控制器通過(guò)對(duì)采集來(lái)的信號(hào)進(jìn)行分析,正確的發(fā)出動(dòng)作指令,并通過(guò)CAN總線向監(jiān)控計(jì)算機(jī)發(fā)送相關(guān)數(shù)據(jù),實(shí)現(xiàn)遠(yuǎn)程監(jiān)控管理。系統(tǒng)構(gòu)成主要包括DSP及其外圍電路所構(gòu)成的最小系統(tǒng)、A/D信號(hào)采集與處理電路,液晶顯示電路,電源,脫扣電路等部分。DSP的外圍電路包括晶振、濾波回路和片外RAM連接選擇存儲(chǔ)空間時(shí)使用的一些門電路。
  2.2 TMS320LF2407A芯片及其開發(fā)環(huán)境CCS2.2簡(jiǎn)介   TMS320LF2407A是專為基于控制的應(yīng)用而設(shè)計(jì)的,它將高性能的DSP內(nèi)核和豐富的微控制器的外設(shè)集成于單片中,從而成為傳統(tǒng)的微控制器的理想替代。TMS320LF2407A DSP控制器的外設(shè)包括[3]:①事件管理器②CAN接口③A/D通道模數(shù)轉(zhuǎn)換④SPI串行外設(shè)接口⑤SCI串行通信接口⑥通用雙向I/O引腳。CCS2.2是CCS系列中的最新版本,有很多既方便又強(qiáng)大的功能。主要包括:①支持同時(shí)載入多個(gè)工程文件②增加了單步調(diào)試命令③編譯器有所加強(qiáng),對(duì)語(yǔ)法的檢查更加嚴(yán)格④通過(guò)建立庫(kù)工程,支持編譯函數(shù)文件成為庫(kù)文件 3. 嵌入式系統(tǒng)的軟件設(shè)計(jì)   3.1 us/OS-II在2407上的移植   us/OS-II在2407上的實(shí)現(xiàn)移植是嵌入式系統(tǒng)軟件設(shè)計(jì)的關(guān)鍵所在,主要工作是對(duì)移植相關(guān)的OS_CPU.H,OS_CPU_A.ASM,OS_CPU_C.C三個(gè)文件的編寫以及對(duì)OS_CFG.H配置的正確設(shè)定。   在對(duì)OS_CFG.H配置中根據(jù)嵌入式實(shí)時(shí)系統(tǒng)的實(shí)際需要,對(duì)最低優(yōu)先級(jí)OS_LOWEST_PRIO、最多任務(wù)控制塊OS_MAX_EVENTS、最多任務(wù)數(shù)OS_MAX_TASKS進(jìn)行設(shè)置,對(duì)需要使用的功能進(jìn)行選擇置位。   對(duì)OS_CPU.H文件的編寫主要包括對(duì)以下4個(gè)宏進(jìn)行設(shè)置:  ?、?OS_ENTER_CRITICAL()  ?、?OS_EXIT_ CRITICAL()  ?、?OS_STK_GROWTH  ?、?OS_TASK_SW()   其中,OS_ENTER_CRITICAL()和OS_EXIT_ CRITICAL()是關(guān)于關(guān)中斷和開中斷的設(shè)置,由于在TMS320LF2407A中C編譯器可以嵌入?yún)R編語(yǔ)言,所以本文設(shè)置:   #define OS_ENTER_CRITICAL() asm(" SETC INTM") //關(guān)中斷   #define OS_EXIT_CRITICAL() asm(" CLRC INTM") //開中斷   OS_STK_GROWTH是關(guān)于堆棧的使用方式,由于TMS320LF2407A中堆棧是從低地址向高地址遞增的,所以本文設(shè)置:   #define OS_STK_GROWTH 0   OS_TASK_SW()是在任務(wù)切換中使用的,任務(wù)切換其實(shí)就是將原來(lái)任務(wù)的相關(guān)寄存器值入棧保存,以便以后這個(gè)任務(wù)被再次調(diào)用時(shí)可以恢復(fù)原先的相關(guān)寄存器值。本文設(shè)置OS_TASK_SW()作為中斷調(diào)用軟中斷指令OSCtxSw。   對(duì)OS_CPU_C.C文件的編寫包括編寫以下10個(gè)C語(yǔ)言函數(shù):  ?、?OSTaskStkInit()② OSTaskCreatHook()③ OSTaskDelHook()④ OSTaskSwHook()   ⑤ OSTaskIdleHook()⑥ OSTaskStatHook()⑦ OSTimeTickHook()⑧ OSIintHookBegin()  ?、?OSInitHookEnd()⑩ OSTCBInitHook()   在本文的實(shí)時(shí)嵌入式系統(tǒng)設(shè)計(jì)中,只對(duì)OSTaskStkInit()函數(shù)進(jìn)行了編寫,OSTaskStkInit()函數(shù)的作用是初始化任務(wù)的棧結(jié)構(gòu),將任務(wù)所有寄存器的值都保存到堆棧中。OSTaskStkInit()函數(shù)的示意性代碼如下所示。   OS_STK *OSTaskStkInit(void (*task)(void *pd),   void *pdata,   OS_STK *ptos,   INT16U opt)  ?。?   opt = opt;  ?。猵tos++ = (OS_STK)pdata; /* augument */  ?。猵tos++ = (OS_STK)0; /* blank */   *ptos++ = (OS_STK)0x27FC;/* ST1 */  ?。猵tos++ = (OS_STK)0x2600;/* ST0 */  ?。猵tos++ = (OS_STK)0; /* ACCH */  ?。猵tos++ = (OS_STK)0; /* ACCL */  ?。猵tos++ = (OS_STK)0; /* PH */  ?。猵tos++ = (OS_STK)0; /* PL */   *ptos++ = (OS_STK)0; /* T */  ?。猵tos++ = (OS_STK)0; /* AR0 */   *ptos++ = (OS_STK)0; /* AR2 */  ?。猵tos++ = (OS_STK)0; /* AR3 */   *ptos++ = (OS_STK)0; /* AR4 */  ?。猵tos++ = (OS_STK)0; /* AR5 */  ?。猵tos++ = (OS_STK)0; /* AR6 */  ?。猵tos++ = (OS_STK)0; /* AR7 */   … … …   return ptos;  ?。?   其余9個(gè)C語(yǔ)言函數(shù)只進(jìn)行了聲明,沒(méi)有包含代碼或者為了防止C編譯器誤發(fā)警告只編寫了簡(jiǎn)單的指針自我賦值程序。   對(duì)OS_CPU_A.ASM文件的編寫包括編寫以下4個(gè)匯編語(yǔ)言函數(shù):  ?、?OSStartHighRdy()② OSCtxSw()③ OSIntCtxSw()④ OSTickISR()   其中,調(diào)用OSStartHighRdy()是用來(lái)使就緒態(tài)任務(wù)中優(yōu)先級(jí)最高的任務(wù)開始運(yùn)行。OSCtxSw()是用來(lái)實(shí)現(xiàn)任務(wù)切換,中斷服務(wù)子程序、陷阱或異常處理的向量地址必須指向OSCtxSw()。OSIntCtxSw()也是用來(lái)實(shí)現(xiàn)任務(wù)切換的,所不同的是OSIntCtxSw()是在中斷服務(wù)程序中實(shí)現(xiàn)任務(wù)切換。OSTickISR()是用來(lái)實(shí)現(xiàn)時(shí)鐘節(jié)拍功能。   將以上這些函數(shù)編寫好以后,如果能編譯通過(guò)并且裝載入2407或外部RAM中,則說(shuō)明us/OS-II在2407上移植成功。移植成功以后就要進(jìn)行測(cè)試,可以編寫例如點(diǎn)亮指示燈這樣的小程序作為任務(wù),裝載入DSP運(yùn)行,如果運(yùn)行成功,就在此程序基礎(chǔ)上進(jìn)行嵌入式系統(tǒng)的軟件開發(fā)。   3.2 智能控制器軟件設(shè)計(jì)   本文在進(jìn)行軟件設(shè)計(jì)時(shí)根據(jù)需要,編寫了以下幾個(gè)功能程序,主要包括液晶顯示程序、A/D采樣轉(zhuǎn)換程序、保護(hù)算法、瞬動(dòng)判斷保護(hù)程序、濾波算法及有效值計(jì)算、CAN通信的發(fā)送和接受等[4]。在各個(gè)功能程序編寫好以后,創(chuàng)建多個(gè)任務(wù),每個(gè)任務(wù)包含一個(gè)功能程序。對(duì)各個(gè)任務(wù)要根據(jù)不同的實(shí)際情況賦予不同的優(yōu)先級(jí),其中A/D采樣轉(zhuǎn)換和瞬動(dòng)判斷保護(hù)由于對(duì)實(shí)時(shí)性的要求比較高,應(yīng)賦予較高的優(yōu)先權(quán),液晶顯示由于為了人們讀取的視覺(jué)需要,延時(shí)時(shí)間比較長(zhǎng),賦予的優(yōu)先權(quán)最低。任務(wù)優(yōu)先級(jí)的安排如下:   A/D采樣轉(zhuǎn)換程序 > 瞬動(dòng)判斷保護(hù)程序 > 濾波算法及有效值計(jì)算 > 保護(hù)算法> CAN通信的發(fā)送和接受 > 液晶顯示   任務(wù)通過(guò)函數(shù)OSTaskCreateExt()來(lái)創(chuàng)建,創(chuàng)建一個(gè)任務(wù)的示例代碼如下:   //創(chuàng)建任務(wù):   INT8U OSTaskCreate (void (*task) (void *pd), void *pdata, OS_STK *ptos, INT8U prio)   其中task是指向任務(wù)代碼的指針;pdata是任務(wù)開始執(zhí)行時(shí),傳遞給任務(wù)的參數(shù)指針;ptos是分配給任務(wù)的堆棧的棧頂指針;prio是分配給任務(wù)的優(yōu)先級(jí)。   //任務(wù)示例代碼:   void Task (void *pdata)   { While (1)  ?。?***根據(jù)實(shí)際功能編寫的代碼**/   OSTimeDly(INT16U ticks); //任務(wù)延時(shí)  ?。?   }   當(dāng)任務(wù)被剝奪CPU的使用后,us/OS-II用任務(wù)控制塊OS_TCB來(lái)保存該任務(wù)的狀態(tài)。 4. 實(shí)驗(yàn)   本文設(shè)計(jì)的實(shí)驗(yàn)樣機(jī)首先在實(shí)驗(yàn)室進(jìn)行調(diào)試,然后再到企業(yè)試驗(yàn)站進(jìn)行現(xiàn)場(chǎng)調(diào)試。主要試驗(yàn)項(xiàng)目包括液晶顯示、測(cè)量、保護(hù)特性測(cè)試、上位機(jī)和控制器之間的CAN總線通信等。試驗(yàn)結(jié)果表明:本文設(shè)計(jì)的智能控制器實(shí)現(xiàn)了測(cè)量、保護(hù)、通信和監(jiān)控等功能,實(shí)時(shí)性好,指標(biāo)達(dá)到預(yù)期要求。 5. 結(jié)束語(yǔ)   本文為了實(shí)現(xiàn)低壓斷路器的可通信與智能化,研制了一種基于DSP和嵌入式實(shí)時(shí)操作系統(tǒng)us/OS-II的新型智能控制器,不僅實(shí)現(xiàn)了斷路器的基本功能,而且由于采用了us/OS-II嵌入式實(shí)時(shí)操作系統(tǒng),提高了DSP的運(yùn)行效率和控制器的可靠性。 參考文獻(xiàn):   [1] 包建榮,厲魯衛(wèi). 基于單片機(jī)嵌入式網(wǎng)絡(luò)接入模塊的設(shè)計(jì)與實(shí)現(xiàn).   [2] Jean J.Labrosse著,邵貝貝等譯. 嵌入式實(shí)時(shí)操作系統(tǒng)us/OS-II(第2版).北京:北京航空航天大學(xué)出版社.2003版   [3] TI公司著,徐科軍等譯. TMS320LF/LC24系列DSP的CPU與外設(shè). 北京:清華大學(xué)出版社.2004版   [4] 劉和平,嚴(yán)利平等. TMS320LF240x DSP 結(jié)構(gòu)、原理及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社. 2002,4.

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:霍爾傳感器在Buck型EBW高壓穩(wěn)...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)