]<參數(shù)序號(hào)=〃1〃名稱=〃XXX〃值=〃固定字段XX〃描述=〃XX〃/>
[0129]〈/字段類型〉
[0130]<字段類型名稱=〃XXX〃類別=〃顯式重復(fù)數(shù)據(jù)段〃>
[0131]<參數(shù)序號(hào)=〃1〃名稱=〃XXX〃值=〃固定字段XX〃描述=〃XX〃/>
[0132]〈/字段類型〉
[0133]多重組合數(shù)據(jù)段的屬性包括每個(gè)備選數(shù)據(jù)段的名稱和值(即對(duì)應(yīng)的原子數(shù)據(jù)段或者固定格式數(shù)據(jù)段的名稱),描述方法為:
[0134]<字段類型名稱=〃XXX〃類別=〃多重組合數(shù)據(jù)段〃>
[0135]<參數(shù)序號(hào)=〃8〃名稱=〃XX〃值=〃固定格式XX〃/>
[0136]<參數(shù)序號(hào)=〃7〃名稱=〃XX〃值=〃固定格式XX〃/>
[0137]......
[0138]<參數(shù)序號(hào)=〃2〃名稱=〃XX〃值=〃固定格式XX〃/>
[0139]<參數(shù)序號(hào)=〃1〃名稱=〃XX〃值=〃固定格式XX〃/>
[0140]〈/字段類型〉
[0141]動(dòng)態(tài)格式數(shù)據(jù)段的屬性包括固定段中每個(gè)子字段的名稱和值,動(dòng)態(tài)段的名稱、依賴段名稱,以及每個(gè)被選段對(duì)應(yīng)的依賴段取值和備選格式名稱,描述方法為:
[0142]<字段類型名稱=〃XXX〃類別=〃動(dòng)態(tài)格式數(shù)據(jù)段〃>
[0143]<數(shù)據(jù)段序號(hào)=〃0〃名稱=〃XX〃值=〃固定格式XX〃/>
[0144]......
[0145]<數(shù)據(jù)段序號(hào)=〃n〃名稱=〃XX〃值=〃固定格式XX〃>
[0146]<數(shù)據(jù)段序號(hào)=〃n+l〃名稱=〃ΧΧ〃類型=〃備選字段〃依賴數(shù)據(jù)段序號(hào)=〃i〃>
[0147]<備選字段鍵值=〃χχ0〃依賴固定字段=〃固定格式ΧΧ〃/>
[0148]......
[0149]<備選字段鍵值=〃χχ1〃依賴固定字段=〃固定格式ΧΧ〃/>
[0150]〈/數(shù)據(jù)段〉
[0151]〈/字段類型〉
[0152]描述測(cè)試消息格式的屬性包括名稱和標(biāo)志位類型,以及每個(gè)字段的名稱和對(duì)應(yīng)的格式,描述方法如下:
[0153]<消息類型名稱=〃ΧΧΧΧΧ〃標(biāo)志位類型=〃消息頭擴(kuò)展標(biāo)志位〃描述=〃ΧΧ〃>
[0154]<字段名稱=〃ΧΧ〃字段類型名稱=〃固定格式數(shù)據(jù)段ΧΧ〃/>
[0155]<字段名稱=〃ΧΧ〃字段類型名稱=〃顯式重復(fù)數(shù)據(jù)段ΧΧ〃/>
[0156]......
[0157]<字段名稱=〃ΧΧ〃字段類型名稱=〃動(dòng)態(tài)格式數(shù)據(jù)段ΧΧ〃/>
[0158]〈/消息類型〉
[0159]測(cè)試消息的格式描述示例
[0160]原子數(shù)據(jù)段的格式描述方法示例如下:
[0161]<數(shù)據(jù)段名稱=〃距離〃長度="24〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制
V〉
[0162]<數(shù)據(jù)段名稱=〃方位〃長度="16〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制
V〉
[0163]<數(shù)據(jù)段名稱=〃橫向距離〃長度="16〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制〃/>
[0164]<數(shù)據(jù)段名稱=〃縱向距離〃長度="16〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制〃/>
[0165]<數(shù)據(jù)段名稱=〃上層高度〃長度=〃16〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制〃/>
[0166]<數(shù)據(jù)段名稱=〃下層高度〃長度="16〃約束類型=〃無約束〃編碼規(guī)則=〃十進(jìn)制〃/>
[0167]復(fù)合數(shù)據(jù)段的格式描述方法示例如下:
[0168]<字段類型名稱=〃目標(biāo)代碼Α"類別=〃固定格式數(shù)據(jù)段〃>
[0169]<數(shù)據(jù)段名稱=〃保留字段〃值=〃原子數(shù)據(jù)段1〃/>
[0170]<數(shù)據(jù)段名稱=〃目標(biāo)代碼〃值=〃原子數(shù)據(jù)段2〃/>
[0171]〈/字段類型〉
[0172]<字段類型名稱=〃隱式重復(fù)數(shù)據(jù)段A"類別=〃隱式重復(fù)數(shù)據(jù)段〃>
[0173]〈參數(shù)序號(hào)=〃1〃名稱=〃重復(fù)類型名稱〃值=〃固定字段A〃描述=〃〃/>
[0174]〈/字段類型〉
[0175]<字段類型名稱=〃顯式重復(fù)數(shù)據(jù)段B"類別=〃顯式重復(fù)數(shù)據(jù)段〃>
[0176]〈參數(shù)序號(hào)=〃1〃名稱=〃重復(fù)類型名稱〃值=〃固定字段B〃描述=〃〃/>
[0177]〈/字段類型〉
[0178]<字段類型名稱=〃目標(biāo)信息〃類別=〃多重組合數(shù)據(jù)段〃>
[0179]〈參數(shù)序號(hào)=〃8〃名稱=〃經(jīng)度子字段〃值=〃固定_經(jīng)度子字段〃/>
[0180]〈參數(shù)序號(hào)=〃7〃名稱=〃瑋度子字段〃值=〃固定_瑋度子字段〃/>
[0181]〈參數(shù)序號(hào)=〃6〃名稱=〃海拔高度子字段〃值=〃固定_海拔高度子字段〃/>
[0182]〈參數(shù)序號(hào)=〃5〃名稱=〃航向子字段〃值=〃固定_航向子字段〃/>
[0183]〈參數(shù)序號(hào)=〃4〃名稱=〃速率子字段〃值=〃固定_速率子字段〃/>
[0184]〈/字段類型〉
[0185]<字段類型名稱=〃高度〃類別=〃動(dòng)態(tài)格式數(shù)據(jù)段〃>
[0186]<數(shù)據(jù)段序號(hào)=〃0〃名稱=〃高度類型〃值=〃固定_高度類型選擇〃/>
[0187]<數(shù)據(jù)段序號(hào)=〃1〃名稱=〃高度源代碼〃值=〃固定_高度源〃>
[0188]〈數(shù)據(jù)段序號(hào)=〃2〃名稱=〃高度值〃類型=〃備選字段〃依賴數(shù)據(jù)段序號(hào)=〃0">
[0189]〈備選字段鍵值="00"依賴固定字段=〃固定_無符號(hào)位高度值"/>
[0190]<備選字段鍵值="01"依賴固定字段=〃固定_帶符號(hào)位高度值"/>
[0191]〈/數(shù)據(jù)段〉
[0192]〈/字段類型〉
[0193]測(cè)試消息的格式描述方法如下:
[0194]<消息類型名稱=〃測(cè)試消息A"描述=〃簡單測(cè)試〃標(biāo)志位類型=〃消息頭擴(kuò)展標(biāo)志位〃>
[0195]<字段名稱=〃位置〃字段類型名稱=〃固定格式數(shù)據(jù)段A〃/>
[0196]<字段名稱=〃名稱〃字段類型名稱=〃顯式重復(fù)數(shù)據(jù)段B〃/>
[0197]<字段名稱=〃情報(bào)〃字段類型名稱=〃隱式重復(fù)數(shù)據(jù)段C〃/>
[0198]<字段名稱=〃狀態(tài)〃字段類型名稱=〃多重組合數(shù)據(jù)段D〃/>
[0199]<字段名稱=〃來源〃字段類型名稱=〃動(dòng)態(tài)格式數(shù)據(jù)段E〃/>
[0200]〈/消息類型〉
[0201]測(cè)試消息賦值與發(fā)送
[0202]功能組成
[0203]測(cè)試消息的賦值與發(fā)送功能由三個(gè)模塊組成,即數(shù)據(jù)段賦值模塊、發(fā)送方式配置模塊、測(cè)試消息打包與發(fā)送模塊。
[0204]a)數(shù)據(jù)段賦值
[0205]數(shù)據(jù)段賦值是對(duì)測(cè)試消息格式中定義的每一個(gè)數(shù)據(jù)段分別進(jìn)行賦值。
[0206]原子數(shù)據(jù)段賦值的方式為:保留約束的字段不需要賦值;枚舉約束的字段需要從預(yù)設(shè)的枚舉值中選擇一個(gè);無約束字段可以自由輸入。
[0207]復(fù)合數(shù)據(jù)段的賦值方法為:對(duì)構(gòu)成復(fù)合數(shù)據(jù)段的所有原子數(shù)據(jù)段逐個(gè)賦值。
[0208]對(duì)于固定格式數(shù)據(jù)段,對(duì)其中的每個(gè)原子數(shù)據(jù)段分別進(jìn)行賦值即可;
[0209]對(duì)于顯示和隱式重復(fù)數(shù)據(jù)段,根據(jù)重復(fù)次數(shù)對(duì)重復(fù)數(shù)據(jù)段進(jìn)行添加和賦值,需要重復(fù)幾次則添加幾個(gè)重復(fù)數(shù)據(jù)段并賦值;
[0210]對(duì)于多重組合數(shù)據(jù)段,對(duì)于格式中的備選數(shù)據(jù)段逐個(gè)進(jìn)行判斷,如果有需要?jiǎng)t進(jìn)行賦值,無需要?jiǎng)t不必進(jìn)行賦值;
[0211]對(duì)于動(dòng)態(tài)格式數(shù)據(jù)段,首先對(duì)固定段進(jìn)行賦值,賦值方法與固定格式數(shù)據(jù)段相同,其次對(duì)備選數(shù)據(jù)段進(jìn)行賦值,系統(tǒng)會(huì)根據(jù)備選數(shù)據(jù)段依賴的數(shù)據(jù)段的賦值情況自動(dòng)選擇一個(gè)備選數(shù)據(jù)段作為當(dāng)前數(shù)據(jù)段,只需要對(duì)此數(shù)據(jù)段進(jìn)行賦值即可。
[0212]b)發(fā)送方式配置
[0213]測(cè)試消息的發(fā)送主要從以下幾個(gè)方面配置:發(fā)送協(xié)議、發(fā)送數(shù)量、發(fā)送間隔、是否循環(huán)發(fā)送。
[0214]發(fā)送協(xié)議配置:系統(tǒng)內(nèi)置了若干種通信協(xié)議供用戶選擇,用戶可以自由選擇。如果用戶需要其他的通信協(xié)議,系統(tǒng)可以生成一個(gè)代碼框架,用戶在代碼中集成所用的通信協(xié)議后編譯為一個(gè)動(dòng)態(tài)庫即可由系統(tǒng)自動(dòng)加載;
[0215]發(fā)送數(shù)量配置:設(shè)置測(cè)試消息需要發(fā)送的總的數(shù)量;
[0216]發(fā)送間隔配置:設(shè)置每發(fā)送兩個(gè)測(cè)試消息之間的時(shí)間間隔,單位為毫秒;
[0217]循環(huán)發(fā)送配置:如果選擇了循環(huán)發(fā)送,當(dāng)最后一個(gè)消息完成發(fā)送后,再從第一個(gè)消息重新開始發(fā)送,直到收到停止命令,如果選擇了不循環(huán)發(fā)送,則最后一個(gè)消息發(fā)送完成后自動(dòng)停止。
[0218]c)測(cè)試消息打包與發(fā)送
[0219]測(cè)試消息的打包發(fā)送是指根據(jù)測(cè)試消息格式的定義和賦值,將所有標(biāo)志位和數(shù)據(jù)段封裝為一個(gè)連續(xù)的數(shù)據(jù)塊并按照配置的發(fā)送方式進(jìn)行發(fā)送。
[0220]對(duì)于消息頭擴(kuò)展標(biāo)志位類型,首先確定標(biāo)志位段的字節(jié)數(shù),即「n/7字節(jié);其次是標(biāo)志位的賦值和消息打包,標(biāo)志位段除去最后一個(gè)字節(jié)的連接位置O外,其他字節(jié)的連接位都置1,然后從消息的第I個(gè)數(shù)據(jù)段開始進(jìn)行逐個(gè)判斷,如果第i個(gè)數(shù)據(jù)段賦了值則將第I個(gè)標(biāo)志(除去連接位)為置為1,并將該數(shù)據(jù)段拼接到第1-ι個(gè)數(shù)據(jù)段之后,如果第i個(gè)數(shù)據(jù)段沒有賦值,則給第i個(gè)標(biāo)志位(除去連接位)置0,該數(shù)據(jù)段不打包。
[0221]對(duì)于數(shù)據(jù)段頭擴(kuò)展標(biāo)志位類型,從消息的第I個(gè)數(shù)據(jù)段開始進(jìn)行逐個(gè)判斷,如果第i個(gè)數(shù)據(jù)段賦了值則在該數(shù)據(jù)段之前擴(kuò)展一個(gè)比特位作為標(biāo)志位并置為1,然后將該數(shù)據(jù)段和標(biāo)志位拼接到第i_l個(gè)數(shù)據(jù)段之