機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
用CVI輔助《數(shù)字信號處理》實驗教學(xué)
用CVI輔助《數(shù)字信號處理》實驗教學(xué)
 更新時間:2009-6-5 9:12:29  點擊數(shù):2
【字體: 字體顏色

摘  要:介紹了一種新型的計算機測控系統(tǒng)的軟件開發(fā)平臺LabWindows/CVI。利用其C編譯環(huán)境及事件

驅(qū)動的特點,提出了一種基于LabWindows/CVI的數(shù)字處理實驗的輔助教學(xué)方法,并用實例說明方法的可行性。

關(guān)鍵詞:數(shù)字信號處理;LabWindows/CVI;輔助教學(xué)

0  前  言

在過去的幾十年中,數(shù)字信號處理(DSP)領(lǐng)域無論在理論上還是在技術(shù)上都有了非常重要的發(fā)展。由于開發(fā)和利用了廉價的硬件和軟件,DSP技術(shù)在工業(yè)中得到越來越廣泛的應(yīng)用;在工科教育中,過去只作為研究生課程的數(shù)字信號處理,其基本部分已納入電氣工程專業(yè)的大學(xué)本科教學(xué)計劃。

本文通過介紹一種為計算機測控系統(tǒng)設(shè)計的軟件開發(fā)環(huán)境Labwindows/CVI,結(jié)合專業(yè)教學(xué)安排,提出了在C語言編程環(huán)境下做數(shù)字信號處理實驗的輔助教學(xué)方法。

1  數(shù)字信號處理的教學(xué)難點

數(shù)字信號處理是一門以算法為核心的理論性很強的學(xué)科。現(xiàn)有關(guān)于DSP方面的書籍大多數(shù)都是講解算法、推導(dǎo)和證明算法的教科書。由于數(shù)字信號處理的概念比較抽象,本科學(xué)生學(xué)習這門課程具有一定的困難。其數(shù)值計算又比較繁瑣,教師不太好布置作業(yè),使學(xué)生的課后實踐受到相當?shù)南拗,在很大程度上影響本課的教學(xué)效果。

2  問題的解決

國外在若干年前,就開始把交互式軟件MATLAB 用于數(shù)字信號處理的教學(xué)過程中,其成功之處,便是采用了易學(xué)易用、功能強大的系統(tǒng)開發(fā)平臺作為計算機輔助教學(xué)軟件。鑒于我國工科教學(xué)安排的實際情況,本科生在DSP課程之前已經(jīng)學(xué)了兩門計算機課程,即計算機基礎(chǔ)和C語言,若再加學(xué)一門MATLAB,在普遍要求壓縮教學(xué)課時的今天,是不太好安排的。借鑒國外計算機輔助教學(xué)的經(jīng)驗,考慮到學(xué)生已有了C語言編程基礎(chǔ),如果將構(gòu)筑于C語言平臺的易學(xué)易用的LabWindows/CVI開發(fā)系統(tǒng)用于DSP的實驗平臺,不僅可以增強學(xué)生對概念與算法的理解,還可以培養(yǎng)學(xué)生的C語言編程設(shè)計能力。

3  LabVIEW/CVI簡介

LabVIEW/CVI是美國國家儀器公司提供的一套虛擬儀器系統(tǒng)開發(fā)平臺。它以ANSI C為核心,將功能強大、使用靈活的C語言平臺與用于數(shù)據(jù)采集、分析和表達的測控專業(yè)工具有機地結(jié)合起來,為熟悉C語言的開發(fā)人員建立檢測系統(tǒng),自動測量環(huán)境,數(shù)據(jù)采集系統(tǒng),過程監(jiān)控系統(tǒng)等提供了一個理想的軟件開發(fā)環(huán)境。

    CVI作為開發(fā)環(huán)境具有以下優(yōu)點:

    ①CVI的編程技術(shù)主要采用事件驅(qū)動方式與回調(diào)函數(shù)方式,編程方法簡單易學(xué)。

    ②CVI運用“所見即所得”的可視化交互技術(shù),使人機界面的實現(xiàn)直觀簡捷。

    ③CVI對每一個函數(shù)都提供一個函數(shù)面板,用戶可以在函數(shù)面板上交互式輸入函數(shù)的各個參數(shù),提高了工程設(shè)計的效率與可靠性。

4  應(yīng)用實例

下面用幾個示例說明用CVI做數(shù)字信號處理實驗的可行性與便捷性。

4.1  用于頻譜分析

頻譜分析是反映復(fù)雜信號中各頻率所占能量的大小。為簡化過程,只考慮兩路正弦信號疊加的情況。這樣,只需要兩對輸入(振幅和頻率)就可以決定兩路正弦信號,輸出則包括一個時域波形顯示和一個頻域波形顯示。

在CVI 中建立一個工程(PRJ)文件后,先建立用戶接口資源(UIR)文件,在我們這個示例中主要是設(shè)定兩組輸入控件(對應(yīng)兩路正弦信號)和兩組圖形輸出控件 (分別對應(yīng)復(fù)雜信號的時域波形和頻域波形)。這一過程是在軟面板編輯窗口中完成的,所見即所得,很方便。按設(shè)計思路決定各屬性后,開發(fā)系統(tǒng)即可幫助生成程序的主體結(jié)構(gòu),接下來即可編寫相應(yīng)的C源程序。由于此實驗的目的是演示時域和頻域的關(guān)系,因此直接調(diào)用了高級數(shù)據(jù)分析庫函數(shù)中的能譜函數(shù) AutoPowerSpectrum (),不用為算法費神。程序也簡化到了只用完成讀入面板狀態(tài),形成波形數(shù)組,能譜變換及顯示這幾步,每一步都可調(diào)用庫函數(shù)來完成。下面是幾段主要程序。

/* 產(chǎn)生正弦信號 /*

SineWave (NUMPOINTS,wave1Amp,wave1freq/500,&zero,waveTime[0]);

SineWave (NUMPOINTS,wave2Amp,wave2freq/500,&zero,waveTime[1]);

/* 疊加形成復(fù)雜信號并顯示時域波形 */

Add1D (waveTime[0],waveTime[1],NUMPOINTS,tempArray);

PlotY (pane1Handle,PANEL_TIMEGRAPH,tempArray,(NUMPOINTS/100)*20+1,

     VAL_DOUBLE,VALTHIN_LINE,VAL_NO_POINT,VAL_SOLID,1,

   VAL_BLACK)

/* 對時域信號做頻域變換 */

    AutoPowerSpectrum (tempArray,NUMPOINTS,1/1000.0,spectrum,&freqSpace);

程序完成后即可運行,編譯成可執(zhí)行文件后還可脫離開發(fā)平臺單獨運行。運行結(jié)果可參照圖1和圖2,顯示的是一路正弦波在混入了不同頻率、不同振幅的另一路正弦波后其時域波形和頻譜的變化情況。學(xué)生通過實際操作后應(yīng)該能理解并掌握頻譜分析的作用。

圖1  正弦波形及頻譜                  圖2  混入了低頻信號

4.2  用于IIR濾波器設(shè)計


巴特沃思低通濾波器的特征是其通帶和阻帶都有平的幅度響應(yīng)。N階的平方幅度響應(yīng)為:

設(shè)計巴特沃思低通濾波器的基本思想就是根據(jù)濾波器的通帶和阻帶的指標得到階數(shù)N和截止頻率Ωc。CVI提供了BwCascadeCoef ()函數(shù)來設(shè)計巴特沃思濾波器。與上例類似,先設(shè)計顯示面板,再編寫C程序。主要程序如下:

/* 設(shè)計cascade 低通 Butterworth IIR 濾波器 */

double fs,fl,fh,x[256],y[256]:

int type,order,n;

IIRFilterPtr filtrerInfo;

n=256;

fs=1000.0;

fl=200.0;

order=5;

type=0;     /* 低通 */

Uniform (n,17,x);

filterInfo=AllocIIRFilterPtr (type,order);

if(filterInfo!=0)

Bw[CD#2]CascadeCoef(fs,fl,fh,filterInfo);

IIRCascadeFiltering(x,n,filterInfo,y);

FreeIIRFilterPtr(filterInfo):

運行結(jié)果可參照圖3和圖4,顯示的是不同階數(shù)時濾波器的截止特性與相位特性的變化情況。學(xué)生通過操作可了解巴特沃思低通濾波器的特性。

圖3  4階濾波               圖4  27階濾波

5   結(jié)束語

CVI作為一種測控領(lǐng)域的C語言開發(fā)平臺,在儀表測控行業(yè)將有廣泛的應(yīng)用。它對于提高編程效率,縮短程序開發(fā)周期是極其有效的。將之作為已有一定C語言基礎(chǔ)的儀表測控專業(yè)學(xué)生學(xué)習數(shù)字信號處理的實驗平臺是可行的,既可以解決教學(xué)上的實踐問題,又能鞏固學(xué)生的程序設(shè)計知識。

 

參考文獻:

[1] A V 奧海姆數(shù)字信號處理[M]北京:科學(xué)出版社,1980.

[2]黃新VXIbus 寄存器基模件-32路驅(qū)動器的開發(fā)[J]計算機自動測量與控制,1998,20(1):18-22.

[3] NI公司虛擬儀器系統(tǒng)產(chǎn)品介紹[Z]北京:中科泛華測控技術(shù)有限公司,1998.

<!--插入廣告JS代碼-->
  • 上一篇: 基于DSP的高精度數(shù)據(jù)采集與處理系統(tǒng)
  • 下一篇: 集成工具可提高嵌入式DSP系統(tǒng)的設(shè)計與驗證自動化程度
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1