亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA仿真模擬技術(shù)的智能電能表軟件可靠性測試系統(tǒng)設(shè)計*

        2017-12-20 02:51:10杜蜀薇趙兵孔令達(dá)岑煒
        電測與儀表 2017年22期
        關(guān)鍵詞:軟件可靠性測試軟件軟件測試

        杜蜀薇,趙兵,孔令達(dá),岑煒

        (1.國家電網(wǎng)公司,北京100031;2.中國電力科學(xué)研究院,北京100192)

        0 引 言

        隨著用電信息采集系統(tǒng)的全面建設(shè),大量智能電能表已投入到現(xiàn)場應(yīng)用中。截至2016年末,全國范圍內(nèi)已累計安裝智能電能表4億多只,每年新增智能電能表安裝數(shù)量達(dá)6 000萬只,智能電能表的安全可靠管理問題一直是電力部門深切關(guān)注的問題[1-4]。目前,智能電能表供應(yīng)商數(shù)量已經(jīng)達(dá)到100多個,規(guī)模有大有小,設(shè)計能力參差不齊,智能電能表投入運行的數(shù)量又極其龐大。如此大規(guī)模的智能電能表投運后,其運行可靠性對電力企業(yè)的經(jīng)營效益和社會形象影響非常大。

        智能電能表現(xiàn)場運行數(shù)據(jù)表明,依據(jù)已有技術(shù)標(biāo)準(zhǔn)進(jìn)行的常規(guī)功能性檢測雖然在一定程度上確保了智能電能表的供貨質(zhì)量,但無法排除其在典型環(huán)境下的潛在軟件隱性故障。這些故障一旦發(fā)生,就是同一軟件批次的所有智能電能表的批量故障,所引發(fā)的后果將不堪設(shè)想,在給電力公司帶來經(jīng)濟(jì)損失的同時,也損害了用戶的切身利益。因此,亟需深入研究智能電能表軟件可靠性測試技術(shù),提高智能電能表軟件成熟度和可靠性,減少智能電能表運行故障[5]。

        FPGA技術(shù)具有使用靈活、高數(shù)據(jù)處理能力、高運行速度和高可靠性等技術(shù)優(yōu)勢,已廣泛應(yīng)用于航空航天[6]、軍事[7-8]、通信和交通[9]等領(lǐng)域中。目前,智能電能表主要由MCU、計量單元、存儲單元、安全單元等部件組成,大多數(shù)功能都是通過嵌入式軟件來實現(xiàn)的[10-11]。為了驗證智能電能表嵌入式軟件的可靠性,設(shè)計了一種基于FPGA仿真模擬技術(shù)的智能電能表軟件測試系統(tǒng)。該系統(tǒng)采用FPGA技術(shù),通過模擬智能電能表各功能芯片的運行工況,通過觀察MCU對模擬板的操作實現(xiàn)智能電能表的軟件可靠性測試。

        1 FPGA在智能電能表軟件測試中的技術(shù)優(yōu)勢

        FPGA是一種新型的半定制邏輯電路,其功能由內(nèi)部規(guī)則排列的邏輯單元陣列(Logic Cell Array)實現(xiàn)。邏輯單元陣列內(nèi)部主要由可配置邏輯模塊(Configurable Logic Block)、輸入輸出模塊(Input Output Block)和內(nèi)部連接模塊(Interconnect Block)3部分組成。FPGA最大的優(yōu)點在于它具有可重復(fù)編程、邏輯功能模塊和I/O模塊配置比較方便靈活等特性,能夠進(jìn)行系統(tǒng)重構(gòu),有效實現(xiàn)用戶需要的功能[12]。

        FPGA支持不同的編程方式,用戶可以根據(jù)不同的配置模式,通過存放在片內(nèi)RAM中的程序來設(shè)置工作狀態(tài)。因此,F(xiàn)PGA應(yīng)用比較方便靈活,并且與ARM相比,具有較強(qiáng)的數(shù)據(jù)處理能力和較高的運行速度[13]。

        在智能電能表軟件測試過程中,需要上位機(jī)測試軟件通過ARM對智能電能表外圍模擬芯片進(jìn)行信息配置并寫入故障。但是,如果ARM在和上位機(jī)測試軟件進(jìn)行信息交互的同時,也與被測智能電能表MCU進(jìn)行信息交互,其處理速度的實時性將會嚴(yán)重降低,甚至引起測試失效。FPGA具有使用靈活、高數(shù)據(jù)處理能力、高運行速度和高可靠性的技術(shù)優(yōu)勢,因此,可采用FPGA的硬件邏輯來實現(xiàn)外圍器件的仿真需求,是可行性較高的方案[14]。

        2 基于FPGA仿真模擬技術(shù)的軟件測試系統(tǒng)設(shè)計

        2.1 測試系統(tǒng)設(shè)計

        智能電能表軟件可靠性測試系統(tǒng)主要由主機(jī)測試軟件、模擬測試板和MCU核心板組成。智能電能表軟件可靠性測試系統(tǒng)邏輯結(jié)構(gòu)如圖1所示。

        2.2 主機(jī)測試軟件設(shè)計

        圖1 智能電能表軟件可靠性測試系統(tǒng)邏輯結(jié)構(gòu)Fig.1 Logical structure of smartmeter software reliability testing system

        智能電能表軟件測試系統(tǒng)主機(jī)測試軟件在設(shè)計時盡量保持各個模塊的獨立性,在設(shè)計模式上采用MVC(Model View Controller,模型-視圖-控制器模式)框架,將用戶界面與數(shù)據(jù)層分離,使用控制層連接用戶界面和數(shù)據(jù)層,這樣使得系統(tǒng)易于維護(hù),開發(fā)效率相對更高。主要包括軟件測試數(shù)據(jù)庫、軟件測試管理、Socket通信和功能模擬測試等模塊,其邏輯架構(gòu)如圖2所示。

        圖2 上位機(jī)測試軟件邏輯結(jié)構(gòu)Fig.2 Logical structure of host computer testing software

        其中,軟件測試數(shù)據(jù)庫主要用于存儲測試用例和參數(shù)配置信息等。測試管理模塊主要包括測試信息導(dǎo)入、功能顯示/配置、自動腳本編譯、測試狀態(tài)及結(jié)果顯示和測試日志/報告管理等模塊,主要完成各類測試信息配置、測試腳本編譯及管理功能,如芯片的選擇、測試方案的選擇與配置、各通信接口的選擇等。Socket通信模塊主要用于完成測試軟件與模擬測試板的通信。功能模擬測試模塊主要根據(jù)實際測試需求,通過FPGA模擬各類型芯片功能,完成實際軟件測試[15]。

        以Socket通信模塊為例,智能電能表軟件測試系統(tǒng)主機(jī)測試軟件通信過程設(shè)計思路如下:

        在測試軟件架構(gòu)中,界面操作是主線程,通過功能按鈕觸發(fā)數(shù)據(jù)管理線程,數(shù)據(jù)管理線程判斷應(yīng)與哪個端口進(jìn)行通信,收發(fā)的是哪種類型的數(shù)據(jù)。建立收/發(fā)兩個線程,與各個測試板建立連接(循環(huán)),將建立連接的通信套接字的服務(wù)器端IP端口保存到通信列表里,之后所有向服務(wù)器端發(fā)送的Socket信息都從這個列表中取出發(fā)送,如圖3所示。

        圖3 Socket通信模塊工作原理Fig.3 Working principle of socket communication module

        在多線程通信過程中,主線程建立消息管理隊列實現(xiàn)線程管理,與數(shù)據(jù)庫連接實現(xiàn)數(shù)據(jù)的存取和數(shù)據(jù)分頁顯示。界面設(shè)計運用C#中的winforms控件完成,界面主題采用頁簽(tabpage)的形式來展示不同的測試模塊,分別為:總體配置頁、計量芯片單元、存儲芯片單元、時鐘芯片單元、安全芯片單元、紅外/485單元、負(fù)載開關(guān)單元、電流電壓檢測單元、通信連接頁。

        2.3 MCU核心板設(shè)計

        MCU核心板和模擬測試板是智能電能表軟件可靠性測試系統(tǒng)的核心器件。MCU核心板相當(dāng)于被測對象,由被測試廠家按照規(guī)范要求加工制作并注入實際運行的智能電能表程序。

        2.4 模擬測試板設(shè)計

        模擬測試板包括模擬監(jiān)控板ARM和芯片模擬板FPGA,使用可編程語言分別模擬仿真計量芯片、存儲芯片、時鐘芯片等,實現(xiàn)智能電能表的軟件測試。模擬仿真過程采用雙端口方式,其中一個端口模擬實現(xiàn)芯片的原有功能,另一個端口將芯片的狀態(tài)信息和響應(yīng)信息實時傳送給控制單元進(jìn)行軟件測試與分析。接口A是主機(jī)測試軟件和模擬測試板之間的接口,采用以太網(wǎng)接口,模擬測試板為服務(wù)端;接口B是模擬測試板內(nèi)部模擬監(jiān)控板ARM與芯片模擬板FPGA之間的接口;接口C是模擬測試板與MCU核心板之間的接口[16-17]。

        芯片模擬板FPGA主要包括I2C總線內(nèi)核、仲裁選擇、三總線、SRAM存儲控制、SRAM芯片、修改芯片內(nèi)容、讀取操作指令和寄存器等功能模塊。仲裁選擇模塊與I2C總線內(nèi)核、三總線模塊、SRAM存儲控制模塊和SRAM芯片依次進(jìn)行信息交互;修改芯片內(nèi)容模塊分別與SRAM存儲控制模塊和寄存器模塊連接;讀取操作指令模塊分別與SRAM芯片和寄存器模塊連接,并與SRAM存儲控制模塊和寄存器模塊進(jìn)行信息交互。

        3 測試系統(tǒng)功能實現(xiàn)

        3.1 系統(tǒng)實現(xiàn)原理

        在軟件測試過程中,模擬監(jiān)控板ARM通過接口A接收主機(jī)測試軟件發(fā)送的指令,同時通過接口B與測試模擬板FPGA進(jìn)行信息交換,完成測試軟件要求的操作。MCU核心板通過接口C對芯片模擬板FPGA進(jìn)行信息交互,模擬智能電能表對芯片的功能操作。智能電能表軟件測試系統(tǒng)工作原理如下:

        (1)模擬電能表對EEPROM的讀寫操作

        通過I2C總線內(nèi)核接收MCU核心板發(fā)送的串行時鐘信號、串行數(shù)據(jù)信號及寫保護(hù)信號,I2C總線內(nèi)核根據(jù)I2C協(xié)議將接收的數(shù)據(jù)信號解析為通信地址、傳輸數(shù)據(jù)及讀寫控制信號;仲裁選擇模塊接收I2C總線內(nèi)核發(fā)送的請求信號,進(jìn)行片選,使對應(yīng)的I2C總線內(nèi)核將通信地址、傳輸數(shù)據(jù)及讀寫控制信號發(fā)送至三總線模塊;三總線模塊通過SRAM存儲控制模塊實現(xiàn)對SRAM的讀寫操作。

        (2)讀取操作指令

        讀取操作指令模塊由操作指令控制子模塊和操作指令FIFO(First Input First Output,先入先出)子模塊兩部分組成,操作指令控制子模塊讀取SRAM存儲器控制模塊內(nèi)的數(shù)據(jù)、地址、讀寫控制等信息,并按照一定的協(xié)議組合成一條完整的操作指令,發(fā)送至操作指令FIFO子模塊。由于FIFO滿足先入先出的排序方式,因此操作指令可按執(zhí)行操作的先后順序存入操作指令FIFO子模塊。當(dāng)寄存器模塊接收到模擬監(jiān)控板ARM發(fā)送的讀取操作指令信號后,讀取相應(yīng)的操作指令,再發(fā)送至模擬監(jiān)控板ARM,實現(xiàn)讀取操作指令功能。

        (3)芯片故障模擬

        芯片故障模擬的主要思路是通過改變芯片內(nèi)特定地址的數(shù)據(jù)來模擬現(xiàn)場復(fù)雜工況引發(fā)的現(xiàn)象。測試系統(tǒng)通過ARM發(fā)送修改芯片內(nèi)容指令至寄存器模塊,寄存器模塊按協(xié)議解析接收的指令,將數(shù)據(jù)、地址、寫控制等信息經(jīng)過修改芯片內(nèi)容模塊發(fā)送至三總線模塊,再通過SRAM存儲控制模塊將修改的數(shù)據(jù)寫入對應(yīng)的地址。在執(zhí)行芯片故障寫入過程中,需屏蔽由I2C內(nèi)核寫入該地址的功能,以免ARM修改的數(shù)據(jù)被MCU核心板寫入的數(shù)據(jù)覆蓋。同時,ARM可通過寄存器模塊將數(shù)據(jù)、地址、讀控制信息發(fā)送至三總線模塊,經(jīng)過SRAM存儲控制模塊讀取SRAM對應(yīng)地址的數(shù)據(jù),以檢驗故障是否成功寫入。

        (4)芯片信息配置

        寄存器模塊按協(xié)議對ARM發(fā)送的配置芯片信息指令進(jìn)行解析,再發(fā)送至I2C內(nèi)核中,然后由I2C配置芯片數(shù)量,修改芯片地址位數(shù)并配置芯片的存儲容量。

        3.2 系統(tǒng)測試流程

        在智能電能表軟件可靠性測試過程中,首先要對被測的智能電能表嵌入式系統(tǒng)進(jìn)行信息配置,由于不同的電能表廠家、同廠家不同型號的電能表都有不同的測試需求,因此需要有個性化的測試策略來配合。主機(jī)測試軟件作為服務(wù)端通過以太網(wǎng)將配置信息下發(fā)到模擬測試板,模擬測試板收到信息并配置成功后開始軟件測試。軟件測試過程如圖4所示。

        智能電能表軟件可靠性測試過程描述如下:

        (1)啟動測試軟件,用戶登陸測試系統(tǒng);

        (2)主機(jī)測試軟件向模擬測試板發(fā)送通信連接請求,若連接成功,系統(tǒng)進(jìn)入配置頁面,若失敗,重新發(fā)起連接請求;

        (3)檢測人員確定送檢樣表型號,在數(shù)據(jù)庫中匹配廠商信息(若是初次測試,錄入電能表信息,將配置信息保存至數(shù)據(jù)庫中;若不是初次測試,直接調(diào)用數(shù)據(jù)庫中的電能表配置信息);

        (4)向模擬測試板發(fā)送配置信息,模擬測試板判斷是否配置成功,若成功,返回“配置成功”提示信息,若失敗,返回“重新發(fā)送配置信息”提示;

        (5)信息配置成功后,進(jìn)入各功能模塊測試頁面,用編寫好的測試用例進(jìn)行軟件測試;

        (6)測試完成后,生成測試報告并將相關(guān)信息存入系統(tǒng)數(shù)據(jù)庫中。

        圖4 軟件測試流程Fig.4 Software testing process

        4 測試系統(tǒng)性能驗證

        為了驗證智能電能表軟件測試系統(tǒng)的性能,分別選擇24家智能電能表生產(chǎn)廠商的26塊單、三相智能電能表分別開展測試系統(tǒng)性能驗證試驗和智能電能表軟件可靠性驗證試驗。其中,測試系統(tǒng)核心功能測試結(jié)果如表1所示。

        表1 測試系統(tǒng)驗證試驗結(jié)果Tab.1 Test result of software reliability testing system

        選用計量參數(shù)出錯恢復(fù)機(jī)制測試、計量校表參數(shù)EEPROM內(nèi)數(shù)據(jù)錯誤測試、計量芯片有效脈沖測試、扣費機(jī)制測試、時鐘同步測試、EEPROM越界測試等測試用例進(jìn)行了10次軟件可靠性測試。測試結(jié)果如表2所示。

        表2 智能電能表軟件測試結(jié)果Tab.2 Test result of smartmeter software

        通過測試結(jié)果分析,基于FPGA仿真模擬技術(shù)的智能電能表測試系統(tǒng)可測試出不同廠家的智能電能表在極限情況下出現(xiàn)的如電能表參數(shù)錯誤未修復(fù);修復(fù)時間過長;少計量或計量偏差、掉電脈沖尾數(shù)丟失、事件記錄EEPROM越界等深度軟件可靠性問題。

        這些問題在常規(guī)測試中,缺陷是觸發(fā)不出來的。若這些缺陷未測出,在現(xiàn)場幾年或更長時間的運行過程中,可能出現(xiàn)因異常事故的發(fā)生或現(xiàn)場各種環(huán)境的干擾導(dǎo)致智能電能表軟件運行故障發(fā)生,這些故障將會給智能電能表正常計量、結(jié)算或運行帶來隱患,產(chǎn)生電費糾紛等事件。

        5 結(jié)束語

        為了有效驗證智能電能表的軟件可靠性,防止大批量智能電能表故障發(fā)生,文章首先分析了FPGA技術(shù)在智能電能表軟件測試中的應(yīng)用需求,從軟、硬件兩方面設(shè)計了一種基于FPGA仿真模擬技術(shù)的智能電能表軟件可靠性測試系統(tǒng)。在該測試系統(tǒng)中應(yīng)用FPGA模擬各類型芯片,實現(xiàn)了智能電能表軟件的快速準(zhǔn)確可靠性測試。之后,選取不同的測試樣本對基于FPGA仿真模擬技術(shù)的智能電能表軟件可靠性測試系統(tǒng)進(jìn)行了性能驗證。驗證結(jié)果表明:基于FPGA仿真模擬技術(shù)的智能電能表測試系統(tǒng)可測試出不同廠家的智能電能表在極限情況下存在電能表參數(shù)錯誤未修復(fù)或修復(fù)時間過長、少計量或計量不準(zhǔn)確、掉電脈沖尾數(shù)丟失、事件記錄EEPROM越界等深度軟件可靠性問題,有效提高了智能電能表軟件的成熟度和可靠性,減少了其批量運行故障隱患。

        猜你喜歡
        軟件可靠性測試軟件軟件測試
        網(wǎng)絡(luò)自適應(yīng)測試軟件運行方法設(shè)計
        基于OBE的軟件測試課程教學(xué)改革探索
        軟件可靠性工程綜合應(yīng)用建模技術(shù)研究
        EXCEL和VBA實現(xiàn)軟件測試記錄管理
        電子制作(2018年16期)2018-09-26 03:27:18
        自動化檢測EPU10A板卡系統(tǒng)設(shè)計與實現(xiàn)
        關(guān)于軟件測試技術(shù)應(yīng)用與發(fā)展趨勢研究
        電子測試(2017年15期)2017-12-18 07:19:20
        軟件測試工程化模型及應(yīng)用研究
        數(shù)控系統(tǒng)軟件可靠性設(shè)計與故障分析技術(shù)
        遠(yuǎn)程開放教育學(xué)生自主學(xué)習(xí)能力評價的研究
        一款重型包裝抗壓系統(tǒng)控制軟件的設(shè)計與開發(fā)
        軟件工程(2014年7期)2014-09-24 20:03:26
        国模无码一区二区三区| 熟妇人妻无乱码中文字幕av| 日本黑人亚洲一区二区| 日本一二三区在线观看视频| 亚洲成av人影院| 国产在线精品欧美日韩电影| 国产精品午睡沙发系列 | 国产精品理人伦国色天香一区二区 | 国产精品久久久三级18| 亚洲国产成人片在线观看无码 | 日韩精品熟妇一区二区三区| 偷看农村妇女牲交| 人妻无码一区二区视频| 国产95在线 | 欧美| 欧美日韩精品乱国产538| 国产69口爆吞精在线视频喝尿| 成人国产一区二区三区精品不卡 | 亚洲日产乱码在线中文字幕| 97成人精品视频在线| 精品久久久久久无码中文野结衣| 丰满的少妇xxxxx青青青| 另类欧美亚洲| 美女视频永久黄网站免费观看国产| 久久精品一区二区三区夜夜| 日本一区二区在线免费看| 日本三级香港三级人妇99| 久久久国产打桩机| 国内老熟妇对白xxxxhd| 国产乱人伦AV在线麻豆A| 中文字幕色视频在线播放| 久久精品国产在热亚洲不卡| 国产欧美性成人精品午夜| 色一乱一伦一图一区二区精品| 国产精品毛片久久久久久l| 日韩有码中文字幕第一页| 手机在线免费观看的av| 四虎永久在线精品免费一区二区 | 在线观看精品国产福利片87| 韩国女主播一区二区三区在线观看 | 中文字幕日韩一区二区不卡| 精品精品国产高清a毛片|