李莉 楊文靜 曾志
1 防化指揮工程學院二系核電子技術教研室 北京 102205
2 防化指揮工程學院14隊 北京 102205
基于LabVIEW的虛擬網(wǎng)絡化信號發(fā)生器設計
李莉1楊文靜2曾志2
1 防化指揮工程學院二系核電子技術教研室 北京 102205
2 防化指揮工程學院14隊 北京 102205
基于LabVIEW設計虛擬的網(wǎng)絡化信號發(fā)生器,實現(xiàn)通過“服務器”端實時控制“客戶端”產(chǎn)生不同的信號,在信號發(fā)生器的研制方面邁出新的一步。
虛擬儀器;LabVIEW;信號發(fā)生器
Author’s addressInstitute of Chemical Defence, Beijing, China 102205
虛擬儀器技術是計算機技術、現(xiàn)代測控技術和電子技術相互結(jié)合、滲透的產(chǎn)物[1]。目前,我國的高檔臺式儀器,如信號發(fā)生器等主要依賴進口。筆者認為,可采用虛擬儀器技術,僅采購適用的通用硬件,基于虛擬儀器軟件平臺,開發(fā)自己的高性價比儀器系統(tǒng)。
軟件是整個系統(tǒng)的核心,本文將基于虛擬儀器軟件開發(fā)語言LabVIEW,介紹虛擬網(wǎng)絡化信號發(fā)生器設計。
美國國家儀器公司(NI)的虛擬儀器開發(fā)平臺LabVIEW[2](Laboratory Virtual Instrument Engineering Workbench)是應用最為廣泛的一種虛擬儀器開發(fā)環(huán)境。LabVIEW是基于圖形化編程語言(即所謂G語言)的虛擬儀器開發(fā)環(huán)境,它不需文本代碼就可編寫一個完整的虛擬儀器。LabVIEW含豐富的子函數(shù)和庫,具有數(shù)值計算、數(shù)據(jù)采集、信號處理以及文件讀寫等模塊,基于LabVIEW的虛擬儀器程序還可在多種操作系統(tǒng)下運行。
信號發(fā)生器通常用于電子電路的性能或參數(shù)測量。傳統(tǒng)信號發(fā)生器價格昂貴,操作復雜,不易開發(fā)、維護和升級。而使用基于LabVIEW開發(fā)的虛擬信號發(fā)生器,具有編程簡單、直觀、操作方便等特點。下面具體闡述基于LabVIEW的網(wǎng)絡化信號發(fā)生器的實現(xiàn)方法。
本設計包括兩個部分:網(wǎng)絡化信號發(fā)生器的服務器和網(wǎng)絡化信號發(fā)生器的客戶端。其中“服務器”可通過調(diào)節(jié)按鈕來實時控制“客戶端”產(chǎn)生不同的信號,如正弦波、方波、三角波以及不同的頻率?!翱蛻舳恕眱H實現(xiàn)與“服務器”的通訊和波形顯示。具體指標如下:頻率范圍在1~10 MHz之間,初始相位在0~180°之間,幅值在0~1.0 V之間,生成波形的總點數(shù)為128。
1)網(wǎng)絡化信號發(fā)生器服務器的設計。
①前面板設計:4個旋鈕型輸入控件、3個波形選擇器、頻率顯示、端口和2個指示器。網(wǎng)絡化信號發(fā)生器服務器面板如圖1所示。
②程序框圖設計。分為3個模塊:初始化模塊(實現(xiàn)對數(shù)據(jù)發(fā)送、連接、退出,賦予初值“假”)、波形和頻率控制模塊、網(wǎng)絡監(jiān)聽模塊(使用“TCP偵聽”對網(wǎng)絡實時監(jiān)聽)。以上模塊之間的連接需引用“空字符串”,還需添加錯誤處理對話框,以便對網(wǎng)絡錯誤采取相應處理。網(wǎng)絡化信號發(fā)生器服務器部分程序框圖如圖2所示。
2)網(wǎng)絡化信號發(fā)生器客戶端的設計。
①前面板設計。網(wǎng)絡化信號發(fā)生器客戶端前面板如圖3所示。顯示信號波形窗口用于顯示產(chǎn)生的信號,并用數(shù)字顯示控件顯示當前頻率值。接受命令顯示燈顯示接收到的初始命令,并通過指示燈顯示命令是否符合規(guī)定。兩個通信地址欄,地址欄為主機地址,是要與其建立連接的地址。該地址可為IP句點符號格式或主機名。此處鍵入與主服務器相同的通信端口2052。
②程序框圖設計。數(shù)據(jù)讀取部分通過While循環(huán)實時讀取網(wǎng)絡端發(fā)送的指令,如正確即送入接受命令,顯示控件進行后續(xù)處理。數(shù)據(jù)解析部分包括2個子程序,用于分別將命令進行2次解析后得到的數(shù)據(jù),并對數(shù)據(jù)進行格式轉(zhuǎn)換,如命令正確與否判定結(jié)果、波形、頻率。波形響應部分將最終得到的命令對應到相關控件,指示命令的正確性、3種波形的判定、頻率的響應。錯誤處理部分,如獲取的命令錯誤或有錯誤操作,首先關閉TCP并彈出對話框。網(wǎng)絡化信號發(fā)生器客戶端部分程序框圖如圖4所示。
按照網(wǎng)絡化信號發(fā)生器要求,在LabVIEW平臺上通過網(wǎng)絡實現(xiàn)虛擬數(shù)字信號的產(chǎn)生和調(diào)控??梢?,應用虛擬儀器設計開發(fā)系統(tǒng)操作簡單,功能強大。對于電子實驗室來說,可用虛擬儀器來替代價格昂貴的儀器[3]。相信在網(wǎng)絡化和電子信息高速發(fā)展的21世紀,虛擬儀器將會有更加廣闊的發(fā)展。
[1]袁淵,古軍.虛擬儀器基礎教程[M].西安:西安電子科技大學出版社,2002
[2]陳錫輝,等.LabVIEW8.20程序設計從入門到精通[M].北京:清華大學出版社,2007
[3]侯國屏,等.LabVIEW7.1編程與虛擬儀器設計[M].北京:清華大學出版社,2005
[4]楊樂平,等.LabVIEW程序設計與應用[M].2版.北京:電子工業(yè)出版社,2005
Design of Virtual Netware Signal Generator based on LabVIEW
Li Li, Yang Wenjing, Zeng Zhi
According to the design of the virtual Netware signal generator based on the LabVIEW. It realized the function that the “server” can control the “client” to generate difference signal, we stepped forward on the research of the signal generator.
virtual instrument; LabVIEW; signal generator
TP311
B
1671-489X(2010)24-0092-02
10.3969/j.issn.1671-489X.2010.24.092