摘 要: 研究在發(fā)電機(jī)勵(lì)磁系統(tǒng)中設(shè)計(jì)實(shí)時(shí)數(shù)據(jù)記錄及參數(shù)顯示模塊,將總線(xiàn)傳遞的數(shù)據(jù)進(jìn)行處理,并實(shí)時(shí)存儲(chǔ)的一種設(shè)計(jì)方案。系統(tǒng)采用鐵電存儲(chǔ)器、磁電阻隨機(jī)存儲(chǔ)器擴(kuò)展了存儲(chǔ)容量,使故障錄波得以實(shí)現(xiàn);應(yīng)用RTC和PIT,完成了毫秒級(jí)的計(jì)時(shí),完善了錄波功能。
關(guān)鍵詞: FRAM;MRAM;故障錄波;SPI模塊;勵(lì)磁系統(tǒng)
隨著計(jì)算機(jī)技術(shù)、自動(dòng)化技術(shù)不斷發(fā)展和CAN總線(xiàn)等現(xiàn)場(chǎng)總線(xiàn)技術(shù)的日益完善,勵(lì)磁控制系統(tǒng)逐步向分布式現(xiàn)場(chǎng)總線(xiàn)方向發(fā)展。本設(shè)計(jì)所研究的勵(lì)磁系統(tǒng)實(shí)時(shí)數(shù)據(jù)記錄及參數(shù)顯示模塊,既是發(fā)電機(jī)勵(lì)磁控制部分的重要部分,也是勵(lì)磁控制系統(tǒng)體現(xiàn)控制分散、信息集中的關(guān)鍵環(huán)節(jié),用以實(shí)現(xiàn)完成現(xiàn)場(chǎng)數(shù)據(jù)顯示、便捷的參數(shù)修改及故障錄波。本系統(tǒng)采用鐵電存儲(chǔ)器和磁電阻隨機(jī)存儲(chǔ)器[1],可大容量支持掉電保存的存儲(chǔ)器,存儲(chǔ)故障時(shí)的開(kāi)關(guān)量和模擬量,用于故障顯示和分析。
1 鐵電存儲(chǔ)器
1.1 存儲(chǔ)器基本工作原理
當(dāng)一個(gè)電場(chǎng)被加到鐵電晶體時(shí),中心原子順著電場(chǎng)方向在晶體里移動(dòng)。并通過(guò)能量壁壘,引起電荷擊穿。內(nèi)部電路感應(yīng)到電荷擊穿并設(shè)置存儲(chǔ)器。移去電場(chǎng)后,中心原子保持不動(dòng),存儲(chǔ)器的狀態(tài)也得以保存。鐵電存儲(chǔ)器不需要定時(shí)更新,掉電后數(shù)據(jù)能夠繼續(xù)保存,速度快而且不容易寫(xiě)壞。
1.2 鐵電存儲(chǔ)器的應(yīng)用
本系統(tǒng)采用的是Ramtron公司的FM25L256,用來(lái)存儲(chǔ)時(shí)間標(biāo)簽和對(duì)應(yīng)的開(kāi)關(guān)量。
FRAM可以像RAM一樣以總線(xiàn)速度完成讀寫(xiě)操作,由于不是用電荷來(lái)存儲(chǔ)數(shù)據(jù)而是工作在極化狀態(tài),所以在寫(xiě)入數(shù)據(jù)后無(wú)需等待,沒(méi)有寫(xiě)操作延時(shí),同時(shí)還可以像傳統(tǒng)非易失性存儲(chǔ)器一樣提供非易失性的存儲(chǔ)功能??梢员4鏀?shù)據(jù)達(dá)10年以上,使用起來(lái)更加簡(jiǎn)捷,提高了系統(tǒng)的可靠性。與高速RAM相同,支持幾乎無(wú)限次的讀寫(xiě)循環(huán)操作。這些優(yōu)點(diǎn)使得將RAM的功能和ROM的技術(shù)結(jié)合在一個(gè)芯片中[2]。FM25L256的功能框圖如圖1所示,引腳功能表如表1所示。
1.3 SPI模塊的工作原理
FM25L256通過(guò)SPI總線(xiàn)與單片機(jī)相連。圖2給出了SPI總線(xiàn)接線(xiàn)圖。主機(jī)(單片機(jī))中的8位數(shù)據(jù)寄存器和從機(jī)(FM25L256)中的8位數(shù)據(jù)寄存器通過(guò)MOSI和MISO組成了一個(gè)16位分散式移位寄存器。在數(shù)據(jù)傳輸
1.4 SPI軟件程序設(shè)計(jì)
在本系統(tǒng)中,SPI工作在主機(jī)、模式3下。以下程序完成的內(nèi)容主要包括SPI初始化。
void initial_SPI1(void)
{
SPI1CR1 =0x5E;
SPI1CR2 =0x10;
SPI1BR =0x22;
}
讀操作主要是訪(fǎng)問(wèn)存儲(chǔ)在FM25L256中的數(shù)據(jù),寫(xiě)操作是把采集到的數(shù)據(jù)存儲(chǔ)到FM25L256中的指定位置。SPI的讀寫(xiě)操作具體過(guò)程如下所述:
(1)讀操作
首先判斷是否進(jìn)入讀操作函數(shù)。進(jìn)入后,讀狀態(tài)寄存器SPI0SR,判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送讀數(shù)據(jù)命令。發(fā)送完畢后讀狀態(tài)寄存器SPI0SR,判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送高位地址,直到發(fā)送完畢再讀狀態(tài)寄存器SPI0SR。判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送低位地址,直到發(fā)送完畢再讀狀態(tài)寄存器SPI0SR。判斷數(shù)據(jù)寄存器是否為空,此時(shí)若為空,讀數(shù)據(jù)寄存器,此次讀操作完成。
(2)寫(xiě)操作
首先判斷是否進(jìn)入寫(xiě)操作函數(shù)。進(jìn)入后,讀狀態(tài)寄存器SPI0SR,判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送寫(xiě)使能命令。經(jīng)過(guò)延遲后讀狀態(tài)寄存器SPI0SR,判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送高位地址,直到發(fā)送完畢再讀狀態(tài)寄存器SPI0SR。判斷數(shù)據(jù)寄存器是否為空,空時(shí)發(fā)送低位地址,直到發(fā)送完畢再讀狀態(tài)寄存器SPI0SR。判斷數(shù)據(jù)寄存器是否為空,此時(shí)若為空,發(fā)送數(shù)據(jù),此次寫(xiě)操作完成。
2 磁電阻隨機(jī)存儲(chǔ)器
2.1 磁電阻隨機(jī)存儲(chǔ)器原理介紹
MRAM是一種非易失性的磁性隨機(jī)存儲(chǔ)器。MRAM中每個(gè)存儲(chǔ)元件采用磁隧道結(jié)(MTJ)器件來(lái)進(jìn)行數(shù)據(jù)存儲(chǔ)。當(dāng)向MTJ施加偏壓時(shí),被磁層極化的電子會(huì)通過(guò)一個(gè)稱(chēng)為遂穿(Tunneling)的過(guò)程,穿透絕緣隔離層。當(dāng)自由層的磁矩與固定層平行時(shí),MTJ器件具有低電阻;而當(dāng)自由層的磁矩方向與固定層反向平行(Anti-Parallel)時(shí),則具有高電阻。隨著器件磁性狀態(tài)的改變,電阻也會(huì)變化,其數(shù)據(jù)作為一種磁性狀態(tài)(而不是電荷)存儲(chǔ),并且通過(guò)測(cè)量電阻來(lái)感應(yīng),不會(huì)干擾磁性狀態(tài)[3]。
2.2 磁電阻隨機(jī)存儲(chǔ)器的應(yīng)用
設(shè)計(jì)采用Freescale Semiconductor提供的磁電阻隨機(jī)存儲(chǔ)器MR2A16A,以存儲(chǔ)勵(lì)磁系統(tǒng)的各種電參量。引腳功能如表2所示。
2.3 外部擴(kuò)展總線(xiàn)
MCU與外部擴(kuò)展總線(xiàn)有關(guān)的引腳如表3所示。本設(shè)計(jì)采用獨(dú)立的16位數(shù)據(jù)總線(xiàn)DATA[15,0]和18位地址總線(xiàn)ADDR[18,1],外部擴(kuò)展的內(nèi)存映射地址為0x20_0000到0x27CFFF,共512 KB。MCU與MR2A16A的連接方式如圖4所示。
MCU通過(guò)以下步驟完成一次讀的操作:驅(qū)動(dòng)/CS1 、驅(qū)動(dòng)ADDR、/UDS&/LDS、驅(qū)動(dòng)/RE、等待、從DATA線(xiàn)上讀取數(shù)據(jù)、恢復(fù)/RE、恢復(fù)/CS1及/UDS&/LDS。
編寫(xiě)程序時(shí)只需將變量定義到外部地址,然后像對(duì)待普通變量一樣對(duì)外部變量進(jìn)行操作就可以完成在外部存儲(chǔ)器上的讀寫(xiě)。
3 時(shí)間標(biāo)簽
沒(méi)有時(shí)間記錄的數(shù)據(jù)是不完整的。對(duì)于本系統(tǒng)來(lái)說(shuō),準(zhǔn)確、快速地存儲(chǔ)CAN總線(xiàn)上傳輸來(lái)的數(shù)據(jù)非常重要。本系統(tǒng)采用DS3234和MCU內(nèi)部的PIT一起記錄時(shí)間,同時(shí)可記錄數(shù)據(jù)傳輸來(lái)的時(shí)間,并精確到毫秒級(jí)[4]。
本模塊體現(xiàn)了勵(lì)磁控制系統(tǒng)向控制分散、信息集中發(fā)展的趨勢(shì),實(shí)現(xiàn)了系統(tǒng)所需的功能,即MCU分析所接收的現(xiàn)場(chǎng)數(shù)據(jù),判斷故障。當(dāng)故障發(fā)生時(shí)將數(shù)據(jù)存儲(chǔ)于鐵電存儲(chǔ)器或磁電阻隨機(jī)存儲(chǔ)器中,并加入毫秒級(jí)的時(shí)間標(biāo)簽。用戶(hù)可以隨時(shí)查看任意次故障的電壓等電參量的波形。
本文所討論的設(shè)計(jì)方案已經(jīng)通過(guò)了實(shí)驗(yàn)室驗(yàn)證,方案真實(shí)可行。所研究的對(duì)象不但適用于勵(lì)磁系統(tǒng),而且可以應(yīng)用在其他工業(yè)控制領(lǐng)域,如各種儀器儀表、各種監(jiān)控系統(tǒng)等。只要對(duì)設(shè)計(jì)內(nèi)容稍加修改,或者通過(guò)對(duì)各個(gè)模塊簡(jiǎn)單的組合就可以適用于多種系統(tǒng)中,令系統(tǒng)具有很強(qiáng)的實(shí)用性和多用性。
參考文獻(xiàn)
[1] 周志剛,王耘波,王華.鐵電存儲(chǔ)器研究進(jìn)展[J].信息記錄材料,2002,3(1).
[2] 孫樹(shù)印.鐵電存儲(chǔ)器原理及應(yīng)用比較[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2004(9):15-18.
[3] 孟臣,李敏.高性能鐵電存儲(chǔ)器FM24C256及其在單片機(jī)中的應(yīng)用[J].電子技術(shù),2003(1).
[4] 賈文峰.人機(jī)界面設(shè)計(jì)研究[J].洛陽(yáng)大學(xué)學(xué)報(bào),1999,14(4):55-56.