* 作者為亞東技術學院資訊與通訊工程研究所副教授。 ** 作者為亞東技術學院資訊與通訊工程研究所研究生。
簡易儲存式心電儀雛型系統設計
蕭如宣
*黃亞生
**摘要
本文以 ALTERA DE2-70 發展平台進行建立心電 儀的雛型系統設計,搭配有依艾茵特霍芬原理設計而 成的自製開發板電路以量測心電訊號,其量測結果經 由 ADC 送入 DE2-70 進行數位訊號處理及儲存於 SD 卡,並將量測的結果顯示在 4.3 吋彩色液晶面板上, 實現可攜式心電儀設計。此儀優點在於可以即時量 測,可以隨時記錄身體的健康情形,一旦人體有任何 異狀可在當下立即量測並將結果儲存在 SD 卡,醫生 只需讀取 SD 卡內的心電圖資料,即可重建當時的心 電圖狀況。這項應用除了減少使用者的資料外洩之 外,亦方便攜帶至其他醫院看診,減少診斷等待時間。 關鍵詞:艾因特霍芬原理前言
現在今的醫療儀器琳郎滿目,越精準的儀器,價 格越是驚人,而過去的醫療檢測樣樣都必須在醫院做 檢測,甚至要排隊進行,但是並非所有的疾病發作都 有明顯症狀,因此必須即時監控,而本研究是以輕巧 方便為出發點,設計一心電儀的雛型系統,在操作上 以貼片式進行量測,以達到 ECG 量測,其結果記錄 在 SD 卡,改善過去醫療檢測的種種不方便,可以在 任何時間、任何地點,清楚了解人體的健康狀況。壹、 心臟電圖原理及設計方法
心臟可區分為左心房、左心室、右心房、右心室, 心臟每收縮一次即代表一個心跳週期,如圖 1 所示, 正常情況下心臟收縮的機制是由右心房的竇房結(SA node)來控制,經由房室結(AV node)、希氏束(His Bundle),將電刺激由心房傳到心室,引起心臟的收 縮,以維持正常的血壓及身體所需之血液供應[3]。 圖 1 心臟剖面圖[3] 心臟在靜止狀態是帶負電位,或稱 之為極化 (polarization) , 受 到 了 電 刺 激 則 去 極 化 (depolar- zation),此時為帶正電產生心臟收縮反應。心臟每個 週期性活動都會有不同的電氣活動,若將這些電氣活 動記錄下來,其所繪製出來的波形即是心電圖。如圖 2 所示,P 波、QRS 複合波、T 波、U 波構成一個標 準的心電圖,其各波形的意義如下:P 波為心房去極 化;QRS 波為心室去極化;T 波為心室再極化;U 波 為心室肌肉收縮緩慢;PR 間隔為左右心房去極化和 去極化波傳導至房室結的時間。圖 2 心臟電氣分析圖[2] 1. 心電儀簡介
目前心電圖臨床上使用最普遍的是 12 導程心電 圖(12 leads ECG),其包含三個標準導程(standard leads) I、II、III,三個加壓導程(augmented leads) aVR、 aVL、aVF 及六個胸導程(chest leads) V1、V2、V3、 V4、V5、V6,而本文是以艾茵特霍芬等邊三角形 (Einthoven equilateral triangle)為量測基準。
艾茵特霍芬等邊三角形(I、II、III)是指在三個肢 體上安置電極片,三點成一個等邊三角形,將心臟跳 動情形完整擷取下來,此量測稱為艾茵特霍芬法則。 2. ECG 雛型系統設計 本文 ECG 雛型系統設計分為 ECG 訊號擷取電路 及 SOPC 雛型系統,如圖 3 所示,左邊為 ECG 訊號 擷取之類比訊號處理流程,先取樣心電圖訊號,經由 放大使 QRS 振幅為 1V 內,再將訊號進行濾波,將頻 帶範圍控制在 0~160Hz 內,同時並濾除市電 60Hz 干 擾,再從示波器來檢視心電圖波形的變化,校正完波 形後,透過 ADC 轉換成數位資料進到右邊 SOPC 雛 型系統裡面,進行數位訊號處理與儲存,將結果顯示 在 LTM 上。 圖 3 ECG 訊號擷取與處理流程圖
貳、 ECG 訊號擷取電路設計
心電圖的種類很多種,最常見到的是標準的臨床 ECG、監控 ECG、壓力(運動)ECG、向量(三正交導 程)ECG,他們都是針對不同的需求所開發出來的產 品,其取樣的頻率範圍落在 0.06Hz ~160Hz 之間,因 此本文所設計電路將頻率設在 160Hz 以下。 如圖 4 所示,本文電路量測點為 RA、LA、LL。 圖 4 愛茵特霍芬等邊三角形[1] 1. ECG 訊號放大電路 本文之訊號取樣是以儀表放大器來抓取訊號,因 為儀表放大器具有高輸入阻抗及高共模拒斥比的特 性,提升訊號對雜訊比,其電路如圖 5-1 所示。其中 RA、LA 分別貼在右左胸前位置,DRL_A 則是接到 參考點 LL,其中必須有保護人體安全的設計,因此 加裝一個保護電路,如圖 5-2,防止瞬間電流電擊人 體。 圖 5-1 儀表放大器圖 5-2 LL 保護電路 訊號放大主要由後端的濾波電路實現,前端儀表 放大器取樣後做微量放大約 5 倍,圖 5-1 的 RG 會隨 著電阻值的變化,增益也會有所不同,如式(1) 。後 端的放大倍率約 250 倍將訊號的振幅控制在 1V 內, 其倍率是由圖 6 中 RF 和 R 的比例所構成的,如式(2)。 1 4 . 49 RG K G (1) R RF G1 (2) 2. ECG 濾波電路 由於心電圖的頻率介於在 0.06Hz~160Hz,因此 須有一個低通濾波器設計(如圖 6 所示),以便濾除高 於 160Hz 的訊號,其 RC 數值必須依據式(3)計算。 圖 6 低通濾波器 2 1 2 1 2 1 C C R R Fc
(3) 3. ECG 帶拒電路設計 圖 7 帶拒濾波器 C Rc Fc 2 1
(4) 因為 60Hz 是另一個嚴重的交流干擾源,需要有 一 60Hz 帶拒濾波器設計(如圖 7 所示),其 RC 值計算 公式為式(4)。 示波器作為輔助波形檢視用,而本文採用的是儲 存式示波器,可以觀察出每個輸出的訊號情形,是否 有失真或者是截止情形。 4. ECG ADC 電路設計 前端類比訊號處理完成後,必須將類比資料轉換 成數位資料,本研究採用 AD7685,此為一顆 16 位 元的 ADC,其取樣頻率為 250K。圖 8-1 是 ADC 的 電路設計,為了降低 ADC 的輸入訊號受到電源的干 擾,因此必須在電源部份做好隔離的動作,如圖 8-2。 圖 8-1 AD7685 電路設計 圖 8-2 AD7685 電源電路設計 為了讓 AD7685 能自動取樣轉換及輸出,我們以 VHDL 設計了一個 ADC 控制器。圖 8-3 是 AD7685 控制器的模擬時序圖,在 oCNV 為 HIGH 時,進行 訊號轉換,當訊號轉換完時,oCNV 狀態轉換為 LOW,此時必須在 SCK 的負緣抓取 SDO 的資料, 即為有效輸出。 圖 8-3 AD7685 模擬波形圖
5. ECG 電路驗證 以下為電路實際測試驗證的結果: 圖 9-1 低通濾波 160Hz 濾波圖(>160Hz 之輸入) 圖 9-2 低通濾波 160Hz 濾波圖(<160Hz 之輸入) 從圖 9-1 可以看出頻率在大於 160Hz 時,訊號呈 現衰減狀態,而圖 9-2 是低於 160Hz 以下的輸出與輸 入訊號圖,可以看出在低於截止頻率的訊號是完整的 輸出,以此可以得知低通濾波器能有效抑制高頻。 圖 10-1 帶拒濾波 60Hz 濾波圖(正弦波 58Hz) 從圖 10-1 的輸出波形得知訊號在 60Hz 的時候衰 減特別嚴重,而圖 10-2 的輸入頻率設定在 60Hz 以外 的頻率為輸入訊號,通過濾波器後的輸出波形與輸入 波形相同,因此 60Hz 帶拒濾波器有良好效果。 圖 10-2 帶拒濾波 60Hz 濾波圖(正弦波 30Hz) 圖 11-1 ADC 硬體電路測試版 圖 11-1 顯示,左邊為輸入端,右邊為 FPGA 連 接端,由 DATASHEET 的資料得知當輸入端輸入 2.5V 時,ADC 輸出值為 7FFF,即表示 ADC 轉換正確無 誤,實際操作時,從電源供應器供應 2.5V 到 ADC 輸 入端,從 DE2-70 接排線到 ADC 的 FPGA 連接阜, 而轉換結果由七段顯示器顯示,如圖 11-2 所示,七 段顯示器顯示 7FFF,證明 ADC 轉換無誤。 圖 11-2 DE2-70 與 ADC 連接示意圖
參、 ECG 量測
以下為 ECG 實際量測的結果: 圖 12-1 ECG 訊號取樣圖 輸入訊號:正弦波 頻率:160Hz 以上 輸入訊號:正弦波 頻率:160Hz 以下 輸入訊號:正弦波 頻率:58Hz 輸入訊號:正弦波 頻率:30Hz圖 12-2 低通濾波後 ECG 圖 圖 12-3 帶拒濾波後 ECG 圖 ECG 量測中,取三點的訊號來觀察訊號的雜訊 程度,圖 12-1 是訊號取樣進來的原始訊號量測圖, 可以看出訊號參雜很多的雜訊,包含電源干擾源等 等。為了過濾掉一些雜訊,首先將 ECG 的頻段先擷 取下來,而本文所取的頻段是 160Hz,因此以低通濾 波器截止頻率設為 160Hz,如圖 12-2 所示,輸出訊 號是將取樣後的訊號經過低通濾波器的訊號,圖中明 顯的抑制一部份高頻訊號,但還是看得出 60Hz 的干 擾情形,圖 12-3 是藉由帶拒濾波器將 60Hz 濾掉的情 形,可清楚看出能有效濾掉最嚴重的電源干擾源。
肆、 SOPC 雛型系統軟硬體共同設計
圖 13 雛型系統架構圖 本雛型系統以 Terasic DE2-70 為開發平台,搭配 Terasic 彩色觸控板及 ECG 訊號擷取電路板,以 Altera Quartus II 為雛型系統之軟硬體共同設計開發環境, 硬體設計建立一 Nios2 核心模組(如圖 13 所示),該核 心模組具有 ADC DATA IN、SEG7、LTM、SD CARD 和 FFT IP CORE,軟體設計則以 Altera Nios II IDE 為 開發平台進行程式設計。而本雛型系統訊號輸入端為 ADC 模組(即 AD7685),必須經由 Nios2 的 ADC DATA IN 來 控 制 ADC 模 組 抓 取 資 料 並 存 進 SDRAM,同時 SEG7 會顯示輸入資料,待儲存完畢 後,選擇顯示心電強度或者是心電圖波形,選擇前者 就必須進行 FFT 運算,後者直接輸出,其兩者結果 皆由 LTM 模組顯示,再依據使用者的需求決定是否 儲存至 SD 卡。 1. FFT IP 設計 圖 14-1 FFT 參數設定值 訊號轉換除了類比轉數位之外,另一為時域轉頻 域,然而這項轉換須經由 FFT 來做轉換。這部分採 用 ALTERA 提供的 FFT IP CORE 來進行轉換。圖 14-1 為 FFT 的參數設定,這裡是以 Cyclone II 為例,轉換 長度設為 256 個 Point,資料精度設為 16Bits,Twiddle 精度設為 16Bits,資料輸出為 Streaming。 圖 14-2 為 FFT 的控制時序圖,必須撰寫一個 FFT 的控制器,圖 14-3 為 VHD 控制器的波形模擬圖,當 control 和 sink_ready 為 HIGH,sink_valid 轉換為 HIGH,表示輸入有效資料,同時 sink_sop 產生一個HIGH,當資料輸入 256 筆,sink_valid 轉換為 LOW, sink_eop 產生一個 HIGH,以此類推來送訊號至 FFT IP CORE,即完成時域轉頻域。 圖 14-2 FFT 控制時序圖 圖 14-3 FFT 控制器波形模擬圖 圖 14-4 FFT 與 FFT CONTROL 連接示意圖 圖 14-4 上方為 FFT IP CORE,下方為 FFT CONTROL,將 FFT CONTROL 的輸出端連接到 FFT IP CORE 輸入端,即可控制 FFT IP CORE 進行 FFT 轉換。 下圖 14-5 中的左框為資料完整輸入週期,必須 延遲一個輸入週期才會輸出上一週期的轉換資料,完 成時域轉頻域之功能。 圖 14-5 FFT IP CORE 模擬圖 2. Nios2 核心模組 本研究之 SOPC 雛型系統,主要為了處理訊號轉 換、波形儲存與波形顯示。因此,首先我們建立一個 Nios2 核心(如圖 15 所示),然後進行嵌入式軟體設計。 Nios2 的核心內容必須包含儲存、輸入、輸出等 基本的 IO,以下為這三個單元介紹。
a.儲存單元:兩顆 32MB SDRAM、SD CARD b.輸入單元:ADC、FFT_in c.輸出單元:FFT_out、SEG7、LTM 圖 15 Nios2 核心模組 3. Nios2 嵌入式軟體設計 圖 16 ECG 雛型系統軟體流程圖 圖 16 為本研究 ECG 雛型系統軟體流程圖,系統 啟動之後,可以選擇量測或是查看歷史紀錄。若選擇 量測後,十秒鐘後,LTM 即顯示心電圖或者是切換 量測 FFT 顯示 離開 歷史紀錄 儲存 顯示 FFT 清除 開始 清除 FFT IP CORE FFT CONTROL
FFT 轉換後的心電強度圖,其波形可以選擇是否儲存 到資料庫。 4. 設計結果 本文以友晶科技 DE2-70 發展板為基礎,進行 SOPC 雛型系統軟硬體共同設計。 圖 17 實體展示圖 如圖 17 所示,左上為 Terasic 4.3”彩色觸控面 板,左下為 Terasic DE2-70,右中為自製心電圖量測 板,搭配 3M 心電貼片構成 SOPC 雛型系統。 本系統進行量測時,先將心電貼片貼至人體胸 窩前,左右貼片間距約一個拳頭距離,參考點貼至肚 臍偏上方處,完成以上步驟即可開始準備量測,準備 就緒後,按下開始量測,並等候約 10 秒鐘的時間, 如圖 18 所示,當完成量測後,將心電圖及心跳顯示 於觸控面板上,此時可以選擇是否儲存,當按下儲存 鍵時,系統會將資料儲存於 SD 卡裡,若是按下清除 鍵,則返回功能選項,完成簡易儲存式心電儀雛型系 統設計之基本量測。 圖 18 量測結果 本研究 ECG 雛型系統設計完成並經過各種實驗 後,已達成預期之目的,獲得結論如下: A. 設計心電儀的電路須需特別注意濾波的頻率 點,針對擷取頻率完成設計; B. 避免電源電路的 60Hz 的干擾源; C. 在 ADC 轉換要確實做好數位跟類比的隔離; D. 若能多點取樣必能提升系統的可靠度。