咨詢熱線:021-80392549

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

放大字體  縮小字體 發(fā)布日期:2014-10-21     來源:[標(biāo)簽:出處]     作者:[標(biāo)簽:作者]     瀏覽次數(shù):91
核心提示:

  摘 要:本文介紹了一種基于us/OS-II嵌入式操作系統(tǒng)和TMS320LF2407A DSP的低壓斷路器新型智能控制器的設(shè)計,對us/OS-II嵌入式操作系統(tǒng)、嵌入式系統(tǒng)的硬件設(shè)計和軟件開發(fā)進行了介紹,并對us/OS-II在TMS320LF2407A芯片上的移植進行了重點介紹。樣機現(xiàn)場試驗表明,該控制器可靠性高,試驗結(jié)果達(dá)到預(yù)期的設(shè)計要求,具有廣闊的應(yīng)用前景。

  0. 引言

  斷路器的智能操作是斷路器智能化發(fā)展過程中的一個全新的概念。智能控制器是實現(xiàn)智能操作的核心部件[1],其基本任務(wù)是通過對電網(wǎng)參數(shù)的采集和處理,給出相應(yīng)的控制信息。此外,智能控制器通過現(xiàn)場總線可以和計算機連接,進行遠(yuǎn)程監(jiān)控管理。智能控制器的核心部分是軟件設(shè)計。目前,我國的大多數(shù)控制器的軟件設(shè)計都是采用主循環(huán)程序和中斷服務(wù)程序相配合的設(shè)計方法。而近年來嵌入式系統(tǒng)的使用越來越成熟,其中us/OS-II嵌入式操作系統(tǒng)由于源代碼公開化,內(nèi)核體積小,可移植性好等原因,受到廣泛的應(yīng)用。本文采用了TI公司的DSP芯片TMS320LF2407A作為嵌入式系統(tǒng)硬件,將us/OS-II嵌入式操作系統(tǒng)移植到DSP芯片中,提高了系統(tǒng)的運行效率和可靠性。


  1. us/OS-II嵌入式操作系統(tǒng)

  嵌入式系統(tǒng)是執(zhí)行專用功能并被內(nèi)部計算機控制的設(shè)備或系統(tǒng),操作系統(tǒng)以及應(yīng)用軟件集成于計算機硬件系統(tǒng)之中,即系統(tǒng)的應(yīng)用軟件和系統(tǒng)的硬件一體化,嵌入式系統(tǒng)具有軟件代碼少,高度自動化,響應(yīng)速度快等特點,特別是適合于要求實時和多任務(wù)處理的情況。

  us/OS-II嵌入式操作系統(tǒng)是一個完整的、源代碼公開的、可移植的、固化的、可裁剪的占先式實時多任務(wù)內(nèi)核,它是一種不可剝奪型內(nèi)核,所以在任務(wù)調(diào)度是必須先設(shè)定任務(wù)的優(yōu)先級。us/OS-II包括以下幾個部分:內(nèi)核管理、任務(wù)管理、時間管理、事件控制塊、信號量管理、郵箱管理等。

  us/OS-II中創(chuàng)建的任務(wù)有5種狀態(tài)[2],分別是:睡眠態(tài)、等待態(tài)、就緒態(tài)、運行態(tài)、中斷服務(wù)態(tài)。us/OS-II是占先式內(nèi)核,每個任務(wù)都要設(shè)置優(yōu)先級,優(yōu)先級最高的任務(wù)可以先進入CPU運行,其它任務(wù)只能先在就緒狀態(tài)中等待。us/OS-II最多可以創(chuàng)建多達(dá)64個任務(wù)(實際可以使用的是56個,因為前4個和后4個任務(wù)優(yōu)先級被保留做系統(tǒng)升級用)。

  2. 嵌入式系統(tǒng)的硬件設(shè)計


  2.1 智能控制器總體結(jié)構(gòu)及工作原理

  智能控制器硬件系統(tǒng)的總體結(jié)構(gòu)如圖1所示。該控制器的主要任務(wù)是采集電網(wǎng)上的電流和電壓信號,經(jīng)過信號處理電路的調(diào)理后,使信號變換成DSP的輸入標(biāo)準(zhǔn)電壓0到3.3V,DSP控制器通過對采集來的信號進行分析,正確的發(fā)出動作指令,并通過CAN總線向監(jiān)控計算機發(fā)送相關(guān)數(shù)據(jù),實現(xiàn)遠(yuǎn)程監(jiān)控管理。系統(tǒng)構(gòu)成主要包括DSP及其外圍電路所構(gòu)成的最小系統(tǒng)、A/D信號采集與處理電路,液晶顯示電路,電源,脫扣電路等部分。DSP的外圍電路包括晶振、濾波回路和片外RAM連接選擇存儲空間時使用的一些門電路。

  2.2 TMS320LF2407A芯片及其開發(fā)環(huán)境CCS2.2簡介

  TMS320LF2407A是專為基于控制的應(yīng)用而設(shè)計的,它將高性能的DSP內(nèi)核和豐富的微控制器的外設(shè)集成于單片中,從而成為傳統(tǒng)的微控制器的理想替代。TMS320LF2407A DSP控制器的外設(shè)包括[3]:①事件管理器②CAN接口③A/D通道模數(shù)轉(zhuǎn)換④SPI串行外設(shè)接口⑤SCI串行通信接口⑥通用雙向I/O引腳。CCS2.2是CCS系列中的最新版本,有很多既方便又強大的功能。主要包括:①支持同時載入多個工程文件②增加了單步調(diào)試命令③編譯器有所加強,對語法的檢查更加嚴(yán)格④通過建立庫工程,支持編譯函數(shù)文件成為庫文件

  3. 嵌入式系統(tǒng)的軟件設(shè)計

  3.1 us/OS-II在2407上的移植

  us/OS-II在2407上的實現(xiàn)移植是嵌入式系統(tǒng)軟件設(shè)計的關(guān)鍵所在,主要工作是對移植相關(guān)的OS_CPU.H,OS_CPU_A.ASM,OS_CPU_C.C三個文件的編寫以及對OS_CFG.H配置的正確設(shè)定。

  在對OS_CFG.H配置中根據(jù)嵌入式實時系統(tǒng)的實際需要,對最低優(yōu)先級OS_LOWEST_PRIO、最多任務(wù)控制塊OS_MAX_EVENTS、最多任務(wù)數(shù)OS_MAX_TASKS進行設(shè)置,對需要使用的功能進行選擇置位。

  對OS_CPU.H文件的編寫主要包括對以下4個宏進行設(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編語言,所以本文設(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ù)切換其實就是將原來任務(wù)的相關(guān)寄存器值入棧保存,以便以后這個任務(wù)被再次調(diào)用時可以恢復(fù)原先的相關(guān)寄存器值。本文設(shè)置OS_TASK_SW()作為中斷調(diào)用軟中斷指令OSCtxSw。

  對OS_CPU_C.C文件的編寫包括編寫以下10個C語言函數(shù):

 、 OSTaskStkInit()② OSTaskCreatHook()③ OSTaskDelHook()④ OSTaskSwHook()

 、 OSTaskIdleHook()⑥ OSTaskStatHook()⑦ OSTimeTickHook()⑧ OSIintHookBegin()


 、 OSInitHookEnd()⑩ OSTCBInitHook()
  在本文的實時

工博士工業(yè)品商城聲明:凡資訊來源注明為其他媒體來源的信息,均為轉(zhuǎn)載自其他媒體,并不代表本網(wǎng)站贊同其觀點,也不代表本網(wǎng)站對其真實性負(fù)責(zé)。您若對該文章內(nèi)容有任何疑問或質(zhì)疑,請立即與商城(www.podvhdv.cn)聯(lián)系,本網(wǎng)站將迅速給您回應(yīng)并做處理。
聯(lián)系電話:021-31666777
新聞、技術(shù)文章投稿QQ:3267146135  投稿郵箱:syy@gongboshi.com