999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

LabWindows/CVI平臺下虛擬信號分析儀的設計

2016-03-10 08:39:23DesignoftheVirtualSignalAnalyzeronLabWindowsCVIPlatform
自動化儀表 2016年2期
關鍵詞:信號

Design of the Virtual Signal Analyzer on LabWindows/CVI Platform

張 揚 肖世德

(西南交通大學機械工程學院,四川 成都 610031)

?

LabWindows/CVI平臺下虛擬信號分析儀的設計

Design of the Virtual Signal Analyzer on LabWindows/CVI Platform

張揚肖世德

(西南交通大學機械工程學院,四川 成都610031)

摘要:針對目前傳統信號分析儀功能單一、修改不易、使用不便等缺點,以LabWindows/CVI為平臺,研究開發了一種多功能虛擬信號分析儀。設計時把人機交互界面的響應處理和信號采集與顯示分開成兩個線程運行,大大縮短用戶操作的等待時間,提高了系統運行效率。該信號分析儀具備偽隨機信號產生、雙通道信號采集、時域分析、頻譜分析、互相關函數計算等功能。實驗測試表明,該虛擬信號分析儀基本功能完全實現,信號分析結果正確,說明了推廣發展虛擬儀器的可行性和必要性。

關鍵詞:虛擬儀器集成電路通信C語言信號處理時域頻域測量儀器濾波干擾傅里葉變換

Abstract:Aiming at the disadvantages of traditional single analyzers, e.g., unitary function, uneasy to revise, and inconvenient to use, with LabWindows/CVI as the platform, the multi-function virtual signal analyzer has been researched and developed. In the design, the response processing of man machine interactive interface and signal acquisition and display are separated into two threads for running, thus the waiting time of user operation is shortened, and the system operating efficiency is enhanced. The signal analyzer offers multiple functions, including random signal generation, dual-channel signal acquisition, time domain analysis, spectral analysis, correlation function calculation, etc. The experimental tests show that the virtual signal analyzer fully realizes the basic functions, the results of signal analysis are correct, thus the feasibility and necessity of developing virtual instruments are illustrated.

Keywords:Virtual instrumentIntegrated circuitCommunicationC languageSignal processingTime domainFrequency domain

Measuring instrumentFilteringInterferenceFourier transform

0引言

虛擬儀器技術是伴隨著集成電路、計算機技術和通信技術的迅速發展而產生的。它通過軟件將儀器與計算機有機地融合為一體,從而把計算機強大的數據計算處理能力和儀器硬件的測量、控制能力結合在一起,大大減少了儀器硬件成本,并且顯著縮小了儀器體積[1]。與傳統的固定儀器相比,用戶可以根據需求,靈活地對虛擬儀器進行功能設計、維護和系統升級。

目前能夠用于虛擬儀器系統開發且比較成熟的開發工具可以分為兩類:第一類是通用的可視化編程軟件,主要有Microsoft公司的Visual C++和Visual Basic等;第二類是專用于虛擬儀器開發的編程軟件,主要有NI公司圖形化的編程環境LabVIEW和文本語言的編程環境LabWindows/CVI,以及NI公司和Microsoft合作開發的Measurement Studio等[2-8]。

多功能虛擬信號分析儀設計所采用的LabWindows/CVI是以ANSIC為核心的交互式C語言開發平臺,它將功能強大、使用靈活的C語言平臺與用于數據采集分析和顯示的測控專業工具有機地結合起來。利用集成化開發環境、交互式編程方法、函數面板和豐富的庫函數大大增強C語言的功能,為C語言的開發設計人員編寫檢測系統、自動測試環境、數據采集系統、過程監控系統等應用軟件提供了一個理想的軟件開發環境。

1信號采集與處理的關鍵技術

信號處理是指對信號進行某種加工變換或運算(如濾波、變換、估計、識別等)。廣義的信號處理可把信號分析也包括在內。信號處理包括時域和頻域處理。時域處理中最典型的是波形分析,例如示波器就是一種最通用的波形分析和測量儀器。把信號從時域變換到頻域進行分析和處理,可以獲得更多的信息。

因此頻域處理更為重要。信號處理主要是濾波,把信號中感興趣的部分(有效信號)提取出來,抑制(削弱或濾除)不感興趣的部分(干擾或噪聲)[5-6]。

1.1信號時域處理的關鍵技術

時域分析是對信號的時域波形的分析,從記錄的信號中提取各種有用的信息或將記錄的信號轉換成所需要的形式。通過不同的時域處理方法,可以確定實測波形的幅值和時間歷程。通常時域分析包括信號參數測試(峰值、有效值、均值等)、自相關、微積分、抽取等分析算法。

1.1.1自相關分析

在測試結果的分析中,相關是一個非常重要的概念[3]。相關是指變量之間的線性關系。變量x、y之間相關程度可以用相關系數ρxy來表示:

(1)

式中:E為數學期望;μx、μy分別為x、y的均值;σx、σy分別為x、y的標準差。

設x(t)是某各態歷經過程的一個記錄樣本(所謂各態歷經過程是指樣本的集合平均等于時間平均),x(t+τ)是x(t)時移τ后的樣本。x(t)的自相關函數定義為:

(2)

設x(t)、x(t+τ)的相關系數為ρx(t)x(t+τ),簡寫作ρx(τ)。因為x(t+τ)、x(t)具有相同的均差和標準差,所以:

(3)

將式(3)的分母移項到等式的左邊,就可以得到:

(4)

在實際測量中,只能得到信號x(t)的N個采樣值x(n),所以必須通過這N個點采樣值來估計信號的自相關函數r(m),計算:

(5)

由于只有N個值,因此對于每一個固定的延遲,可以利用的數據只有N-1-|m|個。根據式(5)則可得到實際計算中使用的算法為:

(6)

LabWindows/CVI所使用的計算公式與式(6)略有不同,LabWindows/CVI中自相關函數的計算公式為:

(7)

1.1.2互相關分析

兩個隨機信號x(t)和y(t)的互相關函數Rxy(τ)定義為:

(8)

由于:

(9)

因為|ρxy|≤1,故有μxμy-σxσy≤Rxy(τ)≤μxμy+σxσy。對于多數隨機過程,若x(t)和y(t)之間沒有同頻率的周期成分,那么當時移τ很大時彼此無關,即ρxy(τ→∞)→0,Rxy(τ→∞)→μxμy。

互相關函數有重要的應用,它是在噪聲背景下提取有用信息的一個非常有效的手段。設噪聲信號的N個采樣序列為x(n)、y(n),LabWindows/CVI中使用的互相關函數算法為:

(10)

1.2信號頻域處理的關鍵技術

1.2.1 快速傅里葉變換(FFT)

對于離散時間周期信號,其傅里葉級數形式如下:

(11)

(12)

(13)

(14)

式(13)、(14)為離散傅里葉變換對,在時頻域均為有限長且都是離散的。

由上述可知,X(k)將是x(n)的傅里葉變換或是對其傅里葉變換的某種程度上的近似。

分裂基算法是最好的快速傅里葉變換算法,該算法的基本思路是對偶序號輸出使用基2算法,對奇序號輸出使用基4算法。算法推導如下。

對于N=2M點DFT,對k的偶序號項用頻率抽取(DIF)基2的FFT算法,即:

(15)

對k的奇序號項用基4的算法,即:

(16)

(17)

式中:r=0,1,2,…,N/4-1。式(15)、(16)、(17)構成了分裂基算法的L型算法結構。

1.2.2自功率譜密度分析

一個信號可以從時域描述,也可以從頻域來描述,這兩種描述是存在一個對應關系的。功率譜分析能夠提供信號的頻域信息,是研究平穩隨機過程的重要方法。對于遍歷隨機過程的一個樣本序列,這個序列只是無窮多個可能的隨機序列中的一個,因此這個序列實際上不能真正代表整個隨機過程。但是不管選取哪個序列,通過該序列計算得到的自相關函數總是相同的,即由某一個序列計算得到的自相關函數能夠作為對過程本質的描述。因此,可從自相關函數出發考慮信號的功率譜問題。

信號x(t)的自功率譜密度定義為其自相關函數的傅里葉變換。設x(t)的自相關函數為Rx(τ),則x(t)的自功率譜密度為:

(18)

同時有:

(19)

自功率譜密度簡稱自功率譜或自譜。

若τ=0,根據式(2)自相關函數Rx(τ)和式(18)自功率譜Px(f)的定義,可以得到:

(20)

(21)

Px(f)表示了信號的功率沿頻率軸的分布,故稱Px(f)為自功率譜密度函數。

經典譜估計的基本方法:在實際應用中,由于只能獲得測量信號的有限長觀察序列,因此只能用所得的有限長序列來估計信號的功率譜,這就產生了譜估計。經典譜估計的方法有直接法和間接法兩種。直接法又稱周期圖法。設x(n)為時域信號的N點采樣序列,x(k)是采樣序列的傅里葉變換,則用周期圖法估計的信號功率譜為:

(22)

(23)

1.2.3互功率譜密度分析

互功率譜密度分析類似于自功率譜密度,如果信號x(t)和y(t)的互相關函數Rxy(τ)滿足傅里葉變換的條件:

(24)

則信號x(t)和y(t)的互功率譜密度函數定義為:

(25)

對于一個單輸入單輸出的線性系統,設系統的頻率響應為H(f),若其輸入為x(t),輸出為y(t),則有:

Pxy(f)=H(f)Px(f)

(26)

故由輸入信號的自功率譜和輸入輸出的互功率譜就可以直接得到系統的頻率響應函數。所得到的H(f)不僅含有幅頻特性,而且含有相頻特性。

對于N點離散序列x(n)、y(n),設其傅里葉變換為X(k)、Y(k),LabWindows/CVI使用的互譜計算公式為:

(27)

2虛擬信號分析儀的設計

本文設計的雙通道多功能虛擬信號分析儀共由兩大部分組成:硬件部分和軟件部分。

2.1硬件部分

系統硬件采用某公司的STM32F4開發板。使用STM32F407ZGT6內部ADC對信號進行采樣。由于外部輸入信號可能有負壓部分,因此需要對信號進行平移。輸入級采用1 MΩ下拉電阻接同相放大器的結構(下拉電阻在原理圖上未畫出),使輸入阻抗約為1 MΩ。經過緩沖結構后,將信號與參考源產生的1.5 V直流電壓相加,結構采用同相加法器,如圖1所示。

圖1 輸入緩沖和信號平移電路圖

為了在緩沖級能夠處理直流信號和負壓信號,運放部分需要采用雙電源供電,而開發板提供的電壓只有+5 V和+3.3 V兩種。由于這里需要的電流較小、噪聲小,所以采用反向電荷泵來產生-3.3 V的電壓,采用的芯片為TPS60400,僅需3個外部1 F電容即可以產生-3.3 V,使得整體電路簡單方便。具體電路如圖2所示。

圖2 電荷泵電路圖

參考源采用TL431產生2.495 V的電壓,通過兩個電阻分壓產生1.5 V的參考電壓,經過運放緩沖給加法器提供參考。具體電路如圖3所示。

圖3 參考源電路圖

2.2 軟件部分

軟件部分按功能劃分為上位機和下位機。上位機負責數據處理與人機交互,下位機負責信號采樣。上位機和下位機之間采用開發板自帶的USB串口通信。

2.2.1上位機部分

上位機共有兩個線程。第一線程利用中斷的方法,主要對面板的按鍵和文本輸入框等控件進行響應,以獲取用戶的設置信息。第二線程的軟件流程圖如圖4所示,主要負責數據的采集和信號的顯示[7,9]。

圖4 第二線程流程圖

2.2.2串口通信

波特率設置為115 200 bit/s,信號位8位,1位終止位,無校驗。上位機的串口設置為1~15,檢測不到串口時會有提示,此時檢查連線,若連線正常,打開控制面板→設備管理器,查看開發板的端口號是否在1~15內,若不在,修改端口號。

2.2.3下位機部分

(1)下位機的主函數流程圖如圖5所示,主函數主要執行兩個任務,一是各模塊的初始化(系統時鐘、ADC、定時器、串口),二是循環檢測串口是否接收到數據。為了防止誤收數據,設定采樣率必須以“SR”(SampleRate)開頭,后跟兩個8位數據有效,并且為了防止設置的采樣率過高,與0x1fff按位與,使設定的采樣率不大于4 096個/s。

圖5 主函數流程圖

(2)ADC采用PB0(ADC1通道8)PC4(ADC1通道14),具體設定如下。

//先初始化PB0(ADC1通道8)

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;

//PB0 通道8

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;

//模擬輸入

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

//不帶上下拉

GPIO_Init(GPIOB, &GPIO_InitStructure);

//初始化

//再初始化PC4(ADC1通道14)

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;

//PC4 通道14

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;

//模擬輸入

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

//不帶上下拉

GPIO_Init(GPIOC, &GPIO_InitStructure);

//初始化

(3)串口的端口配置和初始化設置如下。

//USART1端口配置

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10;

//GPIOA9與GPIOA10

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;

//復用功能

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

//速度50 MHz

GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

//推挽復用輸出

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;

//上拉

GPIO_Init(GPIOA,&GPIO_InitStructure);

//初始化PA9,PA10

//USART1初始化設置

USART_InitStructure.USART_BaudRate = bound;

//波特率設置

USART_InitStructure.USART_WordLength = USART_WordLength_8b;

//字長為8位數據格式

USART_InitStructure.USART_StopBits = USART_StopBits_1;

//一個停止位

USART_InitStructure.USART_Parity = USART_Parity_No;

//無奇偶校驗位

USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;

//無硬件數據流控制

USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;

//收發模式

USART_Init(USART1, &USART_InitStructure);

//初始化串口1

(4)系統時鐘采用168 MHz即可滿足要求,定時器的設定時間公式為:

Tout=[(arr+1)×(psc+1)]/Tclk

式中:Tclk為TIM3的輸入時鐘頻率,MHz;Tout為TIM3溢出時間,μs。

為了使采樣率從1~4 096之間步進1時,有采樣間隔時間的改變,設置分頻系數(psc)為839,這樣采樣率與定時器計數個數(arr)之間的關系為arr=100 000/SR-1。因此需要改變采樣率時,只需要根據公式計算出arr的值并修改定時器中斷時間即可。這里為了分辨X通道和Y通道的數據,在兩組數據發送前,發送“X”和“Y”以作區分。ADC采樣為12位數據,因此傳遞數據時需要先發高8位再發低8位。定時器中斷流程圖如圖6所示。

圖6 定時器中斷流程圖

3系統功能測試

將溫度傳感器LM35輸出端接入X通道,此時信號分析儀經測試得到該信號平均值為0.252 V,有效值也為0.252 V,萬用表測得傳感器LM35輸出電壓為219 mV。

將兩個溫度傳感器LM35輸出端分別接入X和Y通道,信號分析儀經測試得到X通道信號平均值為0.249 V,有效值為0.250 V,萬用表測得連接X通道的傳感器LM35輸出電壓為221 mV;Y通道信號平均值為0.232 V,有效值為0.233 V,萬用表測得連接Y通道的傳感器LM35輸出電壓為228 mV。

使用函數發生器產生一個該信號分析儀量程內的正弦波,分別連接到示波器和本信號分析儀輸入端,兩者顯示效果相近,測試結果符合預期要求。

4結束語

傳統儀器功能相對單一,并且不容易進行擴展。為順應儀器發展的趨勢,需要進行虛擬儀器的研究設計。在LabWindows/CVI環境下,通過硬件電路設計及上位機和下位機軟件的編寫,開發完成了虛擬信號分析儀,尤其是采用多線程數據采集技術,在響應用戶操作方面取得了比較明顯的效果。通過測試,該儀器能夠完成數據采集、實現信號時域波形顯示、相關性計算以及統計信息實時顯示線性振幅譜等功能,結果正確可靠,表明了推廣發展虛擬儀器的可行之性。

參考文獻

[1] 馬青亮,周倫彬,李振娜. 基于LabWindows/CVI的信號分析儀的設計[J]. 中國測試, 2009,35(6):50-53.

[2] 馬青亮. 基于LabWindows/CVI的信號分析儀的研究[D]. 廣州:廣東工業大學,2008.

[3] 周林,栗秋華,張鳳.基于虛擬儀器的信號頻域分析與處理系統的設計與實現[J].現代科學儀器,2006(6):44-47.

[4] 周浩敏. 信號處理技術基礎[M]. 北京:北京航空航天大學出版社,2004:35-37.

[5] 詹惠琴,古軍,袁亮. 虛擬儀器設計[M]. 北京:高等教育出版社,2008:163-167.

[6] 奧本海姆. 信號與系統[M].西安:西安交通大學出版社,1997:371-374.

[7] 陳莉,林圳杰.基于LabWindows/CVL多線程研究與工程應用[J].工業控制技術,2006(10):92-94.

[8] 崔紅梅,麻碩士,裴喜春,等.基于LabWindows/CVI平臺的虛擬數字信號分析儀的研究與開發[J].計量技術,2005(11): 24-26.

[9] 李改利,王紅軍,趙建輝. LabWindows/CVI平臺下數據共享技術研究[J]. 機械工業學院學報, 2007(3):20-22.

中圖分類號:TH7;TP311

文獻標志碼:A

DOI:10.16086/j.cnki.issn1000-0380.201602023

修改稿收到日期:2015-05-18。

第一作者張揚(1987-),男,現為西南交通大學機械工程專業在讀碩士研究生;主要從事信號分析與虛擬儀器的研究。

猜你喜歡
信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個信號,警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長個的信號
《鐵道通信信號》訂閱單
基于FPGA的多功能信號發生器的設計
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯鎖信號控制接口研究
《鐵道通信信號》訂閱單
基于LabVIEW的力加載信號采集與PID控制
Kisspeptin/GPR54信號通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 伊人成人在线视频| 尤物在线观看乱码| 国产丝袜啪啪| 成人av专区精品无码国产| 最新亚洲av女人的天堂| 日韩久久精品无码aV| 亚洲无码一区在线观看| 香蕉eeww99国产在线观看| 国产熟女一级毛片| 久久99热这里只有精品免费看| 亚洲中文无码h在线观看| 国产熟睡乱子伦视频网站| 欧美有码在线观看| 农村乱人伦一区二区| 激情无码视频在线看| 国产精品成人一区二区不卡| 国产精品熟女亚洲AV麻豆| 亚洲精品在线影院| 日本欧美中文字幕精品亚洲| 中文一级毛片| 成人在线不卡视频| 一本二本三本不卡无码| 日韩东京热无码人妻| 伦伦影院精品一区| a级毛片在线免费| 亚洲免费黄色网| 国产精品妖精视频| 国产美女在线观看| 试看120秒男女啪啪免费| 国产福利小视频在线播放观看| 国产一级α片| 国产区福利小视频在线观看尤物| 亚洲一道AV无码午夜福利| 国产精品吹潮在线观看中文| 国产区福利小视频在线观看尤物 | 久久成人18免费| 成人无码一区二区三区视频在线观看 | 欧美成人精品一级在线观看| 欧美在线综合视频| 国产好痛疼轻点好爽的视频| 国产主播在线一区| 欧美日韩第三页| 亚洲免费人成影院| 久久精品丝袜| 国产精品区网红主播在线观看| 国内自拍久第一页| 国产不卡一级毛片视频| 中文字幕在线永久在线视频2020| 毛片一区二区在线看| 广东一级毛片| 少妇精品久久久一区二区三区| 72种姿势欧美久久久大黄蕉| 亚洲第一极品精品无码| 四虎综合网| 日韩欧美高清视频| 九九热在线视频| 全部免费毛片免费播放| 香蕉久人久人青草青草| 国产精鲁鲁网在线视频| 国产成人你懂的在线观看| 丰满人妻一区二区三区视频| 欧美成人精品一级在线观看| 亚洲精品无码在线播放网站| 国产精品七七在线播放| 国产美女精品一区二区| av无码久久精品| 成人无码区免费视频网站蜜臀| 黄网站欧美内射| 精品视频一区二区三区在线播| 亚洲欧美精品在线| 亚洲香蕉在线| 黄色国产在线| 在线观看免费黄色网址| 5388国产亚洲欧美在线观看| 97亚洲色综久久精品| 亚洲乱伦视频| 色婷婷电影网| 99国产精品免费观看视频| 亚洲综合狠狠| 成人国产精品2021| 亚洲国产午夜精华无码福利| 伊人久久大香线蕉aⅴ色|