新聞中心

EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 電子測(cè)量?jī)x器IO模擬器設(shè)計(jì)

電子測(cè)量?jī)x器IO模擬器設(shè)計(jì)

作者:陳飛 余燁 西南電子電信技術(shù)研究所(成都610041) 時(shí)間:2008-07-08 來源:電子產(chǎn)品世界 收藏

摘要: 本文介紹一種電子實(shí)現(xiàn)方法。以HP8753E為例討論了模擬器的部分實(shí)現(xiàn)細(xì)節(jié)及模擬結(jié)果。

關(guān)鍵詞:
 ;;


  2008年4月25日收到本文。陳飛:高級(jí)工程師,研究方向?yàn)殡娮?a class="contentlabel" href="http://2s4d.com/news/listbylabel/label/測(cè)量">測(cè)量技術(shù)。

引言

  自動(dòng)測(cè)試系統(tǒng)經(jīng)常使用各種電子進(jìn)行系統(tǒng)集成。由于訂貨周期限制,這些儀器可能要到系統(tǒng)集成的后期才能到貨,因此軟件系統(tǒng)被迫延遲到到貨后才能進(jìn)行與儀器設(shè)備進(jìn)行聯(lián)調(diào)。由于聯(lián)調(diào)中發(fā)現(xiàn)的問題引發(fā)的設(shè)計(jì)更改,將大大延緩系統(tǒng)交付的時(shí)間。

  通過預(yù)先得到的技術(shù)資料設(shè)計(jì),模擬實(shí)際設(shè)備的IO響應(yīng),可以在儀器設(shè)備到貨前開始與軟件系統(tǒng)的聯(lián)調(diào)。另一方面,開發(fā)人員常常需要并行進(jìn)行系統(tǒng)和分機(jī)調(diào)試,采用模擬器也可解決實(shí)際設(shè)備數(shù)量限制問題,提高系統(tǒng)開發(fā)效率。

  本文提出的IO模擬器,根據(jù)輸入IO數(shù)據(jù)流進(jìn)行狀態(tài)轉(zhuǎn)換,并由當(dāng)前狀態(tài)實(shí)現(xiàn)模擬數(shù)據(jù)輸出。由于采用文本格式的自定義數(shù)據(jù)文件控制模擬器實(shí)例化過程,測(cè)試系統(tǒng)內(nèi)可以同時(shí)模擬多種不同測(cè)量?jī)x器的IO響應(yīng),并具有良好的可擴(kuò)展性。

本文引用地址:http://2s4d.com/article/85399.htm

模擬器工作原理

  如圖1所示,應(yīng)用程序的IO操作由虛擬IO驅(qū)動(dòng)程序傳遞入模擬設(shè)備。IO模擬器通過加載描述設(shè)備工作模式的數(shù)據(jù)文件實(shí)現(xiàn)設(shè)備IO行為仿真。當(dāng)物理IO驅(qū)動(dòng)與虛擬IO驅(qū)動(dòng)程序繼承于同一個(gè)父類時(shí),應(yīng)用程序可以通過配置驅(qū)動(dòng)程序在運(yùn)行時(shí)進(jìn)行物理設(shè)備IO與模擬設(shè)備IO的動(dòng)態(tài)切換。對(duì)實(shí)際設(shè)備的寫入操作就自動(dòng)轉(zhuǎn)發(fā)給模擬設(shè)備,并由模擬設(shè)備對(duì)讀出等操作進(jìn)行響應(yīng),返回相應(yīng)數(shù)據(jù)流到應(yīng)用程序。


圖1  模擬器工作原理示意圖

  IO模擬器根據(jù)數(shù)據(jù)文件實(shí)現(xiàn)一個(gè)用戶定義的有限。如圖2所示:繼承自抽象基類(IOManager)的VISimulator類用于實(shí)現(xiàn)IO模擬器。將模擬器替代實(shí)際IO管理器對(duì)象(VisaIOManger)進(jìn)行配置后,模擬器將截獲上層應(yīng)用程序發(fā)出的IO指令,并模擬實(shí)際設(shè)備進(jìn)行響應(yīng)。


圖2  模擬器類結(jié)構(gòu)示意圖

  VISimulator的成員states為模擬器可用狀態(tài)表,variables為變量表,current為當(dāng)前狀態(tài)。狀態(tài)表是狀態(tài)類(VIState類)對(duì)象的集合,變量表為變量類(VIVariable類)對(duì)象的集合,變量值可用于狀態(tài)和變量值的入口檢查及計(jì)算。

  當(dāng)寫入操作(Write)發(fā)生時(shí),模擬器遍歷所有的變量及狀態(tài),檢查其入口條件(entrance),對(duì)符合入口條件的變量,更新(Update)變量值(value)。如符合狀態(tài)入口條件,則將該狀態(tài)設(shè)置為當(dāng)前狀態(tài)。對(duì)于當(dāng)前狀態(tài),還需檢查其出口條件(exitus),如符合則設(shè)置當(dāng)前狀態(tài)為空。

  當(dāng)讀出操作(Read)發(fā)生時(shí),模擬器由當(dāng)前狀態(tài)的模擬方法(Simulate)計(jì)算并返回模擬實(shí)際測(cè)量結(jié)果的數(shù)據(jù)。如當(dāng)前狀態(tài)設(shè)置讀操作為出口條件,則模擬器在讀出完成后返回空閑狀態(tài)。如當(dāng)前狀態(tài)為空或非可讀狀態(tài),模擬器將按照變超時(shí)設(shè)置延遲后返回?zé)o效數(shù)據(jù),真實(shí)地模擬IO指令序列錯(cuò)誤造成的測(cè)試過程現(xiàn)象。

  ViSimulator的Load方法用于數(shù)據(jù)文件裝入,由數(shù)據(jù)文件的描述建立狀態(tài)表和變量表。由狀態(tài)和變量的靜態(tài)方法Parse完成解析并返回實(shí)例對(duì)象。

實(shí)現(xiàn)及模擬結(jié)果

  筆者在實(shí)際測(cè)試系統(tǒng)開發(fā)過程中設(shè)計(jì)了前述模擬器,并根據(jù)儀器程控手冊(cè)編寫Agilent公司的HP8753E和E5071C等矢量的數(shù)據(jù)文件,實(shí)現(xiàn)了對(duì)這些實(shí)際儀器IO功能的模擬。下面以HP8753E電壓駐波比測(cè)量為例詳細(xì)介紹IO模擬器實(shí)現(xiàn)方法。

  矢量網(wǎng)絡(luò)分析儀用于測(cè)量射頻元件的端口特性,常用于測(cè)量端口電壓駐波比、衰減、阻抗等參數(shù)。因此其測(cè)量結(jié)果就包括多種格式不同的數(shù)據(jù)組合。當(dāng)用HP8753E進(jìn)行電壓駐波比測(cè)試時(shí),網(wǎng)絡(luò)分析儀會(huì)返回一個(gè)坐標(biāo)數(shù)組,坐標(biāo)的兩維分別是駐波測(cè)量值和測(cè)量頻率。

  根據(jù)HP8753E程控手冊(cè)定義狀態(tài)SWRWaveform用于模擬電壓駐波比測(cè)量狀態(tài):

<SWRWaveform:state>//狀態(tài)名
length:101  //模擬波形長(zhǎng)度  format:value(1.00,1.1)|linear (StartFreq:10,EndFreq:100)
  //模擬波形坐標(biāo)點(diǎn)格式
entrance:outpform(Format=swr) //狀態(tài)
            入口點(diǎn)及輔助條件
exituse:[Read] //狀態(tài)出口
  … …
<SWRWaveform> //狀態(tài)結(jié)束標(biāo)志

  以上文本描述了狀態(tài)的工作模式,當(dāng)在寫入數(shù)據(jù)流中檢測(cè)到字符串outpform時(shí),如模擬器變量表中變量Format=swr時(shí)模擬器進(jìn)入狀態(tài)SWRWaveform。此時(shí)如收到讀出指令,模擬器將由SWRWaveform狀態(tài)模擬輸出電壓駐波比波形,返回一個(gè)101點(diǎn)的兩維坐標(biāo)數(shù)組,其中X為1到1.1之間的隨機(jī)數(shù),Y為從模擬器變量表中變量StartFreq到EndFreq的線性遞增數(shù)值。

  圖3為測(cè)試系統(tǒng)由模擬器實(shí)際得到的測(cè)量波形,模擬器根據(jù)IO數(shù)據(jù)流正確地進(jìn)入了SWRWaveform狀態(tài),并以正確的頻率范圍返回了仿真數(shù)據(jù)。


圖3  模擬器輸出數(shù)據(jù)的結(jié)果波形

結(jié)語

  本文介紹的模擬器適用于文本格式的控制指令集,在電子測(cè)量系統(tǒng)開發(fā)過程中已得到了驗(yàn)證和實(shí)際應(yīng)用。
  
參考文獻(xiàn):

1.  Meilir Page-Jones,UML面向?qū)ο笤O(shè)計(jì)基礎(chǔ),人民郵電出版社,2001.4
2.  87XXET/ES Network Analyzer Programmer’s Guide, Agilent Technologies Inc. 08753-90475, February 2001

路由器相關(guān)文章:路由器工作原理


路由器相關(guān)文章:路由器工作原理


矢量控制相關(guān)文章:矢量控制原理


評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉