国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于MATLAB的實時數(shù)據(jù)采集與分析研究

發(fā)布時間:2010-10-15 11:35    發(fā)布者:techshare
關(guān)鍵詞: Matlab , 實時 , 數(shù)據(jù)采集
1、引言

數(shù)據(jù)采集系統(tǒng)涉及多學(xué)科,所研究的對象是物理或生物等各種非電或電信號。根據(jù)各種非電或電信號的特征,利用相應(yīng)的歸一化技術(shù),將其轉(zhuǎn)換為可真實反映事物特征的電信號后,經(jīng)A/D轉(zhuǎn)換器轉(zhuǎn)換為計算機(jī)可識別的有限長二進(jìn)制數(shù)字編碼,以此作為研究自然科學(xué)和實現(xiàn)工業(yè)實時控制的重要依據(jù),實現(xiàn)對宏觀和微觀自然科學(xué)的量化認(rèn)識,典型的數(shù)據(jù)采集系統(tǒng)組成如圖1所示。

在采集過程中,將傳感器獲取的參數(shù)通過A/D轉(zhuǎn)換送入內(nèi)存,然后由CPU對其進(jìn)行分析、運算和處理,如數(shù)字濾波、量綱變換、誤差修正、數(shù)字顯示等。在本文中,嘗試通過利用MATLAB的數(shù)據(jù)采集工具箱對自主設(shè)計的數(shù)據(jù)采集系統(tǒng)進(jìn)行模擬仿真,結(jié)果實現(xiàn)了對設(shè)計系統(tǒng)的模擬操作檢驗與數(shù)據(jù)分析。為了滿足實時采集的要求,采用了Compilier編譯器,Compilier以M語言編制的程序為輸入,可以根據(jù)需要生成獨立運行的應(yīng)用程序或可以被 C/C++程序調(diào)用的動態(tài)鏈接庫文件。它支持MATLAB所有的內(nèi)部函數(shù),可使程序變得簡潔高效。



Figure 1 典型數(shù)據(jù)采集系統(tǒng)的組成

2、數(shù)據(jù)采集工具箱介紹

在MATLAB數(shù)據(jù)采集工具箱里集成了數(shù)據(jù)采集的M文件格式的函數(shù)和MEX文件格式的動態(tài)鏈接庫。其主要特征如下:

(1) 提供了將實時測量數(shù)據(jù)從數(shù)據(jù)采集硬件采集到MATLAB中的框架。

(2) 支持模擬量輸入(AI)、模擬量輸出(AO)以及數(shù)字量I/O子系統(tǒng),包括模擬量I/O實時變換。

(3) 支持PC聲卡和業(yè)界非常流行的數(shù)據(jù)采集設(shè)備如NI卡、并行口(LPT1-LPT3)、Keithley卡等。

(4) 采用事件驅(qū)動模式進(jìn)行數(shù)據(jù)采集。數(shù)據(jù)采集工具箱由三部分組成:M文件格式的函數(shù)、數(shù)據(jù)采集引擎和硬件驅(qū)動,如圖2所示。這些組成部分使得MATLAB與數(shù)據(jù)采集硬件之間的信息傳遞成為可能。



Figure 2 數(shù)據(jù)采集引擎與硬件驅(qū)動

3、數(shù)據(jù)采集過程

3.1 數(shù)據(jù)采集的基本步驟

(1)創(chuàng)建設(shè)備的一個對象。對象創(chuàng)建函數(shù)列表如下:


Table 1 對象創(chuàng)建函數(shù)列表

(2)添加通道或數(shù)據(jù)線。模擬量I/O對象中用應(yīng)添加通道,而數(shù)字量I/O對象中應(yīng)添加數(shù)據(jù)線,與添加通道或數(shù)據(jù)線有關(guān)的函數(shù)列表如下:



Table 2 與添加通道或數(shù)據(jù)線有關(guān)的函數(shù)列表

(3)配置屬性。屬性分為公共屬性和通道/數(shù)據(jù)線屬性,而兩者又再被分為基本屬性與設(shè)備特有屬性。其中公共屬性為返回設(shè)備對象的所有可配置的公共屬性名及其可能的屬性值,應(yīng)將對象作為Set函數(shù)的輸入?yún)?shù);要返回設(shè)備對象的所有公共屬性及其當(dāng)前值或為顯示某個屬性的當(dāng)前值,應(yīng)將對象或?qū)傩悦鳛?Get函數(shù)的輸入?yún)?shù)。對于通道/數(shù)據(jù)線屬性,則使用Channel(Line)屬性。

(4)獲取或輸出數(shù)據(jù)。包括啟動設(shè)備對象,記錄或發(fā)送數(shù)據(jù)及停止設(shè)備對象三個步驟。其中啟動設(shè)備執(zhí)行Start函數(shù)、提取記錄數(shù)據(jù)使用 Getdata函數(shù)、發(fā)送數(shù)據(jù)前的數(shù)據(jù)排列使用Putdata函數(shù)、停止使用用Stop函數(shù);另外運行狀態(tài)用Running屬性標(biāo)識、記錄狀態(tài)由 Logging屬性標(biāo)識、發(fā)送狀態(tài)由Sending屬性標(biāo)識,其取值均為On或Off。對于數(shù)字量I/O對象,該部分處理有所不同。

(5)清除。當(dāng)不再需要設(shè)備對象時,應(yīng)使用刪除函數(shù)Delete將設(shè)備對象從內(nèi)存中清除,并使用清除命令Clear將對象從MATLAB工作空間中清除。

3.2 應(yīng)用實例與分析

3.2.1 MATLAB對RS232 的串口通信設(shè)計

MATLAB是一個跨平臺軟件,而此處使用的是自主設(shè)計的數(shù)據(jù)采集卡,因此不具備直接訪問的能力。但MATLAB的面向?qū)ο蠹夹g(shù),已用一個對象把計算機(jī)串口封裝起來,只要用Serial函數(shù)創(chuàng)建串口對象即可。關(guān)鍵語句為:s=serial(‘COM1’,‘BaudRate’,9600)。 MATLAB封裝的串口對象支持對串口的異步讀寫操作,通過對異步讀寫設(shè)置,PC在執(zhí)行讀寫串口函數(shù)時能立即返回,不必等待串口把數(shù)據(jù)串輸完畢。當(dāng)指定數(shù)據(jù)傳輸結(jié)束時就觸發(fā)事件,執(zhí)行事件回調(diào)函數(shù),對事件回調(diào)函數(shù)編程,進(jìn)行數(shù)據(jù)處理,這樣可以大大提高數(shù)據(jù)處理的效率。

MEX是MATLAB的可執(zhí)行程序,是MATLAB調(diào)用其它語言編寫的程序或算法的接口,在Windows環(huán)境下是擴(kuò)展名為DLL的動態(tài)鏈接庫。對MEX 編譯器進(jìn)行配置的方法是:在MATLAB命令窗口中運行mex-setup,選擇VC6.0++作為編譯器。用C語言編寫端口讀、寫的操作程序,程序包含有頭文件mex.h和mexFunction函數(shù),mexFunction函數(shù)中nelhs表示輸出變量的個數(shù),plhs包含指向輸出變量指針的數(shù)組,nrhs表示輸入變量的個數(shù),prhs包含指向輸入變量指針的數(shù)組。接口編形成的MEX文件與參考文獻(xiàn)類似,在此不再累述。

3.2.2 數(shù)據(jù)采集與分析

(1)數(shù)據(jù)讀取的MATLAB實現(xiàn)

主要代碼為:

%讀取通道數(shù)及總數(shù)據(jù)量

fid=fopen(‘cardiogram.add’,‘r’);

Status=fseek(fid,56,‘bof’);

nDataChNum=fread(fid,1,‘long’);

status=fseek(fid,204, ‘bof’);

nAllDataLength=fread(fid,1, ‘long’);

%按通道數(shù)循環(huán)讀出各通道起始地址

status=fseek(fid,76, ‘bof’);%

for i="1:" nDataChNum

pChannelAdr(i)=fread(fid,1, ‘long’)

end

%按通道數(shù)循環(huán)讀出各通道數(shù)據(jù)

for i="1:nDataChNum"

status=fseek(fid,pChannelAdr(i)+360, ‘bof’)

nSegNum=fread(fid,1, ‘log’)

status=fseek(fid,pChannelAdr(i)+160*nSegNum+1024, ‘bof’);

data=fread(fid,nAllDataLength, ‘short’);

end

sta=fclose(fid);

(2)數(shù)據(jù)處理與圖形繪制

利用MATLAB的圖形用戶接口,通過編程可以很方便地構(gòu)建數(shù)據(jù)采集與分析的用戶交互界面。將數(shù)據(jù)采集系統(tǒng)采集的實際心電圖信號,用RS232導(dǎo)入到PC 中。在MATLAB環(huán)境下,運行以上已經(jīng)編好的程序,即可得到如下的模擬實驗結(jié)果。不過要說明的是,此處使用的數(shù)據(jù)采集系統(tǒng)是八通道同步采集,而仿真時僅使用的是其中一個通道進(jìn)行的操作。



figure 3 實際心電圖信號的采集與處理效果圖

4、結(jié)語

使用自主開發(fā)的數(shù)據(jù)采集系統(tǒng),通過合理運用串口及MTLAB強(qiáng)大的數(shù)值計算和分析功能,實現(xiàn)了基于MATLAB的實時數(shù)據(jù)處理和分析。通過模擬實驗表明,該方法對于其它類似采集卡依然實用,具有一定的應(yīng)用價值和發(fā)展前景。
本文地址:http://m.qingdxww.cn/thread-32503-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产一级毛片a午夜一级毛片 | 久久这里只精品热免费99 | 国产91在 | 四虎影视库 | 欧美日韩国产另类在线观看 | 成人欧美一区二区三区黑人免费 | 九色自拍视频 | 伊人久久久综在合线久久在播 | 亚洲一区二区三区福利在线 | 久久国产精品一国产精品 | 一色屋精品亚洲香蕉网站 | 黄色片视频网站 | 殴美一级| 成人自拍网 | 亚洲成人免费 | 国产精品久久久久尤物 | 狠狠色综合久久婷婷 | 成人国产日本亚洲精品 | 一个人hd高清在线观看 | 日韩亚洲欧美在线 | 91高清国产经典在线观看 | 国产成人精品视频一区二区不卡 | 在线看不卡| 欧美aaaa在线观看视频免费 | 最近免费中文字幕视频高清在线看 | 99热最新在线 | 老司机精品福利视频 | 最近韩国日本免费观看 | 二区在线播放 | 欧美不卡视频在线观看 | 中文字幕日本一区久久 | 成年午夜| 色婷婷激婷婷深爱五月小蛇 | 高清日本无a区 | 久久99热这里只有精品 | 欧美黑粗硬 | 国外幻女free性zozo交 | 狠狠色丁香久久综合婷婷 | 国产成人午夜片在线观看 | 在线观看国产剧情麻豆精品 | 国产精品lululu在线观看 |