袁 滿,韋忠朝,于克訓,馬志源,胡 闖
(強電磁工程與新技術國家重點實驗室(華中科技大學),湖北 武漢430074)
一些大型用電設備在無法聯(lián)接電網(wǎng)的場合使用時,需要大功率移動電源供電.移動電源系統(tǒng)一般由原動機、發(fā)電裝置、儲能裝置、電源變換裝置、總成控制等組成[1],作為可獨立工作的電源系統(tǒng),要求具有自動化程度高、可靠性好、抗干擾能力強的特點,因此實現(xiàn)對移動電源系統(tǒng)的有效控制十分重要.移動電源系統(tǒng)組成復雜,各電源模塊要配合整個電源系統(tǒng)的運行,因此電源各模塊的分散控制與集中管理直接影響到電源的可靠性與效率,于是各種高性能控制芯片被引入到移動電源系統(tǒng)中來了,而數(shù)字信號處理器(DSP)的出現(xiàn)正好適應了這種需求.TMS320F28335系列DSP具有強大的控制和信號處理能力,具有精度高、成本低、功耗小、外設集成度高、數(shù)據(jù)及程序存儲量大和A/D轉換更精確快速等優(yōu)點[2].本文介紹了基于TMS320F28335的一種移動電源控制系統(tǒng)的硬件電路、系統(tǒng)通信軟件設計和簡要控制流程.級模塊之間快速、精確、穩(wěn)定的通信至關重要,其中包括輸入輸出(I/O)通信和控制器局域網(wǎng)(CAN)通信.
圖1 電源控制系統(tǒng)總體結構圖
本移動電源控制器以TMS320F28335DSP芯片為核心,控制的下級模塊包括柴油機控制器、400 Hz中頻電源、24V直流電源,同步發(fā)電機勵磁電源,拖動電機控制器和半控整流器等.另外,為實現(xiàn)遠程操作,與上位PC機的通信模塊也是必須的.本電源控制器(圖1)是整個系統(tǒng)的核心,為了實現(xiàn)對移動電源的實時控制和監(jiān)視,控制器與系統(tǒng)各個下
為了實現(xiàn)對如此多的系統(tǒng)外圍模塊的控制,控制器內部的通信也是至關重要的.作為整個控制系統(tǒng)的大腦,控制器采用DSP為主處理器,以FPGA作為協(xié)處理器,它們之間采用總線的方式進行通信,這樣才能勝任整個系統(tǒng)大批量信號的處理及控制.電源控制器內部框圖如圖2所示.本控制器搭建了通信用CAN外設,通過總線外擴了RAM,還應用SPI串口通信端口外接了EEPROM,外部模擬檢測量經過傳感器檢測后送入DSP的AD口.各類信號的連接主要由FPGA完成,在其內部進行邏輯控制后將數(shù)據(jù)傳送給DSP.外部的一些控制主要在DSP與FPGA的數(shù)據(jù)交流中完成.
圖2 電源控制器內部框圖
由于EEPROM具有掉電保持功能和可電擦除特點,在調試過程中就可以方便地實時在線修改參數(shù).而且串行EEPROM不需要復雜的地址、數(shù)據(jù)和控制總線,僅由幾根線就可以完成操作,因此節(jié)省了大量的硬件資源.所以本控制系統(tǒng)采用了只需要4根線的SPI通信EEPROM 25LC256來完成在線參數(shù)以及數(shù)據(jù)存儲.其硬件連接電路如圖3所示.
圖3 DSP與EEPROM的硬件接口
本文采用DSP芯片與ALTERA公司的FPGA芯片EPM240T100C5配合作為整個控制器的控制核心,它們之間采用數(shù)據(jù)總線和地址總線進行通信.DSP與FPGA的連接如圖4所示.系統(tǒng)主要靠FPGA對DSP傳輸過來的數(shù)據(jù)進行譯碼,然后做出相應控制.經過9位地址線,即通過 DSP28335 XINTF ZONE7多達29=512個的空間對FPGA最多為512種的不同控制,足以滿足本系統(tǒng)的控制要求.通過16位數(shù)據(jù)總線可以實現(xiàn)DSP與FPGA一次最多為兩個字節(jié)的數(shù)據(jù)傳輸.
圖4 DSP與FPGA的硬件接口
CAN總線是一種串行通信協(xié)議,具有較高的通信速率和較強的抗干擾能力,可以作為現(xiàn)場總線應用于電磁噪聲比較大的場合,尤其適合本系統(tǒng)的通信.其硬件電路連接如圖5所示,電路選用PCA82C250作為CAN控制器和CAN總線間的接口,提供對總線的差動發(fā)送和接收能力.為提高系統(tǒng)抗干擾性能,在DSP與PCA82C250之間增加光電隔離電路.電路中PCA82C250的輸出引腳CANH和CANL之間必須并聯(lián)終端匹配電阻,否則,會降低總線數(shù)據(jù)通信的可靠性[3].
圖5 DSP間CAN通信的硬件接口
電源控制器與各下級模塊需要大量的緊急通信,如啟動、停止、故障、接通、接通完成、斷開等,I/O通信是最好的方式.由于系統(tǒng)龐大,I/O通信的距離較遠,為保證信號傳遞的精確性,必須進行通信隔離.本系統(tǒng)采用24V輔助電源作為隔離用電源,電壓較高,驅動電流大,抗干擾能力強,隔離光耦采用TLP121.電源控制器與各下級模塊的I/O通信連接圖如圖6所示.
圖6 電源控制器與下級模塊的I/O通信的硬件接口
電源控制器軟件完成整個系統(tǒng)的通信和對部分模塊的控制,其軟件設計包括系統(tǒng)初始化、系統(tǒng)調用主程序、控制子程序和中斷服務子程序等部分.控制系統(tǒng)的程序結構如圖7所示.
圖7 控制系統(tǒng)程序結構圖
DSP初始化分為各控制寄存器初始化和系統(tǒng)程序初始化,其中控制寄存器初始化主要包括:時鐘倍頻和看門狗設置;CAN、SPI等DSP片內外設初始化;各GPIO復用口的配置;中斷控制器和中斷向量表的初始化;LCD顯示和鍵盤輸入的初始化等.系統(tǒng)程序初始化則包括:各子程序變量的初值設定和各個存儲單元的預分配.
系統(tǒng)調用主程序為各子程序的入口,是整個控制系統(tǒng)的主程序.主程序在初始化的過程中完成DSP的系統(tǒng)功能配置和程序初始化后,就等待外部和內部的中斷響應外設請求及運行各子程序.
控制系統(tǒng)子程序是控制各個設備運行的程序模塊,包括鍵盤輸入控制,LCD顯示控制,I/O防抖、勵磁電源、拖動電機、半控整流器、負載等各下級模塊的運行控制,CAN通信數(shù)據(jù)的定期發(fā)送和接收以及故障檢測和處理等.當中斷發(fā)生的時候,CPU轉入各個子程序運行,并返回控制量輸出給系統(tǒng)相應子設備.由于此程序模塊彼此獨立,所以只需要留出相應的程序接口,就可以分開模塊設計和隨時擴展程序功能而不會影響其他的程序模塊.
中斷服務子程序包括:定時器0中斷、ADC接收中斷、CAN通信中斷,以及外部中斷.其中定時器0中斷完成整個主程序和部分子程序的精確計時,保證程序的時序控制準確;ADC中斷完成AD采樣,實時將從外部采樣到的模擬量裝換成數(shù)字量后送給DSP;CAN通信中斷使上位機能夠實時控制電源控制器;外部中斷主要完成對移動電源所帶負載的通道選擇.
由前文可知,本系統(tǒng)采用的EEPROM芯片為25LC256,25LC256有一個8位的指令寄存器,通過SPI總線訪問,通過指令寄存器寫不同的指令,告知25LC256將要進行的操作,然后讀取或者寫入數(shù)據(jù).其寫入數(shù)據(jù)的時序如圖8所示.
圖8 DSP寫25LC256一個字節(jié)的時序圖
由于需要先發(fā)送8位指令,緊接著發(fā)送16位地址,最后發(fā)送8位數(shù)據(jù),所以令DSP的SPI發(fā)送緩沖區(qū)SPITXBUF為16位,首先規(guī)格化16位需發(fā)送數(shù)據(jù),即讓8位“寫”指令作為此16位數(shù)據(jù)的高8位,讓16位地址的高8位作為需發(fā)送的16位數(shù)據(jù)的低8位,從而組成一組16位數(shù)據(jù),發(fā)送給SPITXBUF;發(fā)送完畢后,再將16位地址的低8位作為規(guī)格化的16位數(shù)據(jù)的高8位,8位數(shù)據(jù)為其低8位,發(fā)送給SPITXBUF,從而完成寫一個字節(jié)的周期.
對TMS320F2835的eCAN模塊的編程主要分為三個部分:波特率的配置、郵箱初始化的配置、消息的接收和發(fā)送操作.其中最為關鍵的是波特率的設置[4],它決定了CAN模塊每秒鐘能夠傳輸?shù)奈粩?shù).其設置公式為
式中,SYSCLK為系統(tǒng)時鐘頻率,BRP由寄存器CANBRC[23~16]來確定,TSEG1、TSEG2分別由CANBTC[6~3]、CANBTC[2~0]來確定.在使用CAN通信進行消息的接收和發(fā)送前,必須對CAN模塊進行正確的初始化,其初始化和接收發(fā)送流程如圖9所示.
圖9 CAN模塊的初始化和數(shù)據(jù)接收發(fā)送流程圖
當整個電源控制器系統(tǒng)的硬件部分和軟件部分完全實現(xiàn)后,就能夠實現(xiàn)電源控制器與各下級模塊的精確通信.圖10是本電源控制器對各下級模塊的一種控制模式的流程圖.給定同步發(fā)電機母線電壓后,拖動電機的轉速和勵磁電源的勵磁電流值也就確定了,如果一切正常,表明系統(tǒng)準備就緒.此時通過鍵盤按鈕啟動系統(tǒng),則拖動電機啟動,一段時間后電機到達給定轉速,電源控制器給出轉速到達信號,同時啟動勵磁電源,很快勵磁電源的電流值到達給定值,產生勵磁建立信號,同時發(fā)出接通信號,此時半控整流橋開通,同步發(fā)電機與負載接通,當電壓到達給定值后,反饋一個接通完成信號,此時整流器關斷.延時一段時間,給負載一個斷開信號,再延時一段時間后,檢測電流零信號,確保斷開完畢,此后就可以停止系統(tǒng)了,拖動電機和勵磁電源也同時停止.
圖10 電源控制器的一種控制流程圖
本移動電源控制器目前已經基本完成了實驗室階段系統(tǒng)控制的調試,同步發(fā)電機在不同接通電壓下,拖動電機轉速和勵磁電流有不同的配合,而在同一個接通電壓下,由于接通過程中電機轉速的改變,勵磁電流也要相應改變,從而達到最佳的接通效果.本電源控制器也存在一些不足,例如硬件電路的抗干擾設計并未考慮充分,軟件的結構還有一些地方有待優(yōu)化,這是下階段課題需要解決的問題.
[1]于溢澤.120kW新型拖車電站的研制介紹[J].移動電源與車輛,1997,02(011):31-34.
[2]劉陵順,高艷麗,張樹團,等.TMS320F28335DSP原理及開發(fā)編程[M].北京:北京航空航天大學出版社,2011.
[3]李星林,黃石生.高速雙絲脈沖 MIG焊的研究[J].電力電子技術,2008,42(3):39-40.
[4]蘇日建,孔 力,周凱波,等.基于DSP的井下儀器通用CAN總線通信接口設計[J].儀表技術與傳感器,2008(1):68-71.