基于TMS320LF2407的腦電信號處理系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機看文章
摘要:本論文介紹了腦電信號處理系統(tǒng)設(shè)計的兩種基本方法及其優(yōu)缺點,分析了DSP尤其是TMS320LF2407的主要特點,闡述了基于TMS320LF2407DSP的16通道腦電信號處理系統(tǒng)的硬件和軟件的實現(xiàn)方法。該系統(tǒng)硬件結(jié)構(gòu)簡單可靠、靈活性強,可以為腦電波的數(shù)字信號處理軟件提供功能強大的硬件基礎(chǔ);該系統(tǒng)的軟件充分利用了TMS320LF2407內(nèi)部16通道的高速模數(shù)轉(zhuǎn)換器,順利實現(xiàn)了50Hz工頻干擾的濾除,并最終獲取清晰干凈的16通道的腦電波形。
關(guān)鍵詞:腦電信號 數(shù)字信號處理 濾波器
1. 概述
腦電信號(EEG)是人體中最重要的生物電信號之一,對于腦電信號的監(jiān)測、分析已在臨床醫(yī)學的疾病診斷方面得到廣泛應(yīng)用。16通道腦電信號的檢測主要用于腦疾病病灶的定位,由于從腦電極提取的腦電波中含有大量干擾尤其是50Hz工頻干擾,必須進行切實有效的放大及信號處理才能用于臨床的檢驗。腦電信號處理分為模擬和數(shù)字兩種方式。早期的數(shù)字腦電圖機主要采用模擬信號處理方式,處理好的信號利用AD采集卡或單片機把數(shù)據(jù)傳送到上位機系統(tǒng)顯示及打印,其優(yōu)點是實時性好,易于實現(xiàn),缺點是電路體積大、精度低、易受環(huán)境溫度影響及抗干擾性能差。腦電信號的數(shù)字處理以往多采用通用PC機或單片機實現(xiàn),但存在實時性差的缺點。這樣,實時性好的DSP在腦電信號數(shù)字處理中應(yīng)運而生。
目前,TI公司的TMS320C2000、5000和6000系列的DSP得到普遍應(yīng)用,現(xiàn)在比較一致的看法是2000系列的DSP適合應(yīng)用于電機的數(shù)字化控制而不是數(shù)字信號處理,因為其時鐘頻率遠低于5000系列DSP且沒有專門的濾波器指令。但以腦電信號的數(shù)字處理而言,腦電信號頻率不超過100Hz,屬于低頻信號,需要處理的數(shù)據(jù)量有限,對于16通道的腦電信號的數(shù)據(jù)運算,按每通道采樣頻率1000Hz計,系統(tǒng)需要每個采樣點在62.5us內(nèi)完成采樣、運算及數(shù)據(jù)傳輸。實驗中我們試用了TMS320LF2407DSP,從效果來看,它可以滿足速度上的要求,而從系統(tǒng)的性價比及功能的可擴展性來看,TMS320LF2407DSP體現(xiàn)了其獨特的優(yōu)勢[1] [2]。
2. 系統(tǒng)硬件設(shè)計
本系統(tǒng)硬件部分采用TMS320LF2407DSP為核心,兼具控制和數(shù)字信號處理的功能,其外部由16位AD轉(zhuǎn)換器、外擴存儲器、USB100模塊、12位DA轉(zhuǎn)換器、8位指示燈、數(shù)字光電隔離器等構(gòu)成,硬件系統(tǒng)框圖如圖1所示。
來自前置放大電路的16通道腦電信號分別經(jīng)過16位AD采樣進入DSP中央處理單元進行數(shù)字濾波運算,處理完畢的數(shù)據(jù)通過USB100模塊上傳到上位機系統(tǒng),在調(diào)試中可以通過DA轉(zhuǎn)換器在示波器上觀察經(jīng)過數(shù)字處理的腦電波形。8位指示燈用于調(diào)試時觀察時鐘的精確度。
圖1 硬件系統(tǒng)框圖
雖然TMS320LF2407內(nèi)部集成有16通道AD轉(zhuǎn)換器,但精度只有10位,能夠分辨腦電信號電壓變化的最小值約為3mV,而數(shù)據(jù)采集系統(tǒng)中前置級放大電路為防止差模形式出現(xiàn)的干擾在輸出端飽和,放大倍數(shù)一般設(shè)定為50倍,有用腦電信號的最小幅值放大到0.5mV,顯然10位AD轉(zhuǎn)換器的精度是不夠的。在本系統(tǒng)中采用美國美信公司生產(chǎn)的轉(zhuǎn)換速度為165KSPS的16位高精度AD轉(zhuǎn)換器MAX1165,可分辯信號電壓變化的最小值為62.5uV,完全滿足了系統(tǒng)精度的要求[3]。
TMS320LF2407具有64K字的程序存儲器空間和64K字數(shù)據(jù)存儲器空間,DSP內(nèi)部有32K字FLASH程序存儲器,一般是在程序調(diào)試完成后,通過下載線和CCS軟件把程序可執(zhí)行代碼燒寫進FLASH,使程序上電后從0000H處運行,完成所需的控制功能。但在程序調(diào)試時,需要有程序存儲器來存放用以仿真的程序代碼,而當程序脫離仿真器運行時,可將該外擴存儲器設(shè)置為數(shù)據(jù)存儲器,增加數(shù)據(jù)存儲能力。
經(jīng)過AD轉(zhuǎn)換的腦電數(shù)據(jù)通過IIR數(shù)字濾波運算,輸出的數(shù)據(jù)需要上傳到PC機,以便實時顯示腦電波形及存儲打印。由于每個通道腦電波的采樣頻率為1000Hz,數(shù)據(jù)精度為16位,所以腦電數(shù)據(jù)要求的數(shù)據(jù)傳輸速率必須高于256Kbit/s,而串口最高的數(shù)據(jù)傳輸速率僅為19.2Kbit/s,為滿足上、下位機數(shù)據(jù)實時傳輸?shù)男枰植辉黾酉到y(tǒng)的難度,我們選用了USB100模塊作為DSP與上位機的通信接口。其數(shù)據(jù)傳輸速率為8Mbit/s[4]。
為了人體安全,本系統(tǒng)前置端采用浮地差分放大方式以實現(xiàn)人體與電氣的隔離,同時為了防止數(shù)字電路與模擬電路的干擾電流通過地線相互傳遞,采用了光電隔離技術(shù),在模擬開關(guān)的輸出端接上模擬光電隔離器,通過接口與數(shù)字電路相連,而模擬開關(guān)的四根選通地址線則通過數(shù)字光電隔離器與DSP的復用IO口相連,通過DSP選通16個通道,從而避免了數(shù)字電路與模擬電路的干擾路徑。
DSP與12位DA轉(zhuǎn)換器及8位指示燈的接口電路類似于DSP與AD轉(zhuǎn)換器的接口電路,均通過IO空間尋址,利用OUT指令實現(xiàn)數(shù)據(jù)的輸出。在這里就不贅述了。
硬件系統(tǒng)的各個部分密切相關(guān),硬件系統(tǒng)設(shè)計的好壞直接關(guān)系到腦電信號數(shù)字處理的優(yōu)劣。
3.系統(tǒng)軟件設(shè)計
腦電信號的數(shù)字信號處理的軟件程序由6個相關(guān)文件組成,分別是math.h,register.h,LF2407.CMD,RTS2XX.LIB,process.c,cvectors.asm。在上述6個部分文件中,math.h是程序中需要用到的數(shù)學公式庫文件,register.h是CPU內(nèi)部的寄存器及其相關(guān)定義文件,LF2407.CMD是連接命令文件,指示編譯器如何進行程序空間和數(shù)據(jù)空間的分配,RTS2xxx.LIB庫文件由系統(tǒng)提供,cvectors.asm是向量表文件,定義所需的復位和中斷向量,process.c主要是完成腦電數(shù)字信號處理的功能,是整個系統(tǒng)的核心部分。
DSP在程序運行過程中,首先上電復位后根據(jù)中斷向量表程序跳轉(zhuǎn)到主程序入口地址,主程序關(guān)中斷,對系統(tǒng)進行必要的初始化,對AD轉(zhuǎn)換器和USB100模塊進行初始化,并將AD初始化成T4定時中斷觸發(fā)AD轉(zhuǎn)換,啟動看門狗,開中斷,然后主程序判斷AD轉(zhuǎn)換是否完成,如果AD轉(zhuǎn)換沒有完成則程序繼續(xù)等待,如果AD轉(zhuǎn)換完成,讀取AD轉(zhuǎn)換的對應(yīng)通道的數(shù)據(jù),調(diào)用數(shù)字濾波子程序進行數(shù)字濾波,將輸出結(jié)果上傳至上位機,然后等待下一個AD轉(zhuǎn)換的數(shù)據(jù)輸入。啟動AD轉(zhuǎn)換是通過AD中斷服務(wù)子程序?qū)崿F(xiàn)的,在中斷服務(wù)程序中啟動AD轉(zhuǎn)換,轉(zhuǎn)換結(jié)束后置位AD轉(zhuǎn)換好標志,告訴主程序讀取數(shù)據(jù)進行數(shù)字濾波。
該程序的主程序流程圖和中斷服務(wù)程序流程圖如圖2所示。
圖2 主程序和中斷服務(wù)程序流程框圖
本程序中,IIR數(shù)字濾波子程序是核心部分,其算法由MATLAB設(shè)計的IIR數(shù)字濾波器實現(xiàn),可表示為下面的輸入輸出序列:
從數(shù)字濾波的公式可以看出,通用數(shù)字濾波子程序需要的參數(shù)有輸入序列x[],輸入序列的濾波系數(shù)b[],輸入序列乘積項的系數(shù)nl,輸出序列y[],輸出序列的濾波系數(shù)a[],輸出序列的乘積項系數(shù)dl-1,以及相應(yīng)濾波通道n和該通道的最新輸入x(n)。
在上述程序的數(shù)字濾波過程中,首先讀入相應(yīng)濾波通道的輸入序列x(n),對輸入輸出序列乘積項分別求和,然后求出輸入輸出序列最后的累加和,即為本次輸出序列y(n),在濾波過程中為了防止濾波出現(xiàn)不穩(wěn)定,所以對輸出序列進行了限幅處理,對于16位AD轉(zhuǎn)換的最大輸出為65536,所以數(shù)字濾波的輸出y(n)應(yīng)該小于65536。因為濾波器設(shè)計的是實時數(shù)字濾波,所以在本次數(shù)字濾波結(jié)束后,需要對輸入序列進行調(diào)整,即將x[i+1]放到x[i],為下次數(shù)字濾波做準備。同理,在輸出y(n)的同時,也需要對輸出序列進行調(diào)整,即將y[i+1]放到y(tǒng)[i],為下次數(shù)字濾波做準備[4]。
圖3是在100MHz雙蹤示波器上觀察到的本系統(tǒng)數(shù)字信號處理前后通過DAC輸出的腦電波形。
圖3 數(shù)字處理前后腦電波對比
從上圖可以看出,50Hz工頻干擾及高頻干擾基本得到抑制,有經(jīng)驗的醫(yī)師從上圖中可辯別出腦電波的種類,也能判斷受試者的病理狀況而無需在上位機再進行信號處理。
4. 結(jié)論
由于腦電信號測量的強干擾背景,目前醫(yī)院使用的腦電放大器仍需開辟專用的屏蔽室,實現(xiàn)腦電信號的實時采集及傳輸在國內(nèi)一直是個難題,本文以DSP作為核心器件研究腦電信號處理系統(tǒng)的具體實現(xiàn),具有一定的開拓性和實用性,在系統(tǒng)的研制過程中,通過對人體腦電波的采集及信號處理進行了大量的實驗工作。從實驗效果來看,通過本系統(tǒng)采集到的腦電波形清晰干凈,可為醫(yī)生臨床監(jiān)測患者腦疾狀況提供信度較高的依據(jù)。本系統(tǒng)的設(shè)計具有為醫(yī)院的腦電監(jiān)護儀器的研制提供參考的價值及較好的應(yīng)用前景。
本文作者創(chuàng)新點:一是首次將TMS320LF2407應(yīng)用于16通道的腦電放大器的研制中,充分考慮了腦電信號檢測的強干擾的特點以及TMS320LF2407內(nèi)部資源及控制能力比TMS320C5000系列強的優(yōu)點,大大縮短了腦電放大器硬件開發(fā)的周期;二是在硬件結(jié)構(gòu)上利用了TMS320LF2407內(nèi)部16通道的ADC并片外擴展了USB100模塊,使數(shù)據(jù)采集及傳輸能力大大增強;三是在軟件結(jié)構(gòu)上利用TMS320LF2407的C語言開發(fā)的腦電信號處理系統(tǒng)結(jié)構(gòu)簡單、功能可靠,程序可直接燒寫到DSP內(nèi)部FLASH,長時間脫機運行完全正常;四是從數(shù)字信號處理算法的選擇來看,IIR數(shù)字濾波器對干擾的抑制效果非常明顯,在實驗中通過標準正弦波進行測試證明本系統(tǒng)失真度小、信噪比高;五是由于采用了價格低廉的TMS320C2000系列的DSP,本系統(tǒng)的研制成本低于采用TI公司其它系列的DSP。
參考文獻:
[1].郭晶瑩,吳晴,商慶瑞 . 基于TMS320VC5509A的指紋識別系統(tǒng)的硬件設(shè)計 . 微計算機信息 . 2006,9-2:151-153
[2].劉和平,嚴利平等,《TMS320LF2407DSP結(jié)構(gòu)、原理及應(yīng)用》,北京航空航天大學出版社,2002年4月
[3].趙負圖,《信號采集與處理集成電路手冊.化學工業(yè)出版社》,2002年9月
[4].李朝青,《單片機及DSP外圍數(shù)字IC技術(shù)手冊》,北京航空航天大學出版社,2003年1月