0 引言
隨著電力系統的迅速發展?我國電網規模越來越大?各種電力電子裝置在電力系統、工業控制及日常中的應用日益廣泛?對于電力系統的可靠性和安全性的要求越來越高.這就需要高壓開關對電網進行實時保護?在電網發生故障時及時切斷電源電路?防止故障擴大.為了保障高壓開關的正常運行?必須
定期對其機械特性進行測試?了解高壓開關的機械特性參數是否正常?從而評估高壓開關好壞以及使用壽命?保障電力系統的安全穩定運行.
1 系統概述
1.1 系統總體設計[1]
根據高壓開關測試系統的需要?系統采用 TI公司推出的32位定點 DSP 芯片 T MS320F2812為底層處理器?采用模塊化設計思想?極大地方便了程序的開發及維護.系統結構如圖1所示?其中串口Flash 采用 AT45DB041保存采集后經過計算處理的數據?可以在掉電后不丟失數據.SRAM 使用256k×16位的IS61LV25616作為存儲變量和程序調試時使用.系統和上位機的通訊使用 RS232方式.數據采集時?首先通過 A/D 轉換器件把16通道的模擬信號通過 DSP 的 A/D 轉換進行處理?然后將處理后的數據存儲于 Flash 中?通過 LCD 直接顯示或發送至上位機進行后處理.
1.2 DSP 芯片選擇[2]
在 DSP 的選擇上?考慮系統處理數據量大?對輸出實時性要求高?且為方便系統后續軟件升級和功能擴展等需求?選用 TI 公司一款性價比很高的基于32位的定點 DSP 控制器 T MS320F2812.
2 系統硬件設計
2.1 模擬采集電路
交流電壓信號的采集直接使用 F2812內置12位 A/D 轉換模塊?由于該模塊本身具有采樣保持電路且要求輸入電壓范圍為0~3V?因此設計時需將外部輸入的220V 電壓信號在輸入 DSP 之前轉換成0~3V 電壓信號.考慮這方面因素?前端設計由電壓互感器、電流電壓轉換電路、濾波電路和緩沖電路組成?*后輸入 DSP 的信號滿足系統要求.
2.2 CPLD 設計
系統采用 ALT ERA 公司的 EPM7128?實現外設地址譯碼、數據鎖存、開關量信號的輸出以及同步DSP 指令等功能?內部通過原理圖設計對具體功能進行實現.CPLD 的輸入時鐘為 T MS320F2812 的輸出信號 XCLKOUT.CPLD 內部設計主要分成地址譯碼單元和控制單元2個模塊.
地址譯碼單元主要完成對外設模塊的地址分配?包括打印機、顯示器、USB 和模擬量的采樣地址的分配.地址譯碼的實現是由 CPLD 內部3-8譯碼器實現.開關量的采集地址為2000H~27FF H;液晶顯示器地址為2C00H~2FFF H;打印機地址為3400H~37FF H;USB 地址為3C00H~3FFF H.控制單元為 CPLD 設計的核心部分?主要同步DSP 發出的分/合閘指令?并對外部斷路器進行控制?使它按指令進行分、合閘操作?從而測量高壓開關的機械參數;調節 CPU 與慢速外設讀寫速度?對數據進行緩沖、鎖存;控制打印機打印數據和液晶顯示器顯示數據.
合/分閘的控制信號經 CPLD 的 I/O 管腳輸出?輸出信號經過三極管和穩壓電路驅動外部斷路器動作.由于斷路器關合過程中會產生強電磁效應?若直接由 DSP 的 I/O 管腳驅動控制信號?可能會使DSP 的程序跑飛?影響控制效率?所以系統中開關量的輸入輸出均由 CPLD 完成?加強了系統的可靠性.
2.3 USB 通信電路設計[3]
系統采用 USB 接口芯片 CH375?工作在主機方式下?以串口方式與 DSP 進行通信.與 DSP 的接口連接如圖2所示./WR 和/RD 分別與 DSP 的WR 和 RD 信號相連?DSP 的地址線 A0與 CH375的 A0端口相連?作為 CH375的命令和數據端口的選擇?片選信號經過 CPLD 進行地址譯碼產生.中斷端口與 DSP 的外部中斷1相接?下降沿有效
3 軟件設計
3.1 系統軟件設計
設計采用基于優先級的、可移植、可固化、可裁剪和源碼公開的占先式實時多任務操作系統μC/OS-Ⅱ?其大部分程序采用 ANSIC 語言編寫?可讀性強?且其可靠性符合 RTCA DO-178B 標準.要使用μC/OS-Ⅱ?首先要把這個內核成功移植[4]到 F2812上.μC/OS-Ⅱ移植時?主要進行以下工作:
a.在 OS_ CPU.H 文件中用#define 語句定義與處理器相關的常量、宏及數據類型.
b.調整和修改頭文件 OS_ CFG.H?以裁剪或修改μC/OS-Ⅱ的系統服務?減少資源損耗.
c.在 OS_ CPU_ C.C 文件中用 C 語言編寫10個簡單的函數.主要完成函數 OST askStkInit()的編寫.
d.編寫匯編語言在 OS_ CPU_ A.ASM 文件中編寫4個匯編語言函數.
其中 OS_ CPU_ A.ASM 文件是μC/OS-Ⅱ移植中的重點和難點?這4個匯編函數的實現是保證μC/OS-Ⅱ運行的基礎.這 4 個函數分別是:OSStart HighRdy()(運行就緒態的優先級*高的任務);OSCtxSw()(任務級的任務切換);OSIntCtxSw()(中斷級的任務的切換);OSTickISR()(時鐘
節拍中斷服務子程序)?本移植用定時器 CPUTimerl 來實現延時服務[5].
3.2 應用程序設計
μC/OS-Ⅱ移植成功后?即可在操作系統上搭建所需的應用程序?應用程序可劃分為中斷程序和任務程序?如圖3所示.中斷程序包括(按中斷優先級從高到低排列)用于 A/D 采集中斷服務程序、測量高壓開關分合速度的 EVA 捕獲中斷、SCI 發送接收中斷、USB 讀寫中斷、為系統提供時鐘節拍的定時器2中斷;任務程序包括(按任務優先級從高到低的順序排列)系統復位任務、鍵盤掃描任務、交流電壓采集任務、數據處理、CPLD 狀態讀取和寫入任務、數據保存任務、液晶顯示任務和打印任務.
由于篇幅有限?只對優先級*高的開始任務(T askStar)和主程序流程做簡單介紹.在 T askStart任務中首先完成系統和相關外設的初始化?并進行必要的自檢測?然后創建應用任務?將開門狗復位后?T askStart 要刪除自己?把系統資源讓給其它的任務?整個系統開始正常運行.
執行完 T askStart 任務后?通過任務調度器調度優先級*高的鍵盤掃描任務?通過外部中斷?判斷優先級*高的任務?跳轉到相應任務中?然后將DSP 處理完的數據結果送到數據保存任務中?并通過顯示器任務顯示.
4 試驗結果
將系統應用于對六氟化硫的高壓開關的機械特性參數的測試?通過現場多次合分閘測試?測試結果如圖4所示.與計算所得結果近似?并將此測試結果同另一臺同時工作的測試儀實際測得結果相對照?結果發現2臺儀器所實現的功能全部一致?測得的數據也基本一致?且新開發的測試儀工作穩定?準確性較好?并能實現與 PC 機通信和 U 盤存取功能.因此?新開發的儀器可廣泛應用.
5 結束語
本系統是基于某型高壓開關測試儀改進的?由于以前采用的基于 T MS320L2407的高壓開關測試儀存儲空間有限?不便后續測試功能擴展和程序升級 已 無 法 滿 足 市 場 需 求.故 本 文 采 用 基 于T MS320F2812的高壓開關測試儀?利用 DSP 和嵌入式操作系統來完成模擬信號的采集和各種數據的處理?并 通 過 CPLD 完 成 控 制 信 號 輸 出?外 擴RS232接口方便與 PC 機通信?并配有 USB 模塊方便用戶存儲測試數據.系統的設計完全滿足電力系統實時性和可靠性要求.