臧俊斌,高慧芳,郝凱軒
(1.中北大學(xué)儀器科學(xué)與動(dòng)態(tài)測(cè)試教育部重點(diǎn)實(shí)驗(yàn)室,山西太原 030051;2.山西工學(xué)院,山西朔州 036000)
近年來(lái),居民生活水平得到提高,我國(guó)呈現(xiàn)出人口老齡化現(xiàn)象,老年人心血管疾病頻發(fā),心臟病患者人數(shù)持續(xù)上漲[1-3]。通過(guò)技術(shù)手段檢測(cè)并分析患者的心音信號(hào),對(duì)心臟病的診斷有著重要的臨床參考價(jià)值。因此,設(shè)計(jì)一個(gè)簡(jiǎn)單、方便、易用的心音信號(hào)采集系統(tǒng),實(shí)現(xiàn)心音信號(hào)的采集、存儲(chǔ)與波形實(shí)時(shí)顯示等功能,便于對(duì)心臟病變發(fā)展情況及過(guò)程做出準(zhǔn)確的評(píng)估和掌控,也能輔助醫(yī)師和學(xué)生加強(qiáng)對(duì)心臟病的深刻理解與認(rèn)識(shí);同時(shí),對(duì)于降低患者的醫(yī)療成本,減輕其心理負(fù)擔(dān),促進(jìn)心臟病的早期控制和有效治療意義重大。
心音指的是在一個(gè)完整的心動(dòng)周期內(nèi),因心肌舒張與收縮以及心臟瓣膜啟閉等多種因素而引發(fā)的心臟機(jī)械式振動(dòng)經(jīng)心臟附近組織傳遞至胸壁,可以由耳朵或聽(tīng)診器貼緊胸壁聽(tīng)到的聲音[4-6]。心電圖作為檢測(cè)人體心電活動(dòng)最精確的手段之一,是醫(yī)務(wù)人員對(duì)心血管類疾病患者診斷的有效依據(jù)。心電圖指記錄心電信號(hào)并間接反映人的心臟功能和活動(dòng)的波形圖。通常情況下,心電信號(hào)的一個(gè)完整周期如圖1 所示,其由P 波、PR 波段、QRS 波群、ST 波段、T 波組成[7-8]。
圖1 心電信號(hào)特征波形圖
研究表明,心臟在一個(gè)周期內(nèi)生成四個(gè)心音:第一心音(S1)在心室收縮時(shí)產(chǎn)生,在心電圖的QRS 波群之后;第二心音(S2)在心室舒張開(kāi)始時(shí)產(chǎn)生,在心電圖中T 波的終端;第三心音(S3)則在第二心音(S2)之后產(chǎn)生;第四心音(S4)在心房收縮期產(chǎn)生,在心電圖的P 波之后。通常情況下,只可能聽(tīng)到第一心音(S1)和第二心音(S2)。因此,在一個(gè)周期內(nèi),心音信號(hào)通常分為第一心音(S1)、收縮期、第二心音(S2)、舒張期四個(gè)時(shí)間段[9],如圖2 所示。其中,S2 振幅較弱于S1,持續(xù)時(shí)間相對(duì)較短。
圖2 心音信號(hào)的時(shí)域特征圖
基于心音與心電的產(chǎn)生機(jī)理與表現(xiàn)形式,該文設(shè)計(jì)了便攜式心音信號(hào)采集系統(tǒng),其主要由心音信號(hào)采集模塊、心音信號(hào)處理模塊以及心音信號(hào)波形顯示模塊三部分組成。
其中,心音信號(hào)采集模塊主要使用PVDF 心音傳感器來(lái)完成對(duì)人體內(nèi)心音信號(hào)的采集工作。PVDF 心音傳感器將位于胸腔內(nèi)心跳發(fā)出的微弱聲音信號(hào)放大并且轉(zhuǎn)換成處理模塊可以識(shí)別的電信號(hào)[10]。由于心音信號(hào)的頻帶范圍為20~800 Hz,依據(jù)奈奎斯特采樣定理、硬件處理能力、STM32 轉(zhuǎn)化精度和采樣頻率,通常將采樣頻率設(shè)置為48 kbps,量化精度設(shè)置為12位,編碼方式設(shè)置為WAV 格式[11-12]。
心音信號(hào)處理模塊主要采用STM32 處理器對(duì)接收到的電信號(hào)進(jìn)行處理。該模塊由放大電路、高通/低通濾波電路以及數(shù)據(jù)轉(zhuǎn)換處理部件四部分組成,以完成對(duì)所采集心音信號(hào)的處理[13-14]。
心音信號(hào)波形分析顯示與通信傳輸主要采用2-ANO_TC 地面站的v4.34 版本與2-XCOM 的V2.0版本。通過(guò)STM32 對(duì)心音信號(hào)進(jìn)行處理,再經(jīng)過(guò)串口通信傳輸?shù)絇C端,在PC 端使用2-XCOM 對(duì)串口進(jìn)行調(diào)試,最后使用2-ANO_TC 地面站完成心音信號(hào)輸出波形的顯示。詳細(xì)的系統(tǒng)結(jié)構(gòu)圖如圖3所示。
圖3 系統(tǒng)結(jié)構(gòu)圖
該研究中使用PVDF 心音傳感器作為系統(tǒng)中的心音信號(hào)傳感器,完成對(duì)心音信號(hào)的采集工作。PVDF 心音傳感器是一種比較常見(jiàn)的動(dòng)態(tài)應(yīng)變式傳感器,其主要材料是PVDF 高分子膜。當(dāng)PVDF 高分子膜受應(yīng)力影響發(fā)生彎曲或拉伸變化時(shí),上下兩個(gè)電極表面將產(chǎn)生相應(yīng)變化的電流信號(hào),該電信號(hào)與高分子膜的形變程度成比例。與一般壓電材料相比,PVDF 高分子膜擁有更高的敏感程度,當(dāng)大面積地對(duì)薄膜施加壓力時(shí),它會(huì)產(chǎn)生更大的應(yīng)力[15-17]。不僅如此,這種傳感器更薄、更輕,而且非常柔軟,經(jīng)過(guò)上百萬(wàn)次的形變亦不會(huì)影響它的性能。
PVDF 心音傳感器采集的心電信號(hào)經(jīng)電路放大后,再傳輸?shù)絊TM32 嵌入式開(kāi)發(fā)板上進(jìn)行信號(hào)處理。
該次設(shè)計(jì)使用的STM32 為MAX9812 1.0,其主要功能是處理來(lái)自PVDF 心音傳感器傳遞的電信號(hào),處理后的信號(hào)將傳輸?shù)絇C 端。MAX9812 是一個(gè)同時(shí)帶有20 dB 固定輸出功率和高電源增益的音頻放大器,主要特點(diǎn)是采用6 引腳SC70 封裝,具有頂級(jí)水平的電源抑制比和極低的THD+N,且具有低功耗等特性。
該設(shè)計(jì)使用的兩種PC 端軟件是2-ANO_TC 地面站與2-XCOM 串口調(diào)試工具。2-XCOM 的作用是將串口連接起來(lái),串口的端口號(hào)為COM4:USBSERIAL,波特率為460 800 bps;用2-ANO_TC 地面站進(jìn)行波形輸出與顯示,串口的端口號(hào)與波特率的設(shè)置與2-XOM 的設(shè)置相同,即可將上述兩個(gè)軟件對(duì)接,從而獲取到所收集心音信號(hào)的波形。
該設(shè)計(jì)的程序主要使用了sys 函數(shù)、adc 函數(shù)、delay 函數(shù)、key 函數(shù)、usart 函數(shù)、Timer 函數(shù)、LED 函數(shù)以及main 函數(shù)。
1)sys 函數(shù):該函數(shù)用來(lái)處理中斷的開(kāi)啟、結(jié)束以及設(shè)置棧頂?shù)刂贰?/p>
2)adc 函數(shù):
①ADC 接在APB2上,將時(shí)鐘設(shè)置為72 MHz,通過(guò)分頻的方式給ADC 提供特定時(shí)鐘,其中預(yù)分頻的方式主要有二分頻、四分頻、六分頻、八分頻四種。
②設(shè)置多個(gè)通道采樣、轉(zhuǎn)換時(shí)間,其中,通道采樣時(shí)間的變化將對(duì)采樣精度產(chǎn)生直接影響。
③轉(zhuǎn)換時(shí)間=采樣時(shí)間+12.5 個(gè)周期,一個(gè)周期大約為1 μs。通常情況下,如果是軟件啟動(dòng),則轉(zhuǎn)換時(shí)間等于采樣周期。若通過(guò)定時(shí)器觸發(fā)啟動(dòng)ADC,則還需要加上定時(shí)器的相關(guān)時(shí)間。
④確定采樣頻率:為了盡可能提高采樣精度,選取ADC 時(shí)鐘為12 MHz,即六分頻。在保證采樣率為400 kHz 的情況下,每次采樣時(shí)間為2.5 μs,同理可以求出采樣時(shí)間為17.5 個(gè)周期。因此,采樣時(shí)間必須小于17.5 個(gè)周期才能保證采樣率在400 kHz 以上。綜上,選擇13.5 個(gè)周期以保證有較高的準(zhǔn)確度。
3)delay 函數(shù):修正中斷過(guò)程時(shí)再次調(diào)用函數(shù)后可能出現(xiàn)的中斷死機(jī)、循環(huán)錯(cuò)誤,為了防止延時(shí)不準(zhǔn)確,采用do while 函數(shù)結(jié)構(gòu)。并且在此基礎(chǔ)上,還增加了一個(gè)對(duì)ucosii 延時(shí)的自動(dòng)系統(tǒng)支持。同時(shí),添加了delay_osrunning、delay_ostickspersec、delay_osintnesting三個(gè)宏定義與delay_ossched-lock、delay_osschedunlock、delay_ostimedly 三個(gè)函數(shù)。
①delay_osrunning 表示當(dāng)前系統(tǒng)是否正在工作,以決定是否使用與os 相關(guān)的函數(shù)。
②delay_ostickspersec 表示設(shè)定的一個(gè)時(shí)鐘節(jié)拍,delay_init 將根據(jù)這個(gè)參數(shù)計(jì)算出systick。
③delay_osintnesting 表示os 的中斷嵌套級(jí)別,可以通過(guò)使用delay_ms 函數(shù)決定如何運(yùn)行和調(diào)度中斷。
④delay_osschedlock 自動(dòng)鎖定os 的任務(wù)調(diào)度,禁止其他調(diào)度。
⑤delay_osschedunlock 自動(dòng)解鎖os 的任務(wù)調(diào)度,重新打開(kāi)調(diào)度。
⑥delay_ostimedly 應(yīng)用于os 的延時(shí),可以打開(kāi)任務(wù)調(diào)度。
4)key 函數(shù):主要包括節(jié)制按鈕及電源起始化。這個(gè)函數(shù)會(huì)對(duì)開(kāi)機(jī)狀態(tài)與供電狀態(tài)進(jìn)行檢測(cè),對(duì)按鍵進(jìn)行標(biāo)記并檢查按鍵按下的標(biāo)志位,判斷按鍵是否有效。
5)usart 函數(shù):主要用于GPIO 端口的數(shù)組設(shè)置,判斷一個(gè)用戶指定數(shù)組字符串在該數(shù)組中是否真實(shí)存在,確保每一次用戶發(fā)送的數(shù)據(jù)不會(huì)超過(guò)USART3_MAX_SEND_LEN 定義的最大緩沖字節(jié)數(shù),并對(duì)完成的標(biāo)志進(jìn)行接收,進(jìn)而判斷所接收的字節(jié)是否有效。
6)Timer 函數(shù):主要用來(lái)實(shí)時(shí)處理自動(dòng)定時(shí)器的各種中斷控制服務(wù),包括定時(shí)器的中斷初始化、自動(dòng)重裝、清空、更新等操作。
7)LED 函數(shù):主要控制MAX9812 上的LED燈,表示PB 端口時(shí)鐘的狀態(tài)。
8)main 函數(shù):連接各個(gè)函數(shù),實(shí)現(xiàn)預(yù)期的功能。其中包括軟件復(fù)位、藍(lán)牙發(fā)送、開(kāi)啟DMA、ADC 采集等功能。
根據(jù)上述設(shè)計(jì)的系統(tǒng)結(jié)構(gòu)圖與硬件選型,最終完成對(duì)心音傳感采集系統(tǒng)的整體設(shè)計(jì)與實(shí)現(xiàn),然后采用開(kāi)發(fā)的軟件程序與設(shè)定的通信幀格式進(jìn)行信號(hào)采集功能測(cè)試,當(dāng)設(shè)備通電之后,MAX9812 上的LED 燈會(huì)亮起,PB 端口時(shí)鐘打開(kāi)。采集時(shí)先將該設(shè)計(jì)中的心音傳感器用綁帶固定在心臟附近,保持呼吸均勻。然后,打開(kāi)2-XCOM 軟件,對(duì)串口進(jìn)行設(shè)置,最后,打開(kāi)2-ANO_TC 地面站并進(jìn)行串口及波特率的匹配。匹配成功后,打開(kāi)顯示波形按鈕,即可在2-ANO_TC 上顯示心音信號(hào)波形。
最終所測(cè)試的波形結(jié)果如圖4 所示。從圖中可以清晰看到第二個(gè)波形振幅高,持續(xù)時(shí)間久,為心音信號(hào)的S1 階段;第三個(gè)波形振幅明顯低于第二個(gè)波形,其持續(xù)時(shí)間也相對(duì)較短,為心音信號(hào)的S2 階段。且S1 與S2 為周期性波動(dòng)、間隔均勻、波形清晰、無(wú)雜音,為一正常人心音波形的測(cè)試結(jié)果圖。
圖4 心音信號(hào)波形圖
該系統(tǒng)設(shè)計(jì)開(kāi)發(fā)了集MAX9812 處理器板與心音信號(hào)傳感器為一體的信號(hào)采集處理電路,并使用Python 語(yǔ)言對(duì)這些元器件進(jìn)行編程,設(shè)計(jì)出心音信號(hào)采集系統(tǒng)。再利用2-XCOM 和2-ANO_TC 等串口傳輸助手,將采集電路板上的USB 接口與PC 端連接,實(shí)現(xiàn)心音信號(hào)數(shù)據(jù)的通信傳輸,最終在PC 端瞬態(tài)輸出顯示所測(cè)波形。其結(jié)果表明,采集測(cè)試得到的波形準(zhǔn)確清晰,可以輔助學(xué)生及醫(yī)師清晰地理解心音信號(hào)的組成與包含的特征信息,進(jìn)而準(zhǔn)確完成對(duì)心音信號(hào)的快速識(shí)別,同時(shí)促進(jìn)了學(xué)科交叉融合的創(chuàng)新性和實(shí)用性。另外,該設(shè)計(jì)是在STM32 主控芯片電路的基礎(chǔ)上實(shí)現(xiàn)了心音信號(hào)的便攜采集,未完成高效去噪、濾波等工作。因此,設(shè)計(jì)并不夠完善,后續(xù)的研究可以重點(diǎn)從此方面展開(kāi)深入研究。