文/洪廣焦
隨著智能電網標準的提出,繼電保護裝置向著綜合化、標準化、網絡化方向發展。過去,設計繼電保護裝置只從可靠性、速動性、選擇性、靈敏性的角度設計產品?,F在,因為應用場景的多樣化、安裝操作的標準化、數據傳輸的網絡化,所以對微機保護裝置的設計提出了新的要求。
如:潮汐發電,超高壓直流輸電,環網配電等。因此微機保護裝置功能設計必須綜合化,可配置。不僅要求軟件可以按需配置和定制,內部硬件可以按需替換,而且要求軟件二次開發周期短,硬件抗干擾強,才能適應多樣化。
如:不同廠家的產品安裝的開孔尺寸統一、接入協議兼容、操作界面統一。因為標準化的目的是為了提高運維效率,減少投資成本。目前,以國家電網為主導的標準化產品首先在網內12kV開關柜上推開。
如:實時采樣數據可以來源于合并單元,保護事件和實時數據可以被多個高級應用召喚。所以網絡化要求實現數據交互可靠性和低時延性。
綜上可得,具備兼容性,可迭代性、可配置性、數據交互低時延性、抗干擾性已經成為微機保護設計的新指標。為了滿足這些新指標設計了非應用功能分層化,應用功能模塊化的微機保護通用平臺。并通過引入操作系統作為應用和硬件的中間層,不僅實現了軟硬件隔,而且也為應用程序模塊化奠定基礎。通過引入FPGA(Field-Programmable Gate Array)實現硬件模塊化,從而實現多種場景無縫替換。
本系統主要由應用層、系統層、驅動層、硬件層構成。應用層又可分為保護邏輯模塊、人機界面模塊、電力通信協議模塊、數據處理模塊、歷史記錄查詢模塊、裝置信息模塊、出廠設置模塊、用戶設置模塊。驅動層主要分為采樣驅動模塊、網絡通信驅動模塊、開關量輸入輸出驅動模塊、液晶顯示驅動模塊、編碼校時驅動模塊、串口打印驅動模塊、串口調試驅動模塊、數據存儲模塊。因為驅動層采用了于硬件模塊映射的方式驅動自適應綁定(主要是利用外設芯片的廠家信息,自動化加載對應驅動),所以驅動模塊和硬件模塊的劃分基本一致。因此硬件層對應劃分為模擬采樣電路、以太網電路、開關量電路、液晶顯示電路、編碼校時間電路、串口電路、存儲時鐘電路、電源電路(外購整體部件)。本系統以ARM+FPGA作為核心硬件平臺,通過移植實時操作系統和輕量型協議棧為基礎,實現分層化、模塊化微機保護通用平臺。
嵌入式應用平臺的設計,主要包含硬件和軟件量大部分,而硬件電路主要由數字電路和模擬電路組成,模擬電路主要為電源技術,采用集成模塊。數字電路的核心是處理芯片。為了實現低成本且自適應多樣化場景應用,故選用意法的STM32F系列微控制器。因為其有豐富的系列化,以及封裝的通用性,所以電路主板設計成可根據應用場景自由選用不同檔次芯片的核心模塊,和自由組合的通用模塊。以下以STM32F207ZET6(以下統稱MCU)作為實例闡述硬件設計。系統硬件主要分5部分,即MCU最小工作系統、兩片MAX11046芯片和Alteration公司的CycloneII系列的EP16C芯片組成的采樣模塊、用74LS138譯碼器實現的開入開出電路,MCU的I2C和FM31L276芯片組成的存儲時鐘電路模塊。MCU內部集成的MAC和外部WJLXT971ALE芯片組成的網口通信模塊。因采用了大量集成芯片和功能模塊封住,增強了裝置平臺的抗干擾。本文重點闡述網口通信模塊電路和采集電路。
采樣電路采用兩片AMAX11046芯片和一片FPGA,共同組成16個獨立的16位高速模擬并行采樣通道。每通道均具有片內T/H電路,能實現3μs的快速轉換時間,每個通道最高達250ksps吞吐率,支持多種工作模式,內部集成線性相位數字濾波器,數據輸出接口支持SPI或可選幀同步,便與FPGA互聯。其中,FPGA內置EPROM存儲器,上電時,把EPROM中的電路邏輯規則復制到片內RAM中,隨后FPGA進入工作狀態。FPGA通過修改內置EPROM存儲器上的邏輯,能夠反復使用。FPGA的編程通過QuartusII編程器,對通用的EPROM、PROM編程。當需要修改FPGA功能時,通過不同的編程實現電路功能。因此,FPGA的使用非常靈活。采樣電路原理圖如圖1所示。
以太網通信電路主要有三部分組成,介質訪問控制器(MAC)、外接物理層(PHY)和集成變壓器。因(MCU)自帶MAC,同時支持媒體獨立接口(MII)和媒體簡化獨立接口(RMII),本文采用了MII接口和美光科技公司的LXT971ALE芯片連接以便實現多PHY的控制。所以外部電路只需提供PHY和變壓器(13F-66YGD4NL自帶RJ45接口)。原理圖如圖2所示。
MCU的MAC和PHY連接主要有三部分組成。
(1)通過MCU和PHY的DMIO和DMC連接主要用來配置PHY和實時監視PHY運行狀態;
(2)MAC的 RX[0:3]和 TX[0:3]分 別于對用的PHY鏈接作為數據收發通道。RX _CLK和TX_CLK組成的收發數據的時鐘,時鐘來自PHY25MH晶振分頻得到;
(3)MAC和PHY傳遞的數據包通過直接內存訪問器(DMA)實現數據先進先出交互處理。同時一個MAC可以通過不同的PHY地址(ADDR[0:4]),實現多個PHY連接。
uC/OS-II是一款小巧但功能強大的嵌入式實時操作系統內核,它的主要特點就是源代碼開放、硬件資源要求低、程序執行時間確定,應用于繼電保護裝置中可以充分隔離驅動和應用代碼實現非應用程序分層設計,應用程序模塊化封裝。它采用任務調度,CPU使用更為合理。傳統的前后臺程序設計,不僅對芯片的硬中斷依賴性強,而且難已對程序實現模塊化封裝,更不能實現分層化開發,代碼重用率低。而實時系統的引入,解決了以上難題,同時uC/OS-II廣泛應用于工業控制領域,通過了非常嚴格的測試標準,并得到了美國軍方的認證??梢娖鋬群耸欠浅7€定的,而其開源方便企業對核心技術的把控,同時也方便對內核的優化和改進。
因V2.89版本的UCOS-II操作系統只支持64個可剝奪中斷優先級任務配置,為了實現同一優先優先級任務的輪詢機制,也為了減少任務切換造成不必要的資源開銷。采用了相同任務優先級里放調用兩個應用程序,通過標志實現兩個應用程序的輪訓調用。通過修改 OS_CPU.C、OS_CPU.H和 OS_CPUA.AS源代碼文件實現10MS任務調度。移植系統主要分四步,第一步實現操作系統時間節拍與芯片的中斷地址關聯,系統掛起中斷地址和芯片掛起中斷函數關聯。第二步通過系統節拍中斷服務函數OSTickISR()配置任務調度時間。第三步初始化系統函數OS_Init(),通過OS_CPU_SysTickInit()初始化系統時鐘,并通過OSTaskCreate()函數創建不同應用模塊的任務,通過參數設置給不同的應用模塊分配合適的堆棧大小,優先級等。第四步任務間通過互拆量實現任務同步和資源管理。最后通過OSStart()函數啟動系統調度運行系統和應用函數。
平臺采用了V1.3.2 的Light-Weight-IP(LwIP)協議棧。它是一種小型開源TCP/IP協議棧,一般它只需要幾十K的,40KB左右的ROM和十幾KB的RAM就可以正常運行,這使得LwIP協議棧在中低端的嵌入式系統中有著廣泛的運用。修改lxt971ale_Init ()函數完成PHY初始化,并配置和MCU的對接,實現鏈路數據的讀取,因片MCU自帶MAC,所以采用了專用DMA的方式讀寫PHY內的數據包。配置LwIP_Init()函數實現協議棧的內存分配和mac地址,IP地址的初始化;用HelloWorld_init()初始化TCP協議。通過操作系統開設LwIP_Periodic_Handle()任務進程,5mS更新一次lwip的一些狀態,并用ETH_CheckFrameReceived()查詢是否有新的數據包要收發,通過消息方式通知LWIP處理程序LwIP_Pkt_Handle(),喚醒處理程序馬上處理數據包,并輸出給對應的應用程序接口緩存。

圖1:采樣電路原理圖

圖2:通信原理圖
通過充分利用ARM和FPGA的各自優勢,設計一種基于分化,模塊化的架構的微機保護通用平臺,解決了傳統設計的硬件復雜度和軟件代碼重用性低的缺陷。從而實現ARM的微機保護平臺的多場景應用。而可變成的FPGA并行處理能力給MCU的資源減輕了數據讀取,GPIO不足的等難題,為未來擴展提供了基礎。實驗結果證明這是一種高效可行的平臺設計。