魯 玲,王旭東,陳 瑤
應(yīng)用研究
船用快速直流開關(guān)控制軟件開發(fā)與驗(yàn)證
魯 玲,王旭東,陳 瑤
(武漢船用電力推進(jìn)裝置研究所,武漢 430064)
本文介紹了船用快速直流開關(guān)控制軟件的設(shè)計(jì)開發(fā)過(guò)程,實(shí)現(xiàn)了斷路器分?jǐn)嗪烷]合控制、過(guò)載長(zhǎng)延時(shí)保護(hù)、短路電流保護(hù)、事件記錄等基本功能,并通過(guò)軟件測(cè)試驗(yàn)證了該軟件的功能,為該類軟件的開發(fā)和設(shè)計(jì)提供了參考,對(duì)于提高艦船電力系統(tǒng)的安全性具有實(shí)際意義。
快速直流開關(guān) 軟件開發(fā)軟件測(cè)試
隨著船舶電氣設(shè)備自動(dòng)化程度的不斷提高,對(duì)于嵌入在設(shè)備中的軟件的要求也越來(lái)越高。快速直流開關(guān)系統(tǒng)是船用電力系統(tǒng)中重要的保護(hù)裝置,用來(lái)分配電能,保護(hù)線路免受過(guò)載、短路故障的危害,其控制軟件的正常有效運(yùn)行對(duì)于整個(gè)艦船的安全、正常運(yùn)行有著關(guān)鍵性作用。本文將圍繞船用快速直流開關(guān)系統(tǒng)的基本功能,開發(fā)具備狀態(tài)監(jiān)測(cè)、保護(hù)等功能的控制軟件,并開展驗(yàn)證工作。
快速直流開關(guān)系統(tǒng)的主要功能是實(shí)現(xiàn)斷路器的分閘、合閘,當(dāng)系統(tǒng)中發(fā)生故障時(shí)及時(shí)斷開斷路器,達(dá)到保護(hù)系統(tǒng)的目的。本文開發(fā)的控制軟件具備對(duì)快速直流開關(guān)上電的狀態(tài)自檢功能,具備快速直流開關(guān)狀態(tài)監(jiān)測(cè)及控制功能,通過(guò)監(jiān)測(cè)電流狀態(tài)實(shí)現(xiàn)對(duì)快速直流開關(guān)的過(guò)載長(zhǎng)延時(shí)保護(hù)、短路瞬時(shí)保護(hù),同時(shí)具備與上位機(jī)通信功能。上電自檢狀態(tài)是過(guò)渡狀態(tài),執(zhí)行完此操作后自動(dòng)跳轉(zhuǎn)至下一個(gè)狀態(tài)。當(dāng)自檢成功跳轉(zhuǎn)到正常運(yùn)行狀態(tài),具備測(cè)量功能、保護(hù)功能、控制功能、通訊功能;當(dāng)自檢不成功跳轉(zhuǎn)到故障運(yùn)行狀態(tài),具備測(cè)量功能、復(fù)位功能、通訊功能。系統(tǒng)運(yùn)行方案如圖1所示。
快速直流開關(guān)控制軟件主要包含以下功能。
1)斷路器啟動(dòng)電容自檢功能:接通控制電源后,斷路器進(jìn)入“啟動(dòng)”過(guò)程,軟件對(duì)相關(guān)電容的充電過(guò)程進(jìn)行監(jiān)測(cè)。等待一定時(shí)間后如電容充滿,表明自檢成功;如電容未充滿,自檢失敗,輸出報(bào)警信號(hào)。

圖1 系統(tǒng)運(yùn)行方案狀態(tài)圖
2)斷路器閉合控制功能:軟件接收到合閘命令后,發(fā)出斷路器合閘信號(hào)。每次發(fā)出開關(guān)動(dòng)作信號(hào)后等待一定時(shí)間,判斷開關(guān)狀態(tài)是否正確,如正確則繼續(xù)執(zhí)行后續(xù)動(dòng)作,如不正確則發(fā)出報(bào)警信號(hào)。
3)斷路器分?jǐn)嗫刂乒δ埽很浖邮盏奖镜胤珠l命令后,發(fā)出分閘信號(hào),如分?jǐn)嗖怀晒t發(fā)出報(bào)警信號(hào)。
4)過(guò)載長(zhǎng)延時(shí)保護(hù)功能:當(dāng)測(cè)量到主回路電流在過(guò)載長(zhǎng)延時(shí)電流整定范圍內(nèi),且持續(xù)時(shí)間大于過(guò)載長(zhǎng)延時(shí)時(shí)間整定值時(shí),保護(hù)輸出給斷路器,如保護(hù)不成功則發(fā)出報(bào)警信號(hào)。
5)短路電流保護(hù)功能:當(dāng)測(cè)量到主回路電流大于短路電流整定值時(shí),保護(hù)輸出給斷路器,如保護(hù)不成功則發(fā)出報(bào)警信號(hào)。根據(jù)電流方向,短路電流保護(hù)功能分為正向保護(hù)和負(fù)向保護(hù)。
6)事件記錄功能:在快速直流開關(guān)接通控制電源后,軟件可記錄啟動(dòng)電容自檢、斷路器分合閘、故障保護(hù)等事件,能記錄事件發(fā)生時(shí)間、保護(hù)動(dòng)作類型及其他事件信息。
本控制軟件屬于嵌入式ARM軟件,軟件的設(shè)計(jì)主要采用結(jié)構(gòu)化的方法:一是將全局變量進(jìn)行適當(dāng)分組,形成結(jié)構(gòu)體變量;二是將實(shí)現(xiàn)各功能的語(yǔ)句封裝成函數(shù),根據(jù)需求進(jìn)行調(diào)用。軟件運(yùn)行以“無(wú)限循環(huán)”結(jié)合“中斷觸發(fā)”的方式進(jìn)行,在初始化完成后進(jìn)入無(wú)限循環(huán),由各類中斷觸發(fā)進(jìn)行各類操作。本軟件的執(zhí)行方案如圖2所示。
按照功能及作用,將軟件代碼結(jié)構(gòu)劃分為初始化程序、主循環(huán)程序、中斷服務(wù)程序及公用函數(shù)庫(kù)。初始化程序包含所有初始化函數(shù)、上電自檢函數(shù)、上電讀EEPROM函數(shù),僅在程序開始運(yùn)行時(shí)執(zhí)行一次;主循環(huán)程序包含所有實(shí)現(xiàn)程序功能的函數(shù),可根據(jù)功能的復(fù)雜程度進(jìn)行進(jìn)一步劃分;中斷服務(wù)程序包含所有程序調(diào)用的中斷函數(shù),例如定時(shí)器中斷、AD采樣中斷、RS485中斷、CAN中斷;公用函數(shù)庫(kù)包含所有程序中調(diào)用的基本功能函數(shù),例如保護(hù)通用函數(shù)、事件記錄函數(shù)、濾波函數(shù)等。
根據(jù)軟件層次及結(jié)構(gòu)劃分,進(jìn)一步設(shè)計(jì)軟件單元結(jié)構(gòu)。將軟件各部件按照輸入來(lái)源分為接口層和和控制層,接口層包含了初始化模塊、主循環(huán)模塊以及模擬量采樣中斷、CAN中斷和RS485中斷,控制層則包含定時(shí)器中斷和外部中斷,如圖3所示。

圖2 快速直流開關(guān)控制軟件執(zhí)行方案

圖3 軟件單元結(jié)構(gòu)圖
根據(jù)軟件設(shè)計(jì)方案,采用C語(yǔ)言在MDK集成開發(fā)環(huán)境中完成軟件開發(fā)、編譯和調(diào)試,并由獨(dú)立的單元測(cè)試人員完成單元測(cè)試。通過(guò)Testbed軟件開展靜態(tài)分析和代碼審查,人工完成代碼走查,發(fā)現(xiàn)程序bug12個(gè),均已修正,語(yǔ)句覆蓋率達(dá)到100%。
完成軟件編碼并通過(guò)單元測(cè)試后,即可開展快速直流開關(guān)控制軟件的功能與性能驗(yàn)證工作。包括配置項(xiàng)測(cè)試和系統(tǒng)測(cè)試,均采用黑盒測(cè)試方式。其中配置項(xiàng)測(cè)試在模擬環(huán)境中進(jìn)行,系統(tǒng)測(cè)試在快速直流開關(guān)系統(tǒng)的真實(shí)工作環(huán)境中開展。
在開始測(cè)試工作前,首先對(duì)整個(gè)測(cè)試工作進(jìn)行合理的計(jì)劃,主要包括測(cè)試依據(jù)、測(cè)試環(huán)境、計(jì)劃執(zhí)行的測(cè)試、測(cè)試結(jié)束準(zhǔn)則等。
測(cè)試依據(jù):包含標(biāo)準(zhǔn)的指導(dǎo)程序《軟件測(cè)試規(guī)范》,以及快速直流開關(guān)控制軟件的研制任務(wù)書、技術(shù)要求、軟件的最終使用目的等。
測(cè)試環(huán)境:即開展相應(yīng)的測(cè)試工作所必需的軟硬件環(huán)境。根據(jù)盡早介入原則,測(cè)試環(huán)境也需要提前計(jì)劃,方便根據(jù)實(shí)際情況及時(shí)準(zhǔn)備測(cè)試環(huán)境,以免影響測(cè)試進(jìn)度。
計(jì)劃執(zhí)行的測(cè)試:根據(jù)GJB102A《軟件安全性設(shè)計(jì)準(zhǔn)則》,快速直流開關(guān)控制軟件安全性等級(jí)為B級(jí),結(jié)合本軟件特點(diǎn),配置項(xiàng)測(cè)試和系統(tǒng)測(cè)試分別要執(zhí)行的測(cè)試類型見表1。然后再結(jié)合需求規(guī)格說(shuō)明和研制任務(wù)書中明確提出的需求,識(shí)別并標(biāo)識(shí)所有需開展的測(cè)試項(xiàng)。

表1 測(cè)試類型表
測(cè)試結(jié)束準(zhǔn)則:1)測(cè)試用例全部通過(guò);2)未執(zhí)行及未通過(guò)的測(cè)試用例均獲得批準(zhǔn);3)測(cè)試被取消。
測(cè)試計(jì)劃完成并通過(guò)評(píng)審后,需要針對(duì)每一個(gè)已標(biāo)識(shí)的測(cè)試項(xiàng)設(shè)計(jì)可執(zhí)行的測(cè)試用例。根據(jù)快速直流開關(guān)控制軟件的功能特點(diǎn),設(shè)計(jì)測(cè)試用例主要采用的方法有等價(jià)類劃分法、邊界值分析法和經(jīng)驗(yàn)判斷法等。設(shè)計(jì)測(cè)試用例時(shí),需明確預(yù)期的測(cè)試結(jié)果和測(cè)試結(jié)果判定準(zhǔn)則。
根據(jù)盡早介入原則,測(cè)試工作應(yīng)在需求開發(fā)階段就開始,并在設(shè)計(jì)與實(shí)現(xiàn)階段持續(xù)。通過(guò)對(duì)文檔審查,及時(shí)與開發(fā)人員溝通,盡早發(fā)現(xiàn)需求和設(shè)計(jì)文檔中的錯(cuò)誤與不合理,將糾正錯(cuò)誤的工作量和損失降到最低,增強(qiáng)軟件的可測(cè)試性。
開始快速直流開關(guān)控制軟件功性能驗(yàn)證前,開發(fā)人員搭建測(cè)試的軟件環(huán)境和測(cè)試環(huán)境,測(cè)試人員確認(rèn)后,即依照測(cè)試計(jì)劃和測(cè)試用例開始測(cè)試工作。測(cè)試過(guò)程中,測(cè)試人員對(duì)每個(gè)測(cè)試用例的執(zhí)行結(jié)果如實(shí)記錄,并記錄測(cè)試遇到的問題,將軟件缺陷提交到專門的缺陷管理系統(tǒng)中,跟蹤閉環(huán)。
本軟件在配置項(xiàng)測(cè)試中發(fā)現(xiàn)缺陷32個(gè),在系統(tǒng)測(cè)試中發(fā)現(xiàn)缺陷6個(gè),均為一般缺陷,所有缺陷均已通過(guò)回歸測(cè)試。最后,測(cè)試人員形成相應(yīng)的軟件測(cè)試報(bào)告。
測(cè)試工作結(jié)束后,組織相關(guān)人員和領(lǐng)域?qū)<覍?duì)測(cè)試報(bào)告進(jìn)行評(píng)審,評(píng)審時(shí)重點(diǎn)關(guān)注快速直流開關(guān)控制軟件的保護(hù)功能實(shí)現(xiàn)情況。從測(cè)試結(jié)果來(lái)看,過(guò)載長(zhǎng)延時(shí)保護(hù)、正向短路電流保護(hù)和負(fù)向短路電流保護(hù)均能正常動(dòng)作,未出現(xiàn)拒不動(dòng)作的偶然情況,且保護(hù)精度滿足性能要求。當(dāng)出現(xiàn)故障時(shí),軟件能正確記錄故障事件信息,具有一定的參考意義。此外,其他測(cè)試用例的測(cè)試結(jié)果也與預(yù)期一致。
針對(duì)船用快速直流開關(guān)系統(tǒng)的主要功能,本文開發(fā)了快速直流開關(guān)控制軟件,提供了軟件設(shè)計(jì)的思路和方法,并開展了完整的驗(yàn)證工作。結(jié)果表明本軟件實(shí)現(xiàn)了快速直流開關(guān)系統(tǒng)啟動(dòng)電容自檢、斷路器分?jǐn)嗪烷]合控制、過(guò)載長(zhǎng)延時(shí)保護(hù)、短路電流保護(hù)、事件記錄等功能。通過(guò)開展本項(xiàng)研究工作,為該類軟件的開發(fā)和設(shè)計(jì)提供了思路和參考,對(duì)于提高艦船電力系統(tǒng)的安全性具有實(shí)際意義。
[1] 王福生, 陳崢, 胡博, 等. 雙通信電源系統(tǒng)自動(dòng)母聯(lián)開關(guān)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電力系統(tǒng)保護(hù)與控制, 2019, 47(2): 161-166.
[2] 時(shí)啟國(guó). 模塊化嵌入式軟件的開發(fā)與應(yīng)用[J]. 機(jī)械設(shè)計(jì), 2021, 38(11): 147.
[3] 鄒智榮, 唐鵬輝, 羅源. 嵌入式軟件開發(fā)模式與軟件架構(gòu)研究[J]. 電子技術(shù)與軟件工程, 2021(15): 29-30.
[4] 周平平, 張俊, 羅海鷹, 等. 軍用嵌入式軟件測(cè)試技術(shù)研究[J]. 教練機(jī), 2021(2): 27-31.
[5] 黃清清, 許宏斌. 軟件測(cè)試計(jì)劃與測(cè)試用例在嵌入系統(tǒng)中的應(yīng)用[J]. 艦船電子工程, 2005(1): 59-63.
Development and Verification of Control Software for Marine fast DC switch
Lu Ling, Wang Xudong, Chen Yao
(Wuhan Institute of Marine Electric Propulsion, Wuhan 430064, China)
TM591
A
1003-4862(2022)12-0058-03
2022-02-24
魯玲(1993-),女,助理工程師。研究方向:嵌入式軟件測(cè)試。E-mail:1344884162@qq.com