<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術 > 設計應用 > 虛擬信號頻譜分析儀的設計

          虛擬信號頻譜分析儀的設計

          作者: 時間:2010-01-21 來源:網絡 收藏
          隨著計算機技術的迅速發(fā)展,利用軟件進行信號處理技術的應用日益廣泛,已開發(fā)的用于儀器的數(shù)字信號處理和圖像處理軟件的功能也日益強大。數(shù)字信號處理是指采用數(shù)字系統(tǒng)方法對離散的數(shù)字序列描述信號進行處理的一種方法,與傳統(tǒng)的模擬信號處理方法相比,它具有高度的穩(wěn)定性、靈活性、精確性,能實現(xiàn)高精度和大動態(tài)范圍的信號分析,因此具有顯著的優(yōu)越性。而數(shù)字信號處理方法的運用又是儀器平臺測控系統(tǒng)的重要組成部分。由于NI公司的LabVIEW包含有信號分析和處理函數(shù)庫部分。因此,利用LabVIEW提供的信號分析函數(shù)庫,配合已開發(fā)的數(shù)字示波器即可實現(xiàn)儀的信號處理功能,其信號的分析側重于對信號頻譜的分析以及濾波處理。

            1 系統(tǒng)整體設計方案

          本文引用地址:http://www.ex-cimer.com/article/188373.htm

            本設計的虛擬頻譜分析儀即可以對虛擬信號發(fā)生器所產生的信號進行頻譜分析。也可以對通過信號調理器,基于PCI總線的DAQ卡組成的采集系統(tǒng)所采集到的外部信號進行頻譜分析。其中,在對外部信號進行頻譜分析時,外界被測信號首先傳送到信號調理電路,且由信號調理電路對它進行放大、濾波、隔離等處理后,再經數(shù)據采集卡進行A/D轉換,以將模擬信號轉換為數(shù)字信號,然后由軟件對被測試信號進行頻譜分析和處理,最后得到測試結果,并按要求將它們顯示或儲存起來。

            本文所設計的虛擬頻譜分析儀的前面板圖如圖1所示。這一種虛擬頻譜分析儀能夠提供一個高精度的頻譜分析功能,并且可以同時觀察輸入信號的頻域顯示。但該虛擬頻譜分析儀受數(shù)據采集卡采樣速率的限制,其頻率范圍僅為0~50kHz,用戶可以通過改變采樣速率和數(shù)據長度來選擇頻率分辨率。在虛擬頻譜分析中可以通過程序直接讀出基波頻率和峰值大小,并將它們顯示在面板上,用戶參考這個值可以手動調整采樣速率的大小和顯示圖形中X、Y軸的坐標來觀察所需要的頻譜圖,因此操作更加直觀、簡便。儀的主要數(shù)據處理工作就是對待分析信號進行傅立葉變換,然后分析其頻譜特性,并顯示計算結果。


            2虛擬頻譜分析儀的軟件設計

            虛擬頻譜分析儀的軟件結構如圖2所示。


            2.1數(shù)據采集模塊

            數(shù)據采集模塊采用子VI AI Acquire Waveform.vi來控制PCI-1200數(shù)據采集卡進行數(shù)據采集操作,并對采集進來的數(shù)據進行頻譜分析。參數(shù)設置模塊可以設置的參數(shù)主要包括:設備與通道,緩沖區(qū)大小,采樣點數(shù),觸發(fā)控制,掃描率,顯示方式。頻譜分析模塊是由加窗函數(shù)模塊、功率譜轉換模塊、功率譜單位轉換模塊、功率頻率峰值檢波子??旖M成。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();