基于μC/OSⅡ的分布式應(yīng)急電源控制系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
關(guān)鍵詞: DSP、μC/OS-Ⅱ、應(yīng)急電源
1 引言
隨著社會(huì)的發(fā)展,對(duì)供電可靠性的要求越來(lái)越高,一旦某些重要設(shè)施供電系統(tǒng)突然發(fā)生故障而中斷供電,將會(huì)破壞社會(huì)的正常秩序,甚至造成重大的政治影響和經(jīng)濟(jì)損失。然而,電力故障突發(fā)性強(qiáng),斷電情況必須考慮,因此就需要做到電源的不間斷,即供電線路停電時(shí)由備用電源供電。應(yīng)急電源又稱(chēng)EPS(Emergency Power System)具有下述優(yōu)點(diǎn):(1)電網(wǎng)有電時(shí),處于靜態(tài),無(wú)噪音;供電時(shí),噪音小于60dB。不需排煙和防震處理,具有節(jié)能、無(wú)公害、無(wú)火災(zāi)隱患的特點(diǎn);(2)自動(dòng)切換,可實(shí)現(xiàn)無(wú)人值守,電網(wǎng)供電與EPS電源供電相互切換時(shí)間均為0.1~0.25s;(3)帶載能力強(qiáng),EPS適應(yīng)于電感性電容性、及綜合性負(fù)載的設(shè)備,如電梯、水泵、風(fēng)機(jī)辦公自動(dòng)化設(shè)備、應(yīng)急照明等;(4)使用可靠。主機(jī)壽命長(zhǎng)達(dá)20年以上;(5)適應(yīng)惡劣環(huán)境??煞胖糜诘叵率一蚺潆娛遥部删o靠應(yīng)急負(fù)荷使用場(chǎng)所就地設(shè)置以減少供電線路。
2 工作原理
圖1 EPS原理圖
(1)當(dāng)三相市電正常時(shí),EPS一路直接為負(fù)載供電,一路經(jīng)過(guò)充電機(jī)給蓄電池組充電;
(2)當(dāng)三相市電異常時(shí),EPS的檢測(cè)裝置立即發(fā)出指令,0.1秒內(nèi)由蓄電池組的直流電經(jīng)過(guò)逆變裝置輸出三相交流電源給負(fù)載供電,供電時(shí)間為90分鐘;
(3)EPS供電過(guò)程中,如三相市電恢復(fù)正常,EPS的檢測(cè)裝置立即發(fā)出指令,0.1秒內(nèi)恢復(fù)到(1)的工作狀態(tài);
(4)EPS提供遠(yuǎn)程強(qiáng)制啟動(dòng)干接點(diǎn)(DC24V),如檢測(cè)到DC24V電源輸入,EPS會(huì)強(qiáng)制切換至應(yīng)急輸出,自動(dòng)切換不起作用;無(wú)電時(shí),EPS工作在自動(dòng)切換狀態(tài)。
3 DSP硬件設(shè)計(jì)
本系統(tǒng)采用TI公司的TMS320F240型DSP器件作為主要控制芯片,該DSP芯片指令執(zhí)行速度快,內(nèi)嵌Flash ROM和RAM,內(nèi)部的事務(wù)管理模塊可以輸出多路PWM波,同時(shí)內(nèi)含8路10位A/D通道及大量I/O端口,因此由它來(lái)構(gòu)建數(shù)字控制系統(tǒng)時(shí),硬件電路大大簡(jiǎn)化。
以DSP芯片TMS320LF2407為核心的硬件電路設(shè)計(jì)主要包括:
(1)應(yīng)急電源對(duì)電壓的采樣是通過(guò)差分電路實(shí)現(xiàn)的。圖2示出電壓采樣的差分電路。對(duì)電流的采樣是通過(guò)霍爾電流傳感器經(jīng)過(guò)濾波、電平調(diào)整后實(shí)現(xiàn)的。本設(shè)計(jì)中,交流量需計(jì)算其有效值,是通過(guò)對(duì)瞬時(shí)采樣值的整流、濾波實(shí)現(xiàn)的。[2]
圖2 電壓采樣的差分電路
(2)DSP對(duì)充電控制采用EVA模塊的定時(shí)器1的PWM比較輸出,對(duì)逆變控制采用EVA模塊的比較單元1和比較單元2的比較輸出。通過(guò)專(zhuān)用驅(qū)動(dòng)模塊2SD315A為核心元件的驅(qū)動(dòng)電
路來(lái)驅(qū)動(dòng)IGBT。2SD315A驅(qū)動(dòng)模塊具有結(jié)構(gòu)緊湊,使用簡(jiǎn)單,可靠,隔離電壓高等優(yōu)點(diǎn)。用兩個(gè)2SD315A模塊來(lái)驅(qū)動(dòng)主電路的H橋,只需外加很少的外部元件。在連接驅(qū)動(dòng)電路與IGBT時(shí),要注意連線不能太長(zhǎng),最好是小于10cm,否則會(huì)使IGBT的驅(qū)動(dòng)信號(hào)受到較大干擾,造成IGBT的誤觸發(fā)。此外,要根據(jù)IGBT的特性參數(shù),選擇合適的集射極保護(hù)電壓及門(mén)極驅(qū)動(dòng)電阻。
(3)DSP通過(guò)通用I/O口采集和輸出各種信號(hào)。消防、開(kāi)機(jī)、強(qiáng)迫逆變、停止、備用等輸入信號(hào),通過(guò)光電隔離電路送至I/O口。繼電器、接觸器的控制信號(hào)由I/O口經(jīng)輔助繼電器輸出。
(4)該應(yīng)急電源對(duì)電池過(guò)壓欠壓、
(5)DSP將采樣電路采集的ic,UH,ib,ub等參數(shù)以及監(jiān)測(cè)到的故障類(lèi)型、系統(tǒng)的工作狀態(tài)通過(guò)CAN總線輸出至上位監(jiān)控系統(tǒng)。
4 軟件設(shè)計(jì)
μC/OS-II是一個(gè)實(shí)時(shí)操作系統(tǒng)的內(nèi)核,它的大部分源代碼都是使用ANSI C寫(xiě)的,有很強(qiáng)的移植性。它的內(nèi)核功能豐富,具有可裁減性,用戶(hù)可根據(jù)自身需要來(lái)配置編譯條件,將實(shí)時(shí)內(nèi)核裁剪到滿足自己功能的最小狀態(tài)。
在本系統(tǒng)中,有針對(duì)的編寫(xiě)了uC/OS- II移植程序及硬件電路的驅(qū)動(dòng)程序。應(yīng)用程序從函數(shù)main()開(kāi)始,main()內(nèi)容如下:
void main(void){
SysInit ();/*系統(tǒng)初始化*/
OSInit();/*初始化u C/OS- II */
OSTaskCreate(TaskStart, (
OSStart();/*開(kāi)始多任務(wù)調(diào)度*/
}
其中,SysInit()對(duì)系統(tǒng)的初始化工作主要包括:建立相關(guān)參數(shù)和變量,設(shè)置各種中斷,以及對(duì)各器件進(jìn)行初始化,OSInit()用于對(duì)uC/Os- II操作系統(tǒng)進(jìn)行初始化。起始任務(wù)TaskStart ()是一個(gè)建立其它任務(wù)的任務(wù)。接著,建立郵箱用于任務(wù)間的通信,再接下來(lái),用OSTaskCreate()函數(shù)建立不同功能的任務(wù):SCI通信任務(wù)SCIComm_Task()、LCD液晶屏刷新任務(wù)LCD_Fresh_Task()、脈寬計(jì)算任務(wù)PW_Calculate_Task()、逆變器輸出電壓采集任務(wù)Vo_Sample_Task()、鍵盤(pán)掃描任務(wù)Key_Scan_Task()、時(shí)鐘更新任務(wù)Time_Fresh_Task()、市電電壓采集以及監(jiān)測(cè)任務(wù)Vi_Sample_Task()。任務(wù)優(yōu)先級(jí)的確定原則是工作頻率越高,任務(wù)的優(yōu)先級(jí)越高。任務(wù)之間的通信是通過(guò)發(fā)送或接受消息、信號(hào)或數(shù)據(jù)隊(duì)列來(lái)實(shí)現(xiàn)的。
另外,uC/OS- II在F2407上的移植和配置的方法如下:
(1)在OS_ CPU.H中定義相關(guān)的宏,聲明能夠識(shí)別的數(shù)據(jù)類(lèi)型和堆棧增長(zhǎng)方向。OS_ CPU C.C中定義以下6個(gè)函數(shù):OSTaskStklnit ( ) 、OSTaskCreateHook()、OSTaskSwHOok()、OST&W_lefook()、OSTaskStatHook()、OST3meT5ckHook()。實(shí)際上真正需要定義的只有OSTaskStklnit(),其余5個(gè)只需聲明,不一定要有實(shí)際內(nèi)容,這5個(gè)函數(shù)都是需要由用戶(hù)定義的接口函數(shù)。
(2)在OS_CPU_A.ASM中修改以下幾個(gè)匯編函數(shù):OSStartHighRdy、OSCtxSw, OS1ntCtxSw,、OSTickISR。OSStarthighRdy的功能是運(yùn)行優(yōu)先級(jí)最高的就緒任務(wù),該函數(shù)由OSStartp函數(shù)調(diào)用,OSStart()的調(diào)用是建立在OSInit()的調(diào)用并且至少已經(jīng)建立一個(gè)任務(wù)的墓礎(chǔ)上的;OSCtxSw是一個(gè)任務(wù)級(jí)的任務(wù)切換函數(shù),該函數(shù)在任務(wù)中調(diào)用;OSIntCtxSw是一個(gè)中斷級(jí)的任務(wù)切換函數(shù);OSCtxSw為時(shí)鐘中斷服務(wù)函數(shù),時(shí)鐘中斷程序負(fù)責(zé)處理所有與定時(shí)相關(guān)的工作,如任務(wù)的延時(shí)、等待等,在時(shí)鐘中斷中將查詢(xún)處于等待狀態(tài)的任務(wù),判斷是否延時(shí)結(jié)束,則將重新進(jìn)行任務(wù)調(diào)度。
(3)在主頭文件INCLUDES.H中增加OS_CPU.H , OS_CPU_C.C和OS_ CPU_A.ASM。因?yàn)镮NCLUDES.H是主頭文件,它將被所有后級(jí)名為.C的文件所包含。在移植時(shí),需要對(duì)該文件進(jìn)行改寫(xiě),在文件末尾增加以下頭文件:
#include #include #include (4)在配置文件OS_CFG.H中,定義最大事件數(shù),最多內(nèi)存分塊數(shù),最多消息隊(duì)列數(shù),最多任務(wù)數(shù),最低任務(wù)優(yōu)先級(jí),是否允許信號(hào)使能,是否允許郵箱使能,是否允許消息隊(duì)列使能,時(shí)鐘節(jié)拍數(shù)以及其他的一些配置。通過(guò)修改這些設(shè)置,可對(duì)uC/OS- II進(jìn)行裁剪,使之適應(yīng)本系統(tǒng)的具體需要。
系統(tǒng)采用中斷方式接收上位機(jī)的指令,采用查詢(xún)方式發(fā)送。當(dāng)上位機(jī)發(fā)出讀數(shù)、啟動(dòng)或停止操作命令后,嵌入式系統(tǒng)將產(chǎn)生中斷,并發(fā)送應(yīng)答信號(hào),然后根據(jù)收到的命令類(lèi)型進(jìn)行相應(yīng)操作。 5 功率變換算法
本系統(tǒng)脈沖寬度計(jì)算采用規(guī)則采樣法,計(jì)算公式如式(1):
(1)
其中Usm為正弦波的幅值,Utm為三角波的幅值,N為載波比。[1]
交變電源的高次諧波幅值為:
(2)
由(2)式可以看出N越大,高次諧波幅值越小?;贗GBT的器件特性,N不能無(wú)限大,取N=400, 則高次諧波幅值Um(n)很容易被濾波器濾去。考慮到處于開(kāi)關(guān)工作狀態(tài)中的IGBT管從開(kāi)通轉(zhuǎn)為截止?fàn)顟B(tài)時(shí),容易產(chǎn)生較長(zhǎng)的“拖尾”現(xiàn)象,并進(jìn)而導(dǎo)致IGBT因瞬時(shí)功耗偏大而影響EPS逆變器的可靠性,因此,在用公式(1)計(jì)算方波的脈寬時(shí),,在系統(tǒng)中加入了反饋環(huán)節(jié),把實(shí)際輸出的電壓經(jīng)采樣送回控制器,用PI調(diào)節(jié)消除系統(tǒng)的靜態(tài)誤差,增加系統(tǒng)的穩(wěn)定性。
6 結(jié)論
本文結(jié)合TMS320LF2407芯片和μC/OS-II實(shí)時(shí)操作系統(tǒng)內(nèi)核的優(yōu)點(diǎn),設(shè)計(jì)出基于DSP和μC/OS-II的應(yīng)急電源控制系統(tǒng)。通過(guò)在DSP
參考文獻(xiàn)
1 李成章. 現(xiàn)代UPS電源及電路圖集.北京:電子工業(yè)出版社,2001.1-182
2 劉和平. TMS320LF240X DSP結(jié)構(gòu)、原理及應(yīng)用[M].北京:北京 航空航天大學(xué)出版社,2002
3 易釗.基于嵌入式系統(tǒng)結(jié)構(gòu)的污水處理控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).湖南大學(xué)碩士論文,2004.
上移植μC/OS-II,系統(tǒng)設(shè)計(jì)的周期得以減少,軟件的可讀性得以提高,從而節(jié)省了系統(tǒng)開(kāi)發(fā)和維護(hù)的費(fèi)用。目前,該系統(tǒng)工程樣機(jī)運(yùn)行平穩(wěn)可靠。