焦震 樊茜 張震 劉海山 丁懷龍
(北京精密機電控制設(shè)備研究所 北京市 100076)
近幾年,機電伺服技術(shù)已經(jīng)成為整個伺服技術(shù)的發(fā)展方向。機電伺服系統(tǒng)將電動機、減速器、滾珠絲杠、檢測裝置和控制器集成化、小型化,克服了傳統(tǒng)液壓系統(tǒng)固有的一些缺點。與此同時,機電伺服中越來越多的采用高速1553B 總線的設(shè)計方案,伺服控制驅(qū)動軟件用于實現(xiàn)伺服機構(gòu)閉環(huán)控制及性能補償功能,傳輸速率大幅提高。這對于配置項測試而言也提出了巨大的挑戰(zhàn)。本文在測試技術(shù)上的創(chuàng)新,有效提高了軟件測試的有效性和測試的充分性,縮短了軟件開發(fā)的周期和成本,收到了很好的經(jīng)濟效益和社會效益,并且對今后的軟件測試工作的開展具有良好的指導和借鑒作用。
根據(jù)某伺服控制驅(qū)動軟件及CPLD 軟件的特點,本文探究了一種全新的測試方法。某項目伺服控制驅(qū)動器采用的是4Mbps 1553B總線與BC 進行通信,原有的設(shè)備均不能進行4Mbps 1553B 總線的測試,因此首先搭建高速1553B 總線的測試環(huán)境。其次,對于軟件在較高速總線傳輸速率下的穩(wěn)定性需要做出驗證,這就要求測試人員要根據(jù)協(xié)議,設(shè)計大量的測試用例,包括正常情況和異常情況軟件的處理是否正確,可靠性是否足夠高。采用故障注入技術(shù),有效模擬了各軟件在彈上可能發(fā)生的各種突發(fā)異常情況,激發(fā)可能存在的故障模式,檢驗軟件對錯誤命令或非法數(shù)據(jù)輸入的檢測能力和對非常規(guī)操作、誤操作的適應能力。另一方面,依托1553B 測試板卡和上位機測試軟件,通過設(shè)置指令消息間不同的時間間隔和消息周期,進一步可以驗證4Mbps 的1553B 總線在傳輸?shù)臄?shù)據(jù)量大小不同的情況下,是否依然穩(wěn)定可靠。
伺服控制驅(qū)動器通過4Mbps 1553B 總線與BC 連接,較之前常用的1Mbps 1553B 總線傳輸速度提高了4 倍。1553B 總線是一種時分制指令響應式多路傳輸數(shù)據(jù)總線,具有很高的可靠性和良好的實時性。1553B 總線由4 部分基本硬件組成:傳輸介質(zhì)、總線控制器、遠程終端和總線監(jiān)視器。1553B 總線采用異步、半雙工方式傳輸,1553B 總線BC 向某一終端發(fā)送一個接收/發(fā)送指令,RT 在規(guī)定的響應時間內(nèi)發(fā)回一個狀態(tài)字并執(zhí)行消息的接收/發(fā)送。1553B 采用雙冗余總線,有兩個傳輸通道,保證了良好的容錯性和故障隔離。
軟件搭載于處理能力更強的TMS320F28335 型DSP,作為運算核心,TMS320F28335 具有150MHz 的高速處理能力,具備32 位浮點處理單元。它內(nèi)部資源豐富,存儲器容量大,接口豐富。由于機電伺服系統(tǒng)動態(tài)性能較高,伺服控制驅(qū)動軟件的閉環(huán)控制周期縮短到100us,相對于傳統(tǒng)伺服控制驅(qū)動軟件的1ms 的閉環(huán)周期縮短了90%。閉環(huán)周期縮短了,軟件的處理任務并未減少。另外使用工業(yè)級CPLD 作為伺服控制器的邏輯接口器件,完成復位邏輯、過流邏輯保護及恢復、雙極性PWM 產(chǎn)生和雙極性PWM 邏輯互鎖等工作。
圖1:測試實物環(huán)境
相較于液壓項目的伺服控制驅(qū)動軟件,機電項目的伺服控制驅(qū)動軟件代碼量大,大多處于中等規(guī)模的水平。除此之外,軟件與外部的接口采用4M 帶寬的1553B 總線,總線數(shù)據(jù)傳輸速率更快;另一方面,伺服電機的控制采用三環(huán)控制算法,即位置環(huán)、速度環(huán)和電流環(huán),相比于液壓項目的算法更加復雜,數(shù)據(jù)處理量也隨之增大,總而言之,機電項目軟件復雜度的提高對于軟件測試者說需要更強的邏輯思維能力,測試的難度隨之提高。
測試的首要工作就是搭建面向4Mbps 1553B 高速總線的測試環(huán)境,測試環(huán)境的搭建采用4Mbps 1553B 總線板卡,1553B 總線板卡實現(xiàn)了 1553B 數(shù)據(jù)總線仿真功能和總線節(jié)點模擬功能,滿足實驗仿真需求。主機接口為 PCI 總線接口,板卡可以設(shè)置為BC、RT 和BM 三種模式。本測試環(huán)境板卡設(shè)置為BC 模式,支持單條消息的定時發(fā)送,分辨率為1ms,并且消息間隔時間可設(shè),分辨率為0.25us。上位機軟件采用板卡配套的總線測試軟件。半實物仿真測試環(huán)境使用CCS3.3 應用開發(fā)平臺,目標機為伺服控制驅(qū)動器,用來運行伺服控制驅(qū)動軟件;在進行功能測試時,上位機通過總線測試軟件向目標機發(fā)送1553B 總線指令, 目標機則通過1553B 總線板卡將消息轉(zhuǎn)發(fā)給上位機,上位機通過總線測試軟件讀取1553B 總線消息。
測試環(huán)境搭建中,終端電阻是必不可少的。它的主要作用是匹配信號源和傳輸線之間的阻抗,減少反射,避免振蕩。不同于帶寬是1M 的1553B 總線,4Mbps 1553B 高速總線的數(shù)據(jù)傳輸速率較高,易發(fā)生信號的反射,導致通信不成功或不穩(wěn)定,所以搭建測試環(huán)境時務必添加終端電阻。此外,示波器和RTInsight 作為測試環(huán)境中不可缺少的設(shè)備,在性能測試和覆蓋率測試中都發(fā)揮著重要作用。測試實物環(huán)境如圖1 所示。
壓力測試也稱強度測試,是在強負載(大數(shù)據(jù)量、大量并發(fā)用戶等)下的測試。通過查看軟件在峰值使用情況下的操作行為,發(fā)現(xiàn)軟件的某項功能隱患、軟件是否具有良好的容錯能力和可恢復能力。在實際的飛行狀態(tài)下,伺服控制驅(qū)動軟件實時接收控制系統(tǒng)指令,并及時解碼、保存當前控制指令,用于伺服系統(tǒng)閉環(huán)控制,控制指令消息周期性定時發(fā)送,消息內(nèi)容為伺服系統(tǒng)的俯仰、偏航角度命令值。本次測試采用的高速1553B 總線板卡,支持單條消息的定時發(fā)送,分辨率為1ms。測試時將消息配置為控制指令消息,并且定時發(fā)送周期設(shè)置為5ms,此時軟件可以實時接收上位機發(fā)送的控制指令,進行閉環(huán)控制計算,測試人員可以通過設(shè)計測試用例,考察軟件在這種狀態(tài)下是否工作穩(wěn)定和可靠。為了進一步考核軟件在強負載下的工作狀態(tài),我們將上位機發(fā)送控制指令的周期縮短到1ms,此時軟件單位時間內(nèi)接收到的數(shù)據(jù)量明顯增加,在此狀態(tài)下,測試人員通過PWM 接口的輸出、變量監(jiān)控等方法,查看軟件是否具有某些隱患,也就是考核了軟件的抗壓能力。
測試環(huán)境的特征一是環(huán)境的真實性,另一個是環(huán)境的可控性。可控性是指測試環(huán)境是否便于測試數(shù)據(jù)的注入和測試結(jié)果的獲取,也就是說測試人員是否能夠方便的注入數(shù)據(jù)。這里用到最多的就是故障注入技術(shù)。故障注入技術(shù)是一種相對特殊的方法,它最大的特點是高度靈活性,它可以對軟件的容錯性、可靠性、安全性進行測試。本測試技術(shù)所搭建的測試環(huán)境,伺服控制驅(qū)動軟件的輸入信息主要包括三種:BC 通過1553B 總線發(fā)送的指令信息、伺服機構(gòu)其它模擬量信息、電機旋變位置信息。通過以上三個接口,測試人員可以通過設(shè)計測試用例,向軟件注入各種故障,在上位機的總線測試軟件中獲得想要的測試數(shù)據(jù),與此同時,通過JTAG口的在線仿真,測試人員也可方便的注入測試數(shù)據(jù)和獲取結(jié)果。另一方面,測試環(huán)境更加真實,本測試技術(shù)所搭建的半實物仿真環(huán)境,能夠逼真地模擬被測軟件運行所需的真實物理環(huán)境的輸入和輸出,實時接收上位機發(fā)送的控制指令,并且能夠組織被測軟件的輸入,來驅(qū)動被測軟件運行,同時接收被測軟件的輸出結(jié)果。
測試人員搭建了全新的4Mbps 1553B 高速總線測試環(huán)境,較之前采取的測試環(huán)境,該環(huán)境添加了1553B 總線終端電阻,消除了高速1553B 數(shù)據(jù)傳輸?shù)男盘柗瓷洌箍刂破髋c上位機間的通信更加穩(wěn)定可靠。此外測試環(huán)境所采用的測試板卡支持消息的周期性發(fā)送和周期設(shè)置,更貼近于BC 在飛行狀態(tài)下定時發(fā)送控制指令的狀態(tài),有效降低了測試環(huán)境對軟件測試結(jié)果產(chǎn)生的不利影響,提高了軟件測試的精度。
在實際的飛行狀態(tài)下,伺服控制驅(qū)動軟件實時接收控制系統(tǒng)指令,并及時解碼、保存當前控制指令,用于伺服系統(tǒng)閉環(huán)控制,控制指令消息周期性定時發(fā)送,消息內(nèi)容為伺服系統(tǒng)的俯仰、偏航角度命令值。本測試技術(shù)不僅僅模擬了BC 周期性定時發(fā)送控制指令的狀態(tài),還將發(fā)送的周期逐步減小,考核軟件在強負載條件下的工作是否依然穩(wěn)定、可靠,檢驗了軟件的抗壓能力。
本測試技術(shù)所搭建的半實物仿真環(huán)境,能夠逼真地模擬被測軟件運行所需的真實物理環(huán)境的輸入和輸出,測試環(huán)境更加真實有效。環(huán)境的可控性是除了真實性之外另一個測試環(huán)境的特征。4Mbps 1553B 高速總線測試環(huán)境的搭建,更便于測試數(shù)據(jù)的注入和測試結(jié)果的獲取。與此同時,故障注入技術(shù)在系統(tǒng)級測試環(huán)境中得到了更好的應用,我們可以在從軟件中輸入邊界值、故障數(shù)據(jù),通過軟件給控制系統(tǒng)的回令分析故障所造成的結(jié)果,幫助測試人員找到軟件缺陷,發(fā)現(xiàn)潛在的問題。
在某項目的開發(fā)方測試過程中,本文所描述的測試技術(shù)得到了很好的應用,測試人員通過搭建4Mbps 1553B 高速總線測試環(huán)境,運用故障注入技術(shù)設(shè)計多種失效模式,同時利用壓力測試,考察了軟件在大負載狀態(tài)下的工作狀態(tài),用例覆蓋全面,同時也發(fā)現(xiàn)了若干軟件缺陷,為提高軟件的質(zhì)量提供了有力的保證;該測試技術(shù)的應用極大提高了工作效率及發(fā)現(xiàn)問題數(shù)目,為第三方配置項測試節(jié)省了工作量和時間,為開發(fā)方節(jié)省了資金,保證軟件開發(fā)質(zhì)量的同時縮短了開發(fā)的周期。