多路三軸光纖陀螺自動化測試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
2.3 程序模塊的實(shí)現(xiàn)
2.3.1 多線程多任務(wù)及自動化的實(shí)現(xiàn)
測試軟件采用LabWindows/CVI的多線程技術(shù),重新設(shè)置了線程池的屬性;實(shí)現(xiàn)了6個(gè)線程同時(shí)運(yùn)行,合理地分配了系統(tǒng)資源,提高了測試效率,解決了同時(shí)測試4套三軸光纖陀螺的問題。另外,在電流數(shù)據(jù)與422數(shù)據(jù)同步上可以采用線程之間的通信進(jìn)行。自動通斷電使用網(wǎng)口向通斷電控制箱發(fā)送通斷電指令。
LabWindows/CVI提供消息傳遞機(jī)制,通過CallCtrlCallback函數(shù)調(diào)用指定控件的回調(diào)函數(shù),從而達(dá)到預(yù)期的自動化處理功能。本設(shè)計(jì)在數(shù)據(jù)自動化處理方面,應(yīng)用了LabWindows/CVI的消息傳遞機(jī)制。采集完成后,首先向數(shù)據(jù)處理模塊發(fā)送數(shù)據(jù)處理消息,數(shù)據(jù)處理模塊接到消息后,執(zhí)行數(shù)據(jù)處理功能;然后向存儲、打印模塊發(fā)送消息,模塊接到消息后,生成相應(yīng)的數(shù)據(jù)報(bào)表。
2.3.2 四通道RS422數(shù)據(jù)幀自動解析模塊
三軸光纖陀螺在測試階段輸出RS422數(shù)據(jù)幀,數(shù)據(jù)幀的格式如表1所示。數(shù)據(jù)幀包括幀頭(1 Byte)、陀螺x軸脈沖數(shù)(2 Byte)、陀螺y軸脈沖數(shù)(2 Bvte)、陀螺z軸脈沖數(shù)(2 Byte)、溫度(2 Byte)和溫度標(biāo)志位(1Byte),數(shù)據(jù)幀每0.312 5 ms更新一次,其中溫度數(shù)據(jù)采用分時(shí)復(fù)用的方式,根據(jù)溫度標(biāo)志的不同溫度數(shù)據(jù)分別為x、y、z軸和電路板的溫度。本文引用地址:http://www.ex-cimer.com/article/193855.htm
由于最多可以4個(gè)陀螺同時(shí)測試,數(shù)據(jù)量為每秒12 800幀數(shù)據(jù);采用961 200 bit·s-1的傳輸速率,接收幀數(shù)據(jù)然后處理并顯示很費(fèi)時(shí)且會丟失數(shù)據(jù)幀;設(shè)計(jì)采用擴(kuò)大串口的接收緩存的方式,把接收緩存的大小設(shè)為32 000,這樣可以利用下一組數(shù)據(jù)的接收時(shí)間來處理上一組接收的數(shù)據(jù);從而為數(shù)據(jù)的處理、存儲及顯示提供更多可以利用的時(shí)間,這是完成數(shù)據(jù)傳輸?shù)年P(guān)鍵。實(shí)驗(yàn)驗(yàn)證了這種方法的處理效率,能滿足實(shí)時(shí)數(shù)據(jù)采集的要求。
2.3.3 實(shí)時(shí)數(shù)據(jù)顯示模塊
在4個(gè)三軸光纖陀螺進(jìn)行數(shù)據(jù)采集時(shí),數(shù)據(jù)采集及實(shí)時(shí)顯示占用大部分的時(shí)間資源,這對實(shí)時(shí)數(shù)據(jù)采集是不利的。減少數(shù)據(jù)顯示占用的時(shí)間資源是首要解決的問題。軟件采用TAB選項(xiàng)卡來進(jìn)行多通道數(shù)據(jù)顯示,用專門的回電函數(shù)控制數(shù)據(jù)顯示,只顯示當(dāng)前處于激活狀態(tài)的子TAB頁對應(yīng)通道的實(shí)時(shí)數(shù)據(jù)。具體實(shí)施步驟:(1)給TAB控件添加回調(diào)函數(shù),重新顯示當(dāng)前TAB對應(yīng)通道產(chǎn)品已經(jīng)采集的數(shù)據(jù);(2)在數(shù)據(jù)采集線程中,只顯示處于激活狀態(tài)子TAB頁對應(yīng)的數(shù)據(jù)。實(shí)際應(yīng)用證明這種方法能很好地解決實(shí)時(shí)數(shù)據(jù)顯示的問題。
2.3.4 溫箱控制模塊曲線實(shí)現(xiàn)
溫箱采用ESPEC的溫箱,其運(yùn)行方式有兩種:定值運(yùn)行和程序運(yùn)行。定值運(yùn)行是設(shè)置一個(gè)溫度點(diǎn),溫箱由當(dāng)前溫度按設(shè)置的參數(shù)向設(shè)置溫度跟進(jìn)。程序運(yùn)行是編寫溫度曲線,溫箱則按照溫度曲線運(yùn)行。設(shè)計(jì)采用程序運(yùn)行方式,用程序通過串口控制編寫溫箱程序。溫度曲線如圖5所示。
3 測試結(jié)果及數(shù)據(jù)處理結(jié)果
(1)實(shí)時(shí)采集的數(shù)據(jù)如圖5和圖6所示,顯示了實(shí)時(shí)采集后x、y和z軸脈沖和溫度曲線。
(2)數(shù)據(jù)處理的結(jié)果如圖6右側(cè)所示,從上至下依次為x、y和z軸的零偏和零偏穩(wěn)定性。
(3)系統(tǒng)可以同時(shí)采集4套三軸光纖陀螺。系統(tǒng)對陀螺工作電流的測試精度達(dá)到0.5mA。
4 結(jié)束語
多路自動化測試系統(tǒng)是降低測試成本、提高測試準(zhǔn)確性和改善測效率的有效途徑。設(shè)計(jì)是針對三軸光纖陀螺測試流程復(fù)雜且耗時(shí)長的特點(diǎn)而開發(fā)的自動化測試系統(tǒng)。實(shí)時(shí)多任務(wù)系統(tǒng),使用LabWindows/CVI開發(fā)環(huán)境的多線程技術(shù)實(shí)現(xiàn)更高的效率,便于系統(tǒng)資源的調(diào)度與數(shù)據(jù)傳輸。滿足自動化測試要求,并在某研究所得到了很好應(yīng)用,提高了測試效率。
評論