陳家林 劉蘭軍 王建國
摘要:開發(fā)海洋潮流能對緩解能源危機具有重要意義,電力變換系統(tǒng)是潮流能發(fā)電系統(tǒng)的關鍵技術之一。提出了一種利用SOPC技術實現(xiàn)潮流能發(fā)電電力變換控制系統(tǒng)的設計方法,采用單片高性能FPGA芯片構建雙NIOSⅡ軟核系統(tǒng),其中一個NIOSⅡ處理器負責系統(tǒng)任務調度和能量管理,一個NIOSⅡ處理器負責電力變換控制和異常診斷。針對電力變換系統(tǒng)的信息數(shù)據(jù)特點,提出了基于RAM、FIFO、GPIO的雙NIOSⅡ處理器握手機制,并給出了系統(tǒng)的具體設計實現(xiàn)。該雙NIOSⅡ處理器系統(tǒng)提高了系統(tǒng)的任務調度靈活性、控制算法處理速度和應急處理能力。
關鍵詞:SOPC;雙NIOS;握手機制;電力變換;潮流能
中圖分類號:TP368 文獻標識碼:A 文章編號:1009-3044(2014)13-3142-04
Dual NIOS II Soft Core System in the application of the Tidal Current Energy Generator
CHEN Jia-lin, LIU Lan-jun, WANG Jian-guo
(Engineering College, Ocean University of China, Qingdao 266100, China)
Abstract: Development of marine tidal energy is of great significance to relieve the energy crisis. The power conversion system is one of the key technologies of tidal current energy generator system. A method which can realize power transformer of tidal current energy generator by using SOPC technology is presented. Single piece of high performance FPGA chip is used to construct the dual NIOS II soft core system, one is responsible for system task scheduling and energy management, the other is used in power conversion and abnormality diagnosis. According to the characteristics of information data in power conversion system, a handshake mechanism which is based on RAM, FIFO, GPIO dual NIOS II processor is put forward and the specific design and implementation of this system is given. The dual NIOS II processor system improves the flexibility of task scheduling, increases the speed of control algorithm and enhances emergency handling ability.
Key words: SOPC; dual nios II; handshake mechanism; power conversion; tidal current energy
1 概述
海洋潮流能作為一種新型可再生綠色能源,由于安全清潔、能量穩(wěn)定、儲量豐富、可再生可持續(xù)性好、有規(guī)律、可預測性強等特點,成為海洋能能源開發(fā)技術領域中迅速發(fā)展的研究分支之一[1]。電力變換系統(tǒng)是潮流能發(fā)電系統(tǒng)的重要組成部分。目前,海洋潮流能發(fā)電仍是一個開放性研究領域,研制適用于潮流能發(fā)電能量轉換特點的高效率、高可靠、易升級的電力變換系統(tǒng)是支持潮流能發(fā)電研究的重要工作[2]。
SOPC技術是一種新型的嵌入式系統(tǒng)設計方式,基于NIOSⅡ軟核處理器和可重用IP核進行系統(tǒng)開發(fā),可靈活實現(xiàn)系統(tǒng)軟硬件協(xié)同設計,支持系統(tǒng)軟件、硬件的同時可編程,支持多NIOSⅡ處理器系統(tǒng)設計[3]。雙NIOSⅡ處理器結構是目前復雜SOPC系統(tǒng)中常用的系統(tǒng)組成方式,在車載視頻點播系統(tǒng)[4]、駕駛疲勞檢測系統(tǒng)[5]、多核遠程重構控制器[6]等方面獲得了良好應用。該文針對潮流能發(fā)電電力變換系統(tǒng)的控制需求和數(shù)據(jù)特點,提出了一種基于雙NIOSⅡ軟核處理器的潮流能發(fā)電電力變換控制系統(tǒng)的設計方法,其中一個NIOSⅡ處理器負責系統(tǒng)任務調度和能量管理,一個NIOSⅡ處理器負責電力變換控制和異常診斷,提出了基于RAM、FIFO、GPIO的雙NIOSⅡ處理器握手機制,并給出了系統(tǒng)的具體設計實現(xiàn)。
論文結構為:首先介紹潮流能發(fā)電電力變換系統(tǒng)的整體結構;然后給出了雙NIOSⅡ軟核處理器系統(tǒng)架構和具體設計實現(xiàn);最后是結論。
2 電力變換系統(tǒng)的整體架構
電力變換系統(tǒng)的系統(tǒng)組成如圖1所示,水下發(fā)電機組通過同步永磁發(fā)電機將潮流能轉換成頻率和幅值均不穩(wěn)定的電能,電力變換系統(tǒng)將電能經(jīng)過EMI濾波、整流、BOOST升壓、DC/DC變換等處理,輸出直流電至母線。該文主要介紹主控板中基于雙NIOSⅡ軟核的主控系統(tǒng)設計。
圖1 電力變換系統(tǒng)組成
整流逆變模塊在主控系統(tǒng)控制下具有兩種工作模式,分別是助力啟動模式、發(fā)電模式。助力啟動模式,整流逆變模塊工作在逆變方式,對同步永磁發(fā)電機進行軟啟動,克服機械摩擦,以最大限度地利用潮流能。發(fā)電模式,整流逆變模塊工作在整流方式,將三相交流電轉變?yōu)橹绷麟娸斔徒oBOOST升壓模塊。
BOOST升壓模塊在主控系統(tǒng)控制下進行最大功率點跟蹤,以最大限度地利用海流能。
DC/DC模塊由DC/DC控制板直接控制,主控系統(tǒng)通過CAN總線與DC/DC控制板交互命令和信息。
水下系統(tǒng)負責對水下發(fā)電機組的轉子角度、轉速、漿矩角、電能等參數(shù)的監(jiān)測,主控系統(tǒng)通過CAN總線與水下系統(tǒng)交互命令和信息。
Dump負載由獨立控制板直接控制,當系統(tǒng)輸出能量過大時,Dump負載投入消耗能量,保證電力變換系統(tǒng)能夠穩(wěn)定安全地運行為系統(tǒng)的控制提供響應時間。主控系統(tǒng)通過CAN總線與Dump負載控制器交互命令和信息。
此外,主控系統(tǒng)還通過CAN總線、UART、MODBUS等實現(xiàn)與其他電力變換系統(tǒng)、監(jiān)控PLC、岸站管理系統(tǒng)的命令和信息交互。
針對主控系統(tǒng)的控制需求,該文以SOPC技術為核心,搭建了基于NIOSⅡ軟核處理器的本文潮流能發(fā)電電力變換系統(tǒng)的主控系統(tǒng),系統(tǒng)拓撲如圖2所示。
圖2 主控系統(tǒng)SOPC結構圖
3 雙NIOSⅡ系統(tǒng)結構及設計實現(xiàn)
本文設計的電力變換系統(tǒng)主控系統(tǒng)的雙NIOSⅡ處理器的系統(tǒng)結構如圖3所示。選用兩個快速型NIOSⅡ處理器軟核CPU1和CPU2,,每個處理器具有獨立的數(shù)據(jù)存儲器,兩個處理器的程序存儲器共享。
圖3 雙NIOS體系結構
CPU1負責系統(tǒng)電力變換控制算法、異常診斷和應急快速響應。電力變換控制算法包括最大功率跟蹤算法(MPPT)、功率因素校正算法(PFC)、電能計算控制算法等。控制算法需要實時周期性的處理,要求響應速度高。采用一個CPU專門處理控制算法,保證了系統(tǒng)的性能。
CPU2主要負責任務的調度管理、系統(tǒng)間的數(shù)據(jù)信息交互、能量管理等。電力變換系統(tǒng)的工況主要包括空閑工況、停車工況、啟動工況、發(fā)電工況、異常故障工況等,主控系統(tǒng)對工況流程進行調度管理,同時通過CAN總線通知其他系統(tǒng)等,進行相應的動作處理。該類事件處理不需要高速度但流程復雜,采用一個CPU專門處理保證了高可靠性、靈活性和安全性。
3.1 雙NIOSⅡ握手機制
雙NIOS II處理器的握手機制解決兩個NIOS II處理器的通信和資源共享問題,保證CPU1和CPU2能夠協(xié)調工作,是雙NIOSII處理器設計的關鍵,圖4為雙NIOSII系統(tǒng)的系統(tǒng)連接實物圖。針對潮流能發(fā)電電力變換系統(tǒng)應用中兩個NIOSII處理器的交互數(shù)據(jù)信息的類型,該文設計的雙NIOSII處理器的握手機制包括三種共享機制:RAM、FIFO和GPIO。
圖4 雙NIOS共享模塊Avalon總線連接圖
RAM共享機制基于片內RAM搭建,用于傳輸實時參數(shù)和進程信號,以實現(xiàn)處理器之間的狀態(tài)和參數(shù)共享,潮流能發(fā)電的該類數(shù)據(jù)信息見表1。
表1 RAM共享機制的參數(shù)舉例
[整流/逆變參數(shù)\&BOOST參數(shù)\&其它監(jiān)測參數(shù)\&逆變模組半橋電壓電流均值\&BOOST電壓電流均值\&發(fā)電機三相電壓有效值\&逆變相角幅值數(shù)據(jù)\&BOOST轉換效率\&外部母線狀態(tài)\&助力算法相關參數(shù)\&BOOST輸入輸出功率\&干節(jié)點參數(shù)\&助力發(fā)電機相關參數(shù)\&BOOST模組HALL均值\&機柜溫度\&預充電助力電流電壓\&BOOST電流環(huán)參數(shù)\&海流速度\&……\&……\&……\&]
RAM共享機制需要Mutex核配合,Mutex核提供一個基于硬件的原子測試和置位操作,多個處理器環(huán)境下決定哪一個處理器擁有Mutex核,保證了共享資源的所有權互斥,基于Mutex核的程序流程圖如圖5所示。
圖5 基于Mutex核的程序流程圖
FIFO共享機制采用兩個FIFO內核作為雙核的通信緩沖區(qū),進行全雙工數(shù)據(jù)傳輸,并基于中斷對FIFO內核進行讀寫操作,讀寫流程如圖6所示。
FIFO機制適合順序數(shù)據(jù)的突發(fā)傳輸,本設計中將兩個NIOSII處理器之間交互的CAN幀數(shù)據(jù)存入FIFO緩沖區(qū),見表2。保證了CAN幀結構的完整性和雙NIOSII通信響應的快速性。
表2 CAN幀構成
[CAN幀結構\&幀起始\&仲裁域\&bit[31:29]\&NON\&bit[28:27](優(yōu)先級)\&0-升級命令,1-控制命令,2-上報命令\&bit[26:24](源地址)\&0-主控,1-IAP,2-水下監(jiān)測,3-電源控制…\&bit[23:21](目標機組號)\&0-監(jiān)控主機,1-機組1,2-機組2…\&bit[20:18](目標板號)\&0-主控,1-IAP,2-水下監(jiān)測,3-電源控制…\&bit[17:15](命令位)\&0-升級命令,1-報警,2-控制命令…\&bit14應答位\&0-需要應答,1-不需要應答\&bit[13:12]幀命令類型\&0-命令,1-應答,2-主動上報\&bit[11:0]控制命令相關\&0x011-啟動變槳,0x013-啟動機組剎車…\&控制域,數(shù)據(jù)域,CRC域,應答域,幀結束\&不同命令對應不同的數(shù)據(jù)域\&]
GPIO共享機制采用PIO作為雙NIOSII處理的通信通道。PIO配置成中斷方式,通過PIO中斷使處理器能夠快速響應另一處理器的事件,以應對電力變換系統(tǒng)中的緊急異常事件。
3.2 雙NIOSII系統(tǒng)的系統(tǒng)配置
本文提出的雙NIOSII系統(tǒng)的系統(tǒng)配置包括復位異常地址配置和編程配置。
1)復位異常地址配置,NIOS II處理器的復位地址決定了程序存儲的地方,異常地址決定了程序運行的地方。本設計在SOPC Builder中將CPU1的Reset Vector設置為CFI_FLASH Controller,Offset為0x00,Exception Vector設置為SDRAM1 Controller。CPU2的Reset Vector設置為CFI_FLASH Controller,Offset為0x100000,Exception Vector設置為SDRAM2 Controller。
2)編程配置,在NIOS IDE的Flash programme工具中,硬件配置選擇EPCS Controller,程序配置選擇CFI_FLASH Controller。系統(tǒng)上電后FPGA利用EPCS配置芯片中的硬件配置文件完成雙NIOSII系統(tǒng)的硬件搭建,然后在在內部復位邏輯的作用下,各個NIOSII處理器將分別從復位地址開始執(zhí)行程序,利用bootload自動將各自的程序復制到各自的SDRAM中運行。
4 結論
本文設計的基于雙NIOSII處理器的潮流能發(fā)電電力變換主控系統(tǒng)已成功應用于國家海洋可再生能源專項項目,工程應用表明,利用FPGA的并行高速、高集成度、易升級的特點能夠很好的滿足潮流能電力變換系統(tǒng)的控制需求。雙NIOSII軟核系統(tǒng)良好地實現(xiàn)了系統(tǒng)并行處理和協(xié)同工作,保證了系統(tǒng)的可靠性和高效性,能夠快速發(fā)現(xiàn)異常并及時響應,保證了系統(tǒng)的安全性。
參考文獻:
[1] 游亞戈,李偉,劉偉民,等.海洋能發(fā)電技術的發(fā)展現(xiàn)狀與前景[J].電力系統(tǒng)自動化, 2010 (14): 1-12.
[2] 王剛,厲文超,王樹杰,等.海洋潮流能發(fā)電機組控制系統(tǒng)開發(fā)[J].電力系統(tǒng)自動化,2010 (14): 23-26.
[3] 胡志海,王德君,趙巧云,等.基于 SOPC 的便攜式智能圖像采集系統(tǒng)設計[J].儀器儀表學報,2010(2):371-376.
[4] 王建國,洪勝峰,綦聲波,等.基于 SOPC 技術的視頻點播系統(tǒng)設計[J].計算機工程,2007,33(22):277-279.
[5] 凌朝東,楊亮亮,李國剛.基于 NiosⅡ 多核駕駛疲勞檢測系統(tǒng)設計[J].計算機工程與設計,2009(6):1410-1412.
[6] 朱丹,等.一種多核遠程重構控制器的設計與實現(xiàn)[J].計算機工程,2011,37(9):254-256.endprint
GPIO共享機制采用PIO作為雙NIOSII處理的通信通道。PIO配置成中斷方式,通過PIO中斷使處理器能夠快速響應另一處理器的事件,以應對電力變換系統(tǒng)中的緊急異常事件。
3.2 雙NIOSII系統(tǒng)的系統(tǒng)配置
本文提出的雙NIOSII系統(tǒng)的系統(tǒng)配置包括復位異常地址配置和編程配置。
1)復位異常地址配置,NIOS II處理器的復位地址決定了程序存儲的地方,異常地址決定了程序運行的地方。本設計在SOPC Builder中將CPU1的Reset Vector設置為CFI_FLASH Controller,Offset為0x00,Exception Vector設置為SDRAM1 Controller。CPU2的Reset Vector設置為CFI_FLASH Controller,Offset為0x100000,Exception Vector設置為SDRAM2 Controller。
2)編程配置,在NIOS IDE的Flash programme工具中,硬件配置選擇EPCS Controller,程序配置選擇CFI_FLASH Controller。系統(tǒng)上電后FPGA利用EPCS配置芯片中的硬件配置文件完成雙NIOSII系統(tǒng)的硬件搭建,然后在在內部復位邏輯的作用下,各個NIOSII處理器將分別從復位地址開始執(zhí)行程序,利用bootload自動將各自的程序復制到各自的SDRAM中運行。
4 結論
本文設計的基于雙NIOSII處理器的潮流能發(fā)電電力變換主控系統(tǒng)已成功應用于國家海洋可再生能源專項項目,工程應用表明,利用FPGA的并行高速、高集成度、易升級的特點能夠很好的滿足潮流能電力變換系統(tǒng)的控制需求。雙NIOSII軟核系統(tǒng)良好地實現(xiàn)了系統(tǒng)并行處理和協(xié)同工作,保證了系統(tǒng)的可靠性和高效性,能夠快速發(fā)現(xiàn)異常并及時響應,保證了系統(tǒng)的安全性。
參考文獻:
[1] 游亞戈,李偉,劉偉民,等.海洋能發(fā)電技術的發(fā)展現(xiàn)狀與前景[J].電力系統(tǒng)自動化, 2010 (14): 1-12.
[2] 王剛,厲文超,王樹杰,等.海洋潮流能發(fā)電機組控制系統(tǒng)開發(fā)[J].電力系統(tǒng)自動化,2010 (14): 23-26.
[3] 胡志海,王德君,趙巧云,等.基于 SOPC 的便攜式智能圖像采集系統(tǒng)設計[J].儀器儀表學報,2010(2):371-376.
[4] 王建國,洪勝峰,綦聲波,等.基于 SOPC 技術的視頻點播系統(tǒng)設計[J].計算機工程,2007,33(22):277-279.
[5] 凌朝東,楊亮亮,李國剛.基于 NiosⅡ 多核駕駛疲勞檢測系統(tǒng)設計[J].計算機工程與設計,2009(6):1410-1412.
[6] 朱丹,等.一種多核遠程重構控制器的設計與實現(xiàn)[J].計算機工程,2011,37(9):254-256.endprint
GPIO共享機制采用PIO作為雙NIOSII處理的通信通道。PIO配置成中斷方式,通過PIO中斷使處理器能夠快速響應另一處理器的事件,以應對電力變換系統(tǒng)中的緊急異常事件。
3.2 雙NIOSII系統(tǒng)的系統(tǒng)配置
本文提出的雙NIOSII系統(tǒng)的系統(tǒng)配置包括復位異常地址配置和編程配置。
1)復位異常地址配置,NIOS II處理器的復位地址決定了程序存儲的地方,異常地址決定了程序運行的地方。本設計在SOPC Builder中將CPU1的Reset Vector設置為CFI_FLASH Controller,Offset為0x00,Exception Vector設置為SDRAM1 Controller。CPU2的Reset Vector設置為CFI_FLASH Controller,Offset為0x100000,Exception Vector設置為SDRAM2 Controller。
2)編程配置,在NIOS IDE的Flash programme工具中,硬件配置選擇EPCS Controller,程序配置選擇CFI_FLASH Controller。系統(tǒng)上電后FPGA利用EPCS配置芯片中的硬件配置文件完成雙NIOSII系統(tǒng)的硬件搭建,然后在在內部復位邏輯的作用下,各個NIOSII處理器將分別從復位地址開始執(zhí)行程序,利用bootload自動將各自的程序復制到各自的SDRAM中運行。
4 結論
本文設計的基于雙NIOSII處理器的潮流能發(fā)電電力變換主控系統(tǒng)已成功應用于國家海洋可再生能源專項項目,工程應用表明,利用FPGA的并行高速、高集成度、易升級的特點能夠很好的滿足潮流能電力變換系統(tǒng)的控制需求。雙NIOSII軟核系統(tǒng)良好地實現(xiàn)了系統(tǒng)并行處理和協(xié)同工作,保證了系統(tǒng)的可靠性和高效性,能夠快速發(fā)現(xiàn)異常并及時響應,保證了系統(tǒng)的安全性。
參考文獻:
[1] 游亞戈,李偉,劉偉民,等.海洋能發(fā)電技術的發(fā)展現(xiàn)狀與前景[J].電力系統(tǒng)自動化, 2010 (14): 1-12.
[2] 王剛,厲文超,王樹杰,等.海洋潮流能發(fā)電機組控制系統(tǒng)開發(fā)[J].電力系統(tǒng)自動化,2010 (14): 23-26.
[3] 胡志海,王德君,趙巧云,等.基于 SOPC 的便攜式智能圖像采集系統(tǒng)設計[J].儀器儀表學報,2010(2):371-376.
[4] 王建國,洪勝峰,綦聲波,等.基于 SOPC 技術的視頻點播系統(tǒng)設計[J].計算機工程,2007,33(22):277-279.
[5] 凌朝東,楊亮亮,李國剛.基于 NiosⅡ 多核駕駛疲勞檢測系統(tǒng)設計[J].計算機工程與設計,2009(6):1410-1412.
[6] 朱丹,等.一種多核遠程重構控制器的設計與實現(xiàn)[J].計算機工程,2011,37(9):254-256.endprint