基于虛擬儀器的多通道信號(hào)產(chǎn)生系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
任意波形發(fā)生器是一種常用的信號(hào)源,可廣泛用于科學(xué)研究、生產(chǎn)實(shí)踐和教學(xué)實(shí)踐等領(lǐng)域。傳統(tǒng)的波形發(fā)生器大多采用模擬電路技術(shù),一般由分立元件構(gòu)成,其電路結(jié)構(gòu)復(fù)雜、體積龐大、穩(wěn)定度和準(zhǔn)確度較差,而且僅能產(chǎn)生正弦波、方波、三角波等幾種簡(jiǎn)單波形,難以產(chǎn)生較為復(fù)雜的波形信號(hào)。
隨著微處理器性能的提高,新型的波形發(fā)生器大多已采用軟件仿真而不是單純的用分立元件來(lái)搭建電路,因而有效的解決了傳統(tǒng)信號(hào)發(fā)生器的缺點(diǎn)。虛擬儀器的出現(xiàn)是儀器發(fā)展史上的一場(chǎng)革命,代表著儀器發(fā)展的最新方向和潮流,是信息技術(shù)的一個(gè)重要領(lǐng)域。
本文將結(jié)合虛擬儀器技術(shù)來(lái)進(jìn)行多通道任意波形發(fā)生器、以及信號(hào)采集和分析的研究與設(shè)計(jì)。其硬件開(kāi)發(fā)平臺(tái)采用ADLINK公司的DAQ2206數(shù)據(jù)采集卡,軟件開(kāi)發(fā)平臺(tái)為NI公司的LabVIEW軟件。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是美國(guó)國(guó)家儀器公司的創(chuàng)新軟件,被譽(yù)為“科學(xué)家與工程師”的語(yǔ)言。LabVIEW為不熟悉文本語(yǔ)言編程的設(shè)計(jì)者在測(cè)控領(lǐng)域建立計(jì)算機(jī)儀器系統(tǒng)提供了便捷、輕松的圖形化設(shè)計(jì)開(kāi)發(fā)集成環(huán)境。
LabVIEW集成了滿足GPIB、VXI、RS-232和RS-485協(xié)議硬件及數(shù)據(jù)采集卡通訊的全部功能.同時(shí)內(nèi)置有便于應(yīng)用TCP/IP、ActiveX等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù)。利用它可以方便地建立自己的虛擬儀器,其圖形化的界面使得編程及使用過(guò)程都生動(dòng)有趣。
LabVIEW中圖形化的程序語(yǔ)言又稱為“G”語(yǔ)言。使用這種語(yǔ)言編程時(shí),基本上不寫程序代碼,取而代之的是流程圖。該方法盡可能利用技術(shù)人員所熟悉的術(shù)語(yǔ)、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向最終用戶的工具。
在進(jìn)行波形發(fā)生器的設(shè)計(jì)中,使用LabVIEW仿真軟件不僅可以實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集的便捷途徑,而且在原理研究、設(shè)計(jì)、測(cè)試和實(shí)現(xiàn)儀器功能時(shí),還可以大大提高工作效率。
1 系統(tǒng)總體方案
本系統(tǒng)主要由硬件和軟件兩部分構(gòu)成。硬件部分包括數(shù)據(jù)采集卡和PC機(jī),軟件部分則主要是基于LabVIEW軟件開(kāi)發(fā)的虛擬儀器測(cè)試系統(tǒng)。系統(tǒng)總體方案如圖1所示。
將系統(tǒng)數(shù)據(jù)采集卡DAQ2206插在計(jì)算機(jī)和PCI擴(kuò)展槽中,計(jì)算機(jī)便可通過(guò)LabVIEW軟件產(chǎn)生幾個(gè)常用的通信調(diào)制信號(hào)(例如2ASK,2FSK,2PSK),再將這些信號(hào)經(jīng)過(guò)DAC變成模擬信號(hào)輸出,該數(shù)據(jù)采集卡就可將該模擬信號(hào)傳送到示波器,由示波器顯示相應(yīng)信號(hào)的波形。此外,采集卡還能夠從波形發(fā)生器接收信號(hào),然后經(jīng)過(guò)ADC傳送給計(jì)算機(jī),并通過(guò)LabVIEW軟件對(duì)信號(hào)進(jìn)行分析及顯示。
系統(tǒng)數(shù)據(jù)采集主要通過(guò)LabVIEW仿真軟件來(lái)支持NI公司的DAQ2206卡。將DAQ2206采集卡插入計(jì)算機(jī)的插槽并設(shè)置相關(guān)參數(shù).再利用LabVIEW進(jìn)行編程開(kāi)發(fā),就可實(shí)現(xiàn)數(shù)據(jù)采集功能。
本數(shù)據(jù)采集卡是虛擬儀器的硬件模塊。因?yàn)橐P(guān)系到和PC總線的接口,該硬件模塊應(yīng)有一個(gè)比較規(guī)范的標(biāo)準(zhǔn);同時(shí),為了方便底層驅(qū)動(dòng)軟件的編制,它還應(yīng)有一個(gè)標(biāo)準(zhǔn)的接口,以向驅(qū)動(dòng)程序透明。這個(gè)接口包括讀取硬件的狀態(tài)信息和對(duì)硬件進(jìn)行設(shè)置等。而通過(guò)計(jì)算機(jī)接口則可以為硬件模塊和操作系統(tǒng)提供標(biāo)準(zhǔn)的硬件連接。
系統(tǒng)中的儀器驅(qū)動(dòng)程序模塊可利用硬件模塊向系統(tǒng)提供標(biāo)準(zhǔn)接口,以實(shí)現(xiàn)對(duì)硬件的控制,完成對(duì)硬件的管理;同時(shí)可向上一級(jí)模塊(即虛擬儀器軟件開(kāi)發(fā)平臺(tái)模塊)提供標(biāo)準(zhǔn)的調(diào)用接口,以使高層的軟件設(shè)計(jì)與硬件無(wú)關(guān)。
虛擬儀器軟件開(kāi)發(fā)平臺(tái)是用戶進(jìn)行單一虛擬儀器或虛擬儀器測(cè)試系統(tǒng)設(shè)計(jì)生成的用戶平臺(tái)。它應(yīng)該提供一個(gè)圖形化的編程設(shè)計(jì)環(huán)境,以方便用戶的開(kāi)發(fā),縮短開(kāi)發(fā)周期。其中數(shù)據(jù)分析模塊庫(kù)和界面控制庫(kù)是LabVIEW和LabWindow/CVI的基礎(chǔ)。也可以按照標(biāo)準(zhǔn)化的思想,借鑒數(shù)據(jù)分析模塊庫(kù)和界面控制庫(kù)的模塊,利用VC++、VB、C++Builder等高級(jí)程序語(yǔ)言開(kāi)發(fā)自己的虛擬儀器平臺(tái)。但這一模塊要向上一層提供一個(gè)接口,此接口也是提供給虛擬儀器或虛擬儀器測(cè)試系統(tǒng)的開(kāi)發(fā)接口。
對(duì)于用戶而言,其軟件面板的設(shè)計(jì)直接決定了儀器的易用性以及功能和可擴(kuò)充性。
2 信號(hào)的產(chǎn)生
2.1 基帶信號(hào)的產(chǎn)生
基帶信號(hào)是一個(gè)隨機(jī)的單極性矩形脈沖序列??赏ㄟ^(guò)以下的G語(yǔ)言程序來(lái)設(shè)計(jì)基帶信號(hào)。
首先編寫一個(gè)可以任意編碼(0或者1)的數(shù)組,然后通過(guò)對(duì)每個(gè)碼字的循環(huán)來(lái)形成一定脈寬的脈沖,再由此形成任意的脈沖信號(hào),這就是基帶信號(hào)。圖2所示是基帶信號(hào)產(chǎn)生框圖。
2.2 2ASK信號(hào)的產(chǎn)生
2ASK是二進(jìn)制的振幅鍵控信號(hào)。通??捎媚M振幅調(diào)制方法形成2ASK信號(hào)。一個(gè)二進(jìn)制的振幅鍵控信號(hào)可以表示成一個(gè)單極性矩形脈沖序列與一個(gè)正弦載波的乘積。圖3所示是2ASK信號(hào)產(chǎn)生的整體框圖,從圖中可以看出。它是由基帶信號(hào)和正弦載波信號(hào)相乘得到的。
2.3 2FSK信號(hào)的產(chǎn)生
2FSK是二進(jìn)制頻移鍵控信號(hào)。這里采用鍵控法實(shí)現(xiàn)2FSK信號(hào),即利用受矩形脈沖序列控制的開(kāi)關(guān)電路來(lái)對(duì)兩個(gè)不同的獨(dú)立頻率進(jìn)行選通。其產(chǎn)生框圖如圖4所示。
首先定義兩個(gè)載波信號(hào)f1和f2,再通過(guò)一個(gè)選擇器對(duì)兩路載波進(jìn)行選擇。若設(shè)定f1=1 Hz,f2=4Hz,矩形脈沖的循環(huán)次數(shù)為5,那么,矩形脈沖的頻率為0.2 Hz。一般地,當(dāng)脈沖為0時(shí),選擇頻率為1 Hz的載波信號(hào);當(dāng)脈沖信號(hào)為1時(shí),選擇頻率為4 Hz的載波信號(hào)。
2.4 2PSK信號(hào)的產(chǎn)生
在編寫2PSK的波形發(fā)生器時(shí),只要在2FSK的基礎(chǔ)上進(jìn)行一下修改就可以了。但是,信號(hào)輸入端的復(fù)位信號(hào)通常需要賦值。這就需要加上一個(gè)布爾控制量。因?yàn)橹挥惺姑看窝h(huán)后的信號(hào)復(fù)位,才能得到所需要的2PSK信號(hào)。如果不加這個(gè)布爾控制量,就實(shí)現(xiàn)不了相移鍵控。
3 信號(hào)的模擬輸入
3.1 模擬輸入的相關(guān)參數(shù)
模擬輸入是采集最基本的功能。它一般通過(guò)多路開(kāi)關(guān)(MUX)、放大器、采樣保持電路以及A/D來(lái)將一個(gè)模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)。A/D的性能和參數(shù)直接影響著模擬輸入的質(zhì)量,設(shè)計(jì)時(shí)要根據(jù)實(shí)際需要的精度來(lái)選擇合適的A/D。
3.2 模擬輸入的相關(guān)模塊
圖5是對(duì)數(shù)據(jù)采集卡的初始化模塊,圖6是A/D數(shù)值轉(zhuǎn)換模塊。它們都是模擬輸入的相關(guān)模塊。
4 信號(hào)的模擬輸出
4.1 模擬輸出相關(guān)模塊
模擬輸出通常采用中級(jí)模擬輸出模塊??上葘?duì)數(shù)據(jù)采集卡進(jìn)行初始化,以指定信號(hào)輸出通道的工作,然后再建立緩沖區(qū),最后寫出多通道信號(hào)信息的工作。圖7所示是模擬輸出信號(hào)的初始化框圖。
4.2 多路模出信號(hào)寫入buffer
本文利用循環(huán)寫入的方式來(lái)將兩個(gè)信號(hào)寫入數(shù)據(jù)采集卡的buffer之中。圖8所示是其循環(huán)采樣框圖。
5 結(jié)束語(yǔ)
任意波形發(fā)生器是一種常用的信號(hào)源,可廣泛用于科學(xué)研究、生產(chǎn)實(shí)踐和教學(xué)實(shí)踐等領(lǐng)域。虛擬儀器的出現(xiàn)是儀器發(fā)展史上的一場(chǎng)革命,代表著儀器發(fā)展的最新方向和潮流,是信息技術(shù)的一個(gè)重要領(lǐng)域。新型波形發(fā)生器中基于虛擬儀器的波形發(fā)生器在最近幾年內(nèi)得到了迅速發(fā)展,并將逐漸取代傳統(tǒng)的信號(hào)發(fā)生器而成為研究領(lǐng)域的主流。虛擬儀器技術(shù)不僅是2l世紀(jì)儀器發(fā)展的方向,而且會(huì)逐步取代傳統(tǒng)的硬件化電子儀器,從而使成千上萬(wàn)種傳統(tǒng)儀器都融人計(jì)算機(jī)體系中。