μC/OSⅡ的分布式應(yīng)急電源控制系統(tǒng)設(shè)計
(2)在OS_CPU_A.ASM中修改以下幾個匯編函數(shù):OSStartHighRdy、OSCtxSw, OS1ntCtxSw,、OSTickISR。OSStarthighRdy的功能是運行優(yōu)先級最高的就緒任務(wù),該函數(shù)由OSStartp函數(shù)調(diào)用,OSStart()的調(diào)用是建立在OSInit()的調(diào)用并且至少已經(jīng)建立一個任務(wù)的墓礎(chǔ)上的;OSCtxSw是一個任務(wù)級的任務(wù)切換函數(shù),該函數(shù)在任務(wù)中調(diào)用;OSIntCtxSw是一個中斷級的任務(wù)切換函數(shù);OSCtxSw為時鐘中斷服務(wù)函數(shù),時鐘中斷程序負(fù)責(zé)處理所有與定時相關(guān)的工作,如任務(wù)的延時、等待等,在時鐘中斷中將查詢處于等待狀態(tài)的任務(wù),判斷是否延時結(jié)束,則將重新進行任務(wù)調(diào)度。
(3)在主頭文件INCLUDES.H中增加OS_CPU.H , OS_CPU_C.C和OS_ CPU_A.ASM。因為INCLUDES.H是主頭文件,它將被所有后級名為.C的文件所包含。在移植時,需要對該文件進行改寫,在文件末尾增加以下頭文件:
#include
#include
#include
(4)在配置文件OS_CFG.H中,定義最大事件數(shù),最多內(nèi)存分塊數(shù),最多消息隊列數(shù),最多任務(wù)數(shù),最低任務(wù)優(yōu)先級,是否允許信號使能,是否允許郵箱使能,是否允許消息隊列使能,時鐘節(jié)拍數(shù)以及其他的一些配置。通過修改這些設(shè)置,可對uC/OS- II進行裁剪,使之適應(yīng)本系統(tǒng)的具體需要?!?P> 系統(tǒng)采用中斷方式接收上位機的指令,采用查詢方式發(fā)送。當(dāng)上位機發(fā)出讀數(shù)、啟動或停止操作命令后,嵌入式系統(tǒng)將產(chǎn)生中斷,并發(fā)送應(yīng)答信號,然后根據(jù)收到的命令類型進行相應(yīng)操作?!?P> 5 功率變換算法
本系統(tǒng)脈沖寬度計算采用規(guī)則采樣法,計算公式如式(1):
(1)
其中Usm為正弦波的幅值,Utm為三角波的幅值,N為載波比。[1]
交變電源的高次諧波幅值為:
(2)
由(2)式可以看出N越大,高次諧波幅值越小?;贗GBT的器件特性,N不能無限大,取N=400, 則高次諧波幅值Um(n)很容易被濾波器濾去??紤]到處于開關(guān)工作狀態(tài)中的IGBT管從開通轉(zhuǎn)為截止?fàn)顟B(tài)時,容易產(chǎn)生較長的“拖尾”現(xiàn)象,并進而導(dǎo)致IGBT因瞬時功耗偏大而影響EPS逆變器的可靠性,因此,在用公式(1)計算方波的脈寬時,,在系統(tǒng)中加入了反饋環(huán)節(jié),把實際輸出的電壓經(jīng)采樣送回控制器,用PI調(diào)節(jié)消除系統(tǒng)的靜態(tài)誤差,增加系統(tǒng)的穩(wěn)定性?!?P> 6 結(jié)論
本文結(jié)合TMS320LF2407芯片和μC/OS-II實時操作系統(tǒng)內(nèi)核的優(yōu)點,設(shè)計出基于DSP和μC/OS-II的應(yīng)急電源控制系統(tǒng)。通過在DSP 上移植μC/OS-II,系統(tǒng)設(shè)計的周期得以減少,軟件的可讀性得以提高,從而節(jié)省了系統(tǒng)開發(fā)和維護的費用。目前,該系統(tǒng)工程樣機運行平穩(wěn)可靠?!?P>
評論