C8015F041在智能功率柜中的應(yīng)用
摘要:簡(jiǎn)要介紹智能勵(lì)磁功率柜的概念及C8051F041單片機(jī)的特點(diǎn);詳細(xì)論述基于C8051F041的智能勵(lì)磁功率柜的結(jié)構(gòu)、原理及CAN總線通信的實(shí)現(xiàn)方法。該控制方案系統(tǒng)集成度高、硬件簡(jiǎn)單、工作可靠,具有良好的推廣價(jià)值。 關(guān)鍵詞:C8051F041 CAN 現(xiàn)場(chǎng)總線 勵(lì)磁 隨著發(fā)電機(jī)容量的不斷增大,對(duì)勵(lì)磁系統(tǒng)的要求越來越高。某省12年的統(tǒng)計(jì)表明,勵(lì)磁系統(tǒng)故障仍是發(fā)電機(jī)故障停機(jī)和非計(jì)劃停運(yùn)的主要原因,占發(fā)電機(jī)的非計(jì)劃停運(yùn)比大于50%。勵(lì)磁系統(tǒng)出現(xiàn)故障,將影響發(fā)電系統(tǒng)整體可靠性,可見勵(lì)磁系統(tǒng)的可靠性非常重要。國(guó)內(nèi)目前使用的各類勵(lì)磁調(diào)節(jié)器非常先進(jìn),但功率柜的制造水平還不盡如人意,這勢(shì)必影響勵(lì)磁系統(tǒng)整體性能的提高,進(jìn)而妨礙升發(fā)電系統(tǒng)的性能。 目前,國(guó)產(chǎn)的勵(lì)磁功率柜普遍存在檢測(cè)功能不全,信息傳送、控制和檢測(cè)技術(shù)落后等問題。本文介紹的基于C8051F041的智能勵(lì)磁功率柜具有完備的檢測(cè)、控制、通信功能。
本文引用地址:http://2s4d.com/article/201610/307586.htm1 C8051F041單片機(jī)特點(diǎn) C8051FXX系列單片機(jī)是美國(guó)Cygnal公司新推出的一種兼容51內(nèi)核的單片機(jī)。其結(jié)構(gòu)較復(fù)雜,限于篇幅,在這里不再詳述。以下僅就筆者對(duì) C8051F041的使用介紹一下其新特點(diǎn)。 ①內(nèi)核采用流水線結(jié)構(gòu),速度可達(dá)25MIPS(25MHz晶振),比普通的51快10倍;指令與標(biāo)準(zhǔn)51系列兼容,掌握開發(fā)過程非常容易;JTAG調(diào)試方式,支持在系統(tǒng)、全速、非插入調(diào)試和編程,不占用片內(nèi)資源。 ②片上集成64KB Flash,4352B內(nèi)部RAM(256+4KB,可外擴(kuò)至64KB),32個(gè)I/O口,12通道12位100ksps可編程增益ADC,8通道8位 500ksps可編程增益ADC,2路12位DAC,3路模擬比較器,內(nèi)部電壓基準(zhǔn),片內(nèi)電源監(jiān)視、降壓檢測(cè)、看門狗。由于C8051F041的高集成度,避免了外擴(kuò)ROM、RAM、A/D、D/A、Watchdog、可編程I/O口、EEPROM(用片內(nèi)Flash實(shí)現(xiàn)),大大簡(jiǎn)化了硬件電路,為形成以C8051F041為核心的單片系統(tǒng)創(chuàng)造了條件,從而可提高系統(tǒng)的可靠性。 ③片內(nèi)集成2個(gè)UART,1個(gè)SM(兼容I2C),1個(gè)SPI。最為便利的是,C8051F041集成了CAN總線控制器。CAN總線具有開發(fā)費(fèi)用低、抗干擾性強(qiáng)、適用于工業(yè)現(xiàn)場(chǎng)應(yīng)用等特點(diǎn),其在干擾非常嚴(yán)重各種工業(yè)現(xiàn)場(chǎng)測(cè)控領(lǐng)域得到廣泛應(yīng)用。C8051F041只需加上CAN總線收發(fā)電路就可掛接到 CAN通信網(wǎng)絡(luò)上,大大簡(jiǎn)化了通信系統(tǒng)的設(shè)計(jì),同時(shí)可減少通信節(jié)點(diǎn)受到干擾的概率。 ④可編程的16位計(jì)數(shù)器陣列(PCA),有6個(gè)捕捉/比較模塊,5個(gè)通用16位計(jì)數(shù)器/定時(shí)器。這為需求定時(shí)器/計(jì)數(shù)器較多的測(cè)控節(jié)點(diǎn)提供了方便。 ⑤C8051F041能夠滿足絕大多數(shù)工業(yè)測(cè)控節(jié)點(diǎn)的要求,能夠形成以C8051F041為核心的單片系統(tǒng);配以外圍測(cè)量單元,可以形成完整的測(cè)控節(jié)點(diǎn),提高系統(tǒng)的可靠性。 2 智能勵(lì)磁功率柜的系統(tǒng)結(jié)構(gòu) 智能功率柜系統(tǒng)原理框圖如圖1所示。
在功率柜中最關(guān)鍵的部件是三相全控橋??刂拼藰虻暮诵膮?shù)觸發(fā)角度經(jīng)CAN總線由調(diào)節(jié)器送出,同時(shí)送達(dá)本地柜應(yīng)發(fā)的電流值。經(jīng)檢測(cè)得到的輸出電流值與調(diào)節(jié)器的應(yīng)發(fā)給定電流值進(jìn)行比較,完成PI運(yùn)算后產(chǎn)生新的微調(diào)觸角度。該觸發(fā)角度經(jīng)PCA形成觸發(fā)脈沖繼而驅(qū)動(dòng)三相全控橋,從而在電子級(jí)實(shí)現(xiàn)柜間均流。與此同時(shí),通過信號(hào)檢測(cè)模塊將柜內(nèi)溫度、晶閘管通斷狀態(tài)、輸出電流值送入微控制器,對(duì)各參數(shù)進(jìn)行計(jì)算分析,與設(shè)定閥值比較,實(shí)時(shí)顯示測(cè)量結(jié)果并可進(jìn)行報(bào)警。 2.1 基于PCA模塊實(shí)現(xiàn)的數(shù)字移相觸發(fā) 三相晶閘管全控橋工作原理及6個(gè)晶閘管的觸發(fā)脈沖相序關(guān)系如圖2所示。 PCA包含6個(gè)基于同一16位計(jì)數(shù)器作為時(shí)基的捕捉/比較模塊,每個(gè)模塊可構(gòu)成正沿捕捉、負(fù)沿捕捉、正負(fù)沿捕捉、軟件定時(shí)器、高速輸出、脈沖寬度調(diào)制器6 種方式。在本系統(tǒng)中,其被構(gòu)造成高速輸出模式,每當(dāng)PCA計(jì)數(shù)器與模塊的16位捕捉/比較寄存器相匹配,相應(yīng)模塊的CEX引腳的邏輯電平發(fā)生變化,并引起相應(yīng)中斷。 觸發(fā)信號(hào)從同步信號(hào)過零點(diǎn)計(jì)時(shí),調(diào)節(jié)器經(jīng)CAN網(wǎng)絡(luò)發(fā)送給各功率框觸發(fā)我的電角度值α、同步信號(hào)周期值TSYN、脈沖寬度W。同步信號(hào)采樣電路如圖3所示。同步信號(hào)過零產(chǎn)生中斷時(shí),使PCA計(jì)數(shù)器開始計(jì)數(shù),并根據(jù)α、W、TSYN及PCA計(jì)數(shù)頻率計(jì)算出α的對(duì)應(yīng)值Tα1~Tα6和脈沖后沿的對(duì)應(yīng)值 TW1~TW6,并將Tα1~Tα6寫入6個(gè)模塊的16位捕捉/比較寄存器。當(dāng)捕捉寄存器的值與PCA計(jì)數(shù)器相符時(shí),CEX引腳變?yōu)楦唠娖?,相?yīng)模塊產(chǎn)生中斷。在中斷子程序中相應(yīng)的TWN讀寫入16位捕捉/比較寄存器,其與PCA計(jì)數(shù)器值相符時(shí),CEX引腳變?yōu)榈碗娖?,一路觸發(fā)單脈沖產(chǎn)生,用門電路可將6 路單脈沖合為6路雙窄脈沖。下式為Tα和Tw計(jì)算方法: TαN=TSYN[α+90(N-1)]/(360%26;#215;TCLK) TWN=TSYN[α+W+90(N-1)]/(360%26;#215;TCLK) N=1,2,…,6,TCLK為PCA計(jì)數(shù)器計(jì)數(shù)周期。
2.2 通過片內(nèi)Flash在線修改參數(shù) C8051F041的Flash的0x0000~0x007F的地址范圍既可用于片內(nèi)64KB Flash,也可用于附加的128B的扇區(qū),這通過設(shè)置PSCTL寄存器的SFLE位實(shí)現(xiàn)。由于片內(nèi)Flash必須先擦除再寫入,而且以512B一扇區(qū)進(jìn)行,故附加的128B的扇我更適合用作非易失性數(shù)據(jù)存儲(chǔ)。功率柜需在線修改的參數(shù)為PI調(diào)節(jié)器的P和I。下面以KEIL C51為例給出在線修改參數(shù)的程序。 WrRe_Flash(){ Unsigned int xdata *pwrite; Unsigned int code *pread; Unsigned char i; Unsigned char il; WDTCH=0xde; //禁止看門狗 WDTCN=0xad; FLSCL|=0x09; //25MHz時(shí)鐘的擦寫頻率 PSCTL|=0x02; //允許Flash扇區(qū)擦除
PSCTL|=0x05; //允許Flash扇區(qū)寫 pwrite=0x0000; //0x0000指向128B扇區(qū) *pwrite=0; //擦除Flash PSCTL%26;amp;=~0x02; //禁止擦除Flash for(i=0;i2;i++) //將P和I參數(shù)寫入 {*pwrite++=PI[i];} PSCTL%26;amp;=~0x01; //禁止寫Flash pread=0x0000; //讀入當(dāng)前值 for(il=0;il2;il++){PI[il]=*pread++;} } 3 CAN總線在勵(lì)磁裝置中的應(yīng)用 CAN總線是主要的現(xiàn)場(chǎng)總線之一。由于其較低的開發(fā)費(fèi)用、良好的抗干擾能力等特點(diǎn),其在工業(yè)測(cè)控領(lǐng)域得到廣泛應(yīng)用。關(guān)于CAN總線的基本概念、接口電路等方面的相關(guān)內(nèi)容較多,這里不再詳述。本文重點(diǎn)介紹如何用C8051F041實(shí)現(xiàn)CAN總線通信。 3.1 C8051F041的CAN控制器結(jié)構(gòu) C8051F041內(nèi)部集成CAN控制器,不需外加CAN控制器(如SJA1000),這對(duì)于需要良好抗干擾性的測(cè)控系統(tǒng)有很大好處;可將 C8051F041構(gòu)成為集通信與控制功能于一體的單片系統(tǒng),大大簡(jiǎn)化硬件設(shè)計(jì),進(jìn)而提高系統(tǒng)抗干擾能力。 圖4給出C8051F041內(nèi)部CAN結(jié)構(gòu)圖,MCU不能直接訪問信息RAM,必須通過IF寄存器,然后由IF寄存器與信息RAM交換數(shù)據(jù)。信息RAM共可存32幀信息,IF寄存器分為IF1和IF2兩組,可分別定義為接收、發(fā)送功能,IF的CommandRequest寄存器定義訪問32幀信息的哪一幀,CommandMask定義將一幀信息的哪一部分傳到信息RAM。 中斷寄存器IR為0x0000,表示沒有斷發(fā)生;為0x0001~0x0020,表示32幀信息的哪一幀引腳中斷;為0x8000,表示狀態(tài)改變(發(fā)送完成、接收完成、錯(cuò)誤狀態(tài))引起中斷。 3.2 CAN通信 通信的初始化過程與其它CAN控制器類似,不再詳述。限于篇幅僅給出如圖5所示的發(fā)送、信息RAM與IF通信和接中斷子程序的框圖。
3.3 CAN總線在智能功率柜中的應(yīng)用 CAN通信系統(tǒng)由4個(gè)節(jié)點(diǎn)組成:1個(gè)調(diào)節(jié)器和3個(gè)功率柜。功率柜由C8051F041完成通信功能,調(diào)節(jié)器由集成了CAN協(xié)議的網(wǎng)卡HT-1302B負(fù)責(zé)通信。本系統(tǒng)由帶屏蔽層的雙絞線構(gòu)成通信介質(zhì),最大通信距離不超過150m,通信速率可達(dá)250Kbps。調(diào)節(jié)器發(fā)送單柜應(yīng)發(fā)電流值、觸發(fā)角、同步信號(hào)周期、脈沖寬度給各功率柜,功率柜將各柜輸出電流值、導(dǎo)通監(jiān)視結(jié)果、柜內(nèi)各點(diǎn)溫度反饋回調(diào)節(jié)器。 4 應(yīng)用中的問題 ①在默認(rèn)中斷順序中,CAN的中斷號(hào)高于INT1(優(yōu)先級(jí)低),應(yīng)將CAN設(shè)為高中斷優(yōu)先級(jí)使其高于INT1,這樣才能有正確的觸發(fā)角度。 ②在線修改參數(shù)時(shí),讀、寫指針的數(shù)據(jù)類型應(yīng)分為code、xdata,擦除、寫入Flash后應(yīng)分別立即禁止擦除、禁止寫入,參數(shù)寫入后應(yīng)將參數(shù)再讀入 RAM中。 ③總線定時(shí)寄存器的設(shè)置極大影響了CAN性能的發(fā)揮。應(yīng)用中,我們采用16MHz晶振,BTR為1C01H,通信速率為250Kbps,兩點(diǎn)間最大通信距離為150m,通信效果很好。 ④新推出的C8051C06X除具有C8051F04X的功能外,新增了16位ADC。這為需高精度測(cè)量的應(yīng)用場(chǎng)合提供了方便。
評(píng)論