景維斌
(江蘇聯(lián)合職業(yè)技術學院徐州醫(yī)藥分院,江蘇徐州,221116)
腦電信號是腦神經(jīng)系統(tǒng)的生理活動在大腦皮層上的總體反映。成功測量腦電信號對研究腦功能狀態(tài)檢測和腦部疾病的診斷具有重要意義。腦電信號是通過腦電圖機的電極與人體頭皮接觸從而實現(xiàn)腦電信號的采集。由于腦電信號極其微弱,幅值一般在50μV以下,因而在測量過程中容易受到外界的干擾。電極和頭皮之間接觸不良導致接觸阻抗過大是所有噪聲信號中一個主要的干擾源。為了得到更真實準確的腦電信號,腦電圖機對電極與頭皮間的接觸阻抗的有著非常嚴格的要求。接觸阻抗越小,引入的交流干擾越小,得到的腦電信號的波形質量越高、越穩(wěn)定。電極和頭皮之間接觸阻抗一般應小于10kΩ。電極與頭皮間接觸是否牢固是直接影響二者之間接觸阻抗大小的重要因素,因此腦電圖機需要配置接觸阻抗檢測電路。本文設計了一個接觸阻抗的測試系統(tǒng),能夠在醫(yī)護人員開始記錄腦電信號前首先對各導聯(lián)接觸阻抗進行檢測,檢測結果通過LED指示燈來顯示各電極與頭皮之間接觸是否正常,以保證后續(xù)進行的腦電信號記錄的可靠性。
基于STM32單片機的數(shù)字腦電圖機電極與頭皮接觸阻抗的測試系統(tǒng)總體結構如圖1所示。系統(tǒng)由導聯(lián)輸入電路、信號處理電路、A/D轉換電路、光電耦合電路、單片機STM32F103ZET6、阻抗測試電路和上位機顯示等組成。其中信號處理電路由導聯(lián)選擇、前置放大器、低通濾波、二級放大器構成。腦電信號經(jīng)腦電圖導聯(lián)接入本測試系統(tǒng),經(jīng)信號處理電路進行預處理,預處理后的信號經(jīng)A/D轉換和光耦隔離電路送入單片機進行數(shù)據(jù)采集和存儲。阻抗檢測電路在系統(tǒng)采集腦電信號前判斷導聯(lián)電極與大腦皮層是否連接牢固。阻抗檢測電路以555定時器為核心組成振蕩電路,將接觸阻抗作為振蕩器的輸入電阻。不同的輸入阻抗導致振蕩器輸出的頻率不同。STM32單片機測量阻抗電路輸出的頻率從而計算出輸出阻抗。計算得到的接觸阻抗數(shù)值與10K阻抗值進行比較。若大于10K阻抗值,則說明頭皮與電極接觸不良,相應導聯(lián)指示燈亮;若小于10K阻抗值,則說明頭皮與電極接觸良好,相應導聯(lián)指示燈不亮。其分析結果通過USB通訊接口傳輸?shù)缴衔粰C顯示、處理,并通過綠色發(fā)光二極管對電極與頭皮接觸好壞進行直觀指示。不同的發(fā)光二極管點亮對應不同導聯(lián)電極接觸不良。
圖1 系統(tǒng)總體結構框圖
本系統(tǒng)的單片機采用意法半導體公司基于Cortex-M3內核的32位微處理器STM32F103ZET6。該芯片最大工作頻率可達72MHz,512KB RAM,含有單周期乘法和硬件除法器,便于數(shù)字信號處理。該單片機擁有豐富的片內資源,該芯片具有64KB SRAM、512KB FLASH、2個基本定時器、4個通用定時器、2個高級定時器、3個SPI、2個IIC、5個串口、1個USB、1個CAN、3個12位ADC、1個12位DAC、1個SDIO接口、1個FSMC 接口以及112個通用IO口等。具有處理速度快、應用成本低、性價比高等特點。
在系統(tǒng)設計中,使用了芯片12位高精度ADC片上外設,用來采集腦電信號;使用了定時器外設,用來計時計算阻抗測試電路輸出頻率;使用了片上串口,用于同上位機間通訊。使用微處理器STM32F103ZET6使得系統(tǒng)硬件電路設計更加簡潔,提高了系統(tǒng)的穩(wěn)定性和抗干擾性。
圖2 STM32F103ZET6片內資源
阻抗測試電路設計核心是將導聯(lián)電極和頭皮之間的接觸阻抗作為多諧振蕩器中的一個電阻,不同的接觸阻抗使得多諧振蕩器輸出不同的頻率,單片機通過測量頻率計算出接觸阻抗的大小。此設計方案與在導聯(lián)電極和頭皮之間施加電壓測量電流的方法相比,既可以避免額外電壓對腦電信號的干擾,又可防止電壓對人體的傷害。
阻抗測試電路以SA555為核心組成多諧振蕩器電路。多諧振蕩器也稱無穩(wěn)態(tài)觸發(fā)器,沒有穩(wěn)定狀態(tài),只有兩個暫態(tài),同時不需要外加脈沖信號,就能輸出一定頻率的矩形脈沖。電路圖如圖3所示。圖中R2是腦電圖電極與耳電極之間的接觸阻抗。電容C通過R1和R2充電,當電壓上升到2/3的電源電壓時,Pin6腳檢測到此狀態(tài),并且Pin7腳連接到地。電容通過R2放電,直到它的電壓小于1/3的電源電壓,并且Pin 2腳檢測到該狀態(tài),關閉Pin7腳,重復以上的循環(huán)。上面的電阻是為了防止Pin7腳被損壞,因為當Pin6腳檢測到2/3的電源電壓時它短接到0V。它的阻值相對于R2來說很小,并且不會干擾到振蕩周期的計算。
圖3 阻抗測試電路
多諧振蕩器的振蕩周期公式:
其中:
R1=10kΩ;
R2是腦電圖電極與耳電極之間的阻抗;
C=0.01μF。
腦電信號采集儀的導聯(lián)數(shù)量一般大于16導聯(lián),因此單片機需要驅動至少16個發(fā)光二極管。若采用單片機一個IO口來控制一路發(fā)光二極管的方法,則此方案會大量占用單片機的IO口資源。為了節(jié)約單片機IO資源,系統(tǒng)指示燈顯示電路采用集成芯片ZLG7289作為發(fā)光二極管的驅動芯片,電路圖如圖4所示。
圖4 指示燈顯示電路
ZLG7289是廣州周立功單片機發(fā)展有限公司自行設計的,具有SPI串行接口功能,可同時驅動8位共陰極數(shù)碼管或64只獨立LED的智能顯示驅動芯片,該芯片同時還可連接多達64鍵的鍵盤矩陣,單片機可完成LED顯示﹑鍵盤接口的全部功能??梢院芊奖愕墓芾鞮ED顯示,特別是LED數(shù)量比較多時,可以為系統(tǒng)節(jié)約大量的資源,ZLG7289內部含有顯示譯碼器,可直接接受BCD碼或16進制碼,并同時具有兩種譯碼方式。利用片選信號,多片ZLG7289還可以并接在一起使用,能夠方便地實現(xiàn)更多數(shù)碼管的驅動。
電路圖中元器件代號U5即為LED驅動芯片ZLG7289。驅動芯片采用+5V供電,為了使芯片電源更加穩(wěn)定,一般要在+5V電源電路與GND之間接入47~470uF的電解電容,用于濾除電源中的毛刺信號,此部分內容不在此處呈現(xiàn)。Pin6、Pin7和Pin8是ZLG7289 與微控制器STM32F103ZET6的進行SPI通訊的接口。晶振X3可取4~16MHz,此處選擇常用的12M晶振。晶振振蕩電路中的調節(jié)電容C26和C27通常取值在20pF左右。ZLG7289復位引腳Pin28的復位信號是低電平有效,為了精簡電路此處只外接一個簡單的RC復位電路,并未添加按鈕采用人工手動拉低RST引腳的方法進行復位。發(fā)光二極管LED采用共陰極驅動的方式,受芯片本身制約不能使用共陽極驅動方式。LED在工作時要消耗較大的電流,R23~R30是限流電阻,一般選330Ω的電阻即可。如果要增大數(shù)碼管的亮度,可以適當減小電阻阻值,但最低不得小于200Ω。
為了檢測阻抗測試電路輸出的信號頻率,單片機STM32F103ZET6采用一個定時器實現(xiàn)1秒計時,采用外部中斷實現(xiàn)脈沖計數(shù)。測量1s內單片機獲取的脈沖數(shù)。程序運行時,單片機啟動定時器定時1秒,然后打開外部中斷開始計量阻抗測試電路輸出的脈沖數(shù)。1秒定時結束后,關閉中斷停止計數(shù),中斷計數(shù)的值則為脈沖信號頻率值。
通過公式(1)T=0.693×(R1+2R2)×C計算的頻率值與電阻值的對應關系如下表1所示。
表1 頻率值與電阻對應關系
3 10000 11300 0.00000001 0.000225918 4426.384794 4 10000 11200 0.00000001 0.000224532 4453.708157 5 10000 11100 0.00000001 0.000223146 4481.370941 6 10000 11000 0.00000001 0.00022176 4509.379509 7 10000 10900 0.00000001 0.000220374 4537.740387 8 10000 10800 0.00000001 0.000218988 4566.460263 9 10000 10700 0.00000001 0.000217602 4595.545997 10 10000 10600 0.00000001 0.000216216 4625.004625 11 10000 10500 0.00000001 0.00021483 4654.843365 12 10000 10400 0.00000001 0.000213444 4685.06962 13 10000 10300 0.00000001 0.000212058 4715.69099 14 10000 10200 0.00000001 0.000210672 4746.715273 15 10000 10100 0.00000001 0.000209286 4778.150474 16 10000 10000 0.00000001 0.0002079 4810.00481 17 10000 9900 0.00000001 0.000206514 4842.286721 18 10000 9800 0.00000001 0.000205128 4875.004875 19 10000 9700 0.00000001 0.000203742 4908.168173 20 10000 9600 0.00000001 0.000202356 4941.785764
由表1頻率值與電阻對應關系可知,10kΩ接觸阻抗對應的信號頻率為4625Hz。在進行導聯(lián)與大腦皮層接觸阻抗測試時,單片機通過定時器和中斷檢測的頻率值與4625Hz進行比較。若頻率值大于4625Hz則說明導聯(lián)與大腦皮層接觸不良,同時點亮相應導聯(lián)的指示燈;若小于4625Hz則說明接觸良好,相應導聯(lián)的指示燈熄滅。一般腦電檢測儀的檢測標準導聯(lián)是16導,為了更直觀呈現(xiàn)16路導聯(lián)的接觸情況,在上位機上用軟件模擬人腦,并在人腦16各路導聯(lián)電極安放位置處安插16個對應的指示燈。單片機通過USB將采集的數(shù)值上傳到上位機,上位機進行數(shù)值判斷,進而顯示各路導聯(lián)的接觸情況,并進行聲光報警。整個系統(tǒng)的程序流程圖如圖5所示。
圖5 系統(tǒng)程序流程圖
本文設計了一個基于STM32單片機的腦電圖機電極與頭皮接觸阻抗的測試系統(tǒng)。從系統(tǒng)總體設計方案、接觸阻抗測試電路、LED驅動電路和程序軟件設計等方面分析了其工作原理。臨床實驗表明,本系統(tǒng)能夠正確的判斷導聯(lián)與大腦皮層接觸是否良好,并將接觸狀態(tài)反饋至上位機中,以聲光報警的形式提醒醫(yī)護人員,從而保證腦電測試儀測量記錄的腦電信號正確、可靠。