基于某航空電子設(shè)備的自動測試系統(tǒng)設(shè)計與實現(xiàn)
3.4.3 模擬信號狀態(tài)切換
在對控制性能要求較高的實時控制系統(tǒng)和數(shù)據(jù)采集系統(tǒng)中,就更需要精確定時操作。此系統(tǒng)在自動測試當(dāng)中,需要對被測設(shè)備的各個工作狀態(tài)進行模擬,其工作狀態(tài)的變換是依靠四路開關(guān)量和兩路串口命令的改變而切換的。而狀態(tài)的切換需要在800 ms內(nèi)完成四個不同的狀態(tài)變換,這就需要在狀態(tài)變換線程中采取精確的定時來完成。在Windows中已經(jīng)封裝了計算機底層硬件的訪問,因此在實際應(yīng)用時,應(yīng)針對具體定時精度的要求,采取相適應(yīng)的定時方法。在精度要求較高的情況下,VC中可以利用GetTickCount()函數(shù)。該函數(shù)的返回值是DWORD型,表示以ms為單位的計算機啟動后經(jīng)歷的時間間隔。在較短的定時中其計時誤差為15 ms,經(jīng)過調(diào)研該精度完全滿足該設(shè)備百微秒級的要求。
3.4.4 容錯處理
本測試系統(tǒng)采取了很多容錯的處理手段。這里的容錯不僅包括對用戶非法操作的承受能力,還包括編寫正確的、優(yōu)化的測試代碼。具體包括:C++語言本身容錯的處理,VC++環(huán)境下容錯的處理,強調(diào)Release版本的生成,模塊設(shè)計的容錯處理,用戶界面的容錯處理,測試軟件自檢測等。
4測試結(jié)果
如圖4所示可以看到測試系統(tǒng)手動調(diào)試測試的主界面。測試人員通過點擊測試的各個按鈕對被測組件進行操作,從而判斷返回信號波形及參數(shù),模擬電機的旋轉(zhuǎn)和返回?zé)舻娘@示來判定測試結(jié)果。關(guān)于自動測試、例行測試、自檢和報表的保存生成界面這里就不再羅列了。
5結(jié) 語
本系統(tǒng)設(shè)計完成后,經(jīng)過系統(tǒng)聯(lián)調(diào),功能上可以完全代替原有手動測試系統(tǒng),整套系統(tǒng)工作穩(wěn)定可靠,操作簡單方便,容易維護。無論是自動測試、手動調(diào)試測試還是例行測試都極大地提高了效率和可靠性。整個測試系統(tǒng)的實物圖如圖5所示。
評論