微處理器dsPIC33F在微機(jī)保護(hù)裝置中的應(yīng)用
1 引言
隨著電網(wǎng)供電負(fù)荷的日趨加重,電力系統(tǒng)對微機(jī)保護(hù)裝置提出更高要求,一般低檔單片機(jī)已很難滿足設(shè)計要求。近年來,各種集成化的單片DSP的性能得到很大改善,軟件和開發(fā)工具也越來越多,使得DSP器件及技術(shù)更容易使用,價格也能夠為廣大用戶所接受 Microchip公司推出的數(shù)字信號處理器dsPIC33F集A/D轉(zhuǎn)換、通訊、看門狗、保護(hù)和數(shù)據(jù)存儲于一體,同時還支持SPI模式和I2C模式數(shù)據(jù)傳輸,便于擴(kuò)展容量。因此,開發(fā)基于dsPIC33F的微機(jī)保護(hù)裝置,不僅提升保護(hù)系統(tǒng)的整體性能和硬件平臺的通用性,而且還能縮短開發(fā)時間,降低開發(fā)及硬件成本,對提高電力系統(tǒng)的穩(wěn)定運(yùn)行水平具有一定意義。
2 數(shù)字信號控制器dsPIC33F系列簡介
dsPIC33F系列是高性能16位數(shù)字信號控制器,具有擴(kuò)展的數(shù)字信號處理器(DSP)功能和高性能16位微控制器 (MCU)的架構(gòu)。它是一種16位改進(jìn)型哈佛結(jié)構(gòu)RISC器件,融合了高性能16位單片機(jī)的控制優(yōu)勢和數(shù)字信號處理器的高速運(yùn)算能力,是一款高性能的數(shù)字信號控制器(DSC)。dsPIC33F系列器件具有以下性能特點:
(1)DSP內(nèi)核和指令系統(tǒng)dsPIC33F的DSP引擎具有1個高速的17位×17位的乘法器,1個40位的ALU,2個40位的飽和累加器以及1個 40位的雙向移位器,其運(yùn)算速度可達(dá)40 MI/s,指令字為24位,指令系統(tǒng)包含MCU指令集和DSP指令集。此外,這些指令對C語言編譯器做了專門優(yōu)化,采用C語言編寫的程序代碼效率很高。 dsPIC33F允許工作電壓±10%的偏差,即工作電壓為3.0~3.6 V。
(2)直接存儲器訪問(DMA)和中斷能力dsPIC33F內(nèi)部集成了8通道直接存儲器訪問模塊,允許CPU執(zhí)行代碼期間在RAM和外設(shè)間傳輸數(shù)據(jù),不額外占用周期。2 KB雙端口DMA緩沖區(qū)(DMA RAM),用于存儲通過DMA傳輸?shù)臄?shù)據(jù)??赏ㄟ^軟件對DMA中斷源進(jìn)行設(shè)定,從而達(dá)到設(shè)計要求。dsPIC33F含有最多由118個區(qū)分優(yōu)先級的中斷向量組成的異常處理結(jié)構(gòu),中斷優(yōu)先級分為7級。最多67個中斷源,5個外部中斷和5個處理器異常。
(3)存儲空間和外圍器件程序計數(shù)器為23位寬,可尋址4 Mx24位的程序存儲空間。對于DSP指令分別對2個數(shù)據(jù)區(qū)進(jìn)行尋址;而MCU指令,數(shù)據(jù)空間可以整體作為64Kx8位進(jìn)行尋址。dsPIC33F內(nèi)部集成SRAM和Flash等必需的存儲器件,提供10 bit和12 bit A/D轉(zhuǎn)換模塊(可選),8 bit看門狗,以及UART、SPI、I2C、CAN等通信模塊。
(4)開發(fā)工具M(jìn)icrochip高性能開發(fā)系統(tǒng)支持dsPIC33F系列控制器。該開發(fā)系統(tǒng)包括MPLAB集成開發(fā)環(huán)境(IDE)、MPLAB C30 C編譯器、MPIAB SIM 30軟件仿真器、MPIABICD 2在線調(diào)試器及MPLAB ICE 4000在線仿真器。dsPIC33F系列數(shù)字信號控制器還配備一系列的應(yīng)用庫。
3 dsPIC33F在微機(jī)保護(hù)硬件系統(tǒng)中的應(yīng)用
該裝置按功能分為CPU模塊、交流插件、數(shù)字量I/O微機(jī)保護(hù)、通信、人機(jī)接口單元和電源單元。通信接口直接與上位機(jī)或通信管理機(jī)連接,人機(jī)接口采用 128x64點陣式液晶顯示器和專用鍵盤,顯示信息量大,操作方便,硬件設(shè)計框圖如圖1所示。該微機(jī)保護(hù)裝置具有16路開入量,16路開出量,15路模擬量,CPU模塊原理框圖如圖2所示。由于dsPIC33F具有強(qiáng)大的汁算能力和完善的控制功能,可單獨完成計算、控制、通信、人機(jī)接口等功能,減少了器件數(shù)量,簡化硬件結(jié)構(gòu)。又因dsPIC33F內(nèi)部集成RAM、Flash、A/D轉(zhuǎn)換器等,使得外同擴(kuò)展電路很少,進(jìn)一步簡化硬件結(jié)構(gòu),基本實現(xiàn)了總線不出芯片沒計,極大提高保護(hù)裝置的抗干擾性和可靠性。
3.1 存儲器擴(kuò)展及實時時鐘接口
dsPIC33Fj256GP710內(nèi)部集成30 KB的SRAM用作數(shù)據(jù)存儲空間,256 KB的增強(qiáng)型Flash作為程序或數(shù)據(jù)存儲區(qū)。由于微機(jī)保護(hù),存儲保護(hù)定值、事件記錄和故障錄波數(shù)據(jù)都需較大存儲空間,因此該裝置擴(kuò)展1 MB的外部存儲空間,將串行閃速存儲器AT45DB081通過SPI總線同dsPIC33FJ256GP71O相連。AT45DB081的工作電壓為2. 7~3.6 V,在系統(tǒng)重復(fù)擦寫并兼容SPI的Flash存儲器。內(nèi)部有4 096頁,每頁264個字節(jié),共計8MB的主存儲器容量以及2個264字節(jié)的SRAM數(shù)據(jù)緩存器。AT45DB081與dsPIC33FJ256GP710的接口設(shè)計電路如圖3所示。圖3中dsPIC33Fj256GP710的SDO1、SOI1、SCK1分別與 AT45DB081的串行輸入(SI)、串行輸出(SO)和時鐘(SCK)引腳相連,RE4,RE2,RE5,RE6分別與AT45DB081的片選 (CS)、復(fù)位(RESET)、忙閑狀態(tài)(RDY/BUSY)和寫保護(hù)(WP)引腳相連。dsPIC33F通過RE5讀取AT45DB081的忙閑狀態(tài)引腳判斷存儲器是否空閑,若RE5為“1”表示存儲器空閑,否則表示存儲器忙。當(dāng)存儲器空閑時,通過RE4引腳輸出“0”作為存儲器的片選信號,選中存儲器后通過SPI發(fā)送命令字完成對AT45DB081的相應(yīng)讀寫操作。微機(jī)保護(hù)需配置3個定值,且存儲在不同的3個區(qū)間,運(yùn)行時校驗其定值是否正確。為此,對 AT45DB081的空間分配如下:定值、控制字、工廠設(shè)置和調(diào)節(jié)系數(shù)共分為4個區(qū),存儲在AT45DB081的第0~9頁,即第一區(qū)為 AT45DB081的第0,1,2頁,分別存儲保護(hù)裝置的第1,2,3個定值;第二區(qū)為AT45DB081的第3,4,5頁,分別存儲保護(hù)裝置的第1, 2,3個定值;第三區(qū)為AT45DB081的第6,7,8頁,分別存儲保護(hù)裝置的第1.2.3個定值;第4區(qū)為AT45DB081的第9頁,存儲調(diào)節(jié)系數(shù)。事件記錄存儲在AT45DB081的第10~1 000頁。故障錄波數(shù)據(jù)存儲在AT45DB081的第1 001~4 000頁。
PCF8583是串行總線擴(kuò)展方式,通過DSP的I2C時鐘線SCL和數(shù)據(jù)線SDA完成對PCF8583的參數(shù)設(shè)置、日期和時間讀取等操作,同時 PCF8583具有接口簡單、占用DSP資源少和可靠性高等優(yōu)點,并在掉電時仍能進(jìn)行時間計數(shù)。擴(kuò)展的時鐘器件用來記錄系統(tǒng)的工作時間。除此之外,為避免裝置頻繁讀寫EEPROM,對于保護(hù)裝置頻繁讀寫的信號如事故、預(yù)告、脈沖量、重啟次數(shù)、裝置故障信號及出口標(biāo)志都存放在RAM寄存器,時鐘器件在讀取當(dāng)前時間的同時也調(diào)用這些內(nèi)容,在裝置斷電又重新上電時能夠獲得這些信息。