摘 要:介紹一種應用于可穿戴式無線腦電信號采集系統設計方案。系統控制器采用16位的MSP430F169單片機,其內部的12位A/D對放大濾波后的腦電信號進行采集,然后通過SPI口將采集到的16通道的腦電信號數據寫入到CC2500的寄存器中發射出去,接收端同樣通過單片機將CC2500的接收寄存器中數據讀出,再由UART通過USB轉換芯片傳入計算機用于顯示和進一步的分析處理。該系統有著低功耗和便攜式等優點。關鍵詞:腦電信號; CC2500; UART; 系統控制器
中圖分類號:TN911-33文獻標識碼:A
文章編號:1004-373X(2010)18-0021-04
Design of Wireless Acquisition System for EEG Signal
XIE Hong, GE Qi-qi, YAO Nan, DONG Yao-hua
(Institute of Information Engineering, Shanghai Maritime University, Shanghai 200135, China)
Abstract: The design scheme of a wearable wireless acquisition system for EEG signal is introduced. A 16-bit MSP430F169 MCU is adopted in the system controller, in which 12-bit ADC is used to aquire the amplified and filtered EEG signal. The acqired EEG signal data of the 16 channels is writen to the register of CC2500 via SPI and then emitted. When the receiver obtains the data, the data from the receiver register of CC2500 is read out by MCU. Finally the data is sent to computer by UART through USB for display and further processing. This system has the advantage of low power consumption and is portable.Keywords: EEG; CC2500; UART; system controller
0 引 言
疲勞駕駛是造成很多惡性交通事故的主要因素,因此人們研究探索通過監測駕駛員的身體和生理狀態來識別駕駛員是否疲勞駕駛,如眼動信息、頭部運動狀態等。近年來,基于腦電信號識別駕駛員警覺度狀態已經成為一種研究熱點[1-2],而駕駛員可穿戴式腦電信號采集裝置是其必要的保障。腦電信號采集系統主要由模/數轉換模塊、微控制器和數據傳輸等部分構成。其中微控制器的實現一般有4種方案:如文獻[3]中采用單片機把采集到的模擬腦電信號轉換為數字信號,并通過RS 232接口傳給計算機,該方法一般用于低端的不要求太高數據處理能力的采集中,成本較低;文獻[4]采用DSP數字信號處理芯片,將A/D轉換后的腦電信號進行DSP預處理(數字濾波),再通過PC的并口與DSP的HPI的口互聯,主要利用了其在數據分析中的快速處理能力;文獻[5]采用ARM作為處理器,ARM中移入了μC/OS-Ⅱ操作系統,并移植了Hanning濾波器以抑制50 Hz工頻干擾,利用ARM對信號進行處理與分析顯示;文獻[6]采用FPGA,利用其內部豐富的邏輯資源控制A/D采集、FIR濾波、液晶的顯示及USB與PC的數據傳輸。以上文獻中的方案都為有線傳輸,且DSP和FPGA芯片成本高功耗大。文獻[7]中采用藍牙無線傳輸模塊實現了可穿戴腦電信號采集與傳輸,藍牙技術目前成本較高,適宜近距離傳輸。
本文針對駕駛員可穿戴式腦電信號采集設備的應用背景,提出基于MSP430單片機和CC2500的腦電信號采集和無線數據傳輸系統設計方案,在保證系統性能的條件下最大限度地降低功耗。
1 系統硬件設計
1.1 系統框圖
該系統主要由3部分組成:數據采集、數據傳輸和數據處理服務器。其中數據采集與預處理采用業界公認的微功耗控制器MSP430系列單片機;數據傳輸采用無線收發模塊CC2500,其由MSP430單片機通過SPI口控制其初始化和數據的發送與接收;接收的腦電數據由單片機通過UART轉USB芯片傳輸給數據處理服務器做上層處理。具體系統組成如圖1所示。
1.2 放大濾波模塊
本文的腦電信號放大器原理圖如圖2所示。
本文中的前置放大器采用BB公司的INA118,這是一款專門用于生物信號采集用的集成儀表放大器,具有很高的精度;高通濾波采用傳統的阻容濾波,截止頻率為0.16 Hz;后級放大電路中的放大器采用通用集成運算放大器AD8606;低通濾波采用八階Bessel開關電容濾波芯片MAX7405,截止頻率設為500 Hz。系統采用3 V的單電源供電,由于極化電壓的存在,每級放大倍數不能太高,且后級放大分為相同的兩級放大,總放大倍數為38×20×20,可以將微伏級的腦電信號放大到伏級,滿足后級A/D采樣中對輸入信號幅度的要求。
圖1 系統框圖
圖2 腦電放大器原理圖
1.3 單片機控制系統
該系統采用的控制器是德州儀器公司推出的低功耗、高集成度的16位單片機MSP430F169[8-9],供電電壓范圍為1.8~3.6 V。MSP430F169具有豐富的外設,片內包括3個時鐘信號,即1個高頻時鐘、1個低頻時鐘和1個DCO,靈活地使用系統時鐘可以大大降低系統的功耗,方便系統的設計。此外還有2 KB的RAM、60 KB的FLASH、8通道采樣率為200 KS/s的12位A/D轉換器、3個內部DMA控制器、硬件乘法器、兩個帶有捕獲計時寄存器的16位定時器、48個可復用I/O引腳和兩個通用同步/異步串行通訊口。芯片內帶有JTAG調試接口,無需仿真器和編程器,方便設計人員的開發調試。單片機的A/D采樣部分使用3片模擬開關4053將8路擴為16路,原理圖如圖3所示。腦電信號幅度在-100~+100 μV之間,MSP430F169單片機的A/D轉換器為12位,考慮到A/D轉換后兩位會有不穩定的因素,系統的精確度仍能達到0.2 μV,這足以滿足后期的警覺度特征提取。
1.4 無線傳輸模塊
無線模塊采用TI公司的CC2500[10-11]芯片,它是一款超低功耗、低成本的無線收發模塊,工作在2.4 GHz全球開放ISM(工業、科學、醫學)頻段,滿足多信道通信和跳頻通信需要,支持多種調制方式,包括FSK,GFSK,OOK和MSK,最高傳輸速率可達500 Kb/s。工作電壓為1.9~3.6 V(與430單片機通過SPI口相連時無需電平轉換),外圍元件極少,內置硬件CRC和點對多點通信地址控制。主要的工作參數大都可以由設計者通過芯片狀態字自行配置,沒有復雜的通信協議,同種產品間可自由通信。所以,CC2500是一款低成本射頻系統級芯片,具有體積小、功耗少、外圍元件少等優點。
圖3 A/D部分連接原理圖
CC2500模塊通過標準的SPI接口與MSP430單片機相連;SI,SO為CC2500的數據輸入/輸出端口;SCLK作為數據傳輸的同步時鐘;CSn為片選信號,低電平芯片工作;還有2個通用輸出口GDO0和GDO2用來輔助CC2500實現無線通信功能。CC2500模塊部分電路如圖4所示。
圖4 CC2500模塊部分
腦電信號頻率范圍在0.5~100 Hz間,設計采樣頻率為500 Hz,共16通道,則要求傳輸速率:16×500×16 b/s=128 Kb/s,遠小于CC2500最高傳輸速率500 Kb/s。
1.5 USB傳輸模塊
USB接口芯片采用的是TI公司的TUSB3410[12-13],包括通過USB總線與主機通信所需要的全部邏輯電路。內部包含一個8052微控制器、16 KB RAM、I2C引導加載程序的10 KB ROM,4個通用I/O口,具有USB總線供電和自帶電源2種供電模式。該芯片符合通用串行總線USB 2.0規范,支持12 Mb/s的數據速率,是一款高性能的USB接口器件。TUSB3410與MSP430F169的連接原理圖如圖5所示。
圖5 TUSB3410與MSP430F169連接電路
本文使用USB總線供電模式,TUSB3410(U2)的USB數據信號經雙路USB端口瞬態抵制器SN75240(U3)后連接到標準的USB B型口,以此增強系統ESD抗干擾能力;USB總線提供的5 V電壓經TPS77301(U4)3.6 V LDO穩壓后為系統供電。
2 系統軟件設計
該系統中,程序設計包括單片機程序、USB驅動程序和PC機應用程序。考慮到該腦電信號采集系統的處理器負擔不重,主要就是A/D采樣、發送端和接收端程序及與上位機的通信,兼顧程序的易讀性、可移植性,采用C語言作為編程語言。開發軟件使用IAR公司的集成開發環境IAR Embedded Workbench嵌入式工作臺以及調試器C-SPY,使用非常方便[14-15]。單片機程序流程如圖6所示。
圖6 單片機程序流程圖
MSP430中ADC12模塊采用序列通道單次轉換模式,通過定時器A來控制采集數據的時間間隔。通過對轉換序列中最后一個通道對應的中斷允許位置位,序列通道完成一次轉換時將自動產生中斷標志,從而進入中斷服務子程序,以此來完成多通道的信號采集。
在發送端,單片機通過SPI口來初始化CC2500的發射頻率、波段、發射功率、地址碼、地址位數、數據位數及收發模式等。在一個采用周期內,當ADC采集完16路腦電信號,單片機將ADC采集到的數據通過SPI寫入CC2500的發射寄存器,開啟CC2500的發射模式,CC2500將自動給要發射的數據加上前導碼和校驗位,并和地址碼一起發送出去,而后單片機進入下一個采樣周期。
在接收端,單片機同樣配置CC2500,然后開啟CC2500為接收狀態,一旦接收到數據包,GDO0就產生一個中斷給單片機,單片機便通過SPI口讀取CC2500接收寄存器的數據,并通過UART將數據傳到上位機電腦,然后等待接收下一組數據。
USB設備驅動程序負責建立上位機電腦與接收端單片機的聯系,將從單片機UART口得到的數據通過USB接口傳到電腦上。USB的驅動程序可在網上(www.ti.com)下載到。
上位機電腦的應用程序是在VC 6.0[16]環境下開發的,主要完成對采集的腦電數據顯示,也可以為以后是數據分析處理做準備。
3 結 語
本文以低功耗、低成本的CC2500射頻收發芯片為傳輸模塊,結合低功耗、高集成度的MSP430F169單片機作為控制器,設計了一套可穿戴式、低功耗、多通道的實時腦電信號無線采集系統,采集的精度、速度及系統的可靠性能夠滿足要求。
參考文獻
[1]LIN Chin-teng. Development of wireless brain computer interface with embedded multitask scheduling and its application on real-time driver′s drowsiness detection and warning[J]. IEEE Transactions on Biomedical Engineering, 2008, 55(5): 1582-1591.
[2]傅佳偉.基于EEG的警覺度分析與估計研究綜述[J].中國生物醫學工程學報,2009,28(4):589-596.
[3]李志偉.數字腦電儀信號采集子系統的設計與實現[D].蘇州:蘇州大學,2005.
[4]江洪.基于DSP的腦電信號采集系統的設計[D].合肥:安徽大學,2005.
[5]鐘文華.基于ARM的腦電信號采集系統[J].國外電子元器件,2008(2):13-15.
[6]侯俊欽.基于FPGA的腦電信號采集系統的設計[D].合肥:安徽大學,2007.
[7]GAU Shir-cheng. Development of dual-core processor based real-time wireless embedded brain signal acquisition/processing system and its application on driver′s drowsiness estimation[D]. 新竹:國立交通大學,2005.
[8]胡大可.MSP430系列16位單片機原理與應用[M].北京:北京航空航天大學出版社,2000.
[9]胡大可.MSP430系列單片機C語言程序設計與開發[M].北京:北京航空航天大學出版社,2003.
[10]Texas Instsuments. Low-cost low-power 2.4 GHz RF transceiver[EB/OL].[2009-05-19].http://www.ti.com.cn.
[11]Texas Instsuments. CC2500 Errata Notes[EB/OL].[2006-05-23].http://www.ti.com.cn.
[12]Texas Instsuments. MSP430 USB connectivity using TUSB3410[M]. USA: Texas Instruments, 2006.
[13]Texas Instsuments. TUSB3410 USB to serial port controller data manual[M]. USA: Texas Instruments, 2002.
[14]魏小龍.MSP430系列單片機接口技術及系統設計實例[M].北京:北京航空航天大學出版社,2002.
[15]秦龍.MSP430單片機常用模塊與綜合系統實例精講[M].北京:電子工業出版社,2007.
[16]同志工作室.Visual C++6.0開發技巧與實例教程[M].北京:人民郵電出版社,2000.