《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 業(yè)界動(dòng)態(tài) > 基于FPGA的腦機(jī)接口實(shí)時(shí)系統(tǒng)

基于FPGA的腦機(jī)接口實(shí)時(shí)系統(tǒng)

2009-07-07
作者:王 永1,, 何慶華2,, 田逢春1

  摘 要: 給出了以FPGA為核心,實(shí)現(xiàn)基于瞬態(tài)視覺(jué)誘發(fā)電位的腦機(jī)接口實(shí)時(shí)系統(tǒng)的方案,。該方案包括腦電采集電路,、基于FPGA的VGA視覺(jué)刺激器和FPGA開(kāi)發(fā)板三部分,。用FPGA取代計(jì)算機(jī),作為腦機(jī)接口的控制和信息處理器,。利用VHDL編程,,在FPGA中實(shí)時(shí)處理采集的腦電信號(hào),提取并識(shí)別瞬態(tài)視覺(jué)誘發(fā)電位信號(hào),,轉(zhuǎn)換為控制命令,,反饋給視覺(jué)刺激器。實(shí)驗(yàn)結(jié)果表明,,本方案可以有效地實(shí)現(xiàn)腦機(jī)接口實(shí)時(shí)系統(tǒng),,并達(dá)到較高的正確率和通信速度。
  關(guān)鍵詞: 腦機(jī)接口,; FPGA,; 視覺(jué)誘發(fā)電位,; 視覺(jué)刺激器; 提取和識(shí)別

?

  腦機(jī)接口BCI(Brain Computer Interface)是一種新穎的人機(jī)接口方式,。它的定義是:不依賴于腦的正常輸出通路(外周神經(jīng)系統(tǒng)及肌肉組織)的腦-機(jī)(計(jì)算機(jī)或其他裝置)通訊系統(tǒng)[1]。要實(shí)現(xiàn)腦機(jī)接口,,必須有一種能反映人腦不同狀態(tài)的信號(hào),,并且能夠?qū)崟r(shí)或短時(shí)對(duì)這種信號(hào)進(jìn)行提取和分類[2]。瞬態(tài)視覺(jué)誘發(fā)電位與刺激之間具有嚴(yán)格的鎖時(shí)同步關(guān)系,,能比較準(zhǔn)確地檢測(cè),而且它所需的視覺(jué)刺激頻率比較低,,不容易引起視覺(jué)疲勞。因此本研究采用瞬態(tài)視覺(jué)誘發(fā)電位來(lái)實(shí)現(xiàn)腦機(jī)接口,。
  腦機(jī)接口系統(tǒng)是由人和機(jī)器構(gòu)成的閉環(huán)系統(tǒng)[3],。除人本身外, 腦機(jī)接口系統(tǒng)包括:信號(hào)采集、信號(hào)處理,、外部設(shè)備及控制部分,。本文的方案采用FPGA取代計(jì)算機(jī),作為腦機(jī)接口的控制和信息處理器,。主要包括腦電采集電路,、基于FPGA的VGA視覺(jué)刺激器和FPGA開(kāi)發(fā)板三部分,如圖1所示,。

?


  電極帽和腦電采集電路組成了腦電信號(hào)采集部分,。VGA視覺(jué)刺激器屬于外部設(shè)備及控制部分。FPGA開(kāi)發(fā)板是整個(gè)系統(tǒng)的核心,,它不僅實(shí)現(xiàn)了信號(hào)處理,,而且還實(shí)現(xiàn)了對(duì)腦電采集電路的控制和VGA控制器。FPGA開(kāi)發(fā)板采用Cyclone II EP2C35 DSP開(kāi)發(fā)板,,F(xiàn)PGA芯片為Cyclone II EP2C35F672,。
1 系統(tǒng)設(shè)計(jì)
1.1 腦電采集電路的設(shè)計(jì)
  腦電信號(hào)比較微弱,而且淹沒(méi)在很強(qiáng)的背景噪聲和干擾中,。必須設(shè)計(jì)合適的電路,,在放大腦電信號(hào)的同時(shí),通過(guò)濾波抑制噪聲,,提高信噪比,,得到較好的模擬腦電信號(hào),并通過(guò)AD轉(zhuǎn)換為適合于FPGA處理的數(shù)字信號(hào),。
  本文設(shè)計(jì)的腦電采集電路主要包括有源電極,、右腿驅(qū)動(dòng)電路、模擬電路,、數(shù)字電路和電源,。有源電極用來(lái)傳導(dǎo)腦電信號(hào),,右腿驅(qū)動(dòng)電路可以降低共模電壓。模擬電路包括前置放大電路,、高通濾波電路,、放大濾波電路和電壓抬升電路,實(shí)現(xiàn)模擬信號(hào)調(diào)理和信噪比的提高,。數(shù)字電路包括AD轉(zhuǎn)換電路和光耦隔離電路,,主要功能是模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)換。
1.2? 基于FPGA的VGA視覺(jué)刺激器的設(shè)計(jì)
  腦機(jī)接口視覺(jué)刺激器通??梢栽谟?jì)算機(jī)顯示器或電視機(jī)上通過(guò)硬件和軟件兩種方式產(chǎn)生,,也可以設(shè)計(jì)專門的圖形顯示電路[4]。采用硬件實(shí)現(xiàn)視覺(jué)刺激,,最大優(yōu)點(diǎn)是性能穩(wěn)定,,但修改和升級(jí)比較困難。
  本文的方案是基于FPGA的VGA視覺(jué)刺激器,,采用VGA顯示器作為視覺(jué)刺激器,,通過(guò)VHDL編程的方式產(chǎn)生圖形刺激信號(hào)。FPGA是一種半定制電路,,具有很強(qiáng)的在線修改能力,,可以隨時(shí)修改設(shè)計(jì)而不必改動(dòng)硬件電路。因此,,通過(guò)編程可以靈活地產(chǎn)生不同的刺激模式,,修改和升級(jí)十分方便。按照VGA顯示器逐行掃描的工作原理和VGA工業(yè)標(biāo)準(zhǔn)[5],,在FPGA中設(shè)計(jì)了VGA控制器,,包括分頻模塊、掃描時(shí)序產(chǎn)生模塊,、圖像描述模塊,、刺激頻率控制模塊和光標(biāo)控制模塊,其框圖如圖2所示,。

?


  分頻模塊產(chǎn)生像素輸出頻率和刺激所需的頻率,。CycloneⅡEP2C35芯片具備4個(gè)增強(qiáng)型嵌入式鎖相環(huán)(PLL),每個(gè)鎖相環(huán)可以提供3個(gè)輸出時(shí)鐘,,頻率非常穩(wěn)定,,還可以分頻和倍頻。用鎖相環(huán)IP核調(diào)用嵌入式鎖相環(huán),,直接分頻產(chǎn)生像素輸出頻率,,保證了系統(tǒng)時(shí)鐘的精確和穩(wěn)定。計(jì)數(shù)器分頻得到刺激所需的頻率,,可產(chǎn)生不同的刺激頻率,。
  掃描時(shí)序產(chǎn)生模塊提供VGA行掃描和場(chǎng)掃描的時(shí)序,。對(duì)像素輸出頻率計(jì)數(shù)分頻,產(chǎn)生行掃描頻率,,其頻率為31.469? kHz,。然后,對(duì)行掃描頻率計(jì)數(shù)分頻,,得到場(chǎng)掃描頻率,其場(chǎng)頻為59.94 Hz,。
  圖像描述模塊描述需要產(chǎn)生的刺激圖形,包括位于屏幕上下左右4個(gè)方向的4個(gè)方塊和0、1,、2、3數(shù)字,。4個(gè)方塊是實(shí)現(xiàn)多項(xiàng)目標(biāo)選擇的刺激目標(biāo),,光標(biāo)用來(lái)反饋選擇的結(jié)果。通過(guò)行坐標(biāo)和場(chǎng)坐標(biāo)來(lái)描述方塊和數(shù)字的位置及大小,。在方塊上標(biāo)注數(shù)字,,以區(qū)別不同的方塊。圖形的改變或運(yùn)動(dòng)可引起有效的誘發(fā)電位,,因此,,方塊的顏色是黑色和白色交替變化的。為了使方塊更顯著,,底色采用深石板灰色,。
  刺激頻率控制模塊設(shè)計(jì)了刺激的模式。采用同頻次復(fù)合刺激方式,,即在單位時(shí)間內(nèi)各個(gè)視覺(jué)刺激模塊閃爍的次數(shù)相同,,但各個(gè)刺激模塊閃爍的時(shí)刻相互錯(cuò)開(kāi)。通過(guò)計(jì)數(shù)器分頻產(chǎn)生模塊閃爍的時(shí)鐘,。閃爍時(shí)刻的錯(cuò)開(kāi)用相位延時(shí)實(shí)現(xiàn),用系統(tǒng)時(shí)鐘產(chǎn)生一個(gè)計(jì)數(shù)器,,根據(jù)計(jì)數(shù)器的計(jì)數(shù)控制延時(shí),達(dá)到精確定時(shí)的要求,。當(dāng)閃爍的時(shí)鐘信號(hào)為低電平時(shí),,方塊為黑色;為高電平時(shí),,方塊為白色,。在刺激模塊黑變白的同時(shí),發(fā)出觸發(fā)信號(hào),。
  光標(biāo)控制模塊描述光標(biāo)的圖形,,控制光標(biāo)的移動(dòng)。通過(guò)改變光標(biāo)的坐標(biāo)和分頻來(lái)控制光標(biāo)移動(dòng)的方向和速度,。光標(biāo)的顏色為紅色,。
  基于FPGA的VGA視覺(jué)刺激器充分利用了FPGA半定制電路的特點(diǎn),,采用同步時(shí)序設(shè)計(jì)方式,不但性能穩(wěn)定,,而且能根據(jù)需要靈活地設(shè)計(jì)不同的視覺(jué)刺激器,。它實(shí)現(xiàn)方便,功能強(qiáng)大,,兼具用硬件或軟件方式實(shí)現(xiàn)視覺(jué)刺激器的優(yōu)點(diǎn),。
1.3? 瞬態(tài)視覺(jué)誘發(fā)電位的提取與識(shí)別
  累加平均方法是最經(jīng)典的誘發(fā)電位信號(hào)處理方法,也是電生理測(cè)量中提高信噪比最常用的方法[2],。在FPGA中設(shè)計(jì)的累加平均算法的框圖如圖3所示,,包括觸發(fā)信號(hào)檢測(cè)模塊、RAM地址控制模塊,、異步雙口RAM,、累加器和除法器。

?


  觸發(fā)信號(hào)檢測(cè)保證了刺激與視覺(jué)誘發(fā)電位的鎖時(shí)同步關(guān)系,。只有檢測(cè)到最早閃爍的刺激模塊的觸發(fā)信號(hào),,才把腦電數(shù)據(jù)存儲(chǔ)到RAM中。當(dāng)達(dá)到要求的閃爍次數(shù)時(shí),,停止數(shù)據(jù)的寫入,。根據(jù)刺激模塊之間的延時(shí)關(guān)系,可以確定與各個(gè)刺激模塊相應(yīng)的數(shù)據(jù)在RAM中的起始地址,。然后,,按照起始地址讀出數(shù)據(jù)給累加器,累加的次數(shù)與閃爍次數(shù)相同,。最后,,用除法器除以累加的次數(shù),得到累加后的平均結(jié)果,。
  知識(shí)產(chǎn)權(quán)(IP)核,,是指己驗(yàn)證的、可重利用的,、具有某種確定功能的IC模塊,。FPGA有大量各種用途的IP核。這些IP核對(duì)內(nèi)核進(jìn)行了參數(shù)化,,通過(guò)頭文件或圖形用戶接口(GUI)可以方便地對(duì)參數(shù)進(jìn)行操作,。通過(guò)異步雙口RAM IP核調(diào)用片內(nèi)RAM來(lái)緩存腦電數(shù)據(jù),,保證了數(shù)據(jù)接口的同步和數(shù)據(jù)處理速度,。用累加器IP核和除法器IP核來(lái)實(shí)現(xiàn)算法中的累加器和除法器。
  只采用累加平均的方法, 需要進(jìn)行上百次才能得到可靠的誘發(fā)電位波形, 信號(hào)提取的時(shí)間太長(zhǎng),。在少量次累加平均時(shí),,為了進(jìn)一步提高信噪比,,提取出較為理想的誘發(fā)電位波形,采用數(shù)字濾波的方法來(lái)減少噪聲的影響,。FIR濾波器具有嚴(yán)格的線性相位,,穩(wěn)定性好,而且通頻帶比較平坦,。所以,,采用FIR濾波器來(lái)實(shí)現(xiàn)數(shù)字濾波。用窗函數(shù)設(shè)計(jì)法設(shè)計(jì)一個(gè)15階的低通FIR濾波器,,窗函數(shù)為海明窗,,截止頻率為10 Hz。利用MATLAB工具箱中的FDATool設(shè)計(jì)濾波器,,并轉(zhuǎn)換為HDL代碼,,可以很方便地在FPGA中實(shí)現(xiàn)FIR濾波器。通過(guò)調(diào)用CycloneⅡ芯片中用于DSP運(yùn)算的嵌入式乘法器來(lái)實(shí)現(xiàn)FIR濾波中的乘法運(yùn)算,。與基于邏輯單元的乘法器相比,嵌入式乘法器性能更高,,占用邏輯單元更少,。嵌入式乘法器能夠與CycloneⅡ器件的M4K RAM塊進(jìn)行無(wú)縫集成,實(shí)現(xiàn)高效的DSP算法[6],。
  瞬態(tài)視覺(jué)誘發(fā)電位的識(shí)別,,就是要將誘發(fā)電位信號(hào)轉(zhuǎn)換成一系列控制命令,從而實(shí)現(xiàn)人腦與外界的通信與控制,。模板匹配是傳統(tǒng)的模式識(shí)別方法之一,。相關(guān)系數(shù)是變量之間相關(guān)程度的指標(biāo),可以用于判斷曲線擬合程度,。用相關(guān)系數(shù)來(lái)衡量模板與未知模式匹配的好壞,,是一個(gè)有效且可行的方法。
  首先,選定一個(gè)特征明顯的瞬態(tài)視覺(jué)誘發(fā)電位波形,,作為模板匹配的參考模板,;然后,把實(shí)時(shí)提取誘發(fā)電位波形與參考模板做相關(guān)系數(shù)計(jì)算,。若相關(guān)系數(shù)值大于設(shè)定的閾值時(shí),,就認(rèn)為檢測(cè)到了的誘發(fā)電位,發(fā)出控制命令,,使光標(biāo)移向相應(yīng)的刺激模塊,,從而實(shí)現(xiàn)瞬態(tài)視覺(jué)誘發(fā)電位的識(shí)別。
  相關(guān)系數(shù)的計(jì)算公式如下:
  
  假定模板的數(shù)據(jù)為y,,可以先離線計(jì)算出公式(1)中含y項(xiàng)的值,,存在ROM中,,從而提高實(shí)時(shí)計(jì)算的速度。只需要1個(gè)乘加器IP核,,調(diào)用FPGA芯片中的嵌入式乘法器,,就可以實(shí)現(xiàn)分子和分母中的乘加運(yùn)算,節(jié)省了器件的資源,。用開(kāi)根號(hào)IP核來(lái)實(shí)現(xiàn)開(kāi)根號(hào)運(yùn)算,。
  FPGA運(yùn)行速度快,內(nèi)部程序并行運(yùn)行,,并且有DSP運(yùn)算IP核和嵌入式乘法器,,能夠快速準(zhǔn)確地完成腦電處理算法,滿足信號(hào)處理的實(shí)時(shí)性要求,。
2 實(shí)驗(yàn)結(jié)果
  采用本文方案構(gòu)建的腦機(jī)接口系統(tǒng)進(jìn)行實(shí)驗(yàn),。腦機(jī)接口實(shí)驗(yàn)通常為一組實(shí)驗(yàn),分別選擇不同的4個(gè)刺激模塊(包括全部目標(biāo)的選擇),。在實(shí)驗(yàn)中,,受試者頭戴電極帽,眼睛距屏幕70 cm左右,,控制光標(biāo)移向所注視的目標(biāo),。每次實(shí)驗(yàn)時(shí),4個(gè)刺激模塊完成一輪閃爍后,,然后停頓幾秒,,進(jìn)行下一輪閃爍。4輪閃爍,,即4個(gè)刺激模塊都能被選中后,,自動(dòng)停止閃爍。
  實(shí)驗(yàn)中提取的瞬態(tài)視覺(jué)誘發(fā)電位波形如圖4所示,。圖4(a)中,,已經(jīng)可以看到視覺(jué)誘發(fā)電位的雛形,但視覺(jué)誘發(fā)電位的特征不是十分明顯,。圖4(b)中,,用FIR濾波對(duì)誘發(fā)電位信號(hào)進(jìn)一步處理,得到了特征比較明顯的視覺(jué)誘發(fā)電位,。

?


  腦機(jī)接口的實(shí)驗(yàn)結(jié)果如表1所示,,受試者是5名健康男性。正確判斷時(shí),,在刺激模塊停止閃爍的同時(shí),,光標(biāo)立刻移向受試者注視的模塊。


  基于瞬態(tài)視覺(jué)誘發(fā)電位的腦機(jī)接口實(shí)驗(yàn)表明,本文給出的基于FPGA的腦機(jī)接口實(shí)時(shí)系統(tǒng)的方案是可行的,?;贔PGA的VGA視覺(jué)刺激器,刺激頻率十分穩(wěn)定,,刺激界面易于接受,,修改升級(jí)方便?;贔PGA的腦電信號(hào)處理算法,,采用少量次累加平均結(jié)合FIR濾波來(lái)提取誘發(fā)電位,并通過(guò)模板匹配的方法加以識(shí)別,,可以快速準(zhǔn)確地把瞬態(tài)誘發(fā)電位信號(hào)轉(zhuǎn)換為控制命令,,實(shí)現(xiàn)了實(shí)時(shí)的腦機(jī)接口系統(tǒng)?;贔PGA的腦機(jī)接口系統(tǒng),,是一種新的方法,也是對(duì)腦機(jī)接口實(shí)現(xiàn)方法的有益探索,。


參考文獻(xiàn)
[1] ?何慶華,彭承琳,吳寶明.腦機(jī)接口技術(shù)研究方法[J].重慶大學(xué)學(xué)報(bào),,2002,25(12):106-109.
[2] ?何慶華.基于視覺(jué)誘發(fā)電位的腦機(jī)接口實(shí)驗(yàn)研究[D].重慶大學(xué)博士學(xué)位論文,,2003.
[3] ?官金安,林家瑞.腦-機(jī)接口技術(shù)進(jìn)展與挑戰(zhàn)[J].中國(guó)醫(yī)療器械雜志,2004,28(3).
[4] ?何慶華,吳寶明,王禾,等.腦機(jī)接口視覺(jué)刺激器的研究[J].中國(guó)臨床康復(fù),,2004, 8[11]:2060-1.
[5] ?李國(guó)剛,余俊,凌朝東.基于FPGA的VGA圖形控制器的實(shí)現(xiàn)方法[J].信息技術(shù),2006(7).
[6] ?任愛(ài)鋒,初秀琴,常存,等.基于FPGA的嵌入式系統(tǒng)設(shè)計(jì)[M]. 西安: 西安電子科技大學(xué)出版社,2004.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。