一種模塊化多電平換流器子模塊的程序在線升級(jí)方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種模塊化多電平換流器子模塊的程序在線升級(jí)方法。
【背景技術(shù)】
[0002] 隨著環(huán)境污染和能源短缺日益嚴(yán)峻,發(fā)展可再生清潔能源,提升能源結(jié)構(gòu)得到了 大力推廣。與此同時(shí),直流輸電技術(shù)也得到了大力發(fā)展,目前較為先進(jìn)的是柔性直流輸電技 術(shù)。
[0003] 模塊化多電平換流器是柔性直流輸電系統(tǒng)中非常重要的組成部分。通過子模塊 串聯(lián)構(gòu)成換流閥,模塊化程度高,諧波畸變小,開關(guān)損耗低。各相各橋臂上的多個(gè)子模塊都 是相同的,主要由子模塊控制器、電容器、功率半導(dǎo)體器件(常用絕緣柵雙極型晶體管,簡稱 IGBT)等組成。各個(gè)子模塊均可以單獨(dú)控制,他們合成的階梯波形可以較好地模擬正弦波 形。
[0004] 一個(gè)較大柔性直流工程的多電平換流器可以有上千甚至幾千個(gè)子模塊,這些子模 塊的維護(hù)升級(jí)要消耗大量的人力物力。尤其是升級(jí)子模塊程序的時(shí)候,需要操作人員使用 調(diào)試線纜逐個(gè)升級(jí),這往往要消耗幾天的時(shí)間。
[0005] 基于以上分析,需要設(shè)計(jì)一種模塊化多電平換流器子模塊的程序在線升級(jí)方法, 以降低子模塊升級(jí)消耗的時(shí)間成本和人力成本,本案由此產(chǎn)生。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的,在于提供一種模塊化多電平換流器子模塊的程序在線升級(jí)方法。 現(xiàn)場(chǎng)操作人員可以通過光纖網(wǎng)絡(luò),在線批量升級(jí)多個(gè)換流器子模塊,大大節(jié)約了裝置維護(hù) 所需的時(shí)間成本和人力成本。
[0007] 為了達(dá)成上述目的,本發(fā)明的解決方案是:
[0008] -種模塊化多電平換流器子模塊的程序在線升級(jí)方法。換流器子模塊(SMC)通過 光纖連接至遠(yuǎn)端的VBC裝置。在VBC裝置中存有待升級(jí)的程序,SMC通過光纖從VBC裝置 接收該程序。SMC的通信和接收程序的功能集成在FPGA中,F(xiàn)PGA接收完新程序后,將其發(fā) 送至MCU,由MCU將新程序存入FLASH。然后MCU使用新程序重新加載FPGA,實(shí)現(xiàn)程序的在 線升級(jí)。在升級(jí)的過程中,MCU將自動(dòng)保存升級(jí)前的程序,并在升級(jí)失敗的情況下使用升級(jí) 前的程序加載FPGA,具有較高的安全性。
[0009] SMC子模塊在上述新程序接收過程中,首先由FPGA通過光纖接收到新的程序,再 使用CAN協(xié)議封裝數(shù)據(jù)后通過CAN總線發(fā)送給MCU。然后MCU通過SPI接口將程序?qū)懭?FLASH。
[0010] FLASH劃分為FPGAl和FPGA2兩個(gè)存儲(chǔ)區(qū),其中FPGAl是優(yōu)先啟動(dòng)區(qū)。程序升級(jí) 過程中,MCU首先檢測(cè)當(dāng)前工作的程序數(shù)據(jù)是否存儲(chǔ)在FPGAl區(qū)域,如果是的話,將當(dāng)前程 序保存至FPGA2區(qū)域,然后將新程序?qū)懭隖PGAl區(qū)域;如果不是的話,可以將新程序直接寫 入FPGAl區(qū)域。這樣可以保證在FPGA2區(qū)域中存有升級(jí)前的程序,在升級(jí)失敗的情況下可 以從FPGA2區(qū)域恢復(fù)升級(jí)前的程序,具有較高的安全性。
[0011] 接收并存儲(chǔ)完成后,MCU通過PS模式用新程序重新加載FPGA,實(shí)現(xiàn)FPGA的在線升 級(jí)。加載過程中,MCU閉鎖IGBT的控制信號(hào),防止在升級(jí)過程中IGBT出現(xiàn)誤動(dòng)作。當(dāng)FPGA 重新開始正常工作后,MCU解除對(duì)IGBT控制信號(hào)的閉鎖。
[0012] 采用上述方案,可以在不需要人工逐個(gè)現(xiàn)場(chǎng)操作的情況下,在線批量升級(jí)多個(gè)換 流器子模塊,特別適合在柔性直流工程中使用。柔直工程中子模塊的數(shù)量較多且程序相同, 一臺(tái)VBC裝置可以同時(shí)與數(shù)百個(gè)子模塊進(jìn)行通信。采用本發(fā)明后,操作人員可以通過VBC 裝置對(duì)這些子模塊同時(shí)進(jìn)行在線升級(jí),大大節(jié)約了裝置維護(hù)所需的時(shí)間成本和人力成本。
【附圖說明】
[0013] 圖1是柔性直流工程換流器的拓?fù)浣Y(jié)構(gòu)示意圖;
[0014] 圖2是本發(fā)明的原理示意圖;
[0015] 圖3是本發(fā)明中FLASH存儲(chǔ)空間的示意圖;
[0016] 圖4是本發(fā)明中子模塊在線升級(jí)的過程示意圖;
[0017] 圖5是本發(fā)明中子模塊程序升級(jí)的軟件流程圖。
【具體實(shí)施方式】
[0018] 以下將結(jié)合附圖,對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明。
[0019] 如圖1所示,在柔性直流工程中,各個(gè)橋臂上的換流器子模塊(SM)是很多的。每 個(gè)子模塊中都有一個(gè)控制器(SMC),來實(shí)現(xiàn)通信和控制的功能。每個(gè)SMC通過光纖連接到一 臺(tái)VBC裝置上。VBC裝置再通過以太網(wǎng)絡(luò)連接到后臺(tái)上。這種拓?fù)浣Y(jié)構(gòu)是本發(fā)明能夠得以 實(shí)現(xiàn)的基礎(chǔ)。操作人員可以在后臺(tái)或者VBC裝置上,通過光纖對(duì)多個(gè)子模塊同時(shí)進(jìn)行程序 在線升級(jí)。下面將以一個(gè)子模塊的升級(jí)過程為例,進(jìn)行詳細(xì)說明。
[0020] 如圖2所示,子模塊控制器(SMC)的邏輯功能主要由FPGA、MCU、FLASH三種器件來 實(shí)現(xiàn)。其中FPGA負(fù)責(zé)實(shí)現(xiàn)正常運(yùn)行時(shí)的所有功能;MCU負(fù)責(zé)在上電或在線升級(jí)時(shí)給FPGA加 載程序;FLASH則用于存儲(chǔ)當(dāng)前的FPGA程序和新的FPGA程序。這種硬件結(jié)構(gòu)是比較常見 且較容易實(shí)現(xiàn)的。圖2中各種接口的詳細(xì)描述見表1。
[0021] 表1SMC內(nèi)部接口說明
[0022]
[0023] 初次運(yùn)行時(shí),子模塊的FPGA程序已經(jīng)預(yù)先存儲(chǔ)在FLASH的FPGAl區(qū)域,如圖3所 示。子模塊上電后,MCU會(huì)先加載FLASH中的FPGAl,加載成功后用內(nèi)部變量LastBoot記錄 FPGAl的程序版本號(hào);如果不成功再試著加載FPGA2,加載成功后用LastBoot記錄FPGA2的 程序版本號(hào);如果都不成功,則LastBoot為空。該子模塊工作狀態(tài)異常,將會(huì)被VBC裝置檢 測(cè)到。
[0024] 子模塊在線升級(jí)的過程可分為如下步驟:
[0025] I. VBC裝置通過光纖向所有SMC子模塊廣播在線升級(jí)的指令,指令中包含新程序 的版本號(hào)。
[0026] 2. SMC子模塊收到廣播的信息后,核對(duì)程序版本號(hào),如果新程序和正在運(yùn)行的程序 的版本號(hào)不一致,做好升級(jí)準(zhǔn)備。
[0027] 3. VBC以廣播的形式向所有SMC子模塊發(fā)送新程序。
[0028] 4. SMC子模塊接收完新程序并校驗(yàn)成功后,在本地進(jìn)行程序升級(jí)。
[0029] 5. SMC升級(jí)成功后,重新與VBC建立通信連接,上傳當(dāng)前的程序版本號(hào)。
[0030] 6. VBC在固定的時(shí)間內(nèi)接收各個(gè)子模塊上傳的版本號(hào),如果沒有收到某個(gè)子模塊 上傳的信息,或上傳的程序版本號(hào)與之前廣播的不一致,則記錄該SMC子模塊升級(jí)失敗。
[0031] 上述在線升級(jí)過程如圖4所示。圖4中是以單個(gè)SMC為例,實(shí)際系統(tǒng)中多個(gè)SMC 子模塊獨(dú)立連接至VBC裝置,各自執(zhí)行在線升級(jí)操作。
[0032] 上述步驟4中SMC在本地進(jìn)行程序升級(jí),主要由SMC子模塊上的MCU來執(zhí)行,具體 操作如下:
[0033] 1.檢測(cè)LastBoot,如果最近一次成功加載的程序是FPGAl,則需要將FPGAl搬移到 FPGA2,以備升級(jí)失敗時(shí)恢復(fù)當(dāng)前程序。
[0034] 2.將新的程序?qū)懭隖PGAl。
[0035] 3.用新程序加載FPGA,成功后用LastBoot記錄FPGAl的程序版本號(hào),升級(jí)完成。
[0036] 4.如果步驟3升級(jí)失敗,則用FPGA2來恢復(fù)原狀?;謴?fù)成功后用LastBoot記錄 FPGA2的程序版本號(hào)。本次升級(jí)失敗,將會(huì)被VBC裝置檢測(cè)到。
[0037] 5.如果步驟4恢復(fù)失敗,則將LastBoot清空。該子模塊工作狀態(tài)異常,將會(huì)被VBC 裝置檢測(cè)到。
[0038] 上述內(nèi)容如圖5所示。
[0039] 在線升級(jí)過程中,MCU會(huì)通過0UT_EN信號(hào)閉鎖IGBT控制信號(hào),防止IGBT誤動(dòng)作。 當(dāng)FPGA重新開始正常工作后,MCU解除對(duì)IGBT控制信號(hào)的閉鎖。
[0040] 綜上,本發(fā)明一種模塊化多電平換流器子模塊的程序在線升級(jí)方法,具有如下特 占·
[0041] 第一,大大節(jié)約了升級(jí)子模塊程序所需的時(shí)間成本和人力成本。操作人員不需要 現(xiàn)場(chǎng)逐個(gè)作業(yè),可以在后臺(tái)或者VBC裝置上,通過光纖批量在線升級(jí)子模塊程序。這在大容 量柔性直流工程中是很有意義的。
[0042] 第二,安全性高。升級(jí)前自動(dòng)備份前版本程序,在升級(jí)失敗時(shí)可以將子模塊恢復(fù)原 狀。在升級(jí)過程中閉鎖子模塊的輸出,防止誤動(dòng)作。
[0043] 以上僅為說明本發(fā)明的技術(shù)思想,不能以此限定本發(fā)明的保護(hù)范圍,凡是按照本 發(fā)明提出的技術(shù)思想,在技術(shù)方案基礎(chǔ)上所做的任何改動(dòng),均落入本發(fā)明保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1. 一種模塊化多電平換流器子模塊的程序在線升級(jí)方法,其特征在于:子模塊控制器 (SMC)的主要功能由FPGA實(shí)現(xiàn),所述FPGA通過光纖從遠(yuǎn)端的閥基控制裝置(VBC)接收新的 FPGA程序,并傳送給負(fù)責(zé)管理程序的MCU ;MCU將程序存入FLASH,并重新加載FPGA,實(shí)現(xiàn)程 序的在線升級(jí)。2. 如權(quán)利要求1所述的一種模塊化多電平換流器子模塊的程序在線升級(jí)方法,其特征 在于:FPGA通過光纖接收到新的程序,用CAN協(xié)議進(jìn)行數(shù)據(jù)封裝后傳送到MCU ;MCU再通過 SPI接口將程序?qū)懭隖LASH。3. 如權(quán)利要求2所述的一種模塊化多電平換流器子模塊的程序在線升級(jí)方法,其特 征在于:完成新程序的接收和存儲(chǔ)后,MCU可以通過PS模式,用新程序重新加載FPGA,實(shí)現(xiàn) FPGA的在線升級(jí);在此過程中,MCU將閉鎖IGBT的控制信號(hào),防止在升級(jí)過程中IGBT出現(xiàn) 誤動(dòng)作。4. 如權(quán)利要求1至3中任意一項(xiàng)所述的一種模塊化多電平換流器子模塊的程序在線升 級(jí)方法,其特征在于=FLASH劃分為FPGAl和FPGA2兩個(gè)存儲(chǔ)區(qū),其中FPGAl是優(yōu)先啟動(dòng)區(qū); 程序升級(jí)過程中,F(xiàn)PGAl區(qū)域用于存儲(chǔ)新程序,F(xiàn)PGA2區(qū)域用于存儲(chǔ)升級(jí)前的程序;在升級(jí) 失敗的情況下可以從FPGA2區(qū)域恢復(fù)升級(jí)前的程序,具有較高的安全性。
【專利摘要】本發(fā)明公開一種模塊化多電平換流器子模塊的程序在線升級(jí)方法。子模塊控制器(SMC)的主要功能由FPGA實(shí)現(xiàn),可以通過光纖從遠(yuǎn)端的閥基控制裝置(VBC)接收新的FPGA程序,并傳送給負(fù)責(zé)管理程序的MCU。MCU將程序存入FLASH,并重新加載FPGA,實(shí)現(xiàn)程序的在線升級(jí)。在升級(jí)過程中,MCU將自動(dòng)保存當(dāng)前的FPGA程序,并在升級(jí)失敗的情況下恢復(fù)當(dāng)前程序,具有較高的安全性。<!-- 2 --><!-- 3 --><!-- 4 --><!-- 5 -->
【IPC分類】G06F9/445
【公開號(hào)】CN105094855
【申請(qǐng)?zhí)枴緾N201410134501
【發(fā)明人】李漢杰, 馮亞東, 陳勇, 汪濤, 陳永奎, 張茂強(qiáng)
【申請(qǐng)人】南京南瑞繼保電氣有限公司, 南京南瑞繼保工程技術(shù)有限公司
【公開日】2015年11月25日
【申請(qǐng)日】2014年5月6日